Thứ Sáu, 23 tháng 5, 2014

Hệ thống nhận dạng biển số xe

Hệ thống tự động nhận diện bảng số xe, Automatic Number Plate Recognition (ANPR), là hệ thống sử dụng camera để thực hiện việc kiểm tra, xác định biển số của phương tiện một cách tự động, từ đó có khả năng hỗ trợ truy vấn các thông tin chi tiết cấp cao hơn như tên chủ phương tiện, thông tin đăng kí, ... Hệ thống này được ứng dụng nhằm giải quyết các vấn đề liên quan tới an ninh, thống kê khảo sát, giám sát và theo vết....
Có rất nhiều giải pháp, thiết kế hệ thống, thiết bị khác nhau để giải quyết các yêu cầu liên quan tới lĩnh vực này tùy theo từng điều kiện áp dụng: ban đêm hay ban ngày, không gian mở hay đóng, ứng dụng chuyên trách (bãi giữ xe, ...) hay ứng dụng kết hợp (giám sát giao thông, hệ thống theo dõi an ninh, ...), ứng dụng cục bộ hay diện rộng trên phạm vị công cộng, tính địa phương ...

Từ những phân loại yêu cầu cụ thể phong phú trên ta có thể rút ra những khó khăn mà một hệ thống ANPRthông thường phải vượt qua để đạt độ chính xác được chấp nhận đó là:
  • Điều kiện tự nhiên của không gian và thời gian áp dụng hệ thống: ánh sáng, thời tiết, ...Điều này rất dễ hiểu vì rỏ ràng nhận diện biển số của một chiếc xe khi trời đang mưa bao giờ cũng khó khăn hơn khi trời nắng ráo. 
  • Điều kiện bối cảnh: Trong một nơi mà phông nền đơn giản chỉ với các mặt phẳng thì bao giờ việc nhận diện cũng dễ hơn là một nơi mà khung cảnh hỗn độn, người xe tấp nập.
  • Điều kiện quy định định dạng của biển số: cái này khác nhau tùy theo quy định mỗi quốc gia, khu vực, nơi thì dùng hệ thống chử tượng hình, nơi thì chử alphabet, nơi chỉ toàn số, nơi áp dụng cả số lẫn chử, và nơi thì biển số hình chử nhật 1 hàng, nơi 2 hàng, rồi màu sắc của biển số ... ôi thôi thì tùm lum tà la loạn hết cả.
  • Điều kiện hiện trạng của biển số: bạn nên nhớ rằng không phải mọi biển số đều có hiện trạng mới ra lò, chúng có thể cong vênh, sơn có thể tróc, bạc màu...
  • Điều kiện về cách thức bố trí thiết bị: cách lắp đặt camera sẽ cho bạn một cơ hội hay thách thức trong quá trình chạy thuật toán. Tốc độ di chuyển của xe, tốc độ bắt hình của camera cũng tạo ra những vấn đề không nhỏ.
Có lẽ bạn sẽ tự hỏi tại sao tôi lại nói quá nhiều về những vấn đề có phần bên lề ở trên như vậy? Thật ra tôi chỉ muốn nhấn mạnh một điều là trước khi bạn xây dựng một hệ thống hãy cố gắng để trả lời các câu hỏi đại lọai như hệ thống sẽ chạy ở đâu, điều kiện thế nào và nó dùng phục vụ cho việc gì một cách cụ thể. Nhờ điều này (prior-knowledge) bạn sẽ loại bỏ bớt các thách thức, tập trung vào giải quyết các vấn đề ảnh hưỡng trực tiếp để có một kết quả tốt. Một lần nữa tôi muốn bạn hãy ghi nhớ là không có một thuật toán, giải thuật, giải pháp nào là tối ưu tốt nhất cho mọi điều kiện ứng dụng.

Quy trình thường thấy của quá trình xử lý nhận diện bảng số xe sẽ thông qua các bước như sau:

Trong đó:
  1. là quá trình capture từng khung hình trong video stream liên tục từ camera. Quá trình bắt hình được thực hiện tự động liên tục, theo chu kì, hay tùy vào sự quyết định của các điều kiện khác.
  2. Tại đây các phép tiền xử lý ảnh như: chuyển đổi không gian màu, khử nhiễu, cân bằng sáng ... được tiến hành nhằm chuẩn bị dữ liệu tốt, phù hợp tùy theo yêu cầu của các thuật toán xử lý ở mức cao hơn.
  3. Thuật toán dò tìm, trích xuất vùng tương ứng với biển số xe trên khung hình (License Plate Detection). Thuật toán này có thể dựa trên các đặc tính về màu sắc, diện tích, độ góc cạnh, đường thẳng để chọn ra vùng có khả năng là biển số xe cao.
  4. Từ vùng biển số xe ta tiếp tục phân vùng từng kí tự trong đó để chuẩn bị tiến hành nhận dạng.
  5. Optical Character recognition (OCR) Bộ nhận diện kí tự nhận đầu vào là các ảnh có kí tự riêng rẽ và cho ra kí tự văn bản tương ứng. Hiện nay mạng Neuron là hệ thống máy học được sử dụng phổ biến cho việc phân loại này, ngoài ra các giải thuật so khớp mẫu (Template Matching) cũng được áp dụng tùy theo tình huống.
    Biển số Xe = 6562718 
  6. Từ kết quả nhận diện của bước 5 ta đã thực hiện việc chuyển đổi từ hình ảnh của biển số sang giá trị văn bản. Dựa vào giá trị văn bản đã có thì việc tạo ra các câu truy vấn để truy xuất thông tin về biển số đó trong cơ sở dữ liệu là xử lý hết sức dễ dàng.
Quá trình xử lý này sẽ được tích hợp trong một hệ thống ứng dụng đầy đủ với nhiều thiết bị, hệ thống khác để làm nên một hệ thống vận hành đáp ứng nhu cầu nào đó, ví dụ như với hệ thống bãi giữ xe thông minh dưới đây.


Bài viết này mong muốn mang lại cho các bạn một cái nhìn mang tính cơ sở về một hệ thống nhận diện bảng số xe. Trình tự xử lý ở trên chỉ ở mức tổng quan và tham khảo cho những người mới, với vị trí là người đọc tôi mong rằng các bạn hãy tiếp nhận những gì đã trình bày ở đây cũng như tất cả các bài viết khác của Bioz thông qua một cách suy nghĩ cởi mở. Thực tiễn triển khai các thuật toán, ứng dụng không tuân theo bước, trình tự một cách thực sự rạch ròi như lý thuyết. Kiến thức hoàn chỉnh cho việc xây dựng ứng dụng thông minh chính là sự tập hợp của tất cả các bài viết của Bioz trên IEEV.

Không có nhận xét nào:

Đăng nhận xét