Xây dựng hệ thống tự động nhận dạng biển số xe (Building automatic license plate recognition)

Tự động nhận dạng biển số xe máy là bài toán có tính thực tế cao tại Việt Nam xuất phát từ nhu cầu của những người quản lý bãi xe. Bài báo trình bày một hướng tiếp cận trong bài toán tự động nhận dạng biển số xe máy với dữ liệu đầu vào là ảnh chụp từ camere hoặc đoạn phim. Bài báo tập trung vào giải quyết ba bài toán nhỏ: xác định vùng biển số, tách ký tự và nhận dạng các ký tự. Để nâng cao hiệu quả trong việc xác định vùng biển số và tách ký tự, bài báo kết hợp giữa hai phương pháp hình thái học và đặc điểm lược đồ Histogram, đồng thời sử dụng phương pháp nhận dạng theo cấu trúc cho các ký tự số trên biển.

Abstract

Automatic license plate recognition for motobike is an important application in Vietnam due to huge demands of reality.This paper presents an approach for automatic license plate recognition which could input from both photo and video. In general, there are three principal problems including license plate region detection, character separation and optical character recognition. In the proposed method, to increase efficiency of two former ones, morphology and histogram schemes are combined together, while structure methods are applied to deal with the last problem. 

Keyword: Linense plate, recognition, morphology, histogram scheme.

  1. Giới thiệu

Ngày nay, khi số lượng xe cộ lưu thông nhiều, việc ghi vé, soát vé thủ công mất nhiều thời gian, có thể xảy ra nhầm lẫn, việc tra cứu thông tin thời gian, số lượng xe ra vào gần như không thực hiện được. Tự động nhận dạng, lưu trữ biển số xe là một bài toán có tính thực tế cao, tiết kiệm thời gian của người gửi xe, ghi, soát vé, đảm bảo sự chính xác. Đã có nhiều thuật toán đưa ra để nhận dạng vùng ảnh chứa biển số xe nói chung nhưng khi áp dụng thực tế với biển xe máy ở Việt Nam gặp nhiều khó khăn bởi khác biệt về kích thước, khoảng cách, màu sắc, số lượng ký tự… do đó, bài báo tập trung nghiên cứu nhận dạng vùng biển số trong mô hình không giới hạn vùng biển dựa trên lược đồ Histogram và phương pháp hình thái học. Nhận dạng ký tự trên biển xe gần tương đồng với nhận dạng ký tự chữ in, hiện tại vấn đề này đã được giải quyết gần như hoàn hảo nên bài báo chỉ điểm qua vấn đề này để độc giả có cách nhìn khái quát và kiểm chứng kết quả hệ thống.

  1. Nội dung

2.1. Thu nhận ảnh và tiền xử lý

Qua trình thu nhận ảnh trong hệ thống được thực hiện tự động thông qua một camera giám sát, ảnh thu được có thể chia làm 02 dạng là chỉ chụp vùng biển và bao gồm biển cùng một phần của đuôi xe. Hệ thống xử lý ảnh bao gồm biển cùng một phần của đuôi xe. Ảnh cần được xử lý trước khi nhận dạng. Trước hết, đưa ảnh về ảnh xám, sau đó tăng độ tương phản để phân biệt rõ vùng nền và vùng ký tự. Cuối cùng, ảnh được khử nhiễu thông qua bộ lọc trung vị hoặc Gauss.

2.2. Kỹ thuật nhận dạng vùng chứa biển số xe

Có 3 phương pháp chính để giải quyết bài toán này:

  • Phương pháp “hình thái học – Morphology” hay “phát triển vùng”: Ảnh chứa biển số xe luôn có những vùng đồng nhất mà cụ thể là “màu trắng” và có diện tích nhất định. Như vậy, có thể tìm ra các vùng thỏa mãn đặc tính trên qua phương pháp phát triển vùng.
  • Phương pháp “phép biến đổi Hough”: Do biển số xe có chứa các đường viền xung quang, nên áp dụng phép biến đổi Hough rất hiệu quả trong phát hiện các vùng có đường thẳng đứng và đường thằng ngang. Giao điểm của những đường này sẽ là tọa độ của khung bao.
  • Phương pháp “phát hiện biên Heuristic”: Áp dụng mặt nạ Sobel, Laplace.. để dò tìm cạnh trong ảnh, kết quả là ảnh chỉ chứa tập các cạnh, gọi là G(x, y). Sau đó, áp dụng một số Heuristic về biển số xe như kích thước, tỉ lệ chiều cao/chiều rộng, hoặc sử dụng một cửa sổ di chuyển trên toàn bộ G(x, y) để tìm ra các vùng có số cạnh thỏa mãn điều kiện.

Trong bài báo quan tâm đến đặc điểm về Histogram vùng biển trước để xác định các vùng nghi vấn chứa biển số. Qua quá trình thực nghiệm, hình dạng histogram của vùng chứa biển số  sẽ có một khoảng lõm lớn ở giữa do sự phân bổ mức xám trên ảnh chứa ký tự thường chia làm phần nền- ảnh rõ rệt. Như vậy đầu tiên sẽ đi xác định các vùng có dạng histogram như trên để đưa vào vùng nghi vấn có khả năng là ¼ biển số, sau đó lọc các vùng nghi vấn dựa trên đặc điểm ¼ vùng biển có chứa 2 ký tự. Dựa trên ý tưởng đó, tác giả xây dựng thuật toán tìm vùng biển số qua hai giai đoạn lọc thô và lọc tinh.

Lọc thô: xác định các vùng nghi vấn là ¼ vùng biển

– Bước 1: chuyển về ảnh về ảnh xám và lọc nhiễu trên ảnh.

– Bước 2: sử dụng cửa sổ trượt có kích cỡ xấp xỉ ¼ biển số trên ảnh theo thứ tự từ trên xuống dưới và từ trái qua phải. Ta có thể xác định được trước vùng có khả năng chứa biển trong khoảng cố định nào đó trong ảnh (thường thì biển nằm ở vùng phía dưới). Do có nhiều vùng chứa ký tự nên không nhất thiết phải trượt lần lượt qua các pixel mà sẽ nhẩy cách để tăng tốc độ và tránh trùng lặp giữa hai vùng liên kề. Trong hệ thống mỗi bước nhẩy có kích thước bằng ½ cửa sổ.

– Bước 3: Với mỗi vùng thu được cần xác định Histogram của nó. Nếu Histogram có hình dạng như biển số  thì gán nhãn và đưa vào danh sách các vùng nghi vấn.

Lọc tinh: tiến hành xác định đâu là vùng chứa ¼ biển trong các vùng nghi vấn.

– Bước 1: Mở rộng vùng nghi vấn thu được sao cho có thể bao được toàn bộ ký tự nếu có.

– Bước 2: Chuyển ảnh về nhị phân.

– Bước 3: Lọc các nhiễu gây ảnh hưởng xấu tới đối tượng biển số.

– Bước 4: Gán nhãn cho tất cả các đối tượng còn lại trong ảnh nhị phân thu được (đối tượng được hiểu là một vùng các điểm ảnh liên thông nhau).

– Bước 5: Trích ra các đối tượng ứng viên là ký tự

– Bước 6: Tiến hành nhận dạng thử các đối tượng ứng viên, nếu nhận dạng được đúng 2 vùng liên tiếp nhau là ký tự thì xác định đó là vùng chứa ¼ biển.

– Bước 7: Mở rộng vùng theo 4 phía để lấy được toàn bộ vùng biển.

2.3. Tách các ký tự

Trước hết ảnh vùng biển số cần được đưa về cùng độ phân giải để thực hiện việc xóa biên nếu có, tiếp theo nhị phân ảnh và lọc nhiễu để loại bỏ bớt các đối tượng. Bài báo xem xét hai phương pháp hình thái học và lược đồ Histogram.

Phương pháp hình thái học

Ta có thể tách các vùng chứa ký tự thông qua đặc tính về hình thái học, cụ thể theo các tiêu chí như sau:

– Mật độ pixel của vùng con so với toàn bộ vùng chứa biển

– Chiều rộng và chiều cao

Ưu điểm: Không phụ thuộc vào độ nghiêng của biển số, không phụ thuộc vào nhiễu, biển số có thể không làm sạch được nhưng vẫn nhận dạng chính xác. Tuy nhiên ở giai đoạn nhận dạng ký tự tiếp theo ta cần phải xoay vùng ký tự về vị trí thích hợp.

Nhược điểm: Phụ thuộc vào độ chính xác của ảnh nhị phân có lấy hết được ảnh ký tự từ ảnh xám.

Phương pháp lược đồ Histogram

          Để khắc phục nhược điểm của phương pháp trên, tác giả sử dụng lược đồ Histogram ngang- dọc, tuy nhiên cần phải xoay vùng biển số về vị trí thích hợp trước khi tách vùng. Việc tìm góc nghiêng rất đơn giản, đầu tiên xác định điểm thấp nhất của hai vùng liên tiếp nhau có tọa độ (x1, y1), (x2, y2), tiếp theo xây dựng tam tác vuông gồm 3 đỉnh (x1, y1), (x2, y2) và (x2, y1). Cuối cùng góc quay α là góc của tam giác trên (nếu x1>x2 là góc α, ngược lại là β=90o– α).

2.4. Kỹ thuật nhận dạng ký tự

Phương pháp phổ biến nhất để nhận dạng ký tự là sử dụng mạng nơron tức là huấn luyện cho máy tính để nhận dạng các ký tự, ta có thể áp dụng nhiều phương pháp khác. Trong bài báo, tác giả đã xây dựng tập ký tự mẫu có kích thước 10×20 với 0 là điểm nền, 1 là điểm ảnh. Các vùng ký tự thu được phải đưa vể kích thước 10×20, sau đó được mã hóa thành ma trận và sử dụng mạng nơron để nhận dạng.

3. Kết luận

Bài báo đã xây dựng thuật toán được tìm vùng chứa biển số thực hiện qua hai giai đoạn lọc thô và lọc tinh. Lọc thô là sử dụng một cửa sổ trượt để tìm các vùng ảnh thỏa mãn điều kiện về Histogram của vùng biển. Lọc tinh là giai đoạn xác định các vùng đã thu được lọc thô dựa vào điều kiện về hình thái học vùng biển để tìm vùng thích hợp nhất. Cuối cùng sẽ mở rộng vùng thu được nhằm lấy được toàn bộ vùng biển và tiến hành việc cách ly ký tự. Xây dựng thuật toán nhận dạng ký tự dựa vào mạng nơron.

 

2016-03-25T09:18:28+00:00