Đồ án HCMUTE: Ứng dụng xử lý ảnh vào mô hình điều khiển đèn giao thông ngã tư

Đồ án nghiên cứu hcmute ứng dụng xử lý ảnh vào mô hình điều khiển đèn giao thông ngã tư, áp dụng công nghệ tiên tiến, tối ưu giải pháp kỹ thuật cho bài toán .

Người đăng

Ẩn danh

Thể loại

Đồ Án Tốt Nghiệp

2021

113
3
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CAM ĐOAN

LỜI CẢM ƠN

1. CHƯƠNG 1: TỔNG QUAN

1.1. ĐẶT VẤN ĐỀ

1.2. NỘI DUNG NGHIÊN CỨU

1.3. GIỚI HẠN

1.4. BỐ CỤC

2. CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

3. CHƯƠNG 3

4. CHƯƠNG 4: THI CÔNG HỆ THỐNG

5. CHƯƠNG 5: KẾT QUẢ, NHẬN XÉT VÀ ĐÁNH GIÁ

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

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Xử lý ảnh và Nhận diện ảnh trong điều khiển đèn giao thông thông minh

Đồ án tốt nghiệp "Ứng dụng xử lý ảnh vào mô hình điều khiển đèn giao thông ngã tư" tại HCMUTE tập trung vào việc áp dụng xử lý ảnhnhận diện ảnh để cải thiện hệ thống điều khiển đèn giao thông. Nghiên cứu sử dụng kỹ thuật object detection, cụ thể là thuật toán YOLO, để phát hiện và đếm phương tiện giao thông từ hình ảnh camera. Đây là một ứng dụng của Computer Vision nhằm tạo ra hệ thống điều khiển đèn giao thông thông minh. Phát hiện đối tượng (object detection) chính xác là chìa khóa cho việc xác định lưu lượng giao thông, từ đó điều chỉnh thời gian đèn tín hiệu một cách hiệu quả. Việc sử dụng mạng neuron (neural network), cụ thể là mạng CNN, trong thuật toán YOLO cho phép hệ thống tự học và cải thiện độ chính xác qua thời gian. Deep learningmachine learning đóng vai trò quan trọng trong việc huấn luyện mô hình YOLO, giúp hệ thống nhận diện các phương tiện giao thông (ôtô, xe buýt, xe tải) một cách chính xác. Dữ liệu huấn luyện được thu thập và gán nhãn cẩn thận để đảm bảo chất lượng mô hình.

1.1 Ứng dụng xử lý ảnh trong giao thông

Việc ứng dụng xử lý ảnh trong lĩnh vực giao thông đang ngày càng phổ biến. Ứng dụng xử lý ảnh trong giao thông không chỉ dừng lại ở việc đếm phương tiện mà còn mở rộng ra nhiều khả năng khác như phát hiện tai nạn, giám sát tốc độ, quản lý bãi đỗ xe. Trong đồ án này, phân tích hình ảnh tập trung vào việc đếm số lượng xe trên mỗi làn đường, một nhiệm vụ then chốt trong việc điều khiển đèn giao thông hiệu quả. Xử lý video là một bước mở rộng tiềm năng, cho phép theo dõi chuyển động của phương tiện và đưa ra quyết định điều khiển đèn giao thông chính xác hơn trong thời gian thực (thời gian thực, real-time). Việc tích hợp với các cảm biến khác như cảm biến tốc độ, cảm biến mật độ có thể nâng cao tính chính xác và hiệu quả của hệ thống quản lý giao thông thông minh (ITS).

1.2 Hệ thống điều khiển đèn giao thông thông minh

Hệ thống được thiết kế dựa trên kiến trúc hai phần chính: phần xử lý ảnh trên máy tính và phần điều khiển đèn giao thông trên Arduino. Phần xử lý ảnh sử dụng OpenCV, Python, TensorFlow hoặc PyTorch để xử lý hình ảnh từ camera và đưa ra số lượng phương tiện trên mỗi làn đường. Phần điều khiển sử dụng Arduino UNO R3 để điều khiển các đèn tín hiệu LED. Việc kết hợp phần cứng và phần mềm tạo nên một hệ thống điều khiển đèn giao thông thông minh. Mô hình này thể hiện ứng dụng thực tiễn của công nghệ xử lý ảnhcông nghệ thông tin trong giải quyết vấn đề giao thông. Tự động hóa quá trình điều khiển đèn tín hiệu góp phần giảm thiểu tắc nghẽn và nâng cao hiệu quả giao thông. Thuật toán điều khiển được thiết kế sao cho thời gian đèn xanh cho mỗi làn đường được điều chỉnh dựa trên lưu lượng phương tiện, đảm bảo tính tối ưuhiệu quả.

II. Nghiên cứu khoa học và ứng dụng thực tiễn

Đồ án này là một nghiên cứu khoa học có giá trị thực tiễn cao. Nó ứng dụng các kiến thức về xử lý ảnh, tầm nhìn máy tính (computer vision), và học máy (machine learning) để giải quyết một vấn đề thực tế của đô thị. Kết quả nghiên cứu cho thấy khả năng áp dụng công nghệ xử lý ảnh trong việc tự động hóa hệ thống điều khiển đèn giao thông. Phân tích hình ảnh được thực hiện với độ chính xác nhất định, cho phép hệ thống đưa ra quyết định điều khiển đèn giao thông một cách hợp lý. Kết quả nghiên cứu được trình bày chi tiết, bao gồm quá trình xây dựng mô hình, huấn luyện mô hình, và thử nghiệm mô hình. Đánh giá hiệu quả của hệ thống thông qua việc so sánh với hệ thống điều khiển truyền thống.

2.1 Phân tích hình ảnh và đếm phương tiện

Phương pháp phân tích hình ảnh dựa trên object detection bằng thuật toán YOLO được sử dụng. Thuật toán này cho phép phát hiện và xác định vị trí của các phương tiện giao thông trong ảnh. Số lượng phương tiện được đếm dựa trên số lượng đối tượng được phát hiện. Độ chính xác của quá trình đếm phụ thuộc vào chất lượng hình ảnh, điều kiện ánh sáng, và độ chính xác của mô hình YOLO đã được huấn luyện. Quá trình xử lý được thực hiện trên máy tính sử dụng các thư viện xử lý ảnh như OpenCV và ngôn ngữ lập trình Python. Kết quả đếm được truyền đến bộ điều khiển Arduino để điều khiển đèn giao thông.

2.2 Điều khiển đèn giao thông dựa trên lưu lượng

Hệ thống điều khiển đèn giao thông được thiết kế dựa trên nguyên tắc điều chỉnh thời gian đèn xanh cho mỗi làn đường dựa trên lưu lượng phương tiện. Dữ liệu lưu lượng được thu thập từ quá trình đếm phương tiện. Thuật toán điều khiển được thiết kế để tối ưu hóa thời gian đèn xanh, giảm thiểu thời gian chờ đợi và ùn tắc. Arduino đóng vai trò là bộ điều khiển trung tâm, nhận dữ liệu từ máy tính và điều khiển các đèn tín hiệu LED. Mô hình điều khiển có thể được điều chỉnh tùy thuộc vào đặc điểm giao thông của từng ngã tư. Việc sử dụng Arduino giúp giảm chi phí so với các hệ thống điều khiển phức tạp hơn. Giảm ùn tắc giao thông là mục tiêu chính của hệ thống này.

III. Kết luận và hướng phát triển

Đồ án tốt nghiệp này chứng minh khả năng áp dụng xử lý ảnhnhận diện ảnh trong việc điều khiển đèn giao thông thông minh. Hệ thống được xây dựng dựa trên nền tảng kỹ thuật object detection, mạng neuron, và học máy. Kết quả nghiên cứu cho thấy khả năng cải thiện hiệu quả giao thông. Tuy nhiên, còn tồn tại một số giới hạn. Hướng phát triển trong tương lai tập trung vào việc nâng cao độ chính xác của mô hình phát hiện đối tượng, mở rộng khả năng nhận diện nhiều loại phương tiện hơn, tích hợp với các cảm biến khác để tăng tính toàn diện. Ứng dụng thực tiễn của hệ thống này có tiềm năng lớn trong việc giải quyết vấn đề giao thông đô thị.

3.1 Đánh giá hiệu quả và hạn chế

Hệ thống đã đạt được kết quả khả quan trong việc đếm phương tiện và điều khiển đèn giao thông trong điều kiện mô phỏng. Tuy nhiên, độ chính xác của hệ thống còn phụ thuộc vào nhiều yếu tố như chất lượng hình ảnh, điều kiện ánh sáng, và loại phương tiện. Hạn chế của mô hình hiện tại là chỉ hoạt động hiệu quả trong điều kiện ánh sáng tốt và lưu lượng phương tiện không quá cao. Khó khăn gặp phải trong quá trình nghiên cứu là việc thu thập và chuẩn bị dữ liệu huấn luyện, cũng như việc tinh chỉnh các thông số của mô hình để đạt được độ chính xác cao. So sánh với các hệ thống truyền thống, hệ thống này cho thấy tiềm năng trong việc cải thiện hiệu quả giao thông. Đánh giá tổng quan cho thấy hệ thống có thể được ứng dụng trong thực tế sau khi được cải tiến và tối ưu hóa.

3.2 Hướng phát triển tương lai

Hướng phát triển tương lai của hệ thống bao gồm việc nâng cao độ chính xác của mô hình phát hiện đối tượng bằng cách sử dụng các thuật toán tiên tiến hơn và tăng cường dữ liệu huấn luyện. Tích hợp với các cảm biến khác như cảm biến tốc độ, cảm biến mật độ để tạo ra hệ thống điều khiển đèn giao thông thông minh hơn. Mở rộng khả năng nhận diện nhiều loại phương tiện khác nhau. Xây dựng hệ thống giám sát và quản lý từ xa. Ứng dụng trên quy mô lớn hơn trong các giao lộ thực tế. Nghiên cứu thêm về khả năng thích ứng của hệ thống với các điều kiện thời tiết khác nhau. Cải tiến giao diện người dùng để dễ sử dụng hơn. Tối ưu hóa thuật toán để giảm thời gian xử lý và tăng hiệu suất hệ thống. Việc này đòi hỏi nghiên cứu sâu hơn về các thuật toán xử lý ảnhhọc máy.

01/02/2025

Trích đoạn nội dung tài liệu

đặt vấn đề dẫn nhập lý do chọn đề tài, mục tiêu, nội dung nghiên cứu, các giới hạn thông số và bố cục đồ án. • Chương 2: Cơ sở lý thuyết. Giới thiệu về xử lý ảnh. Giới thiệu về Arduino, camera.

Giới thiệu về các phương pháp trong quá trình xử lý ảnh đầu vào. Giới thiệu về thuật toán phát hiện và đếm số lượng phương tiện. • Chương 3: Thiết kế và tính toán. Phân tích, xây dựng sơ đồ khối, sơ đồ phần cứng.

Thiết kế chương trình cho hệ thống đếm phương tiện qua hình ảnh được viết trên phần mềm Pycharm. Thiết kế chương trình nhận dữ liệu và điều khiển hệ thống đèn giao thông trên Arduino UNO R3 được viết trên phần mềm Visual Studio Code. • Chương 4: Thi công mô hình. Xây dựng chương trình hoàn chỉnh cho toàn hệ thống, các lưu đồ, chương trình được sử dụng.

Lắp ráp và chạy chương trình. Viết tài liệu hướng dẫn sử dụng, quy trình thao tác. • Chương 5: Kết quả, nhận xét và đánh giá. Trình bày kết quả đã thực hiện, về cả phần cứng lẫn phần mềm.

Nêu ra nhận xét và đánh giá. • Chương 6: Kết luận và hướng phát triển. Tóm tắt kết quả đạt được, nêu ra những hạn chế và các hướng phát triển của đề tài trong tương lai. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP do an– Y SINH 4 CHƯƠNG 2.

CƠ SỞ LÝ THUYẾT Chương 2. GIỚI THIỆU VỀ XỬ LÝ ẢNH Xử lý ảnh được đưa vào giảng dạy ở bậc đại học ở nước ta khoảng chục năm nay. Nó là môn học liên quan đến nhiều lĩnh vực và cần nhiều kiến thức cơ sở khác. Đầu tiên phải kể đến xử lý tín hiệu số là một môn học hết sức cơ bản cho xử lý tín hiệu chung, các khái niệm về tích chập, các biến đổi Fourier, biến đổi Laplace, các bộ lọc hữu hạn… Thứ hai, các công cụ toán như đại số tuyến tính, xác xuất, thống kê.

Một số kiến thứ cần thiết như trí tuệ nhân tao, mạng nơron nhân tạo cũng được đề cập trong quá trình phân tích và nhận dạng ảnh. Các phương pháp xử lý ảnh bắt đầu từ các ứng dụng chính: nâng cao chất lượng ảnh và phân tích ảnh. Các phương pháp tri thức nhân tạo như mạng nơ ron nhân tạo, các thuật toán xử lý hiện đại và cải tiến, các công cụ nén ảnh ngày càng được áp dụng rộng rãi và thu nhiều kết quả khả quan. Ứng dụng đầu tiên được biết đến là nâng cao chất lượng ảnh báo được truyền qua cáp từ Luân đôn đến New York từ những năm 1920.

Vấn đề nâng cao chất lượng ảnh có liên quan tới phân bố mức sáng và độ phân giải của ảnh. Việc nâng cao chất lượng ảnh được phát triển vào khoảng những năm 1955. Điều này có thể giải thích được vì sau thế chiến thứ hai, máy tính phát triển nhanh tạo điều kiện cho quá trình xử lý ảnh sô thuận lợi. Năm 1964, máy tính đã có khả năng xử lý và nâng cao chất lượng ảnh từ mặt trăng và vệ tinh Ranger 7 của Mỹ bao gồm: làm nổi đường biên, lưu ảnh.

Từ năm 1964 đến nay, các phương tiện xử lý, nâng cao chất lượng, nhận dạng ảnh phát triển không ngừng [1]. Để dễ tưởng tượng, xét các bước cần thiết trong xử lý ảnh. Đầu tiên, ảnh tự nhiên từ thế giới ngoài được thu nhận qua các thiết bị thu (như camera, máy chụp ảnh). Trước đây, ảnh thu qua camera là các ảnh tương tự (loại camera ống kiểu CCIR).

Gần đây, với sự phát triển của công nghệ, ảnh màu hoặc đen trắng được lấy ra từ Camera, sau đó nó được chuyển trực tiếp thành ảnh số tạo thuận lợi cho xử lý tiếp theo. Máy ảnh số hiện nay là một thí dụ gần gũi. Mặt khác, ảnh cũng có thể tiếp nhận từ vệ tinh; có thể quét từ ảnh chụp bằng máy quét ảnh. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP do an– Y SINH 5 CHƯƠNG 2.

NGÔN NGỮ LẬP TRÌNH PYTHON Python là ngôn ngữ lập trình bậc cao thông dụng dùng để viết các tiện ích hệ thống. Nó cũng được sử dụng như ngôn ngữ kết dính đóng vai trò tích hợp C và C++.1: Biểu tượng ngôn ngữ lập trình Python. Được tạo ra bởi Guido van Rossum tại Amsterdam năm 1990, Python hoàn toàn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tự động. Python được phát triển trong một dự án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý.

Python là ngôn ngữ có hình thức khá đơn giản và rõ ràng, do đó tạo nên sự dễ dàng tiếp cận cho những lập trình viên mới bắt đầu. Ban đầu, Python được phát triển để chạy trên nền Unix, nhưng rồi theo thời gian, nó đã được mở rộng sang mọi hệ điều hành từ MS-DOS đến Mac OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix [4]. Một số tính chất của Python: [5] - Interpreted: nhờ chức năng thông dịch mà trình thông dịch (Interpreter) của Python có thể xử lý lệnh tại thời điểm chạy chương trình (runtime). Nhờ đó mà không cần biên dịch chương trình trước khi thực hiện nó (tương tự như Perl và PHP).

- Interactive: tính năng tương tác của Python giúp tương tác trực tiếp với trình thông dịch của nó ngay tại dấu nhắc lệnh. Cụ thể: Có thể thực hiện lệnh một cách trực tiếp tại dấu nhắc của Python. - Object-Oriented: Python hỗ trợ mạnh cho phong cách lập trình hướng đối tượng và kỹ thuật lập trình gói mã trong đối tượng. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP do an– Y SINH 6 CHƯƠNG 2.

CƠ SỞ LÝ THUYẾT - Beginner's Language: Python được xem là ngôn ngữ lập trình dành cho những ai mới làm quen với việc lập trình trên máy tính, nhưng nó hỗ trợ mạnh cho việc phát triển nhiều loại ứng dụng khác nhau, từ các chương trình xử lý văn bản đơn giản đến các ứng dụng web, đến các chương trình game… Tính năng: - Python là một ngôn ngữ lập trình dễ học, dễ đọc. Python tăng cường sử dụng từ khóa tiếng Anh, hạn chế các ký hiệu và cấu trúc cú pháp so với các ngôn ngữ khác. - Mã nguồn của Python tương đối dễ để bảo trì và duy trì và có khả năng mở rộng: Python có thể được mở rộng: nếu ta biết sử dụng C, ta có thể dễ dàng viết và tích hợp vào Python nhiều hàm tùy theo nhu cầu. Các hàm này sẽ trở thành hàm xây dựng sẵn của Python.

Ta cũng có thể mở rộng chức năng của trình thông dịch, hoặc liên kết các chương trình Python với các thư viện chỉ ở dạng nhị phân như các thư viện đồ họa do nhà sản xuất thiết bị cung cấp. Hơn thế nữa, ta cũng có thể liên kết trình thông dịch của Python với các ứng dụng viết từ C và sử dụng nó như là một mở rộng hoặc một ngôn ngữ dòng lệnh phụ trợ cho ứng dụng đó. - Python có một tiêu chuẩn thư viện rộng, nền tảng tương thích trên nhiều hệ điều hành hiện nay như: UNIX, Windows, và Macintosh. Đây cũng là một trong những điểm mạnh đáng kể của Python.

- Python có thể được sử dụng như ngôn ngữ script, hoặc ngôn ngữ biên dịch, nhờ đó có thể build các chương trình lớn trên nó. - Khi chế độ Interactive, có thể nhập kết quả từ các đầu cuối khác nhau vào chương trình Python, do đó mà việc test hay debug lỗi code trở nên đơn giản hơn. - Python cho phép người dùng tích hợp vào các module để có thể sử dụng trong các chương trình khác. Nó cũng cung cấp sẵn một tập hợp các modules chuẩn mà lập trình viên có thể sử dụng lại trong chương trình của họ.

Các module này cung cấp nhiều chức năng hữu ích, như các hàm truy xuất tập tin, các lời gọi hệ thống, hỗ trợ lập trình mạng (socket)… - Python cung cấp giao diện cho tất cả các cơ sở dữ liệu thương mại lớn. - Có thể dễ dàng tích hợp với C, C++, COM, CORBA, ActiveX, Java. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP do an– Y SINH 7 CHƯƠNG 2. MỘT SỐ THƯ VIỆN TRONG PYTHON 2.

Thư viện lập trình giao diện PYQT5 Qt là một Application framework đa nền tảng viết trên ngôn ngữ C++, được dùng để phát triển các ứng dụng trên desktop, hệ thống nhúng và mobile. Hỗ trợ cho các nền tảng bao gồm: Linux, OS X, Windows, VxWorks, QNX, Android, iOS, BlackBerry, Sailfish OS và một số nền tảng khác. PyQt là Python interface của Qt, kết hợp của ngôn ngữ lập trình Python và thư viện Qt, là một thư viện bao gồm các thành phần giao diện điều khiển (widgets, graphical control elements). PyQt được phát triển bởi Riverbank Computing Limited [27].2: Biểu tượng Qt.

PyQt API bao gồm các module bao gồm số lượng lớn với các classes và functions hỗ trợ cho việc thiết kế ra các giao diện giao tiếp với người dùng của các phần mềm chức năng. Hỗ trợ với Python 2. ❖ Các class của PyQt5 được chia thành các module, bao gồm: - QtCore: là module bao gồm phần lõi không thuộc chức năng GUI, ví dụ dùng để làm việc với thời gian, file và thư mục, các loại dữ liệu, streams, URLs, mime type, threads hoặc processes. - QtGui: bao gồm các class dùng cho việc lập trình giao diện (windowing system integration), event handling, 2D graphics, basic imaging, fonts và text.

- QtWidgets: bao gồm các class cho widget, ví dụ: button, hộp thoại, … được sử dụng để tạo nên giao diện người dùng cơ bản nhất. - QtMultimedia: thư viện cho việc sử dụng âm thanh, hình ảnh, camera… - QtBluetooth: bao gồm các class giúp tìm kiếm và kết nối với các thiết bị có giao tiếp với phần mềm. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP do an– Y SINH 8 CHƯƠNG 2. CƠ SỞ LÝ THUYẾT - QtNetwork: bao gồm các class dùng cho việc lập trình mạng, hỗ trợ lập trình TCP/IP và UDP client, server hỗ trợ việc lập trình mạng.

- QtPositioning: bao gồm các class giúp việc hỗ trợ xác định vị. - Enginio: module giúp các client truy cập các Cloud Services của Qt. - QtWebSockets: cung cấp các công cụ cho WebSocket protocol. - QtWebKit: cung cấp các class dùng cho làm việc với các trình duyệt Web, dựa trên thư viện WebKit2.

- QtWebKitWidgets: các widget cho WebKit. - QtXml: các class dùng cho làm việc với XML file. - QtSvg: dùng cho hiển thị các thành phần của SVG file. - QtSql: cung cấp các class dùng cho việc làm việc với dữ liệu.

- QtTest: cung cấp các công cụ cho phép test các đơn vị của ứng dụng với PyQt5. Thư viện về xử lý ảnh OPENCV OpenCV (OpenSource Computer Vision) là một thư viện mã nguồn mở. OpenCV được phát hành theo giấy phép BSD, do đó nó hoàn toàn miễn phí cho cả học thuật và thương mại.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Bài viết "Ứng dụng xử lý ảnh trong điều khiển đèn giao thông tại HCMUTE" trình bày một giải pháp công nghệ tiên tiến nhằm cải thiện hiệu quả của hệ thống đèn giao thông thông qua việc sử dụng công nghệ xử lý ảnh. Bằng cách áp dụng các thuật toán xử lý hình ảnh, hệ thống có thể nhận diện và phân tích lưu lượng giao thông, từ đó điều chỉnh thời gian tín hiệu đèn giao thông một cách linh hoạt và thông minh. Điều này không chỉ giúp giảm thiểu ùn tắc giao thông mà còn nâng cao an toàn cho người tham gia giao thông.

Để mở rộng thêm kiến thức về các ứng dụng công nghệ trong quản lý giao thông, bạn có thể tham khảo bài viết "Luận văn thạc sĩ ứng dụng smart city tại thành phố amsterdam hà lan và đề xuất giải pháp phân luồng giao thông cho hà nội", nơi đề xuất các giải pháp thông minh cho việc phân luồng giao thông. Ngoài ra, nếu bạn quan tâm đến các ứng dụng công nghệ trong lĩnh vực IoT, hãy xem bài viết "Đồ án hcmute ứng dụng thuật toán nén ảnh bpg vào trong chuông cửa iot", để tìm hiểu thêm về cách công nghệ có thể cải thiện cuộc sống hàng ngày. Những tài liệu này sẽ giúp bạn có cái nhìn sâu sắc hơn về sự phát triển của công nghệ trong quản lý giao thông và các lĩnh vực liên quan.