Mục tiêu nghiên cứu Nghiên cứu và xây dựng một thuật toán nhận dạng bảng số xe Việt Nam với dữ liệu đầu vào là bộ cơ sở dữ liệu ảnh bảng số xe của FPT, sử dụng phương pháp mạng nơron
Trang 1BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP THÀNH PHỐ HỒ CHÍ MINH
PHAN NHƯ PHƯƠNG
NHẬN DẠNG BẢNG SỐ XE BẰNG PHƯƠNG PHÁP LB-CNN
Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã chuyên ngành: 60480101
LUẬN VĂN THẠC SĨ
THÀNH PHỐ HỒ CHÍ MINH, NĂM 2019
Trang 2Công trình được hoàn thành tại Trường Đại học Công nghiệp TP Hồ Chí Minh Người hướng dẫn khoa học: PGS.TS Phạm Thế Bảo
Người phản biện 1: TS Lê Thành Sách
Người phản biện 2: TS Trịnh Tấn Đạt
Luận văn thạc sĩ được bảo vệ tại Hội đồng chấm bảo vệ Luận văn thạc sĩ Trường Đại học Công nghiệp thành phố Hồ Chí Minh ngày … tháng … năm 20…
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
Trang 3NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên chúng tôi: PHAN NHƯ PHƯƠNG MSHV: 15117691
Ngày, tháng, năm sinh: 15/12/1991 Nơi sinh: Đồng Nai
Chuyên ngành: Khoa Học Máy Tính Mã chuyên ngành: 60480101
I TÊN ĐỀ TÀI:
Nhận dạng bảng số xe bằng phương pháp LB-CNN
NHIỆM VỤ VÀ NỘI DUNG:
Nghiên cứu và ứng dụng phương pháp LB-CNN vào việc nhận dạng bảng số xe Xây dựng chương trình nhận dạng bảng số xe tại Việt Nam, cung cấp các thuật toán hỗ trợ cho việc phát hiện và nhận dạng bảng số xe
II NGÀY GIAO NHIỆM VỤ: Theo Quyết định số 1486/QĐ-ĐHCN 25/06/2018 III NGÀY HOÀN THÀNH NHIỆM VỤ: 30/11/2019
IV NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS Phạm Thế Bảo
Tp Hồ Chí Minh, ngày … tháng … năm 20 …
Trang 4i
LỜI CẢM ƠN
Trước hết tôi xin gửi lời cảm ơn chân thành tới tập thể các thầy cô giáo trong Khoa Công nghệ Thông tin, Trường Đại học Công Nghiệp TP Hồ Chí Minh đã tận tình dạy dỗ và tạo mọi điều kiện giúp đỡ tôi trong quá trình học tập và nghiên cứu Đặc biệt, tôi xin bày tỏ lòng biết ơn sâu sắc đến thầy PGS.TS Phạm Thế Bảo, người
đã trưc tiếp hướng dẫn, chỉ bảo tôi tận tình trong suốt quá trình nghiên cứu và hoàn thiện luận văn này
Một lần nữa tôi xin được gửi lời cảm ơn đến tất cả các thầy cô giáo, bạn bè, gia đình
và cơ quan đã giúp đỡ tôi trong thời gian vừa qua
Trang 5ii
TÓM TẮT LUẬN VĂN THẠC SĨ
Trong nghiên cứu này, chúng tôi sử dụng phương pháp mạng nơron tích chập nhị phân cục bộ (LB-CNN) để xác định và nhận dạng ký tự quang học (OCR) Bộ dữ liệu ảnh đầu vào là bảng số xe Việt Nam được hỗ trợ bởi FPT Để xác định và nhận dạng bảng số xe, chúng tôi giải quyết 5 vấn đề chính: (1) xác định vùng bảng số xe, (2) trích vùng bảng số xe, (3) trích các dòng ký tự, (4) trích từng ký tự trên dòng, (5) nhận dạng ký tự Chúng tôi đã thực hiện kiểm thử trên bộ dữ liệu ảnh này và cho kết quả với độ chính xác là 90,00%
Từ các kết quả thực nghiệm cho thấy, hiệu năng nhận dạng bảng số xe của LB-CNN
và CNN là tương đương nhau Tuy nhiên, thời gian thực thi của LB-CNN nhanh hơn nhiều lần thời gian thực thi của CNN
Trang 6iii
ABSTRACT
In this work, we used the local binary convolution neural network (LB-CNN) method
to detect and recognize optical character (OCR) The input image data set is Vietnamese license plates supported by FPT company To detect and recognize the license plate, it is necessary to solve five main problems: (1) determining the license plate area, (2) extracting the license plate area, (3) extracting the character lines, (4) extracting each character on the line, (5) recognizing characters We have conducted
on the image data set and obtained an accuracy of 90.00%
The experimental results show that LB-CNN and CNN's license plate recognition performance is similar However, the execution time of LB-CNN is much faster than that of CNN
Trang 7iv
LỜI CAM ĐOAN Tôi xin cam đoan nội dung của luận văn “Nhận dạng bảng số xe bằng phương pháp
LB-CNN” là do tôi thực hiện dưới sự hướng dẫn của thầy PGS.TS Phạm Thế Bảo
Những nội dung được trình bày trong luận văn hoặc là của cá nhân hoặc là được tổng hợp từ nhiều nguồn tài liệu khác nhau.Việc tham khảo các nguồn tài liệu đã được thực hiện trích dẫn và ghi nguồn tài liệu tham khảo đúng quy định
Tôi xin chịu hoàn toàn trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình
Học viên
Phan Như Phương
Trang 8v
MỤC LỤC
MỤC LỤC v
DANH MỤC HÌNH ẢNH viii
DANH MỤC BẢNG BIỂU x
DANH MỤC TỪ VIẾT TẮT xi
MỞ ĐẦU 1
1 Đặt vấn đề 1
2 Mục tiêu nghiên cứu 1
3 Đối tượng và phạm vi nghiên cứu 1
4 Cách tiếp cận và phương pháp nghiên cứu 2
5 Ý nghĩa thực tiễn của đề tài 3
CHƯƠNG 1 TỔNG QUAN 4
1.1 Bài toán 4
1.2 Các hướng tiếp cận 5
1.2.1 Phương pháp Hough 8
1.2.2 Phương pháp hình thái học 10
1.2.3 Phương pháp khớp mẫu 11
1.3 Mô hình hoạt động của hệ thống nhận dạng bảng số xe 12
1.3.1 Các ứng dụng 12
1.3.2 Mô hình hoạt động 13
1.4 Đề xuất hướng giải quyết 14
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 15
2.1 Mạng Neural nhân tạo 15
2.2 Mạng Neural tích chập 18
2.2.1 Toán tử tích chập 18
2.2.2 Kiến trúc CNN 21
2.2.3 Huấn luyện CNN 29
2.3 Mạng Neural tích chập nhị phân cục bộ 37
2.3.1 Mô-đun tích chập nhị phân cục bộ 37
Trang 9vi
2.3.2 Học với các lớp LBC 37
2.3.3 Phân tích lý thuyết 38
2.4 Phân loại bảng số xe theo quy định của Việt Nam 42
2.4.1 Tiêu chuẩn bảng số xe 42
2.4.2 Quy định màu sắc 43
2.4.3 Quy định về bảng số Dân sự 44
2.4.4 Quy định về bảng số Bộ quốc phòng 45
2.4.5 Quy định về bảng số Bộ ngoại giao 46
2.4.6 Quy định về bảng số 80 47
CHƯƠNG 3 XÂY DỰNG MÔ HÌNH 49
3.1 Xác định vùng bảng số xe 49
3.1.1 Tiền xử lý 50
3.1.2 Tìm đường bao đối tượng 51
3.1.3 Lọc đường bao đối tượng 53
3.2 Trích vùng bảng số xe 55
3.3 Trích các dòng ký tự 56
3.4 Trích từng ký tự trên dòng 58
3.5 Nhận dạng 59
3.5.1 Xây dựng LBP với các bộ lọc tích chập 59
3.5.2 Mạng nơron tích chập nhị phân cục bộ 62
3.5.3 Xây dựng mô hình LB-CNN 63
3.6 Phương pháp đánh giá 65
CHƯƠNG 4 THỰC NGHIỆM VÀ ĐÁNH GIÁ 66
4.1 Môi trường thực nghiệm 66
4.2 Dữ liệu thực nghiệm 67
4.2.1 Bộ dữ liệu MNIST 67
4.2.2 Dữ liệu bảng số xe của FPT 67
4.3 Kết quả thực nghiệm 69
4.3.1 Huấn luyện mô hình 69
4.3.2 Nhận dạng 70
Trang 10vii
4.4 Đánh giá 71
4.4.1 So sánh LB-CNN và CNN 71
4.4.2 Thực nghiệm trên các mẫu xấu 72
4.5 Hướng phát triển 74
KẾT LUẬN VÀ KIẾN NGHỊ 75
1 Kết luận 75
1.1 Ưu điểm 75
1.2 Khuyết điểm 75
2 Kiến nghị 76
TÀI LIỆU THAM KHẢO 77
PHỤ LỤC 80
LÝ LỊCH TRÍCH NGANG CỦA CHÚNG TÔI 81
Trang 11viii
DANH MỤC HÌNH ẢNH
Hình 1.1 Phân lớp ký tự dựa trên CNN của [3] 6
Hình 1.2 Sơ đồ mạng nơron tích chập của [4] 7
Hình 1.3 Phương pháp nhận dạng mẫu thần kinh của [5] 7
Hình 1.4 Hệ thống nhận dạng bảng số xe tự động của [6] 8
Hình 1.5 Ảnh chụp và xác định biên ảnh sử dụng phát hiện biên Canny của [7] 9
Hình 1.6 Mẫu phân đoạn ký tự của [8] 10
Hình 1.7 Khái niệm về bộ lọc bảng số của [9] 11
Hình 1.8 Khung ký tự Các đối tượng làm tròn là các điểm bắt đầu (1), điểm giao nhau (2) đường phân đoạn trước khi áp dụng quy tắc hướng (3) của [10] 11 Hình 1.9 Sơ đồ mô hình nhận dạng bảng số xe 13
Hình 2.1 Kiến trúc tổng quát ANN 16
Hình 2.2 Mô hình xử lý thông tin của một ANN 16
Hình 2.3 Ảnh hưởng của bộ lọc phát hiện cạnh 5 × 5 đối với hình ảnh 20
Hình 2.4 Các thành phần cơ bản của một CNN 21
Hình 2.5 Kiến trúc được kết nối đầy đủ với ba đầu vào và một lớp ẩn 22
Hình 2.6 Các trường tiếp nhận toàn cục (a) và cục bộ (b) 22
Hình 2.7 Trượt trường tiếp nhận cục bộ trên đầu vào 16 × 16 phần tử 23
Hình 2.8 Một lớp tích chập tạo ra 4 bản đồ đặc trưng 𝑓 có kích thước là 12 × 12 24 Hình 2.9 Các hàm kích hoạt: 𝑠𝑖𝑔𝑚𝑜𝑖𝑑, 𝑡𝑎𝑛ℎ và 𝑅𝑒𝐿𝑈 25
Hình 2.10 Hoạt động gộp trên bản đồ đặc trưng 27
Hình 2.11 Ví dụ về các lớp được kết nối đầy đủ được áp dụng cho bản đồ đặc trưng 28
Hình 2.12 Biểu diễn của hàm và gradient âm 30
Hình 2.13 Bề mặt của hàm 𝑥2+ 2𝑦2 (a) - có tối thiểu tại (0,0) – (b) cùng với gradient âm được hiển thị ở trên cùng chế độ xem trên – dưới 30
Hình 2.14 Giảm gradient (a) và giảm gradient ngẫu nhiên (b) cho hàm 𝑥2+ 2𝑦2 31
Hình 2.15 Độ phức tạp ngày càng tăng của mô hình có xu hướng phù hợp với dữ liệu nhiễu, do đó không tổng quát tốt cho các hàm thực tế 32
Hình 2.16 Mô hình dropout được áp dụng cho một mạng được kết nối đầy đủ 34
Hình 2.17 Biểu diễn phương pháp chính quy dừng sớm 35
Hình 2.18 Gradient biến mất trong huấn luyện mạng neural nhiều lớp với bộ dữ liệu MNIST 36
Hình 2.19 Tăng mức thưa thớt (thưa thớt bậc 2, bậc 4 và bậc 9) trong lớp LBC Vị trí màu hồng mang giá trị 1, màu đen giá trị -1, màu xanh giá trị 0 Mức độ thưa thớt đề cập đến các phần tử khác không [15] 38
Trang 12ix
Hình 2.20 (Bên trái) Sai số bình phương trung bình giữa 𝑑′ và 𝑑 với các mức tăng
độ thưa thớt trong các bộ lọc LBC (Bên phải) Đo tương quan chuẩn hóa các bộ lọc LBCNN và CNN Giá trị càng nhỏ thì chúng càng không
tương quan [15] 42
Hình 3.1 Sơ đồ các bước phát hiện vùng chứa bảng số xe 50
Hình 3.2 Tiền xử lý ảnh (a) ảnh đầu vào (b) ảnh xám và (c) ảnh lấy ngưỡng 51
Hình 3.3 Ảnh tất cả các contour (a) và danh sách contour có thể là ký tự (b) 52
Hình 3.4 Danh sách các ký tự phù hợp 54
Hình 3.5 Phát hiện bảng số xe có khả năng (a) Trích vùng bảng số xe (b) 55
Hình 3.6 Sơ đồ các bước trích dòng ký tự 56
Hình 3.7 Tiền xử lý ảnh (a) ảnh đầu vào bảng số (b) ảnh xám (c) ảnh lấy ngưỡng 57 Hình 3.8 Danh sách tất cả các contour ký tự (a) nhóm các ký tự phù hợp với bảng số (b) loại bỏ ký tự chồng bên trong (c) danh sách ký tự phù hợp với ký tự thực tế (d) 58
Hình 3.9 Ảnh trích từng ký tự trên dòng 59
Hình 3.10 Mã hóa LBP cho vùng cửa sổ ảnh có kích thước 3×3, 5×5 [15] 60
Hình 3.11 Xây dựng lại mã hóa LBP bằng các bộ lọc tích chập 61
Hình 3.12 Mô-đun cơ bản trong CNN và LB-CNN, wl và vl là các trọng số có thể học cho mỗi mô-đun 62
Hình 3.13 Hiện thực LBC sử dụng 2 lớp chập 64
Hình 3.14 Kiến trúc cơ bản mô hình LB-CNN 64
Hình 4.1 Một số mẫu trong bộ dữ liệu MNIST 67
Hình 4.2 Một số mẫu trong bộ dữ liệu của FPT 68
Hình 4.3 Một số mẫu sai trong bộ dữ liệu của FPT 68
Hình 4.4 Một số mẫu xấu trong bộ dữ liệu của FPT 68
Hình 4.5 Một số mẫu tự tạo 69
Hình 4.6 Giao diện của chương trình 70
Hình 4.7 Một số kết quả phân đoạn kí tự từ bảng số xe 71
Hình 4.8 Độ chính xác khi nhận dạng bảng số xe 71
Hình 4.9 Biểu đồ đánh giá độ chính xác bảng số xegiữa LB-CNN và CNN 73
Hình 4.10 Biểu đồ đánh giá thời gian thực thigiữa LB-CNN và CNN 73
Trang 13x
DANH MỤC BẢNG BIỂU
Bảng 2.1 Quy định bảng số cho các tỉnh thành 44 Bảng 2.2 Quy định bảng số trong quân đội 45 Bảng 4.1 Kết quả đánh giá trên 2000 mẫu kiểm thử 70 Bảng 4.2 Kết quả đánh giá trên tập dữ liệu MNIST so sánh với các phương pháp
hiện có 70 Bảng 4.3 Kết quả đánh giá trên tập dữ liệu bảng số xe của FPT 71 Bảng 4.4 Kết quả đánh giá thời gian thực thi trên tập dữ liệu bảng số xe của FPT 72 Bảng 4.5 Kết quả đánh giá trên tập dữ liệu bảng số xe mẫu xấu của FPT 72 Bảng 4.6 Kết quả đánh giá thời gian thực thi trên tập dữ liệu bảng số xe mẫu xấu
của FPT 72
Trang 14xi
DANH MỤC TỪ VIẾT TẮT
AI Artificial Intelligence
ALPR Automatic License Plate Recognition
LB-CNN Local Binary - Convolution Neural Networks
OCR Optical Character Recognition
RGB Red - Green - Blue
Trang 15Hiện nay có rất nhiều các phương pháp nhận dạng bảng số xe khác nhau như: phương pháp hình thái học [9], phương pháp Hough [7, 8], Tuy nhiên việc nhận dạng bảng
số xe trong các điều kiện môi trường khác nhau là vô cùng khó khăn, bởi vì còn bị ảnh hưởng do nhiều yếu tố như: độ sáng, hướng nghiêng, kích thước ảnh, nhiễu, Nhiệm vụ đặt ra là nghiên cứu và xây dựng một thuật toán nhận dạng có độ chính xác cao mà khối lượng và thời gian tính toán nhanh Với lý do đó luận văn đã xây dựng
nên “Nhận dạng bảng số xe bằng phương pháp LB-CNN”
2 Mục tiêu nghiên cứu
Nghiên cứu và xây dựng một thuật toán nhận dạng bảng số xe Việt Nam với dữ liệu đầu vào là bộ cơ sở dữ liệu ảnh bảng số xe của FPT, sử dụng phương pháp mạng nơron tích chập nhị phân cục bộ LB-CNN (Local Binary - Convolution Neural Networks) để xác định và nhận dạng ký tự quang học OCR (Optical Character Recognition)
3 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu là các vấn đề liên quan đến phương pháp nhận dạng bảng số
xe, như cách sử dụng mạng Nơron, CNN và LB-CNN
Phạm vi nghiên cứu là dữ liệu được sử dụng cho bài toán là bộ dữ liệu bảng số xe hơi
1 dòng được FPT cung cấp và đặt hàng Nghiên cứu thiết kế chương trình nhận dạng bảng số xe
Trang 162
4 Cách tiếp cận và phương pháp nghiên cứu
Phương pháp phân tích và tổng hợp lý thuyết:
Nghiên cứu tổng quan về các công trình nghiên cứu có liên quan và các thành tựu, giới hạn đã được hoàn thành trước đây
Nghiên cứu các tài liệu nhận dạng bảng số xe bằng phương pháp CNN (Convolution Neural Networks)
Nghiên cứu các tài liệu nhận dạng ký tự bằng phương pháp OCR (Optical Character Recognition)
Nghiên cứu các tài liệu nhận dạng ảnh bằng phương pháp LB-CNN (Local Binary
- Convolution Neural Networks)
Xây dựng chương trình nhận dạng nhằm mục đích kiểm tra giải pháp và đánh giá hiệu quả nhận dạng của hệ thống
Phương pháp nghiên cứu:
Tìm hiểu tổng quan về bài toán nhận dạng bảng số xe
Tìm hiểu các phương pháp nhận dạng bảng số xe
Tìm hiểu cách lập trình với Python
Nghiên cứu kỹ thuật phát hiện vùng chứa bảng số xe
Nghiên cứu kỹ thuật tiền xử lý để chuẩn hóa ảnh bảng số xe
Nghiên cứu áp dụng mô hình LB-CNN cho nhận dạng bảng số xe
Tiến hành cài đặt và đánh giá kết quả nghiên cứu trên bộ cơ sở dữ liệu ảnh của
FPT, và so sánh với các kết quả đã công bố của các phương pháp có liên quan
Trang 173
5 Ý nghĩa thực tiễn của đề tài
Về ý nghĩa thực tiễn của đề tài giúp cho việc phát hiện và nhận dạng bảng số xe được tốt nhất, giúp giảm thời gian và chi phí cho công tác quản lý và an ninh
Kết cấu của luận văn được trình bày như sau:
CHƯƠNG 1 – Tổng quan: Trình bày tổng quan về các hệ thống nhận dạng bảng
số xe đã làm Các hướng tiếp cận, khó khăn thách thức và hướng giải quyết cho bài toán nhận dạng bảng số xe
CHƯƠNG 2 – Cơ sở lý thuyết: Trình bày những lý thuyết mà chúng tôi sử dụng
để xây dựng mô hình nhận dạng bảng số xe Các quy định về ký tự, chữ số, kích thước, tỷ lệ của bảng số xe
CHƯƠNG 3 – Xây dựng mô hình: Trình bày các phương pháp được xây dựng để giải quyết bài toán nhận dạng bảng số xe
CHƯƠNG 4 – Thực nghiệm và đánh giá: Trình bày số liệu các kết quả đã đạt được khi sử dụng các phương pháp được chúng tôi đề xuất trong luận văn và các hướng phát triển, mở rộng của đề tài trong tương lai
Trang 184
CHƯƠNG 1 TỔNG QUAN
Chương này sẽ trình bày tổng quan về các hệ thống nhận dạng bảng số xe của các nhóm khác đã nghiên cứu Các hướng tiếp cận, khó khăn thách thức và hướng giải quyết của chúng tôi cho bài toán nhận dạng bảng số xe
1.1 Bài toán
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 của con ngườ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 nhận dạng bảng số xe tự động, là hệ thống có khả năng thu nhận hình ảnh cũng như là “đọc” và “hiểu” các bảng 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ư: Thu phí giao thông, kiểm soát xe tại các đường biên giới, các trạm gác cổng, trạm cân, rửa xe tự động, bãi xe tự động 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 và phần mềm Phần cứng là một camera có tác dụng thu nhận hình ảnh, còn phần mềm sẽ 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 đó vấn đề đặt ra 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 sẽ là phần mềm xử lý ảnh Với mục đích 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 đề khi xử lý ảnh để đưa ra chính xác bảng số xe Nhằm trợ giúp cho công tác kiểm soát, quản lý, chống trộm, phát hiện xe vi phạm giao thông được tốt hơn [1, 2]
Thời gian gần đây, mô hình nhận dạng bảng số xe tự động được phát triển rất rộng rãi tại Việt Nam Đã được sử dụng trong rất nhiều các mô hình nhận dạng tự động, ở
Trang 195
những điều kiện khác nhau như: các bãi gửi xe tự động, các trạm thu phí Tuy nhiên hầu hết đều có những hạn chế nhất định: góc nhìn, độ phân giải cố định, chỉ sử dụng cho một mẫu hay loại bảng số cụ thể, phụ thuộc vào phông chữ dùng trên bảng 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, nhảy cảm với độ sáng, hiệu ứng sáng tối Chính vì các lý do
đó, chúng tôi đã quyết định chọn đề tài: “Nhận dạng bảng số xe bằng phương pháp
Trên thế giới hiện nay, bài toán nhận dạng bảng số xe được nghiên cứu và phát triển một cách sâu rộng Nhiều tác giả với các công trình nghiên cứu được công bố với tỉ
lệ nhận dạng ngày càng chính xác Một số bài báo cáo nghiên cứu của các tác giả tiêu biểu trong vài năm trở lại đây như:
Một nghiên cứu của nhóm tác giả Chin Chuan Han, Cheng Ta Hseih và Chang Lung Tsai [3] đã đề xuất một hệ thống dựa trên thiết bị khẩu độ camera kép có hiệu chuẩn được sử dụng để phát hiện bảng số xe của phương tiện đang di chuyển, một trong số đó là camera cố định và một cái khác là camera mở rộng được góc nghiêng và phóng to thu nhỏ Thiết bị này không chỉ theo dõi nhiều mục tiêu mà còn lấy hình ảnh bảng số xe với chất lượng cao Mạng nơron tích chập (CNN) được thiết kế để phát hiện và phân loại ký tự, để định vị hiệu quả các vùng của bảng số xe và nhận dạng các ký tự bảng số Hình 1.1 mô tả phân lớp ký tự dựa trên CNN
Trang 206
Lớp Xuất (35)
Lớp Ẩn (7x9)
5x5 trọng số chia sẻ
Lớp Nhập (11x21)
Hình 1.1 Phân lớp ký tự dựa trên CNN của [3]
Một nghiên cứu khác của tác giả Pavel Zemcik [4] và cộng sự của ông đã thực hiện công việc tập trung vào việc nhận dạng bảng số xe ở độ phân giải thấp và hình ảnh chất lượng kém Các tác giả trình bày một phương pháp để thu thập dữ liệu thực Tập dữ liệu hình ảnh bảng số xe chất lượng thấp với bản copy có độ thật
cơ bản Cách tiếp cận của họ về nhận dạng bảng số xe dựa trên mạng nơron tích chập mà xử lý toàn bộ hình ảnh, tránh phân đoạn các ký tự của bảng số xe Kết quả đánh giá trên nhiều bộ dữ liệu cho thấy phương pháp của họ vượt trội đáng
kể so với các giải pháp thương mại và miễn phí khác để nhận dạng bảng số trên
dữ liệu chất lượng thấp Để cho phép nghiên cứu thêm về nhận dạng bảng số chất lượng thấp, họ cũng thực hiện trên bộ dữ liệu sẵn có công khai Lớp chập cuối
Trang 217
cùng của các CNN được kết nối với 8 nhánh của lớp kết nối đầy đủ, mỗi lớp có
36 đầu ra, để dự đoán các ký tự tại các vị trí tương ứng trong ảnh Mỗi mạng được huấn luyện để cục bộ hóa và nhận dạng các ký tự trong hình ảnh tại các vị trí khác nhau khi được học một cách tự động Hình 1.2 là sơ đồ mạng nơron tích chập Mạng có 3 lớp chập theo trình tự với chuẩn hóa ReLU và Cửa sổ (batch) Các đặc
trưng được cấp cho 8 nhánh của mạng với các lớp được kết nối đầy đủ dự đoán
các đặc trưng của các vị trí tương ứng
Hình 1.2 Sơ đồ mạng nơron tích chập của [4]
Một nghiên cứu khác của nhóm tác giả Bharat Bhushan, Simranjot Singh và Ruchi Singla [5] phương pháp lấy đa ngưỡng cho phân đoạn hình ảnh đã được giới thiệu để nhận dạng bảng số xe nhằm nâng cao độ chính xác Thuật toán hỗn hợp này sử dụng các đặc trưng của cả đa ngưỡng và nhận dạng mẫu thần kinh mang lại kết quả nhận dạng cao Hình 1.3 Huấn luyện mạng nơron gồm ba bước: huấn luyện mạng, xác nhận và kiểm tra
Hình 1.3 Phương pháp nhận dạng mẫu thần kinh của [5]
Trang 228
Tại Việt Nam, vấn đề nhận dạng cũng được quan tâm và ứng dụng thành công, có thể
kể đến công trình nghiên cứu của nhóm tác giả Tran Duc Duan, Duong Anh Duc và Tran Le Hong Du [6] Báo cáo này nghiên cứu cách nhận dạng bảng số xe tại Việt Nam với sự kết hợp của biến đổi Hough và giải thuật tìm Contour để cải thiện kết quả phát hiện đối tượng Vùng các ứng viên sau đó tiếp tục được scan theo dòng để đếm
số đối tượng bị cắt và so sánh với ngưỡng, nhằm tìm ra vùng ứng viên thõa mãn Kết quả nhận dạng đạt 98-99% Hình 1.4 Hệ thống nhận dạng bảng số xe, ảnh đầu vào được chụp từ máy ảnh, sau đó được tiền xử lý để phát hiện vùng chứa bảng số và phân đoạn ký tự để nhận dạng
Hình 1.4 Hệ thống nhận dạng bảng số xe tự động của [6]
Phần mềm nhận dạng bảng số xe, đã được ứng dụng thực tế tại các trạm cân, trạm gửi xe, các trụ đèn giao thông để phát hiện xe vi phạm của giải pháp Biển Bạc, đạt giải thưởng sao khuê 2011
1.2.1 Phương pháp Hough
Dò đặc trưng biên ngang, dọc: làm nổi bật các viền bao của tất cả các đối tượng trong ảnh trong đó có viền bao bảng số Phương pháp sử dụng các bộ lọc gradient để trích được các đặc trưng cạnh biên này Nghiên cứu này sử dụng bộ lọc Sobel để tiến hành
dò Dùng chuyển đổi Hough tìm các đoạn thẳng ngang dọc trên cở sở của ảnh nhị phân cạnh biên thu được từ bước trên Tách các đoạn thẳng ngang, dọc có thể là cạnh của bảng số Trích ứng viên bảng số: thành lập các hình chữ nhật là ứng viên cho
Trang 23số xe bằng cách sử dụng phát hiện biên Canny & biến đổi Hough (II) Mô-đun nhận dạng bảng số xe sử dụng khớp mẫu Các thực nghiệm đã được tiến hành trên
102 mẫu trên hình ảnh bảng số xe theo tiêu chuẩn Hồi giáo Những hình ảnh này được chụp từ các khung cảnh khác nhau dưới nhiều điều kiện ánh sáng khác nhau Hình 1.5 cho thấy ảnh bên trái là ảnh chụp ban đầu và ảnh bên phải là ảnh đã được xác định biên sau khi sử dụng phát hiện biên Canny
Hình 1.5 Ảnh chụp và xác định biên ảnh sử dụng phát hiện biên Canny của [7]
Một nghiên cứu khác của nhóm tác giả Choo Kar Soon, Kueh Chiung Lin, Chung Ying Jeng và Shahrel A Suandi [8] sử dụng giải thuật Adaboots để huấn luyện tập dữ liệu gồm gần 100 ảnh bảng số Các ký tự được nhận dạng bằng phương pháp phân lớp KNN Kết quả nhận dạng bảng số 98% và nhận dạng ký
tự 95% trên ảnh tĩnh Ưu điểm thời gian thực hiện giảm đáng kể và khả thi để triển khai với thời gian thực Mặc dù vẫn còn nhiều công việc cần thực hiện để
Trang 2410
cải thiện hiệu quả hệ thống Báo cáo này nghiên cứu cách nhận dạng bảng số xe với sự kết hợp của phép biến đổi Hough và giải thuật tìm Contour để cải thiện kết quả phát hiện Vùng các ứng viên sau đó tiếp tục được quét theo dòng để đếm số đối tượng bị cắt và so sánh với ngưỡng, nhằm tìm ra vùng ứng viên thõa mãn Kết quả nhận dạng đạt 98-99% Hình 1.6 Kết quả sau khi đã phân đoạn
cơ bản là phép xói mòn/co ảnh (Erosion) và giãn nở/giãn ảnh (Dilation) Yếu tố quan trọng trong các phép toán này là lựa chọn một phần tử cấu trúc có hình dáng phù hợp Phần tử cấu trúc là một ảnh có kích thước nhỏ gồm các phần tử có giá trị ∈{0, 1} Phần tử cấu trúc thường được sử dụng trên ảnh nhị phân: dạng hình vuông, hình elip, đường theo chiều ngang và dọc, hình thoi
Một nghiên cứu của nhóm tác giả Suprava Patnaik và Chirag N Paunwala [9] phương pháp đề xuất nhằm xác định vùng quan tâm bằng cách thực hiện một chuỗi phân đoạn theo hướng và xử lý hình thái Ảnh đầu vào được tiền xử lý bằng phương pháp nâng cao chất lượng ảnh, sau đó tìm biên bằng Vertical Edge và xử lý một lần nữa bằng Opening và Closing Các vùng ứng viên sau đó được kiểm tra bằng thuật toán quét theo dòng để tìm được vùng chứa bảng số xe chính xác Hình 1.7 Ảnh bảng số xe được quét theo dòng tại các vị trí H/3, H/2 và H-H/3
Trang 2511
Hình 1.7 Khái niệm về bộ lọc bảng số của [9]
1.2.3 Phương pháp khớp mẫu
Các hướng tiếp cận truyền thống là khớp mẫu bằng độ đo tương quan giữa các vùng
dữ liệu ảnh Các cách tiếp cận này tỏ ra có hiệu quả khi đối tượng ảnh có cùng kích
cỡ và không bị biến dạng (như quay, affine) quá lớn Để giải quyết bài toán khớp ảnh đối tượng trong đó đối tượng ảnh có sự thay đổi về kích thước hoặc biến dạng, đòi hỏi phải có những kỹ thuật khớp ảnh dựa trên các đặc trưng có tính bất biến đối với một số phép biến đổi
Một nghiên cứu của tác giả K Yilmaz [10] Trong nghiên cứu này tác giả đề xuất sử dụng mạng thần kinh nhân tạo và hình ảnh tương quan, một cách tiếp cận mới được trình bày để tăng chất lượng của hình ảnh và để nâng cao kết quả trích xuất bảng số
từ hình ảnh mờ và cường độ thấp, tỷ lệ nhận dạng (tỷ lệ phần trăm hình ảnh nhận được) đạt được là 96,64% Hình 1.8 thể hiện khung các ký tự
Hình 1.8 Khung ký tự Các đối tượng làm tròn là các điểm bắt đầu (1), điểm giao nhau (2) đường phân đoạn trước khi áp dụng quy tắc hướng (3) của [10]
Trang 26 Loại 1: Giới hạn vùng nhìn
Đầu vào: Ảnh thu trực tiếp từ các thiết bị ghi nhận ảnh kỹ thuật số Ảnh được ghi nhận thường chỉ giới hạn trong vùng có bảng số xe
Nguyên lý hoạt động: Các phương tiện giao thông phải chạy với một tốc độ đủ chậm
để máy ghi nhận hình ảnh có thể thu được ảnh vùng bảng số xe
Ứng dụng: Những ứng dụng nhận dạng bảng số xe loại này thường được dùng tại các trạm kiểm soát, các trạm thu phí, các bãi gửi xe tự động, các trạm gác cổng
Loại 2: Không giới hạn vùng nhìn
Đầu vào: Ảnh đầu vào thu được từ các thiết bị ghi hình tự động, không phụ thuộc vào góc độ, các đối tượng xung quanh, ảnh không cần bắt buộc chỉ chụp vùng chứa bảng
số xe, mà có thể ảnh tổng hợp như chứa thêm các đối tượng như người, cây đường phố , miễn là vùng bảng số xe phải đủ rõ để có thể thực hiện nhận dạng được ký tự trong vùng đó
Nguyên lý hoạt động: Do đặc tính không giới hạn vùng nhìn mà ảnh đầu vào có thể thu được từ một thiết bị ghi hình (camera, máy ảnh…) Và do đó, công việc đầu tiên
là dò tìm trong ảnh, để xác định đúng vùng nào là bảng số xe Sau đó, thực hiện tách vùng và nhận dạng Cuối cùng tùy thuộc vào mục đích sử dụng mà kết quả nhận dạng được truyền đi hay lưu trữ để phục vụ nhu cầu của người dùng cuối
Ứng dụng: Vì không phụ thuộc vào hình ảnh thu được nên có thể dùng ứng dụng tại nhiều nơi như tại những nơi điều tiết giao thông, tại các vị trí nhạy cảm của giao thông
Trang 2713
như ngã ba, ngã tư đường giao nhau Kiểm soát, phát hiện hành vi vi phạm an toàn giao thông
1.3.2 Mô hình hoạt động
Hệ thống nhận dạng bảng số xe là một bài toán lớn Để giải các vấn đề đặt ra khi xử
lý ảnh để đưa ra chính xác bảng số xe, chúng tôi tập trung vào giải quyết từng bài toán con cụ thể sau:
Trang 2814
Độ phân giải của ảnh kém hoặc ảnh bị mờ
Điều kiện ánh sáng yếu, bị phản chiếu hoặc che bóng
Các đối tượng có dạng tương tự như bảng số xe ở ngoại cảnh
Sự khác nhau về cấu trúc bảng số xe của mỗi nước
1.4 Đề xuất hướng giải quyết
Chúng tôi đề xuất phương pháp giải quyết bài toàn nhận dạng bảng số xe như sau:
- Bài toán 1: Chúng tôi thực hiện tiền xử lý ảnh đầu vào, dò tìm đối tượng và phát hiện vùng chứa bảng số xe bằng hình bao đóng
- Bài toán 2: Dựa trên các thông tin về kích thước, tỉ lệ chiều cao và chiều rộng của vùng Chúng tôi thực hiện tách vùng có chứa bảng số xe ra khỏi ảnh
- Bài toán 3: Có 2 loại bảng số xe, loại 1 dòng và loại 2 dòng, trong luận văn này dữ liệu đầu vào của chúng tôi là bảng số xe hơi có 1 dòng ký tự Chúng tôi lấy tỉ lệ vùng chứa dòng dữ liệu so với toàn bộ bảng số xe để lấy ra dòng dữ liệu chứa các chữ và
số
- Bài toán 4: Mỗi ký tự thường có tỷ lệ kích thước chiều rộng và chiều cao tương ứng với chiều dài và rộng của bảng số xe, mỗi ký tự trong dòng dữ liệu được xem như là một vùng liên thông con Chúng tôi thực hiện việc phân đoạn từng ký tự và đếm vùng liên thông con thỏa mãn tính chất của ký tự và tách các vùng liên thông này để làm mẫu cho việc nhận dạng
- Bài toán 5: Chúng tôi xây dựng mô hình LB-CNN để nhận dạng ký tự trên bộ dữ liệu do FPT cung cấp Và cụ thể hơn về việc nhận dạng ký tự, chúng tôi sẽ trình bày chi tiết trong chương sau
Trang 2915
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
Chương này sẽ trình bày những lý thuyết mà chúng tôi sử dụng để xây dựng mô hình nhận dạng bảng số xe Các quy định về ký tự, chữ số, kích thước, tỷ lệ của bảng số
xe
2.1 Mạng Neural nhân tạo
Mạng neural nhân tạo (Artificial Neural Network - ANN) hay gọi tắt là mạng neural
là mô hình xử lý thông tin được mô phỏng dựa trên hoạt động của hệ thống thần kinh của sinh vật, bao gồm số lượng lớn các neural được gắn kết để xử lý thông tin ANN giống như bộ não con người, được học bởi kinh nghiệm (thông qua huấn luyện), có khả năng lưu giữ những kinh nghiệm hiểu biết (tri thức) và sử dụng những tri thức đó trong việc dự đoán các dữ liệu chưa biết
Các ứng dụng của mạng neural được sử dụng trong rất nhiều lĩnh vực như điện, điện
tử, kinh tế, quân sự,… để giải quyết các bài toán có độ phức tạp và đòi hỏi có độ chính xác cao như điều khiển tự động, khai phá dữ liệu, nhận dạng,…
Hướng tiếp cận của mô hình mạng neural là hướng tiếp cận theo hướng dữ liệu, tức
là sẽ không có một khuôn mẫu chung nào cho mô hình, thay vào đó mô hình mạng neural sẽ được học và hoàn thiện từ dữ liệu Cách tiếp cận này phù hợp với các tập
dữ liệu không tuyến tính, nơi mà không có một mô hình, lý thuyết thống kê nào có thể mô hình hóa được
Về cơ bản, môt mạng neural truyền thẳng gồm 3 lớp (lớp nhập, lớp ẩn và lớp xuất) được biểu diễn như Hình 2.1 Các nút của ANN gọi là Neuron, mỗi nút nhận các dữ liệu vào, xử lý chúng và cho ra môt kết quả duy nhất Kết quả xử lý của môt nút có thể làm ngõ nhập cho các nút khác Trong đó, lớp ẩn gồm các nút nhận dữ liệu từ các nút ở lớp trước đó và chuyển đổi các dữ liệu nhập này cho các lớp xử lý tiếp theo Trong một ANN có thể có nhiều lớp ẩn
Trang 30số con,…
Trang 3117
Ngõ xuất: Kết quả của một ANN là một giải pháp cho một vấn đề, ví dụ như với bài toán xem xét chấp nhận cho khách hàng vay tiền hay không thì ngõ xuất là có (cho vay) hoặc không (không cho vay)
Trọng số liên kết: Đây là thành phần rất quan trọng của một ANN, nó thể hiện mức độ quan trọng (độ mạnh) của dữ liệu đầu vào đối với quá trình xử lý thông tin (quá trình chuyển đổi dữ liệu từ lớp này sang lớp khác) Quá trình học của ANN thực ra là quá trình điều chỉnh các trọng số của các ngõ nhập để có được kết quả mong muốn Hàm tổng: Tính tổng trọng số của tất cả các ngõ nhập được đưa vào mỗi nút Hàm tổng của một nút đối với 𝑛 ngõ nhập được tính theo công thức (2-1) Hàm tổng đối với nhiều nút trong cùng một lớp được tính theo công thức (2-2)
𝑊𝑖 : Là trọng số của các kết nối giữa các nút
Hàm chuyển đổi: Hàm tổng của một nút cho biết khả năng kích hoạt của nút đó còn gọi là kích hoạt bên trong Các nút này có thể sinh ra một tín hiệu trên ngõ xuất hoặc không trong ANN (nói cách khác rằng có thể ngõ xuất của một nút có thể được chuyển đến lớp tiếp theo hoặc không) Mối quan hệ giữa kích hoạt bên trong và kết quả được thể hiện bằng hàm chuyển đổi Việc lựa chọn hàm chuyển đổi có tác đông lớn đến kết quả của ANN Hàm chuyển đổi phi tuyến được sử dụng phổ biến trong ANN là hàm sigmoid
Trang 32đó trước khi chuyển các kết quả này đến các lớp tiếp theo Nếu kết quả của một nút nào đó nhỏ hơn ngưỡng thì nó sẽ không được chuyển đến lớp tiếp theo
và hiểu biết thành công bằng cách nghiên cứu bộ não sang học máy Hơn nữa, đây là những tiên phong trong học sâu do hiệu suất đặc biệt của chúng và cũng dễ dàng được huấn luyện với lan truyền ngược
2.2.1 Toán tử tích chập
Từ quan điểm toán học, tích chập chỉ là một hoạt động trên hai hàm của một đối số
có giá trị thực được biểu diễn bởi công thức (2-4)
Trang 3319
𝑦(𝑡) = (𝑥 ∗ 𝑤)(𝑡) = ∫ 𝑥(𝜏)𝑤(𝑡 − 𝜏)𝑑𝜏 (2-4)
Trong đó 𝑡 ∈ ℛ, 𝜏 ∈ ℛ, 𝑥: ℛ → ℛ và 𝑤: ℛ → 𝑅 Hàm kết quả 𝑦: ℛ → ℛ sau khi áp dụng toán tử chập, thường được ký hiệu là dấu ∗, cho các hàm 𝑥 và 𝑤 được định nghĩa là tích phân của sản phẩm của cả hai hàm sau khi một hàm bị đảo ngược và dịch chuyển (𝜏) Hàm 𝑥 đầu tiên thường được gọi là đầu vào, trong khi 𝑤 là hàm trọng số được gọi là kernel Đầu ra 𝑦 được gọi là bản đồ đặc trưng
Khi thực hiện thao tác tích chập trong máy tính, các đầu vào là rời rạc và do đó phải
là phép tính Chỉ số 𝑡 chỉ có thể lấy giá trị nguyên Giả sử rằng cả đầu vào và kernel chỉ được xác định trên 𝑡, một tích chập rời rạc có thể được định nghĩa theo công thức (2-5)
(2-7)
Trang 3420
Các công thức tương đương có thể dễ dàng xác định các tích chập n chiều Cần lưu ý tích chập là giao hoán, vì vậy công thức (2-7) ở trên cho 2D có thể được định nghĩa theo cách đơn giản hơn cho việc triển khai trên máy tính được gọi là tương quan chéo (cross-correlation) trong công thức (2-8)
𝑌(𝑖, 𝑗) = (𝑋 ∗ 𝑊)(𝑖, 𝑗) = ∑ ∑ 𝑋(𝑖 + 𝑚, 𝑗 + 𝑛)𝑊(𝑚, 𝑛)
𝑛 𝑚
(2-8)
Trường hợp đầu vào là một hình ảnh 2D có cấu trúc liên kết dạng lưới như một mảng điểm ảnh 2D, tích chập có thể được xem như là một giai đoạn phát hiện đặc trưng (feature) trong đó kernel đóng vai trò là bộ lọc (filter) Bằng cách tích chập kernel trên hình ảnh, các giá trị kích hoạt đặc trưng khác nhau thu được tại mỗi vị trí trong hình ảnh, do đó tạo ra một bản đồ đặc trưng như đầu ra Hình 2.3 cho thấy một ví dụ
về bộ lọc phát hiện đường viền đối với ảnh đầu vào (Hình 2.3a) sẽ hiển thị các kích hoạt tại vị trí màu trắng (Hình 2.3b)
Hình 2.3 Ảnh hưởng của bộ lọc phát hiện cạnh 5 × 5 đối với hình ảnh
Một CNN được xem như một chồng các lớp tích chập được cấu tạo bởi sự kết hợp của các lớp tích chập (convolution) và lớp kích hoạt (activation) còn được gọi là bộ phát hiện, theo sau là một lớp gộp (pooling) Hình 2.4 theo sơ đồ này, một đầu vào được chuyển đổi thành một đầu ra có thể được cung cấp cho lớp tiếp theo của mạng
Trang 35cơ bản đó, một CNN được theo sau bởi một tập hợp các lớp được kết nối đầy đủ (fully connected - fc) cho lý luận cấp cao Cuối cùng, một lớp lỗi chỉ định cách mà mạng
xử lí độ lệch giữa nhãn dự đoán và nhãn thật như thế nào Mỗi loại lớp được trình bày dưới đây
2.2.2.1 Lớp tích chập
Lớp tích chập thể hiện khái niệm cốt lõi của CNN: có tính đến cấu trúc không gian của các khối đầu vào Các kiến trúc mạng neural được kết nối đầy đủ điển hình xử lý mọi yếu tố của khối lượng đầu vào theo cùng một cách (Hình 2.5), do đó cấu trúc không gian phải được suy luận bằng cách học CNN sử dụng các lớp tích chập thay
vì các lớp được kết nối đầy đủ để xử lý các khối đầu vào và tận dụng các cấu trúc không gian của chúng Với mục đích này, các lớp tích chập có ba khái niệm cơ bản: trường tiếp nhận cục bộ (local receptive field), trọng số được chia sẻ (shared weight)
và gộp chung
Trường tiếp nhận cục bộ Một neural ẩn của kiến trúc được kết nối đầy đủ sẽ được kết nối với mọi phần tử đến từ lớp trước, do đó tạo ra một trường tiếp nhận toàn cục Điều này sẽ yêu cầu một chi phí tính toán khổng lồ và yêu cầu bộ nhớ lớn vì số lượng trọng số lớn được đặc trưng bởi mạng (mỗi một kết nối) Bên cạnh đó, không có cấu trúc không gian nào được thực thi theo mẫu này Mặt khác, các lớp tích chập không kết nối neural ẩn với mọi phần tử đầu vào
Trang 3622
Hình 2.5 Kiến trúc được kết nối đầy đủ với ba đầu vào và một lớp ẩn
Thay vào đó, chúng thực hiện các kết nối trong các khu vực giảm và cục bộ của đầu vào, được gọi là các trường tiếp nhận cục bộ Hình 2.6 mô tả trường tiếp nhận toàn cục (Hình 2.6a) và cục bộ (Hình 2.6b) cho một neuron ẩn trên đầu vào 16 × 16
Hình 2.6 Các trường tiếp nhận toàn cục (a) và cục bộ (b) Các lớp tích chập sử dụng trường tiếp nhận cục bộ với kích thước tương ứng với kích thước của bộ lọc tích chập Quá trình tích chập bao gồm việc trượt trường tiếp nhận trên toàn bộ đầu vào bằng một bước nhảy nhất định Đối với mỗi trường tiếp nhận cục bộ, có một neural ẩn được kết nối với nó trong lớp tiếp theo Bằng cách này, cấu trúc không gian của đầu vào được tính đến Hình 2.7 cho thấy quá trình trượt trường tiếp nhận cục bộ 4 × 4 trên đầu vào 16 × 16 phần tử
Trọng số chia sẻ Theo sơ đồ được kết nối đầy đủ, mỗi neural của lớp ẩn sẽ có độ lệch
(bias) và mỗi kết nối của trường tiếp nhận sẽ học một trọng số Các CNN thay đổi sơ
đồ kết nối này sao cho cùng trọng số và độ lệch được sử dụng cho mỗi neural của lớp
ẩn
Trang 3723
Hình 2.7 Trượt trường tiếp nhận cục bộ trên đầu vào 16 × 16 phần tử
Bằng cách này, số lượng tham số giảm đáng kể Đối với ví dụ được hiển thị trong Hình 2.7, chỉ có bộ lọc 4 × 4 và một độ lệch duy nhất là cần thiết cho tích chập thay
vì 4 × 4 × 12 × 12 trọng số và 12 × 12 độ lệch nếu các tham số không được chia sẻ
Theo cách này, đầu ra cho neural 𝑖, 𝑗 của lớp ẩn 𝐻 là:
Điều quan trọng cần lưu ý là các ví dụ ở trên chỉ ra cách tìm hiểu một bộ lọc duy nhất
để phát hiện một loại đặc trưng duy nhất trong đầu vào Tuy nhiên, các lớp tích chập thường học nhiều bộ phát hiện để tạo bản đồ đặc trưng cho các loại đặc trưng khác nhau như trong Hình 2.8 mỗi bản đồ đặc trưng được tạo bởi bộ lọc 4 × 4 khác nhau bằng cách kết hợp nó trên đầu vào 16 × 16 (bước trượt = 1) Khái niệm này được gọi là ngân hàng bộ lọc
Trang 38và khả vi Các hàm này là các hàm liên tục, tức là có sự thay đổi nhỏ ở kết quả đầu
ra nếu như đầu vào có sự thay đổi nhỏ và khả vi tức là có đạo hàm tại mọi điểm trong miền xác định của nó
Một số hàm kích hoạt được đề cập đến là 𝑠𝑖𝑔𝑚𝑜𝑖𝑑, 𝑡𝑎𝑛ℎ hay 𝑅𝑒𝐿𝑈 được biểu diễn trong Hình 2.9 Các hàm này làm tăng các thuộc tính phi tuyến tính của hàm quyết định mà mạng đã học, mà không ảnh hưởng đến các trường tiếp nhận của các lớp tích chập trước đó
Trang 3925
Hình 2.9 Các hàm kích hoạt: 𝑠𝑖𝑔𝑚𝑜𝑖𝑑, 𝑡𝑎𝑛ℎ và 𝑅𝑒𝐿𝑈 Hàm 𝑠𝑖𝑔𝑚𝑜𝑖𝑑 có dạng toán học 𝜎(𝑥) = 1 / (1 + 𝑒−𝑥 ) Hàm 𝑠𝑖𝑔𝑚𝑜𝑖𝑑 có thể được coi là một hàm được sử dụng để làm trơn dữ liệu và nó là một hàm khả vi, nó rất hữu ích để chuyển đổi bất kỳ giá trị nào thành xác suất và có thể được sử dụng để phân lớp nhị phân Hàm 𝑠𝑖𝑔𝑚𝑜𝑖𝑑 ánh xạ dữ liệu đầu vào thành giá trị trong khoảng (0;1)
Nó đã được sử dụng rộng rãi do sự giải thích sinh học của nó như tốc độ xử lí của một neural thực tế Tuy nhiên, nó không được sử dụng phổ biến vì hai nhược điểm chính cản trở hoặc không thể thực hiện quá trình học trong một số tình huống đó là:
sự bão hòa gradient và đầu ra không tập trung
Tính phi tuyến tính của 𝑡𝑎𝑛ℎ tương tự như 𝑠𝑖𝑔𝑚𝑜𝑖𝑑, nhưng đầu vào trong khoảng (-1;1) Nó có thể được biểu thị dưới dạng tỷ lệ 𝑡𝑎𝑛ℎ(𝑥) = 2𝜎 (2𝑥) − 1 So với 𝑠𝑖𝑔𝑚𝑜𝑖𝑑, nó vẫn bão hòa gradient nhưng đầu ra định tâm bằng 0 Trong thực tế, 𝑡𝑎𝑛ℎ
đã được sử dụng như là một thay thế cho 𝑠𝑖𝑔𝑚𝑜𝑖𝑑
𝑅𝑒𝐿𝑈 là hàm kích hoạt phổ biến nhất Về cơ bản, ngưỡng đầu vào ở mức 0
𝑓 (𝑥) = 𝑚𝑎𝑥 (0; 𝑥) Nó có hai ưu điểm chính: huấn luyện giảm dần, gradient được tăng tốc đáng kể do tính chất không bão hòa của nó và có chi phí tính toán thấp so với 𝑠𝑖𝑔𝑚𝑜𝑖𝑑 và 𝑡𝑎𝑛ℎ liên quan đến các hoạt động tốn nhiều chi phí Tuy nhiên, các đơn vị 𝑅𝑒𝐿𝑈 có thể không thể phục hồi (tế bào neural sẽ không bao giờ kích hoạt lại) nếu tốc độ học không được đặt cẩn thận Để giải quyết vấn đề này, các hàm khác đã được đề xuất, các hàm phổ biến nhất là Leaky ReLU và Parametric ReLU (PreLU)
Trang 4026
Các lớp kích hoạt thường được đặt ngay sau khi tích chập diễn ra, nhưng nhiều kết hợp có thể Trong trường hợp này, đầu ra cho neuron 𝑖, 𝑗 của lớp ẩn 𝐻 sau khi tích chập diễn ra và phi tuyến tính, được ký hiệu là 𝜎 độc lập với hàm kích hoạt đã chọn, được áp dụng bằng công thức (2-10)
do này để giảm dần kích thước không gian của biểu diễn Việc đơn giản hóa này có nhiều ưu điểm: bằng cách giảm kích thước biểu diễn, lượng tham số cần học cũng giảm, do đó giảm chi phí tính toán của toàn mạng và cũng giảm quá mức (overfitting)
Cụ thể, lớp gộp tạo ra một bản đồ đặc trưng cô đọng bằng cách tóm tắt các vùng có kích thước nhất định với một bước được xác định trước Hình 2.10a và 2.10b cho thấy một ví dụ gộp trong đó bản đồ đặc trưng 12 × 12 được cô đọng thành bản đồ gộp 4 × 4, được tạo ra bằng cách gộp các vùng của 4 × 4 neural với một bước nhảy
4 × 4 Vùng gộp được trượt trên toàn bộ đầu vào để tạo bản đồ gộp Điều quan trọng cần lưu ý là các lớp tích chập có thể tạo ra nhiều bản đồ đặc trưng được chuyển qua các lớp kích hoạt đến giai đoạn gộp Trong trường hợp này, gộp chung được áp dụng cho từng bản đồ đặc trưng riêng biệt