Phát triển hệ thống phát hiện và cảnh báo tắc đường trong ngõ nhỏ cho xe ô tô sử dụng máy tính nhúng Raspberry Pi 4
Bạn đang xem tài liệu "Phát triển hệ thống phát hiện và cảnh báo tắc đường trong ngõ nhỏ cho xe ô tô sử dụng máy tính nhúng Raspberry Pi 4", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- phat_trien_he_thong_phat_hien_va_canh_bao_tac_duong_trong_ng.pdf
Nội dung text: Phát triển hệ thống phát hiện và cảnh báo tắc đường trong ngõ nhỏ cho xe ô tô sử dụng máy tính nhúng Raspberry Pi 4
- Hội nghị Quốc gia lần thứ 23 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2020) Phát triển hệ thống phát hiện và cảnh báo tắc đường trong ngõ nhỏ cho xe ô tô sử dụng máy tính nhúng Raspberry Pi 4 Võ Quang Sơn1, Võ Thiện Linh2, Hồ Thành Trung1, Nguyễn Trung Thị Hoa Trang3, Vũ Ngọc Quý1, và Đào Thanh Toản1,4* 1Khoa Điện-Điện tử, Trường Đại học Giao thông vận tải, số 3 Cầu Giấy, Hà Nội, Việt Nam 2Phân Hiệu tại Thành phố Hồ Chí Minh, Trường Đại học Giao thông vận tải, 450 Lê Văn Việt, Tăng Nhơn Phu A, Quận 9, TP. Hồ Chí Minh, Việt Nam 3Khoa Điện - Điện tử, Trường Cao đẳng nghề Công nghệ cao Hà Nội, Phường Nhuệ Giang, Tây Mỗ, Nam Từ Liêm - Hà Nội 4Trung tâm Nghiên cứu và Phát triển Việt Nhật, Trường Đại học Giao thông vận tải, số 3 Cầu Giấy, Hà Nội *Email: quangsonktdt@utc.edu.vn ; vothien22@gmail.com; hothanhtrungktdt@gmail.com ; trangnth@hht.edu.vn; quygtvt2014@utc.edu.vn; daotoan@utc.edu.vn. Abstract— Đặc thù của mạng lưới giao thông tại các đô thị - Loại lắp đặt trong lòng đường bao gồm: vòng lớn ở Việt Nam là có rất nhiều ngõ nhỏ, hẹp, mật độ lưu từ; từ kế; thông nhiều, dòng giao thông hỗn hợp, thường xuyên xảy ra ách tắc do ô tô đi vào ngõ. Đặc biệt trong các ngõ có bề - Loại lắp đặt phía trên bao gồm: xử lý ảnh từ hệ rộng từ 2 đến 5 m rất dễ xảy ra tắc nghẽn khi có 2 xe ô tô thống camera quan sát; rada viba, cảm biến siêu âm, cảm đi đối đầu nhau. Vì vậy, việc ứng dụng giao thông thông biến hồng ngoại và rada lazer. minh trong tổ chức điều khiển giao thông tại các ngõ nhỏ Hệ thống phát hiện phương tiện giao thông đề cập ở nhằm tránh ùn tắc giao thông là thật sự cần thiết. Bài báo đây tập trung vào hướng nghiên cứu xử lý ảnh từ hệ này đề xuất một giải pháp áp dụng công nghệ xử lý ảnh và phương pháp máy học trên máy tính nhúng Raspberry Pi thống camera quan sát. Hệ thống bao gồm ba thành phần 4 để xác định xe ô tô để đưa ra tín hiệu cảnh báo về tình là Kit Raspberry Pi 4, Camera IP và đèn tín hiệu giao trạng tắc đường. Một số kết quả thử nghiệm trong ngõ tại thông để cảnh báo. Hệ thống sẽ điều khiển đèn xanh, đèn Thành phố Hồ Chí Minh cũng được trình bày chi tiết. đỏ để cảnh báo đến các ô tô muốn đi vào ngõ. Khi có xe đi vào từ bên đầu A của ngõ thì bên đầu B của ngõ sẽ có Keywords- Raspberry Pi 4; nhận dạng ảnh xe hơi, mạng tín hiệu đèn đỏ để cảnh báo xe bên ngõ B không được nơ-ron tich chập; Deep learning. vào. Đồng thời sẽ có tín hiệu đèn xanh bên ngõ A để thông báo xe bên ngõ A được vào. Nghia là, ta có thể I. GIỚI THIỆU cho phép hai hay nhiều xe ô tô lưu thông cùng chiều Hiện nay, hàng loạt tuyến đường huyết mạch, các trong ngõ cùng lúc, còn hai xe ngược chiều thì không ngõ nhỏ cũng như các nut giao thông trọng điểm tại các được phép lưu thông trong ngõ cùng luc. Từ đó tránh thành phố lớn thường xuyên rơi vào tình trạng ùn ứ, tắc được tình trạng kẹt xe trong các ngõ nhỏ. Hệ thống nhỏ nghẽn giao thông dẫn đến chậm phát triển kinh tế - xã gọn, có thể di dời và lắp đặt thuận tiện. hội, ảnh hưởng đến môi trường. Một vài nguyên nhân Kích thước của xe thay đổi khác nhau ở độ cao lắp dẫn đến tình trạng kẹt xe như: ý thức chấp hành Luật đặt và góc quan sát của camera do đó việc giải quyết Giao thông của người điều khiển xe, phương tiện cá những vấn đề trên và áp dụng chúng một cách hiệu quả nhân tham gia giao thông tăng cao, lấn chiếm vỉa hè, lòng đường để kinh doanh, và đặc biệt là tình trạng vào bài toán là điều cần thiết. Trong bài báo này, chung kẹt xe trong các ngõ, ngách nhỏ khi 2 xe ô tô chạy vào tôi tập trung vào các vấn đề trên để đề xuất một giải pháp ngược chiều nhau xảy ra thường xuyên. Hiện tại việc xác khả thi, và chúng tôi áp dụng kết quả phát hiện xe để đưa định phương tiện giao thông bằng xử lý ảnh vẫn chưa ra tín hiệu cảnh báo. được sử dụng rộng rãi ở Việt Nam do còn nhiều hạn chế II. GIỚI THIỆU MÔ HÌNH HỆ THỐNG trong môi trường hoạt động, các điều kiện khách quan bên ngoài và phải tuân thủ một số quy định đi kèm cụ Phần này mô tả cấu trúc chính của hệ thống phát hiện thể. Các thiết bị phát hiện phương tiện giao thông có thể xe. Đầu tiên, dữ liệu video về cảnh giao thông trong hem được chia thành 2 loại cơ bản sau: được nhập vào Kit Raspberry Pi 4 [1-2]. Sau đó, ảnh sẽ được tiền xử lý và chuân hóa cho phù hợp. Tiếp theo, ISBN: 978-604-80-5076-4 92
- Hội nghị Quốc gia lần thứ 23 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2020) diện tích mặt đường được phân vùng giới hạn xử lý. hơn trong việc phát hiện đối tượng với tốc độ nhanh và Phương pháp phát hiện đối tượng sử dụng mạng độ chính xác cao. YOLOv3 để phát hiện đối tượng phương tiện và hướng 3.1. Mạng nơ-ron tich chập di chuyển trong video [3]. Chúng tôi tiến hành thay đổi Với bài toán phát hiện xe ô tô trong bài báo này, một số thông số trong mạng nơ-ron tích chập săn có cho tập mẫu huấn luyện là tập ảnh có số lượng nhỏ, nên khi phù hợp với đối tượng nghiên cứu của mình. Mô hình thực hiện bài toán phân loại với tập ảnh dữ liệu nhỏ, ta mạng này có thể cải thiện hiệu quả phát hiện các đối có thể sử dụng lại kết quả của mạng nơ-ron tích chập đa tượng nhỏ và giải quyết mạnh mẽ vấn đề đối tượng có có thay vì xây dựng lại mạng noron và huấn luyện nó từ sự thay đổi tỷ lệ. Cuối cùng, hệ thống sẽ đưa ra tín hiệu đầu. Chỉ cần sử dụng kiến trúc mạng cho phù hợp, cảnh báo thông qua đèn tín hiệu. Hệ thống ở 2 đầu ngõ phương pháp sử dụng các mô hình có săn như vậy còn được gọi là học chuyển tiếp. Với phương pháp này, toàn sẽ truyền thông qua tín hiệu mạng LAN hoặc sóng RF. bộ lớp trừ lớp ngõ ra, được coi là một bộ trích chọn đặc trưng sau đó ta huấn luyện một bộ phân loại khác dựa trên vector đặc trưng đa chọn. Một mạng nơ ron tích chập về cơ bản có 3 quá trình khác nhau: • Quá trình trích đặc trưng: Thông qua các tích chập giữa ma trận ảnh đầu vào với bộ lọc để tạo thành các đơn vị trong một lớp mới. Quá trình này có thể diễn ra liên tục ở phần đầu của mạng và thường sử dụng hàm kích hoạt relu. • Quá trình tổng hợp: các lớp ở về sau quá trình trích đặc trưng sẽ có kích thước lớn do số đơn vị ở các lớp sau thường tăng tiến theo cấp số nhân. Điều đó làm Hinh 1: Minh hoa qua trinh xay ra ket xe trong hem nho. tăng số lượng hệ số và khối lượng tính toán trong mạng nơ ron. Do đó để giảm tải tính toán chúng ta sẽ cần giảm chiều của ma trận thông qua việc tìm ra một giá trị đại diện cho mỗi một vùng không gian bộ lọc đi qua(maxpooling) mà không làm thay đổi các đường nét Hinh 2: Sơ đồ khối thiêt bi chính của ảnh. Quá trình này gọi là tổng hợp. • Quá trình kết nối đầy đủ (fully): Sau khi đa III. PHƯƠNG PHÁP PHÁT HIÊṆ PHƯƠNG giảm số lượng tham số đến một mức độ hợp lý, ma trận TIÊṆ GIAO THÔNG cần được định dạng lại(flatten) thành một vector và sử dụng các kết nối đầy đủ giữa các lớp. Quá trình này sẽ Một số phương pháp phát hiện phương tiện giao diễn ra cuối mạng tích chập và sử dụng hàm kích hoạt là thông, cụ thể trong bài báo này là xe ô tô, bằng phương relu. Kết nối cuối cùng sẽ dẫn tới các đơn vị là đại diện pháp xử lý ảnh đa được nghiên cứu và áp dụng hiện nay, cho mỗi lớp với hàm kích hoạt là softmax nhằm mục gồm 4 phương pháp chính: đích tính xác xuất. 1. Phương phap trư nên. [4] 2. Phương phap phân biệt khung và dựa trên chuyển động. [5] 3. Phương phap luồng quang hoc. [6] 4. Phương phap dựa trên cac đăc trưng. [7][8] Trong 4 phương pháp trên, phương pháp dựa trên các đặc trưng của phương tiện giao thông hiện nay đang được sử dụng rộng rai. Để trích đặc trưng đối tượng, việc sử dụng mạng nơ-ron tích chập đa được triển khai thành công với độ chính xác cao và được xem là phương pháp Hinh 4: Cấu trúc của một mạng nơ ron tích chập [12]. trích đặc trưng mức cao [9]. Phương pháp trích đặc trưng truyền thống có tốc độ nhanh hơn khi phát hiện phương Yolo là một mô hình mạng nơ-ron tích chập được tiện nhưng không tạo ra kết quả tốt khi hình ảnh thay đổi thiết kế để phát hiện các đối tượng mà có ưu điểm nổi độ sáng, chuyển động có tính chu kỳ trong nền và nơi có trội là nhanh hơn nhiều so với những mô hình cũ, phù phương tiện di chuyển chậm hoặc khung cảnh phức tạp hợp cho hệ thống real-time và có thể chạy tốt trên những [10][11]. Mạng nơ-ron tích chập đa đạt được kết quả tốt máy tính nhung như Raspberry Pi 4. Yolo được tạo ra gồm các lớp tích chập kết hợp các lớp giảm mẫu và cuối ISBN: 978-604-80-5076-4 93
- Hội nghị Quốc gia lần thứ 23 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2020) cùng là 2 lớp kết nối đầy đủ. Trong đó, các lớp tích chập sẽ trích xuất ra các đặc trưng của ảnh, còn lớp kết nối đầy đủ sẽ dự đoán ra xác suất đó và tọa độ của đối tượng. Lớp tích chập được sử dụng để trích xuất các đặc trưng của hình ảnh đầu vào mxn, hình ảnh đầu vào được chia thành các lưới ixj. Mô hình sẽ nhận dạng ảnh đó có đối tượng nào hay không, sau đó sẽ xác định tọa độ của đối tượng trong bức ảnh. Tâm của hộp nhan đối tượng (bounding box) nằm trong một đơn vị lưới, và đơn vị lưới chịu trách nhiệm dự đoán đối tượng. Kích thước của ảnh đầu vào phải là bội số của tỷ lệ lưới được chia. Vì đối tượng cần phát hiện là xe ô tô trong một hem nhỏ nên phần chứa đối tượng trong ảnh sẽ tương đối lớn nên kích thước lưới không cần quá lớn. Cấu trúc mạng YOLOv3 áp dụng trong bài báo này Hinh 4: Hinh minh hoa cach tính IoU được gọi là Darknet-53[5][13], với 53 lớp tích chập. Chung tôi sử dụng mô hình Yolov3 để dự đoán ảnh đầu ra có hay không có xe ô tô[5]. Tập ảnh dữ liệu thành tập huấn luyện của mô hình là COCO datatset[14]. Với YOLOv3, ta có thể dễ dàng cân đối giữa tốc độ và độ chính xác chỉ cần thay đổi kích thước của mô hình mà không cần huấn luyện lại mô hình[15][16]. Trong bài báo này, ảnh đầu vào 416 × 416 được chia lưới với kích thước 13 × 13 ô, đầu ra mô hình là một ma trận 3 chiều có kích thước 13 × 13 × (5 × � + �) với số lượng tham số mỗi ô là (5 × � + �) với N và M lần lượt là số lượng Box và Class mà mỗi ô cần dự đoán. Dự đoán mỗi Bounding box gồm 5 thành phần : (�, �, �, ℎ, ����������) với (�, �) là tọa độ tâm của bounding box, (�, ℎ) lần lượt là chiều rộng và chiều cao Hinh 5: Cấu trúc của Yolov3 gồm 53 layer [15]. của bounding box, prediction được định nghia là xác xuất dự đoán Bounding box chứa đối tượng [14]. 3.2. Lưu đồ giải thuật của hệ thống ���������� = Pr(������) × ���(����, ����ℎ) (1) Với IoU(Intersection over Union): tỷ lệ đo lường mức độ giao nhau giữa khung hình dự báo và khung hình được xác định trước từ bộ dữ liệu để nhằm xác định 2 khung hình có trùng lắp không. Tỷ lệ này được tính dựa trên phần diện tích giao nhau gữa 2 khung hình với phần tổng diện tích giao nhau và không giao nhau giữa chúng. ��������� = ���1���� + ���2_���� − �����_���� (2) �����_���� ��� = (3) �����_���� �(�1 , �1) = (���(��1, ��1), ���(��1, ��1)) (4) �(�2 , �2) = (���(��2, ��2), ���(��2, ��2)) (5) Hinh 6: Lưu đồ hệ thống. ISBN: 978-604-80-5076-4 94
- Hội nghị Quốc gia lần thứ 23 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2020) Bộ xử lý trung tâm: Sử dụng Raspberry Pi 4 lấy dữ nhiên khi thiếu ánh sáng, hệ thống không phát hiện ra liệu từ Camera đưa về xử lý, thay đổi kích cơ ảnh sau đó đối tượng, và đặc biệt nếu đối tượng ở khoảng cách xa đưa ảnh vào mô hình YOLOv3 để phát hiện có phương hay chất lượng camera kém cũng ảnh hưởng đến độ tiện hay không. Nếu có sẽ gửi tín hiệu đến mạch công chính xác suất để bật đèn màu đỏ. Nếu không có phương tiện nào thì bật đèn xanh và tiếp tục kiểm tra. Quy trình được thực Với mô hình YOLOv3: hệ thống phát hiện rất tốt hiện tương tự với thiết bị đặt tại đầu hem bên kia. trong nhiều điều kiện môi trường khác nhau. Hệ thống Camera: Đặt tại vị trí mong muốn, thu thập dữ liệu gần như không chịu sự tác động của ánh sáng hay chất và gửi về cho bộ xử lý trung tâm là Raspberry Pi 4. Tuy lượng ảnh kém nhiên, khi lắp đặt camera cần có vài nguyên tắc như sau: -Vị trí lắp camera ở độ cao phù hợp. -Vị trí lắp phải cho góc quan sát tốt, rộng và tầm nhìn không bị che khuất. Các bước triển khai YOLO trên Raspberry Pi4: - Cài đặt và cập nhật hệ điều hành trên Raspberry Pi 4; - Cài đặt tất cả các gói và thư viện cần thiết: numpy, pip, ; - Cài đặt OpenCV; Cài đặt TensorFlow; - Thiết lập thư mục YOLOv3-tiny: chứa các file trọng số, mô hình mạng; - Cấu hình Raspberry Pi Camera; - Chạy chương trình phát hiện đối tượng. IV. MỘT SỐ KẾT QUẢ THỬ NGHIỆM Hinh 8: Phat hiện đối tương sư dung phương phap Haar Cascade Độ chính xác của việc phát hiện và nhận dạng phương tiện giao thông phụ thuộc nhiều vào chất lượng của dữ liệu huấn luyện. Những thách thức trong vấn đề này bao gồm góc quan sát của camera, chất lượng hình ảnh, ánh sáng và điều kiện thời tiết. Chung tôi đa áp dụng các mô hình phát hiện hiện đại để có được kết quả so sánh. Trong số đó, YOLOv3 có được độ ổn định, độ chính xác cao nhất. Thực nghiệm phát hiện xe trên đường Trương Văn Hải, Phường Tăng Nhơn Phu A, Quận 9, Tp.Hồ Chí Minh, triển khai trên 3 phương pháp với phần cứng Raspberry Pi 4, camera Logitech, trong cùng điều kiện môi trường: Với phương pháp trừ ảnh nền: độ chính xác không cao, đôi khi nhận dạng sai đối tượng, ví dụ như ở Hình 7, khi không có phương tiện ô tô nào nhưng hệ thống vẫn phát hiện có. Lý do ở đây là do có gió làm cây lắc lư nên hệ thống phát hiện sai. Hinh 9: Phat hiện đối tương sư dung phương phap mạng nơ- ron tích chập V. KẾT LUẬN Thông qua mô hình YOLOv3, nhóm tác giả đa thực nghiệm thành công với hệ thống phát hiện xe ô tô trong ngõ hem và đạt kết quả khả quan. Kết quả của nghiên cứu này sẽ là tiền đề để triển khai ứng dụng trong thực tế tại các thành phố lớn ở nước ta TÀI LIỆU THAM KHẢO [1] Agrawal & Singhal, S. Smart drip irrigation system using Hinh 7: Phat hiện đối tương sư dung phương phap trư anh raspberry Pi and arduino. Proceedings of International nên Conference on Computing, Communication & Automation (ICCCA). 2015. Với phương pháp Haar Cascade: hệ thống phát hiện tốt khi điều kiện môi trường có đủ ánh sáng. Tuy ISBN: 978-604-80-5076-4 95
- Hội nghị Quốc gia lần thứ 23 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2020) [2] Julien Marot; Salah Bourennane. Raspberry Pi for image [11] K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning for processing education, 25th European Signal Processing image recognition. In Proceedings of the IEEE conference on Conference (EUSIPCO), IEEE Publishing, 2017. computer vision and pattern recognition, 2016. [3] Redmon, J., Divvala, S., Girshick, R., Farhadi, A. You only look [12] The MathWorks, Inc ,Convolutional Neural Network, once(YOLO): Unified, real-time object detection. In 2016 IEEE solutions/deep- conference on computer vision and pattern recognition. 2016, learning/convolutional-neural-network.html, truy cập ngày 5 IEEE, (pp. 779–788). tháng 9 năm 2020. [4] Radhakrishnan, M. Video object extraction by using [13] Joseph Redmon, Ali Farhadi, YOLOv3: background subtraction techniques for sports applications. AnIncrementalImprovement, cornell university, New York, 2015, Digital Image Processing, 5(9), 91–97. 2018. [5] Qiu-Lin, L.I., & Jia-Feng, H.E. Vehicles detection based on [14] Renu Khandelwal, Object Detection with YOLOv3 using three-frame-difference method and cross-entropy threshold Keras, method. 2011,Computer Engineering, 37(4), 172–174. yolov3-using-keras-80bf35e61ce1, Jul 28, 2019, truy cập ngày [6] Liu, Y., Yao, L., Shi, Q., Ding, J. Optical flow based urban road 12 tháng 9 năm 2020. vehicle tracking. In 2013 Ninth International Conference on [15] Song, H., Liang, H., Li, H. et al. Vision-based vehicle detection Computational Intelligence and Security. 2014, and counting system using deep learning in highway scenes. IEEE. Eur. Transp. Res. Rev. 11, 51, 2019. [7] Al-Smadi, M., Abdulrahim, K., Salam, R.A. Traffic [16] Kolcheck K., Wang Z., Xu H., Zheng J.Y. Visual Counting of surveillance: A review of vision based vehicle detection, Traffic Flow from a Car via Vehicle Detection and Motion recognition and tracking. 2016, International Journal of Applied Analysis. In: Palaiahnakote S., Sanniti di Baja G., Wang L., Yan Engineering Research, 11(1), 713–726. W. (eds) Pattern Recognition. ACPR 2019. Lecture Notes in [8] Kevin Kolcheck, Zheyuan Wang, Haiyan Xu and Jiang Yu Computer Science, vol 12046. Springer, Cham. 2020, Zheng. Visual Counting of Traffic Flow from A Car via Vehicle Detection and Motion Analysis, Fukuoka Institute of [17] Xin Nie, Meifang Yang, Ryan Wen Liu. Deep Neural Network- Technology, Fukuoka, Japan, September 2019. Based Robust Ship Detection Under Different Weather [9] Zhao, Z.Q., Zheng, P., Xu, S.T., Wu, X. Object detection with Conditions, University of Technology, Wuhan, China, 2019. deep learning: A review, 2018, arXiv e-prints, [18] Ali Farhadi, YOLO: Real-Time Object Detection , arXiv:1807.05511. truy cập ngày 12 tháng 9 [10] Palubinskas, G., Kurz, F., Reinartz, P. Model based traffic năm 2020. congestion detection in optical remote sensing imagery. European Transport Research Review, 2010, 2(2), 85–92. ISBN: 978-604-80-5076-4 96