Xây dựng hệ thống nhận diện biển số xe

66 6 0
Tài liệu đã được kiểm tra trùng lặp
Xây dựng hệ thống nhận diện biển số xe

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trong phạm vi đồ án tốt nghiệp này, sinh viên đã xây dựng được thành công hệ thống tự động nhận dạng biển số xe Việt Nam, trong thời gian sắp tới sinh viên xin đề xuất hướng phát triển sau này để cải tiến độ chính xác cũng như hiệu năng của hệ thống như sau: • Thu thập thêm dữ liệu ảnh biển số xe một dòng và xây dựng mô hình nhận dạng biển số 1 dòng • Thử nghiệm một số mô hình nhận diện vật thể khác ngoài YOLO như SSD, Faster R-CNN,… • Ứng dụng mạng nơ-ron vào bài toán nhận dạng ký tự

Trang 1

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

Trang 2

Lời cam kết iii

Danh mục các từ viết tắt xii

Chương 1 Giới thiệu đề tài 1

1.1 Đặt vấn đề 1

1.2 Mục tiêu và phạm vi đề tài 2

1.3 Định hướng giải pháp 3

1.4 Bố cục đồ án 3

Chương 2 Tình hình nghiên cứu hiện nay 5

2.1 Lịch sử phát triển của hệ thống nhận dạng biển số tự động ANPR 5

2.2 Phân tích cấu trúc hệ thống ANPR thông thường 7

2.2.1 Thu thập hình ảnh 8

2.2.2 Phát hiện biển số 8

2.2.3 Phân đoạn ký tự 8

2.2.4 Nhận dạng ký tự 9

2.3 Các nghiên cứu liên quan 9

2.3.1 Nghiên cứu về phát hiện vùng biển số 9

2.3.2 Nghiên cứu về phân đoạn ký tự 12

2.3.3 Nghiên cứu về nhận dạng ký tự 13

Mục lục

Trang 3

3.1 Giới thiệu công nghệ nhận diện vật thể YOLO 16

3.1.1 Phân tích giải pháp YOLO 16

3.1.2 Cách hoạt động của Yolo 17

3.1.3 Kiến trúc mạng 24

3.1.4 Cách đánh giá mô hình nhận diện vật thể 24

3.2 Xử lý ảnh với OpenCV 26

3.2.1 Các loại ảnh 27

3.2.2 Nhị phân ảnh với ngưỡng thích ứng (Adaptive threshold) 28

3.2.3 Đường viền (contour) 29

Chương 4 Phát triển và triển khai ứng dụng 35

4.1 Giải pháp đề xuất cho phát hiện biển số 35

4.1.1 Chuẩn bị dữ liệu huấn luyện 35

4.1.2 Huấn luyện mô hình 37

4.3 Giải pháp đề xuất cho nhận dạng ký tự 47

4.3.1 Chuẩn bị dữ liệu huấn luyện 47

4.3.2 Xây dựng mô hình 48

4.3.3 Đánh giá mô hình 50

Chương 5 Kết luận và hướng phát triển 51

5.1 Đánh giá hiệu năng hệ thống 51

5.2 Hướng phát triển 53

Tài liệu tham khảo 55

Trang 4

Hình 1 Quy trình cơ bản của hệ thống ANPR 7

Hình 2 Mô hình YOLO 17

Hình 3 Biểu diễn công thức IOU 18

Hình 4 Minh họa cho mối liên hệ giữa các tham số 19

Hình 5 Giá trị lưu trong tensor trả về từ mạng CNN 20

Hình 6 Mô tả vector confident scores cho mỗi bounding box 20

Hình 7 Mô tả toàn bộ vector confident scores cho ảnh 21

Hình 8 Mô tả quá trình xét score cho các class 22

Hình 9 Mô tả quá trình xét duyệt bounding box 23

Hình 10 Kết quả sau khi duyệt bounding box 23

Trang 5

Hình 20 Ví dụ thực hiện thuật toán Top-hat 32

Hình 21 Ví dụ thực hiện thuật toán Black-hat 32

Hình 22 Các điểm dữ liệu tương tự thường tồn tại gần nhau 33

Hình 23 Dữ liệu biển số thu thập được 35

Hình 24 Dán nhãn dữ liệu với LabelImg 36

Hình 25 Cấu trúc file xml 36

Hình 26 Bắt đầu huấn luyện mô hình 38

Hình 27 Hình ảnh thư mục ckpt chứa checkpoint 38

Hình 28 Giá trị training loss qua từng bước 39

Hình 29 Giá trị cho mô hình sử dụng checkpoint 1000 40

Hình 30 Giá trị cho mô hình sử dụng checkpoint 1500 40

Hình 31 Giá trị cho mô hình sử dụng checkpoint 2000 40

Hình 32 Giá trị cho mô hình sử dụng checkpoint 2500 41

Hình 33 Ví dụ kết quả trả về dưới dạng json của thư viện darkflow 41

Hình 34 Ví dụ kết quả dự đoán nhận được bằng darkflow 42

Hình 35 Ví dụ cắt vùng biển để phân đoạn ký tự 43

Hình 36 Kết quả của quá trình tiền xử lý ảnh 44

Hình 37 Kết quả lọc các khu vực có khả năng là ký tự 45

Hình 38 Kết quả tìm các ký tự có khả năng tạo thành 1 dòng 46

Hình 39 Bộ dữ liệu font chữ biển số xe Việt Nam 47

Hình 40 Dữ liệu chuẩn bị cho huấn luyện KNN 48

Hình 41 Trích xuất từng ký tự trong bộ ảnh dữ liệu 49

Hình 42 Ảnh nhị phân của ký tự 49

Trang 6

Hình 43 Bộ dữ liệu kiểm thử mô hình dự đoán ký tự 50Hình 44 Vị trí đặt camera xa 51Hình 45 Vị trí đặt camera gần 52

Trang 7

Bảng 1 So sánh các phương pháp phát hiện vùng biển số 9

Bảng 2 So sánh các phương pháp phân đoạn ký tự 13

Bảng 3 So sánh các phương pháp nhận dạng ký tự 14

Bảng 4 Kết quả kiểm thử hệ thống 52

Danh mục bảng

Trang 8

ANPR Automatic Number Plate Recognition

Thuật toán K láng giềng gần nhất

PSDB Police Scientific Development Branch

Chi nhánh phát triển khoa học cảnh sát Vương quốc Anh

ASCII American Standard Code for Information Interchange

Chuẩn mã trao đổi thông tin Hoa Kỳ

NADC The Police National ANPR Data Centre

Trung tâm dữ liệu ANPR cảnh sát quốc gia

Danh mục các từ viết tắt

Trang 9

NMS Non-Maximum Suppresstion

Mạng nơ-ron tích chập

Trang 10

1.1 Đặt vấn đề

Hiện nay, cùng với sự phát triển về khoa học kỹ thuật và công nghệ thông tin thì tốc độ đô thị hoá ngày càng tăng, kéo theo đó là nhu cầu đi lại của người dân ngày một tăng cao Do đó dẫn đến số lượng phương tiện giao thông tham gia trên đường ngày càng lớn Với số lượng lớn phương tiện như vậy thì việc quản lý các phương tiện gặp phải rất nhiều khó khăn Công tác quản lý các phương tiện giao thông rất phức tạp, dễ nhầm lẫn, tốn nhiều thời gian và nhân công Đặc biệt với lưu lượng giao thông dày đặc thì việc ùn tắc ở những điểm ra vào bãi đỗ xe là chuyện thường xuyên xảy ra

Để giải quyết vấn đề ở trên thì giải pháp đưa ra là áp dụng các hệ thống hoạt động tự động Mỗi một phương tiện đều có một biển số của riêng nó Vì vậy sinh viên hướng đến mục tiêu xây dụng hệ thống nhận dạng biển số xe tự động nhằm giúp các bãi đỗ xe giảm thiểu thời gian và nhân công trong công tác quản lý các phương tiện giao thông

Nhận dạng biển số tự động (Automatic Number Plate Recognition) là một quá trình trong đó phương tiện được xác định hoặc nhận dạng bằng biển số xe ANPR sử dụng các kỹ thuật xử lý hình ảnh để trích xuất biển số xe từ hình ảnh kỹ thuật số ANPR có thể được sử dụng để lưu trữ hình ảnh được chụp bởi camera cũng như văn bản trích xuất từ biển số xe, và thêm một số cấu hình để lưu trữ hình ảnh của người điều khiển phương tiện

Các hệ thống ANPR thường bao gồm một camera, bộ xử lý và ứng dụng có khả năng thực hiện nhận dạng ký tự quang học (OCR), để biến đổi hình ảnh của biển số xe thành các ký tự chữ và số; Cung cấp giao diện người dùng để hiển thị hình ảnh được chụp, kết quả về chuyển đổi OCR

Việc triển khai thành công hệ thống nhận dạng biển số tự động mang lại kết quả nhanh hơn và dễ dàng hơn trong nhận dạng xe Điều này dẫn đến việc tìm kiếm và lấy các thông tin liên quan đến phương tiện nhanh hơn và chính xác hơn

Chương 1 Giới thiệu đề tài

Trang 11

1.2 Mục tiêu và phạm vi đề tài

Nhận dạng biển số tự động là một phương pháp giám sát được phát triển lần đầu tiên vào năm 1976 tại Chi nhánh phát triển khoa học cảnh sát Vương quốc Anh (Police Scientific Development Branch) với mục đích chống tội phạm

Một hệ thống nhận dạng biển số tự động thường được chia làm 3 mô-đun chính như sau: • Phát hiện vùng biển số

• Phân đoạn ký tự • Nhận dạng ký tự

Trong mô-đun phát hiện vùng biển số, có nhiều kỹ thuật được đề xuất như: phương pháp hình thái học và biến đổi mũ [1], xác định cạnh, tương quan và biến đổi hình thái học [2], cường độ phương sai cục bộ & mật độ cạnh dọc và mô hình mật độ cạnh [3], xác định cạnh dọc sobel và phân tích mật độ cạnh [4], thông tin màu sắc và hình dạng [5], phương pháp biến đổi Hough và thuật toán xác định viền [6], xác định cạnh dọc và ngang [7], thuật toán adaboost [8]…

Trong mô-đun phân đoạn ký tự, có một số các kỹ thuật như: phát hiện cạnh, biến đổi mô hình màu, phân tích thành phần [4], một khung hình thông minh phác thảo đặc tính của biển số xe bằng nhiều cách chiếu sáng khác nhau [9], thuật toán đa cụm [10], ngưỡng và thành phần kết nối [11], biến đổi hình thái học và thành phần kết nối [12]…

Trong mô-đun nhận dạng ký tự có một số kỹ thuật đề xuất như: cây quyết định [13], xử lý ảnh màu [5], máy vectơ hỗ trợ [14], mạng nơ-ron đa lớp và đa cụm [10], khớp mẫu [12], các phần mềm OCR [8]…

Mặc dù, có nhiều phương pháp được đề xuất cho hệ thống ANPR Nhưng không có phương pháp duy nhất nào có thể cung cấp hiệu suất thỏa đáng cho tất cả các trường hợp phức tạp khác nhau, chẳng hạn như: sự không chắc chắn của các cạnh, các dạng biển khác nhau, biển nhỏ, ánh sáng mờ, hình ảnh mờ, hình ảnh được chiếu sáng thấp hoặc cao, các loại biển với màu sắc, phông chữ, cú pháp, kích thước, khoảng cách, góc khác nhau; thời tiết và môi trường; biển với nhiều hàng Mặt khác, mỗi nhà nghiên cứu đã sử dụng nhiều nguồn hình ảnh, môi trường với chất lượng hình ảnh, thông số của hình ảnh không giống nhau và hình ảnh xe không được thu thập tại Việt Nam Do đó, hầu hết các phương pháp trước đây không

Trang 12

thể áp dụng cho tất cả các quốc gia, tất cả các môi trường, tất cả các loại biển số xe nói chung và biển Việt Nam nói riêng

Ngày nay, với sự tiến bộ trong lĩnh vực Học máy (Machine learning) nói chung và học sâu (Deep learning) nói riêng có rất nhiều phương pháp đã chứng minh được tính hiệu quả trong việc giải quyết những bài toán phức tạp mà các cách tiếp cận truyền thống chưa thể giải quyết triệt để được Do đó sinh viên xin đề xuất áp dụng các phương pháp trong lĩnh vực máy học và học sâu vào trong bài toán xây dựng hệ thống tự động nhận dạng biển số xe

• Ở mô-đun phân đoạn ký tự: kết hợp các phương pháp xử lý ảnh được cung cấp bởi thu viện mã nguồn mở OpenCV như biến đổi hình thái học trên ảnh màu xám để tăng độ tương phản, sử dụng kỹ thuật làm mờ ảnh để loại bỏ các vật thể nhỏ (nhiễu), xác định viền, xoay ảnh, thay đổi kích thước ảnh,… để phân đoạn biển ra thành dòng rồi từ đó phân đoạn ra từng ký tự riêng lẻ

• Ở mô-đun nhận diện ký tự: sử dụng thuật toán machine learning K nearest neighbor (KNN) để xây dựng mô hình dự đoán ký tự và chữ số trong biển số xe Việt Nam

1.4 Bố cục đồ án

Phần còn lại của báo cáo đồ án tốt nghiệp này được tổ chức như sau

Chương 2: Tình hình nghiên cứu hiện nay - Chương này nêu ra lịch sử phát triển của hệ

thống tự động nhận dạng biển số và cấu trúc xây dựng một hệ thống thường có Sau đó nêu ra các nghiên cứu liên quan đến hệ thống tự động nhận dạng biển số Nhiều nỗ lực đã được dành cho ANPR trong ba mươi năm qua và có nhiều nghiên cứu về lĩnh vực này Các phần 2.3.1-2.3.3 cung cấp tổng quan ngắn gọn về các phương pháp chính được sử dụng trong ba bước ANPR chính: phát hiện vùng biển số, phân đoạn ký tự và nhận dạng ký tự Sinh viên

Trang 13

để so sánh Thay vào đó, việc so sánh xem xét ưu điểm và nhược điểm với từng phương pháp được tiến hành

Chương 3: Cơ sở lý thuyết - Ở chương này sinh viên đưa ra những lý thuyết về công nghệ

nhận diện vật thể You Only Look Once (YOLO) để phục vụ cho bài toán phát hiện biển số Tiếp theo là các khái niệm cơ bản về xử lý ảnh với thư viện mã nguồn mở OpenCV: tìm cạnh, làm mờ ảnh, biến đổi hình thái học,… thực hiện trong bước phân đoạn ký tự Cuối cùng là giới thiệu thuật toán K – Nearest Neighbor sẽ được sử dụng trong mô-đun nhận dạng ký tự

Chương 4: Phát triển và triển khai hệ thống - Chương này trình bày các bước cụ thể để xây

dựng lên hệ thống tự động nhận dạng biển số Từ xây dựng mô hình phát hiện biển số với kiến trúc YOLO, đến các bước xử lý ảnh bằng thư viện mã nguồn mở OpenCV để phân đoạn ký tự Cuối cùng là xây dựng mô hình dự đoán ký tự với thuật toán K-NN

Chương 5: Kết luận và hướng phát triển - Chương kết của báo cáo đồ án, sinh viên đánh giá

hiệu năng của hệ thống và xem xét các hướng phát triển để cải thiện năng suất của hệ thống tự động nhận dạng biển số xe

Trang 14

2.1 Lịch sử phát triển của hệ thống nhận dạng biển số tự động ANPR

ANPR được phát minh vào năm 1976 tại Anh, nơi được gọi là Chi nhánh phát triển khoa học cảnh sát (PSDB) và các hệ thống ban đầu được phát triển để sử dụng từ năm 1979 Các hệ thống thử nghiệm ban đầu đã được triển khai ở Anh trên tuyến đường A1 và tại đường hầm Dartford trên đường cao tốc M25 và vụ bắt giữ đầu tiên được ghi nhận nhờ vào ANPR phát hiện một chiếc xe bị đánh cắp là vào năm 1981 Kể từ khi thành lập, công nghệ ANPR đã phát triển và thích nghi với thời đại, tìm ra nhiều hướng đi mới Dưới đây là một vài cột mốc đáng chú ý trong suốt hành trình phát triển của ANPR cho đến nay:

1993 - ANPR được triển khai lần đầu tiên như một phần của mạng lưới camera "Vành đai thép" quanh thành phố Luân Đôn Dự án này là hoạt động lớn nhất vào thời điểm đó và được cảnh sát thủ đô Luân Đôn triển khai trong nỗ lực chấm dứt chuỗi các vụ đánh bom khủng bố tại khu tài chính, bởi IRA

1997 - Trung tâm dữ liệu ANPR cảnh sát quốc gia (NADC) được thành lập Trước khi tạo ra NADC, dữ liệu được thu thập từ các hệ thống ANPR đã được lưu trữ cục bộ trong lực lượng cảnh sát vận hành camera, nhưng trung tâm dữ liệu ANPR quốc gia đã cho phép phân tích toàn bộ dữ liệu của khắp các cục cảnh sát, bằng cách tập trung tất cả dữ liệu của cảnh sát ANPR từ khắp nước Anh

2003 - Chương trình Phí tắc nghẽn được giới thiệu nhằm mục đích giảm lưu lượng ở trung tâm Luân Đôn Vùng thu phí, bao gồm 20km2 của thủ đô, được vận hành bởi cục giao thông vận tải Luân Đôn và gần 700 camera ANPR được lắp đặt trên mọi con đường trong và ngoài khu vực Điều này đánh dấu việc sử dụng ANPR quy mô lớn đầu tiên cho mục đích dân sự 2005 - ANPR International Limited được thành lập ngày 18 tháng 5 năm 2005 Xuất phát từ niềm tin rằng công nghệ ANPR có thể làm được nhiều hơn so với trước đây Sự thành lập

Chương 2 Tình hình nghiên cứu hiện nay

Trang 15

lý dữ liệu ANPR từ nhiều nguồn khác nhau và xử lý dữ liệu thông qua một loạt các ứng dụng mô-đun

2006 - ANPR International đã triển khai hệ thống camera tĩnh đầu tiên cho quản lý đỗ xe - bayGAURDIAN, đây là mô-đun đầu tiên được xây dựng cho văn phòng hỗ trợ eyeTRAFFIC Hệ thống cho phép người điều khiển bãi đỗ xe giám sát các phương tiện ra vào bãi đỗ xe, tính toán thời gian phương tiện sử dụng tại chỗ và tự động xác định những phương tiện không được ủy quyền hoặc ở lại quá lâu

2007 - mô-đun bayGUARDIAN được mở rộng với sự tích hợp vào thiết bị Charge Car Hệ thống tích hợp hoàn toàn với một loạt các máy thu phí đậu xe, để cho phép các hệ thống văn phòng hỗ trợ tự động phát hiện một chiếc xe chưa trả tiền đỗ xe hoặc trả quá ít

2009 - ANPR International phát triển sản phẩm ANPR di động đầu tiên của mình - streetSweEPER, được thiết kế dành cho nhiều ứng dụng bao gồm khảo sát giao thông, giám sát di động cho Cơ quan cấp phép lái xe Vào ngày đầu tiên trên đường ở trung tâm Luân Đôn, streetSweEPER phát hiện hơn 27 phương tiện chưa đóng thuế chỉ trong vài giờ 2011 - hệ thống roadGUARDIAN được phát triển và triển khai để chống lại vấn đề xe cộ đi cắt qua các tuyến đường bị cấm để tránh tắc nghẽn Hệ thống được triển khai cùng với Hội đồng quận và các vụ phát hiện được xử lý bởi Cảnh sát, đưa ra thông báo phạt cho bất kỳ người phạm tội nào

2012 - Hệ thống ghi nhận thiệt hại phương tiện đầu tiên được phát triển để ghi lại tình trạng của phương tiện đến khu vực đỗ xe tại sân bay, nhằm ngăn chặn các yêu cầu bảo hiểm gian lận về thiệt hại xe cộ đối với nhân viên sân bay Hệ thống liên kết 360 độ hình ảnh của chiếc xe đến số đăng ký của nó, cung cấp một phương pháp nhanh chóng và dễ dàng để phục hồi và phân tích các hình ảnh trong trường hợp có yêu cầu từ người lái xe

2013 - ANPR International giành Giải thưởng Công nghệ cho công việc khảo sát giao thông di động được thực hiện cho Hội đồng Hạt Gloucestershire Cuộc khảo sát sử dụng một đội xe được trang bị StreetSweEPER để thu thập dữ liệu về hồ sơ giao thông và thói quen đỗ xe quanh một số thị trấn và thành phố để giúp Hội đồng hiểu rõ hơn về lưu lượng giao thông và sử dụng phương tiện

2014 - speedSENTINEL được phát triển để giải quyết các vấn đề về tốc độ trong các nút giao thông công cộng Sentinel được thiết kế để trở thành một hệ thống camera tốc độ triển

Trang 16

khai ngẫu nhiên để đảm bảo tuân thủ các giới hạn tốc độ giúp cho người đi bộ có thể đi bộ an toàn tại các điểm giao thông bộn rộn

2016 - Hệ thống ghi nhận thiệt hại phương tiện được mở rộng để chụp làn đường kép, cho phép chụp nhiều làn đường và tối đa 14 camera được tích hợp với dữ liệu ANPR để tăng trải nghiệm của khách hàng và tăng sự thuận tiện

2.2 Phân tích cấu trúc hệ thống ANPR thông thường

Hệ thống ANPR thường bao gồm hai thành phần: máy ảnh hay camera được sử dụng để chụp ảnh biển số xe, và phần mềm trích xuất biển số từ ảnh chụp được bằng cách sử dụng một công cụ nhận dạng ký tự cho phép các pixel được dịch thành các ký tự có thể đọc được Một hệ thống nhận dạng biển số xe thường hoạt động theo bốn phần chính là thu thập hình ảnh, phát hiện biển số xe, phân đoạn ký tự và cuối cùng là nhận dạng ký tự

Hình 1 bên dưới là quy trình cơ bản của một hệ thống ANPR

Hình 1 Quy trình cơ bản của hệ thống ANPR

Bản mô tả cơ bản chức năng của các quá trình trong ANPR là:

• Bước 1: Camera chụp ảnh xe chứa biển số (Thu thập hình ảnh)

Ảnh từ

cameraTiền xử lýPhát hiện biển số

Phân đoạn ký tựNhận

dạng ký tựCác ký tự

đầu ra

Trang 17

• Bước 2: Cô lập biển số, điều chỉnh độ sáng và độ tương phản và phân đoạn nó thành các ký tự (Phát hiện biển số và phân đoạn ký tự)

• Bước 3: Mẫu của mỗi ký tự được phân tích để chuyển đổi hình ảnh thành văn bản (Nhận dạng ký tự)

2.2.1 Thu thập hình ảnh

Bước đầu tiên là công đoạn thu nhận hình ảnh Hình ảnh của xe sẽ được chụp bằng camera Yêu cầu cơ bản là hình ảnh của xe phải được chụp theo cách sao cho hình ảnh đầu vào phải có chứa hình ảnh của biển số Hình ảnh thường được chụp trong mô hình màu RGB (Đỏ, Xanh lục và Xanh lam) Hình ảnh được chụp bị ảnh hưởng bởi nhiều yếu tố như: hệ thống quang học, méo hình, nhiễu hệ thống, thiếu phơi sáng hoặc chuyển động quá mức của máy ảnh hoặc phương tiện, do đó làm giảm chất lượng hình ảnh biển xe do đó ảnh hưởng xấu đến kết quả xử lý hình ảnh tổng thể Như một cơ chế để chỉnh sửa, công đoạn tiền xử lý ảnh được đưa vào để xử lý bất kỳ lỗi nào có thể xảy ra trong bước thu thập hình ảnh Tiền xử lý ảnh chủ yếu liên quan đến việc chuyển đổi hình ảnh RGB thành màu xám, loại bỏ nhiễu và tăng cường đường viền cho độ sáng Việc tiền xử lý ảnh thường được thực hiện thông qua lọc ảnh

2.2.2 Phát hiện biển số

Phát hiện biển số tìm kiếm hình ảnh đầu vào, xác định hình ảnh nào có chứa biển số Biển số có thể được tìm thấy ở bất cứ đâu trong một hình ảnh, phi thực tế khi kiểm tra tất cả các pixel của ảnh để xác định vị trí biển số Vì vậy, chỉ tập trung vào những pixel có biển số

2.2.3 Phân đoạn ký tự

Phân đoạn ký tự có thể được định nghĩa là một kỹ thuật, trong đó phân vùng hình ảnh chứa dòng hoặc cụm từ thành các ký tự riêng lẻ Đây là quá trình tìm cách phân tách một hình ảnh chứa chuỗi ký tự thành các hình ảnh phụ chứa các biểu tượng riêng lẻ

Phân đoạn ký tự là quá trình mà thông qua đó thành phần văn bản trong ảnh được cô lập khỏi nền Để nhận dạng văn bản diễn ra chính xác, dòng văn bản được phân đoạn đầu tiên, sau đó từ dòng được phân đoạn, ta phân đoạn các từ và sau đó là phân đoạn ký tự

Trang 18

2.2.4 Nhận dạng ký tự

Nhận dạng ký tự là quá trình phát hiện và nhận dạng các ký tự từ hình ảnh đầu vào và chuyển đổi nó thành văn bản ASCII có ý nghĩa (Mã tiêu chuẩn Mỹ cho trao đổi thông tin) Nhận dạng ký tự là quá trình phân loại ký tự đầu vào theo lớp ký tự được xác định trước

2.3 Các nghiên cứu liên quan

2.3.1 Nghiên cứu về phát hiện vùng biển số

Bước phát hiện biển số ảnh hưởng rất lớn đến độ chính xác của các bước tiếp theo Đầu vào là một hình ảnh không chứa, chứa một hoặc nhiều biển số xe và đầu ra chỉ là một phần của hình ảnh chỉ chứa biển số xe Rất nhiều thuật toán đã được đề xuất trong những năm qua để giải quyết vấn đề đầy thách thức này Độ chính xác đã được cải thiện trong những năm gần đây, nhưng việc xác định biển số xe trong hình ảnh được chụp từ một vị trí tùy ý với nhiều yếu tố ảnh hưởng đến quá trình như chiếu sáng vẫn còn là một thách thức Cách tiếp cận vét cạn là xử lý mọi pixel trong ảnh khiến mất nhiều thời gian xử lý Thay vào đó, cách tiếp cận phổ biến là sử dụng các đặc trưng nổi bật trong biển số xe và chỉ xử lý các pixel có các đặc trưng này giúp giảm đáng kể thời gian xử lý Năm phương pháp chính sẽ được trình bày ở đây là: dựa trên cạnh, dựa trên màu sắc, dựa trên kết cấu, dựa trên ký tự và kết hợp hai hoặc nhiều phương pháp Tóm tắt về ưu điểm và nhược điểm của từng phương pháp được nêu trong Bảng 1

Bảng 1 So sánh các phương pháp phát hiện vùng biển số

Phương pháp tiếp cận Ưu điểm Nhược điểm

khi hình ảnh có nhiều cạnh và gặp sự cố khi hình ảnh bị mờ

hình ảnh nghiêng hoặc biến dạng

Kết quả hạn chế khi sử dụng một mình

Trang 19

Dựa trên cấu trúc Không phụ thuộc vào việc biển có hình dạng thông thường hay không

Tính toán phức tạp khi hình ảnh đầu vào có nhiều cạnh hoặc độ chiếu sáng khác nhau

xoay ảnh

Gặp sự cố khi hình ảnh chứa văn bản khác

a) Phương pháp tiếp cận dựa trên cạnh

Phương pháp tiếp cận dựa trên cạnh phát hiện biển số xe bằng cách khai thác thực tế là biển số xe có hình chữ nhật với tỷ lệ khung hình đã biết Bằng cách sử dụng chuyển đổi màu giữa biển số và nền, ranh giới của biển số xe có thể được nhìn thấy Các khu vực có mật độ cạnh cao được xem là biển số xe tiềm năng và cả phát hiện cạnh ngang và dọc có thể được thực hiện để đề xuất các khu vực ứng cử viên Nhiều người chỉ sử dụng phát hiện cạnh dọc vì phát hiện cạnh ngang đã cho thấy lỗi cao hơn, vì các cạnh ngang của biển số xe có thể dễ dàng bị nhầm lẫn với các cạnh ngang của đầu xe Hơn nữa, chỉ các hình chữ nhật có cùng tỷ lệ như biển số xe được xem xét để loại trừ các ứng viên và cải thiện kết quả chung Tỷ lệ phát hiện được báo cáo là 99,7% Biến đổi Hough cũng có thể được sử dụng để phát hiện biển số xe trong ảnh bằng cách phát hiện các đường thẳng Ưu điểm của biến đổi Hough là nó có thể phát hiện các đường thẳng với độ nghiêng lên tới 30° Tuy nhiên, đó là một quá trình tiêu tốn thời gian và bộ nhớ

Nói chung, các phương pháp dựa trên cạnh là cách đơn giản nhất và nhanh nhất để thực hiện phát hiện biển số xe Tuy nhiên, nó gặp vấn đề khi hình ảnh đầu vào phức tạp Nó có thể trả lại quá nhiều ứng cử viên nếu hình ảnh đầu vào chứa quá nhiều cạnh hoặc gặp vấn đề khi tìm biển số xe nếu hình ảnh bị mờ

b) Phương pháp tiếp cận dựa trên màu sắc

Phương pháp tiếp cận dựa trên màu sắc sử dụng màu sắc để phát hiện biển số xe Biển số xe thường có màu khác so với nền và điều này có thể được sử dụng để tìm biển số Sự kết hợp

Trang 20

màu sắc của biển số và các ký tự của nó hiếm khi được tìm thấy ở những nơi khác ngoài khu vực biển số Một thuật toán di truyền được sử dụng để tìm hiểu cách nhận biết các kết hợp màu này Bằng cách đào tạo trong các điều kiện chiếu sáng khác nhau, nó học được những màu sắc cần tìm Với độ sáng trung bình của từng khu vực, nó có thể phân biệt khu vực biển số xe với các khu vực khác Các tác giả báo cáo độ chính xác 92,8% Thuật toán dịch chuyển trung bình được sử dụng để phân vùng dựa trên các màu khác nhau Và để tìm biển số xe trong khu vực ứng cử viên sau khi áp dụng thuật toán đó, phương pháp dựa trên cạnh được sử dụng Tỷ lệ phát hiện biển số xe là 97,6% Thời gian thực hiện không được đề cập Các phương pháp dựa trên màu thường được sử dụng kết hợp với các phương pháp khác, nhưng có thể được sử dụng một mình Chúng không bị ảnh hưởng bởi biển số nghiêng hoặc biến dạng Tuy nhiên, các phương pháp dựa trên màu sắc có thể có kết quả hạn chế khi được sử dụng một mình vì chúng chỉ xem xét điều kiện chiếu sáng

c) Phương pháp tiếp cận dựa trên cấu trúc

Phương pháp tiếp cận dựa trên kết cấu sử dụng phân bố mật độ pixel độc đáo bên trong biển số xe để phát hiện biển trong hình ảnh Các ký tự trên biển số tương phản với phần còn lại của biển và có thể được phát hiện bằng các phương pháp dựa trên kết cấu khác nhau Một phương pháp sử dụng cửa sổ trượt đồng tâm được đề xuất Biển số xe được xem là một sự bất thường trong kết cấu của hình ảnh Những thay đổi đột ngột trong kết cấu được sử dụng để phát hiện biển số xe tiềm năng Một phương pháp kết hợp các cửa sổ trượt đồng tâm và biểu đồ, tăng độ chính xác được đề xuất

Bởi vì cách tiếp cận dựa trên kết cấu không phụ thuộc vào biển số xe có hình dạng và hoạt động ngay cả khi ranh giới của biển số bị biến dạng, chúng có thể phát hiện nhiều hơn các đặc điểm màu sắc và cạnh Nhược điểm với các phương pháp dựa trên kết cấu là chúng phức tạp về mặt tính toán Nếu hình ảnh đầu vào có nhiều cạnh hoặc độ chiếu sáng khác nhau, thời gian xử lý có thể cao

d) Phương pháp tiếp cận dựa trên ký tự

Phương pháp tiếp cận dựa trên ký tự xử lý biển số xe dưới dạng chuỗi ký tự Các phương pháp này kiểm tra hình ảnh cho sự hiện diện của các ký tự không Các khu vực nơi các ký tự được tìm thấy được đề xuất là các khu vực tiềm năng có chứa biển số Một mạng nơ-ron được sử dụng để phân loại các vùng trong hình ảnh dựa trên các vùng giống như ký tự và

Trang 21

biển số được phát hiện nếu tìm thấy sự kết hợp tuyến tính của các vùng giống như ký tự Có người đưa phương pháp này tiến thêm một bước bằng cách phát hiện tất cả các ký tự trong ảnh bằng cách sử dụng mạng nơ-ron tích chập đầu ra 37 chiều (CNN) và sau đó sử dụng CNN mới để loại bỏ các kết quả false positive Quá trình này khá chậm, tốn khoảng 5s cho mỗi hình ảnh, nhưng loại bỏ được bước phân đoạn ký tự

Phương pháp tiếp cận dựa trên ký tự thường có tỷ lệ bỏ sót thấp và dễ dàng xử lý đối với các hình ảnh bị xoay Tuy nhiên, các phương pháp này có thể gây ra lỗi cao khi tìm thấy văn bản khác trong ảnh Các phương pháp cũng có xu hướng tốn thời gian

e) Phương pháp tiếp cận dựa trên 2 hoặc nhiều phương pháp

Khi giá cả phải chăng, kết hợp nhiều tính năng là một cách hiệu quả để phát hiện biển số xe mạng nơ-ron có thể phát hiện các biển số xe bằng cách huấn luyện để nhận biết vùng có biển số và vùng không có biển số Có thể sử dụng hai mạng nơ-ron để thực hiện phát hiện biển số Mạng nơ-ron đầu tiên phân tích màu sắc của biển số xe trong khi mạng nơ-ron thứ hai phân tích kết cấu Đầu ra của hai mạng nơ-ron sau đó được kết hợp để tìm các khu vực ứng cử viên Tỷ lệ phát hiện được trong báo cáo của họ ở mức 100% trên bộ dữ liệu chứa 1000 chuỗi video từ các cổng thu phí

Các cách tiếp cận kết hợp hai hoặc nhiều tính năng thường đáng tin cậy và hiệu quả hơn các cách tiếp cận sử dụng một tính năng duy nhất Tuy nhiên, các phương pháp phức tạp hơn về mặt tính toán so với các phương pháp đơn tính năng

2.3.2 Nghiên cứu về phân đoạn ký tự

Trước khi nhận dạng ký tự, thì ta cần thiết phải phân đoạn các ký tự Thông thường tiền xử lý được thực hiện trước bước này để tránh các vấn đề gây ra bởi việc hình ảnh bị nghiêng hoặc thay đổi độ sáng trên hình ảnh Về cơ bản, có 2 loại thuật toán phù hợp chính: dựa trên quy chiếu và dựa trên kết nối của pixel Cả hai đều yêu cầu hình ảnh đầu vào phải là hình ảnh nhị phân Tóm tắt về ưu điểm và nhược điểm của từng phương pháp được nêu trong Bảng 2

Trang 22

Bảng 2 So sánh các phương pháp phân đoạn ký tự

Phương pháp tiếp cận Ưu điểm Nhược điểm

xoay ảnh

Yêu cầu kiến thức trước, nhạy cảm với thay đổi phông chữ và nhiễu ảnh hưởng đến kết quả

Dựa trên sự kết nối của pixel Đơn giản và dễ dàng để xoay ảnh

hỏng và liền với nhau

a) Phương pháp tiếp cận dựa trên quy chiếu

Các cách tiếp cận dựa trên phép quy chiếu dựa trên việc các ký tự và nền của biển số xe có các màu khác nhau nên sẽ cho các giá trị ngược nhau sau khi nhị phân ảnh Hình ảnh nhị phân được chiếu theo chiều dọc để tìm vị trí bắt đầu và kết thúc của mỗi ký tự Sau đó, hình ảnh được chiếu theo chiều ngang để phân đoạn từng ký tự Điều này dẫn đến tỷ lệ phân đoạn là 97,5%

Phương pháp chiếu dọc và ngang rất đơn giản và thường được sử dụng Nó hoạt động độc lập với vị trí ký tự và hoạt động cả khi biển số xe hơi bị nghiêng Tuy nhiên, nó đòi hỏi kiến thức trước về các ký tự chữ và số khiến nó nhạy cảm với các thay đổi phông chữ Nhiễu cũng ảnh hưởng đến kết quả

b) Phương pháp tiếp cận dựa trên kết nối của pixel

Phương pháp tiếp cận dựa trên sự kết nối pixel thực hiện phân đoạn bằng cách gắn nhãn tất cả các pixel được kết nối trong hình ảnh nhị phân Các pixel có các thuộc tính giống như các ký tự được coi là một phần của ký tự

Phương pháp này là đơn giản và dễ dàng để xoay ảnh Tuy nhiên, nó không phân đoạn chính xác khi các ký tự xuất hiện bị hỏng hoặc liền với nhau

2.3.3 Nghiên cứu về nhận dạng ký tự

Bước cuối cùng là nhận ra từng ký tự đã được phân đoạn còn được gọi là nhận dạng ký tự

Trang 23

mỗi ký tự chữ và số Tổng cộng có 36 lớp có thể khi phân tích hầu hết các biển số xe, 26 chữ cái và 10 chữ số Các phương thức hiện có có thể được chia thành hai loại: phương pháp dựa trên khớp mẫu và phương pháp học tập Tóm tắt về ưu điểm và nhược điểm của từng phương pháp được nêu trong Bảng 3

Bảng 3 So sánh các phương pháp nhận dạng ký tự

Phương pháp tiếp cận Ưu điểm Nhược điểm

chữ và không thực hiện được khi ký tự bị nghiêng và mờ

a) Phương pháp tiếp cận dựa trên khớp mẫu

Cách tiếp cận khớp mẫu rất đơn giản và hoạt động bằng cách so sánh sự giống nhau của ký tự và mẫu Mẫu tương tự nhất với ký tự được chọn Phương pháp mẫu này được sử dụng trên ảnh nhị phân Một số biện pháp tương tự đã được đề xuất bao gồm khoảng cách Mahalanobis, giá trị Jaccard và khoảng cách Hamming Tỷ lệ nhận dạng là khoảng 97,2% Phương pháp khớp mẫu đơn giản, nhưng hạn chế Nó yêu cầu một mẫu cho mỗi phông chữ, với kích thước cố định và không hoạt động trên các ký tự nghiêng hoặc bị hỏng Nó dễ bị nhiễu và chậm vừa phải vì nó xử lý nhiều pixel không quan trọng đối với tác vụ phân loại và so sánh nó với mọi mẫu

b) Phương pháp tiếp cận dựa trên “học tập”

Phương pháp tiếp cận dựa trên “học tập” sử dụng các kỹ thuật học máy để phân biệt các ký tự dựa trên một hoặc nhiều đặc trưng Có thể sử dụng mạng nơ-ron để học cách phân biệt dựa trên mật độ hình ảnh Một số kiến trúc CNN cũng hoạt động tốt với phương pháp này CNN sử dụng nhiều đặc trưng và chúng không bắt buộc phải xác định trước các đặc trưng Với một mô hình CNN 9 lớp cho ta độ chính xác khi dự đoán là 97,6%

Trang 24

Phương pháp này mạnh mẽ đối với mọi biến dạng và phần nhận dạng nhanh do có ít đặc trưng hơn pixel Tuy nhiên, trích xuất đặc trưng cần có thời gian và nếu các đặc trưng không đúng được chọn, các sự cố có thể xảy ra Cách tiếp cận dựa trên học tập phù hợp với đồ án này bằng cách sử dụng thuật toán KNN để giải quyết vấn đề nhận dạng ký tự

Trang 25

3.1 Giới thiệu công nghệ nhận diện vật thể YOLO

Ta có thể quy bài toán phát hiện biển số về bài toán phát hiện vật thể, với vật thể ở đây là biển số xe Việt Nam Có rất nhiều phương pháp được đề xuất để giải quyết bài toán nhận diện vật thể Sau đâu em xin giới thiệu và áp dụng phương pháp sử dụng kiến trúc YOLO (You Only Look Once) để nhận diện vật thể

Khi bạn muốn phát hiện ra vật thể trong một bức ảnh, sau đó đánh nhãn cho vật thể đó, các phương pháp lúc bấy giờ quá chậm để phục vụ trong thời gian thực, hoặc đòi hỏi thiết bị mạnh mẽ, đắt đỏ cho đến khi YOLO ra đời YOLO có khả năng gán nhãn cho toàn bộ vật trong khung hình với chỉ duy nhất một lần thực thi

YOLO là một trong những thuật toán nhận diện vật thể nhanh nhất thời điểm hiện tại Mặc dù không phải là phương pháp chính có độ xác cao nhất nhưng Yolo vẫn là được ứng dụng rất nhiều trong những dự án thực tế khi mà độ chính xác không phải là ưu tiên hàng đầu Những lợi thế của YOLO :

• "Hiểu" được khái quát về đại diện của mỗi đối tượng Qua đó có thể phát hiện và phân loại chính xác vật thể trong đời thực và các tác phẩm hội hoạ

• Gọn nhẹ • Mã nguồn mở • Nhanh

3.1.1 Phân tích giải pháp YOLO

YOLO chỉ dùng một mạng nơ-ron tích chập và áp dụng lên ảnh đầu vào một lần duy nhất để học các đặc trưng trên ảnh Nó giống như là ta nhìn toàn thể bức ảnh và bắt đầu dò tìm các đối tượng trong nó Do đó thế nên thời gian thực thi thuật toán của YOLO là rất nhanh (171 khung hình trên một giây với cấu trúc mạng Darknet-19) và có thể áp dụng cho các bài toán nhận dạng đối tượng trên các ứng dụng theo thời gian thực và video

Chương 3 Cơ sở lý thuyết

Trang 26

YOLO mô hình bài toán nhận dạng đối tượng thành bài toán hồi quy trong miền không gian các rời rạc của các bounding box Thuật toán chia nhỏ ảnh đầu vào thành lưới gồm S x S ô Nếu tâm của đối tượng cần xác định rơi vào một ô nào đó thì ô đó sẽ chịu trách nhiệm xác định đối tượng đó và bounding box của nó Thuật toán sử dụng một mạng nơ-ron đơn với đặc trưng có được từ các feature map của các lớp tích chập để dự đoán B bounding box ở mỗi ô và xác suất loại đối tượng nào đang được chứa bên trong Cuối cùng, ta sẽ có rất nhiều bounding box được thuật toán đưa ra với kích thước khác nhau Sử dụng thuật toán Non-Maximum Suppresstion (NMS) ta có thể loại bỏ được hầu hết các bounding box là miền bao của cùng một đối tượng, có chỉ số score thấp và giữ lại các bounding box có score cao

Hình 2 Mô hình YOLO

3.1.2 Cách hoạt động của Yolo

Tại mỗi ô sẽ có trách nhiệm xác định B bounding box có kích thước và tỉ lệ khác nhau, để bắt lấy các đối tượng cần xác định trong hình Sau khi thuật toán được thực thi, mỗi bounding box sẽ được gán những confident rate Chỉ số này phản ánh cho ta biết box có đang chứa một đối tượng nào hay không, với xác suất cụ thể Thông thường, trong quá trình huấn luyện, confident rate thường được thiết lập với công thức sau:

𝐶𝑜𝑛𝑓𝑖𝑑𝑒𝑛𝑡_𝑟𝑎𝑡𝑒 = Pr(𝑜𝑏𝑗𝑒𝑐𝑡) × 𝐼𝑂𝑈89:;<9=<>

Với 𝑃𝑟(𝑜𝑏𝑗𝑒𝑐𝑡) có giá trị trong khoảng [0, 1] thể hiện xác suất có một đối tượng được chứa bên trong bounding box đó 𝐼𝑂𝑈89:;<9=<> là giá trị Intersection Over Union (khái niệm của IoU được giới thiệu ở mục 3.1.4.d), là tỉ lệ trùng khớp của bounding box được dự đoán với bounding box thật sự (sau này ta gọi là ground-truth) của một đối tượng (được miêu tả ở

Trang 27

bằng 0 Trong thực tế, ta không có được ground-truth của vật thể nên trong quá trình kiểm thử chỉ số confident rate sẽ chỉ còn là xác suất 𝑃𝑟(𝑜𝑏𝑗𝑒𝑐𝑡)

Hình 3 Biểu diễn công thức IOU

Ở mỗi ô, để xác định được vị trí của các bounding box, thuật toán phải tính được được 5 giá trị tương ứng cho mỗi box: 𝑏A, 𝑏B, 𝑏C, 𝑏> và confident rate Giá trị (𝑏A, 𝑏B) là tọa độ của tâm điểm của box, 𝑏> và 𝑏C lần lượt là chiều cao và chiều rộng của box 4 giá trị 𝑏A, 𝑏B, 𝑏C, và 𝑏> sẽ lần lượt được tính thông qua 𝑡A, 𝑡B, 𝑡C, và 𝑡> theo công thức sau:

𝑏A = 𝜎(𝑡A) + 𝑐A𝑏B = 𝜎G𝑡BH + 𝑐B𝑏C = 𝑝C𝑒<J

𝑏> = 𝑝>𝑒<K

với kích thước ảnh đầu vào (𝑐A, 𝑐B) là tọa độ trên trái của ô đang xét Bốn tham số 𝑡A, 𝑡B, 𝑡C,

bounding box sẽ được xác định dựa trên tọa độ của ô đang xét và kích thước của anchor mặc

minh họa cho mối liên hệ giữa các tham số với nhau Ở YOLO phiên bản 2 trở đi, các kích thước của anchor được thiết lập dựa trên kích thước của các đối tượng trong tập huấn luyện bằng thuật toán gom nhóm k-means

Trang 28

Hình 4 Minh họa cho mối liên hệ giữa các tham số

Ngoài giá trị confident rate đã được nói đến ở trên, thuật toán cần xác định cụ thể đối tượng

Cuối cùng, ta tổng hợp xác suất này với confident rate được nêu trên để tạo thành confident scores cho từng loại đối tượng (class)

𝐶𝑜𝑛𝑓𝑖𝑑𝑒𝑛𝑡_𝑠𝑐𝑜𝑟𝑒 = 𝑃𝑟(𝐶𝑙𝑎𝑠𝑠R|𝑂𝑏𝑗𝑒𝑐𝑡) × 𝑃𝑟(𝑂𝑏𝑗𝑒𝑐𝑡) × 𝐼𝑂𝑈89:;<9=<> = 𝑃𝑟(𝐶𝑙𝑎𝑠𝑠R) × 𝐼𝑂𝑈89:;<9=<>

Tóm lại, network được thiết kế để trả về một ma trận khối 3 chiều (tensor) có 𝑆 × 𝑆 × (𝐵 × 5 + 𝐶) giá trị, với C là số lượng đối tượng của bài toán Sau khi có được đầu ra này, ta sẽ có rất nhiều bounding box được đưa ra bởi mỗi ô Tuy nhiên hầu hết trong số chúng đều có confident scores thấp hoặc cùng bao phủ một đối tượng trong ảnh Vì thế ta cần phải loại bỏ hết các miền bao “dư thừa” này càng nhiều càng tốt Các bước để chọn các bounding box của các đối tượng trong ảnh và loại các box dư thừa sẽ được trình bày ở phần dưới đây

Để dễ dàng mô tả quá trình chọn các bounding box, ta giả sử số lượng bounding box mà mỗi cell cần xác định là bằng 2 (B=2), số lượng đối tượng là 20 (C=20) và S=7 Hình 5 mô tả chi tiết các giá trị được lưu trong tensor trả ra từ mạng nơ-ron tích chập, bao gồm các tham số

Trang 29

Hình 5 Giá trị lưu trong tensor trả về từ mạng CNN

Đầu tiên, ta cần tính được vector của confident scores cho mỗi bounding box bằng tích confident rate của mỗi bounding box và vector xác suất Pr(〖Class〗_i│Object) (được mô tả ở hình 6) Sau khi lần lượt tính được các vector của confident scores cho mỗi bounding box, ta có được một mảng các vector được mô tả ở hình 7

Hình 6 Mô tả vector confident scores cho mỗi bounding box

Trang 30

Hình 7 Mô tả toàn bộ vector confident scores cho ảnh

Kế tiếp, sau khi có được toàn bộ confident scores, ta bắt tay vào xét từng class để xem có đối tượng nào thuộc class này tồn tại trong ảnh đang xét hay không Với mỗi class, ta lần lượt lấy những score tương ứng của class đó ở từng bounding box Đồng thời ta loại bỏ những trường hợp có score thấp hơn một ngưỡng nhất định nào đó bằng cách gán 0 cho score đó Mảng chứa score này sẽ được sắp xếp theo chiều giảm dần để có thể dễ dàng áp dụng thuật toán NMS

Ý tưởng của NMS rất đơn giản như sau:

Bước 1: Ta lấy bounding box có score của class đang xét cao nhất làm chuẩn và cho rằng

đây chính là bounding box của một đối tượng thuộc class đó có trong ảnh Ta tạm gọi là box_max

Bước 2: Xét bounding box có score cao thứ nhì (score khác 0) Nếu chỉ số IOU của box

đang xét và box_max lớn hơn 0.5, ta sẽ xem như 2 bounding box này đang bao phủ cho cùng một đối tượng nên chỉ giữ lại box có score cao hơn (box_max) Sau đó, score của box đang xét được gán về 0 Ngược lại, nếu chỉ số IOU của hai box này nhỏ hơn 0.5, ta sẽ giữ lại cả 2 bounding box Trong hình 8, box_max hiện tại là box thứ 47, box thứ 20 có chỉ số IOU với box thứ 47 lớn hơn 0.5 Do đó, score của box thứ 47 là 0.3 sẽ được gán bằng 0

Bước 3: Lặp lại bước 2 với các bounding box có score thấp hơn (khác 0) Mục đích là để

loại hết tất cả các bounding box đang bao phủ cùng một đối tượng với box_max

Bước 4: Sau khi loại hết cái box cùng bao phủ một đối tượng với box_max, ta tiến hành xét

duyệt xét box có score khác 0 và không cùng bao phủ một đối tượng với các box_max trước

Trang 31

đó, gán nó là box_max Sau đó tiếp tục lặp lại bước 1 cho đến khi đảm bảo rằng các box còn lại chỉ bao phủ một đối tượng riêng biệt thuộc class đang xét

Hình 8 Mô tả quá trình xét score cho các class

Sau khi áp dụng thuật toán NMS lên tất cả các class của bài toán, ta sẽ tiến hành xét duyệt các bounding box có score khác 0 lần cuối cùng Trong YOLO, một bounding box chỉ có thể là miền bao cho chỉ một đối tượng vì thế chúng chỉ có thể là biểu diễn cho class có xác

box lần cuối cùng trước khi xuất ra kết quả ở hình 10

Trang 32

Hình 9 Mô tả quá trình xét duyệt bounding box

Hình 10 Kết quả sau khi duyệt bounding box

Trang 33

3.1.3 Kiến trúc mạng

YOLO được cài đặt như một Convolutional Neural Network Các convolution layer trích xuất feature từ ảnh, trong khi đó các fully connected layer sẽ dự đoán xác suất và toạ độ đầu ra

Hình 11 Kiến trúc mạng YOLO

Yolo có 24 layer tích chợp và theo sau đó là 2 fully connected layer Cho layer tích chập cuối đầu ra của nó là 1 tensor (7, 7, 1024) Rồi sau đó tensor sẽ được làm phẳng Sử dụng 2 fully connected layers dưới dạng hồi quy tuyến tính, đầu ra của nó 7x7x30 tham số sẽ được đưa ra dưới hình dạng (7, 7, 30)

3.1.4 Cách đánh giá mô hình nhận diện vật thể

Để đánh giá mô hình nhận diện vật thể, người ta thường sử dụng chỉ số mAP (mean Average Precision) và IoU (Intersection over Union) Bên dưới đây sinh viên sẽ trình bày cụ thể các chỉ số đó có nghĩa là gì và được dùng như thế nào

a) Khái niệm precision và recall

Precision đo độ chính xác của dự đoán, hay nói cách khác là tỷ lệ phần trăm dự đoán của

mô hình là chính xác

Recall đo xem mô hình có thực hiện tốt trong việc tìm tất cả các trường hợp chính xác không

Bên dưới là công thức để tính 2 giá trị precision và recall:

Ngày đăng: 16/05/2024, 11:44

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan