Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh công nghệ thông tin phát triển mạnh mẽ, công nghệ thu nhận và xử lý ảnh số đã trở nên phổ biến thông qua các thiết bị ghi hình chuyên dụng và điện thoại di động. Xử lý ảnh và thị giác máy tính đã trở thành lĩnh vực nghiên cứu chuyên sâu, đóng vai trò then chốt trong các hệ thống tự động hóa. Trong đó, hệ thống nhận dạng ký tự quang học (OCR - Optical Character Recognition) ứng dụng cho nhận dạng biển số xe tự động (ANPR) là một bài toán thực tiễn quan trọng nhằm giải quyết tình trạng ùn tắc giao thông, tối ưu hóa quản lý bãi đỗ xe, tự động hóa trạm thu phí và hỗ trợ lực lượng cảnh sát giao thông giám sát, xử lý phương tiện vi phạm mà không cần truy đuổi trực tiếp.
Tuy nhiên, việc nhận dạng biển số xe gắn máy tại Việt Nam gặp nhiều thách thức đặc thù: biển số có cấu trúc hai hàng ký tự, góc nghiêng khi lưu thông hoặc dựng chân chống dao động lớn (từ $-30^\circ$ đến $+30^\circ$), điều kiện chiếu sáng ngoài trời không đồng đều (chói sáng hoặc bóng râm), và sự xuất hiện của quy định biển số mới có 5 chữ số ở hàng dưới.
Mục tiêu nghiên cứu:
- Xây dựng hoàn chỉnh chương trình tự động nhận dạng biển số xe gắn máy từ ảnh chụp đầu vào và xuất kết quả dưới dạng văn bản (text).
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Biển số xe gắn máy lưu hành tại Việt Nam.
- Phạm vi nghiên cứu: Toàn bộ các định dạng biển số xe gắn máy tại Việt Nam, bao gồm cả loại biển số mới ban hành có 5 ký tự ở hàng dưới. Dữ liệu thực nghiệm được giới hạn trong khoảng cách chụp từ thiết bị ghi hình đến biển số từ $0{,}5\text{ m}$ đến $2\text{ m}$, góc chụp nghiêng của camera so với mặt phẳng biển số từ $0^\circ$ đến $45^\circ$.
Tổng quan các nghiên cứu tiền đề được tác giả khảo sát:
| Tài liệu / Tác giả |
Hướng tiếp cận chính |
Điểm hạn chế / Đóng góp kế thừa |
Ondrej Martinsky (2007) Đại học Kỹ thuật BRNO |
So sánh các phương pháp toán học và giải thuật nhận dạng ký tự |
Tỷ lệ nhận dạng trong các môi trường phức tạp chưa cao. |
Kaushik Deb & Kang-Hyun Jo (2002) Đại học Ulsan, Hàn Quốc |
Phân vùng biển số sử dụng mô hình màu HSI và thành phần liên thông |
Mới dừng lại ở bước tách ký tự, chưa xây dựng giải thuật nhận dạng. |
Bar-Hen Ron (2002) Israel Institute of Technology |
Ứng dụng mạng Nơ-ron trong hệ thống nhận dạng thời gian thực |
Cung cấp phương pháp tính toán chính xác các tham số điều kiện. |
Siddhartha Choubey và cộng sự (2011) ICMLC 2011 |
Kỹ thuật phân vùng ký tự dựa trên gom cụm điểm ảnh (Pixel Clustering) |
Trình bày giải thuật phân tách từng ký tự bằng phép chiếu ngang và dọc. |
Võ Đại Bình, Nguyễn Thị Tú Mi, Nguyễn Thùy Giang (2002) Đại học Nông Lâm TP.HCM |
Phân tích bố cục và nhận dạng ảnh công văn tiếng Việt |
Đóng góp giải thuật tính góc nghiêng, quay ảnh và tách ký tự văn bản. |
Cơ sở lý thuyết và phương pháp
Đồ án tổng hợp và ứng dụng hệ thống các phương pháp toán học và xử lý ảnh số chuyên sâu, bao gồm:
1. Không gian màu và phân đoạn ảnh
- Mô hình màu RGB và HSI: Ảnh màu đầu vào chuẩn RGB được chuyển đổi sang không gian màu HSI (Hue - Sắc lượng, Saturation - Độ bão hòa, Intensity - Độ chói) để tách biệt thông tin độ chói và thông tin màu sắc. Không gian HSI giúp thuật toán phân vùng thích nghi tốt với sự biến thiên của ánh sáng thực tế.
- Phân đoạn thích nghi: Thay vì sử dụng ngưỡng cố định theo các kênh màu, đồ án sử dụng giá trị trung bình ($\mu_S, \mu_I$) và độ lệch chuẩn ($\delta_S, \delta_I$) của độ bão hòa $S$ và độ chói $I$ để xác định vùng ứng viên biển số:
$$f(x, y) = \begin{cases} 1, & \text{khi } {S(x,y) \le (\mu_S + \delta_S)} \ & \ {I(x,y) \le \mu_I + 1.2\delta_I} \ 0, & \text{trường hợp khác} \end{cases}$$
2. Phép toán hình thái học và lọc nhiễu
- Hình thái học (Mathematical Morphology): Áp dụng phép giãn nở (Dilation: $A \oplus B$), phép bào mòn (Erosion: $A \ominus B$), phép mở (Opening: $A \circ B = (A \ominus B) \oplus B$) với phần tử cấu trúc mặt nạ $B$ kích thước $3 \times 3$ nhằm loại bỏ các đốm trắng nhỏ, làm mịn biên và tách rời các thành phần nhiễu.
- Lọc trung vị (Median Filter): Sử dụng cửa sổ trượt $3 \times 3$ để khử nhiễu muối tiêu (salt-pepper noise) và nhiễu đốm phát sinh sau các bước xoay ảnh, giúp làm mịn các điểm ảnh bị khuyết mà không làm mờ biên ký tự.
3. Nhị phân hóa và phân ngưỡng
- Thuật toán phân ngưỡng toàn cục Otsu: Tối ưu hóa phương sai liên lớp ($\sigma_B^2$) trên lược đồ xám (histogram) để tìm ngưỡng nhị phân tối ưu $k^*$.
- Phân ngưỡng cục bộ (Local Thresholding): Đối với các trường hợp biển số bị chói sáng hoặc sấp bóng, ngưỡng nhị phân $T(x, y)$ được tính động theo giá trị trung bình mức xám của vùng lân cận kích thước $(2m+1) \times (2m+1)$:
$$T(x,y) = \text{mean}_{\substack{x-m < i \le x+m \ y-m < j \le y+m}} {f(i, j)}$$
4. Dò biên, biến đổi Hough và hiệu chỉnh góc nghiêng
- Trích biên: Sử dụng phép bào mòn để trích xuất biên hình học: $\beta(A) = A - (A \ominus B)$.
- Biến đổi Hough (Hough Transform): Chuyển đổi không gian điểm ảnh sang không gian tham số $(r, \theta)$ thông qua phương trình $r = x\cos\theta + y\sin\theta$ để tìm phương trình cạnh ngang đáy biển số, từ đó suy ra góc lệch $\alpha = \theta_m - 90^\circ$.
- Biến đổi affine quay ảnh: Xoay toàn bộ ma trận ảnh theo góc lệch $\alpha$ kết hợp phép tịnh tiến tọa độ $(2M\sin\alpha, 2N\sin\alpha)$ để bảo toàn điểm ảnh, đưa biển số về trạng thái trục ngang chuẩn.
5. Trích xuất đặc trưng và nhận dạng ký tự
- Bảy mômen bất biến Hu (Hu's Invariant Moments): Trích xuất vector đặc trưng 7 chiều ($\phi_1$ đến $\phi_7$) từ các mômen trung tâm chuẩn hóa $\eta_{pq}$. Các giá trị mômen này có tính chất bất biến đối với phép tịnh tiến, phép quay và phép co giãn tỷ lệ (scale).
- Phân lớp Bayes với hàm mật độ xác suất Gauss (Bayesian Classifier with Gaussian PDF): Ước lượng xác suất hậu nghiệm $p(x|\omega_j)P(\omega_j)$ dựa trên vector kỳ vọng $m_j$ và ma trận hiệp phương sai $C_j$ của từng lớp ký tự:
$$p(x|\omega_j) = \frac{1}{(2\pi)^{n/2}|C_j|^{1/2}} \exp\left(-\frac{1}{2}(x - m_j)^T C_j^{-1}(x - m_j)\right)$$
Thiết kế và quy trình triển khai hệ thống
Hệ thống được thiết kế theo mô hình xử lý đường ống nối tiếp (pipeline architecture) với hai thành phần chính: giao diện người dùng và cơ sở dữ liệu mẫu huấn luyện.
[Ảnh đầu vào (RGB / Camera)]
[Chuyển đổi HSI & Phân vùng màu]
[Lọc nhiễu Opening & Gán nhãn vùng liên thông (Stack)]
[Lọc hình học (Diện tích S, Tỷ lệ cạnh PA)]
[Trích biên & Biến đổi Hough xác định góc nghiêng α]
[Quay ảnh cân bằng & Lọc trung vị làm mịn]
[Phân ngưỡng nhị phân (Otsu / Cục bộ)]
[Tính 7 mômen bất biến Hu]
[Phân lớp Bayes (Huấn luyện 36 lớp x 100 mẫu Gauss)]
[Hiển thị kết quả Text & Thời gian xử lý]
Chi tiết các khối kỹ thuật triển khai:
-
Thuật toán gán nhãn thành phần liên thông bằng kỹ thuật tô màu không đệ quy:
- Sử dụng cấu trúc dữ liệu Stack để lưu trữ hoành độ biên khi loang điểm ảnh sang trái và sang phải. Giải thuật này tránh hiện tượng tràn ngăn xếp (stack overflow) khi xử lý các ma trận ảnh độ phân giải lớn.
-
Bộ lọc vùng ứng viên dựa trên đặc trưng hình học:
- Kích thước chuẩn của biển số xe máy Việt Nam là $190\text{ mm} \times 140\text{ mm}$, tương ứng tỷ lệ cạnh lý thuyết $PA \approx 1{,}357$.
- Dựa trên tham số $c_{\max}, c_{\min}, r_{\max}, r_{\min}$, hệ thống tính toán tỷ lệ cạnh $PA = \frac{c_{\max} - c_{\min} + 1}{r_{\max} - r_{\min} + 1}$ và diện tích $S$ để loại bỏ toàn bộ các vùng không thỏa mãn cấu trúc khung biển số xe máy.
-
Phân đoạn ký tự 2 giai đoạn:
- Phân tách hàng (Horizontal Projection): Chiếu mức xám theo phương ngang để tìm điểm cực tiểu giữa hai đỉnh mật độ điểm đen, chia biển số thành 2 nửa (hàng trên và hàng dưới).
- Phân tách ký tự (Vertical Projection): Chiếu mức xám theo phương đứng trên từng hàng để xác định ranh giới từng ký tự dựa trên 3 thông số: khoảng cách $w_i$, chiều cao cực đại $h_i$ và diện tích bao $s_i = w_i \times h_i$.
-
Tối ưu hóa không gian nhận dạng dựa trên quy chuẩn biển số Việt Nam:
- Hàng dưới và 2 ký tự đầu hàng trên: Chỉ đối sánh với tập mẫu chữ số ($0 - 9$).
- Ký tự thứ 3 hàng trên: Chỉ đối sánh với tập mẫu chữ cái ($A - Z$).
- Ký tự thứ 4 hàng trên: Đối sánh kết hợp cả chữ số và chữ cái.
- Cấu trúc tập mẫu huấn luyện: 36 lớp ký tự, mỗi lớp gồm 100 mẫu trích xuất vector 7 mômen Hu.
Nội dung chính theo từng chương
Chương 1: Khái quát về xử lý ảnh
Chương 1 thiết lập toàn bộ nền tảng lý thuyết phục vụ cho việc xây dựng đồ án:
- Định nghĩa ảnh số hai chiều $f(x, y)$ và không gian mức xám từ $0$ đến $255$.
- Phân tích cấu trúc không gian màu RGB 24-bit (8-bit cho mỗi kênh) và thuật toán chuyển đổi sang không gian HSI (Hue $0^\circ - 360^\circ$, Saturation $0 - 1$, Intensity $0 - 1$).
- Trình bày hệ thống các phép toán hình thái học (Dilation, Erosion, Opening, Closing) và thuật toán nâng cao chất lượng ảnh (Histogram, lọc trung vị ma trận $3 \times 3$).
- Cơ sở toán học của phép biến đổi Hough trong bài toán nhận diện đường thẳng từ không gian tham số $(r, \theta)$.
- Công thức tính toán 7 mômen bất biến Hu ($\phi_1 - \phi_7$) từ mômen không gian $m_{pq}$ và mômen trung tâm $\mu_{pq}$.
- Cơ sở toán học của phân lớp Bayes, ma trận rủi ro và mô hình phân phối chuẩn nhiều chiều Gauss (xác định qua vector trung bình $m_j$ và ma trận hiệp phương sai $C_j$).
Chương 2: Phương pháp nhận dạng biển số xe
Chương 2 trình bày chi tiết trình tự giải thuật và các quyết định kỹ thuật:
- Phát hiện vùng biển số: Kết hợp phân ngưỡng HSI thích nghi theo $(\mu, \delta)$, lọc hình thái học Opening mặt nạ $3 \times 3$, và giải thuật gán nhãn thành phần liên thông bằng phương pháp tô màu không đệ quy dùng Stack. Lọc ứng viên qua diện tích $S$ và tỷ lệ cạnh $PA$.
- Hiệu chỉnh góc xoay: Trích biên bằng phép bào mòn $\beta(A) = A - (A \ominus B)$, chạy biến đổi Hough tìm cạnh ngang đáy để suy ra góc lệch $\alpha = \theta_m - 90^\circ$. Xoay ảnh theo hai trường hợp lệch trái ($\alpha > 0$) và lệch phải ($\alpha < 0$) kèm tịnh tiến tọa độ, sau đó khử nhiễu điểm ảnh bằng lọc trung vị.
- Nhị phân hóa: Phân tích điểm yếu của phương pháp Otsu khi gặp hiện tượng chói sáng hoặc sấp bóng cục bộ, từ đó tích hợp thuật toán phân ngưỡng cục bộ ma trận $(2m+1) \times (2m+1)$.
- Tách ký tự: Sử dụng phép chiếu ngang để tách 2 hàng ký tự và phép chiếu dọc dựa trên bộ 3 tham số $(w_i, h_i, s_i)$ để tách rời từng ký tự độc lập.
- Nhận dạng Bayes: Chuẩn hóa kích thước ký tự, tính toán vector 7 mômen Hu và áp dụng phân lớp Bayes đa lớp Gauss kết hợp tri thức cấu trúc biển số xe máy Việt Nam để tăng tốc độ tính toán.
Chương 3: Chương trình nhận dạng biển số xe tự động
Chương 3 giới thiệu kiến trúc phần mềm, thông số vận hành và các thực nghiệm:
- Giao diện và chức năng: Xây dựng phần mềm hoàn chỉnh cho phép nạp ảnh tĩnh từ tệp tin hoặc chụp trực tiếp thời gian thực từ camera/webcam. Giao diện hiển thị trực quan ảnh gốc, ảnh vùng biển số đã cắt/xoay, giá trị chuỗi ký tự nhận dạng và đồng hồ đo thời gian xử lý theo mili-giây.
- Quy chuẩn dữ liệu đầu vào: Hỗ trợ các định dạng ảnh
jpg, bmp, tif, gif, png, ppm, pgm; độ phân giải chuẩn $640 \times 480\text{ pixel}$; cự ly chụp $0{,}5 - 2\text{ m}$; góc chụp nghiêng của camera $0^\circ - 45^\circ$.
- Thực nghiệm hệ thống: Đánh giá khả năng phân vùng và nhận dạng trên các tập ảnh thực tế trong nhiều điều kiện môi trường khác nhau.
Kết quả và đóng góp
1. Kết quả thực nghiệm
- Hiệu năng xử lý: Thời gian nhận dạng trung bình của chương trình đạt xấp xỉ $0{,}5\text{ giây}$ cho một biển số xe.
- Hiệu quả phân vùng: Thuật toán phân vùng màu HSI kết hợp lọc hình học $PA$ và gán nhãn liên thông Stack định vị chính xác vùng biển số trong nhiều điều kiện bối cảnh phức tạp.
- Hiệu quả nhận dạng ký tự: Giải thuật phân lớp Bayes Gauss trên vector đặc trưng mômen Hu đạt độ chính xác cao trên tập ký tự chữ số. Độ chính xác nhận dạng chữ số cao hơn rõ rệt so với chữ cái do sự phong phú về dữ liệu huấn luyện chữ số.
2. Đóng góp kỹ thuật của đề tài
- Đề xuất và triển khai thành công hướng tiếp cận mới trong nhận dạng ký tự biển số: ứng dụng phân lớp Bayes dựa trên xác suất mật độ Gauss kết hợp 7 mômen bất biến Hu, thay thế cho mạng Nơ-ron truyền thống nhằm rút ngắn thời gian huấn luyện và tăng tốc độ xử lý.
- Giải quyết triệt để bài toán hiệu chỉnh góc nghiêng lớn (biên độ dao động từ $-30^\circ$ đến $+30^\circ$) đặc thù của xe gắn máy thông qua biến đổi Hough và biến đổi affine tịnh tiến.
- Tích hợp thuật toán phân ngưỡng cục bộ để khắc phục hiện tượng mất nét ký tự do chói sáng hoặc bóng râm ngoài trời mà phương pháp Otsu toàn cục không xử lý được.
- Xây dựng giải pháp phân tách 2 giai đoạn (chiếu ngang rồi chiếu dọc) phù hợp với định dạng biển số 2 hàng và biển số 5 số mới tại Việt Nam.
Hạn chế và hướng nghiên cứu tiếp
- Hạn chế về dữ liệu huấn luyện: Kích thước cơ sở dữ liệu mẫu còn nhỏ ($100\text{ mẫu/lớp}$ cho 36 lớp ký tự), dẫn đến khả năng bao quát các biến thể ký tự thực tế bị hạn chế.
- Độ chính xác chưa đồng đều: Do biển số 5 chữ số ở hàng dưới mới được triển khai tại thời điểm nghiên cứu nên việc thu thập mẫu cho một số ký tự chữ cái gặp khó khăn, khiến độ chính xác nhận dạng chữ cái chưa cao bằng chữ số.
- Hướng nghiên cứu tiếp: Mở rộng quy mô tập dữ liệu mẫu huấn luyện cho các chữ cái ít xuất hiện; tối ưu hóa giải thuật để tăng cường độ chính xác khi nhận dạng trong điều kiện thời tiết cực đoan hoặc biển số bị mờ bẩn.
Giá trị tham khảo
- Đối tượng hưởng lợi: Sinh viên, giảng viên và các nhóm nghiên cứu thuộc chuyên ngành Công nghệ thông tin, Khoa học máy tính, Kỹ thuật phần mềm và Kỹ thuật điều khiển - Tự động hóa đang thực hiện các đề tài về xử lý ảnh, thị giác máy tính và hệ thống giao thông thông minh (ITS).
- Các nội dung có giá trị tham khảo cao:
- Quy trình hiệu chỉnh góc nghiêng lớn bằng tích hợp biến đổi Hough và biến đổi affine tịnh tiến điểm ảnh.
- Thuật toán nhị phân hóa cục bộ thích nghi cho bài toán ảnh bị mất cân bằng sáng.
- Kỹ thuật phân lớp Bayes Gauss kết hợp 7 mômen bất biến Hu ứng dụng trong OCR ký tự chuẩn hóa.
Câu hỏi thường gặp
1. Tại sao đồ án sử dụng không gian màu HSI thay vì RGB để phát hiện vùng biển số?
Mô hình RGB phụ thuộc lớn vào cường độ ánh sáng, khiến các giá trị kênh màu thay đổi mạnh khi chụp ngoài trời. Không gian màu HSI phân tách rạch ròi giữa thông tin sắc lượng ($H$), độ bão hòa ($S$) và độ chói ($I$). Việc kết hợp giá trị trung bình và độ lệch chuẩn của $S$ và $I$ giúp thuật toán nhận diện màu biển số ổn định dưới nhiều điều kiện thời gian (sáng, trưa, chiều, tối).
2. Phương pháp phân ngưỡng Otsu gặp lỗi gì trong bài toán này và tác giả khắc phục ra sao?
Phương pháp Otsu tính toán một ngưỡng toàn cục dựa trên toàn bộ lược đồ xám. Khi biển số bị ánh sáng mặt trời chiếu chói một phần hoặc bị bóng râm che khuất, độ tương phản giữa ký tự và nền bị suy giảm cục bộ, dẫn đến việc Otsu xóa mất các ký tự ở vùng chói. Tác giả đã khắc phục bằng cách thay thế bằng thuật toán phân ngưỡng cục bộ, tính ngưỡng trung bình động $T(x,y)$ trên từng ma trận cửa sổ $(2m+1) \times (2m+1)$.
3. Tại sao giải thuật nhận dạng ký tự lại lựa chọn phân lớp Bayes thay vì mạng Nơ-ron?
Các ký tự trên biển số xe tại Việt Nam có kích thước và font chữ chuẩn hóa theo quy định nhà nước, không có các biến thể chữ in nghiêng hay chữ viết tay tự do. Do đó, mô hình phân lớp Bayes giả định phân phối Gauss dựa trên 7 mômen bất biến Hu cho tốc độ "học" và xử lý nhanh hơn, cấu trúc thuật toán gọn nhẹ hơn so với việc huấn luyện mạng Nơ-ron phức tạp.
4. Bảy mômen bất biến Hu có vai trò gì trong việc nhận dạng ký tự biển số xe máy?
Ký tự trên biển số xe máy thường bị nghiêng, biến đổi kích thước do khoảng cách chụp hoặc góc đặt camera. 7 mômen bất biến Hu có tính chất bất biến với các phép quay, tịnh tiến và co giãn tỷ lệ, cho phép trích xuất đặc trưng hình học cốt lõi của từng ký tự mà không bị ảnh hưởng bởi góc nghiêng hay độ lớn của ảnh ký tự sau khi cắt.
5. Yêu cầu tiêu chuẩn đối với ảnh đầu vào của chương trình là gì?
Ảnh đầu vào cần đáp ứng: cự ly chụp từ $0{,}5\text{ m}$ đến $2\text{ m}$; góc chụp của camera so với biển số từ $0^\circ$ đến $45^\circ$; độ phân giải chuẩn $640 \times 480\text{ pixel}$; hỗ trợ các định dạng tệp jpg, bmp, tif, gif, png, ppm, pgm.
Kết luận
Đồ án đã giải quyết bài toán tự động nhận dạng biển số xe gắn máy tại Việt Nam thông qua quy trình xử lý ảnh tuần tự gồm phân vùng màu HSI, hiệu chỉnh góc nghiêng bằng biến đổi Hough, phân đoạn ký tự hai hàng và phân lớp Bayes trên vector 7 mômen bất biến Hu. Với thời gian xử lý trung bình đạt 0,5 giây mỗi biển số, chương trình thể hiện khả năng đáp ứng tốt yêu cầu kỹ thuật trong điều kiện thực nghiệm tiêu chuẩn. Các giải pháp xử lý góc nghiêng lớn và phân ngưỡng cục bộ đã giải quyết hiệu quả những rào cản đặc thù của giao thông xe máy tại Việt Nam, tạo nền tảng lý thuyết và thực nghiệm cho các nghiên cứu phát triển hệ thống kiểm soát giao thông tự động tiếp theo.