Các thuật toán có thể tận dụngcác đặc điểm của thị giác và các thuộc tính thống kê của dữ liệu hình ảnh để cungcấp kết quả vượt trội so với các phương pháp nén dữ liệu chung được sử dụng
Trang 1HỌC VIỆN NÔNG NGHIỆP VIỆT NAM
KHOA CƠ – ĐIỆN - -
ĐỒ ÁN TỐT NGHIỆP
ĐỀ TÀI:
NGHIÊN CỨU, ỨNG DỤNG CÔNG NGHỆ XỬ LÝ
ẢNH TRONG NHẬN DIỆN BIỂN SỐ XE
Hà Nội – 2021
Trang 2LỜI CAM ĐOAN
Để hoàn thành đề tài này em có tham khảo một số tài liệu liên quan nhận diệnbiển số xe bằng công nghệ xử lý ảnh
Em xin cam đoan đồ án này là do em thực hiện, các số liệu và kết quả nghiêncứu trong đề tài này là trung thực Mọi sự giúp đỡ cho bài báo cáo này đã được cảm
ơn và các thông tin trích dẫn trong bài báo cáo đã được ghi nguồn gốc rõ ràng
Hà Nội, ngày 15 tháng 8 năm 2021
Tác giả đồ án
Trang 3LỜI CẢM ƠN
Em xin chân thành cảm ơn chân thành tới Ban giám đốc Học viện Nông nghiệpViệt Nam, Ban chủ nhiệm khoa Cơ-Điện cùng toàn thể các thầy, cô giáo đã tận tìnhdạy dỗ, giúp đỡ em trong thời suốt quá trình học tập tại trường Học viện Nôngnghiệp Việt Nam Xin cảm ơn các thầy cô đã trực tiếp giảng dạy em cũng như thầy
cô đã gián tiếp giúp đỡ em trong quá trình tìm kiếm tài liệu cho việc thực hiện đồ ántốt nghiệp này
Đặc biệt em xin trân trọng cảm ơn cô Th.S Đặng Thị Thúy Huyền - người đã tậntình hướng dẫn, cung cấp tài liệu và truyền đạt nhiều ý kiến thiết thực trong suốtquá trình thực hiện đồ án Những kinh nghiệm quý báu mà cô truyền đạt sẽ là hànhtrang vững chắc giúp em tự tin hơn trong nghề nghiệp sau này
Xin cảm ơn gia đình và bạn bè đã ủng hộ, động viên, giúp đỡ em vượt qua khókhăn trong suốt thời gian vừa qua để em có thể hoàn thành nhiệm vụ học tập cũngnhư đồ án tốt nghiệp một cách tốt nhất
Mặc dù đã có nhiều cố gắng nhưng với kiến thức còn hạn hẹp và thời gian tiếpxúc với thực tế chưa nhiều, vì vậy bài báo cáo đồ án của em không thể tránh khỏinhiều thiếu sót Em rất mong có được những ý kiến đóng góp chân thành của cácthầy cô và các bạn để cho kiến thức trong cuốn báo cáo này được hoàn thiện hơn
Em xin chân thành cảm ơn!
Hà nội, ngày 15 tháng 8 năm 2021
Sinh viên
Trang 4MỤC LỤC
LỜI CAM ĐOAN 1
LỜI CẢM ƠN 2
MỤC LỤC 3
DANH MỤC HÌNH ẢNH 6
DANH MỤC BẢNG 8
MỞ ĐẦU 9
1 ĐẶT VẤN DỀ 9
2 MỤC ĐÍCH NGHIÊN CỨU CỦA ĐỀ TÀI 9
3 ĐỐI TƯỢNG NGHIÊN CỨU 9
4 NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU 10
4.1 NỘI DUNG 10
4.2 PHƯƠNG PHÁP NGHIÊN CỨU 10
5 Giới hạn đề tài 10
6 Thời gian và địa điểm thực hiện 10
CHƯƠNG 1 TỔNG QUAN ĐỀ TÀI 11
1.1 Nghiên cứu tổng quan về công nghệ xử lý ảnh 11
1.1.1 Ảnh số và điểm ảnh 11
1.1.2 Độ phân giải của ảnh 13
Trang 51.1.3 Các định dạng phổ biến của ảnh 13
1.1.4 Thu nhận ảnh 13
1.1.5 Một số ví dụ về ảnh số 14
1.1.6 Xử lý ảnh 15
1.1.7 Các chức năng của xử lý ảnh 16
1.2 Một số phương pháp xác định biển số 20
1.2.1 Phương pháp truyền thống sử dụng con người 20
1.2.2 Một số phần mềm quản lý trạm cân ô tô bằng camera nhận diện biển số .20 1.3 Kết luận chương 1 25
CHƯƠNG 2 NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU 26
2.1 Đối tượng nhận diện 26
2.2 Các bước xử lý ảnh nhận diện biển báo 28
2.3 Thu nhận ảnh 29
2.4 Tiền xử lý ảnh 29
2.4.1 Chuyển ảnh sang dạng ảnh xám 29
2.4.2 Xử lý nhiễu 31
2.4.3 Chuyển ảnh xám về dạng nhị phân 32
2.5 Chương trình tìm góc nghiêng 34
2.5.1 Biến đổi radon 34
2.5.2 Tìm góc nghiêng và xoay 36
2.6 Trích xuất vùng biển số 37
2.7 Tổng quan các phương pháp nhận dạng ký tự 41
2.7.1 Phương pháp so khớp mẫu (template matching) 41
2.7.2 Phương pháp hình thái học (morphology) 42
2.7.3 Phương pháp mạng nơron (neuron network) 42
Trang 62.8 Phương pháp đối sánh mẫu dựa trên đặc trưng 43
2.8.1 Tạo các mẫu 43
2.9 Tiến hành nhận dạng các ký tự 44
2.10 Thư viện và ngôn ngữ lập trình sử dụng trong hệ thống nhận dạng biển số 48 2.10.1 Giới thiệu về thư viện OpenCV 48
2.10.2 Ngôn ngữ lập trình 49
2.11 Kết luận chương 2 50
CHƯƠNG 3 KẾT QUẢ VÀ THẢO LUẬN 51
3.1 Kết quả và đánh giá hệ thống 51
3.1.1 Kết quả 51
3.1.2 Đánh giá 53
3.1.3 Một số kí tự nhận dạng dễ bị nhầm lẫn 54
3.2 Kết quả đạt được 55
3.3 Kết quả chưa đạt được 56
3.4 Kết luận chương 3 56
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 57
Trang 7DANH MỤC HÌNH ẢNH
Hình 1 1 Phân tích ảnh trắng đen 9
Hình 1 2 Phân tích ảnh màu 10
Hình 1 3 Phân tích ảnh theo điểm ảnh 10
Hình 1 4 Độ phân giải của ảnh 11
Hình 1 5 Màu ảnh 11
Hình 1 6 Các bước thu nhận ảnh 12
Hình 1 7 Một số ví dụ về ảnh số 13
Hình 1 8 Xử lý ảnh 13
Hình 1 9 Giảm nhiễu 14
Hình 1 10 Điều chỉnh độ tương phản 15
Hình 1 11 Tìm cạnh 16
Hình 1 12 Nén ảnh 16
Hình 1 13 Phân vùng 17
Hình 1 14 Khôi phục ảnh 17
Hình 1 15 Phương pháp truyền thống 18
Hình 2 1 Biển trắng 27
Hình 2 2 Kích thước biển trước ô tô 27
Hình 2 3 Kích thước biển sau ô tô 27
Hình 2 4 Kích thước biển sau mô tô 28
Hình 2 5 Sơ đồ quá trình nhận dạng biển số xe 28
Hình 2 6 Ảnh đầu vào 30
Hình 2 7 Ảnh chuyển về mức xám 31
Hình 2 8 Lọc trung vị 32
Hình 2 9 Ảnh nhị phân 34
Hình 2 10 Phương pháp biến đổi Radon 35
Hình 2 11 Hình chiếu đơn giản theo góc θ 35
Hình 2 12 Lưu đồ giải thuật phần xoay ảnh 37
Hình 2 13 Ảnh xám đầu vào – Lược đồ xám của ảnh xám 38
Hình 2 14 Lưu đồ cắt biển số thành hai hàng 40
Trang 8Hình 2 15 Lưu đồ giải thuật cắt các kí tự 41
Hình 2 16 Kí tự được đưa về dạng ma trận 42x24 44
Hình 2 17 Thuật toán đối sánh mẫu dựa trên đặc trưng 45
Hình 2 18 Kết quả nhận dạng của chương trình bằng phương pháp đối sánh mẫu dựa trên đặc trưng 47
Hình 2 19 Thư viện Open CV 48
Hình 2 20 Ngôn ngữ lập trình C# 49
Hình 3 1 Biển số xe 52
Hình 3 2 Biển số bị bóng, mờ 53
Hình 3 3 Biển số bị tối 53
Hình 3 4 Biển số bị che hoặc mất một phần kí tự 53
Hình 3 5 E bị nhầm sang F 55
Hình 3 6 B bị nhầm sang D 55
Hình 3 7 6 bị nhầm sang 8 55
Trang 9DANH MỤC BẢNG
Bảng 3 1 Kết quả thử nghiệm 51
Bảng 3 2 Phân tích các mẫu không nhận dạng được 51
Bảng 3 3 Kết quả các biển số bị bóng, mờ 52
Bảng 3 5 Kết quả các biển số bị tối 52
Bảng 3 6 Kết quả các biển số bị khuyết, che khuất một phần kí tự 53
Bảng 3 7 Kết quả số ký tự nhận dạng đúng trong điều kiện tốt 53
Bảng 3 8 Kết quả số ký tự nhận dạng đúng trong điều kiện phức tạp 54
Trang 10MỞ ĐẦU
1 Đặt vấn dề
Công cuộc phát triển khoa học công nghệ ngày càng diễn ra mạnh mẽ và tựđộng hóa là một phần thiết yếu của hiện tại và trong tương lai Hiện nay việc conngười sử dụng các phương tiện giao thông như ô tô, xe máy thì không ngừng giatăng Theo thống kê cho thấy, cả nước ta hiện có 3,7 triệu ô tô và 57 triệu xemáy đã đăng ký, mỗi ngày lại có thêm 850 ô tô và 9000 xe máy đăng ký mới.Đây quả thực là những con số ấn tượng, cho chúng ta thấy việc cần kiểm soátchặt chẽ các phương tiện giao thông hiện nay cần thiết hơn bao giờ hết Mỗichiếc xe đều sở hữu cho mình một biển số riêng, tuy nhiên việc quản lý chúng ởcác khu vực tập trung nhiều xe như các bãi đỗ xe, trạm cân, quản lý phương tiệnlưu thông trên đường ở Việt Nam hiện nay đa phần đều sử dụng con người kếthợp với các loại vé như ghi tay hoặc vé quét điện tử Cả hai cách này đều chothấy hạn chế về các mặt như vẫn cần có nhân công xử lý tại địa điểm đó, dễ xảy
ra sai sót, xử lý chậm chạp, không linh hoạt
Theo như tìm hiểu, em thấy rằng trên thế giới người ta đã sử dụng các hệthống nhận dạng, kiểm soát biển số xe tự động rất phổ biến Một trong nhữngphương pháp hiệu quả được ứng dụng trong việc này là sử dụng công nghệ xử lýhình ảnh Cùng với sự tò mò, hào hứng với vấn đề này cũng như nhận thấy côngnghệ nhận diện biển số xe tự động tại Việt Nam đang rất có tiềm năng nên em đãchọn và nghiên cứu đề tài “Nghiên cứu, ứng dụng công nghệ xử lý ảnh nhậndiện biển số xe” làm đề tài nghiên cứu tốt nghiệp của mình
2 Mục đích nghiên cứu của đề tài
Tìm hiểu các phương pháp xác định nhận diện biển số xe ứng dụng thư việnOpenCV
Xây dựng được hệ thống trích xuất thông tin biển số xe chính xác
3 Đối tượng nghiên cứu
Công nghệ xử lý ảnh nhận diện ký tự
Các phương pháp, thuật toán phục vụ cho việc nhận diện biển số xe
Trang 114 Nội dung và phương pháp nghiên cứu
4.1 Nội dung
Chương 1: Tổng quan đề tài
Chương 2: Nội dung và phương pháp nghiên cứu
Chương 3: Kết quả và thảo luận
4.2 Phương pháp nghiên cứu
Phương pháp nghiên cứu kế thừa:
Dựa vào các thuật toán đã có để phân tính đối tượng
Kế thừa từ các công trình nghiên cứu khoa học và sử dụng các phần mềmOpencv, ngôn ngữ lập trình C#
Tham khảo các tài liệu, sách báo, internet và các hệ thống trên thực tế
CHƯƠNG 1 Giới hạn đề tài
- Tập trung tìm hiểu nhận diện biển số xe
- Việc xử lý ảnh, nhận dạng biển số xe thỏa mãn các điều kiện:
+ Ánh sáng bình thường, ngược sáng, ánh sáng đèn điện
+ Góc ảnh: Trực diện (frontal) hoặc góc nghiêng không quá 30o
+ Không bị che khuất (no occulusion).
+ Ảnh có chất lượng cao (high quality images)
6 Thời gian và địa điểm thực hiện
- Thời gian: Từ tháng 4/2021 đến 8/2021
- Địa điểm: Học viện Nông nghiệp Việt Nam
Trang 12CHƯƠNG 2. TỔNG QUAN ĐỀ TÀI
2.1 Nghiên cứu tổng quan về công nghệ xử lý ảnh
Ảnh số: " một hình ảnh có thể được định nghĩa là hàm hai chiều, f (x, y), trong đó
x và y là tọa độ không gian (mặt phẳng) và biên độ của f tại bất kỳ cặp tọa độ (x, y)nào được gọi là cường độ hoặc mức độ màu xám của hình ảnh tại điểm đó Khi x, y
và các giá trị cường độ của f đều là các đại lượng hữu hạn, rời rạc, chúng ta gọi hìnhảnh là hình ảnh kỹ thuật số"
Trang 13Hình 1 2 Phân tích ảnh màu
Hay có thể hiếu 1 cách đơn giản rằng "Ảnh số là số hóa làm cho một hình ảnh kỹthuật số trở thành một xấp xỉ của một cảnh thực"
Hình 1 3 Phân tích ảnh theo điểm ảnh
Điểm ảnh: "hình ảnh kỹ thuật số chứa một số lượng hữu hạn các hàng và cột củacác phần tử Mỗi phần tử được gọi là pixel "
Trang 142.1.2 Độ phân giải của ảnh
Độ phân giải: "độ phân giải là thước đo của chi tiết rõ ràng nhỏ nhất trong ảnh,được tính là số điểm (pixel) trên một đơn vị khoảng cách ( dpi)"
Hình 1 4 Độ phân giải của ảnh
Như ảnh trên chúng ta thấy rằng tuy cùng kích thước nhưng độ phân giải khácnhau, và độ phân giải càng thấp thì càng mờ Như ảnh 1 sẽ được hiểu là chiểu rộng
có 175 điểm ảnh và chiều cao có 256 điểm ảnh
2.1.3 Các định dạng phổ biến của ảnh
Các định dạng phổ biển của ảnh số bao gồm:
1 giá trị trên điểm/pixel ( B&W hay Grayscale)
3 giá trị trên điểm/pixel (Red, Green, Blue)
4 giá trị trị trên điểm/pixel ( Red, Green, Blue, + “Alpha” or Opacity)
Trang 16Hình 1 7 Một số ví dụ về ảnh số
2.1.6 Xử lý ảnh
Xử lý ảnh là các thuật toán thay đổi hình ảnh đầu vào để tạo hình ảnh mới Đầuvào là ảnh nguyên bản, đầu ra là ảnh đã được xử lý (phân ngưỡng, giảm nhiễu, điềuchỉnh độ tương phản, )
Trang 17có điều kiện ánh sáng thấp.
Trang 18Hình 1 9 Giảm nhiễu 2.1.7.2 Độ tương phản
Độ tương phản là sự khác biệt về độ chói hoặc màu sắc giúp phân biệt đốitượng Trong nhận thức trực quan về thế giới thực, độ tương phản được xác địnhbởi sự khác biệt về màu sắc và độ sáng của đối tượng và các đối tượng khác trongcùng một trường nhìn
Độ tương phản là một trong những yếu tố quan trọng nhất để đánh giá chất lượngcủa một hình ảnh
Khi các vùng tối và sáng trong hình ảnh đó được hiển thị rõ ràng, cách khung cảnh
sẽ thể hiện rõ nét hơn
Trang 19Hình 1 10 Điều chỉnh độ tương phản 2.1.7.3 Tìm cạnh
Cạnh là tập hợp các pixel có tính chất tại pixel đó, những pixel lân cận theo mộthướng có sự thay đổi đột ngột về độ sáng Một cách đơn giản để xác định pixel cóphải là cạnh hay không là kiểm tra giá trị cường độ sáng tại pixel đó trừ đi giá trịcường độ sáng của pixel ở gần đó
Phát hiện cạnh là một kĩ thuật xử ảnh được sử dụng để tìm kiếm viền bao của củacác đối tượng trong ảnh Trong xử lý ảnh, việc kiếm việc thực chất là tìm nhữngkhu vực bị mất liên tục về độ sáng
Phát hiện cạnh thường được sử dụng để phân vùng ảnh và trích xuất thông tin từảnh phục vụ cho các bài toán trong Thị giác máy và Học máy
Hình 1 11 Tìm cạnh
Trang 202.1.7.4 Nén ảnh
Nén hình ảnh là một loại của nén dữ liệu được áp dụng cho hình ảnh kỹ thuật số,
để giảm chi phí cho việc lưu trữ hoặc truyền tải Các thuật toán có thể tận dụngcác đặc điểm của thị giác và các thuộc tính thống kê của dữ liệu hình ảnh để cungcấp kết quả vượt trội so với các phương pháp nén dữ liệu chung được sử dụng chocác dữ liệu số khác
Hình 1 12 Nén ảnh 2.1.7.5 Phân vùng
Trong lĩnh vực thị giác máy, phân vùng ảnh là một quá trình chia một bức ảnh
số thành nhiều phần khác nhau Mục tiêu của phân vùng ảnh là để đơn giản hóa vàhoặc thay đổi biểu diễn của một tấm ảnh vào điều gì đó có ý nghĩa hơn và dễ dàng
để phân tích Phân vùng ảnh thường được sử dụng để xác định vị trí các đối tượng,đường biên (đường thẳng, cong,…) Hay nói cách khác phân vùng ảnh là một quátrình gán nhãn cho mỗi điểm ảnh trong một bức ảnh, các điểm ảnh trong cùng mộtnhãn sẽ có những đặc tính giống nhau về màu sắc, cường độ hoặc kết cấu của ảnh
Trang 21Hình 1 13 Phân vùng
Kết quả của việc phân vùng ảnh là tập hợp các phân đoạn bao gồm có thể là toàn
bộ bức ảnh hoặc tập hợp các đường biên chiết xuất từ hình ảnh Các điểm ảnh trongcùng một vùng có đặc tính tương tự nhau về màu sắc, cường độ hoặc kết cấu Cácvùng lân cận thì khác nhau đáng kể về các đặc trưng trên
số liệu cho các xe này, sau đó thông tin kết quả số liệu được lưu trữ lại bằng nhiềuphương pháp khác nhau
Trang 222.2.1 Phương pháp truyền thống sử dụng con người
Hình 1 15 Phương pháp truyền thống
Phương pháp truyền thống sử dụng đơn giản nhất chính là sức người Ngườikiểm soát sẽ quan sát và ghi hoặc đánh máy lại số xe và số cân Phương pháp nàyđơn giản tuy nhiên còn tồn tại khá nhiều bất cập như mất nhiều thời gian, nhâncông, dễ xảy ra sai sót do nhầm lẫn hoặc gian lận trong quá trình cân, không đảmbảo được tính minh bạch của hệ thống
2.2.2 Một số phần mềm quản lý trạm cân ô tô bằng camera nhận diện biển số
Tính năng nổi bật của phần mềm quản lý bằng camera nhận diện biển số:
- Phần mềm online nên người dùng có thể dễ dàng sử dụng mọi lúc mọi nơi thôngqua thiết bị có kết nối Internet
- Tự động hóa quá trình giám sát, cân, xử lý số liệu, thông tin xuất nhập hàng hóa,hạn chế được thất thoát hàng hóa trong doanh nghiệp
- Dữ liệu và thông tin của quá trình xuất nhập hàng hóa được xem xét, giám sáttheo chức năng phân quyền của người dùng và được lưu trữ bảo mật tuyệt đối trên
Trang 23Mỗi tài xế sẽ được cấp thẻ nhằm giúp cho việc kiểm soát được dễ dàng hơn.
Ứng dụng phần mềm này trong việc định lượng cân nặng của ô tô cũng mang lại nhiều lợi ích cho doanh nghiệp, như quản lý dễ dàng, nhanh chóng giúp tiết kiệm thời gian quản lý, giảm thiểu nguồn nhân lực khi thực hiện, tiết kiệm được chi phí quản lý của doanh nghiệp.Tính năng nổi bật của phần mềm giải pháp quản lý trạm cân tự động
- Quản lý hiệu quả doanh thu và tài chính cho doanh nghiệp
- Tự động đóng – mở barrier an ninh khi xe ra- vào
- Ghi lại trọng tải của ô tô khi ra – vào
- Ghi hình và lưu trữ thông tin khi xe ra – vào và trong suốt quá trình xuất nhập hàng hóa tại kho
Ở đây ta có thể kể đến LPR, ANPR và công nghệ nhận dạng biển số xe tự động.Nhận dạng biển số tự động (ANPR/LPR) là một hệ thống có khả năng đọc biển
số xe mà không cần sự can thiệp của con người Nó hoạt động thông qua việc sửdụng tính năng chụp ảnh tốc độ cao, phát hiện các ký tự trong hình ảnh được cungcấp, nhận dạng ký tự để chuyển đổi hình ảnh sang văn bản Vì vậy, công nghệ nàycho kết quả với một tập hợp siêu dữ liệu xác định hình ảnh có chứa biển số xe vàvăn bản được giải mã liên quan của biển số đó
Một hệ thống nhận diện biển số xe điển hình sẽ bao gồm LPR và ANPR Thực chất,LPR và ANPR là hai thuật ngữ khác nhau được sử dụng để mô tả phần cứng vàphần mềm được sử dụng để nhận dạng biển số xe và chụp các biển số đó bằng hệthống camera giám sát Ngoài ra một công nghệ quan trọng được sử dụng trong hệthống là ORC - Nhận dạng ký tự quang học
LPR-Nhận dạng biển số: LPR được sử dụng để mô tả các camera được chếtạo đặc biệt có khả năng đối phó với các thách thức liên quan đếnviệc chụp biển số xe như tốc độ, sương mù, tầm nhìn ban đêm và phản chiếucủa vật liệu
ANPR-Nhận dạng biển số tự động: Là một thuật ngữ được sử dụng để mô tảphần mềm lấy dữ liệu đầu vào từ camera LPR và nhận dạng các ký tự chữ sốtrên biển bằng phần mềm Dữ liệu được phân tích này thu được thông qua
Trang 24phần mềm có thể được lưu trữ hoặc sử dụng để so sánh với các bản ghi cơ sở
dữ liệu
ORC-Nhận dạng ký tự quang học: Đây là một công nghệ phổ biến để nhậndạng văn bản bên trong hình ảnh, cụ thể ở đây là ảnh chụp biển số xe ORCđược sử dụng trong ANPR để chuyển dữ liệu hình ảnh thành dữ liệu văn bản
có thể đọc được bằng máy
Về mặt công nghệ:
Công nghệ và thuật toán nhận dạng biển số xe có hai vấn đề thiết yếu:
Chất lượng của phần mềm nhận dạng biển số xe với các thuật toán nhận dạng
áp dụng của nó
Chất lượng của công nghệ thu nhận hình ảnh, camera và xử lý ánh sáng
Sự tinh vi, thông minh của phần mềm nhận dạng và chất lượng của các thuật toánđược áp dụng, kiến thức toán học quyết định khả năng của phần mềm nhận dạng.Các thuật toán càng tốt thì chất lượng của phần mềm nhận dạng càng cao:
Độ chính xác nhận dạng cao nhất có thể
Tốc độ xử lý nhanh nhất có thể
Khả năng xử lý trên nhiều loại biển nhất có thể
Phạm vi chất lượng hình ảnh rộng nhất có thể xử lý
Khả năng chống lại sự bóp méo dữ liệu đầu vào tốt nhất
Có hai phần công nghệ then chốt của một thuật toán nhận dạng biển số xe về cơbản xác định mức độ chất lượng của nó: Một công nhận dạng ký tự quang học thôngminh mạnh mẽ và độ chính xác cao Một công nghệ cho phép phân tích cấu trúcphức tạp
Nguyên lý hoạt động: Phần mềm nhận dạng biển số xe thường phải trải qua các
bước:
Bước 1: Thuật toán sẽ xác định vị trí của các biển số xe nếu có Nếu có một biển số,
nó phải được định vị chính xác nhất có thể và sau đó trích xuất từ hình ảnh để xử lýthêm Sau khi biển số xe được định vị và trích xuất từ ảnh chụp, nó phải đượcchuyển đổi thành một dạng tiêu chuẩn hóa:
Chuẩn hóa màu nền (độ tương phản và độ sáng được chuẩn hóa)
Chuẩn hóa kích thước
Trang 25 Hướng biển số đồng nhất
Bước 2: Phân đoạn ký tự : sau khi hình ảnh biển số xe trích xuất được chuẩn hóa,các ký tự riêng lẻ phải được phân biệt (phân đoạn) với nhau Việc phân đoạn trở nênkhó khăn khi biển không rõ ràng, các ký tự chạm vào nhau, có đinh vít hoặc hiệuứng ánh sáng mạnh v.v
Bước 3: Khi các ký tự được phân đoạn đúng cách (tách biệt với nhau và được định
vị chính xác) thì sẽ có thời gian để gọi thuật toán nhận dạng ký tự cho từng hình ảnhđược phân đoạn riêng lẻ Đầu ra của mỗi quá trình nhận dạng ký tự là mã ASCIIcủa hình ảnh ký tự đã cho Bằng cách nhận dạng tất cả các ký tự, toàn bộ văn bảntrên biển số sẽ được đọc
Đặc điểm của ANPR/LPR:
ANPR/LPR có thể hoạt động cả ngày và đêm, thời tiết xấu, trong mưa, sương
mù Vì lý do này, chúng không chỉ sử dụng cùng một quang phổ mà mắt chúng tathấy Thay vào đó, nó có thể sử dụng băng tần hồng ngoại hoặc gần hồng ngoại
Hệ thống nhận diện biển số tự động phải giải quyết hai vấn đề cơ bản Đầu tiên, hệthống phải nhận ra rằng có một biển số trong góc nhìn của nó Sau đó, nó phải giải
mã biển số đó Cả hai điều này đều có thể bị lỗi Một số nghiên cứu đã được công
bố trích dẫn tỷ lệ thành công có thể đạt từ 93% đến 98%
Một vấn đề khác là nhận dạng ký tự Một số ký tự nhất định, chẳng hạn như chữ cái'O' và số '0' có thể dễ bị nhầm lẫn Biển số lệch với góc camera LPR hoặc vật cản điqua đúng thời điểm chụp ảnh cũng là các vấn đề có thể gây ra lỗi cho hệ thống Đểkhắc phục việc chọn mặt bằng và chiều cao lắp đặt thiết bị đặc biệt quan trọng
Ưu điểm của ANPR/LPR:
Với sự trợ giúp của công nghệ này, dẽ dàng phân biệt phương tiện đăng ký trảtrước với những phương tiện vãng lai
Với khả năng ghi lại hình ảnh của tài xế, nạn trộm cắp xe có thể được ngăn chặntrên diện rộng
Phát hiện xe bị đánh cắp hoặc chưa đóng tiền phạt qua lịch sử dữ liệu giúp ích chocác lực lượng chức năng
Giảm tắc nghẽn giao thông bằng cách chuyển hướng các phương tiện khác nhausang các làn đường khác nhau
Trang 26Dễ dàng xác định được phương tiện bị cấm ra vào.
2.3Kết luận chương 1
Như vậy qua chương 1, ta đã tìm hiểu sơ bộ về một số hệ thống giám sát trạmcân sử dụng theo phương pháp truyền thống và hiện đại, đồng thời có những tìmhiểu cơ bản về công nghệ xử lý ảnh để ứng dụng vào trích xuất thông tin biển số xe.Trong chương 2, ta sẽ đi sâu vào nội dung và phương pháp thực hiện để xây dựng
hệ thống hoàn chỉnh
Trang 27CHƯƠNG 3 NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU
Chương 2 này đề cập đến nội dung và phương pháp nghiên cứu về tiền xử lýảnh, phương pháp trích xuất vùng biển số, các ký tự và nhận dạng ký tự biển số xe,đưa ra các khái niệm cơ bản về ảnh số như độ phân giải, mức xám, ngưỡng của ảnhxám…
Ngoài ra trong chương này sẽ làm rõ từng bước, hướng tiếp cận, đưa ra thuật toán
từ việc thu nhận ảnh màu ở đầu vào qua các giai đoạn tiền xử lý, trích xuất vùngbiển số, trích xuất các ký tự
3.1Đối tượng nhận diện
Nhìn chung biển số xe Việt Nam đều có những đặc điểm như: hình vuông hoặchình chữ nhật, có màu sáng, phủ sơn phản quang, có chứa ký tự, thường được gắnđằng trước hoặc đằng sau xe hoặc cả 2 Tuy nhiên, ở mỗi quốc gia biển số lại cónhững đặc thù riêng về kích thước, tỷ lệ chiều rộng/chiều dài, số lượng ký tự, kiểu
ký tự…
Ở Việt Nam, biển số xe là tấm biển gắn trên mỗi xe cơ giới, được cơ quan công
an cấp khi mua xe mới hoặc chuyển nhượng xe Biển số xe được làm bằng hợp kimnhôm sắt, có dạng hình chữ nhật hoặc hơi vuông, trên đó có in những con số, chữviết cho biết: vùng địa phương quản lý, các con số cụ thể khi tra trên máy tính còncho biết danh tính người chủ hay đơn vị đã mua nó, thời gian mua nó phục vụ chocông tác an ninh… Đặc biệt trên đó còn ghi quốc huy của nước CHXHCN ViệtNam
Một số đặc điểm của biển số xe cần nhận dạng trong bài toán:
Màu sắc: Nền biển màu trắng, chữ màu đen là xe thuộc sở hữu cá nhân và xecủa các doanh nghiệp
Trang 28Hình 2 1 Biển trắng
Kích thước biển số:
Biển số ô tô gồm 2 biển số không giống nhau về kích thước nhưng giống nhau
về chữ và số trong biển Một biển gắn phía trước và một biển gắn phía sau xe Cókích thước như sau:
- Biển trước: chiều cao 110 mm, chiều dài 470 mm
Hình 2 2 Kích thước biển trước ô tô
- Biển sau: chiều cao 200 mm, chiều rộng 280 mm
Hình 2 3 Kích thước biển sau ô tô
Trang 29- Biển số rơ mooc, sơ mo rơ mooc: 1 biển gắn phía sau thành xe Kích thước: Chiềucao 200 mm, chiều dài 280 mm.
Biển số xe mô tô: 1 biển gắn phía sau xe Kích thước: chiều cao 140 mm, chiềudài 190 mm
Hình 2 4 Kích thước biển sau mô tô
3.2Các bước xử lý ảnh nhận diện biển báo
Hệ thống nhận dạng biển số xe tự động là hệ thống có khả năng phân tích, xử lýhình ảnh biển số xe trên các hình ảnh chụp được từ các thiết bị thu hình, cho kết quảđầu ra là một chuỗi ký tự trên biển số Nguồn hình ảnh cho ứng dụng có rất nhiềunhưng thường là hình ảnh thu nhận trực tiếp từ camera Đầu vào của hệ thống là ảnhcủa phương tiện giao thông có biển số xe Đầu ra là chuỗi ký tự trên biển số xe
Hình 2 5 Sơ đồ quá trình nhận dạng biển số xe
Trong đồ án này, em xin phát triển hệ thống nhận dạng biển số xe với một sốgiới hạn:
- Biển số là biển số Việt Nam là hệ thống chỉ được sử dụng ở phạm vi trongnước
- Hệ thống chỉ xử lý ảnh có chứa biển số nền trắng chữ đen
- Vùng ảnh chứa biển số có độ nghiêng bé hơn hoặc bằng 10 độ
Trang 30Từ những điều kiện trên, bài toán tự động nhận dạng biển số xe được phát biểu
như sau: quá trình nhận dạng biển số được áp dụng cho các phương tiện giao thông
có chứa biển số ở Việt Nam Đầu vào là ảnh chụp phương tiện cùng với biển số Đầu ra là các ký tự trên biển số xe dưới dạng text.
3.3 Thu nhận ảnh
Trong nhận dạng biển số xe, việc thu nhận ảnh là một bước rất quan trọng Tùytheo môi trường và hoàn cảnh tại thời điểm thu nhận mà ảnh ta có được là ảnh mờhay tỏ, ảnh có nhiều xe hay không, chất lượng ảnh có tốt hay không ảnh hưởng lớnđến các quá trình xử lý và nhận dạng sau này Đề tài sử dụng Webcam Logitech 270kết hợp với cảm biến phát hiện xe vào/ra để tiến hành chụp chính xác vị trí biển số.Quá trình thu nhận ảnh là bước đầu và tưởng chừng như là bước đơn giản nhấtnhưng nó lại là bước rất quan trọng và có ảnh hưởng rất lớn đến kết quả nhận diệnbiển số, một số yếu tố được thể hiện như:
Độ nét của các kí tự trên biển số
Ánh sáng thu được trên bức ảnh quá sáng hoặc quá tối
Ảnh chụp biển số bị thiếu, khuyết kí tự
Ảnh chụp biển số không cân đối
3.4Tiền xử lý ảnh
Tiền xử lý là quá trình chuẩn hóa dữ liệu vào, gồm các công việc như xử lýnhiễu, chuẩn hóa kích thước dữ liệu… Các bước mà đề tài thực hiện:
3.4.1 Chuyển ảnh sang dạng ảnh xám
Để tăng tính hiệu quả của hệ thống, ảnh màu RGB ban đầu được chuyển về ảnh
256 mức xám Việc sử dụng ảnh 256 mức xám không làm giảm đi tính đa năng củaứng dụng Trên thực tế, ảnh 256 mức xám vẫn được sử dụng nhiều, và nhiều thiết bịghi hình cũng có khả năng tự chuyển ảnh màu thành ảnh 256 mức xám Về lýthuyết, để chuyển ảnh màu về mức xám ta chỉ cần nhân các giá trị màu của mỗiđiểm ảnh với một hệ số cho trước Ta có công thức:
O(x,y)= IR(x,y) * 0.287 + IG(x,y) * 0.599 + IB(x,y) * 0.114
(0.1)
Trang 31 x,y : tọa độ của điểm ảnh
IR : thành phần màu đỏ tại màu I(x,y)
IG : thành phần màu xanh lá tại màu I(x,y)
IB : thành phần màu xanh dương tại màu I(x,y)
O (x,y): màu đầu ra
I (x,y): màu đầu vào
Hình 2 6 Ảnh đầu vào
Hình 2 7 Ảnh chuyển về mức xám
Trang 323.4.2 Xử lý nhiễu
Đề tài dùng bộ lọc trung vị để tiến hành xử lý nhiễu ở những bước đầu tiên.Trước khi tiến hành ta phải lọc nhiễu xuất hiện trong vùng biển số để nâng cao độchính xác của các quá trình xử lý tiếp theo Phần lớn ảnh giảm chất lượng là do bịtác động bởi nhiễu Nhiễu trong ảnh phát sinh do quá trình thu nhập ảnh, số hóaảnh, hoặc trong quá trình truyền ảnh Ảnh nhiễu được mô hình bởi:
Với f(x,y) là điểm ảnh gốc, n(x,y) là thành phần nhiễu và g(x,y) là pixel bịnhiễu
Xác định được mô hình nhiễu thì có thể khôi phục được ảnh gốc
Lọc trung vị là một kĩ thuật lọc phi tuyến (non-linear) khá hiệu quả đối với hailoại nhiễu: nhiễu đốm (speckle noise) và nhiễu muối tiêu (salt-pepper noise) Kĩthuật này là một bước rất phổ biến trong xử lý ảnh Bộ lọc trung vị có hiệu quả hơnnhân chập khi mục đích là loại bỏ nhiễu và giữ nguyên đường biên bao quanh đốitượng
Ý tưởng chính của thuật toán lọc trung vị như sau: sử dụng một cửa sổ lọc (matrận 3x3) quét qua lần lượt từng điểm ảnh của ảnh đầu vào Tại vị trí mỗi điểm ảnhlấy giá trị của các điểm ảnh tương ứng trong vùng 3x3 của ảnh gốc "lấp" vào matrận lọc.Sau đó sắp xếp các điểm ảnh trong cửa sổ này theo thứ tự (tăng dần hoặcgiảm dần tùy ý) Cuối cùng, gán điểm ảnh nằm chính giữa (trung vị) của dãy giá trịđiểm ảnh đã được sắp xếp ở trên cho giá trị điểm ảnh đang xét của ảnh đầu ra
Trang 33Hình 2 8 Lọc trung vị
Sơ lược một cách ngắn gọn các bước của giải thuật:
Quét cửa sổ lọc lên các thành phần của ảnh gốc; điền các giá trị được quétvào cửa sổ lọc
Lấy các thành phần trong của sổ lọc để xử lý
Sắp xếp theo thứ tự các thành phần trong cửa sổ lọc
Lưu lại thành phần trung vị, gán cho ảnh ra
3.4.3 Chuyển ảnh xám về dạng nhị phân
Để chuyển hình ảnh mức xám về ảnh nhị phân ta đặt một ngưỡng (threshold)thích hợp, điểm ảnh xám nào có giá trị bằng hoặc dưới ngưỡng thì đặt lại giá trịbằng 0 và ngược lại, ta đặt lại giá trị bằng 225 Ở đây, ngưỡng được tính tự động từảnh xám ở trên theo phương pháp của Otsu
O(x,y) = 0 nếu I(x,y) < T và 1 nếu I(x,y) ≥ T
Với T là ngưỡng
Nếu sử dụng một giá trị T duy nhất cho toàn bộ bức ảnh, có nghĩa là công thứctrên áp dụng cho toàn ảnh trong quá trình phân hoạch thì ta gọi đó là cách dùngngưỡng toàn cục (Global Thresholding), ngược lại sử dụng ngưỡng khác nhau tùytheo từng vùng
(Region) trong ảnh, T biến thiên theo từng vị trí khác nhau và được tính toán lại tạitừng vùng ảnh, có nghĩa là công thức trên áp dụng cho từng vùng cục bộ của ảnhvới T thay đổi thì đó gọi là phương pháp dùng ngưỡng cục bộ (Local Thresholding).Như vậy với giải pháp phân hoạch ngưỡng trên ảnh, T là một nhân tố vô cùngquan trọng mang tính quyết định sự thành bại của thuật toán Otsu một thuật toánđơn giản để tính T phục vụ cho phân hoạch ảnh toàn cục
Otsu là tên một nhà nghiên cứu người Nhật đã nghĩ ra ý tưởng cho việc tínhngưỡng T một cách tự động (adaptive) dựa vào giá trị điểm ảnh của ảnh đầu vàonhằm thay thế cho việc sử dụng ngưỡng cố định (fixed hay const) Phương pháp nàycho kết quả là mỗi ảnh khác nhau có một ngưỡng tương ứng khác nhau bằng cácbước xử lý như sau:
Trang 34- Chọn một giá trị khởi tạo cho T Nên chọn giá trị mang tính công thức, ví dụ T =(min + max) / 2, T = giá trị trung bình của toàn bộ ảnh, tránh dùng các giá trịmang tính định lượng thiết lập cứng.
- Phân hoạch ảnh sử dụng T kết quả của bước này sẽ tạo ra 2 nhóm điểm ảnh: G1chứa tất cả các điểm ảnh với giá trị (intensity) > T và G2 chứa các điểm ảnh với giátrị (intensity) ≤ T
- Tính trung bình (Average hay Mean) m1 và m2 của các điểm ảnh thuộc G1 vàG2
- Tính lại T dựa vào m1 và m2: T = (m1 + m2) / 2
- Lặp lại bước 2 đến 4 cho tới khi nào giá trị chênh lệch giữa T cũ và T mới làkhông đáng kể (nhỏ hơn một giá trị cho trước ΔT).T) ΔT).T thường được sử dụng là sai
số từ các phép tính toán trong quá trình xử lý Trong trường hợp này T được tính ở
4 sẽ có phép sai số là 1 / 2 * (giá trị đơn vị của điểm ảnh)
Hình 2 9 Ảnh nhị phân
3.5Chương trình tìm góc nghiêng
3.5.1 Biến đổi radon
Dùng để biến đổi các ảnh trong không gian 2 chiều với các đường thẳng thành miềnRadon, trong đó mỗi đường thẳng trong ảnh sẽ cho 1 điểm trong miền Radon
Công thức toán học của biến đổi Radon:
Trang 35Phương trình trên biểu diễn việc lấy tích phân dọc theo đường thẳng s trên ảnh,trong đó ρ là khoảng cách của đường thẳng so với gốc tọa độ O, và θ là góc lệch sovới phương ngang.
Hình 2 10 Phương pháp biến đổi Radon
Trong xử lý ảnh số, biến đổi Radon tính toán hình chiếu của ma trận ảnh dọctheo 1 hướng xác định Hình chiếu của 1 hàm số2 chiều là f(x,y) la tập hợp các tíchphân đường Hàm Radon tính toán tích phân đường dọc theo các tia song song theocác phương khác nhau ( bằng cách xoay hệ trục tọa độ xung quanh O theo các giátrị θ khác nhau ), chiều rộng của các tia là 1 pixel Hình dưới đây biểu diễn 1 hìnhchiếu đơn giản theo 1 giá trị của góc θ
Hình 2 11 Hình chiếu đơn giản theo góc θ
Trang 36Công thức tổng quát trên có thể viết lại như sau:
Sau đó, ta tiến hành biến đổi Radon để tìm góc xoay Thực hiện biến đổi Radonvới góc θ chạy trong khoảng ( 0: 180), ta sẽ được một ma trận với các điểm R(θ)với từng góc θ và tọa độ pixel tương ứng
Sau khi biến đổi Radon, chúng ta xác định được góc Rmax, ứng với Rmax thì ta cóđược θ max và góc lệch là ( 90º - θ max) Sau đó ta sử dụng hàm Rotate để xoayảnh với góc lệch tìm được
Lưu đồ giải thuật chương trình xoay ảnh:
Trang 37Hình 2 12 Lưu đồ giải thuật phần xoay ảnh
3.6Trích xuất vùng biển số
Trích xuất vùng biển số là bước tiếp theo sau khi thu nhận ảnh Như chúng ta đãqui ước biển số là một tấm kim loại nhỏ có gắn các chữ số và đặt trước các xe vớimục đích xác định xe đó nhưng máy không hiểu điều này, máy không thể hiểu đượccác định nghĩa như xe, đường, biển số Vì vậy ta cần phải đưa ra các thông số phântích và định nghĩa cho máy hiểu và xử lý
Đây là giai đoạn quan trọng nhất và khó khăn nhất Nó xác định tốc độ và mạnh
mẽ của hệ thống Một số nghiên cứu trích xuất vùng biển số được tiến hành trongnhiều năm với các phương pháp khác nhau đã được đề xuất Trong đó, phổ biến cócác phương pháp dưới đây
Trang 38 Phương pháp dùng chuyển đổi Hough: dựa vào đặc trưng cạnh biên tríchđược, áp dụng các phương pháp xác định đường thẳng như phép biến đổiHough để phát hiện các cặp đường thẳng gần song song ghép thành một ảnhbiể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, độ sáng, 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 (neuralnetwork), trí tuệ nhân tạo (artificial intelligence) chẳng hạn để phân loại cóphải là vùng biển số hay không
Trong đồ án này sử dụng phương pháp hình thái hình học:
Nội dung của phương pháp: Dựa vào đặc trưng quan trọng là biển số xe máy có
độ sáng (tức mức xám khi chuyển bức ảnh về dạng xám) là tương đối khác so vớicác vùng khác trong bức ảnh, cũng như sự phân bố mức xám là khá đồng đều trênbiển số và vì vậy khi được nhị phân hoá, vùng biển số là một đối tượng có đặc thùhình thái, có thể phân biệt được với các vùng khác Như vậy các bước thực hiện ởđây là:
Xác định ngưỡng xám Thực chất là không có phương pháp nào chọn cho đúng ngưỡng xám để thực hiện Thay vào đó, ngưỡng xám sẽ được quét trong một khoảng nào đó Thông qua lược đồ xám ta nhận thấy vùng biển số thường sẽ có độ sáng tương đối lớn (từ 130-200) vì vậy ta sẽ xác định lược đồ xám lớn nhất trong khoảng này và ngưỡng xám cần chọn sẽ thuộc vùng này nhờ đó ta sẽ giảm được thời gian lặp tìm ngưỡng xám.
Hình 2 13 Ảnh xám đầu vào – Lược đồ xám của ảnh xám
Nhị phân hoá ảnh xám đầu vào với ngưỡng xám đã xác định
Trang 39Lọc các nhiễu (salt and pepper noise) gây ảnh hưởng xấu tới đối tượng biển số.Gắn nhãn cho các đối tượng còn lại trong ảnh nhị phân thu được.
Trích ra các đối tượng ứng viên biển số theo tiêu chí cụ thể của biển số xe về chiềucao, chiều rộng, tỉ lệ các cạnh, diện tích, trọng tâm …Cụ thể nghiên cứu đãchọn:
7000 pixel ≤ diện tích ≤ 150000 pixel
số thành 2 hàng trên và dưới, mục đích cách làm này nhằm nhận dạng đúng thứ tự
vị trí các ký tự nằm trên biển số Vì khi biển số bị nghiêng so với thực tế, thuật toán
ta chọn hoạt động theo trái qua phải và trên xuống dưới Nếu không có giải pháp
xử lý rất khó thực hiện đúng thứ tự trên biển số Xây dựng 1 chương trình con dùng
để thực hiện việc này
Phương pháp này dựa vào cách tính điểm ảnh nhị phân trên cùng 1 hàng củaảnh Nếu hàng đó có tổng các điểm ảnh bằng 0 ta tìm hàng từ trên xuống đến hàng
có bằng 0 vậy ta đã có 1 hàng, hàng thứ 2 tìm tương tự như vậy
Thuật toán:
Bắt đầu từ điểm ảnh ( x, y) đầu tiên (0,0), và đặt là dòng 0
Quét đến hết chiều ngang của ảnh trên một giá trị y của ảnh
Nếu là phát hiện điểm đen thì lưu giá trị y là đỉnh của hàng đầu tiên
Quét đến dòng thứ I mà không phát hiện điểm đen thì đó là dòng cuối Tatiến hành tách vùng ảnh từ dòng 0 đến dòng I đó là hàng thứ nhất của biển
số xe
Trang 40Lưu đồ giải thuật cắt biển số thành 2 hàng:
Hình 2 14 Lưu đồ cắt biển số thành hai hàng