Trí tuệ nhân tạo được ứng triển khai thí điểm tại Dự án giao thơng thơng minh tại Bà Rịa - Vũng Tàu là cơng nghệ chủ chốt của cơng nghiệp 4.0 được nghiên cứu xây dựng và làm chủ cơng nghệ. Đây là một Dự án sản xuất thử nghiệm (SXTN) cấp tỉnh được triển khai áp dụng thí điểm tại 01 điểm giao lộ đường Huỳnh Minh Thạnh và 27/4 thị trấn Phước Bửu, huyện Xuyên Mộc đã và đang phát huy hiệu quả và độ chính xác cao khi triển khai vào sử dụng thực tế tại Bà Rịa - Vũng Tàu. Điểm vượt trội của cơng nghệ để nghiên cứu, thử nghiệm, nâng cấp và tinh chỉnh để phù hợp với tình hình tham gia giao thơng phức tạp, hỗn loạn như ở Bà Rịa – Vũng Tàu nĩi riêng, cả nước nĩi chung. Luận văn áp dụng mạng nơ-ron tích chập (CNN) theo phương pháp nhìn một lần (YOLO) cĩ thể hoạt động theo thời gian thực với độ chính xác cao nhằm phát hiện, nhận dạng và xử lý các hành vi vi phạm trật tự an tồn giao thơng, gĩp phần giảm thiểu ùn tắc, tai nạn cho người và phương tiện tham gia giao thơng. Đồng thời giúp cơng tác tuần tra kiểm sốt trật tự, an ninh và phát hiện kịp thời, cĩ chứng cứ pháp lý về hình ảnh nhằm cung cấp cho lực lượng chức năng khi điều tra các vụ việc xảy ra trên đường gĩp phần đảm bảo an ninh trật tự xã hội.
Trên cở sở đĩ, cá nhân đề xuất áp dụng cơng nghệ mạng nơ-ron tích chập (CNN) theo phương pháp nhìn một lần (YOLO) nhằm nhận dạng và phân loại đối tương chính cho bài tốn được sử dụng kết hợp bộ cơng cụ thư viện mã nguồn mở OPENCV, hỗ trợ bởi thư viện YOLO trên mơi trường PYTHON và thiết bị ghi hình để giải quyết vấn đề trên.
1.1. Kỹ thuật áp dụng mạng nơ-ron tích chập (Faster R-CNN)
Faster R-CNN là một thuật tốn để tìm kiếm vị trí của vật thể trong ảnh. Thuật tốn này sẽ cĩ đầu ra là những hình hộp, cùng với vật thể bên trong hộp đĩ là gì. Phiên bản đầu tiên của Faster R-CNN là R-CNN với nguyên lý khá đơn giản. R-CNN sử dụng một thuật tốn (selective search) để đưa ra các đường viền bao quanh và nhãn (tên gọi của vật thể bên trong hộp - bounding boxes) hay cịn gọi vùng đề xuất (region
proposals) chứa các vùng cĩ thể cĩ vật thể ở trong. Tiếp theo RCNN sử dụng các
mạng đã được huấn luyện sẵn như Alex-net hoặc VGG-16 để tính tốn (feed-forward) đến các vùng (regions) thu được những đặc trưng trong ảnh (convolutional features)
của mỗi vùng (region), sau đĩ sử dụng kỹ thuật nhị phân (SVM) huấn luyện để xác định được vật thể nào được chứa trong vùng đề xuất (region proposal). Để giảm độ lỗi R-CNN sử dụng kỹ thuật (Linear Regression) để hiệu chỉnh các giá trị (vị trí các đỉnh) của đối tượng trong vùng đề xuất.
Faster R-CNN sử dụng các mạng huấn luyện sẵn để tính tốn (feed-forward) trong các vùng đề xuất (region proposals), cơng việc này sẽ mất rất nhiều thời gian bởi với mỗi ảnh đều sử dụng thuật tốn (selective search) sẽ đưa ra kết quả là hàng nghìn vùng đề xuất (region proposals). Từ đĩ, Faster R-CNN sử dụng mạng huấn luyện sẵn để tính tốn (feed-forward) một lần đối với ảnh gốc, sau đĩ thu được những đặc trưng
(convolutional features) của ảnh đĩ. Ví dụ với một hình ảnh cĩ kích thước
600×600×3, ta sẽ thu được đặc trưng (convolutional features) với kích thước 37×37×512. Kích thước của đặc trưng (features) bị giảm nhỏ khoảng 16 lần. Faster R- CNN dựa vào kích thước cùng vị trí của các vùng đề xuất (region proposals) đối với ảnh gốc, ta sẽ tính tốn được vị trí của những đặc trưng cụ thể trong vùng đề xuất. Faster R-CNN sử dụng giá trị đặc trưng trong vùng đề xuất, ta dự đốn được vị trí các đỉnh của đường viền bao quanh (bounding box) cũng như vật thể nằm trong đường viền bao quanh đĩ là gì.
Đối với Faster R-CNN do chia sẻ tính tốn giữa các vùng trong ảnh, tốc độ thực thực thi của thuật tốn đã được giảm từ 120 giây mỗi ảnh xuống 2 giây. Phần tính tốn gây ra nghẽn chính là phần đưa ra các vùng đề xuất (region proposal) đầu vào, chỉ cĩ thể thực thi tuần tự trên bộ xử lý (CPU).
Faster R-CNN khơng dùng thuật tốn tìm kiếm vật thể trong ảnh (selective
search) để lấy ra các vùng đề xuất, từ đĩ cĩ thêm một mạng CNN mới gọi là mạng đề
xuất khu vực (Region Proposal Network - RPN) để tìm trích xuất các đặc trưng từ các vùng đề xuất để trả kết quả thơng qua các đường viền bao quanh, sau đĩ gắn nhãn cho đối tượng cần xem xét trong vùng đề xuất. Vì vậy sẽ giúp cải thiện hơn 10 lần về tốc độ tính tốn so với Faster R-CNN. Đối với mạng đề xuất khu vực (RPN) nhận đầu vào là ảnh với kích thước bất kỳ và cho đầu ra là các vùng đề xuất (tập vị trí của các hình chữ nhật cĩ thể chứa vật thể), cùng với xác suất chứa vật thể của hình chữ nhật tương ứng.
Hình 43: Kiến trúc Darknet-53
1.2. Kỹ thuật áp dụng nhìn một lần [32-34]
You Only Look Once – YOLO đĩ là thuật tốn phát hiê ̣n đối tượng sử dụng các tính năng được học sâu thơng qua mạng nơ-ron tích chập nhằm phát hiện một đối tượng.
Nhận dạng đối tượng giúp giảm cơng sức của con người trong nhiều lĩnh vực. Trong lĩnh vực giao thơng thơng minh sử dụng YOLO phiên bản 3 để phát hiện đối tượng là các phương tiện và người tham gia giao thơng. Phiên bản này với darknet-53 bao gồm 53 lớp, là một mơ hình mạnh để phát hiện đối tượng trong ảnh kể cả các đối tượng nhỏ với độ chính xác cao.
Giải thuật YOLO thao tác bằng cách chia ảnh đầu vào bất kỳ thành hệ thống lưới S × S. Mỗi ơ lưới dự đốn số lượng “Khung ranh giới (Boundary Box)" cho một đối tượng. Mỗi khung ranh giới gồm 5 giá trị: (x, y, w, h, confidence score).
Trong đĩ x, y là tọa độ đối tượng trong ảnh đầu vào, w và h lần lượt là chiều rộng và chiều cao đối tượng “confidence score” là xác suất hộp chứa đối tượng và độ chính xác của khung ranh giới. Hình 44 mơ tả khung ranh giới xác định đối tượng chim.
Hình 44: Khung ranh giới xác định đối tượng chim
Giải thuật YOLO phát hiện, định vị và phân loại đối tượng diễn là trong 1 lần duy nhất. Do vậy, nên được áp dụng để phát hiện đối tượng thời gian thực. Hình 45 phân loại 3 đối tượng: cat, dog và duck
Hình 45: Phát hiện, định vị và phân loại nhiều đối tượng
You Only Look Once – YOLO cĩ 3 phiên bản. Phiên bản đầu tiên (YOLOv1) sử dụng kiến trúc Darknet được đào tạo trên tập ImageNet-1000. Kiến trúc này dẫn đến những hạn chế như:
(1) Khơng thể tìm thấy các đối tượng nhỏ. (2) Các đối tượng quá sát nhau.
(3) Khơng thể khái quát các đối tượng nếu hình ảnh cĩ kích thước khác với hình ảnh đào tạo.
Phiên bản thứ 2 của YOLO (YOLOv2) cịn được gọi là YOLO9000 được cải tiến tốt hơn, nhanh hơn, tiên tiến hơn để cạnh tranh với mơ hình Faster R-CNN rất mạnh ra đời với thời gian đĩ. Những cải tiến của YOLOv2 so với YOLOv1 đĩ là:
- Batch Normalization: chuẩn hĩa hàng loạt ở các lớp tích chập, làm giảm sự thay đổigiá trị trong các lớp ẩn, cải thiện tính ổn định của mạng lưới.
- Higher Resolution Classifier: kích thước đầu vào trong YOLOv2 đã được tăng từ 224×224 lên 44×448. Việc tăng kích thước đầu vào của hình ảnh đã cải thiện hình ảnh (độ chính xác trung bình trung bình) lên tới 4%.
- Anchor Boxes: một trong những thay đổi đáng chú ý nhất cĩ thể nhìn thấy trong YOLOv2 là giới thiệu các anchor box. YOLOv2 thực hiện phân loại và dự đốn trong một khung duy nhất. Các anchor box này chịu trách nhiệm dự đốn boundary box và các anchor box này được thiết kế cho một tập dữ liệu nhất định bằng cách sử dụng thuật tốn phân cụm (k-means clustering).
- Fine-Grained Features: một trong những hạn chế chính được đưa ra trong YOLOv1 là phát hiện các vật thể nhỏ trên hình ảnh. Điều này đã được giải quyết trong YOLOv2 bằng cách chia hình ảnh thành các ơ lưới 13×13 nhỏ hơn so với phiên bản trước đĩ. Điều này cho phép YOLOv2 xác định các đối tượng nhỏ hơn trong hình ảnh và cũng hiệu quả với các đối tượng lớn hơn.
- Multi-Scale Training: trên YOLO v1 cĩ một điểm yếu phát hiện các đối tượng với các kích cỡ đầu vào khác nhau, nếu YOLO được đào tạo với các hình ảnh nhỏ của một đối tượng cụ thể thì nĩ cĩ vấn đề phát hiện cùng một đối tượng trên hình ảnh cĩ kích thước lớn hơn. Điều này đã được giải quyết rất tốt trong YOLOv2, nơi nĩ được đào tạo với các hình ảnh ngẫu nhiên với các kích thước khác nhau trong khoảng từ 320×320 đến 608×608. Điều này cho phép mạng tìm hiểu và dự đốn các đối tượng từ các kích thước đầu vào khác nhau với độ chính xác cao.
- Darknet 19: YOLOv2 sử dụng kiến trúc Darknet 19 với 19 lớp chập và 5 lớp max-pooling và một lớp softmax cho việc phân loại đối tượng.
Điều đĩ chứng minh YOLOv2 đã cho thấy một sự cải tiến lớn trong việc phát hiện các vật thể nhỏ hơn với độ chính xác cao hơn nhiềuso với phiên bản trước (YOLOv1).
YOLO phiên bản mới nhất (YOLOv3) cĩ tất cả những gì cần để phát hiện đối tượng thời gian thực với độ chính xác cao. Cụ thể những cải tiến trong YOLOv3 đĩ là:
- Bounding Box Predictions: YOLOv3 cho điểm cho các đối tượng cho mỗi boundarybox. Nĩ sử dụng hồi quy logistic để dự đốn điểm.
- Class Predictions: YOLOv3 sử dụng phân loại logistic cho mọi lớp thay vì softmax đã được sử dụng trong YOLOv2 trước đĩ. Bằng cách làm như vậy YOLOv3 cĩ thể cĩ phân loại đa nhãn.
- Feature Pyramid Networks (FPN): YOLOv3 đưa ra các dự đốn tương tự như FPN trong đĩ 3 dự đốn được thực hiện cho mọi vị trí hình ảnh đầu vào và các đặc tính được trích xuất từ mỗi dự đốn. Bằng cách đĩ, YOLOv3 cĩ khả năng tốt hơn ở các kích thước đầu vào khác nhau.
- Darknet-53: YOLOv2 đã sử dụng Darknet-19 để trích xuất các đặc tính và YOLOv3 sử dụng mạng Darknet-53 để trích xuất các đặc tính với 53 lớp chập. Nĩ sâu hơn nhiều so với YOLOv2 và cũng cĩ các kết nối tắt (shortcut connections). Darknet- 53 bao gồm chủ yếu các bộ lọc 3×3 và 1×1 với các kết nối tắt.
Hình 47: Kiến trúc Darknet-19