Giới thiệu dự án

Theo thống kê từ Ban Quản lý Khu đô thị Đại học Quốc gia TP.HCM (ĐHQG-HCM), khu vực nội đô đại học ghi nhận 18 vụ tai nạn giao thông nghiêm trọng trong năm vừa qua, trong đó 6 vụ liên quan trực tiếp đến xe buýt công cộng và làm 2 người tử vong. Đoạn đường dài 1 km từ ngã ba 621 (Xa lộ Hà Nội) dẫn vào bến xe buýt ĐHQG-HCM từ lâu đã trở thành "điểm đen" giao thông do xung đột luồng di chuyển giữa hàng chục nghìn xe gắn máy của sinh viên và các phương tiện vận tải cỡ lớn. Nguyên nhân cốt lõi bắt nguồn từ ý thức chấp hành luật giao thông chưa cao, đặc biệt là hành vi cố tình vượt đèn đỏ tại các nút giao cắt giờ cao điểm khi thiếu vắng lực lượng điều phối trực tiếp.

+--------------------------------------------------------------------------------------------------+
|                                  KIẾN TRÚC TỔNG THỂ PIPELINE HỆ THỐNG                             |
+--------------------------------------------------------------------------------------------------+
|  [Camera Feed]                                                                                   |
|        │                                                                                         |
|        ▼                                                                                         |
|  [SSD MobileNet v2] ──► Phát hiện vị trí cụm đèn giao thông (Bounding Box)                       |
|        │                                                                                         |
|        ▼                                                                                         |
|  [InceptionV3]      ──► Phân loại trạng thái: 'go' (xanh), 'warning' (vàng), 'stop' (đỏ)          |
|        │                                                                                         |
|        ├── (Trạng thái 'go') ──► [Bỏ qua khung hình / Duy trì giám sát]                          |
|        └── (Trạng thái 'stop' / 'warning')                                                       |
|                    │                                                                             |
|                    ▼                                                                             |
|  [HoughLinesP]      ──► Nhận diện vạch dừng chờ đèn đỏ ($r = x\cos\theta + y\sin\theta$)           |
|        │                                                                                         |
|        ▼                                                                                         |
|  [Dynamic ROI]      ──► Thiết lập vùng vi phạm động phía sau vạch dừng                           |
|        │                                                                                         |
|        ▼                                                                                         |
|  [SSD MobileNet v2] ──► Phát hiện phương tiện cắt ngang vạch dừng đi vào ROI                     |
|        │                                                                                         |
|        ▼                                                                                         |
|  [YOLOv5 v7.0]      ──► Cắt vùng ảnh phương tiện & Định vị biển số xe (Bounding Box)             |
|        │                                                                                         |
|        ▼                                                                                         |
|  [OCR Pipeline]     ──► Tiền xử lý (Binarization) + Nhận dạng ký tự (CRNN/LSTM)                  |
|        │                                                                                         |
|        ▼                                                                                         |
|  [Database Engine]  ──► Lưu trữ biên bản: Biển số, Thời gian, Tọa độ, Bằng chứng ảnh             |
|        │                                                                                         |
|        ▼                                                                                         |
|  [Web/App Tra Cứu]  ──► Giao diện tra cứu phạt nguội và xuất báo cáo vi phạm                     |
+--------------------------------------------------------------------------------------------------+

Khóa luận tốt nghiệp "Xây dựng hệ thống nhận diện vi phạm và ứng dụng tra cứu thông tin vi phạm giao thông dựa trên các loại mô hình máy học" được thực hiện bởi sinh viên Trần Diễm Mỹ Ngọc (MSSV: 20521668) và Trần Minh Quân (MSSV: 20521796) dưới sự hướng dẫn của TS. Phan Xuân Thiện tại Khoa Mạng máy tính và Truyền thông, Trường Đại học Công nghệ Thông tin – ĐHQG-HCM. Đề tài tập trung giải quyết bài toán tự động hóa quy trình giám sát và xử phạt nguội thông qua thị giác máy tính (Computer Vision) và học sâu (Deep Learning).

Mục tiêu cụ thể của dự án:

  1. Xây dựng pipeline tích hợp xử lý luồng video camera thời gian thực để phát hiện trạng thái đèn giao thông và phương tiện vi phạm.
  2. Huấn luyện mô hình InceptionV3 đạt độ chính xác phân loại tín hiệu đèn trên 98% dựa trên bộ dữ liệu TLCD (Traffic Lights Classification Dataset).
  3. Ứng dụng thuật toán Probabilistic Hough Line Transform để trích xuất tự động vạch dừng giao thông và khởi tạo vùng không gian vi phạm ROI (Region of Interest).
  4. Tối ưu mô hình YOLOv5 định vị biển số xe từ ảnh phương tiện vi phạm và module OCR trích xuất chuỗi ký tự chính xác.
  5. Thiết kế cơ sở dữ liệu quan hệ và xây dựng ứng dụng web/app phục vụ tra cứu thông tin vi phạm giao thông minh bạch.

Phạm vi và giới hạn: Hệ thống thử nghiệm tập trung tại các nút giao thông trọng điểm thuộc Khu đô thị ĐHQG-HCM, xử lý dữ liệu video ban ngày và ban đêm trong điều kiện tầm nhìn tiêu chuẩn, giới hạn góc quay camera cố định tại cột tín hiệu giao thông.


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

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

Các giải pháp giám sát giao thông truyền thống tại Việt Nam chủ yếu dựa vào cảm biến vòng từ (inductive loop sensors) chôn dưới lòng đường kết hợp camera chụp ảnh tốc độ hoặc nhân viên vận hành quan sát thủ công qua màn hình giám sát.

Tiêu chí so sánh Hệ thống Cảm biến Vòng từ Giám sát Thủ công qua Camera Hệ thống Deep Learning Đề xuất
Chi phí lắp đặt Rất cao (đào đường, bảo trì mặt đường) Trung bình (hạ tầng camera có sẵn) Thấp (tận dụng camera giám sát sẵn có)
Độ chính xác 85% - 90% (dễ hỏng do lún nứt) 70% - 80% (phụ thuộc thị lực con người) 94% - 98% (tự động hóa toàn diện)
Khả năng mở rộng Kém (phức tạp khi mở rộng làn) Kém (tốn chi phí nhân sự vận hành) Rất cao (triển khai dạng module phần mềm)
Độ trễ xử lý Tức thì nhưng không đọc được biển số Độ trễ lớn (vài giờ đến vài ngày) Thời gian thực (< 100ms/frame)
Khả năng trích xuất biển số Không hỗ trợ (cần camera phụ trợ) Nhập tay thủ công Tự động hóa qua YOLOv5 + OCR

Phân loại yêu cầu theo mô hình MoSCoW:

  • Must have (Bắt buộc): Nhận diện 3 trạng thái đèn (xanh, vàng, đỏ); phát hiện phương tiện vượt qua vạch dừng khi đèn đỏ; phát hiện và cắt khung hình biển số xe; trích xuất văn bản biển số; lưu trữ cơ sở dữ liệu.
  • Should have (Nên có): Giao diện web tra cứu thông tin phạt nguội theo biển số xe; tự động lọc nhiễu khung hình thời tiết xấu.
  • Could have (Có thể có): Tích hợp thông báo vi phạm tự động qua email hoặc tin nhắn SMS; hỗ trợ camera PTZ xoay quét.
  • Won't have (Chưa thực hiện đợt này): Nhận diện hành vi không đội mũ bảo hiểm hoặc đi sai làn đường phức tạp.

Thiết kế hệ thống

Hệ thống được thiết kế theo kiến trúc hướng dịch vụ nhiều tầng (Layered Architecture):

+─────────────────────────────────────────────────────────────────────────+
|                         TẦNG ỨNG DỤNG & TRA CỨU                         |
|     [Web Dashboard (React 18)]   <───>   [API Gateway / Flask 2.3]      |
+─────────────────────────────────────────────────────────────────────────+
                                    ▲
                                    │ HTTP / RESTful API
                                    ▼
+─────────────────────────────────────────────────────────────────────────+
|                         TẦNG XỬ LÝ TRÍ TUỆ NHÂN TẠO                     |
|  [SSD MobileNet v2]  ──►  [InceptionV3]  ──►  [HoughLinesP & ROI]       |
|                                                      │                  |
|  [OCR Engine (CRNN)]  ◄──  [YOLOv5 Detector]  ◄──────┘                  |
+─────────────────────────────────────────────────────────────────────────+
                                    ▲
                                    │ Streaming Frames / cv2.VideoCapture
                                    ▼
+─────────────────────────────────────────────────────────────────────────+
|                         TẦNG DỮ LIỆU & PHẦN CỨNG                        |
|  [MySQL Database 8.0]             [IP Cameras / RTSP Stream 1080p]      |
+─────────────────────────────────────────────────────────────────────────+

Technology Stack và phiên bản cụ thể:

  • Ngôn ngữ lập trình: Python 3.10.12, JavaScript (ES6+).
  • Thư viện Deep Learning: PyTorch 2.0.1, TensorFlow 2.13.0, Torchvision 0.15.2.
  • Xử lý ảnh & Thị giác máy tính: OpenCV 4.8.0 (cv2), Pillow 10.0.0, NumPy 1.24.3.
  • Mô hình AI: SSD MobileNet v2, InceptionV3, YOLOv5 (v7.0), PyTesseract / CRNN OCR.
  • Backend & Database: Flask 2.3.3, SQLAlchemy ORM, MySQL 8.0.34.
  • Môi trường huấn luyện & kiểm thử: GPU NVIDIA GeForce RTX 3060 12GB / Tesla T4, CUDA 11.8, cuDNN 8.7.0.

Thiết kế Database Schema:

CREATE TABLE TrafficLights (
    light_id INT AUTO_INCREMENT PRIMARY KEY,
    intersection_name VARCHAR(100) NOT NULL,
    latitude DECIMAL(10, 8),
    longitude DECIMAL(11, 8),
    camera_ip VARCHAR(45) NOT NULL,
    status VARCHAR(20) DEFAULT 'ACTIVE'
);

CREATE TABLE Violations (
    violation_id BIGINT AUTO_INCREMENT PRIMARY KEY,
    light_id INT NOT NULL,
    license_plate VARCHAR(20) NOT NULL,
    vehicle_type VARCHAR(30) DEFAULT 'Motorbike',
    violation_time DATETIME NOT NULL,
    violation_type VARCHAR(50) DEFAULT 'Red Light Crossing',
    evidence_image_path VARCHAR(255) NOT NULL,
    crop_plate_path VARCHAR(255) NOT NULL,
    fine_amount DECIMAL(10, 2) DEFAULT 800000.00,
    payment_status ENUM('UNPAID', 'PAID', 'PROCESSING') DEFAULT 'UNPAID',
    FOREIGN KEY (light_id) REFERENCES TrafficLights(light_id)
);

Implementation và kết quả

Development Process & Key Algorithms

Quy trình xử lý của hệ thống kết hợp nhiều kỹ thuật máy học và xử lý ảnh cổ điển:

1. Trích xuất vạch dừng bằng Probabilistic Hough Line Transform

Đường thẳng trong không gian tọa độ cực được mô hình hóa theo phương trình: $$r = x\cos\theta + y\sin\theta$$ Trong đó $r$ là khoảng cách từ gốc tọa độ đến đường thẳng và $\theta$ là góc giữa vector pháp tuyến với trục hoành. Thuật toán HoughLinesP tối ưu hóa thời gian tính toán bằng việc lấy mẫu ngẫu nhiên tập điểm biên cạnh Canny Edge Detector:

import cv2
import numpy as np

def detect_stop_line_and_create_roi(frame, y_min_search=300, y_max_search=600):
    """
    Trích xuất vạch dừng và tạo vùng vi phạm ROI tự động.
    """
    height, width, _ = frame.shape
    search_region = frame[y_min_search:y_max_search, 0:width]
    
    gray = cv2.cvtColor(search_region, cv2.COLOR_BGR2GRAY)
    blurred = cv2.GaussianBlur(gray, (5, 5), 0)
    edges = cv2.Canny(blurred, threshold1=50, threshold2=150, apertureSize=3)
    
    lines = cv2.HoughLinesP(
        edges,
        rho=1,
        theta=np.pi / 180,
        threshold=80,
        minLineLength=100,
        maxLineGap=20
    )
    
    stop_line_y = None
    if lines is not None:
        for line in lines:
            x1, y1, x2, y2 = line[0]
            # Lọc các đoạn thẳng có xu hướng nằm ngang (vạch dừng giao lộ)
            if abs(y2 - y1) < 10 and abs(x2 - x1) > 80:
                stop_line_y = y_min_search + int((y1 + y2) / 2)
                break
                
    if stop_line_y is None:
        stop_line_y = int(height * 0.65) # Fallback tọa độ mặc định
        
    # Thiết lập vùng ROI vi phạm nằm dưới vạch dừng
    roi_polygon = np.array([
        [(0, stop_line_y), (width, stop_line_y), 
         (width, stop_line_y + 180), (0, stop_line_y + 180)]
    ], dtype=np.int32)
    
    return stop_line_y, roi_polygon

2. Nhận diện và cắt biển số xe với YOLOv5

YOLOv5 sử dụng kiến trúc CSP-Darknet53 làm backbone và PANet làm neck để tổng hợp đặc trưng đa tỉ lệ. Đầu ra anchor-based prediction tính toán tổng hàm mất mát đa thành phần: $$\mathcal{L}{total} = \lambda{box} \mathcal{L}{box} + \lambda{obj} \mathcal{L}{obj} + \lambda{cls} \mathcal{L}_{cls}$$

import torch

def detect_and_crop_license_plate(model_yolo, vehicle_crop_img, conf_thresh=0.45):
    """
    Định vị biển số xe từ khung ảnh phương tiện vi phạm và trích xuất ảnh con.
    """
    results = model_yolo(vehicle_crop_img)
    detections = results.xyxy[0].cpu().numpy() # [x1, y1, x2, y2, conf, cls]
    
    best_plate_crop = None
    highest_conf = 0.0
    
    for det in detections:
        x1, y1, x2, y2, conf, cls_id = det
        if conf > conf_thresh and conf > highest_conf:
            highest_conf = conf
            h, w, _ = vehicle_crop_img.shape
            # Clamp tọa độ bounding box
            bx1, by1 = max(0, int(x1)), max(0, int(y1))
            bx2, by2 = min(w, int(x2)), min(h, int(y2))
            best_plate_crop = vehicle_crop_img[by1:by2, bx1:bx2]
            
    return best_plate_crop, highest_conf

3. Pipeline OCR xử lý ảnh biển số xe:

  1. Grayscale & Contrast Adjustment: Chuẩn hóa kênh màu và áp dụng cân bằng lược đồ xám (Histogram Equalization).
  2. Binarization: Áp dụng Adaptive Gaussian Thresholding để tách ký tự khỏi nền biển số xe phản quang.
  3. Character Segmentation & Recognition: Áp dụng CRNN (Convolutional Recurrent Neural Network) kết hợp LSTM để nhận diện tuần tự các ký tự biển số gồm chữ số và ký tự chữ cái (định dạng biển số chuẩn Việt Nam, ví dụ: 59-X3 123.45).

Testing và validation

Bộ dữ liệu thực nghiệm được chuẩn bị kỹ lưỡng với phân bổ chi tiết:

Bộ dữ liệu Mô hình ứng dụng Lớp phân loại (Classes) Tập Train Tập Validation Tổng số mẫu
TLCD (Traffic Lights) InceptionV3 go (Xanh) 3,200 800 4,000
InceptionV3 stop (Đỏ) 3,200 800 4,000
InceptionV3 warning (Vàng) 3,200 800 4,000
CLPID (License Plate) YOLOv5 v7.0 license_plate 2,400 600 3,000
Tổng cộng 12,000 3,000 15,000
+--------------------------------------------------------------------------------------------------+
|                             KẾT QUẢ HUẤN LUYỆN & ĐÁNH GIÁ MÔ HÌNH                                |
+--------------------------------------------------------------------------------------------------+
| Mô hình        | Tác vụ                       | Precision | Recall  | F1-Score | mAP@0.5 | FPS (T4)  |
+----------------+------------------------------+-----------+---------+----------+---------+-----------+
| InceptionV3    | Phân loại 3 trạng thái đèn   | 98.4%     | 98.1%   | 98.25%   | -       | 42 FPS    |
| SSD MobileNetv2| Phát hiện cụm đèn giao thông | 92.5%     | 89.7%   | 91.07%   | 91.4%   | 58 FPS    |
| YOLOv5s        | Định vị biển số xe           | 95.8%     | 94.2%   | 94.99%   | 96.2%   | 65 FPS    |
| CRNN-OCR Engine| Đọc chuỗi ký tự biển số xe   | 92.1%     | 89.6%   | 90.83%   | -       | 35 FPS    |
+--------------------------------------------------------------------------------------------------+

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

Điểm đột phá kỹ thuật

  • Kiến trúc phân tầng thông minh (Cascaded Pipeline): Thay vì sử dụng một mô hình lớn duy nhất (End-to-End) gây nghẽn phần cứng, hệ thống phân rã tác vụ thành pipeline tuần tự: SSD MobileNet v2 định vị cụm đèn $\rightarrow$ InceptionV3 phân loại trạng thái $\rightarrow$ Điều kiện dừng/kích hoạt $\rightarrow$ HoughLinesP xác định vạch $\rightarrow$ YOLOv5 cắt biển số $\rightarrow$ OCR. Thiết kế này giảm tải 72% tài nguyên tính toán khi đèn ở trạng thái xanh (go), vì toàn bộ chuỗi thuật toán phía sau sẽ chuyển sang chế độ chờ.
  • Tạo vùng vi phạm thích ứng động (Dynamic Adaptive ROI): Hệ thống không cố định tọa độ vùng vi phạm thủ công bằng tay mà tự động cập nhật tọa độ ROI dựa trên vị trí vạch dừng được trích xuất thời gian thực bằng phép biến đổi Hough, giúp hệ thống không bị sai lệch khi góc quay camera bị rung lắc do gió hoặc va đập cơ học.

So sánh với các nghiên cứu liên quan

+--------------------------------------------------------------------------------------------------+
|                     SO SÁNH VỚI CÁC CÔNG TRÌNH NGHIÊN CỨU TIÊU BIỂU                              |
+--------------------------------------------------------------------------------------------------+
| Tiêu chí          | Trần Văn Bình & CS (2022)| Lucas Possatti & CS (2019)  | Hệ thống Khóa luận UIT    |
+-------------------+--------------------------+-----------------------------+---------------------------+
| Mô hình cốt lõi   | YOLOv4 (Biển số xe)      | YOLOv3 + Prior Maps (Đèn)   | SSD + InceptionV3 + YOLOv5|
| Phạm vi xử lý     | Chỉ định vị biển số đơn  | Phân loại đèn trên xe tự hành| Toàn diện: Đèn+Vạch+Biển số|
| mAP / Accuracy    | 91.0% mAP                | 88.5% Accuracy              | 96.2% mAP / 98.25% Acc    |
| Tốc độ xử lý      | 31.2 FPS                 | 24.0 FPS                    | 45.0 FPS (Toàn Pipeline)  |
| Khả năng tra cứu  | Không có                 | Không có                    | Web App tra cứu SQL đầy đủ|
+--------------------------------------------------------------------------------------------------+

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

Kịch bản vận hành thực tế

Hệ thống được thiết kế để triển khai trực tiếp tại các giao lộ trong khuôn viên Đại học Quốc gia TP.HCM như nút giao ngã ba 621, ngã tư trục đường Lê Quý Đôn - Nguyễn Du và cổng Ký túc xá Khu B:

  • Kịch bản 1 (Phương tiện tuân thủ): Camera giám sát ghi nhận đèn đỏ, phương tiện dừng trước vạch $\rightarrow$ Tọa độ phương tiện không giao cắt vùng ROI $\rightarrow$ Hệ thống không kích hoạt module trích xuất biển số, giải phóng bộ nhớ đệm.
  • Kịch bản 2 (Phương tiện vượt đèn đỏ): Khi đèn đỏ kích hoạt, xe máy di chuyển cắt ngang qua vạch dừng được phát hiện bởi HoughLinesP và đi sâu vào vùng ROI $\rightarrow$ Hệ thống tự động snapshot khung hình vi phạm $\rightarrow$ YOLOv5 crop biển số $\rightarrow$ OCR đọc chuỗi ký tự $\rightarrow$ Lưu bản ghi vào MySQL kèm 2 ảnh bằng chứng (ảnh toàn cảnh giao lộ và ảnh cận cảnh biển số).
+───────────────────────────────────────────────────────────────────────────────────────────+
|                                    BẢN GHI PHẠT NGUỘI MẪU                                 |
+───────────────────────────────────────────────────────────────────────────────────────────+
| Mã vi phạm:      #VP-2024-0904-8821                                                       |
| Biển kiểm soát:  59-V2 847.29                  Loại xe:    Xe máy Honda Wave              |
| Thời gian:       2024-09-04 07:42:15 GMT+7     Địa điểm:   Ngã ba 621 - ĐHQG TP.HCM       |
| Trạng thái đèn:  STOP (Đỏ) - 14.2s             Hành vi:    Vượt đèn đỏ qua vạch dừng      |
| Mức xử phạt:     800,000 VNĐ                   Tình trạng: CHƯA NỘP PHẠT (UNPAID)         |
+───────────────────────────────────────────────────────────────────────────────────────────+

Phân tích hiệu quả kinh tế (Cost-Benefit Analysis)

  • Chi phí triển khai ước tính: 15,000,000 VNĐ / giao lộ (gồm 1 Mini PC Intel N100/Nvidia Jetson Orin Nano kết nối hạ tầng camera sẵn có).
  • Lợi ích vận hành: Giảm thiểu 100% thời gian tuần tra trực tiếp của đội bảo vệ khu đô thị tại các điểm nút giờ cao điểm; nâng cao tỷ lệ xử phạt chính xác đạt trên 94%; ước tính hoàn vốn đầu tư (ROI) trong vòng 4 tháng vận hành thông qua tối ưu hóa chi phí nhân sự và hạn chế tai nạn giao thông.

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

Hạn chế kỹ thuật

  1. Điều kiện thời tiết cực đoan: Khi trời mưa to kèm sương mù dày đặc hoặc ban đêm thiếu ánh sáng đèn đường, độ chính xác nhận diện vạch kẻ đường HoughLinesP giảm xuống còn ~81%.
  2. Biển số xe bị che khuất: Các trường hợp biển số bị bùn đất che lấp, bẻ cong hoặc bị ba-ga xe phía sau che khuất một phần khiến độ tin cậy của module OCR suy giảm.
  3. Phần cứng suy luận tại biên: Khi chạy toàn bộ pipeline trên CPU thông thường, độ trễ đạt mức 220ms/frame (tương đương ~4.5 FPS), bắt buộc cần bộ tăng tốc GPU hoặc NPU để đảm bảo chuẩn thời gian thực (Real-time).

Hướng phát triển trong tương lai

  • Nâng cấp mô hình phát hiện biển số lên YOLOv8 hoặc YOLOv10 với cơ chế NMS-free nhằm giảm độ trễ trích xuất xuống dưới 10ms.
  • Ứng dụng mạng nơ-ron hồi quy phân đoạn ảnh (Semantic Segmentation như DeepLabV3+ hoặc SegNet) để nhận diện vạch dừng và phân làn đường chính xác hơn thay thế cho phép biến đổi Hough truyền thống.
  • Tích hợp mô-đun Mobile App trên nền tảng Flutter cho phép người dân nhận thông báo đẩy (Push Notification) tức thời khi phương tiện cá nhân vi phạm giao thông.

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

  • Sinh viên & Học viên cao học: Cung cấp tài liệu tham khảo hoàn chỉnh, mã nguồn và phương pháp luận kết hợp giữa học sâu hiện đại và xử lý ảnh truyền thống trong các đề tài nghiên cứu ứng dụng giao thông thông minh.
  • Kỹ sư & Lập trình viên Computer Vision: Bộ giải pháp mẫu về thiết kế kiến trúc pipeline đa tầng, kỹ thuật tối ưu hóa luồng suy luận AI và xử lý bounding box trên khung hình thời gian thực.
  • Cơ quan Quản lý Giao thông & Ban Quản lý Khu Đô thị: Hệ thống phần mềm hoàn chỉnh, sẵn sàng triển khai thực tế nhằm giảm tải áp lực điều phối, minh bạch hóa công tác phạt nguội và kéo giảm tai nạn giao thông.

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

1. Yêu cầu cấu hình phần cứng tối thiểu để triển khai hệ thống là gì?

Hệ thống yêu cầu máy chủ xử lý tại biên trang bị tối thiểu CPU Intel Core i5 thế hệ 10 (hoặc tương đương), 8GB RAM, cùng bộ tăng tốc đồ họa NVIDIA GTX 1650 4GB (hoặc NVIDIA Jetson Orin Nano 8GB) để duy trì tốc độ xử lý trên 30 FPS với luồng camera Full HD 1080p.

2. Hệ thống xử lý thế nào khi có nhiều phương tiện cùng vượt đèn đỏ trong một khung hình?

Nhờ cơ chế multi-object detection của SSD MobileNet v2 và YOLOv5, hệ thống tự động gán nhãn và theo dõi (tracking) từng bounding box của các phương tiện riêng biệt trong vùng ROI, sau đó crop độc lập từng biển số xe và tạo các bản ghi vi phạm tương ứng trong cơ sở dữ liệu.

3. Làm thế nào để tích hợp hệ thống vào hạ tầng camera IP có sẵn?

Hệ thống hỗ trợ giao thức truyền phát chuẩn RTSP (rtsp://username:password@ip_address:port/h264). Module tiếp nhận dữ liệu sử dụng thư viện OpenCV chỉ cần liên kết URL RTSP của camera là có thể thu thập khung hình trực tiếp mà không cần thay đổi phần cứng camera hiện hữu.

4. Chi phí bảo trì và bảo dưỡng hệ thống định kỳ ra sao?

Do hệ thống sử dụng các thuật toán mã nguồn mở (PyTorch, OpenCV, Flask, MySQL), chi phí duy trì phần mềm định kỳ bằng 0. Hoạt động bảo trì chủ yếu bao gồm vệ sinh ống kính camera ngoài trời định kỳ 3 tháng/lần và sao lưu dữ liệu hình ảnh vi phạm trên ổ cứng lưu trữ.

5. Dữ liệu hình ảnh biển số xe có được bảo mật theo quy chuẩn không?

Toàn bộ thông tin phương tiện và bằng chứng hình ảnh được mã hóa đường dẫn, lưu trữ trong cơ sở dữ liệu MySQL có thiết lập phân quyền người dùng (Role-Based Access Control) và chỉ cho phép tra cứu công khai thông qua giao diện Web khi người dùng cung cấp chính xác biển số xe kèm số khung/số máy.


Kết luận

Đề tài khóa luận tốt nghiệp của sinh viên Trần Diễm Mỹ Ngọc và Trần Minh Quân dưới sự hướng dẫn của TS. Phan Xuân Thiện tại Khoa Mạng máy tính và Truyền thông – Trường Đại học Công nghệ Thông tin, ĐHQG-HCM đã xây dựng thành công giải pháp toàn diện cho bài toán giám sát vi phạm giao thông vượt đèn đỏ. Bằng việc kết hợp hài hòa giữa các kiến trúc học sâu tiên tiến (InceptionV3 đạt độ chính xác 98.25%, YOLOv5 đạt mAP 96.2%) cùng kỹ thuật thị giác máy tính Probabilistic Hough Line Transform, hệ thống đã giải quyết triệt để bài toán nhận diện vi phạm tự động với chi phí tối ưu.

Giải pháp không chỉ mang giá trị học thuật cao trong việc kết hợp đa mô hình AI mà còn sẵn sàng chuyển giao ứng dụng thực tế, góp phần xây dựng môi trường giao thông văn minh, an toàn tại Khu đô thị Đại học Quốc gia TP.HCM và các đô thị thông minh trong tương lai.