53
LIỆT KÊ CÁC HÌNH Hình 2.1a: Các đặc trưng cạnh Hình 2.1b: Các đặc trưng đường Hình 2.1c: Các đặc trưng bao quanh tâm Hình 2.1d: Đặc trưng đường chéo Hình 2.2: Mô phỏng quá trình nhận dạng Hình 2.5: Lược đồ cơ bản của AdaBoost Hình 2.6: Thuật toán học AdaBoost Hình 2.8: Dùng chuỗi cascade đã được huấn luyện để phát hiện cửa sổ con phù hợp Hình 2.9: Cấu trúc các chuỗi cascade song song Hình 2.10: Cấu trúc các chuỗi cascade nối tiếp, với N giai đoạn học huấn luyện Hình 2.11: Kiểm thử cơ sở dữ liệu “20_800_1600.xml” Hình 3.1 - Ảnh sau khi được nhị phân hóa Hình 3.2 - Ảnh tách ký tự Hình 3.3 – Nhận dạng ký tự Hình 4.1 Một số hình ảnh thử nghiệm

Nhan Dien Bien So Xe

Embed Size (px)

Citation preview

Page 1: Nhan Dien Bien So Xe

LIỆT KÊ CÁC HÌNH

Hình 2.1a: Các đặc trưng cạnh

Hình 2.1b: Các đặc trưng đường

Hình 2.1c: Các đặc trưng bao quanh tâm

Hình 2.1d: Đặc trưng đường chéo

Hình 2.2: Mô phỏng quá trình nhận dạng

Hình 2.5: Lược đồ cơ bản của AdaBoost

Hình 2.6: Thuật toán học AdaBoost

Hình 2.8: Dùng chuỗi cascade đã được huấn luyện để phát hiện cửa sổ con phù hợp

Hình 2.9: Cấu trúc các chuỗi cascade song song

Hình 2.10: Cấu trúc các chuỗi cascade nối tiếp, với N giai đoạn học huấn luyện

Hình 2.11: Kiểm thử cơ sở dữ liệu “20_800_1600.xml”

Hình 3.1 - Ảnh sau khi được nhị phân hóa

Hình 3.2 - Ảnh tách ký tự

Hình 3.3 – Nhận dạng ký tự

Hình 4.1 Một số hình ảnh thử nghiệm

Page 2: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

PHẦN A

GIỚI THIỆU

Page 3: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

TÓM TẮT ĐỀ TÀI

Trong thời đại của thế kỷ 21, với sự phát triển nhảy vọt của trình độ Khoa học

kỹ thuật, con người đã tạo nên và phát triển nhiều công trình khoa học mang tính

tầm cỡ. Với sự thay thế dần của máy móc cho con người trong các nhiệm vụ mang

tính chính xác và tập trung cao thì kết quả đạt được đã hoàn toàn được tin cậy và

đánh giá cao. Điều này thực sự có ý nghĩa to lớn và góp phần tăng thêm giá trị và

chất lượng cuộc sống.

Đề tài nghiên cứu khoa học này, nhận dạng biển số xe trên cơ sở thị giác máy

tính, cũng không nằm ngoài ý nghĩa đó. Đây là một dạng ứng dụng thú vị mà nhiều

nhà khoa học đã, đang nghiên cứu vì nhu cầu thực tiễn và đa dạng phương pháp tiếp

cận.

Trong đề tài này sẽ trình bày trong đó các vấn đề liên quan tới kiến thức nền

tảng xây dựng. Học viên đã sử dụng công cụ EMGUCV ứng dụng các đặc trưng

Haar-like chạy trên nền tảng Visual C#.NET và thuật toán tăng tốc AdaBoost nhằm

nâng cao khả năng phát hiện biển số xe chính xác và nhận dạng ký tự dùng thư viện

Tesseract.

Nội dung đề tài gồm 5 chương:

Chương 1: Giới thiệu tổng quan

Chương 2: Trích xuất biển số xe

Chương 3: Nhận dạng ký tự

Chương 4: Kết quả - Nhận xét

Chương 5: Kết luận và hướng phát triển đề tài

Page 4: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

PHẦN B

NỘI DUNG

Page 5: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

CHƯƠNG 1

GIỚI THIỆU TỔNG QUAN

1.1 GIỚI THIỆU

Thị giác là giác quan cho phép con người cũng như hầu hết các loài động vật

khác thu thập thông tin nhanh nhất, tinh tế nhất và cũng là kênh thông tin trao đổi

tin cậy giúp đưa ra những quyết định kịp thời và nhanh chóng trong hầu hết các hoạt

động trong thực tế của con người. Vì vậy, với ý nghĩa vô cùng quan trọng đó, cùng

với sự phát triển của khoa học kĩ thuật và ứng dụng của nó trong nhiều lĩnh vực đã

được tiến hành rộng rãi, nhất là trong ứng dụng liên quan tới xử lý ảnh của đối

tượng cụ thể.

Thông thường, các đặc tính của xử lý và phân tích ảnh chủ yếu bị ảnh hưởng

bởi đặc tính của ảnh tĩnh và ảnh động (video). Các lý do có thể đưa ra là: vị trí

tương quan giữa máy ảnh và đối tượng, xe bị che khuất một phần hoặc toàn phần;

sự kết hợp của các đặc điểm xe cộ, kích thước, màu sắc, ảnh hưởng của cảnh nền

(độ sáng chói, độ tương phản, nhiễu giống đối tượng, …) là rất khác nhau, và nó

ảnh hưởng đến chất lượng của quá trình phát hiện và nhận dạng . Còn ảnh hưởng về

mặt chủ quan cũng có thể kể đến như hướng quan sát ghi hình của camera, hướng

ánh sáng, đặc tính kỹ thuật của máy ảnh, camera, tốc độ hệ thống máy xử lý chủ

(máy tính PC hoặc laptop) cũng gây ra ảnh hưởng không nhỏ đến đề tài.

Page 6: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

1.2 MỤC ĐÍCH NGHIÊN CỨU

Hệ thống nhận dạng biển số xe dùng trong quan sát giao thông, tại các bãi giữ

xe tự động và bán tự động hay xác định xe vi phạm giao thông là những ứng dụng

quan trọng trong cuộc sống hiện đại hàng ngày. Với hệ thống như vậy thì một thuật

toán phát hiện và nhận dạng chính xác là cần thiết khi đầu vào của hệ thống là một

chuỗi hình ảnh hoặc video.

1.3 MỤC TIÊU ĐỀ TÀI

Nghiên cứu ứng dụng và xây dựng phần mềm phát hiện và nhận dạng biển số

xe trên cơ sở thị giác máy tính.

1.4 NHIỆM VỤ

Phân tích phương pháp nhận biển số xe.

Phân tích phương pháp nhận dạng ký tự

1.4.1 Phạm vi thực hiện

Về lý thuyết: xác định phương pháp phù hợp để phát hiện và nhận dạng biển

số xe.

Về ứng dụng: chương trình phần mềm phát hiện và nhận dạng biển số xe.

Các điều kiện thực hiện: hình chụp trực diện từ phía sau đuôi của xe, cường

độ ánh sáng là 300 500 lux (độ sáng tiêu chuẩn bình thường) hoặc ánh

sáng ngoài trời ban ngày bình thường, tình trạng biển số tốt và không bị chói

sáng.

Đối tượng là các biển số xe hình chữ nhật (xe hơi cá nhân, xe buýt, xe tải

container và xe máy), biển số xe tốt (không bị biến dạng, chói sáng).

Page 7: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

CHƯƠNG 2

GIỚI THIỆU TỔNG QUAN VỀ HỆ

THỐNG NHẬN DẠNG BIỂN SỐ XE

2.1. Tình hình nghiên cứu trong và ngoài nước

2.1.1. Tình hình nghiên cứu trong nước

Ở Việt Nam, hệ thống nhận dạng biển số xe mới đầu đã được nghiên cứu và

đã đưa vào sử dụng nhưng không phổ biến, do các hệ thống này không thích ứng vì

tính phức tạp của giao thông, sự đa dạng của biển số cũng như phương tiện tham gia

giao thông (xe máy nhiều hơn ôtô, biển số không theo một quy chuẩn, không rõ

ràng). Hiện nay, các bãi đỗ xe ở các đô thị, thành phố lớn ở Việt Nam mới đáp ứng

được 10% nhu cầu của người dân nên Nhà nước càng chú trọng việc xây dựng các

bãi đỗ xe hơn đặc biệt là các bãi đỗ xe lắp ghép cao tầng và ngầm kéo theo các hệ

thống nhận dạng biển số xe tự động sẽ được quan tâm đầu tư và xây dựng trong thời

gian tới. Đứng trước nhu cầu thực tế đó, đã có rất nhiều nhóm sinh viên, các doanh

nghiệp và các nhà nghiên cứu đã tìm hiểu và đã xây dựng thành công các hệ thống

nhận dạng biển số xe như: nhóm Mắt thần thuộc Trung tâm Công nghệ Mô phỏng -

Học viện Kỹ thuật quân sự đã nghiên cứu thành công và cho ra đời sản phẩm “Hệ

thống quản lý bãi xe thông minh ứng dụng công nghệ nhận dạng biển số kết hợp

công nghệ thẻ” năm 2006 , Công ty cổ phần đầu tư phát triển phần mềm Biển Bạc

đã nghiên cứu và phát triển thành công phần mềm STM01 trong quản lý phương

tiện và phát hiện vi phạm giao thông, năm 2010.

Page 8: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

2.1.2. Tình hình nghiên cứu ngoài nước

Trên thế giới đã xây dựng thành công các hệ thống nhận dạng như hệ thống

nhận dạng khuôn mặt người, nhận dạng vân tay, nhận dạng ký tự viết tay, phân loại

ảnh, phân loại văn bản thành nhiều loại khác nhau…Đặc biệt hệ thống nhận dạng

biển số xe đã được thế giới chú ý và quan tâm từ rất lâu đặc biệt tại các nước phát

triển. Một số ứng dụng của bài toán nhận dạng biển số xe như để kiểm soát giao

thông, thu phí điện tử, thu phí giảm ách tắc giao thông. Singapore là quốc gia đầu

tiên trên thế giới áp dụng loại hình thu phí đối với phương tiện tham gia giao thông

từ gần 30 năm nay. Sự thành công của mô hình thu phí đường bộ ERP tại Singapore

đã được nhiều thành phố tại các quốc gia khác áp dụng như London (Anh), Toronto,

Ontario (Canada), Stockholm (Thụy Điển)... Indonesia cũng quyết định sử dụng

ERP tại thủ đô Jakata và 4 thành phố lớn khác trong nỗ lực giảm tắc nghẽn giao

thông trong giờ cao điểm ở những con đường huyết mạch.

Hình 2.1: Hệ thống thu phí đường bộ ERP tại Singapore

2.2. Tổng quan về hệ thống nhận dạng biển số xe

Page 9: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

2.2.1. Khái niệm hệ thống nhận dạng biển số xe

Hệ thống tự động nhận dạng biển 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…

Hình 2.2: Mô hình hệ thống nhận dạng biển số xe tự động

Các thành phần chính của hệ thống nhận dạng biển số xe:

Phần cứng: camera thu nhận hình ảnh, máy tính hay bộ xử lý chuyên

dụng

Phần mềm: hệ thống xử lý hình ảnh thu được từ camera và cho ra kết

quả.

Những khó khăn mà một hệ thống ANPR thô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, điều kiện bối cảnh, điều kiện quy định định dạng của biển số, điều

kiện hiện trạng của biển số và điều kiện về cách thức bố trí thiết bị.

Sơ đồng khối một hệ thống nhận dạng biển số xe :

Page 10: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Bắt hình từ Camera

So khớp biển số xe với các biển số có trong cơ sở dữ liệu để truy vấn thông tin

Tiền xử lý ảnh nhằm chuẩn bị cho các bước sau

Xử lý trích xuất vùng biển số xe

Cô lập các ký tự trong biển số xe

Nhận diện các kí tự bằng OCR

1

5

4

3

2

6

Hình 2.3: Nguyên lý hoạt động của hệ thống nhận dạng biển số xe

2.2.2. Ứng dụng hệ thống nhận dạng biển số xe

a. Hệ thống quản lý bãi đỗ xe

Hệ thống hướng dẫn đỗ xe thông minh: giúp người lái xe định vị và tìm vị trí

đỗ xe gần nhất một cách hiệu quả sử dụng các biển chỉ dẫn, đèn báo.

Hệ thống kiểm soát vào ra: có chức năng kiểm soát vé bằng thẻ thông minh

kết hợp với công nghệ xử lý ảnh nhận dạng biển số nhằm đảm bảo tính an

ninh đồng thời giúp cho người quản lý có thể kiểm soát được thông tin chính

xác và đầy đủ của từng xe ra vào bãi đỗ.

Page 11: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Phần mềm quản lý bãi đỗ xe: quản lý vào ra, tính phí và giám sát mọi hoạt

động của bãi đỗ hoàn toàn tự động, báo cáo thống kê theo thời gian cho

nhiều mục đích.

Hệ thống đếm xe: nhằm thống kê số lượng xe vào ra, kiểm soát tới từng tầng,

từng khu vực của bãi đỗ giúp người quản lý có những thông tin chính xác về

số chỗ còn trống của bãi đỗ.

Hình 2.4: Hệ thống quản lý bãi gửi xe tự động

b. Trạm thu phí đường bộ

Công nghệ xử lý ảnh và nhận dạng biển số giúp cho quá trình kiểm soát vé,

thu phí, đóng mở barrier tự động trở nên nhanh chóng giảm ách tắc giao thông trong

giờ cao điểm cũng như tiết kiệm chi phí thuê công nhân.

c. Kiểm soát xe tại các đường biên giới và các trạm gác cống

Việc lắp hệ thống “Nhận dạng biển số xe” tại các trạm kiểm soát xe tại các

đường biên giới nhằm quản lý và phát hiện những phương tiện vượt biên giới bất

Page 12: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

hợp pháp, góp phần hỗ trợ công tác kiểm tra và anh ninh quốc gia. Còn lắp đặt ở

trạm gác cổng sẽ hỗ trợ hoặc tự động hóa công tác mở cổng cho xe vào.

d. Điều tiết giao thông

Hệ thống còn được ứng dụng trong điều tiết giao thông tại các vị trí nhạy

cảm của giao thông như ngã ba, ngã tư đường giao nhau nhằm giảm ắc tắc giao

thông (chẳng hạn như Thành phố Dublin đã ứng dụng công nghệ “Nhận dạng biển

số xe tự động” trong việc điều tiết giao thông theo dạng biển số chẳn/lẻ). Ngoài ra,

hệ thống còn được sử dụng để kiểm soát, phát hiện những hành vi vi phạm an toàn

giao thông nhằm giảm tỉ lệ tai nạn giao thông.

Hình 2.5: Hệ thống phát hiện vi phạm giao thông.

Page 13: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

CHƯƠNG 3

TRÍCH XUẤT BIỂN SỐ XE

3.1 CÁC PHƯƠNG PHÁP PHÁT HIỆN

Phát hiện hay phát hiện đối tượng chuyên biệt, ví dụ như biển số xe trong cảnh

quan giao thông, liệu có xuất hiện trong ảnh thu được từ camera (hình động) hay

những tấm hình tĩnh dựa trên sự trợ giúp của máy tính từ lâu đã được con người

nghiên cứu và phát triển bởi nó đóng vai trò là cơ sở chung và là nền tảng để nghiên

cứu và ứng dụng trong các lĩnh vực và các hệ thống khác. Trong quá trình nghiên

cứu và phát triển, thì yêu cầu được đặt lên hàng đầu là yếu tố chính xác.

Có hai hướng tiếp cận chính thường được sử dụng để phát hiện biển số xe: các

phương pháp dựa trên ảnh và các phương pháp dựa trên dạng hình học. Các phương

pháp có thể được liệt kê ra như sau :

3.1.1 Phát hiện dựa trên ảnh

Các phương pháp thuộc nhóm này dựa trên một tập hợp các hình mẫu của đối

tượng và sử dụng cửa sổ trượt để phát hiện. Cách làm này khác biệt so với các

phương pháp dựa trên khuôn mẫu . Để trích đặc trưng từ các mẫu ví dụ, cần phải

thực hiện việc cho học huấn luyện dưới dạng thống kê hoặc các thuật toán học máy

với đủ nhiều các mẫu ảnh có chứa đối tượng xe và không chứa đối tượng.

Do nhóm phương pháp này dựa trên việc huấn luyện sao cho thu được mô

hình đối tượng xe từ một tập dữ liệu tích cực (ảnh có chứa hình đối tượng) và một

Page 14: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

tập dữ liệu không tích cực (ảnh không chứa hình đối tượng) nên chúng có sự tương

quan so sánh trực tiếp đến các đặc điểm hình học của một kiểu xe điển hình.

Nhược điểm của phương pháp này đòi hòi phải luôn có sẵn cơ sở dữ liệu hình

xe rất lớn. Để có thể phát hiện được biển số xe, máy tính phải luôn dò trong cơ sở

dữ liệu hình này rồi mới đưa ra kết quả.

3.1.2 Phát hiện dựa trên dạng hình học

Khác với phương pháp vừa nêu ở trên, các phương pháp thuộc nhóm này quan

tâm đến các đặc điểm cấu trúc hình học của biển số xe. Vì vậy chúng còn được gọi

là nhóm tiếp cận dựa trên đặc trưng.

Cụ thể, phương pháp này xác định biển số xe dựa trên đặc trưng biên với hình

dạng của biển số xe với các kích thước được quy định về chiều cao, chiều rộng đặc

trưng.

Nhược điểm của phương pháp này là nó phụ thuộc rất lớn vào bước trích lọc

đặc trưng biên của ảnh.

3.1.3 Phát hiện dựa trên phương pháp máy học

Các mẫu chuẩn của biển số xe được học từ một tập ảnh mẫu, phương

pháp này áp dụng các kỹ thuật theo hướng xác suất thống kê và học máy để tìm ra

những đặc tính liên quan của biển số xe và không phải là biển số. Các đặc tính đã

được học ở trong hình thái các mô hình phân bố hay các tham số của một hàm số

nên có thể dùng các đặc tính này để xác định biển số xe.

Phương pháp này pháp hiện biển số xe bằng cách dùng cửa sổ dịch chuyển

quét toàn bộ ảnh. Mỗi cửa sổ con được quét sẽ được đưa vào một trong hai lớp: lớp

có chứa biển số xe hoặc lớp không có chứa biển số xe.

3.2 PHƯƠNG PHÁP ĐƯỢC SỬ DỤNG TRONG ĐỀ TÀI

Page 15: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Trong đề tài này, việc phát hiện xe là sự kết hợp giữa một thuật toán tăng tốc

AdaBoost (Adaptive Boost – tăng tốc thích nghi) và đặc tính đáp ứng nhanh của các

đặc trưng Haar. Đây là một phương pháp máy học tốt và rất mạnh mẽ được đề xuất

bởi Viola & Jones.

3.2.1 Các đặc trưng Haar-like

Mỗi một đặc trưng Haar-like bao gồm 2 hoặc 3 khối hình màu trắng và đen

liên kết nhau.

Hình 2.1a: Các đặc trưng cạnh

Hình 2.1b: Các đặc trưng đường

Page 16: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Hình 2.1c: Các đặc trưng bao quanh tâm

Hình 2.1d: Đặc trưng đường chéo

Giá trị của đặc trưng Haar-like được xác định bởi độ chênh lệch giữa tổng các

giá trị pixel mức xám nằm trong vùng đen so với vùng trắng.

Để phát hiện đối tượng, ảnh đầu vào được phát hiện bằng một cửa sổ con

có chứa đặc trưng Haar-like. Dựa trên từng đặc trưng Haar-like , một bộ phân

loại yếu được quy định như sau:

Page 17: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Hình 2.2 Mô phỏng quá trình nhận dạng

3.2.2 Thuật toán tăng tốc AdaBoost

AdaBoost (Adaptive Boost) là một thuật toán học mạnh, giúp đẩy nhanh việc

tạo ra một bộ phân loại mạnh bằng cách chọn các đặc trưng tốt trong một họ các bộ

phân loại yếu và kết hợp chúng lại tuyến tính bằng cách sử dụng các trọng số (Hình

2.3). Điều này thật sự cải thiện dần độ chính xác nhờ áp dụng hiệu quả một chuỗi

các bộ phân loại yếu.

Hình 2.3: Lược đồ cơ bản của AdaBoost

Page 18: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Thuật toán học này ban đầu duy trì một phân bố chuẩn (tương đồng nhau) các

trọng số lên mỗi một mẫu huấn luyện. Trong bước lặp đầu tiên, thuật toán huấn

luyện một bộ phân loại yếu bằng cách dùng một đặc trưng Haar-like đã thực hiện tốt

nhất việc phát hiện các mẫu thử huấn luyện. Trong lần lặp thứ hai, các mẫu thử

dùng cho huấn luyện nhưng bị phân loại nhầm bởi bộ phân loại yếu đầu tiên được

nhận trọng số cao hơn sao cho đặc trưng Haar-like được chọn lần này phải tập trung

khả năng tính toán cho các mẫu thử bị phân loại nhầm này. Sự lặp lại tiếp tục thực

hiện và các kết quả cuối cùng sẽ là một chuỗi cascade các kết hợp tuyến tính của

các bộ phân loại yếu, tạo ra một bộ phân loại mạnh, giúp tạo được độ chính xác

mong muốn. Thuật toán học AdaBoost sau 3 lần lặp được minh họa trong Hình 2.4

là một ví dụ thuật toán AdaBoost sau ba lần lặp.

Bộ phân loại mạnh cuối cùng là sự kết hợp có trọng số của các bộ phân loại

yếu:

Hình 2.4: Thuật toán học AdaBoost

Page 19: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Trong thực tế, chuỗi tầng các bộ phân loại được triển khai nhằm tăng tốc độ

thực thi của thuật toán phát hiện. Trong giai đoạn đầu của quá trình huấn luyện,

ngưỡng của bộ phân loại yếu được điều chỉnh đủ thấp sao cho xấp xỉ 100% các đối

tượng đích có thể được dò ra trong khi vẫn giữ tỉ lệ nhận dạng sai mẫu không tích

cực gần bằng zero. Sự cân bằng của một ngưỡng thấp gắn liền với tỉ lệ phát hiện sai

mẫu tích cực cao hơn. Một mẫu tích cực ngõ ra từ bộ phân lớp đầu tiên là thông số

đặt ngõ vào cho bộ phân lớp thứ hai, cũng sẽ được điều chỉnh sao cho đạt được tỉ lệ

phát hiện rất cao. Tương tự như thế, một mẫu tích cực xuất ra từ bộ phân lớp thứ hai

lại tiếp tục là thông số đặt ngõ vào cho bộ phân lớp thứ ba, …

Các cửa sổ con là tích cực (phù hợp, dò đúng đối tượng) nếu được cho qua tại

từng bộ phân lớp của chuỗi cascade đã được huấn luyện. Nếu không, một ngõ ra

trên chuỗi sẽ loại bất kì cửa sổ không phù hợp ngay lập tức (Hình 2.5).

Hình 2.5: Dùng chuỗi cascade đã được huấn luyện để phát hiện cửa sổ con phù hợp

3.2.3 Tầng phân loại (cascade)

Tầng (đợt) của bộ phân loại bao gồm các cây (tree) giá trị giảm dần sau mỗi

giai đoạn (stage) mà bộ phân loại được huấn luyện để nhận dạng hầu hết các đối

tượng vật thể mong muốn, đồng thời cũng loại bỏ các đối tượng không được huấn

Page 20: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

luyện. Ví dụ, trong luận văn này, các bộ phân loại được huấn luyện qua ít nhất 20

giai đoạn (stage). Đến giai đoạn cuối cùng, giá trị false alarm =

và độ trùng khít (hit rate) khoảng . (Hình 2.6)

Hình 2.6: Cấu trúc các chuỗi cascade nối tiếp, với N giai đoạn học huấn luyện

Giả sử, thiết lập ban đầu với các giá trị

Stage 1:

Stage 2:

Stage 3:

Stage N:

Tại mỗi giai đoạn huấn luyện stage, bộ phân loại tạo ra thông số hit-rate h và

false-alarm rate f mới làm ngõ vào thông số đặt cho giai đoạn huấn luyện kế tiếp

sau.

Ứng với mỗi giai đoạn được huấn luyện sử dụng một trong phương pháp tăng

tốc. Bộ tăng tốc có thể học huấn luyện bởi một một phân loại mạnh dựa trên một tập

hợp các bộ phân loại yếu bằng cách dò lại trọng số các mẫu huấn luyện. Bộ phân

loại yếu được dùng cho giai đoạn đầu của quá trình huấn luyện, dùng để tập hợp và

đúc kết các đặc trưng sơ của tập huấn luyện. Tại mỗi tầng huấn luyện, bộ phân loại

dựa theo các đại lượng đặc trưng vừa được cập nhật tại tầng kế trước (false-alarm,

hit-rate) được thêm vào nhằm tăng thêm tính chính xác trong quá trình tính toán

trọng số đặc trưng. Với việc tăng dần số giai đoạn huấn luyện và số lượng các bộ

Page 21: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

phân loại yếu, sẽ là cần thiết để tính ra các thông số false-alarm rate ứng với mỗi

hit-rate đã tính được sẽ làm tăng tính chính xác cho tác vụ phát hiện đối tượng.

2.3 XÂY DỰNG HỆ THỐNG

2.3.1 Xây dựng cơ sở dữ liệu

2.3.1.1 Thu thập hình ảnh xe

Nhờ vào việc sử dụng các công cụ tìm kiếm trên internet và từ các nguồn ảnh

tin cậy có sẵn, chúng em đã sử dụng để sưu tầm các mẫu xe nhằm mục đích xây

dựng cơ sở dữ liệu các phân loại xe để phục vụ cho đề tài. Các nguồn ảnh tích cực

đó được học viên sưu tầm bao gồm các nguồn dữ liệu và địa chỉ:

Google Image

Flickr của Yahoo!

Photobucket.com

Ảnh do tự chụp

Các ảnh không tích cực (không chứa hình đối tượng) được lấy từ nguồn dữ

liệu có sẵn với các dạng hình phong cảnh thiên nhiên, hình chân dung, động thực

vật, nội thất, kiến trúc,…

2.3.1.2 Tiến hành học huấn luyện cho máy tính

Sử dụng lệnh Createsamples và Haartrainning để huấn luyện tạo cơ sở dữ liệu

đặc trưng và xuất cơ sở dữ liệu đó ra dạng file .xml phục vụ trong mã lệnh chương

trình phần mềm nhận dạng.

Tạo file học vector “vector.vec” dùng lệnh:

Mẫu lệnh thi hành

createsamples.exe -info positive/info.txt -vec data/vector.vec -num 466 –maxxangle 1.1 –

maxyangle 1.1 –maxzangle 0.5 -w 20 -h 20

với,

Page 22: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

-info positive/info.txt : file chứa thông tin tọa độ của khung chữ nhật bao đặc trưng đối

tượng trong ảnh mẫu.

-vec data/vector.vec : đường dẫn chứa file vector.vec tạo ra ở trên.

-num 466 : bộ huấn luyện gồm 466 ảnh tích cực (có chứa đối tượng).

-w 20 : chiều rộng mẫu ngõ ra (tính theo pixel).

-h 20 : chiều cao mẫu ngõ ra (tính theo pixel).

Các thông số maxxangle , maxyangle , maxzangle quy định các góc xoay tối đa theo các

hướng trong không gian của đối tượng mà đảm bảo đối tượng vẫn được phát hiện.

Tiến hành học huấn luyện cho máy tính:

Mẫu lệnh thi hành

haartraining.exe -data data/cascade -vec data/vector.vec -bg negative/infofile.txt -npos 466 -

nneg 3125 -nstages 24 -mem 1200 -mode ALL -w 20 -h 20 –nonsym –minhitrate 0.995 –

maxfalsealarm 0.5 –weighttrimming 0.95

với,

-data data/cascade : đường dẫn chứa các file thông số ngõ ra được cập nhật(false-

alarm , hit-rate) của từng tầng huấn luyện (cascade).

-vec data/vector.vec : đường dẫn chứa file vector.vec đã tạo ra ở trên

-bg negative/infofile.txt : đường dẫn đến file chứa các ảnh không tích cực

-npos 466 : số lượng ảnh tích cực (giống khai báo ở phần trên)

-nneg 3125 : số lượng ảnh không tích cực (thông tin các file này được chứa trong file

infofile.txt)

-nstages 24 : số lượng giai đoạn (stage) huấn luyện

-mem 1200 : dung lượng bộ nhớ cần cho quá trình huấn luyện (MB). Máy tính có bộ

nhớ RAM càng nhiều thì quá trình huấn luyện xảy ra càng nhanh.

-nonsym : khai báo các đối tượng huấn luyện là không có tính đối xứng

–minhitrate 0.995 –maxfalsealarm 0.5 –weighttrimming 0.95: là các thông số quy chuẩn về

độ trùng khít (phù hợp – hit rate) tối thiểu, ngưỡng sai (false alarm) và trọng số

Page 23: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

huấn luyện. Các giá trị trên là mặc định, hoặc có thể thay đổi tùy theo “độ khó” của

đối tượng và số lượng ảnh mẫu.

2.3.2 Ghi nhận và thử mẫu cơ sở dữ liệu kết quả

Tiến hành kiểm thử tập cơ sở dữ liệu với 30 ảnh tĩnh xe. Kết quả là có 28 ảnh

được phát hiện đúng đối tượng trong ảnh, đạt tỉ lệ 93,33%.

Thử nghiệm :

Page 24: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Hình 3.11: Kiểm thử cơ sở dữ liệu “20_800_1600.xml”

Page 25: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

CHƯƠNG 4

NHẬN DẠNG KÝ TỰ

4.1 PHƯƠNG PHÁP NHẬN DẠNG

Phương pháp nhận diện ký tự gồm các giai đoạn sau :

4.1.1 Thu nhận ảnh

Xác định mức xám để nhị phân bức ảnh là một trong những bước quan trọng

tính chính xác của nhận dạng ký tự. Ảnh sau khi được trích xuất ra vùng chứa biển

số sẽ được nhị phân hóa với một ngưỡng nhất định ( theo khảo sát là 130 – 150 : đối

với biển số còn tốt và độ sáng của biện số ở mức bình thường ) sẽ là ảnh đầu vào xử

lý.

Thu nhận ảnh

Phân tích ảnh tìm ký tự

Nhận dạng ký tự

Page 26: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Hình 4.1 - Ảnh sau khi được nhị phân hóa

4.1.2 Phân tích ảnh tìm ký tự

Quá trình phân tích tìm ký tự bao gồm các bước sau :

- Chỉnh kích thước ảnh nhị phân về khoảng 320*240.

- Tìm biên của ảnh bằng thuật toán Canny.

- Dựa vào đặc trưng kích thước của ký tự mà tách từng ký tự ra khỏi ảnh.

+ Theo các ảnh biển số cắt được em có đo các kích thước các ký tự và xác

định được chiều dài ký tự nằm trong khoảng 68 – 90 pixel và chiều cao nằm

trong khoảng từ 18 – 40 pixel.

- Tiền xử lý ảnh các ký tự

+ Lọc bớt các điểm ảnh nhiễu.

+ Chuyển ảnh các ký tự về kích cỡ 30*70 pixel.

4.1.3 Nhận dạng ký tự

Trong phần nhận dạng ký tự , chúng em áp dụng thuật toán K nearest neighbor

(KNN). KNN là phương pháp xác định đối tượng dựa vào khoảng cách gần nhất

giữa đối tượng cần xét và tất cả các mẫu trong dữ liệu huấn luyện.

Thuật toán KNN được mô tả như sau :

- Xác định giá trị tham số k.

- Tính khoảng cách giữa đối tượng cần xét với dữ liệu huấn luyện.

- Sắp xếp theo khoảng cách tăng dần và xác định k láng giềng gần nhất với nó.

- Dựa vào lớp mới xác định suy ra giá trị của đối tượng.

Page 27: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Hình 4.2 - Ảnh tách ký tự

-

Hình 4.3 Mô phỏng thuật toán K Nearest Neighbor

Xây dựng cơ sỡ dữ liệu

Dữ liệu huấn luyện từ các ảnh các ký tự được cắt ra phía trên :

- Chuyển các ảnh sang dạng bitmap

- Thiết lập các ma trận các ký tự và lưu vào file dữ liệu huấn luyện

Page 28: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Hình 4.4 Hình ma trận của ký tự

4.2 GHI NHẬN VÀ THỬ MẨU KẾT QUẢ

Tiến hành kiểm thử tập cơ sở dữ liệu với 25 ảnh tĩnh xe. Kết quả là có 22 ảnh

được phát hiện đúng đối tượng trong ảnh, đạt tỉ lệ 87%

Thử nghiệm :

Hình 3.3 – Nhận dạng ký tự

Page 29: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

CHƯƠNG 5

KẾT QUẢ - NHẬN XÉT VÀ

PHÂN TÍCH

5.1 KẾT QUẢ

Về mặt ánh sáng

Trong môi trường ánh sáng ngoài trời tại thực địa, bình thường với cường độ

khoảng 300 400 lux, hiệu quả phát hiện là khá tốt.

Về mặt không gian

Các xe khi quan sát với nhiều góc độ khác nhau theo các phương x, y, z trong

khoảng 30o vẫn phát hiện tốt nhưng nhận dạng ký tự không tốt lắm.

Kết quả thực thi hệ thống

Số lượng hình

kiểm thử

Số lượng biển số

nhận dạng đúng

Số lượng

nhận dạng

ký tự đúng

Tỉ lệ

25 24 22 87%

Page 30: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Hình 5.1 Giao diện chương trình

Page 31: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Hình 5.2 Một số hình ảnh thử nghiệm

Page 32: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

4.2 NHẬN XÉT

4.2.1 Ưu điểm

Hệ thống hoạt động tốt ở điều kiện thử nghiệm cho phép.

Trên cơ sở hệ thống đã hoàn tất, có thể phát triển, mở rộng thêm với nhiều

ứng dụng hữu ích và lý thú khác phục vụ công tác học tập, nghiên cứu sâu

hơn và ứng dụng thực tiễn.

4.2.2 Khuyết điểm

Trong quá trình thực hiện, đề tài cũng có những thiếu sót mang tính khách

quan và chủ quan:

4.2.2.1 Chủ quan

Do khó khăn về cơ sở dữ liệu: Tư thế xe trong ảnh càng nghiêng theo các

hướng bất kỳ thì quá trình xây dựng cơ sở dữ liệu từ quá trình máy tính học

huấn luyện kết quả không tốt, khiến cho hệ thống hoạt động không ổn định.

Hệ thống hiện tại chưa đáp ứng được tính chính xác, ổn định cao và hoạt

động ở thời gian thực, ví dụ như có sự thay đổi về thuộc tính về màu sắc, tư

thế quan sát của đối tượng, cường độ sáng, độ phức tạp của nền ảnh.

Tuy nhiên, hệ thống không tránh khỏi lỗi phát hiện sai đối tượng do bị chói

sáng, ngược sáng,. Thực tế cho thấy, hình ảnh thí nghiệm được ghi hình

trong thời gian từ 8 giờ sáng đến 3 giờ chiều cho kết quả nhận dạng tốt hơn

các thời gian còn lại. Điều này được giải thích từ độ sáng đủ hoặc ánh nắng

Page 33: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

góp phần làm rõ đối tượng hơn so với nền ảnh và làm tăng thêm đặc trưng để

nhận dạng.

4.2.2.2 Khách quan

Yếu tố khách quan bao gồm các vấn đề khó khăn trong khi xây dựng hệ thống.

a) Các khó khăn về phương pháp

Đa số các hướng tiếp cận phát hiện và nhận dạng vật thể một cách tự động

hiệu quả nhất hiện nay thường dựa vào việc tìm ra mô hình hoặc bộ phân lớp hoặc

một cơ sở dữ liệu đặc tả tốt nhất. Việc hệ thống có khả năng hoạt động tốt trong bất

kỳ tình huống, điều kiện thu nhận ảnh nào trong bất kỳ tình huống nào với các tư

thế quan sát xe khác nhau là cực kỳ khó khăn, mặc dù đối với con người, việc này là

hoàn toàn đơn giản trong đa số các trường hợp thông thường.

Kiểu dáng biển số xe: kiểu dáng biển số xe có thể nói là đa dạng cũng như

phức tạp đối với người quan sát hoặc đối với thuật toán phát hiện và nhận

dạng. Bên cạnh đó sự đa dạng về màu sắc cũng là một thách thức đối với quá

trình thực hiện. Ngoài ra, biển số xe thường bị biến dạng và xuống cấp theo

thời gian – ví dụ như nhưng chiếc xe cũ thường biển số bị nhạt màu các chữ

số hoặc biển số xe bị bẩn hoặc chói sáng.

Trong một số trường hợp đặc biệt biển số xe được thêm các màu sơn và phụ

kiện, như biển số xe ngoại giao có 2 màu chữ là đỏ và trắng hay các vật thể

phụ kiện được gắn vào biển số xe dẫn đến sự khó khăn trong quá trình xử lý

phát hiện và nhận dạng.

Page 34: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

Tư thế xe và góc độ quan sát: hệ thống khó có thể phát hiện ra đối tượng với

tư thế quan sát xe nhìn quá nghiêng.

Điều kiện ghi nhận ảnh: trong các điều kiện chiếu sáng khác nhau (bao gồm

kiểu chiếu sáng, cường độ sáng và màu sắc của nguồn sáng) cũng như các

đặc tính của hệ thống thu thập dữ liệu ảnh (camera, máy ảnh, hệ thống gương

phản xạ, thấu kính, …) góp phần ảnh hưởng không nhỏ đến kết quả phát hiện

và nhận dạng của hệ thống.

Nền ảnh và điều kiện của môi trường ghi nhận ảnh: hai vấn đề này là đáng

được qua tâm bởi sự ảnh hưởng của nó đến quá trình phát hiện là không nhỏ.

Khi nền ảnh càng chứa nhiều thành phần (bao gồm nhiều chi tiết rối rắm,

màu sắc, hình dáng phức tạp giống với đối tượng – nhưng không phải đối

tượng - , …) hoặc môi trường không đồng nhất về ánh sáng (ngược sáng, ảnh

bị bóng râm che một phần hoặc toàn phần lên đối tượng) thì vấn đề phát hiện

càng thêm khó khăn và phức tạp.

Những yếu tố nêu trên vẫn có giá trị với trường hợp “ảnh” thu được nhờ vào

các phương phát phát hiện khác với hướng tiếp cận khác để thu được kết quả

tin cậy. Khi đó, phụ thuộc và thuộc tính riêng của loại “nguồn sáng” này mà

người ta sẽ sử dụng thêm các phương pháp xử lý mới.

b) Các khó khăn về tốc độ thực thi và tốc độ hệ thống

Việc lựa chọn cách giải quyết sao cho hệ thống hoạt động tốt nhất là một thử

thách khi đã có nhiều cách và phương pháp tiếp cận khác nhau. Bên cạnh đó còn

phải kể đến sự trả giá cho công nghệ (hiệu quả cao nhưng bù lại tốc độ chậm và

ngược lại).

Page 35: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

CHƯƠNG 5

KẾT LUẬN

5.1 KẾT QUẢ ĐẠT ĐƯỢC VÀ Ý NGHĨA

Qua quá trình nghiên cứu, thử nghiệm, và thực hiện đề tài trong thời gian cho

phép với những công cụ lập trình hỗ trợ, chúng em đã hoàn thành hệ thống phát

hiện và nhận biển số xe với các kết quả cụ thể.

5.1.1 Kết quả đạt được

Lựa chọn và thực hiện thành công phương pháp phát hiện và nhận dạng biển

số xe với Visual C# là ngôn ngữ lập trình mới, theo xu hướng phát triển phần

mềm trên nền tảng .NET Framework.

Phối hợp tương đối tốt giữa ngôn ngữ lập trình trên Visual C# .NET của Thị

giác máy tính với lý thuyết Xử lý ảnh số.

Là cơ hội tốt mà qua đó chúng em đã có những tìm hiểu thêm về lĩnh vực xử

lý ảnh số, thị giác máy tính và cách ứng dụng vào thực tế. Học hỏi được

nhiều kinh nghiệm thực tế về chuyên môn cũng như các kỹ năng mềm khi

thực hiện đề tài.

Page 36: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

5.1.2 Ý nghĩa

Mô hình hóa được ở mức cơ sở hệ thống nhận dạng biển số xe và các công

cụ lập trình tiên tiến kèm theo. Từ đó, chúng em có thể dễ dàng tiếp cận được

các công nghệ và kiến thức mới trong tương lai.

Hệ thống có thể được phát triển thêm ở cấp độ cao hơn với cách bố trí lệnh

code hợp lý hơn nhằm tăng tốc độ cho hệ thống, bên cạnh đó cũng phải đảm

bảo độ tin cậy và chính xác cho hệ thống, nhằm đáp ứng được nhu cầu

nghiên cứu học thuật và áp dụng nó trong thực tế.

5.2 HƯỚNG PHÁT TRIỂN

Hệ thống có thể phát triển theo hướng cao hơn như tăng cao độ chính xác của

việc xác nhận dạng ký tự cũng như việc xác định biển số xe, với phương

pháp trình bày trên thì tao có thể phát triển thêm những phần sau :

Tìm hiểu thêm vấn đề nhị phân hóa bức ảnh để tăng khả năng nhận

dạng ký tự.

Tăng thêm, đa dạng hơn các dữ liệu huấn luyện xác định biền số cũng

như ký tự. Cũng như chọn lại các trọng số sao cho tăng khả năng nhận

dạng và giảm thời gian xử lý tổng thể

Tăng cường thuật toán nhận dạng KNN áp dụng Logic mờ,đồ thị xấp

xỉ,… có thể tăng đáng kể khả năng nhận dạng ký tự.

Bố trí lại các câu lệnh hợp lý hơn để tăng khả năng nhận diện đồng

thời giảm thời gian xử lý.

Hệ thống cũng có thể được cải tiến và lập trình theo hướng tích hợp trên vi

mạch sử dụng ngôn ngữ lập trình hệ thống nhúng, hệ thống tích hợp trên vi

mạch (SoC - System on Chip),… sẽ là một ứng dụng mang tính linh hoạt

hơn. Bởi vì khi đó hệ thống không còn nhất thiết phải chạy trên nền tảng máy

Page 37: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

tính - .NET Frameworks và các máy tính nữa. Được như vậy, thì đề tài sẽ có

tính ứng dụng linh hoạt cao hơn vào các lĩnh vực thực tế cuộc sống.

Theo nhận định của bản thân chúng em, thì đây là một lĩnh vực hay, lý thú,

có nhiều ứng dụng thực tế và bên cạnh đó vẫn còn nhiều vấn đề cần hoàn

thiện thêm. Vì khả năng thực hiện có hạn và thời gian không nhiều cho nên

đề tài không tránh khỏi sơ sót và nhầm lẫn. Xin Quý Thầy Cô thông cảm.

Mong rằng với những ai ham thích và có hứng thú với hướng nghiên cứu này

có thể chia sẻ với chúng em để cùng nhau tiếp tục tìm hiểu, phát triển thêm

để nâng cao tính hữu dụng thực tế cho đề tài. Đó cũng là một trong những

mục tiêu chủ chốt và là lợi ích của đề tài này.

Lời cuối cùng kết lại báo cáo này, chúng em xin chân thành cám ơn đến tất cả các

thầy cô, các anh và các bạn đã quan tâm theo dõi, giúp đỡ chúng em thực hiện đề tài

này.

Page 38: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

PHẦN C

PHỤ LỤC

Page 39: Nhan Dien Bien So Xe

Báo cáo nghiên cứu khoa học

TÀI LIỆU THAM KHẢO

Tiếng Anh :

[1] Gary Bradski, Adrian Kaehler - Learning OpenCV - Oreilly Publishing, 2008.

[2] Robert Laganière - OpenCV 2 Computer Vision - Packt Publishing, 2010.

[3] Intel Corporation - OpenCV with Visual C++.NET 2003 - OpenCV user guide.

[4] Paul Viola, Michael Jones - Rapid Object Detection using a Boosted Cascade of

Simple Features - 2001

Wedsite:

[1] http://www.note.sonotes.com/SciSoftware/haartraining.html

[2] http://www.emgu.com/wiki/index.php/Main_Page

[3] http://www.platerecognition.info