Đồ án Xây dựng mô hình giám sát giao thông (Phần 1)
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Xây dựng mô hình giám sát giao thông (Phần 1)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- do_an_xay_dung_mo_hinh_giam_sat_giao_thong_phan_1.pdf
Nội dung text: Đồ án Xây dựng mô hình giám sát giao thông (Phần 1)
- 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 0 4 4 6 9 Tp. Hồ Chí Minh, năm 2017
- LỜI CAM ĐOAN Đề tài này là do chúng tôi tự thực hiện dựa vào một số tài liệu trước đó và không sao chép từ tài liệu hay công trình đã có trước đó. Người thực hiện đề tài Phạm Hồng Đạt Lê Khắc Anh Khoa i
- LỜI CẢM ƠN Chúng tôi 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 bộ 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 và tận tình giúp đỡ tạo điều kiện để chúng tôi hoà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 các thầy cô trong Khoa Điện-Điện Tử và các thầy ở phòng lập trình mạng máy tính đã tạo những điều kiện tốt nhất chúng tôi hoàn thành đề tài. Nhóm chúng tôi cũng gửi lời đồng cảm ơn đến các bạn lớp 153410 đã chia sẻ trao đổi kiến thức cũng như những kinh nghiệm quý báu trong thời gian thực hiện đề tài. Cảm ơn đến cha mẹ, đã lao động cực khổ để có tiền và thời gian để cho chúng tôi thực hiện đề tài thành công. Xin chân thành cảm ơn! Người thực hiện đề tài Phạm Hồng Đạt Lê Khắc Anh Khoa ii
- 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.1. ĐẶT VẤN ĐỀ 1 1.2 MỤC TIÊU 1 1.3 NỘI DUNG NGHIÊN CỨU 2 1.4 GIỚI HẠN 2 1.5 BỐ CỤC 3 Chương 2. CƠ SỞ LÝ THUYẾT 4 2.1 QUY TRÌNH XỬ LÝ ẢNH 4 2.1.1 Tổng quan về xử lý ảnh 4 2.1.2 Các quá trình xử lý ảnh 4 a. Thu nhận ảnh 4 b. Tiền xử lý 5 c. Phân đoạn 5 d. Tách các đặc tính 5 e. Nhận dạng và giải thích 6 2.1.3 Ảnh và biễu diễn ảnh 6 a. Khái niệm về ảnh đen trắng, ảnh màu, ảnh đa cấp xám. 6 iii
- b. Biểu diễn ảnh: 9 2.1.4 Phạm vi ứng dụng của xử lý ảnh 10 2.1.5 Các kiểu định dạng trong 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ả quá trình truyền nhận dữ liệu 13 a. Tìm hiểu về webserver 13 b. Giới thiệu về Google spreadsheet 13 c. Quá trình truyền nhận dữ liệu thông qua Webserver 13 2.2.2 Hiển thị dữ liệu 13 2.3 GIỚI THIỆU PHẦN CỨNG 14 2.3.1 Kit Raspberry Pi 3 14 a. Giới thiệu sơ lược Raspberry Pi 3 14 b. Thông số kỹ thuật 16 c. Chức năng 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 năng 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 năng 19 2.3.4 Camera Raspberry Pi V1 5MP 19 a. Cấu tạo 19 iv
- b. Thông số kỹ thuật 20 c. Chức năng 20 2.3.5 Led matrix ngoài trời P10 20 a. Cấu tạo 20 b. Thông số kỹ thuật 21 c. Chức năng 21 Chương 3. TÍNH TOÁN VÀ THIẾT KẾ 22 3.1 GIỚI THIỆU 22 3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG 22 3.2.1 Tính toán và 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 độ của 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 4. 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 3 32 4.2.3 Lắp đặt các module điều khiển và hiển thị thông tin 32 v
- 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 một project. 45 c. Các câu lệnh cơ bản trong 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 và 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 và Google Script 58 4.3.2.1 Google Spreadsheet 58 a. Giới thiệu về Google Spreadsheet 58 b. Tạo và sử dụng Spreadsheet 59 4.3.2.2 Google Script 60 a. Giới thiệu Google Script 60 b. Tạo một dự án Google Script 61 c. Viết chương trình cho Google Script 63 4.4 TÀI LIỆU HƯỚNG DẪN THAO TÁC SỬ DỤNG 63 Chương 5. 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 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 71 vi
- 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
- LIỆT KÊ HÌNH Hình Trang Hình 2.1: Quá trình xử lý ảnh. 4 Hình 2.2: Mô tả cấu tạo của ảnh số 7 Hình 2.3:Kết quả cho hình ảnh nhị phân. 7 Hình 2.4: kết quả hình ảnh cho ảnh màu 7 Hình 2.5: kết quả hình ảnh cho ảnh xám 8 Hình 2.6: Vùng lân cận giữa các điểm ảnh. 10 Hình 2.7: quy trình của hệ thống. 12 Hình 2.8: Giới thiệu Raspberry Pi 3 và các chân kết nối. 14 Hình 2.9: Chân giao tiếp của Raspberry Pi 3. 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 của led matrix P10. 20 Hình 3.1: quá trình hình thành luồng quang. 23 Hình 3.2: sự hình thành luồng quang khi có chuyển động. 23 Hình 3.3: sự thay đổi vị trì luồng quang ứng với 2 thời điểm. 24 Hình 3.4: Biểu diễn ba trường hợp của I. 25 Hình 3.5: Sơ đồ khối tổng quan của hệ thống. 27 Hình 3.6: Sơ đồ tổng quát của mô hình. 28 Hình 4.1: mạch in của 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 và 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
- Hình 4.6: Vị trí lắp đặt board Pi 3 và camera. 32 Hình 4.7: Lắp đặt module quang báo trên mô hình 33 Hình 4.8: Lưu đồ chính của hệ thống. 34 Hình 4.9: Lưu đồ chương trình con đo tốc độ và xử lý dữ liệu 35 Hình 4.10: Lưu đồ chương trình gởi dữ liệu lên webserver 37 Hình 4.11: chương trình con truy xuất dữ liệu từ webserver 39 Hình 4.12: chương trình con nhận dữ liệu từ Web Server 40 Hình4.13 điều khiển đèn giao thông theo dữ 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 con 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ụ cơ bản về REPL. 44 Hình 4.18: Tạo file định dạng với định dạng của 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 khi chạy chương trình. 46 Hình 4.23: Thụt đầu dòng trong lệnh for. 46 Hình 4.24: Sử dụng biến. 47 Hình 4.25: Ghi chú trong 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 của bảng Spreadsheet. 59 ix
- Hình 4.32: Đăng nhập vào tài khoản Gmail. 59 Hình 4.33: Tạo google sheets 60 Hình 4.34: Tạo google sheets mới. 60 Hình 4.35: Logo Google Script. 61 Hình 4.36: Giao diện lập trình Google Script. 62 Hình 4.37: Click vào Publish → Chọn Deploy as web app 62 Hình 4.38: Cấp quyền truy cập. 63 Hình4.39: Đăng nhập vào wifi. 64 Hình4.40: Mở Terminal 64 Hình4.41: Tập tin chương trình. 65 Hình4.42: Điền thông tin mạng wifi. 65 Hình4.43: Nạp chương trình cho module. 66 Hình 5.1: Mô phỏng quá trình truyền dữ liệu lên webserver. 68 Hình 5.2: Kết quả dữ liệu được gởi lên google spreadsheet. 68 Hình 5.3: Kết quả dữ liệu nhận về ESP8266. 68 Hình 5.4: Kết quả dữ liệu nhận về Uno thông qua ESP8266. 69 Hình 5.5: Giai đoạn chuẩn bị. 69 Hình 5.6: Mô hình hoàn chỉnh 70 x
- LIỆT KÊ BẢNG Bảng Trang Bảng 2.1 thông số kỹ thuật của Raspberry pi 3 16 Bảng 2.2: thông số kỹ thuật của ESP8266 NodeMCU 17 Bảng 2.3: thông số kỹ thuật của Arduino Uno R3 19 Bảng 2.4: thông số kỹ thuật của camera Pi 20 Bảng 2.5: thông số kỹ thuật của module led matrix P10 21 xi
- TÓM TẮT Sau khi nhận được gợi ý đề tài từ ThS Trương Quang Phúc, nhóm tiến hành tìm hiểu tài liệu liên quan đến nội dung của để tài. Thông qua sự thống nhất ý kiến, tham khảo lời khuyên của GVHD, dựa theo những yêu cầu và hạn chế của những đồ án trước kết hợp với lượng kiến thức đã học. Bắt đầu từ việc tìm hiểu tài liệu liên quan tới xử lý ảnh, các ứng dụng thực tế của xử lý ảnh. Các khái niệm mới như: numpy, scipy Thư viện OpenCV trong việc nhận dạng, xử lý ảnh. Module camera gắn trên kit Raspberry có nhiệm vụ quay video, Raspberry sẽ có nhiệm vụ xử lý ảnh rồi thông qua tính toán tìm ra được tốc độ. Sau đó dữ liệu này sẽ được truyền và lưu trên webserver. ESP8266 NodeMCU có nhiệm vụ truy cập vào webserver lấy dữ liệu đã được Raspberry gởi lên và lưu trên webserver về lưu trong bộ nhớ EPROM thông qua tín hiệu wifi. Sau đó ESP8266 sẽ gởi dữ liệu vừa nhận được qua cho Arduino Uno R3 theo chuẩn giao tiếp UART. Arduino sẽ có nhiệm vụ hiển thị dữ liệu này lên module led matrix P10 để hiển thị. Từ đó sẽ có những lời khuyên để người tham gia giao thông lựa chọn được lộ trình phù hợp. Đồng thời điều khiển họat động của hệ thống đèn tín hiệu giao thông giúp giảm thiểu tình trạng kẹt xe. Nhóm đã xây dựng được mô hình và chạy thử mô hình với điều kiện thực tế. Vì đề tài mang tính chất mô hình nên còn vài hạn chế. xii
- CHƯƠNG 1. TỔNG QUAN Chương 1.TỔNG QUAN 1.1. ĐẶT VẤN ĐỀ Ngày nay, cùng với sự phát triển của đất nước, với nền kinh tế tăng trưởng vượt bậc luôn gắn liền với nhiều vấn đề phát sinh. Trong đó, vấn đề đang được đề cập hàng ngày, hàng giờ trên các phương tiện thông tin đại chúng, được bộ Giao Thông Vận Tải, giới truyền thông quan tâm đặc biệt đó chính là làm sao để giải quyết được tình hình tai nạn giao thông và ùn tắc giao thông như hiện nay. Bởi đó là vấn đề ảnh hưởng trực tiếp đến tính mạng con người tham gia giao thông. Và câu hỏi được đặt ra đó chính là sao và làm thế nào để khắc phục được tình trạng đó? Với mục đích giải đáp câu hỏi trên cùng với mong muốn giúp cho đất nước ta ngày càng đi lên, nên chúng tôi quyết định tìm hiểu, nghiên cứu đề tài “Xây Dựng Mô Hình Giám Sát Giao Thông” để phần nào cải thiện được tình trạng đó. Trước hết, để xây dựng hệ thống giao thông này, chúng tôi đã vận dụng tất cả kiến thức đã được học ở các môn như: Thực tập Hệ Thống Nhúng, Vi Điều Khiển, Vi Xử Lý và các kiến thức từ các nguồn tài liệu khác nhau. Bên cạnh đó là vận dụng các thuật toán xử lý ảnh, giám sát tốc độ, lưu trữ, truyền, nhận dữ liệu, điều khiển, hiển thị, webserver Với đề tài này, chúng tôi muốn mang đến một giải pháp giám sát, phân tích hệ thống giao thông, từ đó sẽ có những gợi ý, định hướng để cho người tham gia giao thông chọn được một lộ trình phù hợp nhằm giảm tải tình trạng kẹt xe như hiện nay. Trên thực tế cũng đã có một vài nhóm thực hiện chủ đề này, nên chúng tôi kế thừa những kiến thức đó và vận dụng xử lý ảnh vào để làm phong phú đề tài, kết hợp với những lời nhận xét, tham khảo ý kiến từ thầy hướng dẫn, chúng tôi đã lên kế hoạch thực hiện đề tài, tìm kiếm tài liệu từ nhiều nguồn khác nhau, thu thập, tìm tòi, học hỏi và chọn lọc để có được nguồn thông tin chính xác nhất. Với đề tài này, tính khả thi rất cao với tình trạng giao thông quá phức tạp như ở nước ta hiện nay, khi mà ý thức tự giác chấp hành luật của người dân còn chưa được đẩy lên cao. 1.2 MỤC TIÊU Việc nghiên cứu xác định tốc độ, từ đó hình thành những hệ thống giao thông thông minh đã được nhiều nước phát triển trên thế giới thực hiện. Nhưng với nước ta thì vấn đề này vẫn còn mới, chưa được đưa vào thực tế, chỉ dừng lại ở nhữngvi ý tưởng. Với mong muốn đóng góp những ý tưởng nhằm xây dựng hệ thống giao thông BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 1
- CHƯƠNG 1. TỔNG QUAN ngày một hoàn thiện, kiểm soát tối ưu, hiệu quả, chúng tôi đã vận dụng các kiến thức được thầy, cô giáo truyền đạt trong suốt những năm học, nghiên cứu để cho ra sản phẩm hoàn hảo, áp dụng vào thực tế, lên mô hình thử nghiệm. 1.3 NỘI DUNG NGHIÊN CỨU NỘI DUNG 1: Tham khảo, nghiên cứu các tài liệu liên quan tới xử lý ảnh, quy trình truyền nhận, quản lý dữ liệu từ sách, báo, tài liệu và đặc biệt là tìm trên các group, diễn đàn trong và ngoài nước, từ đó định hướng đi, hình thành ý tưởng cho đề tài. NỘI DUNG 2: Cài đặt hệ điều hành rasbian, các phần mềm hỗ trợ, các thư viện phục vụ cho việc xử lý ảnh, thư viện cho module ESP NodeMCU, thư viện Opencv cho Kit Raspberry Pi3 cũng như cho máy tính, cấu hình Arduino IDLE cho ESP8266 NodeMCU .Tính toán, lựa chọn linh kiện sao cho phù hợp. NỘI DUNG 3: Nghiên cứu các kiến thức liên quan đến webserver, cách gởi dữ liệu lên webserver và truy xuất dữ liệu từ server, xuất dữ liệu ra led matrix P10 để hiển thị nội dung. NỘI DUNG 4: Thiết kế, thi công, lắp ráp giá đỡ cho kit Raspberry Pi 3 và module camera, lắp ráp các trụ đèn giao thông, tính toán thông số hoàn thiện mô hình. NỘI DUNG 5: Chạy thử mô hình, kiểm tra các thông số thực tế so với các số liệu đã tính toán từ trước, về mức độ sai số cũng như khả năng thích nghi của đề tài với điều kiện thực tế. NỘI DUNG 6: Đánh giá, nhận xét, hướng phát triển để mở rộng đề tài. 1.4 GIỚI HẠN Đề tài mang tính chất mô hình nên sẽ còn một vài hạn chế như sau: Sử dụng module camera của Raspberry Pi 3 nên vùng quan sát, chất lượng hình ảnh còn hạn chế hơn nhiều so với các module camera IP có sẵn trên thị trường. Module led matrix P10 kích thước còn nhỏ, có thể sử dụng các module có kích thước lớn hoặc có thể dùng module led RGB làm cho nội dung hiển thị được đa dạng, sinh động, phong phú hơn. Mô hình có thể phát triển để liên kết tạo thành một hệ thống lớn, đặt ở nhiều nút giao thông khác nhau. Sẽ giảm thiểu đáng kể tình hình giao thông rối rắm như hiện nay. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 2
- CHƯƠNG 1. TỔNG QUAN 1.5 BỐ CỤC Chương 1: Tổng quan. Chương này trình bày đặ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 Nội dung chương này trình bày tất cả các nội dung lý thuyết có liên quan tới đề tài, các thông số kỹ thuật, nguyên lý hoạt động của các module có trong hoạt động của hệ thống. Từ đó lựa chọn linh kiện cho phù hợp với đề tài m,à lại tốn ít chi phí nhất. Chương 3: Tính toán thiết kế Chương này sẽ trình bày sơ đồ khối của hệ thống, chức năng, nhiệm vụ của từng khối. Các thuật toán, phương pháp được sử dụng để giải quyết trong đề tài. Quy trình hoạt động của hệ thống, các tính toán để thiết kế, xây dựng hệ thống hoàn chỉnh. Chương 4: Thi công hệ thống Chương này chủ yếu trình bày, giải thích cụ thể, chi tiết lưu đồ, giải thuật. Thi công hệ thống, thống kê các kết quả mô phỏng được của hệ thống trên PC cũng như chạy hệ thống ngoài điều kiện thực tế. Chương 5: Kết quả, nhận xét, đánh giá Chương này sẽ trình bày các nhận xét, đánh giá những gì đề đã làm được của đề tài. Mức độ hoạt động, sai số của đề tài khi triển khai vào thực tế. Những gì của đề tài còn tồn tại lại. Những kiến thức gì đã học được từ việc làm đè tài. Chương 6: Chương này tổng kết lại quá trình thực hiện của đề tài, sản phẩm thu được từ việc thực hiện đề tài, hướng phát triển của đề tài, nhằm làm cho đề tài phong phú hơn, tính khả thi của đề tài sẽ được áp dụng tốt hơn. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 3
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT Chương 2. CƠ SỞ LÝ THUYẾT 2.1 QUY TRÌNH XỬ LÝ ẢNH 2.1.1 Tổng quan về xử lý ảnh Xử lý ảnh là đối tượng nghiên cứu của lĩnh vực thị giác máy, là quá trình biến đổi từ một ảnh ban đầu sang một ảnh mới với các đặc tính và tuân theo ý muốn của người sử dụng. Xử lý ảnh có thể gồm quá trình phân tích, phân lớp các đối tượng, làm tăng chất lượng, phân đoạn và tách cạnh, gán nhãn cho vùng hay quá trình biên dịch các thông tin hình ảnh của ảnh. Cũng như xử lý dữ liệu bằng đồ hoạ, xử lý ảnh số là một lĩnh vực của tin học ứng dụng. Xử lý dữ liệu bằng đồ họa đề cập đến những ảnh nhân tạo, các ảnh này được xem xét như là một cấu trúc dữ liệu và được tạo bởi các chương trình. Xử lý ảnh số bao gồm các phương pháp và kỹ thuật biến đổi, để truyền tải hoặc mã hoá các ảnh tự nhiên. Mục đích của xử lý ảnh gồm: Biến đổi ảnh làm tăng chất lượng ảnh. Tự động nhận dạng ảnh, đoán nhận ảnh, đánh giá các nội dung của ảnh. Nhận biết và đánh giá các nội dung của ảnh là sự phân tích một hình ảnh thành những phần có ý nghĩa để phân biệt đối tượng này với đối tượng khác, dựa vào đó ta có thể mô tả cấu trúc của hình ảnh ban đầu. Có thể liệt kê một số phương pháp nhận dạng cơ bản như nhận dạng ảnh của các đối tượng trên ảnh, tách cạnh, phân đoạn hình ảnh Kỹ thuật này được dùng nhiều trong y học (xử lý tế bào, nhiễm sắc thể), nhận dạng chữ trong văn bản. Trong đề tài này, ảnh được thu nhận từ tự nhiên được thu nhận qua các thiết bị thu (camera của Raspberry Pi3). Trước đây, ảnh thu qua Camera là các ảnh tương tự. 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 các tiến trình xử lý tiếp theo. 2.1.2 Các quá trình xử lý ảnh Hình 2.1: Quá trình xử lý ảnh. a. Thu nhận ảnh Đây là công đoạn đầu tiên mang tính quyết định đối với quá trình xử lý ảnh. Ảnh đầu vào sẽ được thu nhận qua các thiết bị như: camera, sensor, máy scanner,v.v và sau đó các BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 4
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT tín hiệu này sẽ được số hóa. Việc lựa chọn các thiết bị thu nhận ảnh sẽ phụ thuộc vào đặc tính của các đối tượng cần xử lý. Các thông số quan trọng ở bước này là độ phân giải, chất lượng màu, dung lượng bộ nhớ và tốc độ thu nhận ảnh của các thiết bị. b. Tiền xử lý Quá trình sử dụng các kỹ thuật xử lý ảnh để làm ảnh tốt lên theo mục đích sử dụng. Ý nghĩa của quá trình này là điều chỉnh độ chiếu sáng để khắc phục hậu quả của việc chiếu sáng không đều, giảm nhỏ thành phần nhiễu của các đối tượng ngoài ý muốn xuất hiện trong ảnh, hiệu chỉnh giá trị độ sáng giữa nền và đối tượng và chuẩn hoá độ lớn, màu, hình dạng của ảnh, điều chỉnh bộ lọc để khuyếch đại và nén các tần số. c. Phân đoạn Phân đoạn ảnh là bước then chốt trong xử lý ảnh. Giai đoạn này phân tích ảnh thành những thành phần có cùng tính chất nào đó dựa theo biên hay các vùng liên thông. Tiêu chuẩn để xác định các vùng liên thông có thể là cùng màu, cùng mức xám v.v Mục đích của phân đoạn ảnh là để có một miêu tả tổng hợp về nhiều phần tử khác nhau cấu tạo lên ảnh thô. Vì lượng thông tin chứa trong ảnh rất lớn, trong khi đa số các ứng dụng người sử dụng chỉ cần trích một vài đặc trưng nào đó, do vậy cần có một quá trình để giảm lượng thông tin khổng lồ đó. Quá trình này bao gồm phân vùng ảnh và trích chọn đặc tính chủ yếu. d. Tách các đặc tính Kết quả của bước phân đoạn ảnh thường được cho dưới dạng dữ liệu điểm ảnh thô, trong đó hàm chứa biên của một vùng ảnh, hoặc tập hợp tất cả các điểm ảnh thuộc về chính vùng ảnh đó. Trong cả hai trường hợp, sự chuyển đổi dữ liệu thô này thành một dạng thích hợp hơn cho việc xử lý trong máy tính là rất cần thiết. Để chuyển đổi chúng, câu hỏi đầu tiên cần phải trả lời là nên biểu diễn một vùng ảnh dưới dạng biên hay dưới dạng một vùng hoàn chỉnh gồm tất cả những điểm ảnh thuộc về nó. Biểu diễn dạng biên cho một vùng phù hợp với những ứng dụng chỉ quan tâm chủ yếu đến các đặc trưng hình dạng bên ngoài của đối tượng, ví dụ như: các góc cạnh và điểm uốn trên biên chẳng hạn. Biểu diễn dạng vùng lại thích hợp cho những ứng dụng khai thác các tính chất bên trong của đối tượng, ví dụ như vân ảnh hoặc cấu trúc xương của nó. Sự chọn lựa cách biểu diễn thích hợp cho một vùng ảnh chỉ mới là một phần trong việc chuyển đổi dữ liệu ảnh thô sang một dạng thích hợp hơn cho các xử lý về sau. Người sử dụng còn phải đưa ra một phương pháp mô tả dữ liệu đã BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 5
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT được chuyển đổi đó sao cho những tính chất cần quan tâm đến sẽ được làm nổi bật lên, thuận tiện cho việc xử lý chúng. e. Nhận dạng và giải thích Đây là bước cuối cùng trong quá trình xử lý ảnh. Nhận dạng ảnh có thể được nhìn nhận một cách đơn giản là việc gán nhãn cho các đối tượng trong ảnh. Ví dụ đối với nhận dạng chữ viết, các đối tượng trong ảnh cần nhận dạng là các mẫu chữ, ta cần tách riêng các mẫu chữ đó ra và tìm cách gán đúng các ký tự của bảng chữ cái tương ứng cho các mẫu chữ thu được trong ảnh. Giải thích là công đoạn gán nghĩa cho một tập các đối tượng đã được nhận biết. Người sử dụng cũng có thể thấy rằng, không phải bất kỳ một ứng dụng xử lý ảnh nào cũng bắt buộc phải tuân theo tất cả các bước xử lý đã nêu ở trên, ví dụ như các ứng dụng chỉnh sửa ảnh nghệ thuật chỉ dừng lại ở bước tiền xử lý. Một cách tổng quát thì những chức năng xử lý bao gồm cả nhận dạng và giải thích thường chỉ có mặt trong hệ thống phân tích ảnh tự động hoặc bán tự động, được dùng để rút trích ra những thông tin quan trọng từ ảnh, ví dụ như: các ứng dụng nhận dạng ký tự quang học, nhận dạng chữ viết tay v.v 2.1.3 Ảnh và biễu diễn ảnh a. Khái niệm về ảnh đen trắng, ảnh màu, ảnh đa cấp xám. Ảnh trong thực tế là một ảnh liên tục cả về không gian và giá trị độ sáng. Để có thể xử lý ảnh bằng máy tính thì cần thiết phải tiến hành số hóa ảnh. Quá trình số hóa biến đổi các tín hiệu liên tục sang tín hiệu rời rạc thông qua quá trình lấy mẫu (rời rạc hóa về không gian) và lượng tử hóa các thành phần giá trị mà về nguyên tắc bằng mắt thường không thể phân biệt được hai điểm liền kề nhau. Các điểm như vậy được gọi là các pixel hay các phần tử ảnh hoặc điểm ảnh. Ảnh số (Digital image): đây là đối tượng mà máy tính xử lý. Ảnh số chỉ là một ma trận 2 chiều, và việc xử lý chúng chỉ là những thao tác trên ma trận này sao cho ra kết quả hợp lý. Ví dụ một bức ảnh số có độ phân giải 640x480 nghĩa là chiều ngang có 640 điểm ảnh (pixel), chiều dọc có 480 điểm ảnh, và mỗi điểm ảnh được biểu diễn bằng một con số. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 6
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT Hình 2.2: Mô tả cấu tạo của ảnh số. Tùy theo giá trị dùng để biểu diễn điểm ảnh mà người ta phân ra 3 loại ảnh chính: Ảnh nhị phân (binary image): đó là những bức ảnh mà mỗi điểm ảnh chỉ là những điểm đen hoặc trắng, được quy định bằng một bit. Nếu bit mang giá trị là 0 thì điểm ảnh là điểm đen, còn nếu mang giá trị là 1 thì điểm ảnh là điểm trắng. Do đó để biểu diễn một điểm ảnh đen trắng ta có thể dùng một ma trận nhị phân, là ma trận mà mỗi phần tử chỉ nhận một trong hai giá trị là 0 hoặc 1. Hình 2.3:Kết quả cho hình ảnh nhị phân. Ảnh màu (color image): mỗi điểm ảnh có giá trị gồm 3 màu: đỏ (red) + xanh lục (green) + xanh dương (blue). Mỗi màu có giá trị từ 0 đến 255. Hình 2.4: kết quả hình ảnh cho ảnh màu BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 7
- CHƯƠNG 2. CƠ SỞ LÝ THUYẾT Ảnh xám (gray image): giá trị mỗi điểm ảnh nằm trong giải giá trị từ 0 đến 255, nghĩa là cần 8 bits hay 1 byte để biểu diễn mỗi điểm ảnh này. Hình 2.5: kết quả hình ảnh cho ảnh xám Quá trình tách bit LSB của ảnh xám và thay đổi các bit này bằng thuật toán giấu tin trong ảnh đen trắng sẽ làm chỉ số của điểm màu bị thay đổi 8hon hoặc giảm 1 đơn vị, do đó điểm ảnh mới sẽ có độ sáng tối của ô màu liền trước hoặc liền sau ô màu của điểm ảnh cũ. Bằng mắt thường rất khó có thể nhận thấy sự thay đổi về độ sáng tối này. Ảnh nhỏ hơn hoặc bằng tám màu: Những ảnh thuộc loại này gồm có 16 màu (4 bit màu) và ảnh 256 màu (8 bit màu). Khác với ảnh màu, ảnh xám với số bit nhỏ hơn hoặc bằng 8 bit không phải luôn luôn được sắp xếp màu bảng màu. Ảnh high color (16 bit màu): Ảnh 16 bit màu thực tế chỉ sử dụng 15 bit cho mỗi điểm ảnh trong đó 5 bit biểu diễn cường độ tương đối của màu đỏ, 5 bit biểu diễn cường độ tương đối của màu xanh lam, 5 bit biểu diễn cường độ tương đối của màu xanh lơ. Còn lại một bit không dùng đến là bit cao nhất của byte thứ hai trong mỗi cặp thứ hai byte biểu diễn một điểm ảnh, đó chính là bit LSB của ảnh 16 bit màu. Việc thay đổi giá trị của những bit này sẽ không hề ảnh hưởng tới màu sắc của từng điểm ảnh trong môi trường. Ảnh true color (24 bit màu): sử dụng 3 byte cho mỗi điểm ảnh, mỗi byte biểu diễn một thành phần trong cấu trúc RGB. Trong mỗi byte các bit cuối cùng của mỗi byte trong phần dữ liệu ảnh là các bit LSB của ảnh true color. Để 8hon lượng thông tin giấu được vào ảnh môi trường, từ mỗi byte của ảnh true color ra sẽ lấy nhiều hơn một bit để tạo thành ảnh thứ cấp. Thông thường cũng chỉ nên lấy nhiều nhất 4 bit cuối cùng của mỗi byte để ảnh kết quả không bị nhiễu đáng kể, khi đó lượng thông tin tối đa có thể giấu trong ảnh cũng 8hon lên gấp bốn lần so với lượng thông tin tối đa giấu được trong ảnh đó nếu chỉ lấy 1 bit cuối cùng ở từng byte. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 8
- S K L 0 0 2 1 5 4