Tải bản đầy đủ (.pdf) (64 trang)

Nghiên cứu xây dựng chương trình nhận dạng biển số xe trên android smartphone

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (7.35 MB, 64 trang )

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KỸ THUẬT MÁY TÍNH

KHOÁ LUẬN TỐT NGHIỆP

NGHIÊN CỨU XÂY DỰNG CHƯƠNG
TRÌNH NHẬN DẠNG BIỂN SỐ XE
TRÊN ANDROID SMARTPHONE

Giảng viên hướng dẫn: TS. NGUYỄN ANH TUẤN
Sinh viên thực hiện: NGUYỄN PHƯỢNG ĐÔN - 08520091
NGUYỄN ĐỨC PHÚ - 08520284
Lớp: KTMT03
Khóa: 03

TP. Hồ Chí Minh, tháng 2 năm 2013


MỞ ĐẦU

Vấn đề nhận dạng nói chung và nhận dạng biển số xe nói riêng là bài toán thu
hút được sự quan tâm nghiên cứu của nhiều nhà khoa học trên thế giới, đặc biệt
là trong những năm gần đây khi các thiết bị di động như điện thoại di động, máy
tính bảng ra đời và phổ biến, công với nhu cầu thiết thực hỗ trợ giải quyết vấn đề
trong đời sống như tự động hóa trong các bãi giữ xe,trạm cân, rửa xe hay kiểm
soát lưu lượng, kiểm soát an ninh.
Nội dung khóa luận trình bày về nhận dạng biển số xe sử dụng mô hình mạng
neural với ứng dụng trên hệ điều hành Android. Hướng tiếp cận dựa trên diện
mạo, dùng bộ phân loại mạnh AdaBoots – là sự kết hợp của các bộ phân loại yếu
dựa trên các đặc trưng Haar-like – để phát hiện vùng chứa biển số, phương pháp


hình thái học để tiến hành thực hiện phân tách kí tự và nhận dạng kí tự bằng
phương pháp được sử dụng phổ biến nhất là mạng neural (neural network). Hệ
thống đã được thử nghiệm trên thực tế, trong môi trường đủ sáng, thiếu sáng với
mẫu nhận dạng đứng yên bước đầu cho kết quả tốt.
Từ khóa: neural network, android, automatic number plate recognition, ANPR,
Kohonen network.


LỜI CẢM ƠN

Lời đầu tiên chúng em xin được bày tỏ lòng biết ơn sâu sắc nhất tới TS. Nguyễn
Anh Tuấn, khoa Mạng máy tính và Truyền Thông, Đại học Công Nghệ Thông
tin, người đã tận tình hướng dẫn chúng em trong suốt thời gian làm khóa luận tốt
nghiệp.
Tiếp đến chúng em xin được bày tỏ lòng biết ơn tới các giảng viên khoa Kỹ Thuật
Máy Tính, trường Đại học Công nghệ thông tin – ĐH Quốc Gia TPHCM. Các
thầy cô đã dạy bảo, chỉ dẫn chúng em và luôn tạo điều kiện tốt nhất cho chúng
em học tập trong suốt những năm đại học, đặc biệt là trong thời gian làm khóa
luận tốt nghiệp.
Chúng tôi xin cảm ơn các bạn sinh viên lớp KTMT03 trường Đại học Công nghệ
thông tin, những người bạn nhiệt tình giúp đỡ chúng tôi trong suốt những năm
học đại học và quá trình thực hiện khóa luận.
Cuối cùng lời cảm ơn xin được gửi tới những người thân trong gia đình đã luôn
bên cạnh động viên, tạo những điều kiện tốt nhất để hoàn thành khóa luận này.

TP. Hồ Chí Minh, ngày 24 tháng 02 năm 2013
Nguyễn Phượng Đôn - Nguyễn Đức Phú


NHẬN XÉT

(Của giảng viên hướng dẫn)

........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................

........................................................................
........................................................................
........................................................................


NHẬN XÉT
(Của giảng viên phản biện)

........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................

........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................
........................................................................


Mục lục
Mục lục

v

Danh sách hình vẽ

vii

Danh sách bảng

ix

1

.
.
.
.

.

1
1
1
1
3
3

2

Tổng quan
2.1 Khảo sát . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Tổng kết chương . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4
4
9

3

Hệ thống nhận dạng biển số
3.1 Phát hiện vùng chứa biển số xe . . . . . . . . . . . . . . . . . . . . . .
3.1.1 Đặc trưng Haar-like . . . . . . . . . . . . . . . . . . . . . . . .
3.1.2 AdaBoost . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.3 Hệ thống xác định vùng chứa biển số xe . . . . . . . . . . . . .
3.1.4 Huấn luyện bộ phân loại . . . . . . . . . . . . . . . . . . . . .
3.2 Tách kí tự . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.1 Chuẩn hóa kích thước ảnh . . . . . . . . . . . . . . . . . . . .
3.2.2 Chuyển đổi ảnh màu về ảnh xám . . . . . . . . . . . . . . . . .

3.2.3 Tăng tính tương phản bằng thuật toán cân bằng hóa lược đồ xám
3.2.4 Xác định ngưỡng, nhị phân hóa ảnh . . . . . . . . . . . . . . .
3.2.5 Tìm biên, xác định các đường viền (contour) của ảnh nhị phân .

Giới thiệu
1.1 Tên khóa luận . . . . . . . . .
1.2 Nội dung và giới hạn khóa luận
1.2.1 Nội dung khóa luận . .
1.2.2 Giới hạn của khóa luận
1.3 Cấu trúc khóa luận . . . . . .

GVHD: Tiến sĩ Nguyễn Anh Tuấn

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.


v

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.

.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.

.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.

.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.

.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

11
11
12

14
16
17
20
21
22
23
24
26

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


MỤC LỤC
.
.
.
.
.
.
.

26
27
28
28
32
38
39


.
.
.
.
.
.
.
.
.
.

41
41
43
43
44
44
44
47
49
49
49

Kết luận và hướng phát triển
5.1 Những kết quả đạt được . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Hướng phát triển . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

51
51
52


3.3

3.4
4

5

3.2.6 Tách kí tự dựa trên đặc tính hình thái học . .
Nhận dạng kí tự . . . . . . . . . . . . . . . . . . . .
3.3.1 Mạng neural sinh học . . . . . . . . . . . . .
3.3.2 Mạng neural nhân tạo . . . . . . . . . . . . .
3.3.3 Mạng neural Kohonen . . . . . . . . . . . .
3.3.4 Ánh xạ ma trận điểm ảnh vào ma trận giá trị .
Tổng kết chương . . . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.

.
.
.
.
.
.

.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.

Hiện thực hệ thống nhận dạng biển số xe trên android smartphone
4.1 Sơ lược hệ điều hành Android . . . . . . . . . . . . . . . . . .
4.2 Tính năng của ứng dụng . . . . . . . . . . . . . . . . . . . . .
4.3 Cấu trúc ứng dụng . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.1 Phần Java . . . . . . . . . . . . . . . . . . . . . . . . .
4.3.2 Phần thư viện . . . . . . . . . . . . . . . . . . . . . . .
4.4 Các lớp trong ứng dụng . . . . . . . . . . . . . . . . . . . . . .
4.5 Chương trình huấn luyện mạng Kohonen . . . . . . . . . . . . .
4.6 Hiệu chỉnh kết quả dựa trên cú pháp . . . . . . . . . . . . . . .
4.7 Kết quả thực nghiệm . . . . . . . . . . . . . . . . . . . . . . .
4.8 Tổng kết chương . . . . . . . . . . . . . . . . . . . . . . . . . .

Tài liệu tham khảo

GVHD: Tiến sĩ Nguyễn Anh Tuấn

.
.
.
.
.
.
.

.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

53

vi

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú



Danh sách hình vẽ
2.1
2.2
2.3
2.4
2.5
2.6
2.7

Hệ thống nhận dạng được trang bị cho xe tuần tra . . . . . . . . . .
Thiết bị thu nhận dữ liệu hình ảnh trên xe. . . . . . . . . . . . . . .
Hệ thống nhận dạng trên xe tuần tra của cảnh sát Úc. . . . . . . . .
Ứng dụng nhận dạng của Biển Bạc ANPR. . . . . . . . . . . . . . .
Ứng dụng nhận dạng trên máy bắn tốc độ. . . . . . . . . . . . . . .
Thiết lập bản ghi CSDL xe vi phạm vượt tốc độ của MT-ATGT2012.
Giao diện của ứng dụng MT-BSX. . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.

.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

5
5
6
7
8
8
9

3.1

3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.12
3.13
3.14
3.15
3.16
3.17
3.18
3.19
3.20

Các dạng cơ bản của đặc trưng Haar-like . . . . . . . . . . . . . . .
Cách tính Integral Image của ảnh . . . . . . . . . . . . . . . . . . .
Ví dụ cách tính nhanh các giá trị mức xám của vùng D trên ảnh . . .
Mô hình phân tầng kết hợp các bộ phân loại yếu để xác định biển số
Kết hợp các bộ phân loại yếu thành bộ phân loại mạnh . . . . . . .
Hệ thống xác định vùng chứa biển số xe . . . . . . . . . . . . . . .
Ảnh chụp màn hình quá trình chạy huấn luyện . . . . . . . . . . . .
So sánh các phương thức resize ảnh . . . . . . . . . . . . . . . . .
Ví dụ về các lớp của một bức ảnh RGB . . . . . . . . . . . . . . . .
Chuyển ảnh màu sang ảnh trắng đen . . . . . . . . . . . . . . . . .

Tăng tính tương phản bằng phương pháp cân bằng lược đồ xám . . .
Cách xác định ngưỡng động . . . . . . . . . . . . . . . . . . . . .
Nhị phân hóa ảnh bằng phương pháp tìm ngưỡng . . . . . . . . . .
Thực hiện xác định các đường viền từ ảnh nhị phân . . . . . . . . .
Xác định được các kí tự trên biển số . . . . . . . . . . . . . . . . .
Các kí tự được tách riêng rẽ. . . . . . . . . . . . . . . . . . . . . .
Mô hình mạng neural sinh học. . . . . . . . . . . . . . . . . . . . .
Biểu diễn một neural nhân tạo. . . . . . . . . . . . . . . . . . . . .
Một dạng mạng neural Kohonen. . . . . . . . . . . . . . . . . . . .
Sơ đồ khối biểu diễn huấn luyện mạng neural Kohonen. . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

12
13
14
15
16
16
20
22
23
23
24
25
25
26
27
27
28
30
33
37

GVHD: Tiến sĩ Nguyễn Anh Tuấn

vii


SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


DANH SÁCH HÌNH VẼ
3.21 Chia lưới kí tự. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.22 Ánh xạ ma trận điểm ảnh vào ma trận giá trị. . . . . . . . . . . . . . . . .

38
39

4.1
4.2
4.3
4.4
4.5

43
45
46
48
48

Ảnh chụp màn hình của ứng dụng đang chạy. . . . . . . . .
Sơ đồ lớp chính của ứng dụng . . . . . . . . . . . . . . . . .
Sơ đồ lớp của mạng neural Kohonen . . . . . . . . . . . . .
Ảnh chụp màn hình chương trình huấn luyện mạng Kohonen
Tập kí tự dùng cho việc huấn luyện . . . . . . . . . . . . . .

GVHD: Tiến sĩ Nguyễn Anh Tuấn


viii

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.

.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Danh sách bảng
3.1
3.2

Mẫu đầu vào của mạng Kohonen. . . . . . . . . . . . . . . . . . . . . . . .
Trọng số kết nối giữa các neuron trong mạng. . . . . . . . . . . . . . . . .


33
33

4.1

Kết quả thử nghiệm 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

49

GVHD: Tiến sĩ Nguyễn Anh Tuấn

ix

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 1
Giới thiệu
1.1

Tên khóa luận

Nghiên cứu xây dựng chương trình nhận dạng biển số xe trên android smartphone.

1.2
1.2.1

Nội dung và giới hạn khóa luận
Nội dung khóa luận


Cùng với sự phát triển kinh tế, gia tăng dân số và nhu cầu đi lại, số lượng các phương tiện
tham gia giao thông nói chung và xe máy nói riêng xuất hiện ngày càng nhiều. Điều này đặt
ra một yêu cầu lớn trong việc kiểm soát và quản lý loại phương tiện này. Thực trạng tại các
điểm trông giữ xe ở các đô thị lớn tại Việt Nam hiện nay cho thấy một vấn đề bất cập: việc
xử lý thủ công (ghi biển số xe) gây tốn kém tiền thuê nhân công và không hiệu quả, nhất là
ở những bãi đậu xe lớn. Một số bãi đỗ xe áp dụng phương pháp quản lý thông minh như ở
các tòa nhà chung cư cao tầng, BigC . . . , tuy nhiên các hệ thống này không phải là tự động
mà là có sự giám sát của các nhân viên trông giữ xe, nguyên tắc hoạt động của chúng đơn
giản như sau: đầu tiên camera ghi hình biển số xe và lưu vào cơ sở dữ liệu, tiếp đó một thẻ từ
được quẹt qua đầu đọc và chứa thông tin hình ảnh của biển số xe vừa chụp. Thẻ từ này được
giao cho người gửi xe. Khi lấy xe ra, người gửi xe quẹt thẻ qua đầu đọc, mã số thẻ sẽ được so
sánh và hiện hình ảnh chụp biển số xe trước đó, nhân viên sẽ quan sát xem biển số xe đã lấy
ra và biển số xe lúc gửi trong cơ sở dữ liệu có trùng nhau không, nếu trùng thì cho qua, nếu
không trùng thì yêu cầu dừng lại. Việc này giảm bớt được nhiều công sức trong việc quản lý
xe như ghi vé, xé vé . . . nhưng thực chất về mặt kĩ thuật là đơn giản, ta chỉ cần một camera,
một máy tính và một đầu đọc thẻ là làm được. Nó không phải là hệ thống nhận dạng biển số
xe tự động.

GVHD: Tiến sĩ Nguyễn Anh Tuấn

1

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 1. Giới thiệu

Một yêu cầu đặt ra là cần xây dựng các hệ thống tự động. Một trong những hệ thống tự động
như vậy là hệ thống tự động nhận dạng biển số xe, đặc trưng của nó là có khả năng thu nhận
hình ảnh cũng như "đọc" và "hiểu" các biển số xe một cách tự động.

Hệ thống như vậy có thể được sử dụng trong rất nhiều ứng dụng như: trạm cân và rửa xe tự
động hoàn toàn, bãi giữ xe tự động, các hệ thống kiểm soát lưu lượng giao thông hay trong
các ứng dụng về an ninh như tìm kiếm xe mất cắp . . .
Hiện nay nhiều phần mềm đã phát triển trong việc nhận dạng biển số, nhưng đa phần hoạt
động trên máy tính và các camera được đặt cố định tại một vị trí. Với việc bùng nổ thiết bị di
động cũng như phần cứng và ứng dụng phát triển theo nó, nhu cầu nhận dạng nói chung và
nhận dạng biển số xe nói riêng trên thiết bị cầm tay đang là nhu cầu thiết yếu, nó hỗ trợ rất
nhiều trong đời sống hằng ngày, như giúp các chiến sĩ công an đi tuần có được thông tin của
chủ phương tiện cũng như phát hiện được xe bị mất cắp thông qua biển số xe . . .
Qua những tìm hiểu trên nhóm đã hướng tới nghiên cứu và phát triển phần mềm nhận dạng
biển số xe trên thiết bị di động với hệ điều hành Android.
Việc nhận dạng kí tự trên thiết bị di động không phải mới, nhiều ứng dụng hoạt động rất tốt,
có độ chính xác cao ở trong và ngoài nước. Nhiều mã nguồn mở hỗ trợ mạnh mẽ trong việc
xử lý hình ảnh cũng như nhận dạng. Nhưng việc nhận dạng mới thực hiện trên văn bản, chưa
xuất hiện nhận dạng trên biển số xe. Đặc biệt các kí tự trên biển số khác so với các kí tự trên
văn bản, nên muốn nhận dạng được ta phải làm cho ứng dụng hiểu được các kí tự này.
Khóa luận sử dụng sự hỗ trợ khá mạnh trong việc xử lí hình ảnh của mã nguồn OpenCV để
nhận dạng vùng biển số cũng như thao tác trên nó, trong giai đoạn nhận dạng kí tự có sử
dụng mạng neural network cơ bản Kohonen để nhận dạng. Việc kết hợp này bước đầu giúp
quá trình phát triển ứng dụng linh hoạt hơn, mang lại hiệu quả khá cao.
Khóa luận sẽ làm những việc sau:
1. Tổng hợp dữ liệu cho quá trình huấn luyện hệ thống.
2. Tiền xử lý ảnh thu được từ Camera của thiết bị.
3. Huấn luyện hệ thống nhằm phát hiện vùng chứa biển số.
4. Tách các kí tự có trên biển số.

GVHD: Tiến sĩ Nguyễn Anh Tuấn

2


SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 1. Giới thiệu
5. Nhận dạng các kí tự và hậu xử lí.

1.2.2

Giới hạn của khóa luận

Nhận dạng biển số có nhiều vấn đề cần giải quyết, mỗi nước khác nhau có quy định về kích
thước cũng như kí tự riêng khác nhau, bên cạnh đó mỗi loại xe lại có các quy định khác nữa.
Quá trình nhận dạng còn phụ thuộc vào điều kiện môi trường, và camera thu nhận ảnh trên
thiết bị. Do tính phức tạp của nhận dạng, hiện tại khóa luận chỉ tập trung nhận dạng các kí
tự trên biển số xe máy ở Việt Nam trong điều kiện lí tưởng, đủ ánh sáng, các kí tự trên biển
số hiển thị rõ ràng, không bị các vật neo giữ che khuất kí tự và camera trên thiết bị chạy ứng
dụng có độ phân giải không quá thấp.
Các vấn đề như nhận dạng biển số xe các nước, biển số ngang của xe ô tô, hay trong điều
kiện thời tiết mưa, điều kiện ánh sáng không đủ để lưu giữ hình ảnh, camera trên thiết bị cho
chất lượng thấp hoặc bị loạn màu sắc, các kí tự trên biển số bị che khuất hay mất nét, không
hiển thị rõ ràng đều nằm ngoài tầm vóc của luận văn này.

1.3

Cấu trúc khóa luận

Khóa luận được cấu trúc như sau:
• Chương 2. Khảo sát, phân tích đánh giá các hướng nghiên cứu đã có của các tác giả
trong và ngoài nước liên quan đến đề tài; nêu những vấn đề còn tồn tại; chỉ ra những
vấn đề mà đề tài cần tập trung, nghiên cứu giải quyết.

• Chương 3. Hướng tiếp cận của khóa luận để xây dựng hệ thống nhận dạng biển số.
• Chương 4. Hiện thực hệ thống nhận dạng biển số xe trên android smartphone.
• Chương 5. Tổng kết khóa luận và một số hướng phát triển tiếp theo của khóa luận.

GVHD: Tiến sĩ Nguyễn Anh Tuấn

3

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 2
Tổng quan
2.1

Khảo sát

Trên thế giới:

Kỹ thuật nhận dạng biển số (Automatic number plate recognition) đã được nghiên cứu từ
năm 1976 tại chi nhánh phát triển khoa học Cảnh sát ở Anh. Hệ thống kiểm thử lần đầu tiên
vào năm 1979. Kỹ thuật này phát triển trên khía cạnh phần mềm của hệ thống máy tính. Đầu
tiên sử dụng một loạt các kỹ thuật xử lý hình ảnh để phát hiện, bình thường hóa và nâng cao
hình ảnh biển số, và sau đó nhận dạng ký tự quang học (OCR) để trích xuất các chữ cái và
biển số. Hệ thống được triển khai ở một trong hai phương pháp tiếp cận cơ bản: toàn bộ quá
trình được thực hiện tại vị trí nhận dữ liệu ảnh hay truyền dữ liệu về một máy tính từ xa để
thực hiện quá trình nhận dạng.
Hệ thống này đã được áp dụng để hỗ trợ kiểm soát lưu lượng, thu thập thông tin, xử lí vi
phạm cho cảnh sát giao thông. Hệ thống thu thập hình ảnh đòi hỏi phải có tầm nhìn rộng, thu
nhận ảnh nhanh và cho chất lượng ảnh tốt.


GVHD: Tiến sĩ Nguyễn Anh Tuấn

4

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 2. Tổng quan

Hình 2.1: Hệ thống nhận dạng được trang bị cho xe tuần tra

Hình 2.2: Thiết bị thu nhận dữ liệu hình ảnh trên xe.

Tại Úc:
Một số lực lượng cảnh sát nhà nước, và Bộ Tư pháp (Victoria) đã sử dụng hệ thống ANPR
cả cố định và di động. Các lực lượng cảnh sát New South Wales Highway Patrol là những

GVHD: Tiến sĩ Nguyễn Anh Tuấn

5

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 2. Tổng quan
người đầu tiên sử dụng một hệ thống ANPR camera cố định tại Úc vào năm 2005. Trong
năm 2009, họ bắt đầu một hệ thống ANPR di động (có tên là MANPR) với ba máy ảnh hồng
ngoại được trang bị cho hạm đội tuần tra đường cao tốc. Hệ thống xác định xe không đăng
ký và bị đánh cắp hoặc bị đình chỉ trình điều khiển.


Hình 2.3: Hệ thống nhận dạng trên xe tuần tra của cảnh sát Úc.

Ngoài ra trên đường phố có sử dụng những thiết bị camera dùng để ghi hình – Closed
circuit television (CCTV), những thiết bị này đã được phát triển ứng dụng nhận dạng biển số
tự động để phục vụ nhiều mục đích khác nhau.
Trong nước:
Trong lĩnh vực nhận dạng kí tự hiện nay đã có nhiều phần mềm được công bố như Biển Bạc
ANPR hay MT-ATGT2012 và MT.BSX3.5 của Công ty Mắt Thần . . .
Ứng dụng của Biển Bạc ANPR dựa trên mã nguồn mở OpenCV,thu nhận ảnh thông qua các
Camera có chất lượng cao, được đặt cố định. Quá trình nhận dạng được xử lí trên máy tính.
Nhận dạng các kí tự nhanh, cho kết quả trong thời gian ngắn.

GVHD: Tiến sĩ Nguyễn Anh Tuấn

6

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 2. Tổng quan

Hình 2.4: Ứng dụng nhận dạng của Biển Bạc ANPR.

MT-ATGT2012: nhận dạng biển số xe từ ảnh chụp của máy bắn tốc độ.
Các loại máy bắn tốc độ của CSGT đều đã được trang bị chức năng ghi lại hình ảnh của
phương tiện bị bắn tốc độ. Mọi thông tin về ngày giờ, địa điểm, hướng di chuyển, vận tốc,
vận tốc giới hạn trên đoạn đường đó (để so sánh) và làn đường chiếc xe đang chạy đều được
hiển thị trên hình ảnh máy bắn tốc độ thu nhận được. Vấn đề nhận dạng biển số được tích
hợp trên máy giải quyết vấn đề nhận dạng biển số xe vi phạm, khoanh vùng xác định chính

xác xe bị bắn tốc độ. Hình ảnh xe vi phạm vượt tốc độ sau khi đã được nhận dạng biển số và
khoanh vùng phương tiện, được thiết lập thành bản ghi cơ sở dữ liệu xe vi phạm vượt tốc độ.
Khảo sát độ chính xác của phần mềm với các ảnh bắn tốc độ kích thước 4008x3092 (pixels)
tốc độ nhận dạng biển số trung bình của Mắt Thần là 1-2 giây (trên cấu hình máy tính thông
thường), hiệu suất nhận dạng biển số đạt đến 98%.

GVHD: Tiến sĩ Nguyễn Anh Tuấn

7

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 2. Tổng quan

Hình 2.5: Ứng dụng nhận dạng trên máy bắn tốc độ.

Hình 2.6: Thiết lập bản ghi CSDL xe vi phạm vượt tốc độ của MT-ATGT2012.

MT-BSX3.5 ứng dụng nhận dạng biển số thông qua camera ghi hình và xử lý nhận dạng
trên máy tính tại các điểm giữ xe.
Phiên bản mới nhất của ứng dụng này có nhiều cải tiến theo chiều hướng tích cực, chức năng

GVHD: Tiến sĩ Nguyễn Anh Tuấn

8

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú



Chương 2. Tổng quan
nâng cao chất lượng hình ảnh biển số, cắt vùng biển số nâng cao và chồng hình ảnh biển số
lên hình ảnh camera thu nhận được, cho phép nhân viên trông giữ xe dễ dàng quan sát được
ảnh biển số và thao tác nhanh hơn và tính an ninh hơn. Hiệu suất nhận dạng biển số xe máy
được cải thiện: Trong phiên bản này, độ chính xác nhận dạng biển số được cải thiện, các tình
huống độ sáng của các ký tự trên biển số phân bố không đều, các ký tự hàng trên bị bắn đinh
ốc, hàng ký tự dính mép biển số . . . đều được xử lý triệt để.

Hình 2.7: Giao diện của ứng dụng MT-BSX.

2.2

Tổng kết chương

Qua khảo sát trên cho thấy mỗi ứng dụng có một ưu điểm nhất định, nhưng ở ứng dụng của
Biển Bạc ANPR thực hiện việc thu nhận ảnh và nhận dạng biển số rất tốt, nhưng ứng dụng
này chỉ hoạt động trên máy tính với sự hỗ trợ thu nhận ảnh từ Camera có chất lượng cao, các
thiết bị này được đặt cố định tại một vị trí, không có tính cơ động, tương tự như hệ thống
nhận dạng MT-BSX của Mắt Thần.

GVHD: Tiến sĩ Nguyễn Anh Tuấn

9

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 2. Tổng quan
Hệ thống nhận dạng MT-ATGT2012 lại hoạt động trên máy bắn tốc độ với sự hỗ trợ rất tốt
từ các phần mềm đi kèm và camera chuyên dụng cho việc thu thập hình ảnh, nhưng hệ thống

không có tính phổ thông vì chỉ hoạt động trên thiết bị trong ngành.
Các hệ thống nhận dạng ở trong và ngoài nước hiện nay chủ yếu dựa trên bộ xử lí của máy
tính, vị trí các thiết bị thu hình thường đặt cố định, hay phát triển trên những thiết bị dùng
riêng cho ngành nhất định.
Nhận thấy điều này, hệ thống chúng tôi phát triển có sự kết hợp giữa OpenCV, hỗ trợ tốt
trong việc xử lí hình ảnh, nhận diện các vùng chứa biển số và tách kí tự. Nhận diện kí tự áp
dụng mô hình mạng neural nhân tạo để cải thiện kết quả nhận dạng. Ứng dụng phát triển trên
hệ điều hành Android sử dụng camera trực tiếp trên smartphone cho thấy được tính cơ động
trong quá trình nhận dạng.

GVHD: Tiến sĩ Nguyễn Anh Tuấn

10

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 3
Hệ thống nhận dạng biển số
Hệ thống nhận dạng biển số thường được hiện thực bằng cách giải quyết riêng rẽ ba bài toán
nhỏ hơn đó là phát hiện vùng chứa biển số, tách kí tự và nhận dạng kí tự. Chương này của
khóa luận sẽ lần lượt trình bày hướng tiếp cận và chi tiết thực hiện theo hướng tiếp cận đó
của từng bài toán chia nhỏ nêu trên.

3.1

Phát hiện vùng chứa biển số xe

Đây là bước đầu tiên và khó khăn nhất quyết định tới kết quả của toàn bộ hệ thống. Mục đích
của bước này là trích ra được vùng nhỏ nhất chứa biển số từ ảnh thu được từ camera của điện

thoại. Có nhiều phương pháp tiếp cận để thực hiện được nhiệm vụ này nhưng tất cả đều có
thể qui về 3 phương pháp chính sau đây:
• Phương pháp dùng chuyển đổi Hough: dựa vào đặc trưng cạnh biên, áp dụng các
phương pháp xác định đường thẳng như phép biến đổi Hough để phát hiện các cặp
đường thẳng gần song song ghép thành một ảnh biển số.
• Phương pháp hình thái học: dựa vào đặc trưng hình thái của biển số xe như màu sắc,
độ sang, sự đối xứng. . . để xác định và trích ra ảnh biển số.
• Phương pháp khớp mẫu: xem biển số là một đối tượng có khung nền riêng và sử dụng
các cửa sổ dò để trích từng đối tượng đưa qua mạng noron (neural network), trí tuệ
nhân tạo (artificial intelligence) để phân loại có phải là vùng biển số hay không.
Khóa luận không tập trung phát triển một thuật toán hay phương pháp riêng mà sử dụng
hướng tiếp cận dựa trên diện mạo, dùng bộ phân loại mạnh AdaBoost - là sự kết hợp của các
bộ phân loại yếu dựa trên các đặc trưng Haar-like - để phát hiện vùng chứa biển số. Phương
pháp này được đánh giá là khá đơn giản, nhưng mang lại kết quả phát hiện tương đối cao,

GVHD: Tiến sĩ Nguyễn Anh Tuấn

11

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 3. Hệ thống nhận dạng biển số
trung bình lên tới trên 98%. Phương pháp được cài đặt dựa trên bộ thư viện mã nguồn mở
OpenCV.

3.1.1

Đặc trưng Haar-like


Do Viola và Jones công bố năm 2001 [16], gồm 4 đặc trưng cơ bản để xác định đối tượng.
Mỗi đặc trưng Haa-like là sự kết hợp của hai hay ba hình chữ nhật “trắng” hay “đen”. Để sử
dụng các đặc trưng này vào việc xác định những đối tượng tương đối phức tạp, 4 đặc trưng
Haar-like cơ bản được mở rộng thêm thành tập đặc trưng cơ bản sau:

Hình 3.1: Các dạng cơ bản của đặc trưng Haar-like

Dùng các đặc trưng trên, ta có thể tính được giá trị của đặc trưng Haar-like là sự chênh
lệch giữa tổng của các pixel của các vùng đen và các vùng trắng như trong công thức sau:

f (x) = Tổngvùng đen (các mức xám của pixel) − Tổng
(các mức xám của pixel)
vùng trắng
(3.1)
Sử dụng giá trị này, so sánh với các giá trị của các giá trị pixel thô, các đặc trưng Haar-like
có thể tăng/giảm sự thay đổi in-class/out-of-class (bên trong hay bên ngoài lớp khuôn mặt
người), do đó sẽ làm cho bộ phân loại dễ hơn.
Như vậy có thể thấy rằng, để tính các giá trị của đặc trưng Haar-like, ta phải tính tổng của các
vùng pixel trên ảnh. Nhưng để tính toán các giá trị của các đặc trưng Haar-like cho tất cả các

GVHD: Tiến sĩ Nguyễn Anh Tuấn

12

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 3. Hệ thống nhận dạng biển số
vị trí trên ảnh đòi hỏi chi phí tính toán khá lớn, không đáp ứng được cho các ứng dụng đòi
hỏi tính run-time. Do đó Viola và Jones đưa ra một khái niệm gọi là Integral Image, là một

mảng 2 chiều với kích thước bằng với kích của ảnh cần tính các đặc trưng Haar-like, với mỗi
phần tử của mảng này được tính bằng cách tính tổng của điểm ảnh phía trên (dòng-1) và bên
trái (cột-1) của nó. Bắt đầu từ vị trí trên, bên trái đến vị trí dưới, phải của ảnh, việc tính toán
này đơn thuần chỉ đựa trên phép cộng số nguyên đơn giản, do đó tốc độ thực hiện rất nhanh.
P (x, y) =

i(x , y )

(3.2)

x ≤x,y ≤y

P(x,y)

Hình 3.2: Cách tính Integral Image của ảnh

Sau khi đã tính được Integral Image, việc tính tổng các giá trị mức xám của một vùng bất
kỳ nào đó trên ảnh thực hiện rất đơn giản theo cách sau:
Giả sử ta cần tính tổng các giá trị mức xám của vùng D như trong hình 3.3, ta có thể tính
như sau:
D = A + B + C + D – (A + B) – (A + C) + A
(3.3)
Với A + B + C + D chính là giá trị tại điểm P 4 trên Integral Image, tương tự như vậy
A + B là giá trị tại điểm P 2, A + C là giá trị tại điểm P 3, và A là giá trị tại điểm P 1. Vậy
ta có thể viết lại biểu thức tính D ở trên như sau:
D = (x4, y4) – (x2, y2) – (x3, y3) + (x1, y1)
A+B+C+D

GVHD: Tiến sĩ Nguyễn Anh Tuấn


(A+B)

13

(A+C)

(3.4)

A

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú


Chương 3. Hệ thống nhận dạng biển số

A

P1

C

B

P2

D
P3

P4


Hình 3.3: Ví dụ cách tính nhanh các giá trị mức xám của vùng D trên ảnh

Tiếp theo, để chọn các đặc trưng Haar-like dùng cho việc thiết lập ngưỡng, Viola và Jones
sử dụng một phương pháp máy học được gọi là AdaBoost. AdaBoost sẽ kết hợp các bộ phân
loại yếu để tạo thành một bộ phân loại mạnh. Với bộ phân loại yếu chỉ cho ra câu trả lời chính
xác chỉ hơn việc đoán một cách ngẫn nhiên một chút, còn bộ phân loại mạnh có thể đưa ra
câu trả lời chính xác trên 60%.

3.1.2

AdaBoost

AdaBoost là một bộ phân loại mạnh phi tuyến phức dựa trên hướng tiếp cận boosting được
Freund và Schapire đưa ra vào năm 1995. Adaboost cũng hoạt động trên nguyên tắc kết hợp
tuyến tính các weak classifiers để hình thành một strong classifier.
Là một cải tiến của tiếp cận boosting, AdaBoost sử dụng thêm khái niệm trọng số (weight) để
đánh dấu các mẫu khó nhận dạng. Trong quá trình huấn luyện, cứ mỗi weak classifiers được
xây dựng, thuật toán sẽ tiến hành cập nhật lại trọng số để chuẩn bị cho việc xây dựng weak
classifier kế tiếp: tăng trọng số của các mẫu bị nhận dạng sai và giảm trọng số của các mẫu
được nhận dạng đúng bởi weak classifier vừa xây dựng. Bằng cách này weak classifer sau có
thể tập trung vào các mẫu mà các weak classifiers trước nó làm chưa tốt. Sau cùng, các weak
classifers sẽ được kết hợp tùy theo mức độ tốt của chúng để tạo nên strong classifier.
Viola và Jones dùng AdaBoost kết hợp các bộ phân loại yếu sử dụng các đặc trưng Haar-like
theo mô hình phân tầng (cascade) như sau:

GVHD: Tiến sĩ Nguyễn Anh Tuấn

14

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú



Chương 3. Hệ thống nhận dạng biển số

Vùng ảnh
con cần xét
h1

Không là biển số

h2

Không là biển số

Là biển số

Là biển số

Không là biển số
h3

Không là biển số

hn

Không là biển số

Là biển số
Biển số


Hình 3.4: Mô hình phân tầng kết hợp các bộ phân loại yếu để xác định biển số

Trong đó, hk là các bộ phân loại yếu, được biểu diễn như sau:
hk =

1 nếu pk fk (x) < pk θk
0 ngược lại

(3.5)

x: cửa sổ con cần xét
θk : ngưỡng (θ = theta)
fk : giá trị của đặc trưng Haar-like
pk : hệ số quyết định chiều của phương trình
AdaBoost sẽ kết hợp các bộ phân loại yếu thành bộ phân loại mạnh như sau:
H(x) = sign(a1 h1 (x) + a2 h2 (x) + ... + an hn (x))

(a = alpha)

(3.6)

Với: a ≥ 0 là hệ số chuẩn hoá cho các bộ phân loại yếu.

GVHD: Tiến sĩ Nguyễn Anh Tuấn

15

SVTH: Nguyễn Phượng Đôn - Nguyễn Đức Phú



×