Chương 5: CÀI ĐẶT THỰC NGHIỆM

Một phần của tài liệu Tư động nhận dạng ký tự trên biển số xe (Trang 50 - 57)

nguồn mở như OpenCV, LibSVM. Đây là hai thư viện mã nguồn mở khá nổi tiếng. OpenCV

cài đặt khá đầy đủ các thuật toán xử lý ảnh nên được sử dụng rộng rãi trong lĩnh vực xử lý ảnh. Bộ thư viện LibSVM cài đặt thuật toán SVM trên cả hai ngôn ngữ C++ và Java.

5.1. Thử nghiệm

5.1.1. Điều kiện thử nghiệm và giới hạn

Do thời gian làm đồ án có hạn và quy mô hệ thống khá lớn nên em chỉ thực hiện thử nghiệm với một số giới hạn sau:

• Chương trình là một module tách và nhận dạng ký tự trong hệ thống nhận dạng biển số xe

• Chỉ hoạt động với biển số Việt Nam tức là ở phạm vi trong nước. Nếu đưa chương trình ra hoạt động ở nước ngoài thì độ chính xác sẽ giảm và chưa chắc đã chạy đúng.

• Chương trình chỉ xử lý ảnh biển số nền trắng chữ đen, chưa xử lý biển số có màu khác.

• Vùng ảnh biển số có góc nghiêng ≤ 7o

5.1.2. Dữ liệu

Dữ liệu là tập ảnh gồm 300 chiếc, được thu thập tại các địa điểm: • Bãi giữ xe khu đô thị Văn Quán

• Xung quanh khu đô thị Văn Quán

• Nhà để xe của chung cư CT2B khu đô thị Văn Quán • Trên mạng internet

Tập dữ liệu này bao gồm cả biển số xe ô tô và xe máy.

Ảnh được chụp bằng máy điện thoại có camera 2.0Megapixel và máy ảnh kỹ thuật số 8.0Magapixel. Sau khi chụp, phần biển số xe được tách thủ công bằng Photoshop.

Hình 5.1: Tập dữ liệu

Vì tập ảnh còn nhỏ nên số lượng kí tự xuất hiện còn chưa đủ và chưa đồng đều. Số lượng các ký tự “2” và “3” xuất hiện nhiều nhất do biển dược chụp chủ yếu ở Hà Nội. Ngoài ra, do tập dữ liệu chỉ là biển trắng nên không xuất hiện các ký tự hay có trên biển xanh và biển đỏ như: A, B, D, …

5.1.3. Phương pháp

Hình 5.2: Phương pháp tách ký tự được lựa chọn

Đối với quá trình nhận dạng, em sử dụng phương pháp SVM (Support Vector Machine) phi tuyến với thư viện mã nguồn mở LibSVM.

5.1.3.1. Lựa chọn tham số

Đối với quá trình tách ký tự:

o Tách dòng:

cpeak = 0.4

cfoot = 0.3 đối với biển hai dòng ký tự

cfoot = 0.2 đối với biển một dòng ký tự o Tách ký tự:

cpeak = 0.4

 Ngưỡng chọn chân của đỉnh bằng 0 • Đối với quá trình huấn luyện:

Sử dụng nhân RBF:

Tham số gama được lựa chọn nhờ vào tool kèm theo của libSVM: γ = 0.0078125.

Ảnh xám

Ảnh xám Tiền xử lýTiền xử lý

Sobel cho biên dọc

Sobel cho biên dọc

Chiếu ngang + Chiếu dọc Chiếu ngang + Chiếu dọc Tách ký tự Tách ký tự

Hình 5.3: Kết quả chọn tham số gama bằng tool của libSVM

5.1.4. Kết quả

Với thuật toán và những tham số trình bày ở trên, em đã tiến hành cài đặt trên Visual C+ +. Tập cơ sở dữ liệu mẫu là ảnh chụp biển số xe ở Hà Nội với độ phân giải 1280 x 768, chất lượng trung bình.

Thời gian chạy của thuật toán nhỏ hơn 1s. Việc xác định tỷ lệ thành công dựa trên tỉ lệ:

soketquadung tongsobien

Một kết quả được cho là sai khi có ít nhất một ký tự sai. Nghĩa là mặc dù các ký tự khác trên biển cho kết quả nhận dạng đúng nhưng kết quả của cả biển vẫn là sai.

Kết quả thực nghiệm thu được: • Tổng số biển là 300 cái • Số kết quả đúng là 292 • Số kết quả sai là 8

Thuật toán Tỷ lệ thành công

Nhận dạng ký tự 99%

Kết quả nhận dạng chung 96,3%

5.1.5. Các lỗi nhận dạng

Nhìn chung, các thuật toán đã lựa chọn cho kết quả khả quan. Tuy nhiên vẫn còn một số trường hợp chưa giải quyết được. Có thể kể ra một số trường hợp sau:

• Ảnh chụp bị lóa do biển số có lớp kính bảo vệ

• Do đặc thù biển số xe Việt Nam hay có đinh ốc nên thường các ký tự bị dính vào nhau không tách được hoặc tách được nhưng nhận dạng sai. Đây là trường hợp chiếm phần lớn tỉ lệ không chính xác của chương trình.

• Ký tự trên biển số bị mờ do biển quá cũ

5.2. Chương trình

Giao diện của chương trình thử nghiệm:

Hình 5.4: Giao diện chính của chương trình

• Nút “Open”: Mở ảnh biển số xe • Nút “Detect”: Nhận dạng

• Ô text box: Hiển thị kết quả nhận dạng

• Menu “Training”: gồm một số menu item nhỏ để trợ giúp cho việc tạo training data.

Khi click vào nút “Detect”, sẽ có kết quả như sau:

Hình 5.5: Giải thích giao diện chính của chương trình

5.3. Hướng nghiên cứu phát triển

Với kết quả thực nghiệm trên, hướng nghiên cứu phát triển tiếp theo của em sẽ là:

• Nâng cao hiệu quả chương trình nhận dạng kí tự, cách ly các kí tự trong biển số trong các trường hợp biển số bị nhiễu nhiều, mất mát thông tin do nhiễu từ điều kiện môi trường

• Mở rộng tập ảnh mẫu để tăng độ chính xác nhận dạng

Click

• Mở rộng điều kiện nhận dạng với những biển số bị nghiêng nhiều, biển số nền xanh chữ trắng, nền đỏ chữ trắng. Và tiến tới nhận dạng nhiều loại biển nước ngoài.

• Phát triển module nhận dạng vùng biển số xe để tích hợp với module này thành một ứng dụng có thể triển khai và có tính khả dụng cao.

TÀI LIỆU THAM KHẢO

[1]. TS. Đỗ Năng Toàn, TS. Phạm Việt Bình, “Giáo trình xử lý ảnh”, Đại học Thái Nguyên, Viện Công nghệ thông tin, 11/2007.

[2]. Trần Minh Văn, Luận văn thạc sỹ công nghệ thông tin: “Tìm hiểu phương pháp SVM và ứng dụng trong nhạn dạng chữ viết tay trực tuyến”, Đại học Quốc gia thành phố Hồ Chí Minh, trường Đại học Khoa học tự nhiên, 2004.

[3]. Ondrej Martinsky, “Algorithmic and mathematical principles of automatic number plate recognition systems”, BRNO University Of Technology, 2007.

[4]. THS Trần Thái Anh Âu, SV Doãn Đạt Phước, SV Nguyễn Đồng Hải Dương, “Tự động nhận dạng biển số đăng ký xe trong ảnh chụp từ camera”, Khoa Điện kỹ thuật, Đại học Bách Khoa, Đại học Đà Nẵng, 2008

[5] “Nhập môn xử lý ảnh”, Đại học Bách Khoa Hà Nội

[6] Ho C. H., Koay S. B., Lee M. H., M. Moghavvemi, M. R. Tamjis, “License Plate Recognition”, Department of Electrical Engineering, Engineering Faculty, University of Malaya [7] Hakob Sarukhanyan, Souren Alaverdyan, Grigor Petrosyan “Automatic Number Plate Recognition System”, Institute for Informatics and Automation Problems of NAS RA, Yerevan, Armenia, hakop, ouren, rigor@ipia.sci.am

[8] Duan. T.D., Du. T.L.H., Phuoc. T.V, Hoang. N.V, “Building an Automatic Vehicle License- Plate Recognition System”, International Conference in Computer Science, 2005

[9] Sorin Draghici, “A neural network based artificial vision system for licence plate recognition” , Dept. of Computer Science, Wayne State University, sod@cs.wayne.edu, 1997 [10] CHRISTOPHER J. C. BURGES, “A Tutorial on Support Vector Machines for Pattern Recognition”, Bell Laboratories, LucentTechnologies, burges@lucent.com

Một phần của tài liệu Tư động nhận dạng ký tự trên biển số xe (Trang 50 - 57)

Tải bản đầy đủ (DOC)

(57 trang)
w