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

xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông

99 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Tác giả Phạm Ngọc Việt
Người hướng dẫn TS. Lương Văn Thiện
Trường học Trường Đại Học Phenikaa
Chuyên ngành Công nghệ thông tin
Thể loại Đồ Án Tốt Nghiệp
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 99
Dung lượng 5,07 MB

Nội dung

Sinh viên thực hiện: PHẠM NGỌC VIỆT Lớp: K13-CNTT-KHDL - Tính cấp thiết của đề tài: Đây là một bài toán cấp thiết trong thời đại hiện nay, khi lưu lượng giao thông trên đường phố ngày c

Trang 1

Sinh viên: PHẠM NGỌC VIỆT

Mã số sinh viên: 19010042 Khóa: 13

Ngành: Công nghệ thông tin Hệ: Chính quy

Giảng viên hướng dẫn: TS Lương Văn Thiện

Hà Nội – Năm 2023

Copies for internal use only in Phenikaa University

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC PHENIKAA

Sinh viên: PHẠM NGỌC VIỆT

Mã số sinh viên: 19010042 Khóa: 13

Ngành: Công nghệ thông tin Hệ: Chính quy

Giảng viên hướng dẫn: TS Lương Văn Thiện

Hà Nội – Năm 2023

Copies for internal use only in Phenikaa University

Trang 3

NHẬN XÉT ĐỒ ÁN/KHÓA LUẬN TỐT NGHIỆP

CỦA GIẢNG VIÊN HƯỚNG DẪN

Giảng viên hướng dẫn: TS Lương Văn Thiện Bộ môn: Khoa học máy tính

Tên đề tài: Xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao

Trình bày rõ ràng phần mô tả dự án, phương pháp nghiên cứu, và kết quả

được thể hiện chi tiết Bảng biểu, hình ảnh minh họa và đồ thị được sử dụng một

cách hợp lý để trình bày thông tin

- Tính cấp thiết của đề tài:

Đây là một bài toán cấp thiết trong thời đại hiện nay, khi lưu lượng giao

thông trên đường phố ngày càng tăng và quản lý an toàn giao thông là một vấn đề

quan trọng, các cách xác định lưu lượng giao thông và phân loại đang được xử lý

bằng tay tiêu tốn rất nhiều nguồn lực và nhân lực Việc ứng dụng trí tuệ nhân tạo

để giải quyết vấn đề này có tiềm năng ứng dụng rộng rãi trong thực tế

- Mục tiêu của đề tài:

Mục tiêu của đề tài là xây dựng phát triển ứng dụng trí tuệ nhân tạo nhận

diện và đếm phương tiện giao thông sử dụng YOLOv8x và ByteTrack, từ đó kết

hợp thuật toán đếm để phân loại và xác định lưu lượng từng loại xe đi qua

- Nội dung của đề tài:

Bao gồm việc thu thập dữ liệu, phân tích xử lý dữ liệu, sử dụng YOLOv8x

và ByteTrack đào tạo mô hình, viết xác định thuật toán đếm phương tiện, xây dựng

ứng dụng và đánh giá kết quả

- Tài liệu tham khảo:

Báo cáo đã trình bày danh sách tài liệu tham khảo một cách đầy đủ và chính

xác, bao gồm các tài liệu liên quan đến trí tuệ nhân tạo, nhận diện đối tượng và

theo dõi phương tiện

Copies for internal use only in Phenikaa University

Trang 4

Mô tả phương pháp nghiên cứu rõ ràng, về dữ liệu đã được phân tích kỹ càng chia thành nhiều class Xác định được mô hình sử dụng là YOLOv8x kết hợp với ByteTrack Mô tả thuật toán đếm xe chi tiết có hình ảnh miêu tả cụ thể, đã có so sánh được kết quả thực tế và làm rõ được tầm quan trọng của dữ liệu qua việc so sánh khi tập dữ liệu thay đổi và vẫn sử dụng YOLOv8x Và thử nghiệm thêm nhiều

mô hình nhỏ hơn và kiểm tra được cả độ chính xác và tốc độ xử lý của từng mô hình

- Tính sáng tạo và ứng dụng:

Mặc dù việc nhận diện và đếm các phương tiện giao thông đã được nhiều người nhiều nơi trên thế giới thực hiện, nhưng việc nghiên cứu chia thành nhiều class kỹ hơn rõ ràng hơn, chính xác hơn sẽ hỗ trợ rất nhiều trong việc cải thiện quản lý giao thông thông minh và đảm bảo an ninh giao thông

Ứng dụng để giải quyết được rất nhiều vấn đề về phân luồng điều tiết giao thông, cung cấp thông tin dữ liệu tạo cơ sở để có thể cải thiện cơ sở hạ tầng,

II Nhận xét tinh thần và thái độ làm việc của sinh viên:

Việc thu thập, tạo dữ liệu cho dự án để training mô hình là một phần rất quan trọng ảnh hưởng rất lớn đến độ chính xác của mô hình Sinh viên đã thực hiện nghiêm túc việc làm đồ án với tinh thần trách nghiệm cao Sinh viên cho thấy sự

tỷ mỉ và kiên nhẫn trong việc thu thập và gán nhãn dữ liệu, đã hoàn thành và thực hiện đủ số lượng dữ liệu cần thiết để training mô hình

Sinh viên có thái độ tích cực trong khi làm đồ án, luôn sẵn sàng làm và học hỏi thêm và thử nghiệm phương pháp và kiểm tra mô hình Điều này giúp cải thiện

mô hình và đảm bảo rằng nó đáp ứng được yêu cầu đặt ra

III Kết quả đạt được:

Hoàn thành được mục tiêu đặt ra đã xây dựng được một website demo đơn giản sản phẩm của mình Kết quả thu được Tốt đạt độ chính xác lên đến 90 % so với kết quả thực tế

IV Kết luận: Đồng ý cho bảo vệ: Không đồng ý cho bảo vệ:

Hà Nội, ngày … tháng … năm 20…

GIẢNG VIÊN HƯỚNG DẪN

Trang 5

NHẬN XÉT ĐỒ ÁN/KHÓA LUẬN TỐT NGHIỆP

CỦA GIẢNG VIÊN PHẢN BIỆN

Giảng viên phản biện:

Bộ môn:

Tên đề tài:

Sinh viên thực hiện: PHẠM NGỌC VIỆT Lớp: K13-CNTT-KHDL

Giảng viên hướng dẫn: TS Lương Văn Thiện

Trang 6

III Ưu nhược điểm:

IV Kết luận: Đồng ý cho bảo vệ: Không đồng ý cho bảo vệ:

Trang 7

LỜI CAM ĐOAN

Tên tôi là: PHẠM NGỌC VIỆT

Ngành: Công nghệ thông tin

Tôi đã thực hiện đồ án/khóa luận tốt nghiệp với đề tài:

Xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông

Tôi xin cam đoan đây là đề tài nghiên cứu của riêng tôi và được sự hướng dẫn của: TS Lương Văn Thiện

Các nội dung nghiên cứu, kết quả trong đề tài này là trung thực và chưa được các tác giả khác công bố dưới bất kỳ hình thức nào Nếu phát hiện có bất kỳ hình thức gian lận nào tôi xin hoàn toàn chịu trách nhiệm trước pháp luật

GIẢNG VIÊN HƯỚNG DẪN

Trang 8

Lời cảm ơn

Trong suốt quá trình học tập và làm đồ án tốt nghiệp em luôn được sự quan tâm, giúp đỡ, hướng dẫn tận tình của các thầy, cô giảng viên trong khoa Công nghệ thông tin cùng sự giúp đỡ của bạn bè và đồng nghiệp

Lời đầu tiên em xin được bày tỏ lòng biết ơn sâu sắc đến Ban giám hiệu Trường Đại học Phenikaa, Ban chủ nhiệm khoa Công nghệ thông tin đã tận tình giúp đỡ em trong suốt thời gian học tập tại trường

Trong quá trình hoàn thành đồ án tốt nghiệp của mình, ngoài những cố gắng của bản thân, em sẽ không thể hoàn thành tốt được công việc của mình nếu không

có sự chỉ bảo và hướng dẫn tận tình của TS Lương Văn Thiện Em xin được gửi lời cảm ơn chân thành sâu sắc nhất tới thầy, người đã trực tiếp giúp đỡ và hướng dẫn em hoàn thành đồ án tốt nghiệp

Em cũng xin bày tỏ lòng biết ơn sâu sắc đến gia đình, người thân, bạn bè và đồng nghiệp đã giúp đỡ động viên em hoàn thành đồ án tốt nghiệp này

Em xin trân trọng cảm ơn!

Copies for internal use only in Phenikaa University

Trang 9

Mục Lục

Danh sách hình vẽ v

Danh sách bảng vii

Danh sách tên viết tắt viii

MỞ ĐẦU 1

CHƯƠNG 1: TỔNG QUAN CƠ SỞ LÝ THUYẾT 3

1.1 Giới thiệu tổng quan 3

1.2 Nền tảng lý thuyết 4

1.2.1 Trí tuệ nhân tạo 4

1.2.2 Ứng Dụng Của Trí Tuệ Nhân Tạo 4

1.2.3 Deep Learning 6

1.2.4 Object Detection 7

1.2.5 Object Tracking 9

1.2.6 Bytetrack 11

1.2.7 YOLO 13

1.2.8 DATA 18

1.2.9 FLASK - API 19

CHƯƠNG 2: PHÂN TÍCH BÀI TOÁN NHẬN DIỆN VÀ ĐẾM PHƯƠNG TIỆN GIAO THÔNG 21

2.1 Thực trạng hiện nay 21

2.2 Tổng quan về bài toán 22

2.3 Phân tích bài toán nhận diện phương tiện 24

2.4 Phân tích bài toán đếm phương tiện 30

CHƯƠNG 3: THỰC NGHIỆM, KẾT QUẢ VÀ PHÂN TÍCH 32

3.1 Giới thiệu bài toán thực nghiệm 32

3.1.1 Phát biểu bài toán 32

3.1.2 Thuật toán và hướng giải quyết 40

3.1.3 Ngôn ngữ lập trình và các thư viện cần thiết 49

3.2 Dữ liệu thực nghiệm 59

3.2.1 Thu thập dữ liệu 59

3.2.2 Tiền xử lý dữ liệu 59

3.2.3 Gán nhãn dữ liệu sử dụng LabelImg 61 Copies for internal use only in Phenikaa University

Trang 10

3.3 Kết quả và phân tích thực nghiệm 66

3.3.1 Với bài toán Nhận diện phương tiện giao thông 66

3.3.2 Với bài toán Đếm phương tiện giao thông 76

3.3.3 Demo trang web 79

CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 82

4.1. Kết luận 82

4.2 Hướng phát triển 83

TÀI LIỆU THAM KHẢO 84

Copies for internal use only in Phenikaa University

Trang 11

Danh sách hình vẽ

Hình 1.1: Deep Learning 6

Hình 1.2: Single Object Tracking 10

Hình 1.3: Multiple Object Tracking 10

Hình 1.4: ByteTrack 22

Hình 1.5: Khái quát về YOLO 14

Hình 1.6: Kiến trúc output của mô hình YOLO 15

Hình 1.7: Xác định anchor box cho một vật thể 16

Hình 3.1: loại xe car 32

Hình 3.2: loại xe TAXI 33

Hình 3.3: xe tải 2 trục nhỏ (LGV) 34

Hình 3.4: xe van (LGV) 34

Hình 3.5: xe bán tải (LGV) 35

Hình 3.6: Xe HGV (HGV) 35

Hình 3.7: xe tải nặng 3-4 trục (HGV) 36

Hình 3.8: xe VHGV 36

Hình 3.9: xe khách từ 13 đến dưới 30 chỗ (Coach) 37

Hình 3.10: xe buyt công cộng (BUS) 37

Hình 3.11: xe máy 38

Hình 3.12: xe đạp 38

Hình 3.13: Thuật toán toán đếm đường một/hai chiều 44

Hình 3.14: Chiều của ảnh 45

Hình 3.15: Thuật toán đếm tại nút giao 48

Hình 3.16: Thời gian YOLO phát triển ra mắt các phiên bản 52

Hình 3.17: So sánh số lượng tham số đầu vào (Parameters) và Tốc độ xử lý ảnh 53

Hình 3.18: Kiến trúc mô hình YOLOv8 54

Hình 3.19: các video dữ liệu gốc 60

Hình 3.20: Openshot Video Editor 60

Hình 3.21: ảnh sau khi đã được cắt 61

Hình 3.22: Download LabelImg.zip 63

Hình 3.23: Download Anaconda 63

Hình 3.24: Chạy LabelImg 64

Hình 3.25: Giao diện LabelImg 64

Hình 3.26: Thực hiện gán nhãn 64

Hình 3.27: Thư mục chứa ảnh và label của từng ảnh 65 Copies for internal use only in Phenikaa University

Trang 12

Hình 3.28: Confusion Matrix yolov8x 120 epoch 70 Hình 3.29: Một số hình ảnh cụ thể kết quả trả về khi chạy với mô hình mới 75 Hình 3.30: Video thực tế ở Việt Nam khi detect với mô hình yolov8x với

150 epoch 76

Copies for internal use only in Phenikaa University

Trang 13

Bảng 3.7: Biểu đồ thể hiện mối tương quan giữa số epoch và giá trị Loss, mAP tương ứng của mô hình yolov8x sau khi train với 120 epoch 70 Bảng 3.8: Biểu đồ Tổng hợp số lượng Dữ liệu thêm và chỉnh sửa và chia

Bảng 3.12: Bảng so sánh kết quả đếm tay và kết quả thực nghiệm sence ở

Copies for internal use only in Phenikaa University

Trang 14

Danh sách tên viết tắt

Networks

Copies for internal use only in Phenikaa University

Trang 15

MỞ ĐẦU

Vấn đề ùn tắc giao thông hiện nay ở các đô thị ngày càng trở nên phổ biến, gây bức xúc cho nhiều người dân Tình trạng vẫn xảy ra hàng ngày trở thành bài toán khó giải quyết, nguyên nhân chủ yếu là do số lượng xe ngày càng tăng, cơ sở

hạ tầng yếu kém, xử lý chưa tốt đối với phương tiện công cộng và do việc phân luồng không hợp lý

Vấn đề hiện nay về nhận diện và đếm phương tiện là sự phát triển và ứng dụng của công nghệ nhận diện hình ảnh và máy học trong việc đếm và phân loại các phương tiện di chuyển trên đường Đây là một lĩnh vực quan trọng trong lĩnh vực giao thông và an ninh, có thể áp dụng trong nhiều trường hợp, bao gồm:

Giao thông đô thị: Nhận diện và đếm phương tiện có thể giúp quản lý giao

thông đô thị hiệu quả hơn bằng cách cung cấp thông tin về lưu lượng xe cộ, thời gian tắc nghẽn, tốc độ trung bình và các thông số khác Thông tin này có thể được

sử dụng để điều phối giao thông, tăng cường an toàn đường bộ và cải thiện chất lượng cuộc sống của người dân

Theo dõi và quản lý giao thông công cộng: Nhận diện phương tiện trong

các hệ thống giao thông công cộng như xe buýt, xe điện, và xe đạp có thể cung cấp thông tin quan trọng về việc sử dụng và tải trọng của các phương tiện này Điều này có thể giúp cải thiện lịch trình, dự đoán và tránh tắc nghẽn, và nâng cao trải nghiệm đi lại của hành khách

An ninh và giám sát: Nhận diện và đếm phương tiện cũng có thể được sử

dụng để mục đích an ninh và giám sát Ví dụ, trong các trạm kiểm soát ra vào khu vực hoặc sân bay, việc phân loại và đếm phương tiện có thể giúp xác định các hành vi đáng ngờ và giúp đảm bảo an toàn cho khu vực quan tâm

Nghiên cứu và phân tích giao thông: Dữ liệu nhận diện và đếm phương

tiện có thể cung cấp thông tin quan trọng để nghiên cứu và phân tích giao thông Chúng có thể giúp xác định xu hướng di chuyển, phân tích tải trọng đường, và đưa

ra các dự đoán về nhu cầu vận chuyển trong tương lai Thông tin này có thể hỗ trợ quy hoạch đô thị và xây dựng hạ tầng giao thông hiệu quả

Copies for internal use only in Phenikaa University

Trang 16

Trước những ảnh hưởng nghiêm trọng của tắc nghẽn giao thông, ngày càng nhiều các biện pháp được nghiên cứu và áp dụng, việc ứng dụng khoa học máy tính càng được chú ý nhiều hơn Các nghiên cứu đã sử dụng trí tuệ nhân tạo (AI)

và máy học (Machine Learning) để thiết kế hệ thống thị giác máy tính thu thập và

xử lý dữ liệu nhận được từ các camera giao thông giúp theo dõi và thống kê lưu lượng của từng loại xe, từ đó tìm ra phương hướng tránh xung đột, ùn tắc tại các nút giao lộ

Copies for internal use only in Phenikaa University

Trang 17

CHƯƠNG 1: TỔNG QUAN CƠ SỞ LÝ THUYẾT

1.1 Giới thiệu tổng quan

Trong một thế giới ngày càng đông đúc và phức tạp, việc quản lý và điều tiết giao thông đang trở nên ngày càng quan trọng Tình hình giao thông kém hiệu quả không chỉ gây ra sự lãng phí thời gian của người tham gia giao thông mà còn tạo ra những tác động tiêu cực đến môi trường và an toàn đường đi Đây là bài toán thách thức mà ứng dụng AI có thể giải quyết

Mục tiêu chính của dự án này là xây dựng một website ứng dụng AI có khả năng nhận diện và đếm phương tiện giao thông Điều này có thể giúp tăng cường khả năng quản lý giao thông, dự đoán tình hình lưu lượng giao thông, và cải thiện

an toàn đường đi Đồng thời, dự án cũng nhằm tạo ra một công cụ hiệu quả cho việc giám sát và thu thập dữ liệu liên quan đến phương tiện giao thông, có thể ứng dụng trong nhiều lĩnh vực, từ quản lý đô thị đến nghiên cứu vận tải

Phạm vi của dự án bao gồm việc phát triển một website có khả năng nhận diện và đếm các loại phương tiện giao thông như ô tô, xe máy, xe buýt, xe tải, trên các tuyến đường phổ biến Sản phẩm này sẽ sử dụng các kỹ thuật và thuật toán AI như học sâu (deep learning) để xử lý hình ảnh và dữ liệu video

Để thực hiện dự án, em sẽ sử dụng ngôn ngữ lập trình Python và các thư viện phổ biến trong lĩnh vực trí tuệ nhân tạo như TensorFlow và OpenCV Ngoài

ra, dự án sẽ được xây dựng giao diện thực thi trên website nên sẽ có sử dụng thêm một vài ngôn ngữ như HTML, CSS, JS,

Copies for internal use only in Phenikaa University

Trang 18

1.2 Nền tảng lý thuyết

1.2.1 Trí tuệ nhân tạo (AI)

Trí tuệ nhân tạo hay AI [1] (tiếng Anh: artificial intelligence), đôi khi được gọi là trí thông minh nhân tạo, là trí thông minh được thể hiện bằng máy móc, trái ngược với trí thông minh tự nhiên của con người Thông thường, thuật ngữ “trí tuệ nhân tạo” thường được sử dụng để mô tả các máy chủ móc (hoặc máy tính) có khả năng bắt chước các chức năng “nhận thức” mà con người thường phải liên kết với tâm trí, như “học tập” và “giải quyết vấn đề”

1.2.2 Ứng Dụng Của Trí Tuệ Nhân Tạo

AI đã và đang có một tầm ảnh hưởng lớn đối với nhiều khía cạnh của cuộc sống Dưới đây là một số ứng dụng quan trọng của AI:

● Ô tô tự hành: AI được sử dụng để phát triển công nghệ ô tô tự hành, giúp giảm tai nạn giao thông và cải thiện việc đi lại

● Chăm sóc sức khỏe: AI có thể giúp chẩn đoán bệnh, phát triển thuốc mới

và tối ưu hóa quản lý bệnh viện

● Tài chính và giao dịch: AI được sử dụng để dự đoán thị trường tài chính, quản lý rủi ro và thậm chí giao dịch tài chính tự động

● Robotics: Trong ngành công nghiệp, AI đã giúp tạo ra các robot thông minh

có khả năng thực hiện nhiều nhiệm vụ khác nhau, từ sản xuất đến dịch vụ khách hàng

Nhận diện đối tượng trong ảnh

Nhận diện ảnh là quá trình sử dụng máy tính và các thuật toán để nhận biết và phân loại các đối tượng, biểu đồ hoặc mẫu trong hình ảnh hoặc video Quá trình này thường bao gồm các bước sau:

Thu thập dữ liệu: Để xây dựng các mô hình nhận diện ảnh, cần phải thu

thập một lượng lớn dữ liệu hình ảnh chứa các đối tượng hoặc mẫu cần nhận diện

Copies for internal use only in Phenikaa University

Trang 19

Tiền xử lý: Dữ liệu hình ảnh thường cần được tiền xử lý để loại bỏ nhiễu

và chuẩn hóa chúng trước khi đưa vào mô hình

Trích xuất đặc trưng: Máy tính cần phải học cách trích xuất những đặc

trưng quan trọng từ hình ảnh, chẳng hạn như cạnh, màu sắc, hình dạng, và text

Huấn luyện mô hình: Sử dụng các mẫu dữ liệu đã được gán nhãn, máy

tính sẽ học cách nhận diện các đối tượng hoặc mẫu này bằng cách xây dựng một mô hình học máy hoặc mạng nơ-ron sâu (deep learning)

Đánh giá và tinh chỉnh: Mô hình cần được kiểm tra trên dữ liệu mới để

đảm bảo tính hiệu quả và độ chính xác Nếu cần, mô hình sẽ được tinh

chỉnh thêm

Copies for internal use only in Phenikaa University

Trang 20

1.2.3 Deep Learning

Deep Learning [3] (học sâu) có thể được xem là một lĩnh vực con của Machine

Learning (học máy) – ở đó các máy tính sẽ học và cải thiện chính nó thông qua

các thuật toán Deep Learning được xây dựng dựa trên các khái niệm phức tạp hơn

rất nhiều, chủ yếu hoạt động với các mạng nơ-ron nhân tạo để bắt chước khả năng

tư duy và suy nghĩ của bộ não con người

Deep Learning [3] là một phương pháp của Machine Learning Mạng

nơ-ron nhân tạo tnơ-rong Deep Learning được xây dựng để mô phỏng khả năng tư duy

của bộ não con người

Một mạng nơ-ron bao gồm nhiều lớp (layer) khác nhau, số lượng layer càng

nhiều thì mạng sẽ càng “sâu” Trong mỗi layer là các nút mạng (node) và được

liên kết với những lớp liền kề khác Mỗi kết nối giữa các node sẽ có một trọng số

tương ứng, trọng số càng cao thì ảnh hưởng của kết nối này đến mạng nơ-ron càng

lớn

Mỗi nơ-ron sẽ có một hàm kích hoạt, về cơ bản thì có nhiệm vụ “chuẩn hoá”

đầu ra từ nơ-ron này Dữ liệu được người dùng đưa vào mạng nơ-ron sẽ đi qua tất

cả layer và trả về kết quả ở layer cuối cùng, gọi là output layer

Hình 1.1: Deep Learning

Copies for internal use only in Phenikaa University

Trang 21

1.2.4 Object Detection

Một trong những lĩnh vực quan trọng của Trí tuệ nhân tạo [1] (Artificial Intelligence) là thị giác máy (Computer Vision) Computer Vision là một lĩnh vực bao gồm các phương pháp thu nhận, xử lý ảnh kỹ thuật số, phân tích và nhận dạng các hình ảnh, phát hiện các đối tượng, tạo ảnh, siêu phân giải hình ảnh và nhiều hơn vậy Object Detection có lẽ là khía cạnh sâu sắc nhất của thị giác máy do số lần sử dụng trong thực tế

Object Detection đề cập đến khả năng của hệ thống máy tính và phần mềm để định vị các đối tượng trong một hình ảnh và xác định từng đối tượng Object Detection đã được sử dụng rộng rãi để phát hiện khuôn mặt, phát hiện xe, đếm số người đi bộ, hệ thống bảo mật và xe không người lái Có nhiều cách để nhận diện đối tượng có thể được sử dụng cũng như trong nhiều lĩnh vực thực hành Giống như mọi công nghệ khác, một loạt các ứng dụng sáng tạo và tuyệt vời của Object

Detection sẽ đến từ các lập trình viên và các nhà phát triển phần mềm

Bắt đầu sử dụng các phương pháp nhận diện đối tượng hiện đại trong các ứng dụng và hệ thống, cũng như xây dựng các ứng dụng mới dựa trên các phương pháp này Việc triển nhận diện đối tượng sớm liên quan đến việc sử dụng các thuật toán cổ điển, giống như các thuật toán được hỗ trợ trong OpenCV, thư viện computer vision phổ biến Tuy nhiên, các thuật toán cổ điển này không thể đạt được hiệu suất đủ để làm việc trong các điều kiện khác nhau

Việc áp dụng đột phát và nhanh chóng của deep learning vào năm 2012 đã đưa vào sự tồn tại các thuật toán và phương pháp phát hiện đối tượng như R-CNN, Fast-RCNN, Faster-RCNN, RetinaNet, SSD và YOLO Sử dụng các phương pháp

và thuật toán này, dựa trên deep learning và cũng dựa trên việc học máy đòi hỏi rất nhiều kiến thức về toán học và việc học sâu Có hàng triệu chuyên gia lập trình

và các nhà phát triển phần mềm muốn tích hợp và tạo ra các sản phẩm mới sử dụng object detection Nhưng công nghệ này xa tầm tay của họ và phức tạp để hiểu và sử dụng thực tế của nó

Copies for internal use only in Phenikaa University

Trang 22

● Các mô hình object detection dựa trên Region-Based Convolutional Neural Network (R-CNNs) gồm các lớp mô hình: R-CNN, Fast R-CNN và Faster R- CNN là những mô hình sơ khai,

có tốc độ xử lý chậm Thuật toán dựa trên 2 phần xử lý riêng biệt

là phát hiện các region proposal và phân loại hình ảnh

● Lớp các mô hình YOLO có tốc độ thời gian xử lý thực Là công nghệ state-of-art nhất hiện nay có tốc độ xử lý realtime, phát hiện được lên tới 9000 loại đối tượng

Copies for internal use only in Phenikaa University

Trang 23

1.2.5 Object Tracking

Object Tracking [2][5] là bài toán theo dõi một hoặc nhiều đối tượng chuyển động theo thời gian trong một video Hiểu một cách đơn giản nhất, nó là bài toán ở mức độ cao hơn so với object detection, khi đối tượng được xử lý không đơn giản là một hình ảnh mà là một chuỗi các hình ảnh, video

Object Tracking không phải cứ tách video ra thành các frame rồi áp dụng object detection với từng frame là đủ mà việc tracking bên cạnh việc xác định các bounding box, còn quan tâm đến khá nhiều yếu tố hoặc nhiễu khác nhau:

● ID của mỗi đối tượng cần đảm bảo luôn không đổi qua các frame

● Khi đối tượng bị che khuất hoặc biến mất sau 1 vài frame, hệ thống vẫn cần đảm bảo nhận diện lại được đúng ID khi đối tượng xuất hiện

● Các vấn đề liên quan đến tốc độ xử lí để đảm bảo realtime và tính ứng dụng cao

Object Tracking có thể chia thành 2 cách tiếp cận chính:

Single Object Tracking (SOT): Cái tên nói lên tất cả, Single Object Tracking

tập trung vào việc theo dõi một đối tượng duy nhất trong toàn bộ video Và tất nhiên,

để biết được cần theo dõi đối tượng nào, việc cung cấp một bounding box từ ban đầu

là việc bắt buộc phải có

Copies for internal use only in Phenikaa University

Trang 24

Hình 1.2: Single Object Tracking

Multiple Object Tracking (MOT): Multiple Object Tracking hướng tới các

ứng dụng có tính mở rộng cao hơn Bài toán cố gắng phát hiện đồng thời theo dõi tất

cả các đối tượng trong tầm nhìn, kể cả các đối tượng mới xuất hiện trong video Vì điều này, MOT thường là những bài toán khó hơn SOT và nhận được rất nhiều sự quan tâm của giới nghiên cứu

Hình 1.3: Multiple Object Tracking

Copies for internal use only in Phenikaa University

Trang 25

Một phương pháp Multiple Object Tracking cố gắng hướng đến việc theo dõi

tất cả các đối tượng xuất hiện trong khung hình bằng việc phát hiện và gắn định danh cho từng đối tượng Bên cạnh đó, các ID đã được gán cho 1 đối tượng cần đảm bảo nhất quán qua từng frame Những vấn đề đáng quan tâm ở đây:

Phát hiện "tất cả" các đối tượng: Đây vẫn luôn là vấn đề được quan tâm nhất

trong object detection và vẫn không ngừng có những phương pháp, những thuật toán cải thiện vấn đề này Trong object tracking, đặc biệt là detection based tracking, việc đảm bảo tính chính xác của quá trình detect cũng vô cùng quan trọng

● Đối tượng bị che khuất 1 phần hoặc toàn bộ: Khi 1 ID được gán cho 1 đối

tượng, ID cần đảm bảo nhất quán trong suốt video, tuy nhiên, khi một đối tượng

bị che khuất, nếu chỉ dựa riêng vào object detection là không đủ để giải quyết vấn đề này

● Đối tượng ra khỏi phạm vi của khung hình và sau đó xuất hiện lại: Nói về

chỉ số ID switches Cần giải quyết tốt vấn đề nhận dạng lại đối tượng kể cả việc che khuất hay biến mất để giảm số lượng ID switches xuống mức thấp nhất có thể

● Các đối tượng có quỹ đạo chuyển động giao nhau hoặc chồng chéo lên nhau: Việc các đối tượng có quỹ đạo chồng chéo lên nhau cũng có thể dẫn đến

hậu quả gán nhầm ID cho các đối tượng

1.2.6 Bytetrack

ByteTrack [11] là một phương pháp tiên tiến trong lĩnh vực nhận dạng và theo dõi đối tượng trên video Được phát triển bởi nhóm nghiên cứu của ByteDance, ByteTrack sử dụng kỹ thuật theo dõi điểm đặc trưng (feature point tracking) và mạng nơ-ron YOLO [6] (You Only Look Once) hoặc Detectron2 để đạt được hiệu suất cao trong việc nhận dạng và theo dõi các đối tượng trong video

Thuật toán ByteTrack bắt đầu bằng việc sử dụng mạng nơ-ron YOLO như một

bộ phân loại và nhận dạng đối tượng Mạng YOLO chia video thành các ô lưới (grid)

và tìm kiếm các đối tượng trong từng ô lưới YOLO có khả năng phát hiện đối tượng nhanh chóng và chính xác bằng cách dự đoán bounding box và xác suất của các lớp đối tượng

Copies for internal use only in Phenikaa University

Trang 26

Tuy nhiên, để giải quyết vấn đề theo dõi đối tượng liên tục trong video, ByteTrack sử dụng kỹ thuật theo dõi điểm đặc trưng Phương pháp này sử dụng các điểm đặc trưng để xác định vị trí và theo dõi các đối tượng trong video theo thời gian Các điểm đặc trưng được chọn để đại diện cho các đặc tính quan trọng của đối tượng,

ví dụ như góc mắt, mũi, miệng và các điểm đặc trưng khác

Quá trình theo dõi điểm đặc trưng trong ByteTrack bao gồm ba bước chính: khởi tạo điểm đặc trưng ban đầu, theo dõi trong khung hình tiếp theo và cập nhật vị trí điểm đặc trưng Thuật toán sử dụng các phép biến đổi hình học và các thuật toán tối ưu để tìm kiếm vị trí chính xác của các điểm đặc trưng trong khung hình tiếp theo Việc theo dõi này giúp đảm bảo rằng các đối tượng không bị mất trong quá trình xử lý video

Hình 1.4: ByteTrack

(nguồn: https://github.com/ifzhang/ByteTrack)

ByteTrack cho thấy tốc độ xử lý và độ chính xác của ByteTrack cao nhất trong các thuật toán tracking hiện tại: TransMOT, ReMOT, CorTracker, FairMOT, ByteTrack có điểm MOTA cao hơn cả trên 80 và tốc độ luôn đạt trên 30PFS

Có những lý do khác để ByteTrack được lựa chọn trong việc kết hợp giải quyết bài toán tracking trong YOLOv8[7][8]

Copies for internal use only in Phenikaa University

Trang 27

Khả Năng Theo Dõi Đối Tượng Đa Đối Tượng: ByteTrack có khả năng theo dõi

đồng thời nhiều đối tượng khác nhau, điều này rất hữu ích khi đếm và theo dõi nhiều loại phương tiện giao thông khác nhau như ô tô, xe máy, xe đạp, và xe buýt

Điều Kiện Ánh Sáng Thay Đổi: ByteTrack có khả năng làm việc hiệu quả trong

các điều kiện ánh sáng thay đổi, ví dụ như khi xe đi vào hoặc ra khỏi bóng râm, hoặc trong điều kiện thời tiết khác nhau

Ổn Định Theo Thời Gian: Thuật toán ByteTrack được thiết kế để duy trì sự ổn

định trong quá trình theo dõi theo thời gian Điều này đảm bảo rằng phương tiện được theo dõi một cách liên tục và không bị mất theo dõi sau khi đi ra khỏi khung hình hoặc

bị che khuất

1.2.7 YOLO

Yolo [6] [13] là một mô hình mạng CNN cho việc phát hiện, nhận dạng, phân loại đối tượng Yolo được tạo ra từ việc kết hợp giữa các convolutional layers và connected layers Trong đó các convolutional layers sẽ trích xuất ra các feature của ảnh, còn full-connected layers sẽ dự đoán ra xác suất đó và tọa độ của đối tượng

So với họ mô hình R-CNN, YOLO và SSD có tốc độ được cải thiện rất nhiều Các thuật toán này coi việc phát hiện đối tượng như một bài toán hồi quy, chỉ dùng một

mô hình để xác định đồng thời tọa độ đường bao và xác suất của nhóm đối tượng tương ứng Nếu để ý, tên của các mô hình này đều nói đến việc chúng chỉ dùng mô hình 1 bước thay vì mô hình 2 bước xuất hiện trước đó (You Only Look Once - Bạn chỉ nhìn một lần và Single Shot Detectors - máy phát hiện chỉ dùng một ảnh)

Copies for internal use only in Phenikaa University

Trang 28

Hình 1.5: Khái quát về YOLO

Về cơ bản, YOLO chia ảnh đầu vào thành các ô nhỏ, mô hình sẽ dự đoán xác xuất đối tượng trong các đường bao (bounding-box) xung quanh mỗi ô nhỏ này Những đường bao có xác xuất cao sẽ được giữ lại và sử dụng cho nhiệm vụ xác định vị trí của đối tượng trong ảnh

Copies for internal use only in Phenikaa University

Trang 29

OUTPUT của YOLO

Output của mô hình YOLO là một véc tơ sẽ bao gồm các thành phần:

Trong đó:

● : là xác suất dự báo vật thể xuất hiện trong bounding box

● : giúp xác định bounding box Trong đó là tọa độ tâm và

là kích thước rộng, dài của bounding box

● là véc tơ phân phối xác suất dự báo của các classes

Việc hiểu output khá là quan trọng để cấu hình tham số chuẩn xác khi huấn luyện model qua các open source như darknet Như vậy output sẽ được xác định theo số lượng

classes theo công thức (n_class + 5) Nếu huấn luyện 80 classes thì sẽ có output là 85 Trường hợp áp dụng 3 anchors/cell thì số lượng tham số output sẽ là: (n_class + 5) x

3 = 85 x 3 = 255

Hình 1.6: Kiến trúc output của mô hình YOLO

Copies for internal use only in Phenikaa University

Trang 30

Hình ảnh gốc là một feature map kích thước 13x13 Trên mỗi một cell của feature map, lựa chọn ra 3 anchor boxes với kích thước khác nhau lần lượt là Box 1, Box 2, Box 3 sao cho tâm của các anchor boxes trùng với cell Khi đó output của YOLO

là một véc tơ concatenate của 3 bounding boxes Các attributes của một bounding box được mô tả như dòng cuối cùng trong hình

Anchor box

Để tìm được bounding box cho vật thể, YOLO sẽ cần các anchor box làm cơ sở ước lượng Những anchor box này sẽ được xác định trước và sẽ bao quanh vật thể một cách tương đối chính xác Sau này thuật toán regression bounding box sẽ tinh chỉnh lại anchor box để tạo ra bounding box dự đoán cho vật thể Trong một mô hình YOLO:

● Mỗi một vật thể trong hình ảnh huấn luyện được phân bố về một anchor box Trong trường hợp có từ 2 anchor boxes trở lên cùng bao quanh vật thể thì ta sẽ xác định anchor box mà có IoU với ground truth bounding box là cao nhất

Hình 1.7: Xác định anchor box cho một vật thể

Từ Cell i ta xác định được 3 anchor boxes viền xanh như trong hình Cả 3 anchor

boxes này đều giao nhau với bounding box của vật thể Tuy nhiên chỉ anchor box có đường viền dày nhất màu xanh được lựa chọn làm anchor box cho vật thể bởi nó có IoU so với ground truth bounding box là cao nhất

Copies for internal use only in Phenikaa University

Trang 31

● Mỗi một vật thể trong hình ảnh huấn luyện được phân bố về một cell trên feature map mà chứa điểm mid point của vật thể Chẳng hạn như hình chú chó trong

Hình B5 sẽ được phân về cho cell màu đỏ vì điểm mid point của ảnh chú chó

rơi vào đúng cell này Từ cell ta sẽ xác định các anchor boxes bao quanh hình ảnh chú chó

Như vậy khi xác định một vật thể ta sẽ cần xác định 2 thành phần gắn liền với

nó là (cell, anchor box) Không chỉ riêng mình cell hoặc chỉ mình anchor box

Copies for internal use only in Phenikaa University

Trang 32

1.2.8 DATA

Data là yếu tố quan trọng nhất trong việc huấn luyện mô hình học máy Nguồn

dữ liệu chất lượng và đa dạng cung cấp thông tin cần thiết để mô hình hiểu và tổ chức Tầm quan trọng của dữ liệu không chỉ nằm ở số lượng, mà còn ở chất lượng hình ảnh

và tính chất của dữ liệu

Số lượng dữ liệu đủ lớn là yếu tố quyết định thành công của mô hình Một lượng

dữ liệu lớn hỗ trợ mô hình trong việc học được nhiều mẫu, nhận biết các mẫu hiếm và phát hiện ra sự biến đổi Điều này giúp tăng tính tổng quát và khả năng dự đoán của mô hình

Tuy nhiên, không chỉ số lượng, tính chất của dữ liệu cũng rất quan trọng Dữ liệu phải phản ánh đầy đủ các trường hợp và biến thể có thể xảy ra trong thực tế Nếu

dữ liệu không đủ đại diện, mô hình có thể gặp khó khăn trong việc xử lý các trường hợp mới Đồng thời, dữ liệu phải được chính xác, không chứa nhiễu hoặc thông tin sai lệch để tránh làm sai lệch mô hình

Sự đa dạng của dữ liệu cũng quan trọng Dữ liệu đa dạng về các thuộc tính, đặc trưng và phân phối giúp mô hình học được sự biến đổi và tương quan giữa các đặc điểm Điều này tạo ra một mô hình mạnh mẽ và linh hoạt, có khả năng áp dụng cho nhiều bối cảnh khác nhau

Việc sử dụng dữ liệu chất lượng và đa dạng trong quá trình huấn luyện mô hình

có nhiều lợi ích Trước hết, nó giúp mô hình học được các quy tắc và mẫu phức tạp hơn Dữ liệu cung cấp thông tin và ví dụ cần thiết để mô hình hiểu và dự đoán đúng các tình huống mới

Thứ hai, dữ liệu tốt giúp tránh hiện tượng overfitting, tức là mô hình quá tập trung vào các chi tiết không quan trọng hoặc nhiễu trong dữ liệu huấn luyện Overfitting

có thể xảy ra khi mô hình không có đủ thông tin để hiểu và tổng quát hóa các quy luật

và mẫu trong dữ liệu mà thay vào đó chỉ ghi nhớ các thông tin cụ thể trong tập huấn luyện Điều này dẫn đến khả năng dự đoán kém trên dữ liệu mới và không quan tâm đến các đặc trưng quan trọng

Sử dụng dữ liệu đa dạng giúp mô hình hạn chế overfitting bằng cách giúp mô hình tiếp cận và hiểu được nhiều biến thể, đặc điểm và trường hợp Mô hình được huấn Copies for internal use only in Phenikaa University

Trang 33

luyện trên nhiều loại dữ liệu sẽ học được các quy tắc và mẫu tổng quát hơn, và do đó

có khả năng dự đoán tốt hơn trên dữ liệu mới

Thêm vào đó, dữ liệu cũng có vai trò quan trọng trong quá trình kiểm tra và đánh giá mô hình Sử dụng một tập dữ liệu độc lập để kiểm tra mô hình giúp đánh giá khả năng tổng quát hóa của nó Nếu mô hình hiệu quả trên dữ liệu kiểm tra mà không được

sử dụng trong quá trình huấn luyện, thì có thể tin tưởng vào khả năng dự đoán của mô hình trên dữ liệu mới

Dữ liệu đóng vai trò then chốt trong việc huấn luyện mô hình máy học Chất lượng và đa dạng của dữ liệu ảnh hưởng trực tiếp đến hiệu suất và khả năng tổng quát hóa của mô hình Vì vậy, để đạt được kết quả tốt, cần đảm bảo rằng dữ liệu được thu thập và sử dụng một cách cẩn thận và có sự đa dạng đầy đủ để mô hình có thể hiểu và tổng quát được môi trường thực tế

Dữ liệu trong bài toán được sinh ra từ các video giao thông thực tế Gồm 9 loại phương tiện cơ bản: xe máy, xe đạp, xe con, xe taxi, xe khách, xe bus, xe van/xe tải nhẹ, xe tải nặng và xe siêu trọng

Tập dữ liệu được thu thập từ nhiều nơi, nhiều góc độ khác nhau, đủ các loại hình phương tiện từ xe máy cho đến xe siêu trọng

1.2.9 FLASK - API

FLASK là một framework hỗ trợ xây dựng các API trên nền tảng python

Flask là framework không quá nhanh Nếu làm việc nhiều với server, có nhiều ngôn ngữ thích hợp hơn mà các chuyên gia hay dùng đó là vuejs, golang, erlang Ngoài

ra Flask cũng có ưu điểm đó là tính bảo mật của nó rất cao, code đẹp và dễ hiểu

Về định nghĩa của API thì API được coi như chất liệu để làm nên một website

Khi tương tác với một ứng dụng là tương tác với dữ liệu của ứng dụng đó được render trong một template html Dữ liệu đó được truyền đến thiết bị của mình thông qua chính API API là chiếc cầu nối dữ liệu qua lại giữa client và server và thay đổi những gì mà nhìn thấy trên front end Các phương thức tương tác dữ liệu trên API chính bao gồm:

GET, POST, PUT, PATCH, DELETE

Copies for internal use only in Phenikaa University

Trang 34

● GET - Read: Client nhận dữ liệu từ server

● POST - Create: Client gửi dữ liệu lên server Server xử lý dữ liệu và trả về một kết quả

● PUT – Update: Cập nhật dữ liệu

● DELETE – Delete: Xóa dữ liệu

Flask là một micro Website framework được viết bằng Python, không yêu cầu tool hay thư viện cụ thể nào “Micro” không có nghĩa là thiếu công dụng mà “micro” theo triết lý thiết kế là cung cấp một lõi chức năng đầy đủ, ngắn gọn và đơn giản nhất cho ứng dụng Website tuy vậy vẫn có thể mở rộng bất cứ lúc nào

Flask luôn hỗ trợ các thành phần tiện ích mở rộng cho ứng dụng như tích hợp cơ

sở dữ liệu, xác thực biểu mẫu, xử lý upload, các công nghệ xác thực, template, Email, RESTful…, chỉ khác là khi nào muốn thì mới đưa vào Có thể tập trung xây dựng Web application ngay từ đầu trong một khoảng thời gian rất ngắn và có thể phát triển quy

mô của ứng dụng tùy theo yêu cầu

Bảng 1.1: Cấu trúc Luồng xử lý

Copies for internal use only in Phenikaa University

Trang 35

CHƯƠNG 2: PHÂN TÍCH BÀI TOÁN NHẬN DIỆN VÀ ĐẾM PHƯƠNG TIỆN

GIAO THÔNG 2.1 Thực trạng hiện nay

Thực Trạng:

Để hiểu rõ thực trạng của việc đếm số lượng phương tiện qua nút giao thông và tại đường 1 hoặc 2 chiều, cần thực hiện thu thập dữ liệu từ nút giao thông cụ thể và các tuyến đường liên quan trong một khoảng thời gian đủ dài và đại diện Dữ liệu cần thu thập có thể bao gồm:

● Số lượng phương tiện qua nút giao thông theo từng loại (ô tô cá nhân, taxi, xe buýt, xe máy, xe đạp)

● Thời gian và tần suất đèn giao thông chuyển đổi

● Tình trạng tắc nghẽn giao thông và nguyên nhân gây ra tắc nghẽn

Thông qua việc thu thập và phân tích dữ liệu này, nghiên cứu có thể xác định thực trạng về tình hình giao thông tại nút giao thông và đường 1 hoặc 2 chiều, bao gồm tần suất sử dụng đường, dòng xe chủ yếu và những vấn đề giao thông cụ thể

Kiểm Chứng:

Sau khi thu thập dữ liệu thực trạng, bước tiếp theo là kiểm chứng thông qua việc

so sánh dữ liệu này với kết quả của hệ thống nhận diện và đếm phương tiện Điều này đòi hỏi:

● Phân tích độ chính xác của hệ thống nhận diện bằng cách so sánh kết quả với dữ liệu thực trạng

● Tính toán tỷ lệ lỗi hoặc sai số giữa dữ liệu thu thập thực tế và kết quả từ hệ thống nhận diện

● Xác định nguyên nhân của các sai lệch nếu có và đánh giá tác động của chúng lên hiệu suất hệ thống

Kiểm chứng đảm bảo rằng hệ thống nhận diện có khả năng chính xác đếm số lượng phương tiện và làm cho nghiên cứu trở nên có tính xác thực

Copies for internal use only in Phenikaa University

Trang 36

● Xác định các mẫu và xu hướng trong dữ liệu đếm phương tiện, ví dụ, tần suất cao điểm, biến động hàng ngày, và tác động của các sự kiện đặc biệt

● Đánh giá tác động của luồng giao thông lên hiệu suất hệ thống đường và cơ sở

hạ tầng

Phân tích này giúp tạo ra cái nhìn sâu hơn về tình hình thực tế và hỗ trợ trong việc đề xuất giải pháp cải thiện giao thông và quản lý luồng xe

2.2 Tổng quan về bài toán

Bài toán nhận diện và đếm phương tiện giao thông là một thách thức quan trọng trong lĩnh vực Trí Tuệ Nhân Tạo (AI) và công nghệ thông tin Việc quản lý giao thông trở thành một nhiệm vụ phức tạp và cấp bách Không chỉ để cải thiện hiệu suất và an toàn giao thông, mà còn để đảm bảo quản lý tài nguyên môi trường

Bài toán nhận diện và đếm phương tiện giao thông yêu cầu khả năng xác định

và đếm số lượng phương tiện giao thông trên các tuyến đường và nơi công cộng Điều này có đa bao gồm việc nhận diện các loại phương tiện như ô tô, xe máy, xe bus, xe tải, Copies for internal use only in Phenikaa University

Trang 37

xe đạp Mục tiêu chính của bài toán này là tự động hóa quá trình đếm và ghi nhận dữ liệu mà trước đây thường được thực hiện thủ công bởi con người

Bài toán nhận diện và đếm phương tiện giao thông đòi hỏi một mô hình có khả năng xử lý hình ảnh trong thời gian ngắn và độ chính xác cao Dưới là một số lý do chọn mô hình YOLO (You Only Look Once) cho bài toán nhận diện và đếm phương tiện giao thông

Thời Gian Thực:

YOLO được thiết kế để xử lý hình ảnh trong video và cả thời gian thực, tức là

nó có khả năng nhận diện đối tượng trong thời gian gần như thực sự (real-time) Điều này rất quan trọng trong bài toán nhận diện và đếm phương tiện giao thông nếu muốn thông tin về lưu lượng giao thông cần được cập nhật liên tục và kịp thời Với khả năng

xử lý nhanh chóng của YOLO, việc theo dõi các phương tiện giao thông trở nên hiệu quả và chính xác

Độ Chính Xác và Đa Dạng Loại Phương Tiện:

YOLO được phát triển với mục tiêu cải thiện độ chính xác của việc nhận diện đối tượng Điều này đặc biệt quan trọng trong bài toán nhận diện và đếm phương tiện giao thông, vì có nhiều loại phương tiện khác nhau, từ ô tô và xe máy đến xe bus và xe tải YOLO có khả năng xác định và phân loại một loạt các đối tượng với độ chính xác cao, giúp đảm bảo rằng tất cả các loại phương tiện được đếm đúng và đủ

Tích Hợp Dễ Dàng:

YOLO có sẵn dưới dạng mã nguồn mở và có nhiều phiên bản và biến thể khác nhau được cộng đồng phát triển Điều này làm cho việc tích hợp YOLO vào ứng dụng trở nên dễ dàng hơn Và có thể tìm thấy nhiều tài liệu và tài liệu tham khảo trực tuyến

để hướng dẫn về cách triển khai YOLO trên nhiều nền tảng khác nhau

Tích Hợp Với Hệ Thống Giao Thông Hiện Có:

Hầu hết các hệ thống quản lý giao thông và an ninh đô thị đã tích hợp sẵn các hệ thống camera và cơ sở hạ tầng để giám sát giao thông YOLO có thể tích hợp dễ dàng vào các hệ thống này thông qua giao thức liên kết dữ liệu (API), cho phép sử dụng dữ liệu từ các nguồn hiện có để thực hiện nhận diện và đếm phương tiện

Copies for internal use only in Phenikaa University

Trang 38

Hiệu Suất Tối Ưu:

Một trong những lợi ích lớn của YOLO là hiệu suất tối ưu Nó có khả năng xử

lý hình ảnh nhanh chóng trên các thiết bị có tài nguyên tính toán hạn chế, bao gồm cả các thiết bị nhúng và máy tính đám mây Điều này giúp giảm thiểu yêu cầu về phần cứng và tối ưu hóa thời gian thực hiện

Sử Dụng Cộng Đồng Phát Triển Mạnh Mẽ:

YOLO có một cộng đồng phát triển mạnh mẽ, với nhiều tài liệu, tài liệu tham khảo và hỗ trợ từ cộng đồng Điều này đồng nghĩa với việc có sẵn nhiều tài nguyên và giải pháp cho việc triển khai và tối ưu hóa YOLO cho bài toán nhận diện và đếm phương tiện giao thông

2.3 Phân tích bài toán nhận diện phương tiện

Nghiên cứu về các loại phương tiện giao thông trên đường bộ, bao gồm:

● Ô tô cá nhân (car);

● Taxi;

● Xe buýt (bus);

● Xe chở khách (coach);

● Xe tải nhẹ (LGV - Light Goods Vehicle);

● Xe tải nặng (HGV - Heavy Goods Vehicle);

● Xe tải cỡ lớn (VHGV - Very Heavy Goods Vehicle)

● Xe máy cá nhân (Motor)

● Xe đạp (Bicycle)

Các loại này là một phần quan trọng của lĩnh vực quản lý giao thông Việc hiểu

và theo dõi các loại phương tiện này có ý nghĩa quan trọng trong việc tối ưu hóa luồng Copies for internal use only in Phenikaa University

Trang 39

giao thông, cải thiện an ninh đô thị, và thúc đẩy sự phát triển bền vững của các đô thị hiện đại

Đề tài nghiên cứu sẽ tập trung vào việc phát triển và triển khai hệ thống nhận diện và đếm phương tiện giao thông qua một nút giao thông cụ thể

Mục tiêu chính là phân loại và đếm số lượng phương tiện tham gia giao thông

(ví dụ: ô tô cá nhân, taxi, xe buýt, xe máy, xe đạp) trong phạm vi nút giao thông và trên đường 1 hoặc 2 chiều tại nút đó

Nghiên cứu sẽ xem xét các phương pháp và công nghệ nhận diện hình ảnh hoặc video, chẳng hạn như mạng nơ-ron YOLO (You Only Look Once) hoặc các phương pháp khác của Trí Tuệ Nhân Tạo để thực hiện

Mục tiêu cuối cùng của nghiên cứu là xây dựng một hệ thống tự động hoặc bán

tự động có khả năng nhận diện và đếm số lượng phương tiện giao thông tại nút giao thông và trên đường 1 hoặc 2 chiều, cung cấp thông tin hữu ích cho quản lý giao thông

và nghiên cứu về tải trọng đường

Copies for internal use only in Phenikaa University

Trang 40

● Ô tô Cá Nhân (Car):

Mô tả: Ô tô cá nhân là loại phương tiện giao thông phổ biến nhất trên đường bộ Chúng được thiết kế để chở một hoặc một vài người và hàng hóa

Quan Trọng: Ô tô cá nhân đóng vai trò quan trọng trong luồng giao thông đô thị

và phản ánh xu hướng di chuyển cá nhân Nghiên cứu về ô tô cá nhân giúp cải thiện quản lý đô thị và đề xuất giải pháp giao thông thông minh

Không Gian: Phạm vi nghiên cứu về không gian cho ô tô cá nhân liên quan đến các tuyến đường, thành phố, và hệ thống giao thông nơi các ô tô cá nhân di chuyển

Thời Gian: Nghiên cứu về ô tô cá nhân xem xét thời gian trong việc phân tích

dữ liệu giao thông, dự đoán tắc nghẽn, và tối ưu hóa lịch trình lái xe

Không Gian: Phạm vi nghiên cứu về không gian liên quan đến vùng hoạt động của các dịch vụ taxi trong thành phố và các điểm đón và trả khách

Thời Gian: Nghiên cứu về taxi cũng quan tâm đến thời gian để dự đoán cao điểm, tối ưu hóa lịch trình, và cải thiện thời gian phục vụ khách hàng

Không Gian: Phạm vi nghiên cứu về không gian cho xe buýt bao gồm mạng lưới tuyến đường buýt và các trạm dừng

Copies for internal use only in Phenikaa University

Ngày đăng: 17/07/2024, 10:42

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] WINSTON, Patrick Henry. Artificial intelligence. Addison-Wesley Longman Publishing Co., Inc., 1984 Sách, tạp chí
Tiêu đề: Artificial intelligence
[3] Goodfellow, Ian, Yoshua Bengio, and Aaron Courville. Deep learning. MIT press, 2016 Sách, tạp chí
Tiêu đề: Deep learning
[4] AMIT, Yali; FELZENSZWALB, Pedro; GIRSHICK, Ross. Object detection. Computer Vision: A Reference Guide, 2020, 1-9 Sách, tạp chí
Tiêu đề: Computer Vision: A Reference Guide
[5] YILMAZ, Alper; JAVED, Omar; SHAH, Mubarak. Object tracking. ACM Computing Surveys, 2006, 38.4: 13 Sách, tạp chí
Tiêu đề: ACM Computing Surveys
[6] JIANG, Peiyuan, et al. A Review of Yolo algorithm developments. Procedia Computer Science, 2022, 199: 1066-1073 Sách, tạp chí
Tiêu đề: Procedia Computer Science
[9] GRINBERG, Miguel. Flask web development: developing web applications with python. " O'Reilly Media, Inc.", 2018 Sách, tạp chí
Tiêu đề: O'Reilly Media, Inc
[10] MUFID, Mohammad Robihul, et al. Design an mvc model using python for flask framework development. In: 2019 International Electronics Symposium (IES). IEEE, 2019. p. 214-219 Sách, tạp chí
Tiêu đề: 2019 International Electronics Symposium (IES)
[11] ZHANG, Yifu, et al. Bytetrack: Multi-object tracking by associating every detection box. In: European Conference on Computer Vision. Cham: Springer Nature Switzerland, 2022. p. 1-21 Sách, tạp chí
Tiêu đề: European Conference on Computer Vision
[2] Yilmaz, A., Javed, O., and Shah, M. 2006. Object tracking: A survey. ACM Comput. Surv. 38, 4, Article 13 (Dec. 2006), 45 pages. DOI = 10.1145/1177352.1177355 http://doi.acm.org/10.1145/1177352.1177355 Link
[7] Ultralytics, NEW - YOLOv8 in PyTorch, 2023 [Trực tuyến] https://github.com/ultralytics/ultralytics Link
[8] Ultralytics, Ultralytics YOLOv8 Docs, 2023 [Trực tuyến] https://docs.ultralytics.com/ Link
[12] HumanSignal, LabelImg is now part of the Label Studio community, 2018, [Trực tuyến] https://github.com/HumanSignal/labelImg Link
[13] phamdinhkhanh, YOLO You Only Look Once, 09 Mar 2020, [Trực tuyến], https://phamdinhkhanh.github.io/2020/03/09/DarknetAlgorithm.html#5-anchor-box Link
[14] Shyiskawaii, Mô Hình Nhận Dạng Vật Thể YOLOv8, 2023, [Trực tuyến] https://hackmd.io/@58ZC49ZfS86wYX--LRGGOg/ViewpermCopies for internal use only in Phenikaa University Link

HÌNH ẢNH LIÊN QUAN

Hình 1.2: Single Object Tracking. - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 1.2 Single Object Tracking (Trang 24)
Hình 1.3: Multiple Object Tracking. - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 1.3 Multiple Object Tracking (Trang 24)
Hình 1.4: ByteTrack. - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 1.4 ByteTrack (Trang 26)
Hình 3.2: loại xe TAXI. - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 3.2 loại xe TAXI (Trang 47)
Hình 3.4: xe van (LGV). - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 3.4 xe van (LGV) (Trang 48)
Hình 3.3: xe tải 2 trục nhỏ (LGV). - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 3.3 xe tải 2 trục nhỏ (LGV) (Trang 48)
Hình 3.7: xe tải nặng 3-4 trục (HGV). - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 3.7 xe tải nặng 3-4 trục (HGV) (Trang 50)
Hình 3.10: xe buyt công cộng (BUS). - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 3.10 xe buyt công cộng (BUS) (Trang 51)
Hình 3.13: Thuật toán toán đếm đường một/hai chiều. - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 3.13 Thuật toán toán đếm đường một/hai chiều (Trang 58)
Hình 3.15: Thuật toán đếm tại nút giao. - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 3.15 Thuật toán đếm tại nút giao (Trang 62)
Bảng 3.1: Bảng Thống kê so sánh các mô hình yolov8 detection với tập dữ liệu - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Bảng 3.1 Bảng Thống kê so sánh các mô hình yolov8 detection với tập dữ liệu (Trang 67)
Hình 3.18: Kiến trúc mô hình YOLOv8. - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 3.18 Kiến trúc mô hình YOLOv8 (Trang 68)
Hình 3.19: các video dữ liệu gốc. - xây dựng ứng dụng trí tuệ nhân tạo nhận diện và đếm phương tiện giao thông
Hình 3.19 các video dữ liệu gốc (Trang 74)

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

TÀI LIỆU LIÊN QUAN

w