ĐẠI HỌC QUOC GIA TP. HO CHÍ MINH TRUONG DAI HỌC CÔNG NGHỆ THONG TIN KHOA KY THUAT MAY TINH NGUYEN QUOC TOAN NGUYEN QUANG HUY KHOA LUAN TOT NGHIEP NGHIEN CUU VA XAY DUNG CHUONG TRINH NHAN DIEN BIEN SO XE VOI DEEP LEARING SU DUNG RASPBERRY PI Research and develop a license plate identification program with deep learning using raspberry Pi KỸ SƯ NGANH KỸ THUAT MAY TÍNH TP. HÒ CHÍ MINH, 2021 ĐẠI HỌC QUOC GIA TP. HO CHÍ MINH TRUONG ĐẠI HỌC CÔNG NGHỆ THONG TIN KHOA KĨ THUẬT MÁY TÍNH NGUYÊN QUỐC TOẢN - 17521140 NGUYÊN QUANG HUY - 17520582 KHÓA LUẬN TÓT NGHIỆP NGHIÊN CUU VÀ XÂY DỰNG CHUONG TRÌNH NHAN DIỆN BIÊN SỐ XE VỚI DEEP LEARNING SỬ DỤNG RASPBERRY PI Research and developa license plate identification program with deep learning using raspberry Pi KY SU NGANH KY THUAT MAY TINH GIANG VIEN HUONG DAN THS.LE HOÀI NGHĨA TP.
HO CHÍ MINH, 2021 THONG TIN HỘI DONG CHAM KHÓA LUẬN TOT NGHIỆP Hội đồng châm khóa luận tốt nghiệp, thành lập theo Quyết định số 466/QD- ĐHCNTT ngày 23 tháng 07 năm 2021 của Hiệu trưởng Trường Đại học Công nghệ Thông tin. Vũ Đức Lung — Chủ tịch. Trần Quang Nguyên - Thư ký. Phan Đình Duy — Ủy viên.
LỜI CẢM ƠN Dé hoàn thành được khóa luận tốt nghiệp này, ngoài sự nỗ lực học hỏi và vận dụng kiến thức của nhóm, còn có sự giúp đỡ hết sức to lớn đến từ các thầy cô, bạn bè và nhà trường trong suốt quá trình nhóm thực hiện. Nhóm xin gửi lời cảm ơn chân thành đến các thầy cô, anh chị, bạn bè thuộc trường Đại học Công Nghệ Thông Tin và khoa Kỹ Thuật Máy Tính đã tạo điều kiện và giúp đỡ chúng em hoàn thành khóa luận tốt nghiệp của mình. Đặc biệt em xin cảm ơn thầy Ths. Lê Hoài Nghĩa đã luôn hỗ trợ và hướng dẫn chúng em trong suốt thời gian làm khóa luận vừa qua.
Em cũng xin cảm ơn quý thầy cô trong khoa Kỹ Thuật Máy Tính đã tận tình giảng dạy và trang bị cho chúng em những kiến thức cần thiết và bồ ích, là nền tảng vững chắc hỗ trợ chúng em rất nhiều trong việc hoàn thành khóa luận tốt nghiệp này. Mặc dù chúng em đã cố gắng hét khả năng của mình dé hoàn thiện dé tài cũng như bài báo cáo khóa luận tốt nghiệp một cách tốt nhất. Tuy nhiên sẽ không tránh được những thiếu sót. Vì vậy, nhóm rất mong nhận được sự thông cảm cũng như những chia sẻ và góp ý quý báu của quý thầy cô đề giúp chúng em có thê hoàn thiện tốt hơn nữa.
Chúng em xin chân thành cảm ơn! MỤC LỤC Churong 88019)/6/9)0. Các nghiên cứu liên quan:. Để tài “ Nghiên cứu thuật toán SSD vào nhận diện biển số xe”. Đề tài “phát hiện và trích xuất thông tin biển số xe”.
Giới thiệu để tài:. Mục tiêu nghiên CỨU.-- - ¿5+ St SE TH T001. Giới hạn đề tài.ccsc tri 6 Chương 2. Hệ thống nhận dạng biển SỐ xe.----22cv2cc+22EcvEveeritrtrrrrrrrrrrrrre 7 2.
_ Cách thức hoạt động của hệ thông nhận dạng biên sô xe. Phân loại các ứng dụng nhận dạng biển số xe. Ứng dụng thực tiễn tại Việt Nam. Phương pháp nhận dang biển số xe từ ảnh chụp của camera.
Các mô hình nhận dạng biên số Xe. Mạng Faster RCNN 2. Công nghệ xử lý anh. -- 6 tt TT HH HH gi 2 2.
Thuật toán CNN (Convolutional Neural NetworK). Nhu cau về lightweight model. Các dạng tích chập. Tích chập 2 chiều thông thường.
Tích chập tách biệt chiều sâu. ceceeeesesseseseseeseerssessessersseersasenseesaesncarsnceeeavencaeeasaeaeaneeeeneees 27 Chương 3. tt Tnhh HH HH HH HH tư. Thiết kế và lập trình hệ thống.
_ Thiết kế hệ thống. Xác định vùng chứa bién số xe và tách biến số xe 6 tô. Phân đoạn từng ki tự. Nhận diện kí tự.
Cài đặt thư viện và môi trường. Chạy thực nghiệm hệ thống —. Chạy thực nghiệp với các hình ảnh có sẵn. Chạy thực nghiệm với cá hình ảnh trực tiếp từ camera pi.
Lưu trữ kết quả đã nhận diện .-- -- + 55+ Server 47 Chương 4. KET LUẬN VÀ HƯỚNG PHAT TRIÉN. Môi trường hệ thống sử dụng. Điểm hạn chế và hướng phát triển.
Điểm hạn chế. Hướng phat trién .,ÔỎ 50 DANH MỤC HÌNH Hình 2.1 Thiết kế hệ thống nhận diện biển số của dé tài(1) .---- + 25 s2 s+s+cs+sz+z 3 Hình 2.2: Sơ đồ luồng xử lý của mô hình.--- 2-2 s¿++£++£+E++EE+EE£+E++EE+EErEzEerrxerxeee 4 Hình 2.3: Mô hình kiến trúc mạng Faster RCNN( nguồn paperswithcode.4: Kiến trúc của YOLO (nguồn AICUTIOUS.5: Cấu trúc SVM o. Mối quan hệ giữa AI, ML, DL (nguồn codelearn.7: Mô phỏng mô hình tích chập 2 chiều thông thường.8: Mô phỏng mô hình tích chập chiều sâu.9: Mô phỏng mô hình tích chập điểm .----- ¿- ¿2 +52 £+EE+E£2E££E+£E££Eerxzrszrs 22 Hình 2.10: Cấu trúc của một Depthwise Separable Convolution.11: Mô hình kiến trúc mạng mobileÌNet.ck ng TH HH HH HH ệt 29 Hình 3.- -- - s11 1930 1 910 HT HT nh re 30 Hình 3.3: Bộ dữ liệu được sử dụng.-- -- c1 1112111 111 119 11H 1n HH ket 31 Hình 3.4: Mô hình hệ th6ng.5: Sơ đồ khối tổng quát xác định vi trí của biển số xe.6: Sơ đồ khối tách biỂn sỐ.7: Các giai đoạn trong việc phân đoạn từng ký tự.- -ccc«csecseeseresree 35 Hình 3.8: Hệ thống nhận diện biển số xe dùng Raspberry Pi.9: Tập dữ liệu dé chạy thực nghiém.10 Nhận diện với hình ảnh chính diện(Ï) .11: Nhận diện với hình ảnh chính diện(2). 5 + St £svsessseeseeek 39 Hình 3.12: Nhận diện với các hình ảnh có độ nghiêng vừa phải (1).13: Nhận diện với các hình ảnh có độ nghiêng vừa phải (2).14: Nhằm lẫn giữa kí tự tương đồng “G” và “*C””.----+cs+cckcrkerxerserssree 42 Hình 3.15: Nhằm lẫn giữa kí tự tương đồng “6” và “*§”.16: Kết quả thực nghiệp khi chạy với camera Pi (1) .17: Kết quả thực nghiệp khi chạy với camera Pi (2) .18: Kết quả thực nghiệp khi chạy với camera Pi (3) .---:---¿-s¿©++csz+cse2 45 Hình 3.19: Nhận diện sai ký tự tương đồng “*G” và “*C””.--:-cs+ccr2kcckerkerkerxerkrree 46 Hình 3.20: Nhận diện thiếu ký tự trong biỀn.---¿- ¿5c ESE+EE+EE£EE2EE2E£EeEEerEerkerkrree 46 Hình 3.21: Luu trit két 0 Na.
47 DANH MỤC BANG Bảng 2. Một số thông số của các mô hình khác nhau Bảng 3.1 : Độ chính xác khi sử dụng các hình ảnh được lưu trữ sẵn vào raspberry pi.2: Độ chính xác khi lay ảnh vào từ camera pi. DANH MỤC TỪ VIET TAT IOT: Interner of thing GPS: Global Positioning System CNN: Convolution Neural Networks RNN: Recurrent Neural Networks GPU: Graphics Processing Unit AI: Artifical Intelligence ML: Machine learning DL: Deep learning GPIO: General-purpose input/output TOM TAT KHÓA LUẬN Với những hình ảnh trích xuất từ camera, việc quan trọng nhất là xác định được biển số xe từ đó làm cơ sở dé giải quyết các vụ việc vi phạm giao thông, quan lý việc đăng ký và sử dụng phương tiện giao thông, hỗ trợ thu phí tự động cũng như ứng dụng vào các lĩnh vực an ninh khác. Do đó việc xây dựng một ứng dụng nhận diện bién số xe thông minh có ý nghĩa và tính thực tế cao.
Dưới góc độ khoa học, việc nghiên cứu các phương pháp nhận diện biển số xe mới góp phần đưa ra những cách giải quyết khác nhau cho bài toán này cũng như giải quyết những vấn đề mà các phương pháp trước chưa đạt được. Dựa trên các nghiên cứu về học sâu, đề tài đã ứng dụng và kết hợp các phương pháp này dé cho ra mô hình giúp đồng thời phát hiện và nhận dang biên số xe. Đây là hướng nghiên cứu khá mới hiện nay và có những thuận lợi, khó khăn riêng so với phương pháp truyền thống. Những thuận lợi có thé ké tới như việc rút trích đặc trưng không còn làm một cách thủ công mà đã tích hợp hoàn toàn với học máy giúp giảm di sự phức tạp và tăng độ hiệu quả.
Đặc biệt với các nghiên cứu gần đây, quá trình nhận dạng biển số xe đã loại bỏ hoàn toàn công đoạn phân đoạn kí tự giúp giảm thòi gian xử lý cũng như hạn chế bớt các sai sót. Hơn nữa các phương pháp học sâu phù hợp với các phần cứng tính toán song song như GPU giúp tăng tốc trong quá trình xử lý. Bên cạnh đó, vẫn tồn tại những khó khăn, thách thức và nồi bật nhất là van dé dir liệu. Các phương pháp học sâu đòi hỏi một lượng dữ liệu khá lớn đề có thể làm việc tốt.
Dù có những hạn chế về mặt dữ liệu, bước đầu đề tài đã cho kết quả tương đối khả quan. MO DAU Ngày nay trên thé giới bên cạnh việc tăng trưởng kinh tế là sự phát triển của các ngành khoa học kỹ thuật. Các ngành công nghiệp liên quan tới việc sản xuất phương tiện giao thông ngày càng có tốc độ phát triển cực nhanh. Sự phát triển này được phản ánh thông qua việc mật độ giao thông công cộng ngày càng tăng cao và rất đa dạng về phương tiện.
Điều này gây ảnh hưởng tới việc quản lý và giám sát lưu lượng phương tiện sẽ trở nên khó khăn. Các hệ thống liên quan tới phát hiện, trích xuất và quản lý phương tiện được phát triển mạnh mẽ sẽ giải quyết được phần nào những khó khăn đó. Lĩnh vực này được quan tâm rất lớn trong thời đại công nghiệp 4.0 như hiện nay. Các hệ thống quản lý lớn đã có trên thé giới.
Nhưng việc quản lý với việc sử dung các máy tính nhúng có cau hình vừa phải và gọn nhẹ dễ xây dựng được một hệ thống quản lý một cách di động. Do đó nhóm chúng em đã chọn đề tài “nghiên cứu và xây dựng chương trình nhận diện biển số xe với deep learning sử dung Raspberry Pi” với mục đích trợ giúp cho công tác giám sát hay xây dựng một hệ thống bãi đỗ xe thông minh có thê hoạt động một cách di động, gọn nhẹ. Các nghiên cứu liên quan: 1. Dé tài “ Nghiên cứu thuật toán SSD vào nhận diện bién số xe”.
Phan Đình Duy đã hướng dẫn nhóm sinh viên bao gồm Ngô Xuân Đức, Phạm Vũ Thiên Bảo bảo vệ thành công đề tài “Nghiên cứu thuật toán SSD vào nhận diện biến số xe”. Luận văn nhằm nghiên cứu ứng dụng thuật toán SSD dé có thé thiết kế model nhận diện biển số xe máy tại Việt Nam. Model gồm 2 chức năng chính là nhận diện khung biển số xe và xác định ký tự trong biển số. Model được vận hành trên môi trường máy tính nhúng.
Các công cụ được sử dụng trong đề tài: Máy tính nhúng NVIDIA Jetson Nano sử dụng Maxwell GPU. Bên cạnh đó thư viện GluonCV hỗ trợ rất tốt cho các GPU của hãng NVIDIA do đó việc sử dung GPU trên máy tính nhúng Jetson Nano dé thực hiện các mô hình của hệ thống rất đơn giản. Nhóm sử dụng hệ điều hành Ubuntu Mate cho máy tính nhúng Jetson Nano. Cài đặt các thư viện cần thiết Opencv, GluonCV và MXNet phiên ban hỗ trợ với CUDA10.