14
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ LÊ THỊ THU HẰNG NGHIÊN CỨU VỀ MẠNG NƠRON TÍCH CHẬP VÀ ỨNG DỤNG CHO BÀI TOÁN NHẬN DẠNG BIỂN SỐ XE LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN HÀ NỘI, 2016

NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

LÊ THỊ THU HẰNG

NGHIÊN CỨU VỀ MẠNG NƠRON TÍCH

CHẬP VÀ ỨNG DỤNG CHO BÀI TOÁN

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

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

HÀ NỘI, 2016

Page 2: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

LÊ THỊ THU HẰNG

NGHIÊN CỨU VỀ MẠNG NƠRON TÍCH

CHẬP VÀ ỨNG DỤNG CHO BÀI TOÁN

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

Ngành : Công nghệ thông tin

Chuyên ngành : Kĩ thuật phần mềm

Mã số : 60480103

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

Người hướng dẫn khoa học: TS.Nguyễn Văn Vinh

HÀ NỘI, 2016

Page 3: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

3

LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi dƣới sự hƣớng dẫn

của Tiến sĩ Nguyễn Văn Vinh. Các kết quả đạt đƣợc trong luận văn là sản phẩm

của riêng cá nhân, không sao chép của ngƣời khác. Nội dung của luận văn có tham

khảo và sử dụng một số thông tin, tài liệu từ các nguồn sách, tạp chí đƣợc liệt kê trong

danh mục các tài liệu tham khảo.

Tác giả luận văn

Lê Thị Thu Hằng

Page 4: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

4

LỜI CẢM ƠN

Em xin chân thành cảm ơn các thầy, các cô khoa Công nghệ Thông tin-

Trƣờng Đại học Công nghệ - Đại học quốc gia Hà Nội đã tận tình dạy dỗ, truyền

đạt cho em nhiều kiến thức quý báu.

Em xin tỏ lòng biết ơn sâu sắc đến thầy Ts Nguyễn Văn Vinh, ngƣời đã

tận tình giúp đỡ và truyền đạt nhiều kinh nghiệm để đề tài có thể đƣợc thực hiện

và hoàn thành.

Xin chân thành cảm ơn các bạn trong khoa Công Nghệ Thông Tin,

Trƣờng ĐH Công nghệ đã giúp đỡ, động viên tôi rất nhiều trong quá trình thực

hiện đề tài.

Em xin chân thành cảm ơn !

Hà nội, tháng 5 năm 2016

Học viên

Lê Thị Thu Hằng

Page 5: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

5

MỤC LỤC

LỜI MỞ ĐẦU ................................................................................................ 10

CHƢƠNG 1: MẠNG NƠRON..................................................................... 12

VÀ MẠNG NƠRON TÍCH CHẬP .................................................................. 12

1.1. Mạng nơron và mạng nơron lan truyền ngƣợc ................................. 12

1.1.1. Giới thiệu về mạng Nơron ................................................................ 12

1.1.2. Kiến trúc mạng truyền thẳng ............................................................ 14

1.1.3. Mạng nơron truyền thẳng và thuật toán lan truyền ngƣợc ................ 15

1.2. Mạng nơron tích chập .......................................................................... 23

1.2.1. Định nghĩa mạng nơron tích chập [1] ............................................... 23

1.2.2. Tích chập (convolution) .................................................................... 23

1.2.3. Mô hình mạng nơron tích chập ......................................................... 25

1.2.4. Xây dựng mạng nơron tích chập ...................................................... 26

CHƢƠNG 2: TỔNG QUAN VỀ NHẬN DẠNG BIỂN SỐ XE ................ 37

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

2.1.1 Khái niệm ........................................................................................... 37

2.1.2 Lịch sử và phát triển. .......................................................................... 37

2.1.3. Cách thức hoạt động của hệ thống nhận dạng biển số xe. ................ 38

2.1.4. Phân loại các ứng dụng nhận dạng biển số xe. ................................. 38

2.1.5. Ứng dụng thực tiễn tại Việt Nam ...................................................... 39

2.1.6. Phân loại biển số xe. ......................................................................... 40

2.2. Phƣơng pháp phát hiện biển số xe từ ảnh chụp của camera. ................ 41

2.2.1. Phƣơng pháp chuyển đổi Hough. ...................................................... 42

2.2.2. Phƣơng pháp hình thái học ............................................................... 42

2.3. Quy trình nhận dạng biển số xe ................................................................ 43

CHƢƠNG 3: ÁP DỤNG MẠNG NƠRON TÍCH CHẬP .......................... 45

TRONG NHẬN DẠNG KÝ TỰ ................................................................... 45

3.1. Xây dựng mô hình mạng ........................................................................... 45

Page 6: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

6

3.2. Cấu hình thử nghiệm ................................................................................. 47

3.3. Thiết kế mạng cho bài toán: ...................................................................... 48

3.4. Kết quả thực nghiệm nhận dạng biển số xe với mạng nơron tích chập . 48

KẾT LUẬN .................................................................................................... 55

TÀI LIỆU THAM KHẢO ............................................................................ 56

Page 7: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

7

DANH MỤC BẢNG

Bảng 1.1. Một số hàm truyền thông dụng ................................................... 14

Bảng 2.1. Quy định biển số cho quân đội. ................................................... 40

Page 8: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

8

DANH MỤC HÌNH

Hình 1.1. Cấu tạo một Nơron ....................................................................... 12

Hình 1.2. Mạng truyền thẳng ....................................................................... 15

Hình 1.3. Mạng nơron truyền thẳng nhiều tầng ........................................ 16

Hình 1.4. Ảnh hƣởng của kích thƣớc mẫu .................................................. 21

Hình 1.5. Minh họa tích chập ....................................................................... 24

Hình 1.6. Ảnh mờ sau khi chập .................................................................... 24

Hình 1.7. Ảnh đƣợc phát hiện biên sau khi chập ....................................... 25

Hình 1.8. Mô hình mạng nơron tích chập ................................................... 26

Hình 1.9. Mô hình mạng perceptron nhiều tầng ........................................ 27

Hình 2.1 Ảnh xám và lƣợc đồ xám của ảnh ................................................ 43

Hình 3.1. Mô hình mạng nơron tích chập trong nhận dạng ký tự số ...... 45

Hình 3.2. Minh họa mạng liên kết đầy đủ (full connection)...................... 47

Hình 3.3. Mô hình nhận dạng kí tự số ......................................................... 47

Hình 3.4. Mô hình mạng cho bài toán ......................................................... 48

Hình 3.5. Một số biển không tách đúng ký tự ............................................ 49

Page 9: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

9

DANH MỤC TỪ VIẾT TẮT

Từ viết

tắt

Tiếng anh Tiếng việt

CNNs Convolution Neural Networks Mạng nơron tích chập

ANN Artificial Neural Network Mạng nơron nhân tạo

MLP Multi Layer Perceptron Mạng perceptron nhiều tầng

CONV Convolution Tích chập

ALPR Automatic License Plate Number Nhận dạng biển số xe tự động

MNIST Mixed National Institute of

Standards and

Technology database

Viện liên hợp các quốc gia

Tiêu chuẩn và Công nghệ cơ sở

dữ liệu

OCR Optical Character Recognition Nhận dạng ký tự quang học

GPU Graphics Processing Unit Khối xử lý đồ họa

Page 10: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

10

LỜI MỞ ĐẦU

Mạng Nơron Nhân Tạo -Artificial Neural Network (ANN) là một mạng

có khả năng mô phỏng và học rất hiệu quả. ANN có thể mô phỏng gần nhƣ bất

cứ hàm mục tiêu nào với số biến nhập và xuất tuỳ ý, ở điểm này thì có lẽ chƣa

có một phƣơng pháp nào trƣớc đây đạt đƣợc. ANN còn có một ƣu điểm tuyệt

vời khác, đó là khả năng học. Một ANN gần giống nhƣ một đối tƣợng có thể tƣ

duy. Mỗi khi có kiến thức mới (Data mới) ta lại đƣa cho ANN học. Khả năng

này của mạng nơron nhân tạo là rất cần thiết cho các vấn đề có dữ liệu luôn thay

đổi, cập nhật nhƣ các bài toán về nhận dạng mà tôi đang nghiên cứu.

Học sâu – deep learning (hay còn gọi là học có cấu trúc sâu – deep

structured learning, học nhiều lớp – hierarchical hoặc học máy sâu – deep

machine learning) là một nhánh của học máy dựa trên tập các giải thuật cố gắng

trừu tƣợng hóa dữ liệu bởi nhiều tầng với cấu trúc phức tạp và nhiều biến đổi phi

tuyến.

Học sâu là một nhánh lớn của phƣơng pháp học máy dựa trên việc học cách

biểu diễn dữ liệu. Ví dụ một bức ảnh có thể biểu diễn theo nhiều cách nhƣ một

véc tơ giá trị mức xám của điểm ảnh hoặc theo cách trừu tƣợng hơn là một tập

các biên, các vùng của hình khối cụ thể,…

Nhiều kiến trúc học sâu nhƣ mạng nơron sâu (deep neural networks), mạng

nơron tích chập và mạng hồi quy đã đƣợc áp dụng trong các lĩnh vực nhƣ thị

giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ tự nhiên, nhận dạng âm

thanh và tin sinh học đã thu đƣợc kết quả tiến bộ.

Hiện nay rất nhiều các bài toán nhận dạng sử dụng học sâu để giải quyết

do học sâu có thể giải quyết các bài toán với kích thƣớc đầu vào lớn với hiệu

năng cũng nhƣ độ chính xác vƣợt trội so với các phƣơng pháp phân lớp truyền

thống.

Những năm gần đây, ta đã chứng kiến đƣợc nhiều thành tựu vƣợt bậc

trong ngành Thị giác máy tính (Computer Vision). Các hệ thống xử lý ảnh lớn

nhƣ Facebook, Google hay Amazon đã đƣa vào sản phẩm của mình những chức

năng thông minh nhƣ nhận diện khuôn mặt ngƣời dùng, phát triển xe hơi tự lái,..

Mạng nơron tích chập (Convolutional Neural Networks- CNNs) là một trong

những mô hình học sâu 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. Mạng nơron tích chập là một kiểu

Page 11: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

11

mạng nơron truyền thẳng đặc biệt mà có thể kết xuất các thuộc tính hình học trong một

bức ảnh. Mạng nơron tích chập có thể nhận dạng ảnh có nhiều thay đổi, kết quả nhận

dạng độ chính xác và tốc độ cao. Trong luận văn cao học này, em đi vào nghiên cứu

về mạng nơron tích chập và ý tƣởng của mô hình mạng nơron tích chập trong phân lớp

ảnh (Image Classification), và áp dụng trong việc xây dựng hệ thống nhận dạng biển

số xe tự động

Nội dung bài báo cáo bao gồm 3 chƣơng.

Chƣơng 1: Mạng nơron và mạng nơron tích chập.

Chƣơng 2: Tổng quan về nhận dạng biển số xe.

Chƣơng 3: Áp dụng mạng nơron tích chập trong nhận dạng ký tự

Page 12: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

12

CHƢƠNG 1: MẠNG NƠRON

VÀ MẠNG NƠRON TÍCH CHẬP

1.1. Mạng nơron và mạng nơron lan truyền ngƣợc

1.1.1. Giới thiệu về mạng Nơron

Định nghĩa: 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.

Cấu trúc nơron nhân tạo:

Hình 1.1. Cấu tạo một Nơron

Các thành phần cơ bản của một nơron nhân tạo bao gồm:

• Tập các đầu vào: Là các tín hiệu vào (đầu vào signals) của nơron, các tín

hiệu này thƣờng đƣợc đƣa vào dƣới dạng một vector N chiều.

• Tập các liên kết: Mỗi liên kết đƣợc thể hiện bởi một trọng số liên kết –

Synaptic weight. Trọng số liên kết giữa tín hiệu vào thứ j với nơron k thƣờng

đƣợc kí hiệu là wkj. Thông thƣờng, các trọng số này đƣợc khởi tạo một cách

Wk

Wkx1

x2

xN Wk

.

.

.

.

.

.

f (.) yk

Hàm truyền

Hàm

bk

Ngƣỡng

Đầu ra

Đầu vào Trọng số liên kết

Page 13: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

56

TÀI LIỆU THAM KHẢO

Tiếng Việt

[1] https://ongxuanhong.wordpress.com/2015/12/29/convolutional-neural-

networks-la-gi/

Tiếng Anh

[2] http://neuralnetworksanddeeplearning.com/chap6.html

[3] http://neuralnetworksanddeeplearning.com/chap2.html

[4] Y. LeCun and Y. Bengio.“Convolutional networks for images, speech, and

time-series.” In M. A. Arbib, editor, The Handbook of Brain Theory and Neural

Networks. MIT Press, 1995.

[5] Fabien Lauer, ChingY. Suen, Gérard Bloch,”A trainable feature extractor

for handwritten digit recognition“,Elsevier, october 2006.

[6] Patrice Y. Simard, Dave Steinkraus, John Platt, "Best Practices for

Convolutional Neural Networks Applied to Visual Document Analysis,"

International Conference on Document Analysis and Recognition (ICDAR),

IEEE

[7] Chirag N. Paunwala & Suprava Patnaik. “A Novel Multiple License

Plate Extraction Techniquefor Complex Background in Indian Traffic

Conditions”, Sarvajanik College of Engineering and Technology, 2010

[8] Choo Kar Soon, Kueh Chiung Lin, Chung Ying Jeng and Shahrel A. Suandi,

“Malaysian Car Number Plate Detection and Recognition System”, 2012

[9] Tran Duc Duan, Duong Anh Duc, Tran Le Hong Du, “Combining

Hough Transform and Contour Algorithm for detecting Vehicles License-

Plates”, University of Natural Sciences, 2004

[10] Nobuyuki Otsu, "A threshold selection method from gray-level

histograms”, 1979

[11] Suman K. Mitra. “Recognition of Car License Plate using Morphology”,

hirubhai Ambani Institute of Information and Communication Technology,

Gandhinagar, Gujarat, India

[12] Các tài liệu về EmguCV tại www.emgucv.com OPenCV tại

www.opencv.com

[13] www.Deeplearning.net/software/theano/

Page 14: NGHIÊN CỨU VỀ MẠNG NƠRON TÍCHrepository.vnu.edu.vn/bitstream/VNU_123/16718/1/00050007351.pdf · giác máy, tự động nhận dạng tiếng nói, xử lí ngôn ngữ

57

[14] Quoc V. Le, A Tutorial on Deep Learning - Part 2: Autoencoders,

Convolutional Neural Networks and Recurrent Neural Networks,

[email protected], Google Brain, Google Inc,1600 Amphitheatre Pkwy,

Mountain View, CA 94043, October 20, 2015