CHƯƠNG 1 GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI. Tính cấp thiết của đề tài .2 Ý nghĩa và tính thực tiễn của đề tài. Đối tượng và phạm vi nghiên cứu. Đối tượng nghiên cứu.
Phạm vi nghiên cứu. Mục đích nghiên cứu. Phương pháp nghiên cứu .6 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT. Thị giác máy tính.
Cách hoạt động. Mạng nơ-ron tích chập (Convolutional Neural Network). Lớp tích chập (Conv Layer). Lớp tổng hợp (Pooling Layer).
Lớp kết nối đầy đủ (Fully Connected). Các thuật toán liên quan. Phân loại các thuật toán. Theo dõi đối tượng (Object Tracking).
Phát hiện đối tượng (Object Detection). Phân đoạn đối tượng (Object Segmentation). Các kỹ thuật được sử dụng. Học chuyển tiếp (Transfer learning).
Kỹ thuật ước lượng khoảng cách. Các ngôn ngữ lập trình. Các chuẩn giao tiếp và giao diện .4 Tính năng an toàn trên ô tô. Lựa chọn phương pháp - thiết bị.
Lựa chọn phương pháp. Lựa chọn mô hình. Lựa chọn thuật toán. Thuật toán ước lượng khoảng cách vật thể đến camera.
Thuật toán tính khoảng cách an toàn. Thuật toán tính thời gian va chạm. Lựa chọn thiết bị phần cứng. Mô hình YOLO.
Giới thiệu chung về YOLO. Một số khái niệm liên quan đến YOLO. Phương pháp. Kiến trúc của mô hình.
Điểm cải tiến. So sánh hiệu suất với các phiên bản trước đây .65 xi CHƯƠNG 3 THIẾT KẾ VÀ THUẬT TOÁN. Tổng quan thiết kế. Cơ sở dữ liệu (MySQL).
Thiết kế phần cứng. Thiết kế thuật toán. Hiển thị và cảnh báo. Thuật toán xử lý tín hiệu biển báo.
Thiết kế giao diện hiển thị. Thiết kế thuật toán hiển thị và âm thanh. Xử lý thông tin. Thuật toán xử lý lệch làn đường - LANE.
Thuật toán xử lý tiền va chạm - OBSTACLE. Thuật toán xử lý tín hiệu biển báo tốc độ - TRAFFIC SIGN. Thuật toán xử lý trạng thái tài xế - DRIVER STATE.79 CHƯƠNG 4 HUẤN LUYỆN MÔ HÌNH. Chuẩn bị dữ liệu.
Mô hình cảnh báo tiền va chạm và cảnh báo lệch làn đường. Mô hình nhận diện biển báo giao thông. Huấn luyện mô hình. Mô hình cảnh báo lệch làn đường - Mô hình Drivable.
Xử lý dữ liệu. Trực quan hóa dữ liệu huấn luyện mô hình. Quá trình huấn luyện mô hình. Kết quả quá trình huấn luyện mô hình.
Đánh giá tổng quan về mô hình. Mô hình cảnh báo tiền va chạm - Mô hình Obstacle. Xử lý dữ liệu. Trực quan hóa dữ liệu.
Quá trình huấn luyện mô hình. Kết quả quá trình huấn luyện mô hình. Đánh giá tổng quan về mô hình. Mô hình nhận diện biển báo giao thông.
Xử lý dữ liệu. Trực quan hóa dữ liệu. Quá trình huấn luyện mô hình. Kết quả quá trình huấn luyện mô hình.
Đánh giá tổng quan về mô hình .115 CHƯƠNG 5 KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ .1 Mô hình nhận diện làn đường đang di chuyển. Kết quả dự đoán trong điều kiện thực tế. Đánh giá kết quả dự đoán. Mô hình nhận diện các đối tượng tham gia giao thông.
Kết quả dự đoán trong điều kiện thực tế. Đánh giá kết quả dự đoán. Mô hình nhận diện biển báo giới hạn tốc độ. Kết quả dự đoán.
Đánh giá kết quả dự đoán. Mô hình giám sát tài xế. Kết quả dự đoán của mô hình. Đánh giá kết quả dự đoán mô hình.
Hiển thị và cảnh báo. Kết quả hiển thị. Đánh giá kết quả. Cả hệ thống.
Kết quả thực nghiệm của hệ thống. Đánh giá kết quả thực nghiệm của hệ thống .156 CHƯƠNG 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN. Hướng phát triển trong tương lai .157 CHƯƠNG 7 TÀI LIỆU THAM KHẢO .158 xiv PHỤ LỤC HÌNH ẢNH Hình 1. Tai nạn giao thông - tình trạng ‘dồn toa’.
Lệch làn - Chạy 2 làn đường trên cao tốc. Tài xế ngủ gật khi đang lái xe. Hệ thống hỗ trợ người lái trên xe. Sử dụng AI nhận diện điều kiện giao thông.
Xe ô tô vi phạm tốc độ. Trí tuệ nhân tạo - AI. Máy học - Machine Learning. Sự khác biệt giữa AI, Machine Learning, và Deep Learning.
Cách hoạt động của Học sâu (Deep Learning). Các lĩnh vực có thể ứng dụng Học sâu (Deep Learning). Thứ tự cơ bản về các lớp trong CNN (trái qua phải). Kiến trúc cơ bản của CNN.
Kích thước của bộ lọc so với hình ảnh Input. Cách hoạt động của Conv Layer. Các hàm kích hoạt thường gặp. Sự khác nhau giữa Max Pooling và Avg Pooling.
Phương pháp Downsampling. Sự khác nhau giữa Max Pooling và Upsampling. Cách hoạt động của Transposed Convolution. Cách hoạt động của Nearest Neighbor Interpolation.
Cách hoạt động của Bilinear Interpolation. Kết quả Nearest Neighbor Interpolation và Bilinear Interpolation. Kiến trúc cơ bản của FC. Lớp Flatten và Fully Connected.
Sự khác nhau giữa việc áp dụng kỹ thuật Dropout hoặc không. Nhận dạng các đối tượng trong ảnh kỹ thuật số. Sơ đồ mối quan hệ giữa các loại thuật toán trong Thị giác máy tính. Sự khác nhau giữa các loại thuật toán trong Thị giác máy tính.
Thuật toán theo dõi đối tượng trong lĩnh vực Thị giác máy tính. Thuật toán Phát hiện đối tượng (Object Detection). Nhóm thuật toán trong Phát hiện đối tượng (Object Detection). So sánh hiệu suất của các mô hình Faster RCNN, YOLOv4, và SSD.
So sánh hiệu suất mô hình YOLOv3 và RetinaNet. Phân đoạn đối tượng (Object Segmentation). Sự khác nhau giữa thuật toán Object Detection và Segmentation. Ước lượng khoảng cách của vật thể đến camera.
Kỹ thuật Stereo vision. Kỹ thuật Structured light. Kỹ thuật Optical flow. Kỹ thuật Monocular depth estimation.
Kỹ thuật Single view metrology. Nguyên tắc Zen. Lập trình Python. Quan hệ giữa các bảng trong MySQL.
Giao tiếp UART. Giao tiếp SPI. Giao tiếp CAN. Tiêu chuẩn cổng cắm giao tiếp OBD2.
Minh hoạ giao tiếp Socket. Hệ thống hỗ trợ đỗ xe. Các tác vụ mà YOLOv8 có thể thực hiện. Các loại mô hình YOLOv8 đã được huấn luyện sẵn.
Khoảng cách từ xe tài xế đang điều khiển (xe đỏ) đến xe phía trước. Raspberry Pi3 Model B+. Màn hình LCD. Loa và mạch khuếch đại âm thanh.
Thời gian ra đời của các phiên bản YOLO. Các phương pháp sử dụng trong họ mô hình YOLO. Cách hoạt động của NMS. Cách hoạt động của IoU.
Kiến trúc của YOLOv5. Kiến trúc mô hình YOLOv8. So sánh hiệu suất giữa YOLOv8 và YOLOv5. So sánh hiệu suất mô hình Object Detection.
So sánh hiệu suất mô hình Instance Object Segmentation. So sánh hiệu suất mô hình Object Classification .1 Giao tiếp thông qua MySQL. Bảng điều kiện giao thông. Bảng tình trạng tài xế.
Sơ đồ khối hệ thống. Sản phẩm thực tế. Thuật toán lưu trữ giá trị biển báo. Thiết kế giao diện hiển thị.
Lưu đồ thuật toán xử lý các tín hiệu trên Raspberry Pi. Lưu đồ xử lý thông tin trên máy tính xách tay (laptop). Minh họa thuật toán cảnh báo lệch làn đường. Lưu đồ xử lý thuật toán lệch làn đường - LANE.
Lưu đồ thuật toán xử lý tiền va chạm (1). Lưu đồ thuật toán xử lý tiền va chạm (2). Lưu đồ thuật toán xử lý tín hiệu biển báo giao thông. Lưu đồ thuật toán xử lý thông tin trạng thái của tài xế.
Tập dữ liệu BDD100k. Tập dữ liệu BDD100k cho các tác vụ khác nhau. Cấu trúc thư mục của tập dữ liệu BDD100k trên trang web Kaggle. Tập dữ liệu BDD100k cho Obstacle.
Tập dữ liệu BDD100k cho Drivable. Dữ liệu được thu thập từ camera. Dữ liệu images (hình ảnh) từ thư mục ‘100k’. Dữ liệu sau khi được gán nhãn.
Cấu trúc thư mục chứa dữ liệu huấn luyện mô hình Drivable. Dữ liệu bên trong thư mục ‘images’. Dữ liệu bên trong thư mục ‘labels’. Dữ liệu bên trong ‘mydata.
Label (nhãn) theo định dạng của YOLO. Nhãn (label) sau khi được chuẩn hóa theo định dạng YOLOv8-seg. Ngẫu nhiên (1) dữ liệu huấn luyện mô hình. Ngẫu nhiên (2) dữ liệu huấn luyện mô hình.
Ngẫu nhiên (3) dữ liệu huấn luyện mô hình. Thống kê dữ liệu huấn luyện đã được chuẩn hóa của đối tượng. Thời gian huấn luyện và đánh giá trên 1 epochs bằng GPU A100. Quá trình huấn luyện và đánh giá mô hình.
Trọng số mô hình sau khi huấn luyện mô hình. Kết quả (1) đánh giá của mô hình qua Confusion Matrix. Kết quả (2) đánh giá mô hình qua Confusion Matrix Normalized. Dữ liệu (1) dùng để đánh giá mô hình.
Kết quả (1) dự đoán của mô hình. Dữ liệu (2) dùng để đánh giá mô hình. Kết quả (2) dự đoán của mô hình. Dữ liệu (3) dùng để đánh giá mô hình.
Kết quả (3) dự đoán của mô hình. Cấu trúc thư mục chứa dữ liệu huấn luyện mô hình Obstacle. Định dạng nhãn (label) cho YOLO Object Detection. Minh họa định dạng nhãn (label) của YOLOv8 Object Detection.
Nhãn (label) sau khi được chuẩn hóa theo định dạng YOLO Object Detection. Ngẫu nhiên (1) dữ liệu huấn luyện mô hình. Ngẫu nhiên (2) dữ liệu huấn luyện mô hình. Ngẫu nhiên (3) dữ liệu huấn luyện mô hình.
Thống kê số lượng, kích thước đã được chuẩn hóa của đối tượng huấn luyện trong dữ liệu. Thời gian huấn luyện và đánh giá trên 1 epochs bằng GPU A100. Quá trình huấn luyện và đánh giá mô hình. Các file trọng số mô hình sau khi kết thúc quá trình huấn luyện mô hình.
Kết quả (1) đánh giá của mô hình qua Confusion Matrix. Dữ liệu (1) dùng để đánh giá mô hình. Kết quả (1) dự đoán của mô hình. Dữ liệu (2) dùng để đánh giá mô hình.
Kết quả (2) dự đoán của mô hình. Dữ liệu (3) dùng để đánh giá mô hình. Kết quả (3) dự đoán của mô hình. Cấu trúc thư mục chứa dữ liệu.
Định dạng nhãn của dữ liệu. Ngẫu nhiên (1) dữ liệu huấn luyện mô hình. Ngẫu nhiên (2) dữ liệu huấn luyện mô hình. Ngẫu nhiên (3) dữ liệu huấn luyện mô hình.
Thống kê số lượng, kích thước đã được chuẩn hóa của đối tượng huấn luyện trong dữ liệu .