Xem mẫu

  1. BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH --------------------------------- ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐẾM ĐỐI TƯỢNG TRONG ẢNH SỬ DỤNG KÍT ARDUINO HIỂN THỊ TRÊN LCD GVHD: ThS. Nguyễn Duy Thảo SVTH: Phan Thành Hưng MSSV: 13141125 Tp. Hồ Chí Minh - 1/2018
  2. BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH --------------------------------- ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐẾM ĐỐI TƯỢNG TRONG ẢNH SỬ DỤNG KÍT ARDUINO HIỂN THỊ TRÊN LCD GVHD: ThS. Nguyễn Duy Thảo SVTH: Phan Thành Hưng MSSV: 13141125 Tp. Hồ Chí Minh - 1/2018
  3. TRƯỜNG ĐH. SƯ PHẠM KỸ THUẬT TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM KHOA ĐIỆN-ĐIỆN TỬ Độc lập – Tự do – Hạnh phúc BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH TP. Hồ Chí Minh, ngày 15 tháng 1 năm 2018 BẢNG MÔ TẢ CÔNG VIỆC Họ tên sinh viên 1: PHAN THÀNH HƯNG MSSV: 13141125 Lớp: 13141DT3A Họ tên sinh viên 2: TRẦN VĂN THẠCH MSSV: 13141304 Lớp: 13141DT3A Tên đề tài: ĐẾM ĐỐI TƯỢNG TRONG ẢNH. 1. MÔ TẢ MỤC TIÊU CỦA ĐỀ TÀI: Mục tiêu của đề tài là xây dựng một hệ thống đếm đối tượng trong ảnh được chụp bằng camera, nhúng dữ liệu đếm được xuống kit Arduino để điều khiển LCD hiển thị kết quả đếm được Đề tài sử dụng thuật toán đánh nhãn để đối tượng trong ảnh. Xây dựng giao diện để người dùng có thể dễ dàng thao tác. Viết hướng dẫn thao tác sử dụng hệ thống. 2. MÔ TẢ CÔNG VIỆC THỰC HIỆN ĐỀ TÀI CỦA TỪNG SINH VIÊN: Họ tên Sinh viên 1: PHAN THÀNH HƯNG Các công việc thực hiện trong đề tài: STT NỘI DUNG CÔNG VIỆC 1 Tham khảo tài liệu liên quan đến đề tài của những tác giả đã thực hiện. Viết chương trình đếm đối tượng( thuật toán đánh nhãn), điều khiển kit 2 Arduino. 3 Chỉnh sửa hệ thống. 4 Viết báo cáo. ii
  4. Họ tên Sinh viên 2: TRẦN VĂN THẠCH Các công việc thực hiện trong đề tài: STT NỘI DUNG CÔNG VIỆC 1 Tham khảo tài liệu liên quan đến đề tài của những tác giả đã thực hiện. Viết chương trình đếm đối tượng (thuật toán đánh nhãn), điều khiển kit 2 Arduino. 3 Chụp ảnh phục vụ cho quá trình đếm đối tượng 4 Chỉnh sửa báo cáo. SINH VIÊN 1 SINH VIÊN 2 (Ký ghi rõ họ tên) (Ký ghi rõ họ tên) XÁC NHẬN CỦA GIẢNG VIÊN HƯỚNG DẪN (Ký ghi rõ họ tên) iii
  5. TRƯỜNG ĐH. SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TP. HỒ CHÍ MINH ĐỘC LẬP - TỰ DO - HẠNH PHÚC KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Tp. HCM, ngày 15 tháng 1 năm 2018 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Phan Thành Hưng MSSV: 13141125 Trần Văn Thạch MSSV: 13141304 Chuyên ngành: Kỹ thuật Điện Tử Truyền Thông Mã ngành: 01 Hệ đào tạo: Đại học chính quy Mã hệ: 1 Khóa: 2013 Lớp: 13141DT3A I. TÊN ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐẾM SỐ LƯỢNG TRONG ẢNH SỬ DỤNG KÍT ARDUINO HIỂN THỊ TRÊN LCD. II. NHIỆM VỤ 1. Các số liệu ban đầu:  Bộ ảnh đếm: 30 ảnh gồm 10 ảnh tế bào, 10 ảnh cây gỗ, 10 ảnh vỉ thuốc.  Matlab phiên bản 2015a.  Kit điều khiển chính: Arduino Uno R3, LCD 16x2 2. Nội dung thực hiện: Đề tài thực hiện nội dung xây dựng hệ thống đếm đối tượng qua hình ảnh với đầu vào là ảnh chứa các đối tượng( tế bào, cây, vỉ thuốc). Kết quả đếm được sẽ được nhúng dữ liệu điều khiển tương ứng xuống kit Arduino. Nhóm sẽ thực hiện các nội dung như sau:  Tìm hiểu kit Arduino.  Cài đặt nguồn thư viện cho kit Arduino, cách kết nối Arduino với Matlab.  Tìm hiểu các thuật toán đánh nhãn.  Xây dựng quá trình xử lý ảnh đầu vào.  Xây dựng hệ thống đếm đối tượng trong ảnh, lập trình các ứng dụng nhúng dữ liệu trên kit Arduino.  Đánh giá kết quả thực hiện. III. NGÀY GIAO NHIỆM VỤ: 25/09/2017 IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 15/01/2018 V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS. Nguyễn Duy Thảo. CÁN BỘ HƯỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP – Y SINH iv
  6. TRƯỜNG ĐẠI HỌC SPKT TPHCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Khoa Điện - Điện Tử Độc lập - Tự do - Hạnh phúc Bộ Môn Điện Tử Công Nghiệp – Y Sinh Tp. Hồ Chí Minh, ngày 15 tháng 1 năm 2018 LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên 1: Phan Thành Hưng. Lớp: 13141DT3A MSSV: 13141125 Họ tên sinh viên 2: Trần Văn Thạch Lớp: 13141DT3A MSSV: 13141304 Tên đề tài: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG ĐẾM SỐ LƯỢNG TRONG ẢNH SỬ DỤNG KÍT ARDUINO HIỂN THỊ TRÊN LCD. Xác nhận Tuần/ngày Nội dung GVHD Tuần 1,2 Tìm đề tài Tuần 3 Tìm hiểu hoạt động Arduino và Matlab. Tuần 4 Cài đặt Matlab, kết nối Arduino với Matlab. Tuần 5,6 Lập trình Arduino với các chân I/O để nhúng dữ liệu. Tuần 7,8,9 Lập trình và xây dựng chương trình xử lý ảnh đầu vào Tuần 10,11,12 Lập trình chương trình đếm đối tượng trong ảnh và chương trình giao diện người dùng. Tuần 13,14 Hiệu chỉnh toàn bộ chương trình. Tuần 15,16,17 Viết báo cáo đồ án. Tuần 18 Chỉnh sửa, in đồ án. GV HƯỚNG DẪN (Ký và ghi rõ họ và tên) v
  7. LỜI CAM ĐOAN Chúng tôi cam đoan ĐATN là công trình nghiên cứu của bản thân chúng tôi dưới sự hướng dẫn của Thạc sỹ Nguyễn Duy Thảo. Các kết quả công bố trong ĐATN “Thiết kế và thi công hệ thống đếm số lượng trong ảnh sử dụng kít Arduino hiển thị LCD” là trung thực và không sao chép hoàn toàn từ công trình nào khác. Người thực hiện đề tài Phan Thành Hưng Trần Văn Thạch vi
  8. LỜI CẢM ƠN Trong quá trình làm đồ án tốt nghiệp, chúng em đã nhận được rất nhiều sự ủng hộ, giúp đỡ đóng góp ý kiến và chỉ bảo nhiệt tình của thầy cô, gia đình và bạn bè. Chúng em xin gửi lời cảm ơn chân thành đến Th.S Nguyễn Duy Thảo - Trường Đại học Sư phạm Kỹ thuật Tp.HCM đã tận tình hướng dẫn chỉ bảo trong suốt thời gian làm luận án tốt nghiệp. Thầy đã tạo nhiều điều kiện và cho những lời khuyên quý báu giúp chúng em hoàn thành tốt khóa luận. Xin chân thành cảm ơn thầy cô giáo trong Trường Đại học Sư phạm Kỹ thuật Tp.HCM nói chung, các thầy cô trong Bộ môn Điện tử Công Nghiệp – Y Sinh nói riêng đã tận tình giảng dạy, truyền đạt cho chúng em những kiến thức quý báu và tạo điều kiện giúp đỡ trong suốt quá trình học tập trong những năm học vừa qua, giúp chúng em có được cơ sở lý thuyết vững vàng. Cuối cùng, chúng em xin chân thành cảm ơn gia đình và bạn bè, đã luôn tạo điều kiện, quan tâm, ủng hộ, giúp đỡ, động viên chúng em trong suốt quá trình học tập và hoàn thành đồ án tốt nghiệp. Chúng em xin chân thành cảm ơn! Người thực hiện đề tài Phan Thành Hưng Trần Văn Thạch vii
  9. MỤC LỤC Trang bìa .......................................................................................................................... i Bảng mô tả công việc ...................................................................................................... ii Nhiệm vụ đồ án .............................................................................................................. iv Lịch trình ........................................................................................................................ v Cam đoan ...................................................................................................................... vi Lời cảm ơn .................................................................................................................... vii Mục lục......................................................................................................................... viii Liệt kê hình .................................................................................................................... xi Liệt kê bảng .................................................................................................................. xiii Tóm tắt ......................................................................................................................... xv CHƯƠNG 1. TỔNG QUAN ......................................................................................... 1 1.1. Đặt vấn đề. ......................................................................................................... 1 1.2. Mục tiêu. ............................................................................................................ 2 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 Giới thiệu xử lý ảnh ........................................................................................... 4 2.2 Tổng quan về Matlab. ........................................................................................ 5 2.3 Giới thiệu lịch sử hình thành Arduino. .............................................................. 6 2.4 Giới thiệu về phần cứng. ................................................................................... 8 2.4.1 Kit Arduino Uno. .............................................................................................. 8 2.4.2 Giới thiệu về LCD 16x2 .................................................................................. 10 2.4.3 Giao tiếp I2C ................................................................................................... 11 2.5 Một số phương pháp trong xử lý ảnh ............................................................... 12 2.5.1 Xử lý điểm ảnh: ................................................................................................ 12 2.5.2 Làm trơn nhiễu bằng lọc tuyến tính ................................................................. 15 2.5.3 Nhị phân hóa ngưỡng tự động......................................................................... 16 2.5.4 Phân vùng ảnh: ................................................................................................ 17 2.5.5 Phép toán Dilation. .......................................................................................... 18 2.5.6 Phép toán Erosion. .......................................................................................... 19 2.5.7 Phép toán Openning. ....................................................................................... 20 2.5.8 Phép toán Closing ........................................................................................... 20 viii
  10. 2.5.9 Thuật toán đánh nhãn: ..................................................................................... 25 2.6 Các hàm xử lý trong Matlab. .......................................................................... 25 CHƯƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ ............................................................. 28 3.1 Giới thiệu. ........................................................................................................ 28 3.2 Thiết kế hệ thống. ............................................................................................ 28 3.2.1 Thiết kế sơ đồ khối hệ thống. .......................................................................... 28 3.2.2 Thiết kế các khối hệt thống. ............................................................................ 30 3.3 Tổng quan về phần cứng. ................................................................................ 32 3.3.1 Tổng quan các khối chính. ............................................................................... 32 3.3.2 Board Arduino Uno R3.................................................................................... 33 3.4 Cài đặt các gói hỗ trợ phần cứng cho Matlab................................................... 37 3.4.1 Kết nối Arduino với Matlab. ............................................................................ 37 3.4.2 Kiểm tra kết nối Arduino với Matlab. .............................................................. 40 3.4.3 Kết nối LCD với I2C ........................................................................................ 40 CHƯƠNG 4. THI CÔNG HỆ THỐNG .................................................................... 42 4.1 Giới thiệu. ........................................................................................................ 42 4.2 Thi công hệ thống. ........................................................................................... 42 4.3 Lưu đồ hệ thống. .............................................................................................. 43 4.3.1 Tổng quát về hệ thống ..................................................................................... 43 4.3.2 Chi tiết về hệ thống. ......................................................................................... 43 4.4 Viết tài liệu hướng dẫn sử dụng, thao tác ........................................................ 47 4.4.1 Viết tài liệu hướng dẫn sử dụng. ...................................................................... 47 4.4.2 Quy trình thao tác trên giao diện. ..................................................................... 48 CHƯƠNG 5. KẾT QUẢ _ NHẬN XÉT _ĐÁNH GIÁ ............................................. 49 5.1 Kết quả............................................................................................................. 49 5.1.1 Tổng quan kết quả đạt được. ........................................................................... 49 5.1.2 Kết quả thực tế. ................................................................................................ 49 5.2 Nhận xét và đánh giá. ....................................................................................... 60 CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.......................................... 62 6.1 Kết luận. ........................................................................................................... 62 6.2 Hướng phát triển. ............................................................................................. 63 TÀI LIỆU THAM KHẢO .......................................................................................... 64 PHỤ LỤC .................................................................................................................... 65 ix
  11. LIỆT KÊ HÌNH Hình Trang Hình 2.1: Những thành viên khởi xướng Arduino .............................................................. 7 Hình 2.2. Cấu trúc phần cứng của Arduino Uno. ............................................................... 9 Hình 2.3. Hình ảnh LCD ................................................................................................... 10 Hình 2.4 : Hình ảnh I2C. ................................................................................................... 12 Hình 2.5: Chuyển ảnh màu thành ảnh xám ....................................................................... 13 Hình 2.6. Lược đồ xám. .................................................................................................... 14 Hình 2.7. Ảnh xám và ảnh nhị phân. ................................................................................ 14 Hình 2.8. Ngưỡng tự động theo T1 và T2 ......................................................................... 17 Hình 2.9.a.Đối tượng cần phình A và nhân tạo ảnh B,b.Minh họa quét các b,khắp A .... 19 Hình 2.10.Kết quả của phép toán Dilation. ....................................................................... 19 Hình 2.11.Kết quả của phép toán Erosion. ....................................................................... 19 Hình 2.12.Vật có cấu trúc đơn giản-hình vuông và phức tạp và hình xoắn ốc. ................ 21 Hình 2.13. Lưu đồ giải thuật cho thuật toán đánh nhãn .................................................... 22 Hình 2.14. Lưu đồ giải thuật cho toán đánh nhãn ............................................................. 23 Hình 2.15 Vật thể màu đen đã được đánh nhãn ............................................................... 23 Hình 2.16. Mô phỏng thuật toán đánh nhãn. ..................................................................... 24 Hình 2.17. Số lượng vật được xác định dựa vào RAM..................................................... 25 Hình 3.1. Sơ đồ quá trình đếm đối tượng......................................................................... 29 Hình 3.2. Sơ đồ nguyên lý khối ứng dụng. ...................................................................... 31 Hình 3.3. Tổng quan các khối. .......................................................................................... 32 Hình 3.4. Sơ đồ nguyên lý board Arduino Uno R3. ......................................................... 33 Hình 3.5. Sơ đồ chân ATmega328. ................................................................................... 34 Hình 3.6. Cầu USB-to-UART. .......................................................................................... 36 Hình 3.7. Bộ nguồn. .......................................................................................................... 37 Hình 3.8. Get Hardware Support Package. ....................................................................... 38 Hình 3.9. Cửa sổ “Support Package Installer”. ................................................................. 38 Hình 3.10. Giao diện cài Package cho Arduino. ............................................................... 39 Hình 3.11. Đăng nhập cho cửa sổ “MathWorks Account Log In”. .................................. 39 Hình 3.12.Kết nối Arduino và Matlab thành công. ........................................................... 40 xi
  12. Hình 3.13.Kết quả trả về khi kết nối I2C .......................................................................... 41 Hình 4.1. Mô hình trong quá trình thực hiện. ................................................................... 42 Hình 4.2. Lưu đồ chính hệ thống. ..................................................................................... 43 Hình 4.3. Lưu đồ đếm đối tượng ....................................................................................... 44 Hình 4.4. Lưu đồ chương trình đếm đối tượng. ................................................................ 45 Hình 4.5. Lưu đồ chương trình dếm đối tượng. ................................................................ 46 Hình 4.6. Lưu đồ chương trình điều khiển ứng dụng trên Arduino. ................................. 47 Hình 4.7. Quy trình thao tác với thuật toán đánh nhãn. .................................................... 48 Hình 5.1. Giao diện ban đầu ............................................................................................. 50 Hình 5.2. Giao diện chọn lựa đối tượng đếm. ................................................................... 50 Hình 5.3. Giao diện đếm tế bào. ....................................................................................... 51 Hình 5.4. Giao diện đếm cây............................................................................................. 52 Hình 5.5. Giao diện đếm thuốc. ........................................................................................ 52 Hình 5.6. 10 bức ảnh đếm tế bào mà nhóm thực hiền đề tài............................................. 53 Hình 5.7. Đếm tế bào màu hồng thành công. .................................................................... 53 Hình 5.8. Đếm tế bào màu tím sạm thành công. ............................................................... 54 Hình 5.9. 10 Bức ảnh đếm cây mà nhóm thực hiện đề tài ................................................ 55 Hình 5.10.Đếm cây loại 1 thành công ............................................................................... 55 Hình 5.11. Đếm cây loại 2 thành công .............................................................................. 56 Hình 5.12. 10 bức ảnh đếm thuốc nhóm thực hiện đề tài ................................................. 56 Hình 5.13. Đếm thuốc loại 1 thành công .......................................................................... 57 Hình 5.14. Đếm thuốc đen loại 2 thành công.................................................................... 58 Hình 5.15. Kết quả hiện thị đếm đối tượng ra LCD ......................................................... 59 xii
  13. LIỆT KÊ BẢNG Bảng Trang Bảng 2.1. Thông số kỹ thuật Arduino Uno......................................................................... 8 Bảng 2.2:Chức năng các chân của LCD. .......................................................................... 10 Bảng 2.3 Các hàm xử lý hình ảnh khác trong Matlab. ..................................................... 27 Bảng 5.1.Kết quả đếm tế bào ............................................................................................ 40 Bảng 5.2.Kết quả đếm thuốc. ........................................................................................... 60 Bảng 5.3.Kết quả đếm cây. ............................................................................................... 60 xiii
  14. TÓM TẮT Việc đếm số lượng đối tượng là một nhiêm vụ khá phổ biến trong các ngành công nghiệp bằng các phương pháp khác nhau. Đếm số lượng đối tượng được sử dụng để thu được số lượng nhất định các yếu tố từ ảnh. Vì thế, bài toán đếm đối tượng trong ảnh là một đề tài khá mới mẻ và đang được chú ý để phát triển với phép đếm tự động bởi tầm nhin máy tính để tiết kiệm thời gian, công sức. Đề tài: “Thiết kế và thi công hệ thống đếm đối tượng trong ảnh sử dụng kit Arduino hiển thị trên LCD” nghiên cứu xây dựng phương pháp xử lý ảnh đầu vào, các phương pháp hinh thái học và đếm đối tượng trong ảnh để điều khiển ứng dụng trên kit Arduino tương ứng với kết quả giá trị nhận được. Các nội dung nghiên cứu bao gồm: Tìm hiểu kit Arduino; Tìm hiểu các phương pháp tiền xử lý ảnh ; Tìm hiểu các phép toán hình thái học; Xây dựng thuật toán đánh nhãn để đếm đối tượng trong ảnh. Đề tài được xây dựng chủ yếu trên phần mềm Matlab. Mô hình do nhóm thực hiện đã đạt được mục tiêu do nhóm đặt ra. Hiệu suất việc đếm đối tượng cao, điều khiển các ứng dụng trên kit Arduino. Tuy nhiên, việc đếm đối tương còn phụ thuộc nhiều vào môi trường khác nhau như: ánh sáng nền, màu sắc đối tương nên gây khó khăn cho viêc đếm đối tương sai số. xv
  15. CHƯƠNG 1.TỔNG QUAN Chương 1. TỔNG QUAN 1.1. ĐẶT VẤN ĐỀ. Trong những năm gần đây, mặc dù còn mới mẻ trong lĩnh vực khoa học và công nghệ nhưng xử lý ảnh đang được nghiên cứu và phát triển với tốc độ nhanh chóng bởi các trung tâm nghiên cứu, trường đại học và học viện…với rất nhiều ứng dụng trên các lĩnh vực khác nhau[1]. Đi cùng với sự phát triển đó, phần lớn các thiết bị điện tử đều dần phát triển theo hướng tự động hóa, thông minh, có thể giao tiếp, tương tác trực tiếp với người dùng. Đáp ứng được điều đó rất nhiều bài toán, giải thuật lần lượt giải quyết được vấn đề. Một trong số đó là bài toán đếm số lượng, phát triển ngày càng hiện đại, yêu cầu độ chính xác ngày càng cao. Trong thời đại bùng nổ về công nghệ thông tin như hiện nay, việc đếm số lượng đối tượng là một nhiệm vụ khá phổ biến được thực hiện nhiều trong các ngành công nghiệp bằng các phương thức khác nhau. Đếm đối tượng được sử dụng để nhận được một số lượng nhất định các yếu tố từ hình ảnh. Những yếu tố này hoạt động như một nguồn thông tin để phân tích định lượng, theo dõi chuyển động và phân tích định tính. Việc đếm số lượng các đối tượng được thực hiện trong các môi trường khác nhau với khác đối tượng có kích thước, số lượng khác nhau. Nhưng kết quả đem lại thường không cao, sai số lớn và mất nhiều thời gian. Vì thế mà việc đếm bằng phương pháp đếm thủ công phải được thay thế bằng đếm tự động bởi tầm nhìn máy tính. Đếm tự động sẽ giúp chúng ta tiết kiệm được thời gian, công sức, tăng khả năng chính xác và áp dụng cho nhiều đối tượng khác nhau chẳng hạn như: đếm tế bào, cá, trứng, ic, xe … Ở nước ta hiện nay, lĩnh vực đếm trong xử lý ảnh đã có nhũng phát triển đáng kể. Tuy nhiên nó chỉ mới phát triển dựa trên nền tảng phần cứng và chưa được áp dụng rỗng rãi trong thực tế. Vệc giải quyết bài toán này theo hướng tiếp cận sử dụng phần mềm chưa được quan tâm phát triển Xuất phát từ mục tiêu tiếp cận, bổ sung các kiến thức mới, cũng như củng cố lại những kỹ năng kiến thức trong suốt quá trình học tập tại trường. Đồng thời nghiên cứu sâu BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 1
  16. CHƯƠNG 1.TỔNG QUAN hơn về ứng dụng của xử lý ảnh, nghiên cứu các thuật đếm đối tượng trong ảnh và thực hiện đếm đối tượng rồi nhúng dữ liệu xuống kit Arduino[2]. Do đó, nhóm thực hiện đồ án chọn đề tài: “Đếm đối tượng trong ảnh”. 1.2. MỤC TIÊU. Mục tiêu của đề tài là xây dựng hệ thống đếm đối tượng qua hình ảnh với đầu vào là ảnh có chứa đố tượng cần đếm từ ảnh chụp. Với số lượng đối tượng đếm được sẽ được sẽ nhúng dữ liệu điều khiển tương ứng xuống kit Arduino. 1.3. NỘI DUNG NGHIÊN CỨU. Mục tiêu xây dựng hệ thống: “Đếm đối tượng qua hình ảnh ” như trên thì nhóm sẽ thực hiện những nội dung như sau:  NỘI DUNG 1: Tìm hiểu kit Arduino.  NỘI DUNG 2: Cài đặt nguồn thư viện cho kit Arduino, cách kết nối module Arduino với phần mềm Matlab.  NỘI DUNG 3: Tìm hiểu các thuật toán cần thiết liên quan đến đếm đối tương trong ảnh.  NỘI DUNG 4: Xây dựng thuật toán tạo cơ sở dữ liệu cần thiết cho mục đích đếm đối tượng.  NỘI DUNG 5: Xây dựng hệ thống đếm đối tượng qua hình ảnh , lập trình các ứng dụng nhúng dữ liệu trên kit Arduino.  NỘI DUNG 6: Đánh giá kết quả thực hiện. 1.4 GIỚI HẠN. Mô hình gồm có kit Arduino Uno, máy tính Laptop để thực hiện hệ thống đếm đối tượng qua hình ảnh trên phần mềm Matlab sau đó nhúng dữ liệu xuống kit Arduino. Hệ thống nhận dạng ảnh với kích thước 128x128 với các phương pháp tiền xử lý ảnh đầu vào và thuật toán đánh nhãn để đếm các đối tượng có trong ảnh . Ảnh chụp từ camera điện thoại. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 2
  17. CHƯƠNG 1.TỔNG QUAN 1.5. BỐ CỤC. Đồ án tốt nghiệp: “Đếm đối tượng trong ảnh” trình bày trong 6 chương với bố cục như sau:  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. Giới thiệu về phần Matlab, giới thiệu về Arduino, giới thiệu về xử lý ảnh Giới thiệu về kit Arduino, LCD và I2C. 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 đánh nhãn trong việc đếm đối tượng.  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 đối tượng qua hình ảnh được viết trên phần mềm Matlab, sử dụng thư viện của Matlab cho kit Arduino.  Chương 4: Thi công hệ thống. Xây dựng chương trình hoàn chỉnh cho toàn hệ thống, các hàm, các lưu đồ, các 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á. Nêu các kết quả đạt được khi thực hiện chương trình, phân tích, nhận xét, đánh giá kết quả thực thi được.  Chương 6: Kết luận và hướng phát triển. Tóm tắt những kết quả đạt được, những hạn chế và nêu lên các hướng phát triển trong tương lai. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 3
  18. CHƢƠNG 2.CƠ SỞ LÝ THUYẾT Chƣơng 2. CƠ SỞ LÝ THUYẾT 2.1 GIỚI THIỆU XỬ LÝ ẢNH[1] Xử lý ảnh là một lĩnh vực mang tính khoa học và công nghệ. Nó là một ngành khoa học mới mẻ so với nhiều ngành khoa học khác nhưng tốc độ phát triển của nó rất nhanh, kích thích các trung tâm nghiên cứu, ứng dụng, đặc biệt là máy tính chuyên dụng riêng cho nó. 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, Sá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. Ứ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. 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. Để 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 BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 4
  19. CHƢƠNG 2.CƠ SỞ LÝ THUYẾT 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. 2.2 TỔNG QUAN VỀ MATLAB[4]. Matlab (Matrix Laboratory) là một môi trường tính toán số và lập trình, được thiết kế bởi công ty MathWorks, là ngôn ngữ lập trình thực hành bậc cao được sử dụng nhiều để giải các bài toán kỹ thuật. Matlab tích hợp việc tính toán thể hiện kết quả cho phép lập trình, giao diện làm việc rất dễ dàng cho người sử dụng. Dữ liệu cùng với thư viện được lập trình sẵn cho phép người dùng có được những ứng dụng như:  Tính toán các phép toán học thông thường, tính toán ma trận.  Lập trình tạo ra những ứng dụng mới.  Cho phép mô phỏng các mô hình thực tế.  Phân tích, khảo sát, hiển thị dữ liệu.  Với phần mềm đồ họa cực mạnh.  Matlab giúp đơn giản hóa việc giải quyết các bài toán tính toán kỹ thuật so với các ngôn ngữ lập trình truyền thống như C, C++, và Fortran. Matlab là một hệ thống tương giao chúng cho phép giải quyết các vấn đề liên quan đến lập trình bằng máy tính, đặc biệt sử dụng các phép tính về ma trận hay vector và có thể sử dụng ngôn ngữ C hoặc Fortran lập trình rồi thực hiện ứng dụng lập trình đó bằng các câu lệnh gọi từ Matlab. Matlab được sử dụng trong nhiều lĩnh vực, bao gồm xử lý tín hiệu và ảnh, truyền thông, thiết kế điều khiển tự động, đo lường kiểm tra, phân tích mô hình tài chính, hay tính toán sinh học. Matlab cung cấp giải pháp chuyên dụng gọi là Toolbox. Toolbox là một tập hợp toàn diện các hàm của Matlab (M-file). Hệ thống Matlab gồm 5 phần chính:  Ngôn ngữ Matlab: Cho phép lập trình từ các ứng dụng nhỏ đến phức tạp. Đó là các ngôn ngữ cao về ma trận và mảng, các dòng lệnh, các hàm, cấu trúc dữ liệu vào. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 5
  20. CHƢƠNG 2.CƠ SỞ LÝ THUYẾT  Môi trường làm việc: Bao gồm các phương tiện cho việc quản lý các biến trong không gian làm việc Workspace cũng như xuất nhập dữ liệu. Nó cũng bao gồm các công cụ phát triển, quản lý, gỡ rối và định hình M-file.  Xử lý đồ họa: Bao gồm các lệnh cao cấp cho trực quan hóa dữ liệu hai chiều và ba chiều, xử lý ảnh, ảnh động. Cung cấp các giao diện tương tác giữa người sử dụng và máy tính.  Thư viện toán học: Các hàm cơ bản như cộng, trừ, nhân, chia, sin, cos …và các hàm phức tạp như tính ma trận nghịch đảo, trị riêng, chuyển đổi fourier, laplace, symbolic library.  Giao diện người dùng (Application Program Interface): Cho phép viết chương trình tương tác với các ngôn ngữ khác C, Fortran ... Simulink là một chương trình đi kèm với Matlab, là một hệ thống tương tác với việc mô phỏng các hệ thống động phi tuyến, mô phỏng mạch. 2.3 GIỚI THIỆU LỊCH SỬ HÌNH THÀNH ARDUINO[3]. Arduino thực sự đã gây sóng gió trên thị trường người dung DIY ( là những người tự chế ra sản phẩm của mình) trên toàn thế giới trong vài năm gần đây, gần giống với những gì Apple đã làm được trên thị trường thiết bị di động. Số lượng người dung cực lớn và đa dạng với trình độ trải rộng từ bậc phổ thông lên đến đại học làm cho ngay cả những người tạo ra chúng phải ngạc nhiên về mức độ phổ biến. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 6
nguon tai.lieu . vn