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: 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ử dụng raspberry Pi

61 0 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

Thông tin cơ bản

Tiêu đề 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ử dụng raspberry Pi
Tác giả Nguyễn Quốc Toản, Nguyễn Quang Huy
Người hướng dẫn ThS. Lê Hoài Nghĩa
Trường học Đại học Quốc gia TP. Hồ Chí Minh
Chuyên ngành Kỹ thuật máy tính
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2021
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 61
Dung lượng 29,67 MB

Cấu trúc

  • 1.1. Các nghiên cứu liên quan: .............................---- - +55 5++++++S++++t+xvxexerrxeterrrerersree 3 1. Để tài “ Nghiên cứu thuật toán SSD vào nhận diện biển số xe” (14)
    • 1.1.2. Đề tài “phát hiện và trích xuất thông tin biển số xe” (15)
  • 1.2. Giới thiệu để tài:................................c.vrnhhnnnHn22222 re 5 1.3... Mục tiêu nghiên CỨU...........................-- - ¿5+ St SE TH T001. 0g r. 6 1.4. Giới hạn đề tài................................ccsc tri 6 Chương 2. CƠ SỞ LÝ THUYÉT.................... . L2 1222211112211 1112511 1582111582111 x55 7 2.1. Hệ thống nhận dạng biển SỐ xe..........................----22cv2cc+22EcvEveeritrtrrrrrrrrrrrrre 7 2.1.1. Khai nệm 2. _ Cách thức hoạt động của hệ thông nhận dạng biên sô xe (16)
    • 2.1.3. Phân loại các ứng dụng nhận dạng biển số xe.......................ccccccccccres 7 2.1.4. Ứng dụng thực tiễn tại Việt Nam...........................-----ccccccc+ccccvzveccee 8 2.2. Phương pháp nhận dang biển số xe từ ảnh chụp của camera......................-- 9 2.3. Các mô hình nhận dạng biên số Xe.......................----¿-22++2v++++t2vv+rtvzrveceee 9 (0)
    • 2.7.4. TensorFlow 1 (37)
    • 2.7.5. Scikit-learn ... 2.7.6. Open... ceceeeesesseseseseeseerssessessersseersasenseesaesncarsnceeeavencaeeasaeaeaneeeeneees 27 Chương 3. THỰC NGHIỆM........................ -Lc c7 2211122211111 1551111111153 reg 29 3.1. Raspberry Pi 3B+.................................. HH HT. rớy 29 3.2. Camera Pi VÌ................................ tt Tnhh HH HH HH HH tư. 30 3.3. Dữ liệu.................... A22... 6ốế.................ÀN...... cccẤ HQ 31 3.4... Thiết kế và lập trình hệ thống........................-----:----+++cceceeeeeeeeerrrrrrrrrrrrr 32 3.4.1. _ Thiết kế hệ thống.........................................--c-ccccccveeccecrrrrrxeeecece (37)
      • 3.4.1.1. Xác định vùng chứa bién số xe và tách biến số xe 6 tô (0)
      • 3.4.1.2. Phân đoạn từng ki tự.................................-- - -5+5+2c+csrsrrtrkerrrerrrrrer 35 3.4.1.3. Nhận diện kí tự...................................... cty 36 3.4.2. Cài đặt thư viện và môi trường ...........................----¿- - 5 + 5++x+xesrsrerxexee 37 3.5. Chạy thực nghiệm hệ thống — (46)

Nội dung

TOM TAT KHÓA LUẬNVớ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

Các nghiên cứu liên quan: . - +55 5++++++S++++t+xvxexerrxeterrrerersree 3 1 Để 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”

Năm 2018 Ths.Trương Văn Cương đã hướng dẫn nhóm sinh viên bao gồm Trần Thanh Tinh và Nguyễn Phát Nhật Hào bảo vệ thành công đề tài “ phát hiện và trích xuất thông tin biển số xe Mục tiêu của đề tài là hoàn thiện một mô hình phần mềm sử dụng thị giác máy tính kết hợp với các thuật toán máy học nhăm nhận diện và phân tích được thông tin của phương tiện thông qua biển số, đặc biệt nhắn mạnh vào việc xử lý chúng theo thời gian thực Trong đó kết quả chính xác của mô hình phát hiện biển số đạt tối thiểu 95% và mô hình phân tích, trích xuất thông tin biên số đạt tối thiêu 85% trên tất cả các dự đoán.

Cấu hình thiết bị kiểm thử mô hình :

- GPU: Gtx 1050 Ti với dung lượng bộ nhớ 4GB

- Téc độ xử ly: 3.2 GHz Dưới đây là mô hình hoàn chỉnh của đề tài

Sắp xếp lại thông tin are ees

\— và lưu trữ Nhận biết thông tin

Hình 2.2: Sơ đồ luồng xử lý của mô hình

Giới thiệu để tài: c.vrnhhnnnHn22222 re 5 1.3 Mục tiêu nghiên CỨU - ¿5+ St SE TH T001 0g r 6 1.4 Giới hạn đề tài ccsc tri 6 Chương 2 CƠ SỞ LÝ THUYÉT L2 1222211112211 1112511 1582111582111 x55 7 2.1 Hệ thống nhận dạng biển SỐ xe 22cv2cc+22EcvEveeritrtrrrrrrrrrrrrre 7 2.1.1 Khai nệm 2 _ Cách thức hoạt động của hệ thông nhận dạng biên sô xe

TensorFlow 1

Tensorflow là một thư viện mã nguồn mở dùng dé xử lý các phép tính toán số học bang cách mô tả một mô hình biéu đồ thé hiện sự thay đổi về giá trị của dữ liệu Tiền thân của Tensorflow là DistBelief - dự án về hệ thống học máy của google Brain được phát triển vào năm 2011.

Kiến trúc TensorFlow hoạt động được chia thành 3 phần:

- Tiền xử lý đữ liệu

- Train và ước tính model

TensorFlow cho phép các lập trình viên tạo ra dataflow graph, cấu trúc mô tả làm thé nào dữ liệu có thé di chuyền qua một biéu đồ, hay một chuỗi các node đang xử lý Mỗi node trong đồ thị đại điện cho một toàn tử và mỗi kết nói giữa các node là một mảng dữ liệu đa chiều, hay còn được gọi là ‘tensor’.

Scikit-learn 2.7.6 Open ceceeeesesseseseseeseerssessessersseersasenseesaesncarsnceeeavencaeeasaeaeaneeeeneees 27 Chương 3 THỰC NGHIỆM -Lc c7 2211122211111 1551111111153 reg 29 3.1 Raspberry Pi 3B+ HH HT rớy 29 3.2 Camera Pi VÌ tt Tnhh HH HH HH HH tư 30 3.3 Dữ liệu A22 6ốế .ÀN cccẤ HQ 31 3.4 Thiết kế và lập trình hệ thống -: +++cceceeeeeeeeerrrrrrrrrrrrr 32 3.4.1 _ Thiết kế hệ thống . c-ccccccveeccecrrrrrxeeecece

Thư viện này tích hợp rất nhiều thuật toán hiện đại và cô điển giúp bạn vừa học vừa tiến hành đưa ra các giải pháp hữu ích cho bài toán của bạn một cách đơn giản Scikit- learn ban đầu được đề xuất bởi David Cournapeau trong một dự án mùa hè của Google vào năm 2007.

Scikit-learn (Sklearn) là thư viện mạnh mẽ nhất dành cho các thuật toán học máy được viết trên ngôn ngữ Python Thư viện cung cấp một tập các công cụ xử lý các bài toán machine learning và statistical modeling gồm: classification, regression, clustering, va dimensionality reduction.

Thư viện được cấp phép bản quyền chuẩn FreeBSD và chạy được trên nhiều nền tảng Linux Scikit-learn được sử dụng như một tài liệu để học tập.

Dé cài đặt scikit-learn trước tiên phải cài thư viện SciPy (Scientific Python) Những thành phần gồm:

- Numpy: Gói thư viện xử lý dãy số và ma trận nhiều chiều

- SciPy: Gói các hàm tính toán logic khoa học

- Matplotlib: Biểu diễn dữ liệu dưới dang đồ thị 2 chiều, 3 chiều

- IPython: Notebook dùng dé tương tác trực quan với Python

- SymPy: Goi thư viện các kí tự toán học

- Pandas: Xử lý, phân tích dữ liệu dưới dạng bảng

Scikit-learn hỗ trợ mạnh mẽ trong việc xây dựng các sản phẩm Nghĩa là thư viện này tập trung sâu trong việc xây dựng các yếu tố: dé sử dung, dé code, dễ tham khảo, dễ làm việc, hiệu quả cao.

Mặc dù được viết cho Python nhưng thực ra các thư viện nền tang của scikit-learn lại được viết dưới các thư viện của C dé tăng hiệu suất làm việc Ví dụ như: Numpy (Tính toán ma trận), LAPACK, LibSVM và Cython.

Project OpenCV được bắt dau từ Intel năm 1999 bởi Gary Bradsky OpenCV viết tắt cho Open Source Computer Vision Library OpenCV là thư viện nguồn mở hàng đầu cho Computer Vision và Machine Learning, và hiện có thêm tính năng tăng tốc GPU cho các hoạt động theo thời gian thực.

OpenCV được phát hành theo giấp phép BSD, do đó nó miễn phí cho cả học tập và sử dụng với mục đích thương mại Nó có trên các giao diện C++, C, Python và Java và hỗ trợ Windows, Linux, Mac OS, iOS và Android OpenCV được thiết kế dé hỗ trợ hiệu quả về tính toán và chuyên dùng cho các ứng dụng real-time (thời gian thực) Nếu được viết trên C/C++ tối ưu, thư viện này có thé tận dụng được bộ xử lý đa lõi (multi-core processing).

OpenCV có một cộng đồng người dùng khá hùng hậu hoạt động trên khắp thế giới bởi nhu cầu cần đến nó ngày càng tăng theo xu hướng chạy đua về sử dụng computer vision của các công ty công nghệ OpenCV hiện được ứng dụng rộng rãi toàn cầu, với cộng đồng hơn 47.000 người, với nhiều mục đích và tính năng khác nhau từ interactive art, đến khai thác mỏ, khai thác web map hoặc qua robotic cao cấp.

Ung dụng của OpenCV là gi?

- Kiểm tra và giám sát tự động

- Robot va xe hơi tự lái

- Phân tích hình ảnh y hoc

- Tim kiếm và phục hồi hình ảnh/video

- Phim - cấu trúc 3D từ chuyên động

- Nghệ thuật sắp đặt tương tác

Raspberry Pi 3B+ được nhóm lựa chọn vì đây là một máy tính nhúng nhỏ gọn và có giá thành rẻ và được hỗ trợ rất nhiều thư viện từ Cộng đồng phát triển Raspberry trên toàn thế giới.

Cấu hình của Raspberry Pi trong dé tai:

- Vi xử lý: Broadcom BCM2837B0, quad-core A53 (ARMv8) 64-bit SoC

- Két nối: 2.4GHz and 5GHz IEEE 802.11 b/g/n/ac wireless LAN, Bluetooth

4.2, BLE, Gigabit Ethernet over USB 2.0 (Tối đa 300Mbps).

- Video và âm thanh: 1 cổng full-sized HDMI, Cổng MIPI DSI Display, công

MIPI CSI Camera, cổng stereo output va composite video 4 chân.

- Nguén điện sử dung: 5V/2.5A DC cổng microUSB, 5V DC trên chan GPIO,

Power over Ethernet (PoE) (yéu cau thém PoE HAT).

- Module Camera V1 cho Raspberry Pi.

- Angle of View (diagonal) : 62.2 degree

Dữ liệu mà nhóm sử dụng là hình ảnh các xe hơi với nhiều biển số khác nhau.

Bộ dữ liệu này gồm hai bộ nhỏ đó là bộ gồm các hình ảnh bién số có sẵn trong các thư viện ảnh tải về và bộ các hình ảnh biển số được chụp trực tiếp từ camera pi.

Tuy nhiên độ chính xác khi phát hiện và xử lý các kí tự của biển số ở hai bộ dữ liệu là khác nhau Khi bộ dif liệu từ các thư viện ảnh có sẵn là trên 90%, với bộ dit liệu là các hình ảnh chụp trực tiếp từ camera pi chi dat tỉ lệ chính xác khoảng 85% do chất lượng ảnh lấy vào không được đảm bảo. test (107),jpg test (108),jpg test (109),jpg test (110).jpg ca test (118).jpg test (120).jpg test (121),jpg test (122)jpg test (123),jpg test (131).jpg test (132).jpg test (133).jpg test (134).jpg test (135).Jpg test (136),jpg i = | ve — test (144).jpg test (145).jpg test (146).jpg test (147)jpg test (148).jpg test (149).jpg

Hình 3.3: Bộ dữ liệu được sử dụng

3.4 Thiết kế và lập trình hệ thống

Camera Ỷ Ảnh xe ô tô kèm biển số Ỷ

Phân đoạn từng ký tự Ỷ

Lưu biển số vào database

Hình 3.4: Mô hình hệ thông

3.4.1.1 Xác định vùng chứa biển số xe và tách biến số xe 6 tô. a Xac định vùng chứa biển số xe 6 tô Vì biển số xe có những đặc trưng cơ bản được quy định bởi pháp luật của Việt Nam nên ta có thể dựa theo những đặc trưng này để xác định được nó và những đối tượng khác.

Theo quy định của Thông tư 58/2020/TT-BCA, về chất liệu của biển số được làm bằng kim loại, có màng phản quang, ký hiệu bảo mật công an hiệu đóng chìm, riêng biển số xe đăng ký tạm thời được in trên giấy.

Về kích thước biển số xe ôtô được gắn 2 bién số ngắn, kích thước là chiều cao 165 mm, chiều dài 330 mm.

Trường hợp thiết kế của xe chuyên dùng hoặc do đặc thù của xe không lắp được 2 biển ngắn được đổi sang 2 biển số dài, kích thước là chiều cao 110 mm, chiều dài 520 mm hoặc 1 biển số ngắn và 1 biển số dài.

Vé màu của biển số xe ôtô được quy định rất chỉ tiết và cụ thể như sau:

Xe cơ quan Dang, Văn phòng Chủ tịch nước: Biển số nền màu xanh, chữ va sé màu trắng, seri biển số sử dụng lần lượt một trong 11 chữ cái sau đây: A, B, C, D, E, F, G,

Xe cá nhân, doanh nghiệp: Biên số nền màu trắng, chữ và số mau den, seri biển số sử dụng lần lượt một trong 20 chữ cái sau đây: A, B, C, D, E, F, G, H, K, L, M,N, P, S, T,

Xe của khu kinh tế - thương mại đặc biệt hoặc khu kinh tế cửa khẩu quốc tế: Biển số nền màu vàng, chữ và sé màu đỏ, có ký hiệu địa phương đăng ký và hai chữ cái viết tắt của khu kinh tế - thương mại đặc biệt.

Ngày đăng: 08/11/2024, 16:57

HÌNH ẢNH LIÊN QUAN

Bảng 2.1. Một số thông số của các mô hình khác nhau - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Bảng 2.1. Một số thông số của các mô hình khác nhau (Trang 10)
Hình 2.3: Mô hình kiến trúc mang Faster RCNN( nguồn paperswithcode.com) - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 2.3 Mô hình kiến trúc mang Faster RCNN( nguồn paperswithcode.com) (Trang 21)
Hình 2.5: Cấu trúc SVM - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 2.5 Cấu trúc SVM (Trang 23)
Hình 2.§: Mô phỏng mô hình tích chập chiều sâu - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 2. §: Mô phỏng mô hình tích chập chiều sâu (Trang 32)
Hình 2.10: Cấu trúc của một Depthwise Separable Convolution - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 2.10 Cấu trúc của một Depthwise Separable Convolution (Trang 34)
Hình 3.3: Bộ dữ liệu được sử dụng - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 3.3 Bộ dữ liệu được sử dụng (Trang 42)
Hình 3.4: Mô hình hệ thông - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 3.4 Mô hình hệ thông (Trang 43)
Hình 3.5: Sơ đồ khối tổng quát xác định vị trí của biển số xe. - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 3.5 Sơ đồ khối tổng quát xác định vị trí của biển số xe (Trang 45)
Hình 3.7: Các giai đoạn trong việc phân đoạn từng ký tự - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 3.7 Các giai đoạn trong việc phân đoạn từng ký tự (Trang 46)
Hình 3.9: Tập dữ liệu để chạy thực nghiệm - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 3.9 Tập dữ liệu để chạy thực nghiệm (Trang 49)
Hình 3.11: Nhận diện với hình ảnh chính diện(2) - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 3.11 Nhận diện với hình ảnh chính diện(2) (Trang 50)
Hình 3.13: Nhận diện với các hình ảnh có độ nghiêng vừa phải (2) - Khóa luận tốt nghiệp Kỹ thuật máy tính: 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ử dụng raspberry Pi
Hình 3.13 Nhận diện với các hình ảnh có độ nghiêng vừa phải (2) (Trang 51)

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

TÀI LIỆU LIÊN QUAN