1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp Kỹ thuật máy tính: Xây dựng chương trình tạo ảnh Bird-view cho xe hơi từ các camera xung quanh

85 3 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Sau khi nghiên cứu một số tài liệu tham khảo và các bài báo khoa học về Bird-viewcar camera, xây dựng chương trình Bird-view car camera bang cách sử 4 cameragóc rộng được ghép ở đăng trư

Trang 1

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HOC CONG NGHE THONG TIN

KHOA KY THUAT MAY TINH

NGUYEN LE NHAN

PHAM XUAN LINH

KHOA LUAN TOT NGHIEP

Implement a program to contruct car Bird-view image from

surrounding cameras

KY SU NGANH KY THUAT MAY TINH

TP HO CHi MINH, 2021

Trang 2

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA KỸ THUẬT MÁY TÍNH

NGUYÊN LÊ NHÂN-16520869

PHẠM XUÂN LINH-16521717

KHÓA LUẬN TÓT NGHIỆP

XÂY DỰNG CHƯƠNG TRÌNH TẠO ẢNH BIRD-VIEW

CHO XE HƠI TỪ CÁC CAMERA XUNG QUANH

Implement a program to contruct car Bird-view image from

surrounding cameras

KY SU NGANH KY THUAT MAY TINH

GIANG VIEN HUONG DAN

ThS PHAM MINH QUAN

TP HO CHi MINH, 2021

Trang 3

THÔNG TIN HỘI ĐÒNG CHÁM KHÓA LUẬN TÓT NGHIỆP

Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số 70/QD-DHCNTT

ngày 27 tháng 01 năm 2021 của Hiệu trưởng Trường Đại học Công nghệ Thông tin.

Trang 4

LỜI CÁM ƠN

Trải qua 4 năm rưỡi đại học, dé thành công khóa bảo vệ khóa luận tốtnghiệp này Em muốn bày tỏ chân thành cảm ơn tới toàn bộ thầy cô của trườngđại học công nghệ thông tin — đại học quốc gia thành phố Hồ Chí Minh nói

chung và toàn bộ giáo viên khoa kỹ thuật máy tính nói riêng, những người đã

cho chúng em những kiến thức giá trị và kinh nghiệm xuyên suốt 4 năm rưỡi

qua.

Nhóm cũng chân thành cảm ơn tới thạc sĩ Phạm Minh Quân và tiền sỹ

Nguyễn Minh Sơn người đã dành thời gian quý báu và kinh nghiệm để hướngdẫn nhóm hoàn thành khóa luận tốt nghiệp này Nhóm cũng chân thành cảm ơnnhững người bạn đã giúp nhóm tìm kiếm, tổng hợp thông tin và những góp ýquý báu về đồ án trong suốt quá trình hoàn thành khóa luận Trong quá thựchiện báo cáo luận văn sẽ có nhiều thiếu sót mong các thầy cô và các bạn bỏ qua,một lần nữa nhóm xin cảm ơn đến mọi người đã lắng nghe những trình bày của

nhóm.

Sinh viên thực hiện:

Phạm Xuân Linh

Nguyễn Lê Nhân

Khoa kỹ thuật máy tinh-MTCL2016.2

Trang 5

MỤC LỤC

Chương 1 = TONG QUAN -2-©52+E<+EESEESEEE2EEEEEEE1121121171 71.21 EErxe 3

1.1 Tinh hình nghiên cứu nước 'BOẢI - c5 + 3+ 33+ E+veEEeeerseeereeeeereeee 3

1.2 Tinh hình trong ƯỚC 6 6 +3 319 91v HH ng gu ng 4

1.3 Giadi PAP 5

1.4 Mục tiêu khóa luận - - << SE 222111111122331 1111119953111 1kg 1 key, 5

1.5 Giới hạn của đề tài -cccccchhnh the 6Chương2 CO SỞ LÝ THUYỀÊT 2 £+E+SE+EE+EE£EE£EE2EEEEEEEEEEEEErrxrrrrei 7

2.1 NVIDIA Jetson Nano Developer K( - 5 S5 se re 7

2.1.1 Giới thiệu chung - Gv rey 7

2.1.2 Thông số kĩ thuật của NVIDIA Jetson Nano Developer Kit 8

2.1.3 Jetson Nano phù hop với các dự án Machine Learning hơn các loại

máy tính khác - << 16211111193 1 Họ ni 10

"P‹ 000 6 ee 1s nh na ằ 13

2.2.1 Giới thiệu L1 St ST TT HT TH TH HH HH tr 13

2.2.2 Các bước xử lý ảnh - -c- cv ng ng nh nh rưy 13

2.3 Camera [MX219-20U - Ghi 15

2.3.1 Đặc điểm tính năng - 2© +E2EE+EEEEEEEEEEE2E171 21.2111 EEEcrree 15

2.5.1 Giới thiỆU - Ăn HT TH HH HH ng 18

Trang 6

2.5.2 _ Cách thức hoạt động - +11 11kg ng ng ệt 18

"ˆ© f8" ịẽ an 192.5.4 Hạn chế cc-ccttt th nhe 20

2.6 Mô hình Mobilenet-SSD VÌ - Ăn LH HH HH Hiện 20

2.6.1 Tổng quan - ¿2c +St+EE+EE+EE2EE2EEEEEEEEEE21112112112121 11112 cxeE 20

2.7.3 Nguyên mẫu 3ÌD ¿2 5c SE2E+EEEE2E2EEEEEE211121 21111211 EE 11tr 31

2.7.4 Trinh tạo bóng 3D ee ececeesceecseeseeeeeeseeeeseeseeecaeeseseeseeeeesaeeeeeeseeeeees 31

2.8 DctecctNet đẻ ven | 32

Chương 3 | PHAN TÍCH THIET KE HỆ THONG .: -: : 35

3.1 Hệ thống Bird-View -¿ 2-22+2222E 2212112211221 35

3.1.1 Chuyển đổi hình anh(image transformation) 2-2 5z s2 s2 35

3.1.2 Ghép và pha trộn anh(adding and blending images) . 42

3.1.3 Sơ đồ hệ thống Bird-view đơn giản 2- 2 sscxccxzrsrxerxerree 433.2 Hệ thống cảnh báo -:- 2 2+S<+EE+ESEEEEEEEEE1E21211211211211 212111111 44

3.2.1 Nhận dạng đối tượng(Object detection) - scsc+sz+z+rxerxersee 44

3.2.2 Sưu tập bộ data TIÊng - - c1 111g ng HH 46

3.2.3 Xác định khoảng cách - - 6 + x1 TH HH ng nh rư 48

3.3 Cài đặt hệ thống Bird-view và cảnh báo - 2-55 se+z+ccrxerceee 51

3.3.1 KU LY CaAMeLa 51

Trang 7

3.3.2 Lắp đặt camera,board và monifOr -2- 22 ++++zx++z+zx+rxerse+ 523.3.3 Sơ đồ kết hợp hệ thống Bird-view và cảnh báo - -:-sc¿ 53

3.4 0.) 0h Ố Ố 54

3.4.1 Xử lý hình anh 3D với thư viện rafCAV€ - 5 Scss+sseereeeeeere 54

3.4.2 Xử lý hình anh xung quanh cee eeeccesseceseeceseeeeseceeeeceeeesaeeeseeeeseeeaes 56

3.4.3 Sơ đỗ môi trường 3D eecceceecescccsessessessessessssscsecsessessessesuesscsssessessessessease 57Chương 4 KET QUA MO PHONG oo esscssssssssssssessssesesssesssecsssescssecssecssessesesecs 58

4.1 Hệ thống Bird-view cc.ccccccccssscssesssessessesssessessessecssessessessessessessesseesseeseeseess 584.2 Hệ thong nhận diện vat can va cảnh DAO cc ccccccccsseceeesseceesseeceesseeeessaee 594.3 Môi trường đối tượng 3D oeecccccccccscsssessseessecssessscssesssecssecssessecssecssecseesseeaseess 63

"9" ha ae 64

Chương 5 KÉT LUẬN VÀ HƯỚNG PHÁT TRIEN -5z=5+ 69

51 Kếtluận đ 1Ý ~ve= / ⁄4 695.2 Hướng phat triỀn -¿-©2¿2+¿+2+2E+£EE+SEE2EEE211221221 211212 crre 69

Trang 8

DANH MỤC HÌNH

Hình 1.1: Bird-view car camera [1] - + << ** E333 221111 11k £££22 EEEkEeesseeeeeeeree 3

Hình 1.2: Bird-view car camera do Việt Nam sản xuất [2] - - scs+s+zszezx+z 4

Hình 2.1: NVIDIA Jetson Nano Developer Kit [3] - c5 << <++ccssersseeseess 8

Hình 2.2: Thông số kĩ thuật NVIDIA Jetson Nano Developer Kit [3] 10Hình 2.3: Hiệu suất của một số mang Machine Learning khác nhau [3] 11

Hình 2.4: Các bước xử lý ảnh [⁄4] - ¿5c + 2221333 E*2 E9 EEEEEEsrirerkrrrerrrrrkrre 13

Hình 2.5: Camera IMX219-200 [5] - E SE EES****££E225555331131 111111 keeree 15

Hình 2.6: Cách thức hoạt động [] - - - 2 E1 2112111911191 9 119v kg Hy re 19

Hình 2.7: Giới thiệu Mobilenet-SSD [7] - - 55+ S++++x++£+eEseserserseeseesseske 22

Hình 2.8: Sơ đồ kiến trúc của mang Mobilenet-SSD [8] -c-ccccee 22

Hình 2.9: Cách thức phân chia feature map [10] - -« 55+ <++<<++see<ss+s 23

Hình 2.10: Sơ đồ kiến trúc của mang SSD [10] -¿22 ++++zs+zs+zxszxzsz 24

Hình 2.11: Kiến trúc của multi-scale convolution prediction [T 1] 25

Hình 2.12: Kết quả so sánh các model trên COCO [ I3 ] 55+ ++s++++s<s+s+ 26Hình 2.13: Mô hình kiến trúc mang MobileNet [14] - -‹ -«<++<<<+<<e-+eesss 27Hình 2.14: Cấu trúc của một Depthwise Separable Convolution [15] 28

Hình 2.15: Một số nguyên thủy của 3D Mesh [16] - 2 252 ++cs+cs+zsse2 31

Hình 2.16: Ví dụ về một số hiệu ứng ánh sáng 3D đơn giản [16] - 31Hình 2.17: Sơ đồ biểu diễn dữ liệu đầu vào detectNet [17] - -+ 32Hình 2.18: Cấu trúc detectNet cho đào tạo [1 7] -¿s- + ssx+k+EeEsksxerrtsrersresxee 34Hình 2.19: Cấu trúc detectNet để xác thực [I7] -.-¿ ccc+ccxvererrvrrsrrrerrre 34Hình 3.1: xoay anh 45° ngược chiều kim đồng hồ [18] ¿2-52 s52 52 35

Hình 3.2: Hình ảnh được thu nhỏ - 2< 2E 221111111 2231111115511 Ekeerrzz 36

Hình 3.3: Biến đổi ma trận [19] - ¿ c¿+2++++2cxxtttrkttrtrrtrrrtrrrrttrrrrrrrrre 38Hình 3.4: Ảnh được biến đổi -c2tcchtnt tri 39Hình 3.5: Sơ đồ biến đổi góc nhìn của ảnh - 2 2+ ++++££+E+Eerxerxerxersxee 39Hình 3.6: xác định điểm cần chọn - + + k+k+E£EEEE+EvEEEE+ESEEEEEEeEeEkrkerrrererxee 39Hình 3.7: chuyên đổi ảnh - 2-5 SE SE+EE2E2E£EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEErkrree 40

Trang 9

Hình 3.8: Xác định các điểm chuyên đổi mới -2 2¿- ¿2+ +++zxzzxvrxesrxz 40Hình 3.9: Chuyên đổi góc nhìn mớii 2 2¿+¿++£2E++EE++Ex£EEtzE+erxezrxrrresree 40Hình 3.10: Quay 90° theo chiều kim đồng hồ -2- 2-2 2 2+ ££EezEe£xerxerszxez 41Hình 3.11: Quay anh 90° ngược chiều kim đồng hồ 2-52 522522 +2 41

Hinh 3.12: Quay anh 0t 021 4a 41

Hình 3.13: Cộng hai anh bằng CV2.add() wescsssesssesssessssssssssesssecssessssssecssecssssseessecsneess 42Hình 3.14: Cộng hai ảnh bằng cv2 add Weighted () c.cccsccsccsssessesssesseeseeseesesseeseees 43Hình 3.15: Sơ đồ hệ thống Bird-view đơn giản - 2-52 2+ cxecxerxerxersxee 43Hình 3.16: Sơ đồ các mối liên hệ tạc vụ trong COmpUu(€r VISIOH - «+ +5 44Hình 3.17: Phát hiện đối "0ï: p2 45Hình 3.18: Cấu trúc SSD-Mobilenet [21] - ¿- 5s eSk+E+E£EE+EeEE+Eerxererxererrers 45Hình 3.19: Độ chuẩn xác của SSD-Mobilenet 2i - 46Hình 3.20: Sơ đồ nhận dạng đối tượng với SSD-MobilelNet - 52-5 46

Hình 3.23: Công cu label dit liệu [2 Ï ] - - - ¿+ + **++£++*kE++eeEseerseeeeeeesseeers 47

Hình 3.24: Liên kết đường dẫn tệp lưu dit liệu [2I] ¿- 2 25s 2=s+s+cz£s 47

Hình 3.25: Label dữ liệu [2 Í ] -¿- -¿- 5 2+ + E2 E191 E911 1 9 9v ng ng rưkp 48

Hình 3.26: Tính hiệu cảnh báo - c6 2 1221111112811 11921 1111811118511 1118111 x2 49

Hình 3.27: Các thông số xác định khoảng cách [23] -¿- ¿s52 49

Hình 3.28: Xác định khoảng cách từ Bird-view [244] scccccssecsseeseersserrss 50

Hình 3.29: Hệ thống phát cảnh báo 2-2 2 + SE‡EEEEE2EEEEEEEEEEEEEEEEErEerkrrkrree 51Hình 3.30: Chay da luồng [25] ccscccscsssesssesssesssssssessecssecsssssscasecsuscsssssecssecsueeseeasecaneess 52Hình 3.31: Mô hình lắp đặt phần cumg .c ccccccccccsssessssssssseessecssscssessecssecsessesssecsseess 53Hình 3.32: Sơ đồ tổng hợp hệ thống Bird-view và vật cản -5-55 53Hình 3.33: Cấu trúc của một file đối tượng 3D ¿+ 5¿+cx+zxcrxesree 55

Hình 3.34: Hình ảnh đối tượng 3D - ¿2-2 ©E+SE+EE+EE£EE£EEZEEEerEerkerkrrkrree 55

Hình 3.35: Hình ảnh sau khi sfItCh1ng - - 6+ E313 SEESesrseeeerrererevre 56

Hình 3.36: Cấu trúc cơ bản của 0190115002107 Ö 56Hình 3.37: Sơ đồ tổng hợp môi trường 3D 2 5¿©+¿2+++++zx+rxrrxeeree 57Hình 4.1: Kết quả khi ghép các camera lại với nhau 2¿ ¿cs¿2s22s++=s2 58

Trang 10

Hình 3.21: Data riêng của nhóñH - 5 + +++ 2s 9 1S HH HH giết 60

Hình 3.22: Data riêng của nhóm - + + +3 13 E9 Tnhh, 60 Hình 4.2: Nhận diện nØưỜi <1 E119 1190119 nh 61 Hình 4.3: Nhận diện chó và mèO - c2 111223221111 11111 8851111 111881 11 1x xe 61 Hình 4.4: Nhận diện xe máy và Xe 6 tO eee eeecessecesceeeeeeeeeeseeceeeeeaeeesaeceeeceeeseaes 62

Hình 4.5: Tín hiệu cảnh báo - - - << G2 211111122311 11 111 9231111119911 tren, 63

Hình 4.6: Mô hình 3D với không gian ảnh xung quanh - 5s «+s<+ss2 64

Hình 4.7: Bird-view car camera của xe Nissan [27] -«++++<<++<eeexess 66

Hình 4.8: Bird-view camera trên xe Mazda [28] << 2222 secee 66 Hình 4.9: Bosch Multi-camera system [29] «+ + + k*vkssiessersreere 67 Hình 4.10: Bird-view car camera của Vinfast [30]_ << << << sss<<ces 68

Trang 11

DANH MỤC BANG

Bang 2.1: Bảng so sánh hiệu suất của Jetson Nano khi chạy các mang MachineLearning với các nền tang s19 1n ồỔOo-”ÕÖ 12

Bang 2.2: Bảng so sánh mô hình Mobilenet-SSD và YOLO [9] - 22

Bảng 2.3: Bảng so sánh tốc độ xử lý và độ chính xác của các lớp model object

Cetection [12] oo ` 26

Bang 2.4: So sánh MobileNet-224 với GoogleNet va VGG 16 trên tập ImageNet

m— - 29

Bang 2.5: So sánh Mobile net và Inception-v3 trên tap Stanford Dog [15] 29

Bảng 4.1: Kết quả đo tốc độ xử lý của Bird-View ¿©2sc©ccccxcccxrsrxersecree 58Bảng 4.2: Kết quả đo tốc độ xử lý của Bird-view ở những mốc thời gian khác nhaukhi xe chạy ở tốc độ phù HOP vccscesccsscsssesssesssesssessssssecssecssecsscssecsussssessecssecsuesseesseesseess 59Bảng 4.3: Kết quả đo lường tốc độ và độ chuẩn xác khi phát hiện đối tượng khi xechạy ở tốc độ phù hợpD -¿- ¿52 +29 E22 1211211211711171112111211 211111111 tre 62Bang 4.4: Bảng kết qua phát hiện vật can trong độ sáng khác nhau - 62Bảng 4.5: Bảng kết quả phát hiện vật cản với tốc độ khác nhau -.- 63

Bảng 4.6: Bảng so sánh với với các mô hình Bird-view khác « s« 64

Trang 12

DANH MỤC TỪ VIET TAT

PAS Parking assistance system

SSD Single Shot Detector

GPU Graphics Processing Unit

CUDA Compute Unified Device Architecture

CPU Central Processing Unit

RAM Random Access Memory

TPU Tensor Processing Unit

FPS Frames per second

ANN Artificial Neural network

CNN Convolutional Neural Network

YOLO You Only Look Once

DIGITS The NVIDIA Deep Learning GPU

Training System

Trang 13

TOM TAT KHÓA LUẬN

Bird-view camera là một bộ thiết bị camera có chức năng cung cấp hình ảnh toàndiện 360 độ quanh xe ô tô Một bộ Bird-view camera thường có 4 mắt camera đượclắp ở 4 vị trí: đầu xe, đuôi xe, gương hậu bên trái và gương hậu bên phải 4 mắtcamera này, người lái sẽ có thé quan sat duoc điểm mù trước xe, điểm mù sau xe,điểm mù hai bên thân xe Nếu lắp camera lùi hay camera tiễn cho xe ô tô, ta chỉthấy được một góc có định thì khi lắp Bird-view camera, ta có thể quan sát toàndiện mọi góc, mọi mặt của xe Nói cách khác, trong tất cả các loại camera 6 tô,Bird-view camera giúp hỗ trợ quan sát toàn diện và tối ưu nhất, là giải pháp xoáđiểm mù hiệu quả hơn cả Bird-view camera còn được tích hợp thêm phát hiện và

cảnh báo va chạm với vật cản giúp cho người dùng lái xe an toàn hơn Mặc dù

Bird-view camera giúp người dùng quan sát được toàn cảnh xung quanh xe nhưng dégiúp người dùng lái xe an toàn hơn thì vẫn cần một chương trình giúp cảnh báo vậtcản đề tránh xảy ra va chạm với các vật cản khi đỗ xe Vì nhu cầu cần một hệ thongquan sát và giúp điều khiển xe 6 tô an toàn nhóm em đã quyết định sẽ xây dựngchương trình tạo ảnh Bird-view cho xe ô tô từ 2 đến 4 chỗ và xây dựng chương

trình cảnh báo vật cản.

Sau khi nghiên cứu một số tài liệu tham khảo và các bài báo khoa học về Bird-viewcar camera, xây dựng chương trình Bird-view car camera bang cách sử 4 cameragóc rộng được ghép ở đăng trước, đằng sau, bên trái, bên phải của xe sau đó thu

hình ảnh và xây dựng chương trình tạo ảnh Bird-view camera Nhóm sử dụng mô

hình mạng SSD-Mobilenet V1 dé trainning dữ liệu vat can gom: xe 6 tô, xe máy,người, động vật và xây dựng chương trình dé cảnh báo vật cản

Hiện tại, nhóm đã ghép thành công các camera lại với nhau, xây dựng được chương

trình cảnh báo vật cản trên Bird-view va giao diện người dùng Nhóm em đã có théhiển thị một đối tượng 3D trên nền một hình ảnh

Trang 14

MỞ ĐẦU

Với sự gia tăng dân số và phát triển kinh tế của xã hội hiện đại trên thế giới, ngàycàng nhiều người có ô tô của riêng họ Và việc đậu xe là một trong những nhữngvan đề khó khăn cho người lái xe Mọi người thường phải lãng phí một mất nhiềuthời gian tìm kiếm chỗ đậu xe Đôi khi, đó là một việc khá khó khăn đối với ngườilái xe khi đỗ xe trong một không gian hạn chế Trong bối cảnh này, các nghiên cứu

về PAS (Hệ thống hỗ trợ đỗ xe) và hệ thống đỗ xe tự động đã trở thành một trongnhững điểm nóng trong lĩnh vực xe cộ Hiện nay phổ biến nhất là sử dụng các kỹthuật như Máy quét laser có độ ôn định cao và độ chính xác, nhưng chúng có tuôithọ ngắn va dé dang bi ảnh hưởng bởi thời tiết mưa và tuyết Siêu âm và các radartầm xa có tuổi thọ cao và kích thước nhỏ Tuy nhiên, độ chính xác của chúng thấp

và phạm vi phát hiện ngắn Cảm biến tầm nhìn, chăng hạn như máy ảnh, có tuôi thọcao tuôi thọ và độ chính xác của chúng cũng khá cao Ngoài ra, nó có thể cung cấp

hỗ trợ tầm nhìn thời gian thực và thông tin hình ảnh phong phú cho các trình điềukhiển Nhưng cảm biến tầm nhìn có hiệu suất kém trong điều kiện bóng tối Là xuhướng chính của các hệ thong hỗ trợ đỗ xe hiện nay, các hệ thống dựa trên tầm nhìnđầy hứa hẹn và nhiều nhà nghiên cứu và các công ty đã phát triển hệ thống của hobằng cách sử dụng camera Và hiện nay xử lý ảnh là lĩnh vực mà ngày nay đượcphát triển và ứng dụng rất rộng rãi trong nhiều lĩnh vực khác nhau nhờ vào sự pháttriển ngày càng mạnh mẽ của các hệ thống máy tính, các thuật toán và công trìnhnghiên cứu khác nhau của nhiều nhà khoa học trên thế giới Vì vậy với mục tiêu xâydựng một hệ thống hỗ trợ đỗ xe an toàn, nhóm quyết định xây dựng chương trìnhtạo Bird-view car camera cho ô tô từ 2 đến 4 băng cách lắp đặt bốn camera xungquanh xe sau đó cung cấp hình ảnh bao phủ tất cả môi trường xung quanh ô tô và

xây dựng chương trình cảnh báo va chạm.

Trang 15

Chương 1 TONG QUAN

1.1 Tinh hình nghiên cứu nước ngoài

Bird-view car camera đang là một lĩnh vực rất được quan tâm và ứng dụng rộng rãi

vì những lợi ích mà nó mang lại cho an toàn giao thông như: loại bỏ hoàn toàn các

góc khuất, điểm mù, tích hợp camera hành trình: ghi hình cả 4 mắt camera, cảnhbáo vat can Việc trang bị Bird-view car camera sẽ giúp người lái có thé đỗ xemột cách thuận tiện Đồng thời, người lái có thé tránh được những chỗ lõm trên mặtdường và di chuyển quanh các chướng ngại vật dé dang hơn Vi vậy những tínhnăng trên nên một số hãng xe đã lắp đặt Bird-view car camera vào trong sản pham

của mình như là: Acura MDX, BMW 7-Series, Genesis G90, Infiniti QX30 Ngoài

ra các công ty phụ tùng xe 6 tô cũng đã san xuất và tung ra thị trường các loại view car camera tân tiến như: DCT, Panorama, Ở các nước phát triển, Bird-viewcar camera được xem như là thứ không thê thiếu trên những chiếc xe ô tô vì nó giúpcho người dùng an tâm hơn trong việc điều khiển xe ô tô và khiến cho việc lái xe 6

Bird-tô dễ dàng hơn.

Trang 16

1.2 Tình hình trong nước

Trong những năm gần đây, Việt Nam ghi nhận sự gia tăng đột biến của lượng xe ô

tô tại khu vực thành thị đặc biệt là các thành phố lớn Đà tăng này theo các chuyêngia đánh giá sẽ còn tiếp tục phát triển trong các năm tới Lượng xe hơi được tiêu thụnhiều hiện tại tập trung chính vào những mẫu xe nằm trong phân khúc tầm trung.Trong khi đó, chỉ những dòng xe cao cấp, xe hạng sang mới được trang bị hệ thốngBird-view camera Trên thế giới, Bird-view car camera đã được nghiên cứu và sảnxuất từ lâu tuy nhiên ở Việt Nam đây vẫn là một lĩnh vực mới mẻ Hiện nay, mặc dùcamera Bird-view camera được nhiều người ưa chuộng và lựa chọn nhưng rat Ít cáccông ty ở Việt Nam sản xuất được Bird-view car camera nên đa số các sản phamBird-view car camera ở Việt Nam đa số là hàng nhập khâu Tuy vẫn còn là một lĩnhvực khá mới lạ ở Việt Nam nhưng với thì Bird-view car camera có rất nhiều tiềmnăng dé phát triển và ứng dụng trong tương lai

Trang 17

1.3 Giải pháp

Nhóm sử dụng 2 camera IMX219-200 Waveshare và 2 camera hành trình góc quay

rộng dé thu hình ảnh Và sau đó nhóm sử dụng những thuật toán Perspectivetransformation, warpPerspective, seamless stitching, color balancing để xây dựng

chương trình tạo ảnh Bird-view camera.

Nhóm sử dụng mô hình mạng SSD-Mobilenet V1 dé trainning dữ liệu vật cản gồm:

xe 6 tô, xe máy, người, động vật.

Nhóm sử dụng thuật toán Image Panorama Stitching xây dựng bối cảnh môi trường

xung quanh xe.

1.4 Mục tiêu khóa luận

Mục tiêu của đề tài là xây dựng một hệ thống camera Bird-view từ các camera gắnxung quanh xe, nhằm giúp người dùng có thé quan sát xung quanh xe 6 tô từ 2 đến

4 ché và chương trình sẽ được xử lý trên board NVIDIA Jetson Nano Developer

Kit Đồng thời, nhóm sẽ xây dựng chương trình phát hiện và cảnh báo vật cản khi

xe đến gần giúp người dùng tránh va chạm với vật cản khi đậu xe tránh gây xâyxước và hư hỏng xe Ngoài ra, nhóm sẽ xây dựng mô hình hién thị 3D với không

gian ảnh xung quanh xe.

Cụ thé dé tài :

e Sử dụng kit NVIDIA Jetson Nano và camera cùng với kiến thức về xử lí ảnh

dé ghép thành camera Bird-view từ các hình ảnh thu được

e Dùng mô hình mạng SSD-Mobilenet V1 dé phát hiện và cảnh báo vật cản.

e©_ Dùng thuật toán Image Panorama Stitching xây dựng bối cảnh môi trường

xung quanh xe.

Trang 18

1.5 Giới hạn của đề tài

Hình ảnh từ 4 camera được xử lí trên board NVIDIA Jetson Nano Developer

Kit để xây dựng hình ảnh Bird-view và hién thị lên màn hình độ phân giải

Trang 19

Chương 2 CƠ SỞ LÝ THUYET

2.1 NVIDIA Jetson Nano Developer Kit

2.1.1 Giới thiệu chung

NVIDIA Jetson Nano Developer Kit là một máy tính nhỏ nhưng rất mạnh mẽ chophép ta chạy song song nhiều mạng neural sử dụng cho các ứng dụng như phân loạihình ảnh, phát hiện đối tượng, phân đoạn và xử lý giọng nói Tất cả trong cùng mộtnên tang dé sử dụng cũng như tiêu tốn ít hơn 5 watts

Jetson Nano cũng cấp 472 GFLOPS dé chạy các thuật toán AI hiện đại một cách

nhanh chóng, với một CPU quad-core 64-bit ARM, một NVIDIA GPU 128-core

được tích hợp trên board mạch, cũng như bộ nhớ 4GB LPDDR4 Có thể chạy song

song nhiêu mạng neural và xử lý đông thời một sô cảm biên có độ phân giải cao.

Chú thích : Thuật ngữ GFLOPS là một chi số đại diện cho tốc độ và kha năng tinh

toán của GPU, tương đương với kha năng thực hiện 19.2 tỷ phép tính trên một

giây.

Jetson Nano cũng được hỗ trợ bởi NVIDIA JetPack Bao gồm các gói hỗ trợboard (BSP), CUDA, cuDNNvà thư viện phần mềm TensorRT cho deeplearning, computer vision, GPU computing, multimedia processing và nhiều ứngdụng khác SDK cũng bao gồm khả năng cài đặt frameworks Machine Learning(ML) mã nguồn mở như TensorFlow, PyTorch, Caffe / Caffe2, Keras và MXNet,cho phép các nhà phát triển tích hợp các model AI/ framework yêu thích của họ vào

các sản phâm một cách nhanh chóng và dé dàng.

Đặc biệt : NVIDIA Jetson Nano đã có phiên bản mới nhất BO1, có nâng cấp thêmmột công CSI hỗ trợ sử dụng đồng thời 2 Camera

Trang 20

- GPU: 128-core MaxwellTM GPU

- CPU: quad-core ARM® Cortex®-A57 CPU

Trang 21

- Các giao diện :

+ Ethernet: 10/100/1000BASE-T self-negotiation

+ Camera: 12-ch (3x4 OR 4x2) MIPI CSI-2 DPHY 1.1 (1.5Gbps)

+ Display: HDMI 2.0, DP (DisplayPort)

+ USB: 4x USB 3.0, USB 2.0 (Micro USB)

+ Others: GPIO, I2C, I2S, SPI, UART

Trang 22

sion header @ HDMI output port

@ Micro-USB port for 5V power input or for data (7) DisplayPort connector

[4] Gigabit Ethernet port @ DC Barret jack for SV power input

@ MIPL CSI camera connector

Hinh 2.2: Thong số kĩ thuật NVIDIA Jetson Nano Developer Kit [3]

2.1.3 Jetson Nano phù hợp với các dự án Machine Learning hon các loại

máy tính khác

NVIDIA Jetson Nano có thê chạy rất nhiều mạng tiên tiến và mới nhất, bao gồmtoàn bộ các framework Machine Learning phố biến như : Tensoflow, Keras,Pytorch, Caffe/Caffe2, Từ đó có thé áp dụng dé xây dựng, thiết kế các mô hình, cácthuật toán phức tạp của hệ thống Trí tuệ nhân tạo bằng cách tận dụng khả năng tínhtoán mạnh mẽ đến từ phần cứng của Jetson Nano đề nhận dạng và xử lý hình ảnh,

phát hiện, định vị đối tượng,

10

Trang 23

Hình 2.3 cho thấy kết quả hiệu suất của một số mạng Machine Learning khác nhau

với Jetson Nano sử dụng thư viện TensorRT của NVIDIA và sử dụng độ chính xác

của FP16 và batch_ size 1

Deep Learning Inference Performance

OFFS ResNet-50 1 SSD Reset SSO RosNet- Inception V4 Mh OpenPose VGG:19 Super U-Net

(224x224) 18(360x544) 18(480x272) 18 (300x300) waster Mebane Tiothananieh (299x299) (256x256) (224x224) Resolution (1x5124512)

(960x544) (480x272) (300x300) iene (481x321)

Network Model

Hình 2.3: Hiệu suất của một số mạng Machine Learning khác nhau [3]

Bảng 2.1 sẽ cung cấp đầy đủ hơn hiệu suất của Jetson Nano khi chạy các mạngMachine Learning đồng thời so sánh với các nền tảng khác như Raspberry Pi 3,

Intel Nerual Compute Stick 2 và Google TPU Coral Dev Board :

11

Trang 24

Inception Vá Classification PyTorch 11 FPS DNR DNR 9 FPS

máy tính nhúng khác Bên cạnh đó, kiến tric CUDA của Jetson Nano còn có thé sử

dụng cho lĩnh vực thị giác máy tính, xử lý tín hiệu số, các thuật toán FFT, BLAS,

LAPACK, cùng các nhân CUDA do người dùng tự định nghĩa.

12

Trang 25

truyên tải hoặc mã hoá các ảnh tự nhiên Mục đích của xử lý ảnh gôm:

e Biến đối anh làm tăng chất lượng ảnh

e Tự động nhận dạng ảnh, đoán nhận ảnh, đánh giá các nội dung của ảnh.

Nhận biết và đánh giá các nội dung của ảnh là sự phân tích một hình ảnh thànhnhững phan có ý nghĩa dé phân biệt đối tượng này với đối tượng khác, dựa vào đó

ta có thể mô tả cấu trúc của hình ảnh ban đầu Có thê liệt kê một số phương pháp

nhận dạng cơ bản nhất nhận dạng ảnh của các đối tượng trên ảnh, tách cạnh, phân

đoạn hình ảnh, Kỹ thuật này được dùng nhiều trong y học (xử lý tế bào, nhiễmsac thé), nhận dang chit trong van ban Camera IMX219-200

Trang 26

Thu nhận ảnh: có thể nhận được qua camera màu hoặc đen trăng, đây là loại ảnh

tương tự.

Tiền xử lý: sau bộ phận thu nhận ảnh,ảnh có thé bị nhiễu hoặc độ tương phản thấpnên cần đưa vào bộ tiền xử lý để nâng cao chất lượng ảnh

Chức năng: lọc nhiễu, tăng hoặc giảm độ tương phản.

Phân đoạn ảnh : là tách anh đầu vào thành các vùng dé biéu diễn , phân tích và nhận

dạng ảnh.

Biểu diễn ảnh : các vật thé sau khi được phân đoạn có thể được mô tả đưới dạngchuỗi các điểm và biểu diễn ảnh thường được sử dụng khi ta quan tâm đến đặc tínhbên trong của vùng ảnh Vd : đường cong , hình dạng quá trình biểu diễn anh làviệc biến đôi các số liệu của ảnh thành dạng thích hợp và cần thiết cho quá trình xử

lý bằng máy tính

Nhận dạng và nội suy : là quá trình phân loại vật thể dựa trên cơ sở các chỉ tiết mô

tả vật thể và nhận dạng ảnh là quá trình xác định ảnh và quá trình nảy thu được

băng cách so sánh với mẫu đã được lưu trữ từ trước.

Cơ sở tri thức : các quá trình xử lý liệt kê trong hình thức xử lý anh được thực

hiện dưới sự giám sát và thực hiện dựa trên cơ sở các kiến thức về lĩnh vực xử lý

anh

14

Trang 27

2.3 Camera IMX219-200

Hinh 2.5: Camera IMX219-200 [5]

2.3.1 Dac điểm tính năng

e Hỗ trợ NVIDIA Jetson Nano Developer Kit, Compute Module 3/3+

Trang 28

e Face recognition (Nhận diện khuôn mặt)

e Road mark detection (Phát hiện vạch kẻ đường)

e License plate recognition (Nhận điện bién số)

2.4 Giới thiệu sơ lược về PyTorch

PyTorch được Hugh Perkins phát triển như một trình bao bọc Python cho LusJIT

dựa trên khuôn khổ Torch Có hai biến thể PyTorch

PyTorch thiết kế lại và triển khai Torch bằng Python trong khi chia sẻ cùng các thưviện C lõi cho code phụ trợ Các nhà phát triên PyTorch đã điều chỉnh mã back-end

16

Trang 29

này dé chạy Python một cách hiệu quả Họ cũng giữ nguyên khả năng tăng tốc phần

cứng dựa trên GPU cũng như các tính năng mở rộng đã tạo nên Torch dựa trên

Lua-based.

2.4.2 Tính năng

Các tính năng chính của PyTorch

¢ Giao diện thân thiện - PyTorch cung cấp API dé sử dụng; do đó nó được

coi là rất đơn giản dé vận hành và chạy trên Python Việc thực thi mã trongkhuôn khổ này khá dé dàng

e Sw dung Python - Thư viện nay được coi là Pythonic tích hợp tron tru với

ngăn xếp khoa học đữ liệu Python Do đó, nó có thể tận dụng tất cả các dịch

vụ và chức năng được cung cấp bởi môi trường Python

¢ D6 thị tính toán - PyTorch cung cấp một nền tảng tuyệt vời cung cấp đồ thị

tính toán động Do đó người dùng có thé thay đổi chúng trong thời gian chạy.Điều này rất hữu ích khi nhà phát triển không biết cần bao nhiêu bộ nhớ dé

tạo mô hình mạng noron.

PyTorch được biết đến với ba cấp độ trừu tượng như được đưa ra dưới đây:

« Tensor — Mang n-chiều bắt buộc chạy trên GPU

« Variable —Nut trong đồ thị tính toán Lưu trữ dữ liệu va gradient

« Module —Lép mạng nơ-ron sẽ lưu trữ trạng thái hoặc trọng số có thể học

được.

2.4.3 Ưu điểm

e Dễ dàng dé gỡ lỗi và hiểu mã

e Gồm rất nhiều hàm mất mát(loss function)

© Có thé coi đây là phần mở rộng NumPy cho GPU

e_ Cho phép xây dựng các mạng có cấu trúc phụ thuộc vào chính tính toán

17

Trang 30

2.5 Tổng quan Deep Learning và các khái niệm cơ bản

2.5.1 Giới thiệu

Deep Learning là một ngành hẹp của học máy, và do đó cũng là một ngành hẹp của

trí tuệ nhân tạo Mục tiêu trọng tâm của AI là cung cấp một tập hợp các thuật toán

và kỹ thuật có thể được sử dụng dé giải quyết van dé mà con người thực hiện bằngtrực giác và gần như tự động, nhưng với máy tính thì lại rất thử thách Một ví dụtuyệt vời về một loại van dé AI như vậy là việc hiểu nội dung của một hình ảnh -nhiệm vụ này là điều mà con người có thé làm với rất ít nỗ lực, nhưng nó đã đượcchứng minh là cực kỳ khó khăn dé máy móc thực hiện

Mạng nơ ron nhân tạo(ANN) là một lớp các thuật toán học máy học từ dữ liệu và

chuyên về nhận dạng mẫu, lấy cảm hứng từ cấu trúc và chức năng của não Như

đã biết, Deep learning thuộc về các thuật toán ANN, và trong hầu hết các trườnghợp, cả hai thuật ngữ có thể được sử dụng thay thế cho nhau Trong thực tế, ta cÓthé ngạc nhiên khi biết rang lĩnh vực học tập sâu đã tồn tại hon 60 năm, với nhữngcái tên khác nhau dựa trên nghiên cứu xu hướng, phần cứng và bộ dữ liệu có sẵn vàcác tùy chọn phô biến của các nhà nghiên cứu nổi tiếng tại thời điểm do

2.5.2 Cách thức hoạt động

Cách thức hoạt động của thuật toán Deep Learning diễn ra như sau: Các dòng

thông tin sẽ được trải qua nhiều lớp cho đến lớp sau cùng Lấy quy trình học củacon người làm ví dụ cụ thể Qua các lớp đầu tiên sẽ tập trung vào việc học các kháiniệm cụ thê hơn trong khi các lớp sâu hơn sẽ sử dụng thông tin đã học để nghiêncứu và phân tích sâu hơn trong các khái niệm trừu tượng Quy trình xây dựng biểudiễn dữ liệu này được gọi là trích xuất tính năng

Kiến trúc phức tạp của việc học sâu được cung cấp từ mạng lưới thần kinh sâu vớikhả năng thực hiện trích xuất tính năng tự động Ngược lại, trong học máy thôngthường còn gọi là học nông, nhiệm vụ nay được thực hiện khi truy xuất các thuậttoán cụ thê

18

Trang 31

Simple Neural Network Deep Learning Neural Network

Viéc Deep Learning phat trién tao nén su chu động trong moi việc, con người dần

có thể điều khiển cuộc sông của mình Ngày này Deep Learning đang ứng dụng

rộng rãi trong cuộc sông điện hình như:

Mô phỏng và nhận điện hình ảnh:

Chắc hăn, chúng ta đều đã từng thấy máy tính tự động nhận diện và phân loại cáchình anh của ta Ví du: Facebook có thé tự động gan thẻ chính minh va ban bè.Tương tự, Google Photos có thể tự động gan nhãn ảnh của mình dé tìm kiếm dễ

dàng hơn.

Và Deep Learning có thể dễ dàng tìm và phân loại các hình ảnh theo ngày, sự kiện

mà không phải dùng thao tác thủ công mất thời gian

Trang 32

không có rào cản và chúng ta sẽ có thê giao tiêp với những người khác trên toàn

Thứ hai, deep learning vẫn chưa thé nhận biết được những thứ phức tap hay tương

tự nhau Ly do là vì hiện chưa có kĩ thuật nao đủ tốt đề trí tuệ nhân tạo có thể rút ranhững kết luận đó một cách logic bởi chúng chưa có được khả năng nhận biết như

COn người.

Chưa hêt, những công cu trí tuệ nhân tao thê hiện tot hiện nay như Siri hay Cortana

đêu sử dụng nhiêu mánh khóe đê tránh né những câu hỏi khó và khiên ta có cảm

giác như đang nói chuyện với người thật vì chúng sử dụng các câu nói dua, câu trích

dân, các biêu hiện cảm xúc, được set săn đê làm ta phân tâm và không còn chú ý

đên câu hỏi ban đâu đặt ra nữa.

2.6 Mô hình Mobilenet-SSD V1

2.6.1 Tổng quan

Giới thiệu:

Mobilenet là một kiến trúc mạng thần kinh sâu có kích thước nhẹ được thiết kế cho

điện thoại di động và các ứng dụng thị giác nhúng Mobilenet đã được ứng dụng

nhiều vào thực tẾ, chăng hạn như ô tô tự lái, các tác vụ nhận dạng cần phải được

thực hiện kip thời trên một thiết bị có giới hạn tính toán MobileNet đã được phát

triển vào năm 2017 Các lớp cốt lõi của MobileNet được xây dựng trên các bộ lọc

20

Trang 33

có thể phân tách theo chiều sâu Lớp đầu tiên, là một tích chập đầy đủ, là một ngoại

^

lệ.

Cùng thời điểm đó (2016), SSD: Single Shot detector cũng được phát triển bởinhóm Nghiên cứu của Google dé đáp ứng nhu cầu về các mô hình có thé chạy thờigian thực trên các thiết bị nhúng mà không cần đánh đổi đáng ké về độ chínhxác SSD được thiết kế dé phát hiện đối tượng trong thời gian thực R-CNN nhanhhơn sử dụng mạng đề xuất khu vực để tạo các hộp ranh giới và sử dụng các hộp đó

để phân loại các đối tượng Mặc dù được coi là khởi đầu chính xác, toàn bộ quá trình

chạy ở 7 khung hình mỗi giây Thấp hơn nhiều so với những gì cần cho một nhu cầu

xử lý thời gian thực SSD tăng tốc quá trình bằng cách loại bỏ sự cần thiết của mạng

dé xuất khu vực Dé giải quyết về vấn đề độ chính xác giảm, SSD áp dụng một vàicải tiễn bao gồm các feature map đa kích thước và sử dụng các hộp mặc định Nhữngcải tiến này cho phép SSD tiến gần được với độ chính xác của Faster R-CNN nhưnglại có thé sử dụng hình ảnh có độ phân giải thấp hơn, giúp day tốc độ cao hơn

Mô hình SSD được chia làm hai giai đoạn:

Trích xuất các feature map từ mạng CNN

Áp dụng convolutional filters (hoặc kernel filters) để phát hiện vật thể trên các

feature map có độ phân giải (revolution) khác nhau.

SSD được thiết kế dé độc lập với mạng cơ sở và do đó nó có thể chạy trên bất kỳ

mang cơ sở nào như VGG, YOLO, MobileNet.

Dé giải quyết thêm các hạn chế thực tế của việc chạy các mạng nơ-ron tiêu tốnnhiều tài nguyên và điện năng trên các thiết bị cấp thấp trong các ứng dụng thời

gian thực, MobileNet đã được tích hợp vào khung SSD Vì vậy, khi MobileNet

được sử dụng làm mạng cơ sở trong SSD, nó đã trở thành Mobilenet-SSD.

21

Trang 34

image ——> -.- Block 15 Block 16 Block 17 1x1 convolution Convolution layer Convolution layer Convolution layer

Hinh 2.7: Gidi thiéu Mobilenet-SSD [7]

Kiên trúc:

MobileNet là một kiến trúc mạng nơ-ron phức hợp áp dụng trên các thiết bị có khảnăng tính toán hạn chế Kiến trúc tổng thể của mạng nơ-ron được trình bày tronghình Sử dụng MobileNet cho đến Convó, và sau đó tách tất cả các lớp tích chậpkhác Mỗi ban đồ tinh năng được kết nói với nhận dạng cuối cùng lớp, cho phépphát hiện và khoanh vùng các đối tượng có quy mô khác nhau

Extra feature layers MobileNet

Detections:8732 per Class Non-Maximum Supression

MobileNet-SSD

Khi hai mô hình Mobilenet-SSD và Yolo được dao tạo trên tap dữ liệu COCO (330K

Hình ảnh, hơn 80 đôi tượng) sẽ thu được các kêt quả sau.

Bảng 2.2: Bảng so sánh mô hình Mobilenet-SSD và YOLO [9]

22

Trang 35

Do đó, dé triển khai trên thiết bị tiêu thụ điện năng thấp, MobileNet-SSD phù hợp

(a) Image with GT boxes (b) 8 x 8 feature map (c) 4 x 4 feature map

Hình 2.9: Cách thức phan chia feature map [10]

SSD chi cần duy nhất dau vào là 1 bức anh và các ground truth boxes ám chi vị tribounding box các vật thé trong suốt quá trình huấn luyện Trong quá trình phát hiệnvật thé, trên mỗi một feature map, chúng ta đánh giá các một top hợp nhỏ gồm

những default boxes tương ứng với các tỷ lệ cạnh khác nhau (aspect ratio) lên các

features map có kích thước (scales) khác nhau (chăng hạn kích thước 8x8 va 4x4trong hình (b) và (c)) Đối với mỗi default box (các boxes nét đứt trong hình) ta cần

dự báo một phân phối xác suấtc=(cl,c2, cn)tương ứng với cácclass C=C1,C2, ,Cn Tại thời điểm huấn luyện, đầu tiên chúng ta cần matchdefault boxes với ground truth boxes sao cho mức độ sai số được đo lường qualocalization loss là nhỏ nhất (thường là hàm Smooth LI - sẽ trình bay ở mục 2.2)

Sau đó ta sẽ tìm cách tối thiểu hóa sai số của nhãn dự báo tương ứng với mỗi vật thể

23

Trang 36

được phát hiện trong default boxes thông qua confidence loss (thường là hàm

softmax - sẽ trình bày ở mục 2.2).

Như vậy loss function của object detection sẽ khác với loss function của các tác vụ

image classification ở chỗ có thêm localization loss về sai số vị trí của predicted

boxes so với ground truth boxes Đó là nguyên ly hoạt động chung của SSD.

Kiên trúc:

Extra Feature Layers

VGG-16 through Conv5_ 3 layer

CN: 3x3x1024 Gon: 1xìx1024 Conv: txtxZS6 Conv: txtx1ZBConv: 1x1x128 Con 1xixt28

(Com: IxSx$12-s2 Conv: 33x29 s2 Conv: 3x3x256%1 Con: 3x3x256-51

Hình 2.10: So đồ kiến trúc của mang SSD [10]

Kiến trúc của SSD được xây dựng trên VGG-16 được loại bỏ tang fully-connected

Lí do mà VGG-16 được sử dụng như tầng cơ sở là vì sự hiệu quả của nó trong bàitoán phân loại ảnh với các ảnh có độ phân giải cao Thay vì sử dụng tầng fully-connected của VGG, một tập các tầng convolution phụ trợ (cụ thé là 6 trong lưu đồ)được thêm vào, vì vậy ta có thể trích xuất được các features với nhiều tỉ lệ khácnhau, và giảm gần kích thước của đầu vào trong từng tầng mạng

Multibox:

Kĩ thuật bounding box được sử dụng trong SSD được lay ý tưởng từ Szegedy, mộtphương pháp sử dụng nhiều bounding box phù hợp với mọi đối tượng lớn nhỏ Dướiđây là kiến trúc của multi-scale convolution prediction được sử dụng trong SSD

24

Trang 37

8x8x96 8x8x96 4x4x256

(1x1 conv) (3x3 conv) (3x3 conv)

8x8x2048

Hình 2.11: Kiến trúc của multi-scale convolution prediction [11]

Hàm lỗi của MultiBox là sự kết hợp của 2 thành phan tương ứng với 2 chức năng

của SSD:

« Confidence Loss: thành phần này tính toán tỉ lệ rơi vào class ma bounding

box được tính toán Độ đo cross-entropy được sử dụng dé đo thành phan này

e Location Loss: Thanh phan này ước lượng sự sai lệch thực tế của bounding

box so với tập dữ liệu mẫu L2-Norm được sử dụng ở đây.

Nhóm sẽ không đi quá sâu vào phần toán học trong mô hình (ta có thể đọc thêmtrong paper nếu thực sự muốn tìm hiểu Hàm loss được xây dựng với 2 thành phần

trên có công thức như sau:

multibox_loss = confidence_loss + alpha * location_loss

Giá tri alpha giúp chúng ta cân bằng được sự ảnh hưởng của location loss Cũng nhưnhiều mô hình mạng trong deep learning, mục tiêu của chúng ta là tìm những giá trịtham số có thé tối thiểu được hàm Loss tốt nhất, theo đó đưa ra được những dự đoán

càng gân với dữ liệu mâu.

25

Trang 38

Ta thấy SSD512 (mô hình SSD với kích thước đầu vào của ảnh là 512 x 512 x 3) có

độ chính xác mAP là cao nhât trong khi toc độ xử lý gân đạt mức realtime là 22 fps.

Hinh 2.12: Két quả so sánh các model trên COCO [13]

Single shot detectors có két qua ấn tượng frame per seconds (FPS) sử dung hình

anh có độ phân giải thap hon van dat độ chính xác.

2.6.3 MobilenetV1

Mô hình kiến trúc:

Kiến trúc mạng MobileNet được trình bày bên dưới

26

Trang 39

Table 1 MobileNet Body Architecture

Hình 2.13: Mô hình kiến trúc mạng MobileNet [14]

Diễn dịch ra ngôn ngữ tự nhiên, chúng ta thấy răng mô hình có 30 lớp với các đặc

điêm sau:

« - Lớp 1: Convolution layer với stride bằng 2

e Lop 2: Depthwise layer

e - Lớp 3: Pointwise layer

« Lớp 4: Depthwise layer với stride bằng 2 (khác với bước 2, dw lớp 2 có

stride size bang 1)

e Lop 5: Pointwise layer

« Lép 30: Softmax, dùng dé phân lớp

Depthwise Separable Convolution:

27

Trang 40

Depthwise separable convolution là một depthwise convolution theo sau bởi một

pointwise convolution nhu Error! Reference source not found.

Hình 2.14: Cấu trúc của một Depthwise Separable Convolution [15]

e Depthwise convolution: là một channel-wise DKxDK spatial convolution.

Vi dụ ở hình trên, ta có 5 channels ( cục đầu tiên có 5 khối hộp, cục thứ 2 là

phân tách 5 khối hộp ra thành ma trận mxn, cục thứ 3 là spatial convolution

có kích thước kxk, cục thứ 4 là kết quả sau khi convolution, cục thứ 5 là ráp

5 cái kết quả của convolution lại ), do đó chúng ta sẽ có 5 DKxDK spatial

convolution tương ứng với 5 channel trên.

e Pointwise convolution: đơn giản là một convolution có kích thước 1x1

So sánh:

Khi so sánh 1.0 MobileNet-224 với GoogleNet và VGG 16, chúng ta thấy rằng độchính xác của cả 3 thuật toán là hầu như tương đương nhau Nhưng 1.0 MobileNet-

224 có số lượng tham số ít (75% so với GoogleNet) và số lượng phép toán nhỏ hơn

rất nhiều nên chạy nhanh hơn.

28

Ngày đăng: 02/10/2024, 03:14

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w