Trong đó, lĩnh vực nghiên cứu về thị giác máy đã có nhiều ứng dụng thực tế được ghi nhận như nhận dạng biển số xe, nhận dạng dấu vân tay, nhận dạng mã vạch, tương tác giữa người và máy…
Trang 1Đà Nẵng - Năm 2017
Trang 2Công trình được hoành thành tại
ĐẠI HỌC ĐÀ NẴNG
Người hướng dẫn khoa học: TS Nguyễn Hoàng Hải
Phản biện 1: PGS TS Huỳnh Công Phát
Phản biện 2: TS Nguyễn Quang Thanh
Luận văn đã được bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ Hệ thống thông tin họp tại Đại học Đà Nẵng vào ngày 07 tháng 01 năm 2017
Có thể tìm hiểu luận văn tại:
- Thư viện Trường Đại học Sư phạm Đà Nẵng, Đại học Đà Nẵng
- Trung tâm thông tin học liệu, Đại học Đà Nẵng
Trang 3M Ở ĐẦU
1 Lý do chọn đề tài
Hiện nay, ngành công nghệ thông tin đang ngày một phát triển Những thiết bị tự động ngày một nhiều hơn, đa dạng hơn và hỗ trợ cho con người nhiều hơn Trong đó, lĩnh vực nghiên cứu về thị giác máy đã có nhiều ứng dụng thực tế được ghi nhận như nhận dạng biển
số xe, nhận dạng dấu vân tay, nhận dạng mã vạch, tương tác giữa người và máy… Chính vì lẽ đó, nghiên cứu thị giác máy đang là một
xu hướng của thế giới số
Có thể nói hệ thống nhận dạng biển số xe đã có rất nhiều công trình nghiên cứu với các phương pháp tiếp cận khác nhau Những nghiên cứu này xoay quanh vấn đề tìm cách tiếp cận và xây dựng mô hình thuật toán theo hướng giải quyết đơn lẻ các bài toán nhỏ và tổng hợp thành các bài toán lớn Trong đó giai đoạn xử lý khử nhiễu để nhận dạng biển số xe được xem là bước quan trọng nhất và hiện tại vẫn chưa tìm được phương án tối ưu Chính vì vậy tôi chọn đề tài
“Nghiên cứu nâng cao hiệu năng trong hệ thống nhận dạng biển
số xe” Với vai trò như đã phân tích ở trên đề tài này tập trung vào
Trang 43 Đối tượng và phạm vi nghiên cứu
3.1 Đối tượng nghiên cứu
- Xây dựng hệ nhận dạng biển số xe trong thực tế
- Nâng cao độ chính xác cho hệ thống nhận dạng biển số
xe
3.2 Phạm vi nghiên cứu
Dựa trên dữ liệu thu thập để tiến hành kiểm thử chất lượng hệ thống nhận dạng biển số xe
4 Phương pháp nghiên cứu
4.1 Phương pháp nghiên cứu tài liệu
- Nghiên cứu tài liệu, ngôn ngữ và công nghệ liên quan
- Tổng hợp tài liệu, phương pháp xử lý ảnh và các thư viện hỗ trợ xử lý ảnh
4.2 Phương pháp nghiên cứu thực nghiệm
- Phân tích và thiết kế hệ thống nhận dạng biển số xe
- Thử nghiệm hệ thống và đánh giá kết quả đạt được với những hình ảnh có đỗ nhiễu cao
5 Giải pháp đề xuất
Trang 56 Mục đích và ý nghĩa của đề tài
b Về mặt thực tiễn
Kết quả của đề tài là xây dựng hệ thống nhận dạng biển số xe
để đưa ra kết quả chính xác hơn những biển số xe thông qua hình ảnh ghi được từ hệ thống camera hoặc hình ảnh
7 Kết quả dự kiến
Xây dựng hệ thống nhận dạng biển số xe cho ra kết quả chính xác và ổn định
8 Bố cục của luận văn
Nội dung chính của luận văn được chia thành 3 chương sau: Chương 1.Tổng quan về xử lý ảnh
Chương 2 Tổng quan về hệ thống nhận dạng biển số xe Chương 3 Ứng dụng mạng Nơ-ron để nhận dạng ký tự trong
hệ thống nhận dạng biển số xe
Trang 6CHƯƠNG 1 TỔNG QUAN VỀ XỬ LÝ ẢNH
1.1 NH ỮNG KHÁI NIỆM VỀ ẢNH SỐ
Muốn xử lý ảnh bằng máy tính, ta phải tiến hành quá trình số hóa ảnh Quá trình này là sự biến đổi tín hiệu liên tục sang tín hiệu rời rạc thông qua quá trình lấy mẫu (rời rạc hóa về không gian) và lượng hóa thành giá trị (rời rạc hóa biên độ giá trị) mà bằng mắt thường không thể phân biệt được hai mức xám kề nhau Chính vì vậy
ta sử dụng khái niệm phần tử ảnh hay điểm ảnh (pixel) Trong khuôn khổ ảnh hai chiều, các điểm ảnh bao gồm một cặp tọa độ (c,r) và giá trị biểu diễn độ sáng cụ thể Các cặp tọa độ tạo nên độ phân giải cho ảnh
1.2 M ỘT SỐ KHÁI NIỆM VỀ XỬ LÝ ẢNH
Trong những năm gần đây, kỹ thuật xử lý ảnh ngày càng sử dụng phổ biến trong các hệ thống thông tin và tự động, các hệ thống này ngày càng thông minh hơn, không chỉ dừng lại ở việc xử lý để nâng cao chất lượng ảnh, lưu trữ ảnh hay phân tích kết cấu của ảnh
mà còn tự động nhận dạng các đối tượng trong ảnh để có thể rút ra những thông tin chứa trong ảnh Chẳng hạn trong lĩnh vực thám không, các hình chụp từ trên không gian nhờ hệ thống xử lý ảnh tự động để có thể xác định thông tin về một vùng nào đó dưới mặt đất hay một hiện tượng tự nhiên đang diễn ra nhằm dự báo các hiện tượng tương tự trong tương lai Hay trong lĩnh vực y học cũng sử dụng kỹ thuật xử lý ảnh chụp cắt lớp cơ thể người, ảnh chụp siêu âm, ảnh chụp tế bào, nhiễm sắc thể để nhận dạng và chuẩn đoán bệnh Hay trong lĩnh vực xử lý đo lường cũng cần xử lý ảnh chụp các quá trình để nhận dạng, đo lường như mực nước ở các đập nước đo liều
Trang 7lượng, đo tốc độ dòng chảy, năng lượng của các hạt nguyên tử Cùng với sự phát triển mạnh mẽ của máy tính số, xử lý ảnh số với sự hỗ trợ của máy tính cũng được phát triển và có nhiều ứng dụng Các ứng dụng cụ thể như: trong lĩnh vực truyền hình, cũng như việc lấy hình ảnh từ vệ tinh về trái đất thì ảnh có thể giảm chất lượng do tác động gây nhiễu từ môi trường hay nhiễu trong các thiết bị xuất nhập Trong đo đạc bản đồ phục vụ cho việc xây dựng các bản đồ, trong quá trình chụp ảnh đôi khi bản đồ bị mờ, nhoè hoặc bị nhiễu do điều kiện khách quan của môi trường chụp Do đó việc xử lý khôi phục lại ảnh gốc là rất quan trọng
1.3 QUÁ TRÌNH X Ử LÝ ẢNH
Các phương pháp xử lý ảnh bắt đầu từ các ứng dụng chính: nâng cao chất lượng ảnh và phân tích ảnh Quá trình xử lý ảnh là thao tác trên ảnh đầu vào để tạo ra một kết quả mong muốn Nó có thể tạo
ra một ảnh mới từ ảnh gốc hoặc có thể trả về một kết luận tùy theo yêu cầu của người xử lý
Hình 1.5 Quá trình xử lý hình ảnh
1.4 M ỘT SỐ ỨNG DỤNG CỦA XỬ LÝ ẢNH
Xử lý ảnh được ứng dụng trong các lĩnh vực như điện tử gia đình, thiên văn học, sinh vật học, vật lý, nông nghiệp, địa lý … Khả năng nhìn và nghe thấy là hai phương tiện quan trọng nhất để con
Dữ liệu đầu vào
(Ảnh, một loạt ảnh,
hoặc video)
Hệ thống
xử lý ảnh Kết quả
Trang 8người nhận thức thế giới bên ngoài, do vậy không có gì đáng ngạc nhiên khi mà xử lý ảnh số có nhiều khả năng ứng dụng, không chỉ trong khoa học kỹ thuật mà còn cả trong mọi hoạt động khác của con người
K ẾT LUẬN CHƯƠNG 1:
Chương này trình bày một số khái niệm chung về ảnh số và xử
lý ảnh Đồng thời cũng giới thiệu một số ứng dụng của xử lý ảnh trong cuộc sống hiện nay
Trang 9CHƯƠNG 2 TỔNG QUAN HỆ THỐNG NHẬN DẠNG BIỂN SỐ XE
2.1 GI ỚI THIỆU HỆ THỐNG NHẬN DẠNG BIỂN SỐ XE CƠ
Trang 10Trước tiên, sau khi thống kê mức xám trên ảnh ban đầu, chúng
ta sẽ nhận được một đồ thị biểu diễn mức xám có hai đỉnh, một đỉnh biểu diễn cho những vùng là text, đỉnh còn lại biểu diễn cho những vùng là nền của ảnh Theo Otsu, ngưỡng k* tốt nhất được chọn là giá trị mà tại đó nó làm cho sự chênh lệch 2
b
σ giữa hai đoạn trên đồ thị đạt cực đại
2.2.2 Thu ật toán K-means trong xử lý ảnh
Các bước thực hiện phân nhóm bằng K-Means
- Thuật toán K-means gồm các bước sau:
Đặc trưng các thành phần phân nhóm sẽ được trích ra
Mỗi thành phần sẽ được đánh dấu và đưa vào nhóm có trị trung bình gần nhất với thành phần đó bằng cách tính khoảng cách giữa thành phần đó và trị trung bình của mỗi nhóm Khoảng cách đó
có thể là khoảng cách Euclidean, khoảng cách khối City, …
Khi tất cả các thành phần được đánh dấu, trị trung bình của mỗi nhóm được tính toán lại
Quá trình lặp lại cho đến khi không có sự thay đổi trị trung bình của mỗi nhóm hoặc thuật toán đạt đến số lần lặp đã được định trước
2.2.3 K ỹ thuật lọc trung vị
Mục đích của phương pháp lọc này nhằm loại bỏ nhiễu mà vẫn đảm bảo độ phân giải Tuy nhiên hiệu quả sẽ giảm đi khi số điểm
Trang 11nhiễu lớn hơn hay bằng một nửa số điểm ảnh
2.2.4 B ộ lọc BlobsFiltering
Đối với bộ lọc BlobsFiltering thì chỉ quét một lần trong ảnh,
nó sẽ tìm tất cả các đối tương (các ký tự, nét gạch ngang và nhiễu nếu có) trong ảnh, đánh dấu vị trí và kích thước của từng đối tượng Việc còn lại là phải quy định một ngưỡng kích thước thích hợp cho bộ lọc
để bộ lọc chỉ giữ lại các ký tự và loại bỏ tất cả các đối tượng còn lại (các đối tượng gây nhiễu)
2.3 TỔNG QUAN VỀ MẠNG NƠRON
2.3.1 M ạng Nơron nhân tạo
Mạng nơron nhân tạo (Artificial Neural Networks: ANN) là sự
mô phỏng đơn giản của Nơron sinh học Mỗi Nơron nhân tạo được thực hiện hai chức năng: chức năng tổng hợp đầu vào và chức năng tạo đầu ra
Hình 2.6 Mô hình toán học tổng quát của mạng Nơron nhân tạo
2.3.2 M ột vài ứng dụng của mạng Nơron nhân tạo
2.4 MÔ HÌNH M ẠNG NƠRON VÀ CÁCH THIẾT LẬP MẠNG
M ẠNG NƠRON NHÂN TẠO
Trang 122.4.1 Mô hình m ột Nơron nhân tạo
Hình 2.8 Nơron một đầu vào
Đầu ra của nơron được tính bởi công thức:
a = f(wx+b)
Mạng Nơron một lớp
Hình 2.11 Mô hình mạng Nơron một lớp
Trang 13b Các thi ết kế một mạng Nơron nhân tạo
2.4.3 Phân lo ại cấu trúc mạng Nơron
a Mạng nơron có cấu trúc tiến
Perceptron nhiều lớp (MLP)
M ạng tuyến tính (Adapt Linear Neural Network)
Mạng nuôi tuyến lan truyền ngược (Back Propagation Feed Forward Network)
Radial Basis (RBF)
Mạng Kohonen
Mạng tự tổ chức (Self Organization Network)
M ạng LVQ (Learning Vector Quantization)
Trang 14b Mạng hồi quy
2.5 CƠ SỞ LÝ THUYẾT VÀ GIẢI THUẬT XÂY DỰNG
M ẠNG LAN TRUYỀN NGƯỢC
2.5.1 C ấu trúc mạng lan truyền ngược
a Các loại nơron (Tansig, Logsig, Purelin)
b Cấu trúc các lớp trong mạng lan truyền ngược
Hình 2.14 Mạng một lớp với nơron logsig có R đầu vào
Sơ đồ khối các lớp
Hình 2.15 Sơ đồ khối các lớp của mạng nơron logsig
Trang 15Mô hình một mạng hai lớp như sau
Hình 2.16 Mạng hai lớp dùng Nơron tagsig và pureline
2.5.2 Cách thức huấn luyện cho mạng lan truyền ngược
a Nguyên lý chung
b Gi ảm dốc nhất (Steepest Decent Gradient)
c Ưu nhược điểm của thuật toán
Hình 2.17 Mạng bị quá khớp với mẫu huấn luyện
Hình mô phỏng ở trên cho thấy các đáp ứng của mạng được huấn luyện nhiều lần Rõ ràng mạng này quá khớp với dữ liệu và
Trang 16không thể tổng quát hóa tốt Khi huấn luyện càng nhiều thì mạng càng khớp Bởi vậy, chúng ta chọn lựa độ phức tạp của mạng như thế nào là đúng? Mạng lớn hơn sẽ luôn luôn có sai số nhỏ hơn, những điều này có thể là khớp quá mức hơn là một mô hình huấn luyện tốt
2.7 PHƯƠNG PHÁP CẢI THIỆN TÍNH TỔNG QUÁT HÓA 2.7.1 Phương pháp Regularization
2.7.2 Hu ấn luyện mạng nơron khi phát hiện mạng bắt đầu quá kh ớp
Hình 2.18 M ạng được dừng huấn luyện đúng lúc
Trang 17CHƯƠNG 3 ỨNG DỤNG MẠNG NƠRON ĐỂ NHẬN DẠNG KÝ TỰ CHO
Trang 18số
Chiều cao: 40 cm Chiều rộng: 50 cm Màu ảnh nền và màu chữ Ảnh có nền sáng và chữ tối
Vị trí tương đối của biển số
trong ảnh thu nhận xử lý
Thường nằm ở khoảng giữa ảnh
Chiều rộng và chiều cao
của một ký tự trên biển số
xe
Chiều rộng: 7cm Chiều cao: 10 cm
3.3 QUÁ TRÌNH TRÍCH BI ỂN SỐ XE, XỬ LÝ ẢNH BIỂN SỐ
Trang 19Hình 3.3 Ảnh được tách dòng chứa biển số
Hình 3.4 Phân tích ph ổ ngang cho ảnh chứa biển số đã cắt
phần thừa
Hình 3.5 Biển số sau khi tách
3.3.2 Các bước tiền xử lý
Hình 3.6 Bi ển số xe cần nhận dạng
- Chuyển ảnh sang ảnh Gray Level:
Hình 3.7 Bi ển số xe sau khi tách và chuyển sang ảnh mức xám
Trang 20- Xử lý ảnh bằng kỹ thuật K-means:
Hình 3.8 Biển số xe sau khi xử lý bằng thuật toán K-Means
- Đảo ngược màu: (Invert)
Hình 3.9 Bi ển số xe sau khi đảo màu
- Lọc Median:
Hình 3.10 Biển số xe sau khi lọc Median
- Bộ lọc BlobsFiltering:
Hình 3.11 Biển số xe BlobsFiltering
Trang 213.3.3 Thu ật toán tách ký tự
Hình 3.12 M ột số kết quả tách ký tự
3.4 QUÁ TRÌNH NH ẬN DẠNG KÝ TỰ ĐƠN BẰNG MẠNG NƠRON NHÂN TẠO
Trang 223.4.3 Kh ởi tạo trọng số trong mạng nơron
Với việc nhận dạng mạng chữ ta dùng các thông số:
Trang 233.5 GIAO DI ỆN CHƯƠNG TRÌNH NHẬN DẠNG BIỂN SỐ XE
Hình 3.16 Giao di ện chính của hệ thống
3.6 KI ỂM TRA CHƯƠNG TRÌNH VÀ ĐÁNH GIÁ KẾT QUẢ
CH ẠY THỬ
3.6.1 Kho d ữ liệu thử nghiệm
B ảng 3.4 Mô tả dữ liệu thử nghiệm
Độ phân giải Ảnh 1152 x 864 pixel
Vị trí chụp ảnh Thẳng đứng, chính diện
Điều kiện ánh sáng - Chụp vào lúc trời sáng
- Chụp vào lúc trời tối
Hệ điều hành thử nghiệm Windows 10
3.6.2 Đánh giá kết quả thử nghiệm
B ảng 3.5 Thống kê kết quả nhận dạng biển số của một hệ thống cơ bản
Số lượng mẫu thử nghiệm 200
Kích thước ảnh chụp 1152x864
Số lượng trích biển số đúng 183
Số lượng trích biển số sai 17
Trang 24và tách ký tự tốt thì kết quả nhận dạng thu được sẽ đạt hiệu quả cao
Trang 25Tuy rằng nếu ảnh ký tự bị nhiễu quá nhiều cũng dẫn đến việc nhận dạng sai ký tự đó Ngoài ra do số ký tự trên mỗi biển số xe khá ít, nên việc huấn luyện cho các ký tự chữ chưa được hoàn chỉnh như mong muốn và việc nhận dạng ký tự vẫn chưa có kết quả tốt nhất Đối với các ký tự số, thường dễ nhầm lẫn giữa các ký tự 2 và 7, 2 và “z” hay
5 và 6 Thuật toán sử dụng trong luận văn quét hết tất cả các điểm trên hình nên tốc độ xử lý còn chưa quá cao
Nhìn chung, các kết quả nhận dạng cuối cùng đảm bảo để hệ thống hoạt động tốt, tuy nhiên, vẫn cần có nhiều biện pháp lọc nhiễu cũng như các thủ thuật khác để hệ thống hoàn thiện hơn như một số biển số quá nghiêng thì hệ thống vẫn chưa thể nhận dạng được
- Ứng dụng được thuật toán phân tích phổ tần số để trích biển
số xe và phân tích biểu đồ mức xám trong việc tách ký tự
- Sử dụng mạng Nơron để nhận dạng ký tự trên biển số
- Xây dựng các kết quả nghiên cứu trên nền Visual Studio Dot Net (CSharp)
- Ứng dụng được thư viện AForge trong xử lý ảnh và thu nhận tín hiệu video
Trang 26- Chương trình chưa mang tính tổng quát cao như nhận dạng các biển số chưa đa dạng, ví dụ như các biển số xe có nền xanh chữ trắng (nhà nước) hay nền đỏ chữ trắng (quân đội)
- Khả năng nhận dạng tương đối, chưa xử lý được các trường hợp chụp ảnh quá xa hay quá gần so với khoảng cách qui định chụp ảnh
c Đề xuất hướng phát triển
Với những mặt hạn chế như trên, tôi xin đề ra các hướng phát triển đề tài:
- Xây dựng ứng dụng tổng quát hơn cũng như xử lý với một số trường hợp biển số đặc biệt như: nền xanh chữ trắng, hay nền đỏ chữ trắng, …
- Khắc phục khả năng trích bảng số với khoảng cách linh động hơn, xử lý ảnh và nhận dạng tốt hơn đối với biển số xấu, biển số nghiêng một góc hơn 45 độ