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
PHÂN LOẠI SẢN PHẨM BÚT CHÌ
THEO MÀU SẮC
GVHD: PGS.TS. Nguyễn Thanh Hải
SVTH: Trần Văn Tuấn
MSSV: 13141414
SVTH: Phạm Văn Long
MSSV: 13141171
Tp. Hồ Chí Minh – 1/2020
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 KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG
Đại học chính quy
2013
MSSV: 13141414
MSSV: 13141171
Mã ngành: 01
Mã hệ:
1
Lớp:
13141DT1A
I. TÊN ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG HỆ THỐNG PHÂN LOẠI SẢN PHẨM
BÚT CHÌ THEO MÀU SẮC
II. NHIỆM VỤ
1. Các số liệu ban đầu:
-
Kích thước băng tải 1: chiều dài 30cm, chiều rộng 20cm, chiều cao 25cm.
-
Kích thước băng tải 2: chiều dài 100cm, chiều rộng 20cm, chiều cao 20cm.
-
Webcam Logitech C270p đóng vai trò thu nhận ảnh đầu vào.
-
Board Arduino Uno R3 là bộ điều khiển trung tâm của mô hình.
-
Xây dựng chương trình điều khiển mô hình giao tiếp giữa Matlab và Arduino.
-
Thiết kế, xây dựng phần cứng của mô hình.
-
Chạy thử nghiệm, cân chỉnh và sửa lỗi mô hình.
-
Viết báo cáo luận văn.
-
Báo cáo đề tài tốt nghiệp.
ii
III. NGÀY GIAO NHIỆM VỤ:
07/10/2019
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 18/12/2020
V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN:
PGS.TS. Nguyễn Thanh Hải
CÁN BỘ HƯỚNG DẪN
Nội dung
Xác nhận
GVHD
- Gặp GVHD nhận đề tài.
- Viết đề cương chi tiết.
đến 13/10/2019
Tuần 2
- Tìm hiểu và tham khảo các đề tài đã nghiên cứu có liên
Từ 14/10/2019
quan đến điều khiển, giám sát và xử lý hình ảnh dùng
đến 20/10/2019
Arduino và Matlab.
Tuần 3
- Gặp và báo cáo với GVHD về hướng thực hiện đề tài.
Từ 21/10/2019
- Tìm hiểu và cài đặt ngôn ngữ lập trình Matlab cho máy
đến 27/10/2019
- Báo cáo tiến độ cho GVHD.
Từ 18/11/2019
- Viết chương trình điều khiển động cơ trên MatLab.
đến 24/11/2019
- Chạy mô phỏng, kiểm tra hoạt động của cảm biến và
động cơ.
Tuần 8
- Báo cáo tiến độ cho GVHD.
Từ 25/11/2019
- Lắp ráp các khối điều khiển vào mô hình.
đến 1/12/2019
- Viết chương trình toàn bộ hệ thống và kiểm tra lỗi.
Tuần 9
- Báo cáo tiến độ cho GVHD.
Từ 2/12/2019
- Chạy thử nghiệm và cân chỉnh các khối điều khiển trên
LỜI CAM ĐOAN
Đề tài này là do chúng em tự thực hiện dựa vào một số tài liệu và công trình nghiên
cứu, không sao chép từ tài liệu hay công trình đã có trước đó. Nếu có sao chép chúng em
hoàn toàn chịu trách nhiệm.
Sinh viên thực hiện đề tài
Trần Văn Tuấn
Phạm Văn Long
vi
LỜI CẢM ƠN
Tục ngữ có câu “Uống nước nhớ nguồn, ăn quả nhớ người trồng cây”. Trên thực tế
không có sự thành công nào mà không gắn liền với những sự hỗ trợ dù ít hay nhiều, dù
gián tiếp hay trực tiếp. Trong quá trình thực hiện đề tài tốt nghiệp chúng em gặp phải những
rào cản khó khăn cũng như hạn chế về kiến thức và đã được Thầy PGS.TS. Nguyễn Thanh
Hải hướng dẫn tận tình, chu đáo. Vì thế, trong lời đầu tiên của quyển báo cáo đồ án tốt
nghiệp này, chúng em xin dành lời cảm ơn chân thành sâu sắc nhất đến Thầy PGS.TS.
Nguyễn Thanh Hải và các Thầy Cô trong bộ môn Điện Tử Công Nghiệp – Y Sinh của
Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh, cũng như dành lời cảm ơn
đến cha mẹ, gia đình đã luôn động viên, hỗ trợ để chúng em có thể hoàn thành tốt đồ án
này.
Với kiến thức và kinh nghiệm còn hạn chế, bài báo cáo của chúng em chắc chắn
không thể tránh khỏi những sai sót. Chúng em rất mong nhận được sự chỉ bảo và những
đóng góp quý báu của quý Thầy Cô để chúng em có điều kiện bổ sung, hoàn thiện đề tài
hơn.
Một lần nữa, chúng em xin chân thành cảm ơn!
Sinh viên thực hiện đề tài
2.2 Không gian màu của ảnh .................................................................................... 7
2.2.1 Không gian màu RGB ..................................................................................... 7
viii
2.2.2 Không gian màu HSV ..................................................................................... 9
2.2.3 Chuyển đổi RGB sang HSV .......................................................................... 10
CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ. .......................................................... 11
3.1 Thiết kế phần cứng ............................................................................................ 12
3.1.1 Khối nguồn ..................................................................................................... 12
3.1.2 Khối thu nhận ảnh .......................................................................................... 13
3.1.3 Khối điều khiển .............................................................................................. 13
3.1.4 Khối thực thi .................................................................................................. 15
3.2 Phần mềm xử lý ảnh.......................................................................................... 17
3.2.1 Kết nối Webcam với Matlab .......................................................................... 18
3.2.2 Kết nối Arduino với Matlab ........................................................................... 19
3.3 Phương pháp xác định màu của bút chì ............................................................ 19
3.3.1 Bộ lọc trung bình............................................................................................ 20
3.3.2 Chuyển đổi RGB sang HSV .......................................................................... 21
3.3.3 Phân ngưỡng .................................................................................................. 21
3.3.4 Xác định màu bút chì ..................................................................................... 23
3.4 Sơ đồ kết nối hệ thống ...................................................................................... 23
3.5 Nguyên lý hoạt động ......................................................................................... 24
CHƯƠNG 4. THI CÔNG HỆ THỐNG ................................................................ 26
4.1 Thi công hệ thống ............................................................................................... 26
4.2 Lập trình hệ thống............................................................................................... 30
4.2.1 Lưu đồ giải thuật mô phỏng ............................................................................ 30
4.2.2 Lưu đồ giải thuật hệ thống ............................................................................... 31
4.2.3 Lưu đồ giải thuật xác định màu sắc ................................................................. 32
4.3 Tài liệu hướng dẫn sử dụng, thao tác ................................................................. 34
Hình 2.3: Không gian màu RGB ................................................................................... 8
Hình 2.4: Hệ tọa độ màu RGB ...................................................................................... 8
Hình 2.5: Không gian màu HSV ................................................................................... 9
Hình 3.1: Sơ đồ khối của hệ thống phân loại bút chì .................................................... 11
Hình 3.2: Nguồn Adapter 12V ...................................................................................... 12
Hình 3.3: Webcam Logitech C270p ............................................................................. 13
Hình 3.4: Mặt trước và sau của board Arduino UNO R3 ............................................. 14
Hình 3.5: Động cơ DC .................................................................................................. 15
Hình 3.6: Động cơ RC Servo S3003 ............................................................................. 16
Hình 3.7: Module 2 Relay ............................................................................................. 17
Hình 3.8: Giao diện chính của Matlab .......................................................................... 18
Hình 3.9: Cửa sổ Command Window của Matlab khi gõ lệnh webcamlist .................. 18
Hình 3.10: Cửa sổ Command Window của Matlab khi gõ lệnh arduino ...................... 19
Hình 3.11: Sơ đồ khối xác định màu của bút chì .......................................................... 19
Hình 3.12: Sơ đồ hoạt động của bộ lọc trung bình ....................................................... 20
Hình 3.13a: Ảnh RGB gốc của bút chì ......................................................................... 20
Hình 3.13b: Ảnh RGB đã qua bộ lọc trung bình của bút chì ........................................ 20
Hình 3.14: Sơ đồ hoạt động bộ chuyển đổi RGB sang HSV ........................................ 21
Hình 3.15: Ảnh khi được chuyển đổi sang HSV .......................................................... 21
Hình 3.16: Ảnh vòng màu HSV 360° ........................................................................... 21
Hình 3.17: Ảnh nhị phân của bút chì sau khi phân ngưỡng .......................................... 22
xi
Hình 3.18: Ảnh RGB của bút chì được tái hiện sau khi nhân chập .............................. 22
Hình 3.19: Sơ đồ kết nối hệ thống ................................................................................ 23
Hình 3.20: Sơ đồ nguyên lý hệ thống ........................................................................... 24
Hình 4.1: Hình dạng mô hình thực tế hoàn chỉnh ......................................................... 26
Hình 4.2: Vị trí đặt Webcam Logitech C270p .............................................................. 27
Hình 4.3: Vị trí đặt động cơ DC .................................................................................... 27
Hình 5.7a: Ảnh tiền xử lý của bút chì màu hồng .......................................................... 40
Hình 5.7b: Ảnh nhị phân của bút chì màu hồng ........................................................... 40
Hình 5.7c: Ảnh phân vùng của bút chì màu hồng ......................................................... 40
Hình 5.8a: Ảnh tiền xử lý của bút chì màu tím ............................................................. 40
Hình 5.8b: Ảnh nhị phân của bút chì màu tím .............................................................. 40
Hình 5.8c: Ảnh phân vùng của bút chì màu tím ........................................................... 40
Hình 5.9: Bút chì nhập liệu trên băng tải 1 ................................................................... 41
Hình 5.10: Bút chì đi vào buồng tối .............................................................................. 41
Hình 5.11: Bút chì ra khỏi buồng tối ............................................................................ 42
Hình 5.12: Bút chì được tay gạt mở ra đón lấy ............................................................. 42
Hình 5.13: Tay gạt đóng lại gạt bút chì lăn xuống khay ............................................... 43
xiii
LIỆT KÊ BẢNG
Bảng
Trang
Bảng 3.1: Danh sách các linh kiện ............................................................................. 12
Bảng 3.2: Thông số kỹ thuật của Arduino Uno R3 ..................................................... 14
Bảng 3.3: Bảng giá trị thông số HSV của từng màu.................................................... 23
Bảng 5.1: Kết quả thống kê khi đưa vào bút chì có màu sắc nằm trong dữ liệu ............ 43
Bảng 5.2: Kết quả thống kê khi đưa vào bút chì có màu không nằm trong dữ liệu........ 44
xiv
TÓM TẮT
Hệ thống này giúp cho sản xuất được linh hoạt hơn, tiết kiệm thời gian và nhân lực,
tăng năng suất, đem lại lợi ích kinh tế cao và hiệu quả. Công nghiệp đòi hỏi phải ngày
càng chính xác và nhanh chóng để đáp ứng được xu thế hiện đại hóa. Các ngành công
nghiệp đóng gói sản phẩm, dược phẩm cũng như trong lĩnh vực điện, điện tử là những
ngành cần sự chính xác trong kiểm tra đầu ra, và để thay thế con người trong việc
kiểm tra thành phẩm với một tốc độ và sự chính xác cao, công nghệ xử lý ảnh ra đời
và không ngừng phát triển để ngày càng hoàn thiện hơn.
Sự ra đời của xử lý ảnh và những ứng dụng của nó là rất cần thiết cho cuộc
sống. Xử lý ảnh đã có từ rất lâu và đã được vận dụng trong những lĩnh vực như dân
sự, quân sự, y tế và nhiều lĩnh vực khác. Ứ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ừ London đế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. 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. Tuy nhiên, mới chỉ khoảng một thập niên trở lại đây,
kiến thức xử lý ảnh mới được đưa vào để giảng dạy tại một vài trường đại học tại
Việt Nam nhưng cũng chỉ hạn chế ở một vài trường lớn tại Thành phố Hồ Chí Minh
và Hà Nội [1-2].
Hiện nay, các ứng dụng về xử lý ảnh đã bước đầu được triển khai trên một số
lĩnh vực như lắp đặt hệ thống nhận dạng biển số xe, nhận dạng vân tay, nhận dạng
mã vạch ở Việt Nam. Tuy nhiên nhìn một cách tổng quan thì số lượng các ứng dụng
trên thực tế vẫn là quá ít, lĩnh vực này sẽ còn phát triển mạnh mẽ trong tương lai nếu
được quan tâm một cách nghiêm túc [3]. Đã có nhiều công trình trước đó nghiên cứu
về đề tài này như đồ án “Nhận diện cảm xúc khuôn mặt người” của Nguyễn Thị Đài
Trang – Hà Tiến Dương [4] sử dụng camera, động cơ servo cùng với board Arduino
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
1
Nghiên cứu, tìm hiểu Webcam Logitech C270p.
-
Nghiên cứu, tìm hiểu động cơ Servo và board Arduino Uno R3.
-
Nghiên cứu, tìm hiểu phần mềm lập trình Matlab.
-
Nghiên cứu, tìm hiểu các thuật toán và các hàm, các không gian màu áp dụng
cho việc xử lý màu sắc.
-
Viết code chương trình Matlab xử lý ảnh, màu sắc.
-
Xây dựng chương trình điều khiển mô hình giao tiếp giữa Matlab và Arduino.
-
Thiết kế, xây dựng phần cứng của mô hình.
-
-
Xử lý và phân loại màu sắc từng cây bút chì trên hệ thống.
-
Ảnh được chụp trong điều kiện ánh sáng bình thường, cố định.
-
Đề tài chỉ giới hạn trong mô hình thu nhỏ.
BỐ CỤC
Chương 1: Tổng Quan
Đặt vấn đề liên quan đến đề tài, tìm hiểu những lý do và sự cần thiết để thực
hiện đề tài, mục tiêu hoàn thành, giới hạn cũng như những bước đi từ cơ bản đến cụ
thể mà nhóm sẽ thực hiện trong quá trình nghiên cứu đề tài.
Chương 2: Cơ Sở Lý Thuyết
Trình bày các kiến thức về các bước cơ bản trong xử lý ảnh, không gian màu
của ảnh.
Chương 3: Thiết Kế Hệ Thống
Trình bày sơ đồ khối của hệ thống, thiết kế cho từng khối. Sơ đồ kết nối phần
cứng, nguyên lý hoạt động.
Chương 4: Thi Công Hệ Thống
Lắp đặt webcam, động cơ servo, buồng tối và khay chứa bút chì cho mô hình
băng tải, trình bày lưu đồ giải thuật và viết chương trình phân tích màu sắc bút chì
cho mô hình.
Chương 5: Kết Quả, Nhận Xét và Đánh Giá
Thu nhận ảnh
(Camera,
Scanner)
Tiền xử lý
ảnh
Phân đoạn
ảnh
Biểu diễn và
mô tả ảnh
Nhận dạng và
nội suy
Hình 2.1: Các giai đoạn chính trong xử lý ảnh [6].
2.1.1 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, máy scan. Sau đó các tín
hiệu này sẽ được số hóa. Các thông số quan trọng ở đây là độ phân giải, chất lượng
màu và tốc độ thu nhận ảnh của các thiết bị. Chất lượng của một ảnh thu nhận được
phụ thuộc vào thiết bị thu, vào môi trường (ánh sáng, phong cảnh).
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
4
Hình 2.2: Cách thức nhân chập điểm ảnh với cửa sổ lọc [7].
𝑔(𝑥, 𝑦) =
1
[𝑓(𝑥 − 1, 𝑦 − 1) + 𝑓 (𝑥 − 1, 𝑦) + 𝑓(𝑥 − 1, 𝑦 + 1)
9
+ 𝑓 (𝑥, 𝑦 − 1) + 𝑓 (𝑥, 𝑦) + 𝑓 (𝑥, 𝑦 + 1)
+ 𝑓 (𝑥 + 1, 𝑦 − 1) + 𝑓 (𝑥 + 1, 𝑦) + 𝑓 (𝑥 + 1, 𝑦 + 1)]
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
5
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
2.1.3 Phân Đoạn Ảnh
Phân đoạn hay còn gọi phân vùng ảnh là 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,… 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 nên ảnh
thô, để tìm ra các đặc trưng của ảnh. Với các thao tác: tìm biên, tách biên, phân loại
đối tượng. Sử dụng các phương pháp: phát hiện biên cục bộ, dò biên, phân vùng theo
miền đồng nhất, phân vùng dựa theo đường biên.
Trong đề tài này nhóm chúng em đã sử dụng bộ tách biên Sobel để tách biên
ảnh. Bộ tách biên Sobel dùng mặt nạ Sobel để tính các đạo hàm bậc nhất Gx và Gy.
Các mặt nạ này được thiết kế để tìm ra các đường biên theo chiều đứng và chiều
ngang một cách tốt nhất.
1
(2.5)
𝑧7 𝑧8 𝑧9
Công thức tính:
2 [(
𝐺𝑋=
𝑧7 + 2𝑧8 + 𝑧9 ) − (𝑧1 + 2𝑧2 + 𝑧3 )]2
(2.6)
2 [(
𝐺𝑌=
𝑧3 + 2𝑧6 + 𝑧9 ) − (𝑧1 + 2𝑧4 + 𝑧7 )]2
(2.7)
1
𝑔 = [𝐺𝑋2 + 𝐺𝑌2 ]2
(2.8)
2.1.4 Biểu Diễn Và Mô 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 đó có 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 đó. Việc biến đổi các số liệu này thành dạng thích hợp là
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
6
nhau để sử dụng vào những mục đích khác nhau như: RGB, HSV, HSL, CMYK.
Trong đó, RGB và HSV là hai không gian màu cơ bản và ứng dụng nhiều nhất. Còn
không gian màu CMYK thường được sử dụng trong in ấn màu.
2.2.1 Không Gian Màu RGB
Không gian màu RGB là một không gian màu cơ bản trong xử lý ảnh, sử dụng
mô hình bổ sung trong đó ánh sáng đỏ, xanh lá cây, xanh da trời được tổ hợp với nhau
theo nhiều phương thức khác nhau để tạo thành các màu khác nhau. Tất cả đều là sự
pha trộn của 3 màu cơ bản là Red, Green và Blue.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
7
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
Hình 2.3: Không gian màu RGB
Ta cũng cần lưu ý rằng, tự bản thân mô hình màu RGB không định nghĩa thế
nào là “đỏ”, “xanh lá”, “xanh dương” một cách chính xác, vì thế với cùng các giá trị
như nhau của RGB có thể mô tả các màu tương đối khác nhau trên các thiết bị khác
nhau có cùng một mô hình màu. Trong khi chúng cùng chia sẻ một mô hình màu
chung, không gian màu thực sự của chúng là dao động một cách đáng kể.
Trong biểu diễn số trên máy tính, ảnh màu RGB có thể sử dụng số bit màu là
16, 24, 32 hoặc 48 bit. Điểm ảnh có số bit màu càng cao thì màu sắc của điểm ảnh
càng được biểu diễn chính xác.
Mô hình màu RGB được biểu diễn bởi khối lập phương với các trục R, G, B
như sau:
Hình 2.4: Hệ tọa độ màu RGB
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
9