1. Trang chủ
  2. » Tất cả

(Đồ án hcmute) xây dựng mô hình giám sát giao thông

92 3 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

Định dạng
Số trang 92
Dung lượng 5,33 MB

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐIỆN - ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP NGÀNH CƠNG NGHỆ KỸ THUẬT MÁY TÍNH XÂY DỰNG MƠ HÌNH GIÁM SÁT GIAO THƠNG GVHD: Th.S TRƯƠNG QUANG PHÚC SVTH : PHẠM HỒNG ĐẠT LÊ KHẮC ANH KHOA S KL 0 4 Tp Hồ Chí Minh, năm 2017 an LỜI CAM ĐOAN Đề tài tự thực dựa vào số tài liệu trước khơng chép từ tài liệu hay cơng trình có trước Người thực đề tài Phạm Hồng Đạt Lê Khắc Anh Khoa i an LỜI CẢM ƠN Chúng xin gởi lời cảm ơn sâu sắc đến thầy ThS Trương Quang Phúc - Giảng viên mơn Máy Tính-Viễn Thơng, trực tiếp hướng dẫn, góp ý, chia sẻ nhiều kinh nghiệm quý báu tận tình giúp đỡ tạo điều kiện để chúng tơi hồn thành tốt đề tài Nhóm chúng tơi xin gởi lời chân thành cảm ơn thầy cô Khoa Điện-Điện Tử thầy phịng lập trình mạng máy tính tạo điều kiện tốt chúng tơi hồn thành đề tài Nhóm chúng tơi gửi lời đồng cảm ơn đến bạn lớp 153410 chia sẻ trao đổi kiến thức kinh nghiệm quý báu thời gian thực đề tài Cảm ơn đến cha mẹ, lao động cực khổ để có tiền thời gian chúng tơi thực đề tài thành công Xin chân thành cảm ơn! Người thực đề tài Phạm Hồng Đạt Lê Khắc Anh Khoa ii an MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN ii MỤC LỤC iii LIỆT KÊ HÌNH viii LIỆT KÊ BẢNG xi TÓM TẮT xii Chương 1.TỔNG QUAN 1.1 ĐẶT VẤN ĐỀ 1.2 MỤC TIÊU 1.3 NỘI DUNG NGHIÊN CỨU 1.4 GIỚI HẠN 1.5 BỐ CỤC Chương CƠ SỞ LÝ THUYẾT 2.1 QUY TRÌNH XỬ LÝ ẢNH 2.1.1 Tổng quan xử lý ảnh 2.1.2 Các trình xử lý ảnh a Thu nhận ảnh b Tiền xử lý c Phân đoạn d Tách đặc tính e Nhận dạng giải thích 2.1.3 a Ảnh biễu diễn ảnh Khái niệm ảnh đen trắng, ảnh màu, ảnh đa cấp xám iii an Biểu diễn ảnh: b 2.1.4 Phạm vi ứng dụng xử lý ảnh 10 2.1.5 Các kiểu định dạng xử lý ảnh 11 2.1.6 Thư viện OpenCV 11 2.1.7 Quy trình xác định tốc độ xe 11 2.2 QUY TRÌNH XỬ LÝ DỮ LIỆU 13 2.2.1 Mô tả trình truyền nhận liệu 13 a Tìm hiểu webserver 13 b Giới thiệu Google spreadsheet 13 c Q trình truyền nhận liệu thơng qua Webserver 13 2.2.2 2.3 Hiển thị liệu 13 GIỚI THIỆU PHẦN CỨNG 14 2.3.1 Kit Raspberry Pi 14 a Giới thiệu sơ lược Raspberry Pi 14 b Thông số kỹ thuật 16 c Chức 17 2.3.2 ESP8266 Node MCU 17 a Giới thiệu sơ lược ESP8266 NodeMCU 17 b Thông số kỹ thuật 17 c Chức 18 2.3.3 Arduino UNO R3 18 a Cấu tạo 18 b Thông số kỹ thuật 19 c Chức 19 2.3.4 a Camera Raspberry Pi V1 5MP 19 Cấu tạo 19 iv an b Thông số kỹ thuật 20 c Chức 20 2.3.5 Led matrix trời P10 20 a Cấu tạo 20 b Thông số kỹ thuật 21 c Chức 21 Chương TÍNH TỐN VÀ THIẾT KẾ 22 3.1 GIỚI THIỆU 22 3.2 TÍNH TỐN VÀ THIẾT KẾ HỆ THỐNG 22 3.2.1 Tính tốn thiết kế 22 a Phương pháp luồng quang lượng 22 b Phương pháp Lucas- Kanade 24 c Xác định tốc độ xe 26 3.2.2 Thiết kế sơ đồ khối hệ thống 26 3.2.3 Sơ đồ nguyên lý hệ thống 28 Chương THI CÔNG HỆ THỐNG 29 4.1 GIỚI THIỆU 29 4.2 PHẦN CỨNG HỆ THỐNG 29 4.2.1 Mạch điều khiển đèn tín hiệu giao thơng 29 a Giới thiệu sơ lược hệ thống đèn tín hiệu giao thơng 29 b Thi cơng mạch tín hiệu giao thơng 29 4.2.2 Lắp ráp module xử lý ảnh đo tốc độ 30 a Lắp đặt module nguồn 30 b Lắp đặt module Pi camera 30 c Lắp đặt module Pi 32 4.2.3 Lắp đặt module điều khiển hiển thị thông tin 32 v an a Module nguồn 32 b Module ESP8266 NodeMCU 33 c Lắp đặt module quang báo 33 4.3 PHẦN MỀM HỆ THỐNG 33 4.3.1 Phần mềm lập trình 44 4.3.1.1 Python IDLE 44 a Giới thiệu phần mềm lập trình 44 b Các bước tạo project 45 c Các câu lệnh python 46 d Viết chương trình hệ thống 47 4.3.1.2 Arduino IDE 51 a Giới thiệu phần mềm lập trình 51 b Cài đặt sử dụng Arduino IDE 51 c Viết chương trình cho hệ thống 54 4.3.2 Lập trình Google Spreadsheet Google Script 58 4.3.2.1 Google Spreadsheet 58 a Giới thiệu Google Spreadsheet 58 b Tạo sử dụng Spreadsheet 59 4.3.2.2 4.4 Google Script 60 a Giới thiệu Google Script 60 b Tạo dự án Google Script 61 c Viết chương trình cho Google Script 63 TÀI LIỆU HƯỚNG DẪN THAO TÁC SỬ DỤNG 63 Chương KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ 67 5.1 KẾT QUẢ THU ĐƯỢC BẰNG HÌNH ẢNH 69 Chương KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 71 vi an 6.1 KẾT LUẬN 71 6.2 HƯỚNG PHÁT TRIỂN 71 TÀI LIỆU THAM KHẢO 72 PHỤ LỤC 73 vii an LIỆT KÊ HÌNH Hình Trang Hình 2.1: Quá trình xử lý ảnh Hình 2.2: Mơ tả cấu tạo ảnh số Hình 2.3:Kết cho hình ảnh nhị phân Hình 2.4: kết hình ảnh cho ảnh màu Hình 2.5: kết hình ảnh cho ảnh xám Hình 2.6: Vùng lân cận điểm ảnh 10 Hình 2.7: quy trình hệ thống 12 Hình 2.8: Giới thiệu Raspberry Pi chân kết nối 14 Hình 2.9: Chân giao tiếp Raspberry Pi 16 Hình 2.10: Hình ảnh module ESP8266 NodeMCU 17 Hình 2.11: Hình ảnh thực tế board Arrduino UNO R3 18 Hình 2.12: Module camera Raspberry Pi V1 20 Hình 2.13: Mặt trước, sau led matrix P10 20 Hình 3.1: trình hình thành luồng quang 23 Hình 3.2: hình thành luồng quang có chuyển động 23 Hình 3.3: thay đổi vị trì luồng quang ứng với thời điểm 24 Hình 3.4: Biểu diễn ba trường hợp I 25 Hình 3.5: Sơ đồ khối tổng quan hệ thống 27 Hình 3.6: Sơ đồ tổng quát mơ hình 28 Hình 4.1: mạch in hệ thống đèn tín hiệu giao thơng 29 Hình4.2: Thơng số apdapter nguồn cung cấp 30 Hình4.3: Pi camera dây bus kết nối 30 Hình4.4: Kết nối module Pi camera với kít Raspberry 31 Hình4.5: Hình ảnh quan sát từ camera xuống lòng đường 31 viii an Hình 4.6: Vị trí lắp đặt board Pi camera 32 Hình 4.7: Lắp đặt module quang báo mơ hình 33 Hình 4.8: Lưu đồ hệ thống 34 Hình 4.9: Lưu đồ chương trình đo tốc độ xử lý liệu 35 Hình 4.10: Lưu đồ chương trình gởi liệu lên webserver 37 Hình 4.11: chương trình truy xuất liệu từ webserver 39 Hình 4.12: chương trình nhận liệu từ Web Server 40 Hình4.13 điều khiển đèn giao thông theo liệu Web Server 41 Hình 4.14: Lưu đồ hiển thị bảng quang báo 42 Hình4.15: Lưu đồ chương trình ngắt timer điều khiển bảng quang báo 43 Hình 4.16: Khởi động python IDLE 44 Hình 4.17: Ví dụ REPL 44 Hình 4.18: Tạo file định dạng với định dạng Python 45 Hình 4.19: Đặt tên cho file 45 Hình4.20: Mở file Khoa.py 45 Hình 4.21: Viết chương trình 46 Hình 4.22: Giao diện chạy chương trình 46 Hình 4.23: Thụt đầu dịng lệnh for 46 Hình 4.24: Sử dụng biến 47 Hình 4.25: Ghi python 47 Hình 4.26: Giao diện Arduino IDE 52 Hình 4.27: File menu 52 Hình 4.28: Ví dụ mẫu 53 Hình 4.29: Edit menu 53 Hình 4.30: Chọn board 54 Hình 4.31: Giao diện bảng Spreadsheet 59 ix an CHƯƠNG THI CƠNG HỆ THỐNG Hình4.41: Tập tin chương trình Bước 6: Trên máy tính, thực mở tập tin ESP8266.ino nhấp đúp chuột vào tập trên; tập tin kèm với sản phẩm Lưu ý, việc thao tác yêu cầu người dùng phải cài phần mềm ARDUINO, cấu hình driver, cấu hình board Bước 7: Trong chương trình ARDUINO, người dùng điền tên wifi mật đăng nhập vào mạng wifi hình bên Cần ý người dùng không nên thay đổi nội dung khác, việc làm hệ thống khơng hoạt động tính liên quan khối lớn Hình4.42: Điền thơng tin mạng wifi Bước 8: Nhấn vào dấu mũi tên cơng cụ để nạp chương trình vào module ESP8266 Nếu việc nạp chương trình thất bại, người dùng cần phải thao tác lại bước thức BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP an 65 CHƯƠNG THI CƠNG HỆ THỐNG Hình4.43: Nạp chương trình cho module BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP an 66 CHƯƠNG KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ Chương KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ Sau khoảng thời gian 16 tuần, kể từ lúc xác nhận đề tài, việc xác định hướng cho đề tài đến việc xác định linh kiện, thiết bị phụ vụ cho đề tài Chúng tiến hành bắt tay, tập trung cao độ việc nghiên cứu, tìm cách giải vấn đề mà đề tài đặt Đầu tiên việc nghiên cứu để sử dụng module camera Raspberry Pi 3, module có ba thơng số cho chất lượng hình ảnh video (1080p 30, 720p 60, VGA 90) Tuy nhiên để sử dụng thơng số module phải thiết lập chúng Cơng việc khó khăn phần xử lý ảnh, khái niệm hoàn toàn mẻ với chúng tơi nên việc nghiên cứu thứ tạo thêm động lực thúc đẩy trình nghiên cứu nhóm, khái niệm như: thuật tốn luồng quang lượng, phương pháp LucasKanade, thuật toán trừ nền, thư viện OpenCV, phương pháp theo dõi (track) Tiếp theo việc tìm cơng vụ lưu trữ liệu cho đơn giản, tiện lợi mà lại đáp ứng yêu cầu mà đề tài đặt Vận dụng kiến thức từ đồ án mơn học IoT nên chúng em lựa chọn google spreadsheet, kết hợp việc sử dụng module ESP8266 NodeMCU Dùng vùng nhớ EPROM để lưu trữ liệu tạm thời Tìm hiểu thêm board Arduino UNO R3 cách kết nối sử dụng thư viện Arduino để xuất liệu led matrix P10 Qua trình làm đề tài học thêm ngôn ngữ lập trình (python) sử dụng phổ biến xử lý ảnh Đồng thời qua nắm cách cài đặt sử dụng thư viện numpy, scipy, OpenCV [8] Một khái niệm quen thuộc khơng đề cập tới làm liên quan tới xử lý ảnh, thư viện cung cấp nhiều giải pháp cho xử lý ảnh như: nhận diện khuôn mặt, theo dõi đối tượng, nhận diện biển số xe….Được biết thêm hoạt động kiến thức thuộc hệ thống nhúng (embedded system) Biết thêm cách lưu trữ liệu tiện lợi, đơn giản, gọn nhẹ truy xuất cách nhanh chóng mà sử dụng tồn thứ có sẵn Để thực việc giao tiếp ESP8266 với google spreadsheet cần phải trải qua nhiều công đoạn như: tạo sẵn trước sheet, sau lưu trữ lại địa googlesheet, địa liên kết sheet vừa tạo với app google script, tạo liên kết ESP8266 với goole spread sheet, dùng phương thức GET/POST API để truyền liệu [9] Sau hình ảnh minh chứng kết mô liệu mà q trình thực đề tài nhóm làm BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP an 67 CHƯƠNG KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ Hình 5.1: Mơ q trình truyền liệu lên webserver Mơ trình truyền liệu giao diện GUI sử dụng ngơn ngữ lập trình python, giả sử liệu xử lý xong bao gồm: place, speed, count Khi nhấn Send liệu gởi lên webserver Hình 5.2: Kết liệu gởi lên google spreadsheet Hình 5.3: Kết liệu nhận ESP8266 Dữ liệu sau gởi lên webserver hình 5.2 ESP8266 có nhiệm vụ truy cập vào sở liệu lấy liệu BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP an 68 CHƯƠNG KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ Tiếp theo liệu lưu vào vùng nhớ EPROM hình Hình 5.4: Kết liệu nhận Uno thông qua ESP8266 Dữ liệu sau ESP8266 lưu vào nhớ EPROM sau liệu truyền qua Uno theo chuẩn giao tiếp Uart (chuẩn truyền liệu nối tiếp ) Sau thời gian thực đề tài, với hợp tác tích cực thành viên nhóm, tính tốn, phân chia khối lượng kiến thức, công việc phù hợp tâm, trí thành viên nhóm Bên cạnh dẫn, gợi ý tư vấn nhắc nhở, kinh nghiệm, tài liệu quý báu từ thầy hướng dẫn Nhóm thực đề tài cách thành cơng, cịn nhiều hạn chế, với đề nhóm hồn thành cách tuyệt với đề tài Những giá trị, số liệu, kết cho sai số hoàn toàn phạm vi chấp nhận 5.1 KẾT QUẢ THU ĐƯỢC BẰNG HÌNH ẢNH Hình 5.5: Giai đoạn chuẩn bị BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP an 69 CHƯƠNG KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ Hình 5.6: Mơ hình hồn chỉnh BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP an 70 TÀI LIỆU THAM KHẢO Chương KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 6.1 KẾT LUẬN Qua trình thực đồ án phần giúp ôn lại, nắm kỹ hiểu kiến thức mơn học có liên quan đến đề tài, khả tư tìm kiếm tài liệu kỹ office nâng cao Biết phân chia công việc, nhiệm vụ cách hợp lý thành viên nhóm Đã thi cơng mơ hình giám sát giao thông áp dụng kiến thức xử lý ảnh để phân tích, tính tốn tốc độ Biết quản lý sử dụng liệu cách hợp lý Áp dụng thư viện OpenCV vào cho mục đích sử dụng Được biết thêm ngơn ngữ lập trình vận dụng chúng cách hợp lý Nghiên cứu đọc hiểu tài liệu liên quan tới xử lý ảnh, đưa phương pháp giám sát tốc độ phương tiện tham gia giao thơng thơng qua việc phân tích liệu từ video quay Xây dựng quy trình , lưu đồ giải thuật để làm sáng rõ vấn đề xử lý ảnh quản lý liệu 6.2 HƯỚNG PHÁT TRIỂN Phát triển hệ thống cho việc theo dõi, giám sát tốc độ đối tượng cịn lại tham gia giao thơng xe máy, xe mô tô Nghiên cứu thêm mã nguồn mở OpenCV để viết ứng dụng OpenCV để so sánh xuất xuống kit nhúng, mà kit nhúng phát triển cho việc thực thi chương trình phần mềm Có thể phát triển thêm, tối đa thuật tốn, đảm bảo xử lý theo thời gian thực Khắc phục khuyết điểm độ xác tốc độ, xử lý tốc độ với tốc độ video quay, phát triển nghiên cứu đối tượng vào buổi tối (thiếu sáng) Phát triển phần cứng cho hệ thống BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP an 71 TÀI LIỆU THAM KHẢO TÀI LIỆU THAM KHẢO Sách tham khảo [1] Nguyễn Đình Phú, “Giáo trình vi xử lý”, BM Điện Tử Công Nghiệp, ĐH SPKT Tp.HCM, 2014 [2] Lê Tiến Sĩ, “Ước lượng tốc độ xe ô tô ứng dụng xử lý ảnh Matlab”, BM KTMTVT, ĐH SPKT Tp.HCM, 2016 [3] Nguyễn Cao Vĩnh Khang, “Điều khiển thiết bị Arduino UNO kết hợp ESP8266 qua smartphone”, Bộ Môn Điện Tử Công Nghiệp, ĐH SPKT Tp.HCM, 2016 [4] Minhthomson, “Lập trình base shell linux ( phần 3)”, 2011 [5] Henry, Tuple, “List Dictionary Python”, 2015 [6] Pelegri, J., Alberola, J., Llario, V., E.F., “Vehicle detection and car speed monitoring systems using GMR magnetic sensors”, in Proc.IEEE 2002 28th Annual Conf Industrial Electronics Society, 2002 [7] Alexandre M Savio, “Access Google Spreadsheets using gspread and OAuth2Client”, 2015 [8] Adrian Rosebrock, “How to install OpenCV on Raspbian Jessie”, 2015 [9] Jhon Control, “ESP8266 Direct Connection to Google Spreadsheets (Google Docs)”, 2016 [10] Wen L, Fumio Y, “Speed detection of moving vehicles from one scene of Quick Bird images”, Urban Remote Sensing Joint Event, 2009 [11] Andrews Sobral, “vehicle_detection_haarcascades”, 2016 [12] Stephen Henson, “openssl”, 2016 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP an 72 PHỤ LỤC PHỤ LỤC Code chương trình ESP8266 NodeMCU void kt() { char s[]={}; String a,b,c; String gui=dl+"*"; for(i=0;i

Ngày đăng: 02/02/2023, 09:36

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

TÀI LIỆU LIÊN QUAN