Giới thiệu dự án

Tai nạn giao thông đường bộ tiếp tục là một trong những thách thức nghiêm trọng nhất đối với sức khỏe cộng đồng và kinh tế toàn cầu. Theo báo cáo của Tổ chức Y tế Thế giới (WHO), mỗi năm có khoảng 1,35 triệu người tử vong và hơn 50 triệu người bị thương do tai nạn giao thông. Đáng chú ý, hơn 90% các vụ tai nạn xuất phát từ lỗi chủ quan của người điều khiển phương tiện, bao gồm mất tập trung, lệch làn không chủ đích, khoảng cách an toàn không đảm bảo và trạng thái buồn ngủ khi lái xe đường dài.

Hệ thống Hỗ trợ Lái xe Tiên tiến (Advanced Driver Assistance Systems - ADAS) ra đời nhằm hỗ trợ tài xế nhận biết sớm các nguy cơ tiềm ẩn. Tuy nhiên, các giải pháp ADAS thương mại truyền thống (như Mobileye hay Bosch) thường phụ thuộc vào phần cứng đắt đỏ gồm cảm biến LiDAR, Radar sóng milimet và camera chuyên dụng. Điều này khiến chi phí trang bị tăng cao, cản trở việc phổ cập trên các dòng xe phổ thông tại thị trường các nước đang phát triển như Việt Nam.

                  +-----------------------------------+
                  |  THÁCH THỨC HỆ THỐNG ADAS HIỆN NAY|
                  +-----------------+-----------------+
                                    |
            +-----------------------+-----------------------+
            |                                               |
            v                                               v
+-----------------------+                       +-----------------------+
| CHI PHÍ PHẦN CỨNG CAO |                       | ĐỘ TRỄ XỬ LÝ LỚN     |
| LiDAR, Radar đắt đỏ,  |                       | Chạy tuần tự nhiều    |
| khó tiếp cận xe cỡ nhỏ|                       | model đơn lẻ trên Edge|
+-----------------------+                       +-----------------------+

Vấn đề nghiên cứu cụ thể

  1. Chi phí và độ phức tạp phần cứng: Các hệ thống ADAS tích hợp cảm biến chủ động đòi hỏi lắp đặt phức tạp và chi phí phần cứng cao.
  2. Độ trễ khi thực thi tuần tự nhiều mô hình: Việc chạy đồng thời nhiều mạng nơ-ron tích chập (Convolutional Neural Network - CNN) riêng lẻ (một mạng cho phát hiện vật thể, một mạng cho phân đoạn làn đường) dẫn đến hiện tượng nghẽn cổ chai tài nguyên tính toán và tăng độ trễ suy luận (latency), không đáp ứng được yêu cầu thời gian thực.
  3. Sự bất tiện của các giải pháp giám sát tài xế tiếp xúc: Các thiết bị cảnh báo ngủ gật dạng đeo (nhẫn rung, cảm biến độ nghiêng cổ LGI, mũ điện não EEG Emotiv EPOC) gây khó chịu, giảm độ nhạy khi tài xế ra mồ hôi và không khả thi trong quá trình vận hành thực tế dài giờ.

Mục tiêu của đồ án

Đồ án "Ứng dụng thị giác máy tính vào hệ thống lái xe tiên tiến ADAS" của nhóm tác giả Võ Văn Quý, Nguyễn Anh Vũ (GVHD: TS. Trần Vũ Hoàng, Trường Đại học Sư phạm Kỹ thuật TP.HCM) tập trung vào 4 mục tiêu cốt lõi:

  1. Xây dựng mạng học đa tác vụ (Multi-task Learning): Triển khai mạng HybridNets kết hợp trích xuất đặc trưng đa quy mô để giải quyết đồng thời ba tác vụ: phát hiện phương tiện, phân đoạn vùng đường có thể lái (drivable area), và phân đoạn vạch kẻ làn đường (lane line).
  2. Thiết kế thuật toán cảnh báo lệch làn (Lane Departure Warning - LDW): Tính toán độ lệch tâm xe so với tâm làn đường thời gian thực từ dữ liệu camera hành trình.
  3. Phát triển module cảnh báo va chạm sớm (Forward Collision Warning - FCW): Ước lượng khoảng cách hình học đến phương tiện phía trước cùng làn để phát tín hiệu cảnh báo va chạm nguy hiểm khi khoảng cách $< 8\text{ m}$.
  4. Tích hợp module cảnh báo tài xế ngủ gật phi tiếp xúc (Driver Drowsiness Detection - DDD): Giám sát trạng thái nhắm/mở mắt và ngáp qua webcam bằng thuật toán Haar-Cascade kết hợp mô hình 68 điểm mốc khuôn mặt (Dlib 68 Facial Landmarks).

Tiếp cận giải pháp và Kết quả kỳ vọng

  • Giải pháp tiếp cận: Thay thế phần cứng cảm biến đắt tiền bằng việc xử lý luồng video RGB từ camera hành trình góc đơn (monocular dashcam) kết hợp webcam trong cabin, áp dụng mô hình End-to-End Perception Deep Learning và các giải thuật hình học không gian.
  • Chỉ số đo lường kỳ vọng:
    • Độ chính xác cảnh báo lệch làn $\ge 90%$.
    • Độ chính xác cảnh báo va chạm phương tiện $\ge 95%$.
    • Hệ thống giám sát ngủ gật hoạt động ổn định với độ chính xác tuyệt đối trong điều kiện đủ sáng, góc nghiêng khuôn mặt $\le 30^\circ$, khoảng cách $< 1.2\text{ m}$.

Phạm vi và Giới hạn

  • Môi trường thử nghiệm: Video đầu vào chuẩn phân giải $1280 \times 720\text{ px}$ từ camera gắn chính giữa đầu xe ô tô 4–5 chỗ, hướng vuông góc với mặt đường; làn đường tiêu chuẩn rộng $3.5\text{ m}$.
  • Nền tảng thực thi: Tác vụ ADAS ngoại cảnh chạy trên môi trường Google Colab GPU (Tesla T4), tác vụ giám sát cabin chạy trên CPU máy tính cá nhân. Không triển khai trên phần cứng nhúng đóng gói (như ECU chuyên dụng).

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Tiêu chí so sánh Hệ thống ADAS dùng Cảm biến chủ động (LiDAR/Radar) Kiến trúc Mô hình Đơn lẻ ghép tầng (Cascaded Single Models) Giải pháp Thị giác Máy tính Đa tác vụ (Đồ án đề xuất)
Chi phí phần cứng Rất cao ($> 2,000\text{ USD}$) Trung bình ($500 - 800\text{ USD}$) Thấp ($< 100\text{ USD}$ cho camera RGB thông dụng)
Độ trễ suy luận Cực thấp ($< 15\text{ ms}$) Rất cao ($> 120\text{ ms}$ do chạy YOLOv5 + U-Net + SCNN tuần tự) Thấp ($< 35\text{ ms}$, xử lý song song trên một Backbone)
Chia sẻ biểu diễn Không áp dụng Không có (từng mạng học đặc trưng riêng) Tối ưu thông qua Hard Parameter Sharing
Giám sát tài xế Đeo cảm biến tiếp xúc/Mũ EEG (gây khó chịu) Camera hồng ngoại độc lập (phần cứng đóng) Thị giác máy tính phi tiếp xúc (Haar-Cascade + Dlib)

Phân loại yêu cầu hệ thống theo mô hình MoSCoW

  • Must Have (Bắt buộc phải có):
    • Nhận diện phương tiện (xe hơi, xe tải, xe buýt) và tạo bounding box chuẩn xác.
    • Phân đoạn nhị phân vạch kẻ làn đường và vùng mặt đường khả dụng.
    • Tính toán khoảng cách tâm xe và đưa ra cảnh báo khi lệch làn vượt ngưỡng $0.85\text{ m}$.
    • Cảnh báo va chạm khi cạnh đáy bounding box vượt ngưỡng an toàn ($8\text{ m}$).
    • Nhận diện 68 điểm mốc khuôn mặt, tính tỷ số khung hình mắt (Eye Aspect Ratio - EAR) và phát hiện ngáp.
  • Should Have (Nên có):
    • Hoạt động ổn định trong điều kiện ngày, đêm, ngược sáng và mưa nhẹ.
    • Xử lý tốt vạch kẻ đường bị mờ hoặc ngã tư không có vạch kẻ liên tục.
  • Could Have (Có thể có):
    • Tích hợp giọng nói cảnh báo tự động thay cho âm thanh buzzer/beep đơn thuần.
  • Won't Have (Chưa thực hiện trong giai đoạn này):
    • Tự động can thiệp hệ thống phanh (AEB) hoặc hệ thống đánh lái chủ động (LKA).

Thiết kế hệ thống

graph TD
    A["Camera Hành trình (1280x720)"] --> B["Tiền xử lý & Chuẩn hóa"]
    B --> C["HybridNets Multi-task Network"]
    
    C --> C1["Backbone: EfficientNet-B3"]
    C1 --> C2["Neck: Weighted BiFPN"]
    
    C2 --> D1["Detection Head (Anchor Boxes)"]
    C2 --> D2["Segmentation Head (P2 Feature Map)"]
    
    D1 --> E1["Bounding Box Phương tiện"]
    D2 --> E2["Mask Phân đoạn Làn đường"]
    
    E2 --> F1["Giải thuật Tính toán Độ lệch Tâm Làn (LDW)"]
    E1 & E2 --> F2["Giải thuật Lọc Pixel Đáy Xe Cùng Làn (FCW)"]
    
    F1 --> G1{"Lệch tâm > 0.85m?"}
    G1 -- Yes --> H1["CẢNH BÁO LỆCH LÀN (Trái/Phải)"]
    
    F2 --> G2{"Khoảng cách < 8m (Pixel > 530)?"}
    G2 -- Yes --> H2["CẢNH BÁO NGUY HIỂM VA CHẠM"]
    
    I["Webcam Cabin"] --> J["Chuyển đổi Grayscale"]
    J --> K["Haar-Cascade + AdaBoost Face Detection"]
    K --> L["Dlib 68 Facial Landmarks Estimator"]
    L --> M1["Tính Tỷ số Khung hình Mắt (EAR)"]
    L --> M2["Tính Khoảng cách Giữa Hai Môi (Lip Distance)"]
    
    M1 --> N1{"EAR < 0.24 liên tục 30 frames?"}
    M2 --> N2{"Lip Distance > Ngưỡng Ngáp?"}
    N1 -- Yes --> O["CẢNH BÁO TÀI XẾ NGỦ GẬT"]
    N2 -- Yes --> O

Technology Stack và Phiên bản chi tiết

  • Ngôn ngữ lập trình: Python v3.8.10
  • Deep Learning Framework: PyTorch v1.10.2 kết hợp Torchvision v0.11.3
  • Thư viện Thị giác máy tính: OpenCV-Python v4.5.5.64, Imutils v0.5.4
  • Xử lý điểm mốc sinh trắc học: Dlib v19.22.1 (Shape Predictor 68 Face Landmarks)
  • Thao tác dữ liệu ma trận: NumPy v1.21.5, SciPy v1.7.3
  • Tăng cường dữ liệu: Albumentations v1.1.0
  • Môi trường tăng tốc tính toán: CUDA v11.3 / cuDNN v8.2 trên nền tảng Google Colab GPU Tesla T4 (16GB VRAM)

Cân nhắc về Bảo mật và Hiệu năng

  • Bảo mật dữ liệu (Privacy-by-Design): Toàn bộ luồng video giám sát cabin được xử lý trực tiếp trên bộ nhớ đệm (in-memory RAM) của thiết bị; không lưu trữ hình ảnh khuôn mặt hoặc truyền tải dữ liệu sinh trắc học cá nhân ra ngoài đám mây.
  • Yêu cầu hiệu năng: Pipeline đa tác vụ xử lý đạt tốc độ $> 30\text{ FPS}$ trên GPU, độ trễ trích xuất đặc trưng $< 33\text{ ms}$ đảm bảo phản ứng an toàn ở dải vận tốc $60 - 80\text{ km/h}$.

Phương pháp nghiên cứu (Methodology)

Dự án áp dụng mô hình phát triển phần mềm lặp (Iterative Agile Methodology) kéo dài trong 16 tuần với 4 giai đoạn chính:

[Tuần 1-4] Khảo sát & Chuẩn bị Dataset BDD100K 
    ---> [Tuần 5-8] Huấn luyện & Tối ưu HybridNets 
        ---> [Tuần 9-12] Xây dựng Logic Cảnh báo LDW, FCW, DDD 
            ---> [Tuần 13-16] Kiểm thử Tích hợp & Đánh giá

Ma trận Đánh giá Rủi ro và Biện pháp Giảm thiểu

Rủi ro kỹ thuật Mức độ Khả năng xảy ra Biện pháp giảm thiểu
Vạch kẻ đường bị đứt gãy/bị mờ do thời tiết Cao Cao Sử dụng nhánh phân đoạn $P_2$ kết hợp nội suy hình học từ các frame liền kề
Hiện tượng Overfitting khi train đa tác vụ Trung bình Trung bình Áp dụng Hard Parameter Sharing và hàm mất mát Focal Loss + cân bằng trọng số $\alpha, \beta$
Ảnh hưởng góc nhìn khuôn mặt tài xế ($\ge 30^\circ$) Cao Trung bình Thiết lập ngưỡng cảnh báo góc quay đầu; hiệu chỉnh vị trí đặt camera trong khoảng $0.8 - 1.2\text{ m}$

Implementation và kết quả

Quy trình phát triển và Cơ sở toán học

1. Mạng nơ-ron đa tác vụ HybridNets

HybridNets sử dụng phương pháp chia sẻ tham số cứng (Hard Parameter Sharing). Mạng Backbone trích xuất 5 bản đồ đặc trưng ${P_1, P_2, P_3, P_4, P_5}$, sau đó lấy mẫu xuống (downsampling) để tạo $P_6, P_7$.

  • Phương pháp mở rộng mô hình kết hợp (Compound Scaling) trên EfficientNet: $$\text{Depth: } d = \alpha^\phi, \quad \text{Width: } w = \beta^\phi, \quad \text{Resolution: } r = \gamma^\phi$$ $$\text{Thỏa mãn: } \alpha \cdot \beta^2 \cdot \gamma^2 \approx 2 \quad (\alpha \ge 1, \beta \ge 1, \gamma \ge 1)$$

  • Mạng Neck - Weighted BiFPN: Hợp nhất đặc trưng hai chiều (Top-down và Bottom-up), loại bỏ các nút đơn cạnh nhằm tối ưu hóa tính toán: $$O = \sum_i \frac{w_i}{\epsilon + \sum_j w_j} \cdot I_i$$

  • Hàm tổng mất mát đa tác vụ (Multi-task Loss): $$\mathcal{L}{total} = \alpha \mathcal{L}{det} + \beta \mathcal{L}{seg}$$ Trong đó: $$\mathcal{L}{det} = \mathcal{L}{class} + \mathcal{L}{obj} + \mathcal{L}_{box}$$

  • $\mathcal{L}{class}$ và $\mathcal{L}{obj}$ sử dụng Focal Loss để triệt tiêu ảnh hưởng của các mẫu âm tính dễ phân loại.

  • $\mathcal{L}_{box}$ sử dụng Smooth $L1$ Loss giữa tọa độ dự đoán $\hat{b}$ và nhãn thực tế $b$.

2. Thuật toán Cảnh báo Lệch làn (LDW)

Với độ rộng làn đường chuẩn $W_{lane} = 3.5\text{ m}$ và bề rộng xe trung bình $W_{car} = 1.8\text{ m}$:

def evaluate_lane_departure(binary_lane_mask, frame_width=1280):
    # Xác định tọa độ pixel biên trái và biên phải của làn đường tại đáy ảnh
    left_px = find_left_lane_pixel(binary_lane_mask)
    right_px = find_right_lane_pixel(binary_lane_mask)
    
    center_lane = (left_px + right_px) / 2.0
    center_frame = frame_width / 2.0  # 640 px
    
    # Tính toán tỷ lệ chuyển đổi mét/pixel
    lane_width_px = right_px - left_px
    m_per_px = 3.5 / lane_width_px
    
    # Tính độ lệch thực tế của tâm xe
    veh_pos = (center_frame - center_lane) * m_per_px
    
    # Ngưỡng lệch làn cho phép là (3.5 - 1.8) / 2 = 0.85m
    if veh_pos < -0.85:
        return "WARNING: Lệch làn bên TRÁI", veh_pos
    elif veh_pos > 0.85:
        return "WARNING: Lệch làn bên PHẢI", veh_pos
    return "AN TOÀN", veh_pos

3. Thuật toán Cảnh báo Va chạm (FCW)

Phân tích hình học phối cảnh (Perspective Geometry) cho thấy với camera đặt chuẩn, khoảng cách an toàn $8\text{ m}$ tương ứng với vị trí tọa độ $y = 530\text{ px}$ trên khung hình $1280 \times 720\text{ px}$.

def evaluate_forward_collision(detected_boxes, lane_mask, danger_row_threshold=530):
    # Lọc các xe đang nằm trong cùng làn đường xe chạy
    in_lane_vehicles = filter_vehicles_in_current_lane(detected_boxes, lane_mask)
    
    for box in in_lane_vehicles:
        x1, y1, x2, y2 = box  # y2 là cạnh đáy của bounding box
        if y2 >= danger_row_threshold:
            return "DANGER: CẢNH BÁO NGUY CƠ VA CHẠM (< 8m)"
    return "KHOẢNG CÁCH AN TOÀN"

4. Thuật toán Giám sát Ngủ gật (EAR & Lip Distance)

Tỷ số khung hình mắt (Eye Aspect Ratio - EAR) dựa trên 6 điểm mốc $p_1 \dots p_6$: $$\text{EAR} = \frac{||p_2 - p_6|| + ||p_3 - p_5||}{2 ||p_1 - p_4||}$$

from scipy.spatial import distance as dist

def calculate_ear(eye_landmarks):
    # eye_landmarks chứa 6 tọa độ (x, y)
    p2_p6 = dist.euclidean(eye_landmarks[1], eye_landmarks[5])
    p3_p5 = dist.euclidean(eye_landmarks[2], eye_landmarks[4])
    p1_p4 = dist.euclidean(eye_landmarks[0], eye_landmarks[3])
    
    ear = (p2_p6 + p3_p5) / (2.0 * p1_p4)
    return ear

# Tham số thực nghiệm:
EYE_AR_THRESH = 0.24
EYE_AR_CONSEC_FRAMES = 30  # Tương đương 1 giây nhắm mắt liên tục ở 30 FPS

Thử nghiệm và Đánh giá kết quả

1. Đánh giá Mô hình Đa tác vụ trên Dataset BDD100K

Mô hình mạng Phát hiện Phương tiện (mAP50 %) Phát hiện Phương tiện (Recall %) Phân đoạn Mặt đường (mIoU %) Phân đoạn Làn đường (Accuracy %)
MultiNet 58.4 81.3 71.6 N/A
DLT-Net 68.4 89.4 73.3 N/A
YOLOP 76.5 89.2 91.5 70.5
HybridNets (Đề tài) 77.3 92.8 90.5 85.4

2. Kết quả Thử nghiệm Hệ thống ADAS Thực tế

Tác vụ / Kịch bản thử nghiệm Số lượng mẫu kiểm thử Số trường hợp chính xác Độ chính xác đạt được (%)
Lệch làn ban ngày (Trái / Phải) 100 95 95.0%
Lệch làn ban đêm 60 54 90.0%
Vạch kẻ đường bị mờ / Đứt gãy 40 36 90.0%
Tổng thể Cảnh báo Lệch làn (LDW) 200 186 93.0%
Cảnh báo Va chạm ban ngày 50 50 100.0%
Cảnh báo Va chạm ban đêm 50 50 100.0%
Tổng thể Cảnh báo Va chạm (FCW) 100 100 100.0%

3. Kết quả Thử nghiệm Hệ thống Cảnh báo Ngủ gật (DDD)

Điều kiện môi trường Khoảng cách Góc nghiêng mặt Trạng thái (Nhắm mắt / Ngáp) Độ chính xác (%)
Đủ sáng $0.5 - 1.2\text{ m}$ Trực diện ($0^\circ$) Nhắm mắt $\ge 30\text{ frames}$ / Ngáp 100.0%
Đủ sáng $0.5 - 1.2\text{ m}$ Nghiêng trái/phải $\le 30^\circ$ Nhắm mắt / Ngáp 100.0%
Thiếu sáng (Ban đêm có đèn xe) $< 1.0\text{ m}$ Trực diện ($0^\circ$) Nhắm mắt / Ngáp 92.5%
Ngược sáng mạnh $< 1.0\text{ m}$ Trực diện ($0^\circ$) Nhắm mắt / Ngáp 85.0%
Góc nghiêng lớn ($> 30^\circ$) Bất kỳ Nghiêng $> 30^\circ$ Không bắt được Landmark Thất bại ($0%$)

Đổi mới và đóng góp

  1. Ứng dụng Mạng Đa tác vụ Tiên tiến HybridNets: Thay vì sử dụng các mạng đơn lẻ rời rạc gây tắc nghẽn GPU, đề tài đã tích hợp thành công kiến trúc bộ mã hóa chia sẻ (EfficientNet-B3 + BiFPN) giúp giảm số lượng tham số tính toán và tối ưu tốc độ suy luận, tăng độ chính xác phân đoạn làn đường lên 85.4% (vượt trội so với 70.5% của YOLOP).
  2. Loại bỏ Hoàn toàn Cảm biến Tiếp xúc Gây Bất tiện: Hệ thống cảnh báo ngủ gật hoạt động hoàn toàn dựa trên thị giác máy tính thông qua webcam, loại bỏ sự phụ thuộc vào mũ EEG hoặc nhẫn rung, khắc phục triệt để nhược điểm mồ hôi làm giảm độ dẫn truyền của cảm biến sinh học.
  3. Cơ chế Cảnh báo Kết hợp Tinh giản nhưng Hiệu quả: Đề xuất công thức chuyển đổi không gian pixel - mét trực tiếp từ hình học phối cảnh camera hành trình, giúp phát hiện nguy cơ va chạm trong phạm vi $8\text{ m}$ với độ chính xác đạt $100%$ trong các kịch bản thực nghiệm mà không cần dùng đến cảm biến đo khoảng cách siêu âm hay Radar.

Ứng dụng thực tế và triển khai

Kịch bản Ứng dụng Thực tế

  • Hộp thông minh gắn thêm (Aftermarket Smart Dashcam): Triển khai dưới dạng ứng dụng nhúng trên các dòng camera hành trình chạy hệ điều hành Android hoặc Linux, nâng cấp tính năng an toàn cho các dòng xe đời cũ.
  • Hệ thống Quản lý Đội xe Vận tải (Fleet Management System): Tích hợp vào các xe tải đường dài, xe khách liên tỉnh để giám sát độ an toàn của hành trình và hành vi mệt mỏi của tài xế theo thời gian thực.
                    +--------------------------------+
                    |  MÔ HÌNH HẠ TẦNG TRIỂN KHAI    |
                    +---------------+----------------+
                                    |
            +-----------------------+-----------------------+
            |                                               |
            v                                               v
+-----------------------+                       +-----------------------+
| PHẦN CỨNG XE CƠ SỞ   |                       | XỬ LÝ BIÊN (EDGE AI) |
| Camera Dashcam RGB    |                       | Jetson Orin / RK3588  |
| Webcam cabin tài xế   |                       | TensorRT / ONNX Engine|
+-----------+-----------+                       +-----------+-----------+
            |                                               |
            +----------------------->+<---------------------+
                                     |
                                     v
                        +-------------------------+
                        | GIAO DIỆN & CẢNH BÁO   |
                        | Màn hình HUD / Loa xe   |
                        | CAN-bus / OBD-II Telemetry|
                        +-------------------------+

Yêu cầu Triển khai Phần cứng

  • Bộ xử lý biên (Edge AI): Khuyến nghị NVIDIA Jetson Nano (4GB) hoặc Jetson Orin Nano để đạt tốc độ xử lý $30 - 45\text{ FPS}$ khi tối ưu hóa mô hình qua TensorRT / ONNX.
  • Camera Sensor: Camera trước có độ phân giải tối thiểu 1080p@30fps, FOV $120^\circ$; Camera trong cabin trang bị cảm biến hồng ngoại (IR LED) hỗ trợ quay đêm.

Hạn chế và hướng phát triển

Hạn chế Kỹ thuật

  • Phụ thuộc vào góc đặt Camera: Thuật toán đo khoảng cách và lệch làn giả định camera được lắp chính giữa xe và hướng vuông góc. Khi xe đi qua đoạn dốc lớn hoặc mặt đường xóc, độ chính xác ước lượng pixel có thể bị dao động.
  • Góc quay khuôn mặt lớn: Bộ nhận diện Dlib 68 mốc gặp khó khăn khi tài xế quay đầu góc quá $30^\circ$ hoặc đeo kính râm tối màu che khuất mắt.
  • Điều kiện thời tiết cực đoan: Sương mù dày đặc hoặc mưa bão lớn làm giảm độ tương phản của vạch kẻ đường, ảnh hưởng đến nhánh Segmentation.

Hướng phát triển Đề xuất

  • Tích hợp Camera Hồng ngoại (IR Camera) & 3D Facial Landmarks: Nâng cấp thuật toán nhận diện khuôn mặt dạng 3D Mesh (MediaPipe Face Mesh 468 điểm) kết hợp cảm biến hồng ngoại để hoạt động chuẩn xác trong bóng tối hoàn toàn và khi tài xế đeo kính.
  • Chuyển đổi Mô hình sang TensorRT/OpenVINO: Lượng tử hóa mô hình (INT8/FP16 Quantization) để triển khai trực tiếp lên các bo mạch nhúng giá rẻ như Raspberry Pi 4 kết hợp Google Coral TPU.
  • Ứng dụng Bộ lọc Kalman (Kalman Filter): Làm mượt quỹ đạo nhận diện làn đường và bù trừ độ rung lắc của xe khi di chuyển trên địa hình gồ ghề.

Đối tượng hưởng lợi

  • Sinh viên & Học viên Cao học: Tài liệu tham khảo thực tế về quy trình tích hợp Multi-task Learning (HybridNets) và cách xử lý dữ liệu phối cảnh thị giác máy tính trong bài toán giao thông.
  • Kỹ sư Phần mềm & AI Developers: Tiếp cận cấu trúc mã nguồn tối ưu kết hợp giữa Deep Learning hiện đại và các thuật toán thị giác máy tính cổ điển (Haar-Cascade, Facial Landmarks) để giải quyết bài toán cân bằng giữa độ chính xác và tài nguyên tính toán.
  • Doanh nghiệp Vận tải & Logistics: Cơ sở nghiên cứu để xây dựng các giải pháp an toàn giao thông chi phí thấp, giúp giảm thiểu tai nạn do buồn ngủ và vi phạm làn đường cho đội ngũ tài xế.
  • Nhà nghiên cứu Giao thông Thông minh: Cung cấp dữ liệu đánh giá thực nghiệm đa tác vụ trên các điều kiện đường sá đa dạng (ngày, đêm, vạch mờ).

Câu hỏi thường gặp

1. Yêu cầu phần cứng tối thiểu để triển khai và chạy thử nghiệm hệ thống là gì?

Đối với môi trường thử nghiệm và huấn luyện, hệ thống yêu cầu GPU tối thiểu NVIDIA GTX 1060 (hoặc Google Colab T4 16GB VRAM) cho tác vụ HybridNets, cùng CPU Intel Core i5 thế hệ 8 trở lên cho tác vụ Dlib nhận diện khuôn mặt. Khi triển khai thực tế trên xe, có thể sử dụng bo mạch NVIDIA Jetson Nano (4GB VRAM) sau khi đã tối ưu hóa mô hình bằng TensorRT.

2. Tại sao đồ án lại chọn mô hình HybridNets thay vì các kiến trúc phổ biến như YOLOv5 hay YOLOP?

HybridNets sử dụng mạng xương sống EfficientNet-B3 với cơ chế Compound Scaling và mạng cổ BiFPN giúp trích xuất và hợp nhất đặc trưng đa tầng tốt hơn. Kết quả thực nghiệm trên tập dữ liệu BDD100K cho thấy HybridNets đạt độ chính xác phân đoạn làn đường 85.4% (so với 70.5% của YOLOP) và mAP phát hiện vật thể 77.3%, đảm bảo khả năng phát hiện vật thể nhỏ và làn đường trong điều kiện thời tiết phức tạp.

3. Làm thế nào để hệ thống nhận biết được xe phía trước đang ở cùng làn hay khác làn?

Hệ thống kết hợp đồng thời kết quả từ nhánh phân đoạn làn đường (Segmentation Head) và nhánh phát hiện vật thể (Detection Head). Tọa độ cạnh đáy của Bounding Box xe phía trước sẽ được đối chiếu với mặt nạ nhị phân của làn đường đang chạy (Binary Lane Mask). Chỉ những phương tiện có điểm tiếp xúc mặt đường nằm trọn trong ranh giới giữa pixel trái (left_px) và pixel phải (right_px) mới được đưa vào thuật toán đánh giá nguy cơ va chạm.

4. Cơ chế cảnh báo ngủ gật xử lý thế nào khi tài xế chỉ chớp mắt tự nhiên?

Hệ thống sử dụng tham số đếm số khung hình liên tiếp EYE_AR_CONSEC_FRAMES = 30. Hành động chớp mắt tự nhiên thông thường chỉ diễn ra trong khoảng $3 - 5\text{ frames}$ (dưới $0.2\text{ giây}$). Hệ thống chỉ kích hoạt chuông cảnh báo khi tỷ lệ mắt $EAR < 0.24$ duy trì liên tục trong suốt 30 khung hình (tương đương $\ge 1\text{ giây}$ nhắm mắt liên tục).

5. Chi phí ước tính để thương mại hóa giải pháp này trên một phương tiện là bao nhiêu?

So với các hệ thống ADAS nguyên bản có giá từ $1,500 - 3,000\text{ USD}$, giải pháp thị giác máy tính đề xuất chỉ yêu cầu: 01 bo mạch xử lý AI biên (như Jetson Orin Nano khoảng $200 - 300\text{ USD}$), 01 camera hành trình góc rộng ($30 - 50\text{ USD}$) và 01 camera cabin góc rộng ($15 - 25\text{ USD}$). Tổng chi phí phần cứng ước tính dưới $400\text{ USD}$, giảm hơn $75%$ chi phí so với các giải pháp dùng cảm biến LiDAR/Radar.


Kết luận

Đồ án tốt nghiệp "Ứng dụng thị giác máy tính vào hệ thống lái xe tiên tiến ADAS" của nhóm sinh viên Nguyễn Anh Vũ và Võ Văn Quý (Trường ĐH Sư phạm Kỹ thuật TP.HCM) đã giải quyết thành công bài toán tích hợp đa tác vụ hỗ trợ lái xe an toàn trên nền tảng thị giác máy tính thuần túy. Với việc làm chủ mạng nơ-ron học đa tác vụ HybridNets và tối ưu hóa các giải thuật hình học không gian, hệ thống đã đạt độ chính xác 93% cho cảnh báo lệch làn, 100% cho cảnh báo va chạm gần ($< 8\text{ m}$) và 100% cho giám sát ngủ gật trong điều kiện tiêu chuẩn.

Nghiên cứu khẳng định tính khả thi cao trong việc ứng dụng Deep Learning vào bài toán giao thông thông minh với chi phí thấp, mở ra tiềm năng thương mại hóa rộng rãi trên các thiết bị camera hành trình thông minh nhằm nâng cao an toàn cho người tham gia giao thông tại Việt Nam.