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

Nhận dạng biển số xe dùng phương pháp học sâu CNNs (tt)

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 (1.46 MB, 26 trang )

HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG
---------------------------------------

Nguyễn Duy Long

NHẬN DẠNG BIỂN SỐ XE
DÙNG PHƢƠNG PHÁP HỌC SÂU CNNs
Chuyên ngành: Hệ thống thông tin
Mã số: 8480104

TÓM TẮT LUẬN VĂN THẠC SĨ

TP. Hồ Chí Minh – 2018


Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG

Người hướng dẫn khoa học: PGS. TS. LÊ HOÀNG THÁI
(Ghi rõ học hàm, học vị)

Phản biện 1:
……………………………………………………………………
Phản biện 2:
……………………………………………………………………

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại
Học viện Công nghệ Bưu chính Viễn thông
Vào lúc: ....... giờ ....... ngày ....... tháng ....... năm ...............

Có thể tìm hiểu luận văn tại:


- Thư viện của Học viện Công nghệ Bưu chính Viễn thông


1
MỞ ĐẦU
Trong bối cảnh toàn cầu hóa và hội nhập quốc tế hiện nay,
cùng với sự bùng nổ thông tin, sự phát triển của khoa học kỹ thuật và
nhu cầu đi lại ngày càng tăng số lượng phương tiện giao thông trên
đường ngày càng xuất hiện nhiều. Với số lượng phương tiện giao
thông lớn và còn không ngừng tăng lên như vậy đã làm nảy sinh
nhiều vấn đề trong việc kiểm soát cũng như quản lý các phương tiện.
Để giải quyết vấn đề này nhu cầu đặt ra là áp dụng các hệ thống tự
động. Một trong những hệ thống như vậy là hệ thống tự động nhận
dạng biển số xe là hệ thống có khả năng thu nhận hình ảnh cũng như
là “đọc” và “hiểu” các biển số xe một cách tự động.
Một hệ thống như vậy có thể được sử dụng trong rất nhiều
các ứng dụng chẳng hạn như: trạm cân và rửa xe tự động hoàn toàn,
bãi giữ xe tự động, kiểm soát lưu lượng giao thông, giám sát tai nạn
hay trong các ứng dụng về an ninh như tìm kiếm xe mất cắp...
Như mọi hệ thống tự động khác, hệ thống như vậy cũng sẽ
yêu cầu có cả phần cứng lẫn phần mềm. Phần cứng của nó có phần
chính sẽ là một camera có tác dụng thu nhận hình ảnh còn phần mềm
sẽ có tác dụng xử lý hình ảnh đó. Với sự phát triển của kỹ thuật điện
tử, các camera sẽ dễ dàng có khả năng thu nhận được hình ảnh do đó
mà vấn đề đặt ra và luôn là vấn đề quan trọng nhất trong hệ thống,
quyết định tính hiệu quả của hệ thống xử lý ảnh như vậy sẽ là phần
mềm xử lý ảnh. Với vai trò như đã phân tích ở trên nghiên cứu này
tập trung vào giải quyết các vấn đề đặt ra khi xử lý ảnh để đưa ra
chính xác biển số đăng ký xe.



2
Trước đây, đã có những nghiên cứu đáng kể về việc phát
hiện biển số và những kỹ thuật nhận dạng. Tuy nhiên hầu hết đều có
những hạn chế nhất định, làm việc với camera tĩnh, góc nhìn, độ phân
giải cố định, chỉ sử dụng cho một mẫu hay loại biển số cụ thể, phụ
thuộc vào font chữ dùng trên biển số. Đặc biệt là độ chính xác không
được tốt dưới những điều kiện khác nhau như ảnh chụp không trực
diện (thay đổi về tư thế), nhạy cảm với độ sáng (chói sáng, thiếu
sáng), hiệu ứng sáng tối.
Chính vì các lý do cơ bản trên, việc lựa chọn đề tài nghiên cứu
“Nhận dạng biển số xe dùng phƣơng pháp học sâu CNNs” là cần
thiết và đáp ứng yêu cầu cấp thiết của mục tiêu cải thiện độ chính xác
cho hệ thống nhận dạng biển số tự động.
Luận văn được bố cục như sau:
Chương 1 – Tổng quan – Cơ sở lý luận.
Chương 2 – Cơ sở lý thuyết.
Chương 3 – Thực nghiệm.
Chương 4 – Cài đặt và kiểm thử.


3
Chƣơng 1 - TỔNG QUAN
1.1. Khái niệm về hệ thống nhận dạng biển số xe
1.1.1. Khái niệm
Hệ thống nhận dạng biển số xe là hệ thống có khả năng phân
tích hình ảnh và xác định vùng chứa biển số trên xe.
1.1.2. Lịch sử và phát triển
1.1.3. Cách thức hoạt động của hệ thống
Hệ thống ALPR (Automatic License Plate Recognition)

gồm phần cứng và phần mềm, trong đó phần cứng là camera thu
nhận ảnh xe và phần mềm có chức năng nhận dạng biển số xe từ ảnh
chụp của camera. Camera thu nhận ảnh được đặt tại một vị trí cố định
sao cho có thể quét được hình ảnh xe một cách rõ ràng và chụp lại
hình ảnh đối tượng xe có chứa biển số. Ảnh này được đưa vào phần
mềm nhận dạng để trích ra chính xác biển số xe có trong ảnh, sau
đó một thuật toán OCR (Optical Character Recognition) được
sử dụng để lấy từng ký tự và chuyển đổi thành định dạng mà máy
tính có thể phân biệt được các chữ và số như dạng text.
1.1.4. Ứng dụng thực tiễn tại Việt Nam
Hệ thống nhận dạng biển số xe được xây dựng nhằm mục
đích giám sát, kiểm soát các phương tiện.
1.2. Một số nghiên cứu về phƣơng pháp cách ly biển số,
phân đoạn ký tự từ ảnh chụp của camera
1.2.1. Chuyển đổi Hough
1.2.2. Hình thái học
1.3. Một số nghiên cứu về phƣơng pháp nhận dạng ký tự
trong biển số từ ảnh chụp của camera
Phương pháp phổ biến nhất để nhận dạng ký tự là sử dụng
mạng noron (hoặc SVM, K-NN,…), tức là huấn luyện cho máy tính
để nhận dạng các ký tự.
1.4. Đề xuất phƣơng pháp áp dụng trong luận văn.
Các công trình nghiên cứu là những cơ sở quý báo, và các
công trình này bước đầu cũng đã áp dụng. Trong đồ án này, công
việc cần phải giải quyết vấn đề phát hiện vùng chứa biển số xe và


4
nhận dạng ký tự trong biển số. Cả bài toán phát hiện vùng chứa biển
số và bài toán nhận dạng ký tự sẽ sử dụng mô hình Convolutional

Neural Networks để tiến hành nhận dạng cho các biển đăng ký xe
của Việt Nam.


5
Chƣơng 2 - CƠ SỞ LÝ THUYẾT
2.1. Tổng quan về mạng noron, luật học delta và lan
truyền ngƣợc
2.1.1. Giới thiệu về mạng noron
Mạng nơron nhân tạo, Artificial Neural Network (ANN)
là một mô hình xử lý thông tin phỏng theo cách thức xử lý
thông tin của các hệ nơron sinh học. Nó được tạo nên từ một số
lượng lớn các phần tử (nơron) kết nối với nhau thông qua các liên
kết (trọng số liên kết) làm việc như một thể thống nhất để giải
quyết một vấn đề cụ thể nào đó. Một mạng nơron nhân tạo được
cấu hình cho một ứng dụng cụ thể (nhận dạng mẫu, phân loại dữ
liệu,...) thông qua một quá trình học từ tập các mẫu huấn luyện. Về
bản chất học chính là quá trình hiệu chỉnh trọng số liên kết giữa các
nơron.
Một Nơron nhân tạo cũng giống như một Nơron sinh học
được cấu thành từ hai khối chính: nối kết và thân với nhân bên trong.
Mỗi khối này chịu trách nhiệm cung cấp hai kiểu biến đổi toán học
khác nhau hình thành lên cơ chế xử lý thông tin của một Nơron: Biến
đổi toán học nối kết và biến đổi toán học bên trong thân Nơron. Mô
hình tổng quát của một Nơron được mô tả trong hình sau:

Hình 2.1: Mô hình một noron sinh học


6


m

yi  f ( wij x j   i )
j 1

“Cháy”
“Không
cháy”

z  0
1 if
f ( z)  
otherwise
0
Hình 2.2: Mô hình một noron nhân tạo của McCulloch và Pitts
Một cách tổng quát, mạng nơron nhân tạo là một cấu trúc xử
lý thông tin phân phối song song có các đặc điểm sau:
1. Là một mô hình toán học.
2. Chứa một số lượng lớn các node (thành phần xử lý) bên
trong.
3. Các trọng số tích lũy các tri thức.
4. Các node có phản ứng động đến các input của nó và sự phản
ứng hoàn toàn phụ thuộc vào thông tin cục bộ của nó, đó là:
các tín hiệu input đến các node và các trọng số kết nối.
5. Có khả năng học, nhớ lại, tổng quát hóa từ dữ liệu học bởi
việc điều chỉnh trọng số kết nối.
6. Có khả năng tính toán mạnh mẽ và không là một nơron mang
thông tin đơn lẻ.
Bởi vì các đặc tính trên, các tên gọi khác thường sử dụng cho

mạng nơron nhân tạo là: mô hình xử lý phân phối song song, mô hình
kết nối, hệ thống tự tổ chức.
2.1.2. Một số kiểu mạng noron
Các nơron trong mạng có thể kết nối đầy đủ (fully
connected) tức là mỗi nơron đều được kết nối với tất cả các nơron
khác, hoặc kết nối cục bộ (partially connected) chẳng hạn chỉ kết
nối giữa các nơron trong các tầng khác nhau.


7
2.1.3. Mạng noron lan truyền ngƣợc MLP

Hình 2.3: Ánh xạ phi tuyến trong noron
Ánh xạ phi tuyến bao gồm:
Phép toán hợp nhất: đồ án xử dụng phép hợp nhất tuyến tính
(Integration Linear Function)

Hàm truyền phi tuyến: đồ án sử dụng hàm sigmoid với  =
1


8
Đồ án xây dựng mô hình mạng neuron truyền thẳng đơn giản
ba lớp với lớp nhập, lớp ẩn và lớp xuất

Hình 2.4: Mô hình mạng noron truyền thẳng đơn giản
2.2. Giới thiệu về mạng noron tích chập và kỹ thuật cải
tiến.
2.2.1. Giới thiệu về mạng noron tích chập
Convolutional Neural là một trong những mô hình Deep

Learning tiên tiến giúp cho chúng ta xây dựng được những hệ thống
thông minh với độ chính xác cao như hiện nay.
2.2.2. Convolution
Để dễ hình dung, ta có thể xem tích chập như một cửa
sổ trượt (sliding window) áp đặt lên một ma trận.
2.2.3. Mô hình mạng noron tích chập
Trong mô hình CNNs các layer liên kết được với nhau thông
qua cơ chế convolution. Layer tiếp theo là kết quả convolution từ
layer trước đó, nhờ vậy mà ta có được các kết nối cục bộ. Nghĩa là
mỗi nơ-ron ở layer tiếp theo sinh ra từ filter áp đặt lên một vùng ảnh
cục bộ của nơ-ron layer trước đó.
Mỗi layer như vậy được áp đặt các filter khác nhau, thông
thường có vài trăm đến vài nghìn filter như vậy. Một số layer
khác như pooling/subsampling layer dùng để chắt lọc lại các thông
tin hữu ích hơn (loại bỏ các thông tin nhiễu)


9

\
Hình 2.6: Ví dụ mạng noron tích chập
2.2.4. Xây dựng mạng noron tích chập
Từ thực tế đặt ra ở mục 2.2.3 người ta thấy rằng để giảm số
lượng tham số cần giảm số lượng kết nối giữa các lớp. Từ đây thành
phần convolution được áp dụng. Ý tưởng chính là mỗi noron chỉ cần
kết nối tới một vùng cục bộ của ảnh thay vì trên toàn bộ ảnh như
mạng noron truyền thẳng truyền thống.
Tầng Convolution(conv)
Tầng Pooling
Tầng ReLU

Tầng Fully-connected
CNN có kiến trúc được hình thành từ các thành phần cơ bản
bao gồm Convolution (CONV), Pooling (POOL), ReLU, Fullyconnected (FC) về mặt xây dựng kiến trúc tổng quát CNN được mô
tả như sau (dấu mũi tên thể hiện thứ tự sắp xếp các tầng từ trước đến
sau).
[[CONV -> RELU]*N -> POOL?]*M -> [FC -> RELU]*K -> FC
Trong đó:
 [CONV -> RELU]*N tức là trong kiến trúc này sau tầng
CONV là tầng RELU, trong CNN kiến trúc 2 tầng này có thể
lặp N lần.
 POOL? là tầng Pooling cho người thiết kế quyết định có thể
có hoặc không.
 [[CONV -> RELU]*N -> POOL?]*M trong kiến trúc CNN
có thể lặp lại M lần kiểu sau tầng CONV là tầng RELU và kế
tới là tầng Pooling.


10
[FC -> RELU]*K trong CNN có thể lặp K lần cấu trúc kiểu
sau tầng FC là tầng RELU nhưng trước nó phải có tầng [CONV ->
RELU].
2.3. Phƣơng pháp cải tiến gần đây
2.3.1. Phƣơng pháp học không giám sát để huấn luyện bộ
trọng ban đầu
2.3.2. Phƣơng pháp Dropout trong Deep Neural Networks
Như ta đã biết overfitting là một vấn nạn đối với Machine
Learning, đặc biệt là trong mạng Deep Neural Networks. Khi muốn
cho mô hình trở nên phức tạp hơn, ta thường tăng số lượng layer và
số lượng noron (unit) của mỗi layer thay vì tăng bậc của feature.
Nhưng khi mô hình phức tạp hơn, overfitting bắt đầu xuất hiện, vì số

lượng tham số trong mạng Deep Neural Networks nhiều và có “độ
sâu” khác nhau, vì vậy có một kĩ thuật dành riêng cho mạng NN và
khá đơn giản, đó là Drop-out.
Drop-out là một kĩ thuật Regularization để chống lại vấn đề
overfitting. Cách Drop-out thực hiện là xoá bỏ một số unit trong các
step training ứng với một giá trị xác suất p cho trước.


11
Chƣơng 3. THỰC NGHIỆM
Ngôn ngữ dùng để xây dựng mô hình mạng trong chương 3:
Python 3.6.4
Hình ảnh kiểm thử: 500 bức ảnh biển số được sinh từ mã
nguồn gen.py, được sử dụng cho thực nghiệm tại mục 3.1, 3.2 và 3.4
Hình ảnh huấn luyện: được sinh ra từ mã nguồn gen.py tùy
thuộc vào số lần huấn luyện.
Hình ảnh thực tế: 261 bức ảnh sưu tập, được sử dụng cho
thực nghiệm tại mục 3.3
3.1. Thực nghiệm mạng noron căn bản tự xây dựng trên
bộ dữ liệu ảnh sƣu tập
Bộ ảnh huấn luyện sẽ được sinh ra dựa trên giải thuật tạo ảnh
captcha theo đó ảnh tạo ra sẽ được đánh nhãn mang chuỗi ký tự biển
số tương ứng. Thêm vào đó là giá trị xuất hiện (0 hoặc 1) nhằm chỉ
thị biển số có xuất hiện hoàn toàn trong ảnh hay không (những
trường hợp biển số kích thước ko hợp lệ cũng sẽ loại bỏ), giá trị này
dùng để huấn luyện mạng nhận dạng vùng biển số (khoanh vùng biển
số)
Kích thước của ảnh huấn luyện: 64 x 128 (pixel)

Hình 3.1: Mẫu biển 11 ký tự (Nhãn: 74-DY038.45_1)


Hình 3.2: Mẫu biển 9 ký tự (Nhãn: 09-T13567_1)
Một số ảnh huấn luyện có nhãn với giá trị xuất hiện là 0:

Hình 3.3: Biển số nhãn:82-T8242.84_0


12
Ảnh đầu vào sau khi vecto hóa:

Hình 3.5: Ảnh đầu vào sau khi vecto hóa
Nhãn của ảnh (label của ảnh đầu vào) sau khi vecto hóa, vị
trí ký tự xuất hiện trong mảng sẽ mang giá trị 1 còn lại là 0:

Hình 3.6: Nhãn của ảnh đầu vào sau khi vecto hóa
Đồ án đã xây dựng mạng noron căn bản ba lớp theo lý thuyết
đã đưa ra ở trên
Số lần huấn luyện (số vòng lặp): 500 lần với hệ số học: 0.001

Hình 3.7: Noron căn bản sau huấn luyện
Kiểm thử mạng với 100 ảnh biển số ta được kết quả như hình
3.9


13

Hình 3.9: Kết quả kiểm thử mạng noron căn bản
3.2. Thực nghiệm mạng noron căn bản dùng thƣ viện
trên bộ dữ liệu ảnh sƣu tập
Đồ án sử dụng lớp tf.nn của thư viện tensorflow nhằm thực

nghiệm với mô hình mạng noron này, ta được kết quả như hình 3.10.
Số lần huấn luyện (số vòng lặp): 500 lần với hệ số học: 0.001
Số ảnh kiểm thử: 100

Hình 3.10: Thực nghiệm noron căn bản dùng thƣ viện
3.3. Thực nghiệm phƣơng pháp phân lớp truyền thống
dựa vào hình thái học sử dụng thƣ viện open CV trên bộ dữ liệu
ảnh sƣu tập
Số liệu thu thập sau khi thực nghiệm ứng dụng hệ thống giữ
xe thông minh được phát triển bởi công ty Tâm Toàn Thắng:


14

Hình 3.14: Giao diện vận hành TTT-SP
Kết quả: 247/261 bức ảnh thực tế ~ 94,6%
Ứng dụng nhận dạng không thành công một số ảnh: bị tối thiếu sáng, biển bị bóng – phản chiếu, biển dơ – mù - ố vàng, biển
nghiêng – lệch.
3.4. Thực nghiệm phƣơng pháp phân lớp truyền thống
dựa vào hình thái học sử dụng thƣ viện open CV trên bộ dữ liệu
ảnh sƣu tập
Đồ án sử dụng thư viện tensorflow xây dựng mô hình mạng
CNNs đơn giản bao gồm hai tầng giữa (tương ứng 32 đặc trưng và 64
đặc trưng).
Số lần huấn luyện (số vòng lặp): 500 lần với hệ số học: 0.001
Số ảnh kiểm thử: 100
Ta được kết quả như hình 3.15.

Hình 3.15: Thực nghiệm mạng CNNs đơn giản
Nhận xét:



15
Mạng noron truyền thẳng (feedforward neural network)
không thể hiện tốt với dữ liệu dạng ảnh (kích thước lớn). Chính sự
liên kết quá đầy đủ đã tạo nên những hạn chế cho mô hình.
Sau thực nghiệm ta có thể thấy trong ba mô hình tại mục 3.1
– 3.2 – 3.4, tuy số lần lặp khá ít, chỉ 500 lần, mô hình mạng noron đa
lớp đơn giản cho kết quả cao nhất.
Thực nghiệm phương pháp phân lớp truyền thống tại mục 3.3
nhằm cho thấy một số mặt hạn chế của phương pháp này và làm tiền
đề cho việc đề xuất phương pháp mô hình mạng CNNs cải tiến sẽ
được cài đặt trong chương 4.


16
Chƣơng 4 – CÀI ĐẶT VÀ KIỂM THỬ
Ngoài các mô hình được xây dựng dùng cho mục đích thực
nghiệm trong chương 3, luận văn xây dựng thêm mô hình mạng
CNNs dùng cho ứng dụng thực tế.
4.1. Cài đặt ứng dụng
4.1.1. Nền tảng công nghệ sử dụng
Ngôn ngữ: Python version 3.6.4 – Anaconda 3, javascript kết
hợp công nghệ ajax, html
Thư viện: Tensorflow, opencv
Card màn hình: GeForce 940MX 2GB nhằm tăng tốc độ khi
huấn luyện mô hình.
Font chữ: Soxe2banh.ttf (Loại bỏ bớt một số ký tự không
được sử dụng trong biển số xe máy tại Việt Nam)
Luận văn xây dựng và sử dụng mạng CNNs giải quyết cả 2

công đoạn:
 Dò tìm biển số.
Sử dụng tầng convolution trượt cửa sổ lần lượt trên
ảnh. Vị trí được khoanh vùng sẽ mang giá trị xác suất cao
nhất. Sau đó tất cả các vị trí được cho là biển số (đặt ngưỡng
xác suất >0.5) sẽ được gộp lại thành một vị trí chung trên ảnh
 Nhận dạng chuỗi ký tự trên biển số.
Mỗi vị trí cửa sổ trên ảnh sẽ được nhận dạng chuỗi
ký tự.
Xây dựng mô hình mạng gồm ba tầng giữa và một tầng fully
connected như hình 4.1


17

Hình 4.1: Mô hình mạng
Sau 460 lần lặp, mô hình đạt độ chính xác về:
 Sự xuất hiện của biển số (phù hợp): 72%
 Nhận dạng chính xác ký tự trong biển: 40%
Độ lỗi: ~1288.52 (trong đó độ lỗi xuất hiện biển số: ~280.21,
độ lỗi ký tự: ~1008.31 )

Hình 4.2: Huấn luyện sau 460 vòng lặp
Sau 32460 lần lặp, mô hình đạt độ chính xác về:
 Sự xuất hiện của biển số (phù hợp): 90%
 Nhận dạng chính xác ký tự trong biển: 74%


18
Độ lỗi: ~458.71 (trong đó độ lỗi xuất hiện biển số: ~116.02,

độ lỗi ký tự: ~342.68 )

Hình 4.3: Huấn luyện sau 32460 lần lặp
4.1.2. Các chức năng của chƣơng trình
 Giao diện của chương trình:

Hình 4.4: Giao diện trang chủ của chƣơng trình
 Để chọn ảnh cần nhận dạng, ta nhấp chuột vào hình ảnh trên
menu bên trái.


19

Hình 4.5: Chọn ảnh cần nhận dạng
 Để nhận dạng ảnh, ta nhấp chuột vào nút “Process” bên dưới.
Kết quả sẽ được hiển thị trên bức ảnh và bên dưới bức ảnh.

Hình 4.6: Bƣơc tiến hành nhận dạng
 Để đăng nhập vào chương trình ta nhấn nút Login trên thanh
menu

Hình 4.7: Đăng nhập vào chƣơng trình


20
 Chương trình còn cho phép tiếp tục huấn luyện mô hình
mạng sau khi đăng nhập với quyền quản trị.

Hình 4.8: Đăng nhập với quyền quản trị
 Để tiếp tục huấn luyện mô hình mạng, ta nhấn nút “Training”

trên giao diện

Hình 4.9: Tiếp tục huấn luyện mô hình mạng của chƣơng trình
Đầu vào của việc tiếp tục huấn luyện mạng sẽ là tập tin trọng
số cũ (tập tin weights.npz), sau khi việc huấn luyện hoàn tất, tập tin
lưu trữ trọng số mới sẽ được tạo ra.
4.2. Kiểm thử và đánh giá
Hình ảnh thực tế: 261 bức ảnh sưu tập (được sử dụng tương
tự cho thực nghiệm tại chương 3 - mục 3.3).
Mô hình mạng được huấn luyện liên tục trong ba ngày với
hơn 100000 lần lặp, trong đó mỗi lần lặp sử dụng 50 bức ảnh huấn
luyện khác nhau.
Tiến hành kiểm thử với bộ ảnh thực tế sưu tập đạt kết quả
như sau:


21
Khoanh vùng biển số đạt 252/261 bức ảnh thực tế ~ 96.5%
Nhận dạng ký tự trong phân vùng biển số đạt 105/261 bức
ảnh thực tế ~ 40.2%
Thay đổi: 32 -> 48 đặc trưng / số lần lặp: 32 000
Khoanh vùng biển số đạt 252/261 bức ảnh thực tế ~ 96.5%
Nhận dạng ký tự trong phân vùng biển số đạt 213/261 bức
ảnh thực tế ~ 81.6%
Hạn chế của mô hình: như đã đề cập trong mục 4.1.1,
phương pháp khoanh vùng dựa trên việc lựa chọn cửa sổ cho xác suất
cao nhất, việc nhận dạng ký tự trong phân vùng phụ thuộc rất lớn vào
phân vùng biển số đó có chính xác hay không, và nhiều trường hợp
sai một vài ký tự do cửa sổ cho xác suất cao nhất lại không phù hợp
để đưa ra kết quả nhận dạng đúng.

Như ví dụ bên dưới, mô hình đưa ra sáu tọa độ cửa sổ và
chuỗi ký tự nhận dạng được tương ứng. Cửa sổ có tọa độ (7,25) với
xác suất 0,84 đưa ra kết quả chính xác, tuy nhiên cửa sổ có tọa độ
(7,20) với xác suất 0.94 được chọn mang lại kết quả nhận dạng ký tự
không chính xác.

Hình 4.11: Tọa độ các cửa sổ


22

Hình 4.12: Biển số nhận dạng sai
Nơron 3
lớp tự xây
dựng

Nơron 3
lớp dùng
thƣ viện

CNNs
16 đặc
trƣng

CNNs 32 đặc
trƣng tầng 1 & 64
đặc trƣng tầng 2
kết hợp drop out

Số lần

lặp

500

500

500

500

Hệ số
học

0.001

0.001

0.001

0.001

Tỷ lệ
nhận
dạng ký
tự (%)

0

26


28%

74%

Bảng thống kê kết quả nhận dạng trên ảnh tự tạo
CNNs 32 đặc trƣng
tầng 1 & 64 đặc trƣng
tầng 2

CNNs 48 đặc trƣng
tầng 1 & 64 đặc trƣng
tầng 2

Số lần lặp

500

32 000

Hệ số học

0.001

0.001


23
Tỷ lệ khoanh
vùng biển số
49%

96,5
(%)
Tỷ lệ nhận dạng
40,2
81,6
ký tự (%)
Bảng thống kê kết quả nhận dạng trên ảnh thực tế
4.3. Nhận xét
Tuy mô hình trong luân văn còn nhiều hạn chế (do hạn chế
về thời gian huấn luyện, thời gian kiểm thử cũng như việc lựa chọn,
thiết lập mô hình, tự khởi tạo ngẫu nhiên bộ trọng ban đầu) và chưa
thể so sánh với các ứng dụng đã được đưa vào thương mại. Nhưng về
cơ sở lý thuyết phương pháp nhận dạng áp dụng CNNs mở ra một
hướng mới trong bài toán nhận dạng biển số xe nhờ vào khả năng rút
trích đặc trưng rất linh hoạt và hiệu quả (tạo nên các bản đồ đặc trưng
mạnh).
Trong thực tế, ta có thể chọn giải quyết các bài toán cụ thể
mà nhu cầu mở rộng không quá lớn và không quá đòi hỏi độ linh
hoạt cao. Với những bài toán như vậy thì mạng CNNs vẫn là một mô
hình hiệu quả.


×