1. Trang chủ
  2. » Luận Văn - Báo Cáo

XÂY DỰNG HỆ THỐNG NHẬN DẠNG BIỂN SỐ XE TỰ ĐỘNG SỬ DỤNG MÔ HÌNH HỌC SÂU

47 36 0

Đ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

Thông tin cơ bản

Tiêu đề Xây Dựng Hệ Thống Nhận Dạng Biển Số Xe Tự Động Sử Dụng Mô Hình Học Sâu
Tác giả Nguyễn Văn Vũ, Trần Thị Khánh Linh, Phạm Văn Đức
Người hướng dẫn TS. Nguyễn Mạnh Cường
Trường học Trường Đại Học Công Nghiệp Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại Báo Cáo Bài Tập Lớn
Năm xuất bản 2024
Thành phố Hà Nội
Định dạng
Số trang 47
Dung lượng 1,95 MB

Cấu trúc

  • CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN (8)
    • 1.1. Hiện trạng giao thông Việt Nam hiện nay (8)
    • 1.2. Học sâu và ứng dụng (8)
      • 1.2.1. Khái niệm học sâu (8)
      • 1.2.2. Ứng dụng của học sâu (9)
    • 1.3. Bài toán nhận dạng và ứng dụng của bài toán nhận dạng trong giao thông (10)
      • 1.3.1. Đặc điểm của bài toán nhận dạng (10)
      • 1.3.2. Ứng dụng của bài toán nhận dạng trong giao thông (10)
    • 1.4. Tổng quan về bài toán nhận dạng biển số xe (12)
      • 1.4.1. Đặc điểm về bài toán nhận dạng biển số xe (12)
      • 1.4.2. Phát biểu bài toán (13)
      • 1.4.3. Phạm vi đề tài (14)
  • CHƯƠNG 2. CÁC KIẾN THỨC NGHIÊN CỨU LIÊN QUAN (15)
    • 2.1. Phương hướng tiếp cận bài toán (15)
    • 2.2. Một số kĩ thuật trong bài toán phát hiện vật thể (15)
      • 2.2.1. Phương pháp hai giai đoạn (15)
      • 2.2.2. Phương pháp một giai đoạn (22)
    • 2.3. Đề xuất giải quyết bài toán (24)
    • 2.4. Các phương pháp đánh giá mô hình (32)
    • 2.5. Nhận dạng biển số xe (35)
  • CHƯƠNG 3. PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN (36)
    • 3.1. Lựa chọn mô hình (36)
    • 3.2. Gán nhãn dữ liệu (37)
    • 3.3. Phân loại kí tự (38)
  • CHƯƠNG 4. CHƯƠNG TRÌNH THỰC NGHIỆM (40)
    • 4.1. Chuẩn bị bộ dữ liệu (40)
    • 4.2. Huấn luyện mô hình YOLOv8m (41)
    • 4.3. Thiết kế phần mềm (42)
      • 4.3.1. Thiết bị hệ thống (42)
      • 4.3.2. Môi trường thực hiện và công cụ (42)

Nội dung

Công nghệ thông tin đã trở thành một phần quan trọng trong đời sống hiện tại và đã phát triển mạnh mẽ trong thời gian gần đây. Những phần mềm thông minh có khả năng tự động xử lý các công việc khó khăn phục vụ cho lợi ích của con người. Cùng với đó không thể thiếu được các thiết bị ghi hình đang bùng nổ như điện thoại di động, hệ thống camera giám sát, … Những năm gần đây, có nhiều các bài báo nghiên cứu khoa học về lĩnh vực trí tuệ nhân tạo, học sâu đã đưa ra rất nhiều các phương pháp, cách tiếp cận cho bài toán nhận dạng vật thể, chữ viết, khuôn mặt, giọng nói, … cho ra được độ chính xác rất cao. Những thành tựu này hoàn toàn có khả năng để ứng dụng vào giải quyết các vấn đề về giao thông và cụ thể là nhận dạng biển số xe trong các bãi để xe. Trong những năm gần đây, số lượng các phương tiện tham gia giao thông ngày càng tăng do nhu cầu đi lại của người dân đặc biệt là học sinh, sinh viên. Lưu lượng phương tiện giao thông sử dụng ở trường học rất lớn. Hiện tại, sinh viên tham gia học tại trường đại học tương đối đông, nhà trường có bãi gửi xe cho sinh viên đến trường, mô hình quản lý gửi xe tại đây còn mang tính chất thủ công, chưa có sự quản lý chặt chẽ từ ban quản lý đến nhân viên và tự giác của sinh viên. Việc áp dụng công nghệ vào quản lý giao thông đang trở thành một giải pháp quan trọng để giảm ùn tắc giao thông và cải thiện hiệu suất hoạt động của các địa điểm công cộng và bãi đỗ xe. Các mô hình đó có thể thay thế con người làm nhiệm vụ một cách chính xác, nhanh chóng. Đề tài “Hệ thống nhận dạng biển số xe tự động sử

GIỚI THIỆU TỔNG QUAN

Hiện trạng giao thông Việt Nam hiện nay

Các trung tâm thành phố lớn tập trung nhiều cơ quan hành chính, văn hóa, lịch sử và du lịch Tuy nhiên, sự gia tăng nhanh chóng của phương tiện giao thông, cùng với cơ sở hạ tầng chưa được cải thiện và ý thức của người dân cũng như doanh nghiệp vận tải còn thấp, đã khiến tình hình giao thông không có nhiều tiến triển trong những năm qua.

Tại báo cáo mới nhất gửi Quốc hội về việc đảm bảo trật tự, an toàn giao thông năm

Trong 9 tháng đầu năm 2023, cả nước ghi nhận 97 vụ ùn tắc giao thông, tăng 29 vụ so với cùng kỳ năm 2022, theo thông tin từ Bộ Giao thông vận tải Tình trạng ùn tắc tại Hà Nội đang có xu hướng gia tăng, đặc biệt trên các tuyến cao tốc và quốc lộ trọng điểm, đặc biệt tại các cửa ngõ vào và ra của các thành phố lớn Nguyên nhân chính dẫn đến tình trạng này là do sự gia tăng đáng kể về số lượng phương tiện tham gia giao thông.

Tương tự như các bãi đỗ xe tại tòa nhà và chung cư, lưu lượng xe ra vào tại các trường đại học, cao đẳng và trường học phổ thông thường ổn định Tuy nhiên, vào giờ tan tầm hoặc tan học, tình trạng tắc đường và kẹt xe tại các điểm kiểm soát vẫn xảy ra Việc áp dụng phương pháp giữ xe thông thường trong những thời điểm này có thể dẫn đến sự hỗn loạn và tốn nhiều thời gian cho cả người gửi xe và nhân viên kiểm soát.

Học sâu và ứng dụng

Trong những năm gần đây, Trí tuệ nhân tạo (AI) đã trở thành một lĩnh vực khoa học quan trọng, nhằm mục tiêu phát triển trí thông minh tương tự như con người AI hướng đến việc tạo ra các hệ thống có khả năng tư duy, học hỏi và tương tác với môi trường Để đạt được điều này, cần áp dụng nhiều phương pháp và kỹ thuật khác nhau, trong đó có học máy, xử lý ngôn ngữ tự nhiên và học sâu Học sâu, một nhánh con của trí tuệ nhân tạo, sử dụng mạng thần kinh nhân tạo nhiều lớp để đạt được độ chính xác cao trong các tác vụ như phát hiện đối tượng, nhận dạng giọng nói và dịch ngôn ngữ.

Học sâu (Deep learning) khác biệt với kỹ thuật học máy truyền thống ở chỗ nó có khả năng tự động học các biểu diễn ngữ nghĩa từ ảnh, video và tài liệu mà không cần sự can thiệp của quy tắc lập trình hay kiến thức chuyên môn của con người Nhờ vào công nghệ này, học sâu đã đạt được nhiều thành tựu nổi bật trong trí tuệ nhân tạo, như Google DeepMind, Alpha Go, xe tự hành và trợ lý ảo thông minh, cùng với nhiều ứng dụng khác.

1.2.2 Ứng dụng của học sâu

Deep Learning hiện đang được áp dụng rộng rãi trong nhiều lĩnh vực, giúp tối ưu hóa quy trình nghiên cứu, giải thích và phân tích dữ liệu một cách nhanh chóng và hiệu quả Sự phát triển của Deep Learning mang lại tính chủ động trong công việc, cho phép con người kiểm soát cuộc sống tự động hơn Dưới đây là một số ứng dụng của Deep Learning, mang lại lợi ích thiết thực cho cuộc sống con người.

Thị giác máy tính đã được thúc đẩy mạnh mẽ nhờ học sâu, dẫn đến sự phát triển của các hệ thống nhận dạng hình ảnh và phân loại Các công nghệ này bao gồm nhận dạng khuôn mặt, phát hiện đối tượng và gắn nhãn hình ảnh trong thời gian thực Ứng dụng của chúng rất đa dạng, từ xe tự lái đến nhận dạng vật thể trong hình ảnh y tế và an ninh.

Xử lý ngôn ngữ tự nhiên (NLP) đã được cải thiện đáng kể nhờ vào học sâu, giúp nâng cao khả năng dịch máy, xác định ngữ cảnh và tổng hợp văn bản Các ứng dụng của NLP rất đa dạng, bao gồm trợ lý ảo như Siri và Alexa, chatbot, cũng như phân tích cảm xúc trên mạng xã hội.

Nhận dạng giọng nói sử dụng công nghệ học sâu để chuyển đổi giọng nói thành văn bản Ứng dụng của công nghệ này rất đa dạng, bao gồm hệ thống nhận dạng

Học sâu đã chứng minh được sự ứng dụng đa dạng và tác động mạnh mẽ trong nhiều lĩnh vực khác nhau Sự kết hợp giữa sức mạnh tính toán và khả năng học của nó đã tạo ra những tiến bộ quan trọng, góp phần thúc đẩy sự phát triển của trí tuệ nhân tạo.

Bài toán nhận dạng và ứng dụng của bài toán nhận dạng trong giao thông

Trong lĩnh vực CNTT, nhận dạng đóng vai trò quan trọng trong việc phát hiện các mẫu dữ liệu và quy luật trong các tình huống cụ thể Nhận dạng mẫu có thể được phân loại thành hai loại: giám sát, khi các mẫu đã biết được tìm thấy trong dữ liệu, và không giám sát, khi các mẫu hoàn toàn mới được phát hiện Quá trình nhận dạng nhằm tìm ra các quy luật và thuật toán để gán đối tượng vào một lớp cụ thể, hay nói cách khác, là gán cho đối tượng một tên.

1.3.2 Ứng dụng của bài toán nhận dạng trong giao thông

Bài toán nhận dạng trong giao thông Việt Nam đã phát triển thành nhiều ứng dụng hữu ích, không chỉ giới hạn ở việc nhận diện biển số xe Công nghệ học sâu và xử lý hình ảnh được áp dụng để tự động nhận diện biển báo giao thông, từ đó cung cấp thông tin quan trọng cho người lái xe và hệ thống quản lý giao thông, định hình một tương lai giao thông hiệu quả và tiện lợi hơn.

Bài toán nhận dạng đóng vai trò quan trọng trong việc giám sát hành vi lái xe, giúp phân biệt các vi phạm như vượt đèn đỏ, sử dụng điện thoại khi lái xe và vi phạm tốc độ Hệ thống này ghi nhận và báo cáo tự động, từ đó tăng cường tuân thủ luật lệ giao thông và giảm nguy cơ tai nạn.

Hệ thống nhận dạng xe tự động trong quản lý đỗ xe công cộng giúp ghi nhận thời gian đỗ, ngăn chặn lấn chiếm vỉa hè và duy trì trật tự đô thị Điều này không chỉ tạo ra không gian đô thị sạch sẽ và an toàn mà còn tối ưu hóa việc sử dụng không gian đỗ xe.

Bài toán nhận dạng biển báo giao thông tại Việt Nam ứng dụng công nghệ nhận dạng hình ảnh để tự động phân biệt các biểu hiện trên biển báo Công nghệ này giúp cảnh báo tài xế về quy tắc và hướng dẫn giao thông, từ đó giảm nguy cơ vi phạm và nâng cao an toàn đường bộ Hệ thống không chỉ tối ưu hóa hiệu suất biển báo mà còn cải thiện quản lý giao thông đô thị, góp phần tạo ra môi trường giao thông thông minh và an toàn hơn.

Tổng quan về bài toán nhận dạng biển số xe

1.4.1 Đặc điểm về bài toán nhận dạng biển số xe

Hệ thống nhận dạng biển số xe tự động đang ngày càng thu hút sự quan tâm nhờ khả năng ứng dụng trong giao thông thông minh, được lắp đặt tại nhiều quốc gia để thực thi luật giao thông và giám sát Hệ thống này còn hỗ trợ quản lý bãi đỗ xe, thu phí cầu đường và đảm bảo an ninh tại các khu vực hạn chế như khu quân sự và khu bảo tồn Trước khi có công nghệ hiện đại, việc ghi chép thông tin thường gặp khó khăn do phụ thuộc vào công việc thủ công, dẫn đến tốn thời gian và có thể sai sót Nhờ vào phần mềm hiện đại, gian lận được ngăn chặn, bảo mật được tăng cường và thời gian xử lý được rút ngắn.

Nhóm nghiên cứu đã phát triển một hệ thống nhận dạng biển số xe tự động dựa trên mô hình học sâu, có khả năng triển khai hiệu quả trên các thiết bị trong thực tế.

Hệ thống ALPR kết hợp các bài toán thị giác máy tính như nhận diện vật thể và nhận dạng biển số xe tự động, tập trung vào việc phát hiện ký tự trong biển số xe Hệ thống sử dụng hình ảnh hoặc luồng video đầu vào và xuất ra nội dung biển số xe dưới dạng văn bản Để thực hiện điều này, một camera ghi lại hình ảnh phương tiện, kết hợp với các kỹ thuật phát hiện đối tượng, xử lý ảnh và nhận dạng vật thể nhằm phát hiện và đọc biển số xe Nhóm nghiên cứu đã triển khai nhiều bài toán để giải quyết vấn đề nhận dạng biển số xe.

Bài toán đầu tiên trong quy trình xử lý hình ảnh là phát hiện biển số xe Dữ liệu đầu vào bao gồm ảnh hoặc video có kích thước cố định tùy thuộc vào cấu trúc của mô hình Nhiệm vụ chính của bài toán này là xác định tọa độ của vùng biển số xe trong ảnh và cắt ra vùng biển số đó.

Bài toán thứ hai liên quan đến tiền xử lý ảnh, với dữ liệu đầu vào là ảnh hoặc tập ảnh biển số xe đã được tách ra từ bài toán đầu tiên Nhiệm vụ chính là làm sạch hình ảnh biển số xe, khử nhiễu viền và bụi bẩn, để tạo ra ảnh biển số mới dễ dàng cho việc nhận dạng Ảnh mới cần phải là ảnh nhị phân, được chụp từ góc nhìn chính diện, hạn chế chi tiết thừa và làm rõ biên của các ký tự trong ảnh.

Bài toán thứ ba trong nhận dạng ký tự (Recognize) tập trung vào việc xác định các ký tự chính xác tương ứng với biển số xe thực tế Nhiệm vụ này đòi hỏi sự chính xác cao để đảm bảo rằng các ký tự được nhận diện đúng, phục vụ cho các ứng dụng trong việc quản lý giao thông và an ninh.

Biển số xe đóng vai trò quan trọng trong hệ thống giao thông và quản lý phương tiện Việc nhận dạng biển số xe giúp tự động xác định, trích xuất và hiểu thông tin từ biển số trong hình ảnh hoặc video Đây là một bài toán quan trọng trong lĩnh vực thị giác máy tính và xử lý hình ảnh, với nhiều ứng dụng thực tế.

Dữ liệu video liên tục ghi lại biển số xe từ camera gắn trước mỗi nhà gửi xe, được thu thập trong nhiều điều kiện ánh sáng và góc chụp cố định, bao gồm nhiều loại biển số khác nhau.

Bài viết này tập trung vào hai thông tin chính: xác định vị trí và trích xuất thông tin biển số xe từ video liên tục Ngoài ra, có thể bổ sung các thông tin khác như loại xe, ngày tháng và nhiều chi tiết liên quan khác.

Bài toán nhận diện biển số xe đặt ra yêu cầu cao về độ chính xác, đặc biệt trong các điều kiện ánh sáng yếu hoặc khi biển số bị che khuất Việc xác định chính xác biển số xe là rất quan trọng, với nhiều ứng dụng thực tiễn như giám sát giao thông, kiểm soát tốc độ, quản lý luồng xe, và bảo đảm an ninh tại các khu vực nhạy cảm như sân bay và trạm cảng.

Bài toán nhận dạng biển số xe cần hoạt động trong thời gian thực để cung cấp cảnh báo kịp thời và áp dụng biện pháp kiểm soát hiệu quả.

Nhận dạng biển số xe là một bài toán phức tạp với nhiều phương pháp tiếp cận khác nhau, phụ thuộc vào điều kiện hoạt động và trang thiết bị phần cứng Bài toán này yêu cầu phát hiện và trích xuất thông tin từ biển số xe Nhóm nghiên cứu quyết định không xem xét các trường hợp ngoại lệ, vì có những tình huống khó phát hiện ngay cả bằng mắt thường Với kiến thức, kinh nghiệm và phần cứng hiện có, nhóm sẽ giới hạn bài toán trong một khuôn khổ cụ thể.

• Sử dụng Camera giám sát thông dụng làm đầu vào cho việc nhận diện

• Thực hiện trong không gian hẹp, nhỏ, số lượng 1 xe cho mỗi khung hình, biển số xe không có các vật thể che khuất

• Hệ thống có hỗ trợ GPU để chạy trên thời gian thực.

CÁC KIẾN THỨC NGHIÊN CỨU LIÊN QUAN

Phương hướng tiếp cận bài toán

Quá trình giải quyết bài toán nhận dạng biển số xe bắt đầu bằng việc thu thập và tiền xử lý dữ liệu thực nghiệm liên quan đến biển số xe, đặc biệt là biển số xe Việt Nam Sau đó, nghiên cứu và áp dụng các kỹ thuật mạng nơ-ron và học sâu kết hợp với xử lý ảnh để nhận diện biển số xe qua camera.

Một số kĩ thuật trong bài toán phát hiện vật thể

2.2.1 Phương pháp hai giai đoạn

Phương pháp phát hiện hai giai đoạn bao gồm hai bước chính: giai đoạn định vị (region proposal) và giai đoạn phân loại Cấu trúc cơ bản của phương pháp này giúp tối ưu hóa quá trình phát hiện đối tượng.

Giai đoạn 1 - Tạo các đề xuất khu vực (Region Proposal) sử dụng mạng đề xuất khu vực (RPN) như trong Faster R-CNN để xác định các vùng tiềm năng chứa vật thể trong ảnh RPN không chỉ đề xuất các khu vực khả thi mà còn dự đoán tọa độ của bounding box cho mỗi vùng.

Giai đoạn 2 - Phân loại đối tượng cho mỗi khu vực đề xuất (Object Classification) là quá trình sử dụng các vùng đề xuất từ giai đoạn trước để phân loại và xác định vị trí chính xác của các đối tượng Các vùng này được trích xuất đặc trưng và đưa qua mạng phân loại nhằm xác định loại đối tượng cũng như bounding box chính xác.

Mô hình tiêu biểu sử dụng kiến trúc hai giai đoạn:

R – CNN (Region-based Convolutional Neural Network 2014):[4]

Hình 2.2.1 Tổng quan mô hình mạng R-CNN 2014 [4]

Bước đầu tiên trong quá trình xử lý ảnh là thực hiện tìm kiếm chọn lọc để xác định các vùng tiềm năng Những vùng này thường có hình dạng và kích thước đa dạng Mỗi vùng đề xuất sẽ được gán hạng mục và khung chứa nhãn gốc tương ứng.

Sử dụng một mạng CNN đã được tiền huấn luyện ở dạng rút gọn, chúng ta đặt trước tầng đầu ra để biến đổi các vùng đề xuất thành đầu vào phù hợp với mạng Quá trình này thực hiện các lượt truyền xuôi nhằm trích xuất đặc trưng từ các vùng đề xuất tương ứng.

Bước 3: Các đặc trưng và nhãn hạng mục của từng vùng đề xuất được kết hợp thành mẫu huấn luyện cho các máy vector hỗ trợ, giúp phân loại vật thể Mỗi máy vector hỗ trợ sẽ xác định xem một mẫu có thuộc về hạng mục cụ thể nào hay không.

Bước 4: Các đặc trưng và khung chứa được gán nhãn của từng vùng đề xuất sẽ được kết hợp thành một mẫu nhằm huấn luyện mô hình hồi quy tuyến tính, phục vụ cho việc dự đoán khung chứa nhãn gốc.

Mặc dù các mô hình R-CNN sử dụng mạng CNN đã được tiền huấn luyện để trích xuất đặc trưng ảnh hiệu quả, nhưng chúng gặp phải hạn chế lớn về tốc độ xử lý chậm.

Với hàng ngàn vùng đề xuất từ một bức ảnh, việc phát hiện vật thể yêu cầu hàng ngàn phép tính truyền xuôi từ mạng CNN Khối lượng tính toán lớn này là lý do khiến các mô hình R-CNN không phổ biến trong các ứng dụng thực tế.

Hình 2.2.2 Tổng quan mô hình mạng Fast R – CNN [5]

Fast R-CNN là phiên bản cải tiến của R-CNN, kết hợp quá trình tạo đề xuất khu vực và phân loại thành một quy trình duy nhất, giúp tăng tốc độ huấn luyện so với R-CNN (2015) Thay vì sử dụng từng vùng đề xuất, Fast R-CNN sử dụng toàn bộ ảnh làm đầu vào cho CNN để trích xuất đặc trưng Mạng này được huấn luyện như bình thường để cập nhật tham số mô hình.

Do đầu vào là toàn bộ ảnh, đầu ra của mạng CNN có kích thước 1×c×h1×w1

Giả sử thuật toán tìm kiếm chọn lọc chọn ra n vùng đề xuất với kích thước khác nhau, điều này cho thấy các vùng quan tâm (RoI) tại đầu ra của CNN có kích thước không đồng nhất Để đảm bảo tính nhất quán, các đặc trưng có cùng kích thước cần được trích xuất từ các vùng quan tâm này, với chiều cao là h2 và chiều rộng là w2 Mạng Fast R-

CNN đã đề xuất phương pháp gộp RoI (RoI pooling), trong đó nhận đầu ra từ CNN và các vùng quan tâm làm đầu vào Phương pháp này kết hợp các đặc trưng được trích xuất từ mỗi vùng quan tâm, tạo ra đầu ra có kích thước n×c×h2×w2.

Tầng kết nối đầy đủ thực hiện việc biến đổi kích thước đầu ra thành n×d, với d được xác định trong quá trình thiết kế mô hình Khi dự đoán hạng mục, đầu ra của tầng này được chuyển đổi thành n×q và áp dụng phép hồi quy softmax, trong đó q đại diện cho số lượng hạng mục Đối với dự đoán khung chứa, kích thước đầu ra sẽ được biến đổi thành n×4.

Mô hình Faster R-CNN, ra mắt năm 2015, được thiết kế nhằm nâng cao tốc độ và hiệu suất so với các mô hình trước như R-CNN và Fast R-CNN Điểm cải tiến nổi bật của Faster R-CNN là việc sử dụng mạng Region Proposal Network (RPN) để tự động tạo ra các đề xuất khu vực Sự tích hợp của RPN vào mô hình không chỉ loại bỏ quy trình tạo đề xuất thủ công mà còn tăng tốc độ xử lý Mặc dù số lượng vùng đề xuất được giảm thiểu, nhưng độ chính xác trong việc phát hiện đối tượng vẫn được đảm bảo.

Hình 2.2.4 Tổng quan mô hình mạng Mask R-CNN [6]

Mask R-CNN, một phiên bản nâng cấp của Faster R-CNN, giữ nguyên cấu trúc cơ bản nhưng bổ sung thêm một mạng nơ-ron tích chập đầy đủ Điều này cho phép nó định vị đối tượng ở cấp độ điểm ảnh, từ đó nâng cao độ chính xác trong việc phát hiện các đối tượng.

Đề xuất giải quyết bài toán

Mạng Yolo (You Only Look Once) được phát triển để cải thiện độ chính xác của các mạng CNN hiện tại và đáp ứng nhu cầu nhận diện trong thời gian thực Yolo cho phép mạng Neural được huấn luyện và thực hiện tính toán thời gian thực trên các nền tảng GPU thông thường Đây là một thuật toán phát hiện đối tượng một giai đoạn, sử dụng một mạng CNN duy nhất để xử lý hình ảnh, cho phép tính toán trực tiếp kết quả phân loại và tọa độ vị trí của các đối tượng trong khung hình Việc áp dụng định vị và phân loại đối tượng theo phương pháp end-to-end đã giúp tăng tốc độ tính toán đáng kể qua các phiên bản.

YOLO không phải là thuật toán tốt nhất nhưng là thuật toán nhanh nhất để đạt tốc độ gần như realtime Phương pháp này xuất ra vị trí của các vật thể trong từng bức ảnh, giúp phát hiện nhiều vật thể trong cùng một bức ảnh Đầu vào của bài toán là một bức ảnh, trong đó chúng ta cần phân loại và định vị các đối tượng Đầu ra sẽ là danh sách các đối tượng cùng với vị trí của chúng trong bức ảnh.

Mô hình YOLO, được giới thiệu bởi Joseph Redmon trong bài báo năm 2015 với tiêu đề “You Only Look Once: Unified, Real-Time Object Detection”, nhằm mục tiêu loại bỏ thuật toán nhiều giai đoạn và thực hiện phát hiện đối tượng trong một giai đoạn duy nhất, từ đó cải thiện thời gian suy luận YOLOv1, phiên bản đầu tiên của YOLO, là một trong những phương pháp đầu tiên sử dụng mạng neural để nhận diện vật thể, mang lại tốc độ xử lý nhanh và độ chính xác tương đối cao, mặc dù vẫn còn hạn chế trong việc phát hiện các vật thể nhỏ hoặc gần nhau.

Hình 2.3.1 Kiến trúc mạng YOLOv1 [8]

• YOLOv1 chia hình ảnh đầu vào thành một lưới ô vuông và mỗi ô sẽ dự đoán các đối tượng có khả năng xuất hiện trong ô đó

• Sử dụng phân lớp đa nhãn (multi-label classification): YOLOv1 có thể dự đoán nhiều đối tượng khác nhau trong cùng một ô

• Sử dụng hàm mất mát tổng quát (generalized IoU loss): YOLOv1 sử dụng hàm mất mát tổng quát để đánh giá độ chính xác của mô hình

YOLOv1 kết hợp phân lớp và dự đoán vị trí thông qua việc sử dụng điểm số objectness score, giúp đánh giá khả năng xuất hiện của đối tượng trong từng ô.

YOLOv2, được phát hành bởi Joseph Redmon và Ali Farhadi vào năm 2016 trong bài báo "YOLO9000: Better, Faster, Stronger", có khả năng phát hiện hơn 9000 loại đối tượng So với YOLOv1, YOLOv2 nổi bật với tốc độ xử lý nhanh hơn và độ chính xác cao hơn, đồng thời cải thiện khả năng phát hiện các vật thể nhỏ và gần nhau.

• YOLOv2 sử dụng kỹ thuật batch normalization để giảm độ lệch và tăng độ chính xác của mô hình

• YOLOv2 sử dụng một mạng nơ-ron tích chập (convolutional neural network) có cấu trúc mới để tăng tốc độ xử lý

• YOLOv2 sử dụng kỹ thuật anchor boxes để tăng độ chính xác của việc dự đoán vị trí đối tượng

• YOLOv2 sử dụng kỹ thuật softmax để tăng độ chính xác của việc phân loại đối tượng

Vào năm 2018, Joseph Redmon và Ali Farhadi đã ra mắt YOLOv3 trong bài viết “YOLOv3: An Incremental Improvement” Phiên bản này giới thiệu một trình trích xuất đặc trưng cải tiến và sử dụng 53 lớp tích chập được đào tạo trên ImageNet Mặc dù độ chính xác của YOLOv3 cao hơn YOLOv2, nhưng tốc độ xử lý chậm hơn do số lượng lớp nhiều hơn.

Hình 2.3.2 Kiến trúc mạng YOLOv3 [8][9]

• Backbone network được cải tiến để tăng độ chính xác và tốc độ xử lý bằng mô hình Darknet-53

Kỹ thuật skip connection được sử dụng để kết hợp thông tin từ các tầng khác nhau trong mạng neural, từ đó nâng cao khả năng phát hiện các vật thể nhỏ và gần nhau.

• Sử dụng kỹ thuật kết hợp đa tầng để tăng độ chính xác của việc phân loại lớp vật thể

• YOLOv3 còn hỗ trợ phát hiện các vật thể trong các tình huống khó như các vật thể bị che khuất hoặc có độ lệch góc lớn

YOLOv4, released by Alexey Bochkovskiy and others, not Joseph Redmon, introduces significant improvements over previous versions, as detailed in their 2020 paper "YOLOv4: Optimal Speed and Accuracy of Object Detection."

Mô hình CSPDarknet áp dụng kỹ thuật kết hợp các lớp convolution, giúp giảm số lượng tham số và nâng cao khả năng học tập Nhờ đó, YOLOv4 giảm thiểu hiện tượng overfitting, đồng thời cải thiện tốc độ xử lý và độ chính xác.

• Sử dụng kỹ thuật SPP (Spatial Pyramid Pooling) để giảm thiểu số lượng tính toán và tăng độ chính xác

Kỹ thuật PAN (Path Aggregation Network) được áp dụng để kết hợp thông tin từ các tầng khác nhau trong mạng neural, nhằm nâng cao khả năng phát hiện các vật thể nhỏ và gần nhau.

• Sử dụng kỹ thuật YOLOv4 Neck để tăng độ chính xác của việc phân loại lớp vật thể

• Hỗ trợ phát hiện các vật thể trong các tình huống khó như các vật thể bị che khuất hoặc có độ lệch góc lớn

YOLOv5, ra mắt vào năm 2020 bởi công ty Ultralytics, được xem là thành viên tiếp theo trong gia đình YOLO, chỉ vài ngày sau khi YOLOv4 được phát hành Phiên bản này có nhiều điểm khác biệt đáng chú ý so với YOLOv4.

• Tốc độ xử lý và độ chính xác cao hơn

• Sử dụng mô hình EfficientNet để tăng tốc độ xử lý và độ chính xác, trong khi YOLOv4 sử dụng mô hình CSPDarknet

YOLOv5 áp dụng kỹ thuật BiFPN (Bidirectional Feature Pyramid Network) để kết hợp thông tin từ các tầng khác nhau của mạng neural, nâng cao khả năng phát hiện các vật thể nhỏ và gần nhau Trong khi đó, YOLOv4 sử dụng kỹ thuật PAN để thực hiện nhiệm vụ tương tự.

• YOLOv5 có khả năng phát hiện các vật thể nhỏ và gần nhau tốt hơn so với YOLOv4

• YOLOv5 có tính năng tự động tinh chỉnh các siêu tham số để tối ưu hóa độ chính xác và tốc độ xử lý

In 2022, Chuyi Li, Lulu Li, Hongliang Jiang, Kaiheng Weng, Yifei Geng, Liang Li, Zaidan Ke, Qingyuan Li, Meng Cheng, Weiqiang Nie, Yiduo Li, Bo Zhang, Yufei Liang, Linyuan Zhou, Xiaoming Xu, Xiangxiang Chu, Xiaoming Wei, and Xiaolin Wei released YOLOv6 in their paper titled “YOLOv6: A Single-Stage Object Detection Framework for Industrial Applications.” YOLOv6 represents a significant advancement over YOLOv5, showcasing superior models and techniques that are based on the design concept of hardware-aware neural networks.

• Mô hình không máy dò neo có khả năng khái quát hóa mạnh mẽ và logic mã đơn giản cải thiện hơn về tốc độ

• Chính sách gán thẻ SimOTA tự động phân bổ cải thiện độ chính xác

• Hộp hồi quy giới hạn mất mát SIoU giám sát quá trình học của mạng cải thiện độ chính xác hồi quy

YOLOv6 có khả năng phát hiện các vật thể nhỏ hơn một cách đáng tin cậy hơn so với YOLOv5, nhưng lại nhạy cảm với nhiễu và gặp khó khăn khi phát hiện các vật thể ở gần Mặc dù MT-YOLOv6 thiếu tính ổn định so với YOLOv5, nhưng khả năng phát hiện đối tượng nhỏ trong môi trường đông đúc của nó rất ấn tượng Về tính linh hoạt, YOLOv5 sử dụng YAML, trong khi YOLOv6 xác định các tham số mô hình trực tiếp bằng Python, cho thấy YOLOv5 có khả năng tùy chỉnh cao hơn YOLOv6.

In the same year, YOLOv7 was released by Chien-Yao Wang, Alexey Bochkovskiy, and Hong-Yuan Mark Liao, as detailed in their paper “YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors.” YOLOv7 is a foundational model optimized for conventional GPU computing, featuring enhancements in both speed and accuracy through architectural reforms Unlike the scaled YOLOv4, the YOLOv7 backbone does not utilize pre-trained ImageNet backbones; instead, the models are entirely trained on the COCO dataset.

Các phương pháp đánh giá mô hình

Độ chính xác trung bình (mAP) là chỉ số quan trọng để đánh giá hiệu suất của các mô hình phát hiện đối tượng như Fast R-CNN, YOLO và Mask R-CNN Giá trị mAP được tính dựa trên độ chính xác trung bình (AP) và các giá trị recall từ 0 đến 1 Công thức mAP sử dụng các chỉ số phụ để đưa ra kết quả chính xác trong việc đánh giá mô hình.

• Ma trận hỗn loạn (Confusion Matrix)

Có bốn thuộc tính để tạo ma trận hỗn loạn:

• Dương tính thật (TP): Mô hình đã dự đoán nhãn và khớp với nhãn thực tế

• Âm tính thật (TN): Mô hình không dự đoán nhãn và không phải là một phần của nhãn thực tế

• Dương tính giả (FP): Mô hình đã dự đoán một nhãn, nhưng nó không phải là một phần của nhãn thực tế (Lỗi Loại I)

• Âm tính giả (FN): Mô hình không dự đoán nhãn, nhưng nó là một phần của nhãn thực tế (Lỗi Loại II)

Hình 2.4.1 Ma trận hỗn loạn (Confusion matrix)

Giao trên hợp (IOU) là chỉ số đo lường mức độ giao nhau giữa hai đường bao, thường là giữa đường bao dự đoán và đường bao thực tế Tỷ lệ này được tính bằng cách so sánh diện tích giao nhau của hai đường bao với tổng diện tích của cả hai, bao gồm cả phần giao nhau và không giao nhau.

Hình 2.4.2 Công thức tính IoU

Tiêu chí theo ngưỡng tự đặt:

• IOU >= ngưỡng: TP - True Positive

• IOU < ngưỡng: FP - False positive

Đối tượng không được nhận dạng là FN (False Negative) Độ chính xác (Precision) được định nghĩa là tỷ lệ giữa số kết quả dương tính thật (TP) và tổng số dự đoán, bao gồm cả kết quả dương tính thật và dương tính giả (TP + FP).

Hình 2.4.3 Công thức tính độ đo precision

Recall: đo lường mức độ có thể tìm thấy các kết quả dương tính thật (TP) trong số tất cả các dự đoán (TP+FN)

Hình 2.4.4 Công thức tính độ đo recall

Cách tính mAP: tìm Độ chính xác Trung bình (AP) cho mỗi lớp và sau đó lấy trung bình trên một số lớp

Hình 2.4.5 Công thức tính độ đo mAP

Chỉ số mAP là thước đo quan trọng trong các ứng dụng phát hiện, kết hợp giữa độ chính xác và recall, đồng thời xem xét cả kết quả dương tính giả (FP) và âm tính giả (FN) Sự đánh đổi này giúp mAP phản ánh hiệu suất một cách toàn diện.

Nhận dạng biển số xe

Bài toán nhận dạng biển số xe là một ứng dụng tiêu biểu của xử lý ảnh và Deep Learning, đặc biệt là trong lĩnh vực nhận diện ký tự quang học (OCR) Mục tiêu chính là phát hiện và nhận diện các ký tự, bao gồm chữ cái (cả viết hoa và viết thường), chữ số và ký tự đặc biệt trên biển số xe máy Quy trình bắt đầu với việc thu nhận hình ảnh biển số, sau đó trích xuất từng ký tự Cuối cùng, mô hình sẽ phân tích và dự đoán các ký tự, ghép chúng lại để cho ra kết quả hoàn chỉnh của biển số xe.

In this report, the team utilized the YOLOv5 model developed by Lin Wang for the project "Chinese License Plate Detection Recognition." The process involved reformatting license plates by concatenating characters from the same row.

PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN

Lựa chọn mô hình

Nhóm nghiên cứu đã áp dụng mô hình YOLOv8 để giải quyết bài toán nhận diện biển vật thể, nhờ vào độ chính xác cao và khả năng triển khai dễ dàng Mô hình này cũng cho phép huấn luyện nhanh hơn so với các mô hình hai giai đoạn khác Tuy nhiên, YOLOv8 không hỗ trợ huấn luyện với hình ảnh độ phân giải cao và hoạt động hiệu quả nhất trong khoảng cách 10 mét, điều này rất phù hợp cho việc nhận diện biển số xe Ultralytics đã so sánh YOLOv8 với các phiên bản trước dựa trên bộ dữ liệu COCO và ghi nhận kết quả ấn tượng trên tất cả các kích cỡ mô hình.

Mô hình YOLOv8m đạt được mAP 50,2% trên bộ dữ liệu COCO, trong khi mô hình lớn nhất YOLOv8x có mAP 53,9% với số lượng tham số gấp đôi Mô hình nhỏ nhất, YOLOv8n, chỉ có 3,2 triệu tham số nhưng vẫn đạt độ chính xác mAP 37,3%.

% trên bộ dữ liệu Hình dưới đây thể hiện sự so sánh giữa 5 kích thước mô hình khác nhau:

Hình 3.1.2 So sánh các kích cỡ mô hình YOLOv8

Trong bài báo cáo này, nhóm đã áp dụng mô hình YOLOv8m để nhận diện biển số xe Mô hình này được tối ưu hóa với các tham số phù hợp, cho phép hoạt động hiệu quả trên nhiều thiết bị hiện đại hỗ trợ tính toán hiệu năng cao.

Gán nhãn dữ liệu

Trước khi tiến hành huấn luyện mô hình, cần gán nhãn thủ công cho bộ dữ liệu với thông tin hộp giới hạn (bounding box) cho lớp biển số xe Việc gán nhãn này được thực hiện thông qua website Roboflow, một phần mềm hỗ trợ gán nhãn dữ liệu và cho phép xuất ra nhiều định dạng khác nhau.

Hình 3.1.1 Mô tả quá trình gán nhãn dữ liệu

Phân loại kí tự

Hiện nay, biển số xe ô tô và xe máy cho phép sử dụng 31 ký tự bao gồm cả chữ và số Việc sử dụng bộ dữ liệu MNIST không khả thi do các yếu tố ảnh hưởng từ môi trường thực tế như độ sáng và độ lệch ảnh Trong dự án này, tác giả đã xây dựng bộ dữ liệu với các ký tự chữ cái chuẩn quốc tế và phát triển mô hình với số bộ lọc tăng dần, sử dụng max pooling để chọn ra các đặc trưng tốt nhất từ hình ảnh Mặc dù dự án tập trung vào việc dự đoán các ký tự trên biển số xe với một dòng, nhóm nghiên cứu đã chia đôi bức ảnh để áp dụng cho biển số xe hai dòng, với nửa trên là dòng một và nửa dưới là dòng hai, sau đó đưa vào mô hình dự đoán.

Hình 3.1.1 Hình ảnh biển số xe gốc

Hình 3.1.2 Hình ảnh sau khi được chia đôi

Mặc dù kết quả của biển số xe 2 dòng chưa được tốt, nhưng cũng đã khắc phục phần nào vấn đề chỉ nhận diện biển 1 dòng của dựa án.

CHƯƠNG TRÌNH THỰC NGHIỆM

Chuẩn bị bộ dữ liệu

Trong bài báo cáo này, nhóm đã sử dụng dữ liệu về biển số xe từ hai bộ dữ liệu công khai của công ty GreenParking tại ThiGiacMayTinh Bộ dữ liệu bao gồm 2612 bức ảnh của cả xe máy và ô tô, được chụp từ nhiều góc độ và thiết bị khác nhau Sau khi được gán nhãn trên Roboflows, dữ liệu được chia thành 70% cho huấn luyện, 15% cho kiểm tra và 15% cho xác thực.

Hình 4.1.1 Bộ dữ liệu GreenParking

Huấn luyện mô hình YOLOv8m

Nhóm nghiên cứu đã sử dụng Google Collab để huấn luyện mô hình nhận diện biển số xe, tận dụng môi trường biên dịch Python trên nền tảng web với phần cứng Tesla T4 GPU và 15 GB RAM Chương trình được viết bằng Python phiên bản 3.9.13, sử dụng mô hình YOLOv8m đã được huấn luyện trước đó, với 20 epochs và kích thước batch là 16.

Hình 4.2.1 Kết quả huấn luyện mô hình YOLOv8m

Mô hình phát hiện đối tượng YOLOv8m đã được lựa chọn vì mang lại độ chính xác cao trong việc đánh giá trên dữ liệu thử nghiệm Cụ thể, mAP với ngưỡng IoU 50 đạt 97%, trong khi mAP với ngưỡng IoU từ 50 đến 95 đạt 65,9%.

Thiết kế phần mềm

Bài báo cáo này sử dụng thiết bị chạy trên cả hệ điều hành Ubuntu 22.04.3 và Windows, được trang bị bộ xử lý AMD® Ryzen 7 5800HS với đồ họa Radeon và card đồ họa NVIDIA GA106M (GeForce RTX 3060 Mobile / Max-Q) Với cấu hình này, mô hình YOLOv8m có khả năng hoạt động trong thời gian thực.

4.3.2 Môi trường thực hiện và công cụ

Môi trường thực hiện là python 3.9.13, công cụ sử dụng cho đề tài là Pycharm Community Các thư viện sử dụng trong dự án là:

Tkinter là một công cụ hữu ích để thiết kế giao diện người dùng, và nhóm đã sử dụng Figma để tạo ra mẫu thiết kế Sau đó, giao diện này được chuyển đổi thành giao diện hệ thống thông qua Tkinter GUI.

• Pytorch: giúp huấn luyện và chạy các mô hình học sâu như YOLO

• OpenCV: giúp xử lý ảnh đầu vào trong video

Hình 4.3.1 Giao diện chương trình

Hình 4.3.2 Kết quả khi chạy chương trình

Tất cả các mô hình, đoạn mã chương trình đều nằm ở dự án license_plate_app[15]

Trong quá trình thực hiện đồ án chuyên ngành, nhóm chúng em đã tích lũy nhiều kinh nghiệm quý giá, nghiên cứu và áp dụng các mô hình học sâu để nhận dạng biển số xe Đây không chỉ là cơ hội để nâng cao kiến thức chuyên môn mà còn giúp phát triển kỹ năng làm việc độc lập và quản lý thời gian Kinh nghiệm này sẽ là hành trang quý giá cho sự nghiệp tương lai của chúng em.

Trong báo cáo này, chúng em đã đạt được các kết quả sau:

• Nghiên cứu mô hình Yolov8

• Ứng dụng mô hình Yolov8 để nhận dạng được biển số xe

• Đánh giá hiệu quả mô hình khi áp dụng

• Xây dựng được hệ thống nhận dạng biển số xe

Tuy nhiên, chúng em còn một số hạn chế:

• Mô hình chỉ tập trung vào nhận diện những xe đứng yên

Đối với các tập dữ liệu lớn, thời gian chạy có thể kéo dài và tiêu tốn nhiều tài nguyên Trong tương lai, chúng tôi dự định tiếp tục nghiên cứu các vấn đề này để cải thiện hiệu suất và tối ưu hóa quy trình.

• Nghiên cứu các mô hình mới trong nhận dạng biển số xe

• Nghiên cứu các phương pháp cải tiến hiệu suất cho hệ thống

Chúng em hy vọng rằng nghiên cứu của mình sẽ góp phần thúc đẩy các nghiên cứu về nhận dạng biển số xe trong tương lai

[1] Báo Điện tử Chính phủ, https://baochinhphu.vn/can-thiet-phat-trien-van-tai- khach-cong-cong-giam-un-tac-cho-do-thi-102231005180038574.htm, truy cập gần nhất 4/1/2024

[2] Du, Lixuan & Zhang, Rongyu & Wang, Xiaotian, Overview of two-stage object detection algorithms (2020), Journal of Physics: Conference Series 1544

[3] Ren, S., He, K., Girshick, R., & Sun, J Faster R-CNN: Towards Real-Time Object

Detection with Region Proposal Networks, (2015), arXiv preprint arXiv:1506.01497

[4] Ross Girshick and Jeff Donahue and Trevor Darrell and Jitendra Malik, Rich feature hierarchies for accurate object detection and semantic segmentation,

[5] Ross Girshick, Fast R-CNN, (2015), arXiv preprint arXiv:1504.08083

[6] Kaiming He and Georgia Gkioxari and Piotr Dollár and Ross Girshick, Mask R-

[7] Xuecheng Nie, Jianfeng Zhang, Shuicheng Yan, Jiashi Feng, Single-Stage Multi-

Person Pose Machines, (2019), arXiv preprint arXiv:1908.09220

[8] Juan Terven, Diana Cordova-Esparza, A Comprehensive Review of YOLO: From

YOLOv1 and Beyond, (2023), arXiv preprint arXiv:2304.00501

[9] Joseph Redmon, Ali Farhadi, YOLOv3: An Incremental Improvement, (2018), arXiv preprint arXiv:1804.02767

[10] Joseph Redmon, Ali Farhadi, YOLO9000: Better, Faster, Stronger, (2016), arXiv preprint arXiv:1612.08242.

Ngày đăng: 12/01/2024, 20:51

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w