36 C
Hanoi
Thứ Hai, 17 Tháng Sáu, 2024

Đề xuất thuật toán xây dựng hệ thống xe di chuyển theo nhãn dán

Print Friendly, PDF & Email

TÓM TẮT

Mục đích của bài báo này là đề xuất thuật toán xây dựng hệ thống xe di chuyển theo nhãn dán; xe di chuyển bám theo nhãn dán là ý tưởng nhằm giảm bớt công sức và thời gian cho việc tự tay đẩy hoặc kéo, mang vác những xe hàng. Ý tưởng này có thể ứng dụng cho xe chở hàng trong các nhà kho hoặc cho vali tự động di chuyển theo người dùng.

Xe hoạt động theo những bước chính là: Video được quay liên tục rồi gửi lên server, từ video đó server sẽ phát hiện nhãn dán có trong khung hình bằng thuật toán YOLO (là nhãn dán đã được huấn luyện để phát hiện trước đó) và xác định vị trí tương đối của tâm nhãn dán trong khung hình, cuối cùng gửi lệnh xuống xe bám theo nhãn dán đó. Do tập dữ liệu huấn luyện còn ít (392 ảnh) nên độ chính xác của việc phát hiện vật thể còn chưa cao, nhưng trong điều kiện thích hợp thì có thể xác định chính xác lên thới 96%. Bằng việc tăng tập mẫu ảnh và lựa chọn số lượng bước thích hợp thì hoàn toàn có thể tăng độ chính xác trong những điều kiện ảnh xấu hơn.

ABSTRACT

The goal of this paper is to propose algorithm to build a car system for moving by label; moving vehicles following the sticker is an idea to reduce effort and time for pushing or pulling and carrying the carts by hand. This idea can be applied to cargo trucks in warehouses or for suitcases that automatically move with the user.

The vehicle works in the main steps: Video is continuously recorded and then sent to the server, from that video, the server will detect the sticker in the frame by YOLO algorithm (the sticker has been trained to detect) and determine the relative position of the center of the sticker in the frame, finally sending the order down to the vehicle following that sticker. Because the training data set is small (392 images), the detection accuracy of the object is not high, but under the right conditions it can be determined up to 96%. By increasing the sample set and choosing the appropriate number of steps, it is possible to increase accuracy in worse image conditions.

 ĐẶT VẤN ĐỀ

Hiện nay, những thuật toán trong lĩnh vực thị giác máy tính đang được phát triển mạnh mẽ và có nhiều ứng dụng như trong giám sát, y tế [1], [2], [3], [4]. Xe di chuyển bám theo nhãn dán cũng là một ứng dụng của nó. Tuy nhiên, việc đưa mô hình này vào thực tế còn chưa được rộng rãi vì cho đến nay các thuật toán của thị giác máy tính mới thực sự phát triển mạnh mẽ [3], [4]. Ngoài ra, việc xác định khoảng cách để giữa các vật thế còn chưa được linh hoạt. Với bài toán đưa ra, chúng ta không thể sử dụng phương pháp đo truyền thống mà phải sử dụng các thuật toán đo đạc. Thuật toán phổ biến hiện nay là sử dụng 2 camera để xác định khoảng cách, tuy nhiên nếu sử dụng hệ thổng 2 camera, cấu trúc phần cứng trở nên cồng kềnh và khó lắp đặt. Xuất phát từ thực tế đó, trong bài báo này chúng tôi xây dựng một hệ thống gồm có:

– Xe di chuyển có gắn camera: Xe gồm có Raspberry PI, Module L298 điều khiển động cơ, 2 động cơ, 1 camera; Raspberry pi có nhiệm vụ truyền tải hình ảnh lên server và nhận lệnh từ server điều khiển động cơ di chuyển

– Server: có nhiệm vụ nhận video từ raspberry pi, sau đó chạy thuật toán xử lý và gửi lại lệnh đến raspberry pi.

GIẢI PHÁP THỰC HIỆN

Cấu trúc hệ thống

Sơ đồ cấu trúc hệ thống được đề xuất như trên hình 1:

Sơ đồ đề xuất quá trình xây dựng hệ thống

Trong bước xác định vật thể, chúng tôi sử dụng thuật toán YOLO [5], [6], [7], [8], [9]. Với thuật toán này, hình ảnh đầu vào và sẽ được xử lý qua một mạng nơron duy nhất, đầu ra của mạng sẽ là dự đoán tâm và hộp bao vật thể, điều này làm tốc độ xử lý nhanh hơn so với các thuật toán phát hiện vật thể khác, phù hợp với các ứng dụng xử lý ảnh theo thời gian thực.

Thu thập tập mẫu và đánh nhãn dán

Tập mẫu trong lần thử nghiệm của chúng tôi là đèn giao thông. Yêu cầu đặt ra cho tập mẫu là đủ sự đa dạng, trong nhiều bối cảnh khác nhau, màu sắc, độ sáng ảnh khác nhau để tránh bị overfitting trong quá trình huấn luyện (overfitting: khi huấn luyện kết quả cho ra rất tốt, nhưng khi đưa tập mới thử lại thì kết quả kém) [4].

Sau khi có tập mẫu sẽ xác định vật thể trong từng ảnh. Bước này phải làm thủ công với sự hỗ trợ của phần mềm labelImg. Với mỗi ảnh, ta sẽ chọn tất cả các khu vực có vật thể và sau đó lưu file nhãn dán. Trong kết quả gồm có: tâm của vật thể, chiều cao, chiều rộng của hộp bao vật thể như trên hình 2 và hình 3.

Ảnh đèn giao thông trong môi trường tự nhiên

 

File lưu kết quả đánh nhãn thủ công 2 vật thể trong hình 2

Huấn luyện tập mô hình

Sau quá trình huấn luyện, kết quả sẽ thu được một bộ trọng số và một mô hình mạng (mô hình gồm các thông số về số lượng nơron, giá trị tỉ lệ học: learning rate, số lớp,…) các kết quả sau sẽ được xây dựng dựa theo những bộ trọng số và mô hình trước đó đã được thực hiện và đã được công bố miễn phí trên Darknet [10], [11].

Để xây dựng mô hình này, chúng tôi sử dụng bộ công cụ darkflow, gồm các thư viện hỗ trợ huấn luyện mạng YOLO. Kết quả như trên hình 4.

Quá trình huấn luyện

KẾT QUẢ ĐẠT ĐƯỢC

Tính thông số liên quan đến hộp bao vật thể

Sau khi quá trình huấn luyện kết thúc ta có bộ trọng số và cấu hình mạng mới. Kết quả như trên hình 5 và hình 6.

Kết quả phát hiện vật thể
Thông số liên quan đến hộp bao vật thể.

Trong đó: ‘label’ là tên vật thể, ‘confidence’ là độ chính xác của dự đoán, ‘bottomright’ là tọa độ góc dưới bên phải của hộp, ‘topleft’ là tọa độ góc trên bên trái của hộp (gốc tọa độ nằm ở góc trên bên trái của khung hình).

Từ các tọa độ trên ta xác định được tâm và kích thước của hộp. Ví dụ ‘bottomright’: (255,381), ‘topleft’: (187, 171) ta có tâm C của hộp là:

Tính khoảng cách từ camera đến vật thể

Có 2 phương án để tính khoảng cách từ camera đến vật thể: i) sử dụng 2 camera và đo đạc dựa vào các tính toán vật lý (dựa vào tiêu cự và kích thước ảnh trên khung hình); ii) sử dụng 1 camera để đo khoảng cách (kết quả tương đối). Trong bài báo này để xuất phương án sử dụng 1 camera để giảm độ phức tạp cho việc lập trình và vì kết quả dự đoán vật thể từ 2 camera không khớp nhau 100%.

Các bước thực hiện như sau:

Bước 1: Xác định được hộp bao vật thể

Bước 2: Tính tỉ lệ (T) chiều rộng của hộp bao/ chiều rộng của khung hình

Bước 3: Tính khoảng cách S bằng cách nhân T với hệ số cố đinh a (a được xác định dựa vào đo đạc khoảng cách của vật tới camera trong thực tế và tỉ số T tương ứng khi đó (hàm biểu diễn là hàm tuyến tính).

Ưu điểm: dễ thực hiện, giảm thời gian xử lý và lập trình

Nhược điểm: yêu cầu nhãn dán phải có kích thước cố định và kết quả chỉ tương đối do góc quay camera ảnh hưởng đến dự đoán (kết quả tốt nhất khi nhìn thẳng).Tuy nhiên, với yêu cầu của xe thì việc sai số như vậy vẫn chấp nhận được.

Xây dựng thuật toán điều khiển xe

Bước 1: Vị trí cân bằng của xe là khi tọa độ tâm của vật thể có hoành độ nằm giữa khung hình.

Bước 2: Khi nhãn dán di chuyển sang trái, hoành độ của vật thể nhỏ dần. Khi đó ta sẽ điều khiển bánh xe (bánh trái có tốc độ 0, bánh phải có tốc độ 0+x) để xe quay sang trái sao để hoành độ của tâm sẽ dịch về vị trí cân bằng (camera gắn cố định trên xe).

Bước 3: Khi nhãn dán có khoảng cách lớn hơn 1 ngưỡng đặt trước, xe sẽ di chuyển lên phía trước (tránh trái có tốc độ b+0, bánh phải có tốc độ b+0+x).

Bước 4: Khi nhãn dán có khoảng cách nhỏ hơn ngưỡng đặt trước xe dừng lại.

Bước 5: Gửi lệnh từ server đến raspberry pi và điều khiển L298 bằng raspberry pi sử dụng các chân GPIO của Pi để điều khiển.

3.4 Thảo luận

Một trong những phương pháp truyền thống có thể đo được khoảng cách xa và tương đối chính xác là phương pháp sử dụng tia laze. So với phương pháp được đưa ra trong đề tài, chúng tôi đưa ra một số nhận xét:

 

* Độ chính xác của hệ thống đo qua thuật toán có thể được tăng lên với lượng đầu vào cho phần học máy nhiều và chất lượng hơn

KẾT LUẬN

Bài báo nghiên cứu việc xây dựng hệ thống xe di chuyển theo nhãn dán. Ở đây chúng tôi mô phỏng quá trình tập hợp dữ liệu huấn luyện và đánh giá kết quả. Hướng tiếp theo chúng tôi sẽ thực hiện:

– Mô phỏng quá trình tập hợp dữ liệu cho toàn bộ xe cùng một thời điểm.

– Đánh giá mức tiêu thụ năng lượng của thuật toán và hệ thống.

– Xử lý song song nhiều nhãn dán.

TÀI LIỆU THAM KHẢO

  • Mueid, L. Christopher and R. Tian (2016). Vehicle-pedestrian dynamic interaction through tractography of relative movements and articulated pedestrian pose estimation. The IEEE Applied Imagery Pattern Recognition Workshop (AIPR), Washington, DC, 2016, pp. 1-6.
  • Yurtsever, J. Lambert, A. Carballo and K. Takeda (2020). A Survey of Autonomous Driving: Common Practices and Emerging Technologies. In IEEE Access, vol. 8, pp. 58443-58469, 2020.
  • J. Henderson and S. Feiner (2009). Evaluating the benefits of augmented reality for task localization in maintenance of an armored personnel carrier turret. 8th IEEE International Symposium on Mixed and Augmented Reality, Orlando, FL, 2009, pp. 135-144.
  • O. Alsrehin, A. F. Klaib and A. Magableh (2019). Intelligent Transportation and Control Systems Using Data Mining and Machine Learning Techniques: A Comprehensive Study. In IEEE Access, vol. 7, pp. 49830-49857.
  • Du, Juan. (2018). Understanding of Object Detection Based on CNN Family and YOLO. Journal of Physics: Conference Series.
  • Redmon, S. Divvala, R. Girshick and A. Farhadi (2016). You Only Look Once: Unified, Real-Time Object Detection. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Las Vegas, NV, 2016, pp. 779-788.
  • Huang, J. Pedoeem and C. Chen (2018). YOLO-LITE: A Real-Time Object Detection Algorithm Optimized for Non-GPU Computers. IEEE International Conference on Big Data (Big Data), Seattle, WA, USA, 2018, pp. 2503-2510.
  • Ćorović, V. Ilić, S. Ðurić, M. Marijan and B. Pavković (2018). The Real-Time Detection of Traffic Participants Using YOLO Algorithm. 26th Telecommunications Forum (TELFOR), Belgrade, 2018, pp. 1-4.
  • Wang, L. Niu and N. Li (2018). Research on Image Recognition of Insulators Based on YOLO Algorithm. International Conference on Power System Technology (POWERCON), Guangzhou, 2018, pp. 3871-3874.
  • Won, D. Lee, K. Lee and C. Lin (2019). An Improved YOLOv3-based Neural Network for De-identification Technology. 34th International Technical Conference on Circuits/Systems, Computers and Communications (ITC-CSCC), JeJu, Korea (South), 2019, pp. 1-2.
  • Mahurkar (2018). Integrating YOLO Object Detection with Augmented Reality for iOS Apps. 9th IEEE Annual Ubiquitous Computing, Electronics & Mobile Communication Conference (UEMCON), New York City, NY, USA, 2018, pp. 585-589. 

Tác giả: Nguyễn Hữu Phát – Đại học Bách khoa Hà Nội; Hoàng Bảo Hưng – Đại học Bách khoa Hà Nội; Nguyễn Trọng Các –  Trường Đại học Sao Đỏ.

Theo TC AS&CS số in tháng 03/2023

Bài viết liên quan

CÙNG CHUYÊN MỤC

XEM NHIỀU NHẤT