Tiếp theo ta chọn File -> chon tiếp New File để xuất hiện khung bên cạnh là ta đã tạo đƣợc File mới.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 45 Hình 4.8: Tạo project mới
Viết chƣơng trình hệ thống
Chƣơng trình hệ thống bao gồm các phần (Đƣợc trình bày ở phụ lục). Thƣ viện.
Chƣơng trình chính.
Chƣơng trình con nhận dạng và phân loại sản phẩn. Chƣơng trình con tính khoảng cách.
4.5 MƠ PHỎNG
4.5.1 Lƣu đồ
Ảnh đầu vào Bắt đầu
Kiểm tra và xuất kết quả
Kết thúc
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 46 Ảnh đầu vào: với phần mềm Paint (phần mềm vẽ) trên Window để tạo ra đƣợc
các hình dạng của sản phẩm cơ bản, hoặc lấy hình trên internet.
Kiểm tra: là quá trình kiểm tra những giải thuật đƣợc viết ở trên có đúng hay
sai đƣợc kiểm tra trên python sau đó xuất kết quả. Các bƣớc kiểm tra bao gồm:
- Kiểm tra việc xử lý hình ảnh. - Kiểm tra tách biên và lấp đầy.
- Kiểm tra phân loại và nhận dạng sản phẩm.
Hình 4.10: Kiểm tra các bƣớc thực hiện
4.5.2 Xử lý tín hiệu hay hình ảnh
BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH 47
Ở giai đoạn đầu ta mơ phỏng trên những hình học cơ bản trƣớc với các hình cơ bản là hình chữ nhật, hình trịn, hình vng, hình tam giác.
b. Kiểm tra tiền xử lý ảnh
Hình 4.11: Ảnh xám
Tại đây ta xử lý chất lƣợng ảnh cùng với việc chuyển đổi ảnh xám
c. Kiểm tra tách biên và lấp đầy
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 48 Hình 4.13: Lấp đầy biên
d. Kiểm tra nhận dạng và phân loại sản phẩm
Hình 4.14: Kết quả nhận dạng phân loại sản phẩm. 4.6 VIẾT TÀI LIỆU HƢỚNG DẪN SỬ DỤNG, THAO TÁC 4.6 VIẾT TÀI LIỆU HƢỚNG DẪN SỬ DỤNG, THAO TÁC 4.6.1 Viết tài liệu hƣớng dẫn sử dụng
Bƣớc 1: Lắp camera vào hệ thống và kiểm tra hệ thống đã nhận camera chƣa
Sau khi cấp nguồn cho hệ thống, đợi hệ thống khởi động xong ta truy cập vào IDLE để thực thi chƣơng trình test camera.
Bƣớc 2: Kiểm tra cài đặt python và cài đặt những thƣ viện liên quan cho python.
Ta tiến hành mở cửa sổ command line lên, gõ python xem hệ thống đã cài đặt thành công python hay chƣa. Một trong những điểm mạnh của python là có thể dùng lại rất nhiều thƣ viện và package khác mà mình khơng phải mất cơng viết lại từ đầu.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 49
Bản thân mỗi module, mỗi package đã chuyên mơn hố một số việc cho mình. Khi muốn cài một package nào đó, ta có thể dùng lệnh pip install <tên package>. Chúng ta cài đặt các package không cần phải tải về lằng nhằng mà chỉ cần gõ 1 dòng lệnh là đủ.
Vì thế dùng pip để cài đặt thƣ viện cho hệ thống một cách dễ dàng, ta mở command line lên và gõ những dòng lệnh theo mẫu trên để cài đặt những thƣ viện: OpenCV, Numpy, Spicy.
Kiểm tra xem tất cả thƣ viện ta cần cho chƣơng trình đều đã sẵn sàng chƣa:
Hình 4.15: Kiểm tra thƣ viện
Bƣớc 3: Mở IDLE và chạy chƣơng trình nhận dạng sản phẩm và tính kích thƣớc.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 50 Bƣớc 4: Quan sát kết quả thu đƣợc khi đƣa từng sản phẩm (những khối hình) vào
khung hình camera ở những vị trí khác nhau.
Ta tiến hành di chuyển sản phẩm và đặt đến từng vị trí khác nhau để quan sát xem kích thƣớc thực của sản phẩm có chính xác hay bị thay đổi khơng đồng thời độ dài các cạnh thực tế của sản phẩm có đúng với kết quả hay khơng.
4.6.2 Quy trình thao tác
Hình 4.17: Quy trình vận hành Khởi động hệ thống và chạy chƣơng trình Khởi động hệ thống và chạy chƣơng trình
Là quá trình kết nối các thiết bị ngoại vi bên ngoài với laptop (ở đây là camera 3D ). Sau khi hệ thống nhận thiết bị, ta chọn chạy IDLE và mở file code.py cần chạy.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 51
Mục đích để ta dễ dàng tìm đƣợc kích thƣớc sản phẩm một cách chính xác nhất. Ngồi ra ta có thể thay đổi khoảng cách đó để quan sát kết quả có đƣợc tính đúng với kích thƣớc thực tế của sản phẩm
Quan sát kết quả và so với thực tế
Kết quả đƣợc hiển thị ngay trên lap với thời gian ngắn. Sau khi có kết quả sản phẩm này ta vẫn có thể tiếp tục thực hiện với sản phẩm khác.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
52
CHƢƠNG 5: KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ 5.1 CAMERA 3D 5.1 CAMERA 3D
Qua q trình thực hiện đề tài, nhóm đã biết sử dụng Camera 3D với chức năng cơ bản của camera là lấy đƣợc ảnh đầu vào, độ sâu của sản phẩm ở nhiều vị trí khác nhau và kết nối với laptop để đi thực hiện mơ hình.
Hình 5.1: Kết quả ảnh đầu vào từ camera
Camera 3D có độ phân giải cao nhƣng ngƣợc lại nó có giá thành khơng q đắt, cùng với chất lƣợng ảnh và quay ảnh phù hợp với việc xử lý ảnh. Việc thu đƣợc độ dài và kích thƣớc của sản phẩm từ camera vẫn chƣa chính xác tuyệt đối do những yếu tố tác động từ bên ngoài nhƣ tốc độ xử lý của laptop, ánh sáng,…
5.2 XÁC ĐỊNH MÀU SẮC CỦA SẢN PHẨM
Với mục đích lựa chọn một màu sắc để camera dễ nhận dạng hơn sản phẩm cần nhần dạng cũng nhƣ là tránh nhiễu từ những yếu tố xung quanh sản phẩm, nhóm đã thành cơng trong việc nhận dàng màu sắc của sản phẩm là màu đỏ, những sản phẩm, yếu tố xung quanh khơng có màu đỏ sẽ khơng đƣợc nhận dạng hình dạng và tính tốn.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
53
Hình 5.2: Kết quả xác định màu sắc sản phẩm của camera
Dƣới đây là bảng thống kê thực tế kết quả xác định màu sắc của sản phẩm trong điều kiện môi trƣờng ánh sáng đầy đủ khi sản phẩm là màu đỏ và những màu khác nhƣ màu xanh, màu vàng:
Bảng 5.1: Thống kê kết quả xác định màu sắc sản phẩm
STT Sản phẩm Màu sắc Nhận dạng đƣợc Khơng nhận dạng đƣợc 1 Hình vng Đỏ 2 Hình chữ nhật Đỏ 3 Hình tam giác Đỏ 4 Hình vng Vàng 5 Hình chữ nhật Vàng 6 Hình tam giác Vàng 7 Hình vng Xanh 8 Hình chữ nhật Xanh
9 Hình tam giác Xanh
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
54
Thời gian đáp ứng rất nhanh trong điều kiện lý tƣởng khi làm khảo sát
Khi hoạt động trong môi trƣờng kém ánh sáng, việc nhận đáp ứng chậm hơn, việc nhận dạng có thể chập chờn khơng ổn định.
Thiết bị nhận diện đƣợc gần nhƣ 100% sản phẩm màu đỏ và hồn tồn khơng nhận diện những sản phẩm có màu sắc khác
5.3 NHẬN DẠNG VÀ TÍNH KÍCH THƢỚC SẢN PHẨM
Kết quả thu đƣợc khi sản phẩm đƣợc nhận dạng là hình chữ nhật với chu vi thực tế là 23cm, chiều dài 6,5cm, chiều rộng 5cm:
Hình 5.3: Nhận dạng và tính kích thƣớc sản phẩm hình chữ nhật
Kết quả thu đƣợc khi sản phẩm đƣợc nhận dạng là hình vng với chu vi thực tế là 24cm, chiều dài cạnh là 6cm:
Hình 5.4: Nhận dạng và tính kích thƣớc sản phẩm hình vng
Kết quả thu đƣợc khi sản phẩm đƣợc nhận dạng là hình tam giác với chu vi thực tế là 13cm, độ dài cạnh là 4cm, 4cm, 5cm:
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
55
Hình 5.5: Nhận dạng và tính kích thƣớc sản phẩm hình tam giác
Bảng 5.2: Kết quả khảo sát nhận dạng và tính kích thƣớc đối với hình vng Lần Lần thực hiện thứ Khoảng cách camera - vật (cm) Độ dài cạnh thực tế (cm) Độ dài cạnh thu đƣợc (cm) Chu vi thực tế (cm) Chu vi thu đƣợc (cm) Sai số tƣơng đối (%) 1 19 6,1 5,8 24,4 23,2 4,9 2 14 6,1 5,6 24,4 22,4 8,1 3 29 6,1 5,4 24,4 21,6 11,5 4 16 6,1 6,1 24,4 24,4 0 5 17 6,1 6,1 24,4 22,4 0 6 22 6,1 5.7 24,4 22,8 8,1 7 29 6,1 6,3 24,4 25,2 4,5 8 15 6,1 5,8 24,4 23,2 4,9 9 18 6,1 6 24,4 24 1,6 10 20 6,1 6,1 24,4 24,4 0
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
56 Ba hình dạng cơ bản (vng, chữ nhật, tam giác) đƣợc nhận dạng với độ chính xác 95% và tính đƣợc chu vi, độ dài cạnh của từng sản phẩm ở nhiều vị trí khác nhau so với camera. Tuy nhiên khi để sản phẩm quá gần hoặc q xa tầm mắt của camera thì có thể sản phẩm sẽ khơng nhận dạng và tính kích thƣớc đƣợc hoặc kết quả sẽ chênh lệch với thực tế một ít. Bảng 5.2, bảng 5.3, bảng 5.4 thống kê thực tế kết quả nhận dạng và tính kích thƣớc của 3 sản phẩm: hình vng, hình chũ nhật, hình tam giác trong điều kiện môi trƣờng ánh sáng đầy đủ, ổn định và khoảng cách từ camera tới vật thay đổi.
Bảng 5.3: Kết quả khảo sát nhận dạng và tính kích thƣớc đối với hình chữ nhật Lần Lần thực hiện thứ Khoảng cách camera - vật (cm) Chiều dài; Chiều rộng thực tế (cm) Chiều dài, Chiều rộng thu đƣợc (cm) Chu vi thực tế (cm) Chu vi thu đƣợc (cm) Sai số tƣơng đối (%) 1 13 6- 4,5 7 - 5,4 21 24,8 18 2 15 6 - 4,5 6,7 - 5,1 21 23,6 12,4 3 19 6 - 4,5 6,2 - 4,6 21 21,6 2,9 4 17 6 - 4,5 6,1 - 4,7 21 21,6 2,9 5 27 6 - 4,5 6,6 - 4,8 21 22,8 8,6 6 20 6 - 4,5 6,1 - 4,4 21 21 0 7 16 6 - 4,5 6 - 4,6 21 21,2 0.9 8 18 6 - 4,5 6,6 - 4,5 21 22,2 5,7 9 21 6 - 4,5 5,9 - 4,3 21 20,4 2,8 10 15 6 - 4,5 5,8 - 4,6 21 20,8 0,9
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
57
Bảng 5.4: Kết quả khảo sát nhận dạng và tính kích thƣớc đối với hình tam giác
Lần thực hiện thứ Khoảng cách camera - vật (cm) Độ dài 3 cạnh thực tế (cm) Độ dài 3 cạnh thu đƣợc (cm) Chu vi thực tế (cm) Chu vi thu đƣợc(c m) Sai số tuyệt đối (%) 1 21 5 - 4,7 - 6 4,9 - 4,2 - 5,5 15,7 14,6 7 2 20 5 - 4,7 - 6 5,1 - 4,4 - 5,7 15,7 15,2 3,2 3 17 5 - 4,7 - 6 5 - 4,6 - 5,4 15,7 15 4,5 4 28 5 - 4,7 - 6 4,7 - 4,3 -5,3 15,7 14,3 8,9 5 26 5 - 4,7 - 6 4,6 - 4,3 - 5,5 15,7 14,4 8,3 6 30 5 - 4,7 - 6 5,5 - 4,9 - 5,9 15,7 16,3 5 7 16 5 - 4,7 - 6 5,1 - 4,7 - 5,9 15,7 16,1 2,5 8 25 5 - 4,7 - 6 5,7 - 4,7 - 6,1 15,7 16,5 5 9 18 5 - 4,7 - 6 5,1 - 5,2 - 5,6 15,7 15,9 1,3 10 21 5 - 4-7 - 6 4,1 - 4,9 - 5,9 15,7 15,9 1,3
Vẫn còn một số lỗi xảy ra mà nhóm chƣa khắc phục đƣợc, nhƣ các sản phẩm bị dính vào nhau hoặc chồng lên nhau thì khơng phát hiện đƣợc. Để cả ba sản phẩm vào một lúc có thể sẽ chỉ nhận dạng và tính kích thƣớc một sản phẩm hoặc không nhận dạng đối với sản phẩm nào nhƣ hình dƣới:
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
58 Nhóm chƣa nhận diện đƣợc hình trịn cũng nhƣ tính kích thƣớc của sản phẩm hình trịn. Thuật tốn này nhóm tìm hiểu và đƣa ra phƣơng pháp phải mất nhiều thời gian mới hoàn thành.
Thuật tốn này có thể áp dụng vào việc phân loại, nhận diện và tìm kích thƣớc của những sản phẩm có hình dạng mà nhóm tìm hiểu.
5.4 PHÂN LOẠI SẢN PHẨM
Kết quả thu đƣợc khi sản phẩm hình chữ nhật đạt kích thƣớc yêu cầu và sản phẩm hình chữ nhật khơng đạt kích thƣớc u cầu:
Hình 5.7: Phân loại theo kích sản phẩm hình chữ nhật
Kết quả thu đƣợc khi sản phẩm hình tam giác đạt kích thƣớc yêu cầu và sản phẩm hình tam giác khơng đạt kích thƣớc u cầu:
Hình 5.8: Phân loại theo kích thƣớc sản phẩm hình tam giác
Kết quả thu đƣợc khi sản phẩm hình vng đạt kích thƣớc u cầu và sản phẩm hình vng khơng đạt kích thƣớc u cầu:
BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
59
Hình 5.9: Phân loại theo kích thƣớc sản phẩm hình tam giác
Chƣơng trình đã phân loại đƣợc hầu hết tất cả các sản phẩm theo kích thƣớc của chúng với thời gian đáp ứng nhanh trong điều kiện lý tƣởng khi làm khảo sát. Tuy nhiên vấn cịn một số ít trƣờng hợp phân loại chƣa chính xác do nhiễu.
BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
60
CHƢƠNG 6: KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN
6.1 KẾT LUẬN 6.1.1 Kết quả đạt đƣợc 6.1.1 Kết quả đạt đƣợc
Hệ thống đáp ứng tƣơng đối đầy đủ mục tiêu đề tài đặt ra với độ chính xác trong phân loại và tính tốn cao, tốc độ xử lý nhanh. Mơ hình phần cứng hoạt động tốt, thiết bị nhỏ gọn, lắp đặt dễ dàng, có tính kinh tế, thuận tiện cho việc học tập nhƣng cũng có thể phát triển thành dây chuyền sản xuất.
Chƣơng trình xử lý ảnh hoạt động ổn định, nhận dạng đƣợc màu sắc, hình dạng hầu hết các sản phẩm. Đo đƣợc chính xác khoảng cách thực tế cũng nhƣ chu vi, và độ dài các cạnh và phân loại đƣợc hầu hết sản phẩm.
6.1.2 Những mặt hạn chế
Ngoài những kết quả đạt đƣợc thì hệ thống vẫn cịn những hạn chế nhƣ khả năng nhận dạng bị ảnh hƣởng bới các yếu tố môi trƣờng nhƣ ánh sáng, nhiễu; chỉ nhận dạng biết đƣợc là sản phẩm hình vng, chữ nhật, tam giác, kích thƣớc của sản phẩm cũng nhƣ khoảng cách của sản phẩm tới camera mà chƣa nhận dạng đƣợc sản phẩm hình trịn, những sản phẩm bị lỗi nhƣ móp, méo; chƣa nhận dạng tất cả sản phẩm có cùng lúc trong khung hình.
Chƣa xây dựng đƣợc mơ hình phân loại hồn chỉnh, chỉ mang tính nghiên cứu và phân loại trên máy tính.
6.2 HƢỚNG PHÁT TRIỂN
Từ những mặt hạn chế của đề tài, để đề tài hoạt động tốt hơn và có thể áp dụng vào thực tế sau này nhóm đã đề ra những hƣớng phát triển nhƣ sau:
Thiết kế thêm băng tải cho mơ hình thêm đẹp và thuận tiện. Làm thành dây truyền sản xuất với cấu hình hệ thống mạnh hơn. Tìm hiểu thuật toán phát hiện tất cả sản phẩm đƣa vào khung hình.
Tìm hiểu và phát triển thêm chức năng đếm tất cả những sản phẩm đƣợc đƣa vô khung hình..
BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH
61
TÀI LIỆU THAM KHẢO
Sách tham khảo
[1] Nguyễn Tiến San, Nguyễn Thái Bảo Hùng, Báo cáo tìm hiểu cảm biến Kinect
(RGB –D), Đồ án môn học, trƣờng Đại học cơng nghệ, Tp.HCM, 2016
[2] Trí thức trẻ, Camera 3D hoạt động như thê nào, https://fptshop.com.vn/tin-
tuc/danh-gia/camera-intel-realsense-3d-hoat-dong-nhu-the-nao-35667, 05/01/2016 [3] Nguyễn Văn Sơn, Hà Duy Khánh, Phân loại sản phẩm dùng Kit Raspberry,
Đồ án tốt nghiệp, trƣờng ĐHSPKT, Tp.HCM, 2018.
[4] Nguyễn Thanh Hải, Giáo Trình Xử lý ảnh, Xuất bản ĐH Quốc Gia, Tp.HCM, 2014.
[5] Richard Blum, Christine Bresnahan, Sams teach yourself python in 24 Hours,
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 62 PHỤ LỤC Thƣ viện chƣơng trình #!/usr/bin/env python2 import cv2 import numpy as np
from scipy.spatial import distance as dist import math Chƣơng trình count_tmp = 0 center_l = None center_r = None r = None base = 6 ar = None f = 174.618040#219.337321 var_tmp_l = 0 var_tmp_r = 0 img_counter = 0 img_width = 640 img_height = 720
rect = np.zeros((4, 2), dtype = "float32") maxW = img_width/2