SlideShare a Scribd company logo
1 of 83
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:
ỨNG DỤNG CAMERA 3D TRONG VIỆC PHÂN LOẠI
SẢN PHẨM THEO HÌNH DẠNG VÀ KÍCH THƢỚC
GVHD: ThS. Ngô Bá Việt
SVTH: Lê Văn Thái
MSSV: 14141289
Tp. Hồ Chí Minh - 07/2019
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:
ỨNG DỤNG CAMERA 3D TRONG VIỆC PHÂN LOẠI
SẢN PHẨM THEO HÌNH DẠNG VÀ KÍCH THƢỚC
GVHD: ThS. Ngô Bá Việt
SVTH: Lê Văn Thái
MSSV: 14141289
Tp. Hồ Chí Minh - 07/2019
TRƢỜNG ĐH SPKT TP. HỒ CHÍ MINH
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
ĐỘC LẬP - TỰ DO - HẠNH PHÚC
----o0o----
Tp. HCM, ngày 05 tháng 06 năm 2019
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: Lê Văn Thái MSSV: 14141289
Chuyên ngành: Kỹ thuật Điện - Điện tử Mã ngành: 01
Hệ đào tạo: Đại học chính quy Mã hệ: 1
Khóa: 2014 Lớp: 14141DT1A
I. TÊN ĐỀ TÀI: ỨNG DỤNG CAMERA 3D TRONG VIỆC PHÂN LOẠI SẢN
PHẨM THEO HÌNH DẠNG VÀ KÍCH THƢỚC
II. NHIỆM VỤ
1. Các số liệu ban đầu:
Các tài liệu về Python và thƣ viện OpenCV, Giáo trình Xử lý ảnh.
Các ví dụ về nhận dạng hình học cơ bản.
2. Nội dung thực hiện:
Tìm hiểu phƣơng pháp nhận dạng và phân loại sản phẩm.
Tổng quan về xử lý ảnh.
Tìm hiểu Camera 3D và các Module liên quan.
Viết chƣơng trình trên Python.
Hoàn thành mô hình.
Đánh giá kết quả thực hiện.
III. NGÀY GIAO NHIỆM VỤ: 26/03/2019
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 05/06/2019
V. HỌ VÀ TÊN CÁN BỘ HƢỚNG DẪN: ThS. Ngô Bá Việt
CÁN BỘ HƢỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
TRƢỜNG ĐH SPKT TP. HỒ CHÍ MINH
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
ĐỘC LẬP - TỰ DO - HẠNH PHÚC
----o0o----
Tp. HCM, ngày 05 tháng 06 năm 2019
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: Lê Văn Thái
Lớp: 14141DT1A - MSSV: 14141289
Tên đề tài:
Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thƣớc
Tuần/ngày Nội dung
Xác nhận
GVHD
16-20/3 Chọn đề tài
21-25/3 Viết đề cƣơng chi tiết
26/3-05/4 Tìm hiểu phƣơng pháp nhận dạng hình cơ bản
06/-09/4 Tìm hiểu thuật toán dán nhãn
10-17/4 Tìm hiểu camera 3D
18-21/4 Tìm hiểu thuật toán tính khoảng cách
22-28/4 Tìm hiểu thuật toán tính kích thƣớc
29/5-04/5 Tìm hiểu về python
05-06/5 Thực hiện viết code python trên window
07-08/5 Làm các hình khối (sản phẩm) và chạy thử
13-20/5 Hoàn thành mô hình
21-29/5 Viết báo cáo
GV HƢỚNG DẪN
ThS. Ngô Bá Việt
LỜI CAM ĐOAN
Đề tài này là 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
Lê Văn Thái
LỜI CẢM ƠN
Đầu tiên tôi xin đƣợc cám ơn chân thành tới Thầy Ngô Bá Việt, Thầy đã tận tình
hƣớng dẫn tôi để có thể hoàn thành tốt đề tài.
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ử đã tạo
những điều kiện tốt nhất cho tôi hoàn thành đề tài. Những kiến thức bổ ích mà các
Thầy Cô dạy, nó đƣợc áp dụng vào đề tài Đồ Án Tốt Nghiệp rất nhiều, từ những kiến
thức nhỏ nhặt cho tới những bài học lớn. Một lần nữa tôi xin đƣợc gửi lời cám ơn đến
tất cả Thầy Cô, nếu không có Thầy Cô thì chắc giờ này tôi sẽ khó có thể hoàn thành đề
tài này.
Tiếp theo tôi cũng xin cảm ơn tới các Anh, Chị khóa trên cùng các bạn sinh viên
đã tạo điều kiện giúp đỡ, từ những tài liệu liên quan tới đề tài cho tới những kinh
nghiệm sống thực tế. Nhờ họ mà tôi mới có thể phát triển đƣợc.
Tôi cũng gửi lời đồng cảm ơn đến các bạn lớp 14141DT1A đã 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, và
cũng là lớp học có nhiều kí ức nhất thời sinh viên của tôi.
Cuối cùng là gửi lời cảm ơn đến Cha, Mẹ nếu không có hai đấng sinh thành thì
ngày hôm nay cũng không có ai hiện diện ở đây để thực hiện những việc mình muốn,
họ đã tạo mọi điều kiện để giúp con của mình hƣớng tới một tƣơng lai tốt đẹp.
Một lần cuối xin chân thành cảm ơn!
Ngƣời thực hiện đề tài
Lê Văn Thái
MỤC LỤC
Trang bìa.................................................................................................................... i
Nhiệm vụ đồ án......................................................................................................... ii
Lịch trình ................................................................................................................iii
Cam đoan ................................................................................................................ iv
Lời cảm ơn................................................................................................................ v
Mục lục.................................................................................................................... vi
Liệt kê hình vẽ ......................................................................................................... ix
Liệt kê bảng vẽ......................................................................................................... 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............................................................................1
1.4 GIỚI HẠN ......................................................................................................2
1.5 BỐ CỤC..........................................................................................................2
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT .............................................................................4
2.1 TỔNG QUAN VỀ XỬ LÝ ẢNH VÀ CÁC THƢ VIỆN LIÊN QUAN............4
2.1.1 Giới thiệu xử lý ảnh..................................................................................4
2.1.2 Những vấn đề trong xử lý ảnh...................................................................4
2.2 PHƢƠNG PHÁP PHÂN LOẠI SẢN PHẨM THEO HÌNH DẠNG..............11
2.2.1 Các hình dạng cơ bản của sản phẩm........................................................11
2.2.2 Phƣơng pháp nhận dạng sản phẩm theo hình dạng..................................11
2.2.3 Các bƣớc thực hiện phân loại sản phẩm theo hình dạng..........................14
2.3 ÁP DỤNG KỸ THUẬT HIỆU CHỈNH STEREO CAMERA ĐỂ TÍNH KÍCH
THƢỚC SẢN PHẨM.............................................................................................18
2.3.1 GIỚI THIỆU KỸ THUẬT HIỆU CHỈNH STEREO CAMERA .............18
2.3.2 STEREO CAMERA ...............................................................................19
2.3.3 PHƢƠNG PHÁP HIỆU CHỈNH CHUẨN..............................................23
2.4 NGÔN NGỮ PYTHON ................................................................................25
2.5 GIỚI THIỆU PHẦN CỨNG .........................................................................28
CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ ...........................................................29
3.1 GIỚI THIỆU .................................................................................................29
3.2 THIẾT KẾ HỆ THỐNG PHẦN CỨNG ........................................................29
3.2.1 Khối xử lý...............................................................................................30
3.2.2 Khối thu tín hiệu.....................................................................................30
3.2.3 Khối hiển thị...........................................................................................32
3.2.4 Khối giao tiếp và điều khiển ...................................................................32
3.2.5 Khối nguồn.............................................................................................32
3.3 CÁC TÍNH TOÁN TRONG NHẬN DẠNG .................................................33
3.3.1 Giới thiệu đặc điểm của hình dạng..........................................................33
3.3.2 Phƣơng pháp tính toán các đặc điểm.......................................................33
CHƢƠNG 4: THI CÔNG HỆ THỐNG..................................................................36
4.1 GIỚI THIỆU .................................................................................................36
4.2 THI CÔNG HỆ THỐNG...............................................................................36
4.2.1 Các linh kiện và model cần thiết cho mô hình.........................................36
4.2.2 Kết nối, lắp ráp và kiểm tra mô hình.......................................................36
4.3 THI CÔNG MÔ HÌNH..................................................................................37
4.4 LẬP TRÌNH HỆ THỐNG .............................................................................38
4.4.1 Lƣu đồ giải thuật.....................................................................................38
4.4.2 Lập trình với ngôn ngữ Python cùng thƣ viện OpenCV ..........................44
4.5 MÔ PHỎNG .................................................................................................45
4.5.1 Lƣu đồ....................................................................................................45
4.5.2 Xử lý tín hiệu hay hình ảnh.....................................................................46
4.6 VIẾT TÀI LIỆU HƢỚNG DẪN SỬ DỤNG, THAO TÁC............................48
4.6.1 Viết tài liệu hƣớng dẫn sử dụng..............................................................48
4.6.2 Quy trình thao tác ...................................................................................50
CHƢƠNG 5: KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ.................................................52
5.1 CAMERA 3D................................................................................................52
5.2 XÁC ĐỊNH MÀU SẮC CỦA SẢN PHẨM...................................................52
5.3 NHẬN DẠNG VÀ TÍNH KÍCH THƢỚC SẢN PHẨM................................54
5.4 PHÂN LOẠI SẢN PHẨM ............................................................................58
CHƢƠNG 6: KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ........................................60
6.1 KẾT LUẬN...................................................................................................60
6.1.1 Kết quả đạt đƣợc.....................................................................................60
6.1.2 Những mặt hạn chế.................................................................................60
6.2 HƢỚNG PHÁT TRIỂN ................................................................................60
LIỆT KÊ HÌNH VẼ
Hình Trang
Hình 2.1: Lân cận 4 và lân cận 8...................................................................................6
Hình 2.2: Hình tách biên...............................................................................................8
Hình 2.3: Bộ lọc Gaussian ............................................................................................9
Hình 2.4: Đặc điểm hình chữ nhật ..............................................................................12
Hình 2.5: Đặc điểm hình vuông..................................................................................13
Hình 2.6: Đặc điểm hình tam giác ..............................................................................13
Hình 2.7: Sơ đồ các bƣớc thực hiện phân loại sản phẩm.............................................14
Hình 2.8: Xác định biên..............................................................................................16
Hình 2.9: Nhận dạng đƣờng biên................................................................................17
Hình 2.10: Cấu hình chuẩn của hệ thống 2 camera .....................................................19
Hình 2.11: Hệ thống tọa độ của một stereo camera.....................................................19
Hình 2.12: Thuật toán SAD phân vùng.......................................................................22
Hình 2.13: Qui tắc tam giác đồng dạng.......................................................................23
Hình 2.14: Mô hình các thông số của camera .............................................................24
Hình 2.15: Sơ đồ khối của camera ..............................................................................28
Hình 3.1: Sơ đồ khối...................................................................................................30
Hình 3.2: Khối thu tín hiệu.........................................................................................31
Hình 3.3: Synchronization USB Stereo Webcam Dual lens camera OV9750 960P
MJPEG 2560x960 with No distortion lens 3D usb camera module.............................31
Hình 3.4: Laptop ........................................................................................................32
Hình 3.5: Đỉnh của hình .............................................................................................33
Hình 3.6: Đoạn Ramer-Douglas-Peucker....................................................................34
Hình 3.7: Đƣờng xấp xỉ..............................................................................................34
Hình 3.8: Độ dài cạnh.................................................................................................34
Hình 4.1: Kết nối Camera...........................................................................................37
Hình 4.2: Các khối hộp (Hình dạng sản phẩm) ...........................................................38
Hình 4.3: Lƣu đồ giải thuật chính...............................................................................39
Hình 4.4: Ma trận không gian màu BGR ....................................................................40
Hình 4.5: Sơ đồ khối chƣơng trình con tách biên và lấp đầy biên................................41
Hình 4.6: Lƣu đồ con nhận dạng sản phẩm.................................................................43
Hình 4.7: Tìm kiếm Python ........................................................................................44
Hình 4.8: Tạo project mới...........................................................................................45
Hình 4.9: Lƣu đồ mô phỏng........................................................................................45
Hình 4.10: Kiểm tra các bƣớc thực hiện......................................................................46
Hình 4.11: Ảnh xám ...................................................................................................47
Hình 4.12: Tách biên ..................................................................................................47
Hình 4.13: Lấp đầy biên .............................................................................................48
Hình 4.14: Kết quả nhận dạng phân loại sản phẩm. ....................................................48
Hình 4.15: Kiểm tra thƣ viện ......................................................................................49
Hình 4.16: Kết quả sau khi bấm chạy chƣơng trình ....................................................49
Hình 4.17: Quy trình vận hành ...................................................................................50
Hình 5.1: Kết quả ảnh đầu vào từ camera ...................................................................52
Hình 5.2: Kết quả nhận dạng màu sắc sản phẩm của camera.......................................53
Hình 5.3: Nhận dạng và tính kích thƣớc sản phẩm hình chữ nhật................................54
Hình 5.4: Nhận dạng và tính kích thƣớc sản phẩm hình vuông ...................................54
Hình 5.5: Nhận dạng và tính kích thƣớc sản phẩm hình tam giác................................55
Hình 5.6: Camera chƣa thể nhận dạng cùng lúc nhiều sản phẩm.................................57
Hình 5.7: Phân loại theo kích sản phẩm hình chữ nhật................................................58
Hình 5.8: Phân loại theo kích thƣớc sản phẩm hình tam giác ......................................58
Hình 5.9: Phân loại theo kích thƣớc sản phẩm hình tam giác ......................................59
LIỆT KÊ BẢNG
Bảng Trang
Bảng 2.1: Đặc điểm hình dạng sản phẩm....................................................................14
Bảng 4.1: Danh sách các model và linh kiện liên quan................................................36
Bảng 5.1: Thống kê kết quả nhận dạng màu sắc sản phẩm..........................................53
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 vuông.............55
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.........55
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 .........57
TÓM TẮT
Hiện nay, nền Công nghiệp đang hƣớng tới Công nghiệp 4.0, là sự kết hợp các
Công nghệ lại với nhau, làm mờ ranh giới giữa Vật lý, Kỹ thuật số và Sinh học. Từ đó,
các thiết bị điện tử thông minh đang ngày càng xuất hiện phổ biến. Không những nó
giúp ích cho cá nhân hay gia đình, mà còn ứng dụng cả trong Chính trị, Y tế, Giáo
dục...Điển hình là trong lĩnh sản xuất, vấn đề phân loại sản phẩm trong sản xuất là
không thể thiếu ở khâu đóng gói. Chính vì vậy, nhóm đã chọn đề tài “Ứng dụng
camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thƣớc”
Đề tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và
kích thước” là phân loại sản phẩm theo hình dạng (hình tròn, hình vuông, hình chữ
nhật, hình tam giác) và kích thƣớc dựa trên ngôn ngữ Python với thƣ viện chính là
OpenCV. Ở đây sử dụng các đặc điểm riêng biệt của từng hình dạng để đi nhận dạng
và sau đó phân loại từng sản phẩm. Kết quả thực hiện của đề tài đã nhận dạng đƣợc
những sản phẩm có hình dạng (hình tròn, hình vuông, hình chữ nhật, hình tam giác)
cùng với việc biết đƣợc kích thƣớc của từng sản phẩm.
CHƢƠNG 1: TỔNG QUAN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 1
CHƢƠNG 1: TỔNG QUAN
1.1 ĐẶT VẤN ĐỀ
Cùng với sự phát triển ngày càng mạnh mẽ của khoa học kĩ thuật trong một vài
thập kỷ gần đây, xử lý ảnh tuy là một ngành khoa học còn tƣơng đối mới mẻ so với
nhiều ngành khoa học khác nhƣng hiện nay đang là một trong những lĩnh vực phát
triển rất nhanh và thu hút sự quan tâm đặc biệt từ các nhà khoa học, thúc đẩy các
trung tâm nghiên cứu, ứng dụng về lĩnh vực hấp dẫn này. Xử lý ảnh đóng vai trò
quan trọng trong nhiều ứng dụng thực tế về khoa học kĩ thuật cũng nhƣ trong cuộc
sống thƣờng ngày nhƣ: sản xuất và kiểm tra chất lƣợng, sự di chuyển của Robot,
các phƣơng tiện đi lại tự trị, công cụ hƣớng dẫn cho ngƣời mù, an ninh và giám sát,
nhận dạng đối tƣợng, nhận dạng mặt, các ứng dụng trong y học, sản xuất, hiệu
chỉnh video.
Camera 3D [1-2] hiện đang là loại camera có độ ứng dụng cao trong khoa học
kỹ thuật vì camera này có khả năng ghi nhận chiều sâu đối tƣợng, tƣơng tự mắt con
ngƣời. Dựa trên các nghiên cứu trƣớc đây nhƣ “Phân loại sản phẩm dùng Kit
Raspberry” [3] là một ứng dụng sử dụng các thuật toán xử lý ảnh [4] trên nền tảng
Python kết hợp với phần cứng là Raspberry [5] để phân loại sản phẩm dựa trên hình
dạng. Đề tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và
kích thƣớc” đƣơc lựa chọn thực hiện để có thể phân loại theo hình dạng sản phẩm và
phân loại theo kích thƣớc sản phẩm dựa trên các thông tin từ camera 3D.
1.2 MỤC TIÊU
- Tìm hiểu về camera 3D và ngôn ngữ lập trình python với thƣ viện OpenCV.
- Phân loại sản phẩm theo hình dạng và kích thƣớc.
1.3 NỘI DUNG NGHIÊN CỨU
Để tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và
kích thƣớc” Có những nội dung sau:
CHƢƠNG 1: TỔNG QUAN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 2
 NỘI DUNG 1: Tìm hiểu phƣơng pháp nhận dạng và phân loại sản phẩm theo
hình dạng và kích thƣớc.
 NỘI DUNG 2: Tổng quan về xử lý ảnh.
 NỘI DUNG 3: Tìm hiểu camera 3D và các module liên quan.
 NỘI DUNG 4: Viết chƣơng trình trên python.
 NỘI DUNG 5: Hoàn thành mô hình.
 NỘI DUNG 6: Đánh giá kết quả thực hiện
1.4 GIỚI HẠN
Với đề tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng
và kích thƣớc” thì các giới hạn bao gồm:
- Thiết kế mô hình sử dụng camera 3D để phân loại sản phẩm theo hình dạng,
kích thƣớc.
- Sử dụng ngôn ngữ lập trình python.
- Mô hình hoạt động trong điều kiện lý tƣởng, đủ độ sáng.
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
Chƣơng này sẽ trình bày cơ bản về xử lý ảnh, phƣơng pháp cơ bản để nhận dạng
và phân loại ảnh, tính kích thƣớc sản phẩm, giới thiệu cơ bản về camera 3D và thƣ viện
liên quan.
 Chƣơng 3: Thiết kế và tính toán
Chƣơng này sẽ đi tìm hiểu kỹ các thuật toán nhận dạng sản phẩm theo hình
dạng, thuật toán tính kích thƣớc và thiết kế mô hình sản phẩm.
 Chƣơng 4: Thi công hệ thống
CHƢƠNG 1: TỔNG QUAN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 3
Nội dụng chƣơng này là quá trình thi công cùng với việc chạy chƣơng trình về
phân loại sản phẩm cũng nhƣ tính kích thƣớc sản phẩm.
 Chƣơng 4: Kết quả nhận xét và đánh giá
Nội dụng chƣơng này là tổng hợp các kết quả đạt đƣợc sau khi thi công mô hình
và kết quả đạt đƣợc khi phân loại sản phẩm.
 Chƣơng 5: Kết luận và hƣớng phát triển
Kết quả nhận đƣợc khi hoàn thiện đề tài, đƣa ra các hƣớng phát triển hoàn thiện.
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 4
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
2.1 TỔNG QUAN VỀ XỬ LÝ ẢNH VÀ CÁC THƢ VIỆN LIÊN QUAN
2.1.1 Giới thiệu xử lý ảnh
Xử lý ảnh không còn là đề tài quá mới, nó đƣợc áp dụng từ trong các hoạt động
thƣờng ngày cho đến việc nâng cao sản xuất. Nó giúp ích cho cá nhân hay gia đình, mà còn
ứng dụng cả trong Chính trị, Y tế, Giáo dục…
Xử lý tín hiệu là một môn học trong kỹ thuật điện tử, viễn thông và trong toán học.
Liên quan đến nghiên cứu và xử lý tín hiệu kỹ thuật số và analog, giải quyết các vấn đề về
lƣu trữ, các thành phần bộ lọc, các hoạt động khác trên tín hiệu. Các tín hiệu này bao gồm
truyền dẫn tín hiệu, âm thanh hoặc giọng nói, hình ảnh, và các tín hiệu khác…
Trong số các phƣơng pháp xử lý tín hiệu kể trên, lĩnh vực giải quyết với các loại tín
hiệu mà đầu vào là một hình ảnh và đầu ra cũng là một hình ảnh, sản phẩm đầu ra đƣợc thực
hiện trong một quá trình xử lý. Đó chính là quá trình xử lý ảnh. Nó có thể đƣợc chia thành
xử lý hình ảnh tƣơng tự và xử lý hình ảnh kỹ thuật số.
Để có 1 bức ảnh số ta có quá trình thực hiện nhƣ sau: Chụp ảnh từ một máy ảnh là
một quá trình vật lý. Ánh sáng mặt trời sử dụng nhƣ một nguồn năng lƣợng. Một dãy cảm
biến đƣợc sử dụng cho việc thu lại của hình ảnh. Vì vậy, khi ánh sáng mặt trời rơi trên
ngƣời đối tƣợng, sau đó số lƣợng ánh sáng phản xạ của đối tƣợng đƣợc cảm nhận từ các
cảm biến, và một tín hiệu điện áp liên tục đƣợc tạo ra bởi số lƣợng dữ liệu cảm biến đó. Để
tạo ra một hình ảnh kỹ thuật số, chúng ta cần phải chuyển đổi dữ liệu này thành một dạng kỹ
thuật số. Điều này liên quan đến việc lấy mẫu và lƣợng tử hóa. Kết quả của việc lấy mẫu và
lƣợng tử hóa sau một quá trình xử lý là một hình ảnh kỹ thuật số.
2.1.2 Những vấn đề trong xử lý ảnh
Điểm ảnh
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 5
Là đơn vị cơ bản nhất để tạo nên một bức ảnh kỹ thuật số, địa chỉ của điểm ảnh đƣợc
xem nhƣ là một tọa độ (x,y) nào đó. Một bức ảnh kỹ thuật số - có thể đƣợc tạo ra bằng cách
chụp hoặc bằng một phƣơng pháp đồ họa nào khác - đƣợc tạo nên từ hàng ngàn hoặc hàng
triệu pixel riêng lẻ. Bức ảnh càng chứa nhiều pixel thì càng chi tiết. Một triệu pixel thì
tƣơng đƣơng với 1 megapixel.
Ảnh số
Ảnh số là tập hợp hữu hạn các điểm ảnh với mức xám phù hợp dùng để mô tả ảnh
gần với ảnh thật. Số điểm ảnh xác định độ phân giải của ảnh. Ảnh có độ phân giải càng cao
thì càng thể hiện rõ nét các đặt điểm của tấm hình càng làm cho tấm ảnh trở nên thực và sắc
nét hơn. Một hình ảnh là một tín hiệu hai chiều. Nó đƣợc xác định bởi hàm toán học f(x, y)
trong đó x và y là hai tọa độ theo chiều ngang và chiều dọc. Các giá trị của f(x, y) tại bất kỳ
điểm nào là cung cấp các giá trị điểm ảnh (pixel ) tại điểm đó của một hình ảnh.
Phân loại ảnh
Mức xám của điểm ảnh là cƣờng độ sáng, gán bằng một giá trị tại điểm đó. Các mức
ảnh xám thông thƣờng: 16, 32, 64, 128, 256. Mức đƣợc sử dụng thông dụng nhất là 256, tức
là dùng 1byte để biểu diễn mức xám.
Ảnh nhị phân: Là ảnh có 2 mức trắng và đen. Chỉ có 2 giá trị 0 và 1 và chỉ sử dụng 1
bit dữ liệu trên 1 điểm ảnh.
Ảnh đen trắng: Là ảnh có hai màu đen, trắng (không chứa màu khác) với mức xám ở
các điểm ảnh có thể khác nhau.
Ảnh màu: Là ảnh kết hợp của 3 màu cơ bản lại với nhau để tạo ra một thế giới màu
sinh động. Ngƣời ta thƣờng dùng 3byte để mô tả mức màu, tức là có khoảng 16,7 triệu mức
màu.
Quan hệ giữa các điểm ảnh
Lân cận điểm ảnh: đƣợc nói một cách hài hƣớc nhƣ là hàng xóm của các điểm ảnh.
Có 2 loại lân cận cơ bản là lân cận 4 và lân cận 8.
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 6
Điểm
xét
Điểm
xét
Điểm
xét
Lân cận 4 chéoLân cận 4 hàng cột Lân cận 8
Hình 2.1: Lân cận 4 và lân cận 8
Bốn điểm ảnh lân cận 4 theo cột và hàng với tọa độ lần lƣợt là (x+1, y), (x-1, y),
(x,y+1), (x, y-1) ký hiệu là tập N4(p).
Bốn điểm ảnh lân cận 4 theo đƣờng chéo có tọa độ lần lƣợt là (x+1, y+1), (x+1, y+1),
(x-1, y+1), (x-1, y-1) ký hiệu là tập ND(p).
Tập 8 điểm ảnh lân cận 8 là hợp của 2 tập trên: N8(p) = N4(p) + ND(p).
Liên kết ảnh [3][4]: Các mối liên kết của ảnh đƣợc xem nhƣ là mối liên kiết của 2
điểm ảnh gần nhau, có 3 loại liên kết: liên kết 4, liên kết 8, lên kết m(liên kết hỗn hợp).
Trong ảnh đa mức xám, ta có thể đặt V chứa nhiều giá trị nhƣ V={tập con}. Cho p có
tọa độ (x, y).
Liên kết 4: hai điểm ảnh p và q có giá trị thuộc về tập V đƣợc gọi là liên kết 4 của
nhau nếu q thuộc về tập N4(p).
Liên kết 8: hai điểm ảnh p và q có giá trị thuộc về tập V đƣợc gọi là liên kết 8 của
nhau nếu q thuộc về tập N8(p).
Liên kết m: hai điểm ảnh p và q có giá trị thuộc về tập V đƣợc gọi là Liên kết M của
nhau nếu thõa 1 trong 2 điều kiện sau: q thuộc về tập N4(p). q thuộc về tập ND(p) và giao
của hai tập N4(p), N4(q) không chứa điểm ảnh nào có giá trị thuộc V.
Lọc nhiễu
Ảnh thu nhận đƣợc thƣờng sẽ bị nhiễu nên cần phải loại bỏ nhiễu. Các toán tử không
gian dùng trong kỹ thuật tăng cƣờng ảnh đƣợc phân nhóm theo công dụng: làm trơn nhiễu,
nổi biên. Để làm trơn nhiễu hay tách nhiễu [3-4], ngƣời ta sử dụng các bộ lọc tuyến tính (lọc
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 7
trung bình, thông thấp) hoặc lọc phi tuyến (trung vị, giả trung vị, lọc đồng hình). Từ bản
chất của nhiễu (thƣờng tƣơng ứng với tần số cao) và từ cơ sở lý thuyết lọc là: bộ lọc chỉ cho
tín hiệu có tần số nào đó thông qua, để lọc nhiễu ngƣời ta thƣờng dùng lọc thông thấp (theo
quan điểm tần số không gian) hay lấy tổ hợp tuyến tính để san bằng (lọc trung bình). Để làm
nổi cạnh (ứng với tần số cao), ngƣời ta dùng các bộ lọc thông cao, lọc Laplace.
Phƣơng pháp lọc nhiễu. Chia làm 2 loại: lọc tuyến tính, lọc phi tuyến.
Làm trơn nhiễu bằng lọc tuyến tính
Khi chụp ảnh có thể xuất hiện nhiều loại nhiễu vào quá trình xử lý ảnh, nên ta cần
phải lọc nhiễu [4]. Gồm các phƣơng pháp cơ bản lọc trung bình, lọc thông thấp…
Lọc trung bình: Với lọc trung bình, mỗi điểm ảnh đƣợc thay thế bằng trung bình
trọng số của các điểm lân cận. Lọc trung bình có trọng số chính là thực hiện chập ảnh đầu
vào với nhân chập H. Nhân chập H có dạng:











111
111
111
9
1
H (2.1)
Lọc thông thấp: Lọc thông thấp thƣờng đƣợc sử dụng để làm trơn nhiễu. Về nguyên
lý của bộ lọc thông thấp giống nhƣ đã trình bày trên.











010
121
010
8
1
H (2.2)
Làm trơn nhiễu bằng lọc phi tuyến
Các bộ lọc phi tuyến cũng hay đƣợc dùng trong kỹ thuật tăng cƣờng ảnh. Một số
phƣơng pháp lọc cơ bản bộ lọc trung vị, lọc ngoài… Với lọc trung vị, điểm ảnh đầu vào sẽ
đƣợc thay thế bởi trung vị các điểm ảnh còn lọc giả trung vị sẽ dùng trung bình cộng của hai
giá trị “trung vị” (trung bình cộng của max và min).
Lọc trung vị: Kỹ thuật này đòi hỏi giá trị các điểm ảnh trong cửa sổ phải xếp theo thứ
tự tăng hay giảm dần so với giá trị trung vị. Kích thƣớc cửa số thƣờng đƣợc chọn sao cho số
điểm ảnh trong cửa sổ là lẻ.
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 8
Phƣơng pháp phát hiện biên
Biên là một trong những vấn đền ta cần quan tâm trong xử lý ảnh. Vì ở giai đoạn
phân đoạn ảnh chủ yếu dựa vào biên [4].
Hình 2.2: Hình tách biên
Điểm biên: Một điểm ảnh đƣợc coi là điểm biên nếu có sự thay đổi nhanh hoặc đột
ngột về mức xám. Ví dụ trong ảnh nhị phân, điểm đen gọi là điểm biên nếu lân cận nó có ít
nhất một điểm trắng.
Đƣờng biên: tập hợp các điểm biên liên tiếp tạo thành một đƣờng biên.
Ý nghĩa của đƣờng biên trong xử lý: ý nghĩa đầu tiên của đƣờng biên là một loại đặc
trƣng cục bộ tiêu biểu trong phân tích, nhận dạng ảnh. Thứ hai, ngƣời ta sử dụng biên làm
phân cách các vùng xám cách biệt. Ngƣợc lại, ngƣời ta cũng sử dụng các vùng ảnh để tìm
đƣờng phân cách. Tầm quan trọng của biên: để thấy rõ tầm quan trọng của biên, xét ví dụ
sau: khi ngƣời họa sỹ muốn vẽ một danh nhân, họa sỹ chỉ cần vẽ vài đƣờng nứt tốc họa mà
không cần vẽ một cách đầy đủ.
Nhƣ vậy, phát hiện biên một cách lý tƣởng là phát hiện đƣợc tất cả các đƣờng biên
trong các đối tƣợng. Định nghĩa toán học của biên ở trên là cơ sở cho các kỹ thuật phát hiện
biên. Điều quan trọng là sự biến thiên giữa các điểm ảnh thƣờng nhỏ, trong khi đó biến
thiên độ sáng của điểm biên thƣờng là khá lớn khi qua biên. Xuất phát cơ sở này ngƣời ta
thƣờng sử dụng hai phƣơng pháp phát hiện biên nhƣ sau:
Tách biên theo đạo hàm bậc một [4]: Có 2 phƣơng pháp cơ bản là: một là tạo
gradient của hai hƣớng và trực giao trong ảnh, hai là dùng tập đạo hàm có hƣớng.
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 9
Tách biên theo đạo hàm bậc hai [4]: đƣợc thực hiện trên một số dạng vi phân bậc 2
để làm xuất hiện biên. Có hai dạng của phƣơng pháp đạo hàm bậc hai đã đƣợc nghiên cứu
là: phƣơng pháp Lapplace và đạo hàm trực tiếp.
Bộ tách biên Canny [4]: phƣơng pháp phát hiện này đƣợc sử dụng phổ biến vì nó có
nhiều ƣu điểm hơn các phƣơng pháp khác.
Các bƣớc thực hiện:
Làm phẳng dùng bộ lọc Gauss.
Hình 2.3: Bộ lọc Gaussian
Sau đó, Gradient cục bộ của biên độ và hƣớng đƣợc tính. Tìm điểm ảnh có biên độ
lớn nhất dùng kỹ thuật nonmaximal suppression.
Các điểm ảnh đỉnh tìm đƣợc chia làm hai ngƣỡng T1 và T2, T1 < T2. Các điểm ảnh
đỉnh có giá trị lớn hơn T2 đƣợc gọi là Strong và nằm trong khoảng T1 và T2 đƣợc gọi là
Weak. Liên kiết các điểm ảnh Weak có 8 kết nối đến điểm ảnh Strong.
Phƣơng pháp gradient: Gradient là một vector có các thành phần biểu thị tốc độ thay
đổi giá trị của điểm ảnh theo 2 hƣớng x và y, hay có thể nói là nó đại diện cho sự thay đổi về
hƣớng và độ lớn của một vùng ảnh. Ảnh đƣợc làm mịn sau đó đƣợc lọc bằng hạt nhân Sobel
theo cả hƣớng ngang và dọc để lấy đạo hàm đầu tiên theo hƣớng nằm ngang (Gx) và hƣớng
dọc (Gy). Từ hai hình ảnh này, chúng ta có thể tìm gradient và hƣớng cạnh cho mỗi pixel
nhƣ sau:
22
)(_ yx GGGGradientEdge  (2.3)






 
Gx
Gy
Angle 1
tan)( (2.4)
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 10
Phân đoạn ảnh
Phân đoạn ảnh là bƣớc then chốt trong xử lý ảnh. Giai đoạn này nhằm phân tích ảnh
thành các vùng 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ức xám, cùng màu hay cùng độ nhóm.
Quá trình phân đoạn ảnh nhằm tách đối tƣợng cần khảo sát ra khỏi phần nội dung
còn lại của ảnh, hay phân chia các đối tƣợng trong ảnh thành những đối tƣợng riêng biệt,
nhƣ vậy quá trình phân đoạn ảnh là quá trình giảm bớt số lƣợng thông tin trong ảnh và chỉ
giữ lại những thông tin cần thiết cho ứng dụng. Do đó phân đoạn ảnh là quá trình loại bỏ các
đối tƣợng không quan tâm trong ảnh.
Có nhiều phƣơng pháp phân đoạn ảnh khác nhau. Trong đó quá trình phân đoạn ảnh
sử dụng một ngƣỡng giá trị xám để phân đoạn ảnh ra thành các đối tƣợng và nền là phƣơng
pháp đơn giản nhất. Lúc này các điểm ở bên dƣới ngƣỡng giá trị xám thuộc về nền còn
những điểm ảnh ở bên trên ngƣỡng giá trị xám thuộc về đối tƣợng. Phƣơng pháp phân đoạn
ảnh này hiệu quả lớn đối với ảnh nhị phân, văn bản in hay đồ họa...
Dựa vào đặc tính vật lý của vùng ảnh, các kỹ thuật phân đoạn vùng có thể đƣợc chia
làm 3 loại:
Các kỹ thuật cục bộ: dựa trên các đặc tính cục bộ của các điểm ảnh và các lân cận
của nó.
Các kỹ thuật tổng thể: phân đoạn một ảnh dựa trên cơ sở của thông tin lấy từ tổng thể
nhƣ sử dụng biểu đồ mức xám histogram.
Các kỹ thuật chia, nối và phát triển: dựa trên các khái niệm tƣơng đồng về hình dạng
và tính đồng nhất. Hai vùng có thể đƣợc nối lại với nhau và liền kề bên nhau. Các vùng
không đồng nhất có thể đƣợc chia thành các vùng nhỏ. Một vùng có thể đƣợc phát triển
bằng các nối các điểm ảnh sao cho nó đồng nhất với nhau.
Các phần mềm hỗ trợ xử lý ảnh
Hiện nay xử lý ảnh đƣợc giảng dạy trƣờng đại học và ứng dụng vào thực tế rất nhiều
nhƣ các phần mềm chỉnh sửa hình ảnh hay nhận biết khuôn mặt. Chính vì thế có rất nhiều
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 11
công cụ để chúng ta lập trình ứng dụng vào thực tế, Nhƣ phải kể đến Matlap, hay ngôn ngữ
Python…
2.2 PHƢƠNG PHÁP PHÂN LOẠI SẢN PHẨM THEO HÌNH DẠNG
Với để tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và
kích thƣớc.” Thiết kế mô hình phân loại sản phẩm theo hình dạng (hình vuông, hình chữ
nhật, hình tam giác) và tính kích thƣớc của chúng. Ở phần này sẽ đi tìm hiểu chi tiết phƣơng
pháp nhận dạng của từng hình dạng của sản phẩm, phƣơng pháp tính kích thƣớc và phân
loại sản phẩm theo từng hình dạng đã đƣợc nhận dạng.
2.2.1 Các hình dạng cơ bản của sản phẩm
Trong cuộc sống hiện nay, nhu cầu về kiểu dáng sản phẩm ngày càng đƣợc chú
trọng, để đáp ứng nhu cầu thiết yếu đó nên trên thị trƣờng ra nhiều sản phẩm có hình dạng
và kiểu dáng đa dạng.
Ở đây ta sẽ chia sản phẩm ra 2 nhóm, cách chia này dựa vào sự phổ biến của hình
dạng sản phẩm ở ngoài cuộc sống, nhóm hình dạng chính (hình chữ nhật, hình vuông, hình
tam giác) và các hình dạng còn lại ta chia thành 1 nhóm.
Khi kết quả phân loại sản phẩm rơi vào một trong những hình nhóm hình này thì kết
quả sau nhận dạng chỉ ra đúng tên hình dạng của sản phẩm.
Hình chữ nhật: Đặc điểm nhận dạng: Có 4 đỉnh, 4 cạnh, 4 góc vuông, 2 cạnh đối
diện đều bằng nhau, khác với so với hình vuông là 2 cạnh kề không bằng nhau…
Hình vuông: Đặc điểm nhận dạng: Có 4 đỉnh, 4 cạnh, 4 góc vuông, 2 cạnh đối diện
đều bằng nhau, 2 cạnh kề bằng nhau…
Hình tam giác: Đặc điểm nhận dạng: có 3 đỉnh và 3 cạnh là hình tam giác…
2.2.2 Phƣơng pháp nhận dạng sản phẩm theo hình dạng
Nhận dạng ảnh là giai đoạn quan trọng cuối của một hệ thống xử lý ảnh. Nhận dạng
là quá trình phân loại các đối tƣợng đƣợc biểu diễn theo một mô hình nào đó. Ảnh đƣợc
chụp sẽ đƣợc phân tích thành các đặc trƣng riêng biệt, với những đặc trƣng đó ta đem đi tìm
hiểu và nhận dạng.
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 12
Mô hình của tôi nhận dạng 3 hình cơ bản là: hình vuông, hình chữ nhật, hình tam
giác.
Nhƣ đề cập ở trên các các hình dạng của sản phẩm có các đặc điểm đặc trƣng. Tuy
nhiên, thì vẫn có một số đặc điểm giống nhau, đặc điểm khác nhau, cùng với đó có thêm
một số đặc điểm bị dƣ thừa trong việc so sánh với các sản phẩm khác tức là một số đặc điểm
không liên quan đến nhau. Nếu nhận dạng tất cả các đặc điểm của các hình thì điều đó rất
mất thời gian cùng với tiêu tốn tài nguyên dữ liệu lớn. Chính vì vậy ở đề tài này, ta cần chọn
lọc ra từng đặc điểm riêng biệt của từng hình mà các hình không có và loại bỏ các đặc điểm
cần thiết.
Nhƣ vậy, để nhận dạng đƣợc hình dạng của sản phẩm cần xác định các đặc điểm, đặc
trƣng riêng biệt của của từng hình dạng.
Ở đây chỉ có 3 hình dạng sản phẩm (hình chữ nhật, hình vuông, hình tam giác) cần
phân loại, chính vì vậy sẽ có một số đặc điểm hình dạng không cần xét tới.
a. Sản phẩm hình chữ nhật
Hình chữ nhật là hình có 4 đỉnh, 4 cạnh, 4 góc vuông, 2 cạnh đối diện bằng nhau,...
Từ đặc điểm đó ta đi so sánh với 2 hình còn lại và phân tích thấy: Đặc điểm thứ nhất
có 4 đỉnh, nhƣng sản phẩm hình vuông cũng có 4 đỉnh. Chính vì vậy ta có đặc điểm thứ hai
để so sánh sự khác biệt với hình vuông, đó là 2 cạnh kề không bằng nhau với hình chữ nhật,
với hình vuông thì chúng bằng nhau.
Nhƣ vậy, đặc điểm nhận dạng sản phẩm hình chữ nhật, gồm 4 đỉnh và 2 cạnh kề
không bằng nhau.
a khác b
a
b
E F
GH
Hình 2.4: Đặc điểm hình chữ nhật
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 13
b. Sản phẩm hình vuông
Đặc điểm nhận dạng: Có 4 đỉnh, 4 cạnh, 4 góc vuông, 2 cạnh đối diện đều bằng nhau,
2 cạnh kề bằng nhau…
Từ đặc điểm đó ta đi so sánh với 2 hình còn lại và phân tích thấy: Đặc điểm thứ nhất
có 4 đỉnh, nhƣng sản phẩm hình chữ nhật cũng có 4 đỉnh nhƣ đã đề cập ở trên. Chính vì vậy
ta có đặc điểm thứ hai để so sánh sự khác biệt với hình chữ nhật, đó là 2 cạnh bằng nhau.
Nhƣ vậy, đặc điểm nhận dạng sản phẩm hình vuông, gồm 4 đỉnh và 2 cạnh kề bằng
nhau.
a
b
E F
GH
a = b
Hình 2.5: Đặc điểm hình vuông
c. Sản phẩm hình tam giác
Đặc điểm nhận dạng: có 3 đỉnh và 3 cạnh là hình tam giác...
Từ đặc điểm đó ta đi so sánh với 2 hình còn lại và phân tích thấy: Chỉ có hình tam
giác có 3 đỉnh, và đó chính là đặc điểm đặc trƣng riêng biệt của tam giác.
B
A
C
Hình 2.6: Đặc điểm hình tam giác
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 14
Bảng 2.1: Đặc điểm hình dạng sản phẩm
Đặc điểm Hình vuông Hình chữ nhật Hình tam giác
Đỉnh 4 4 3
Cạnh 2 cạnh kề bằng
nhau
2 cạnh kề không
bằng nhau
Có 3 cạnh
2.2.3 Các bƣớc thực hiện phân loại sản phẩm theo hình dạng
Hình 2.7: Sơ đồ các bƣớc thực hiện phân loại sản phẩm
Thu nhận ảnh
Thu thập ảnh là bƣớc mà ảnh có thể nhận qua camera hoặc có thể lấy từ bộ nhớ của
hệ thống.
Tiền xử lý ảnh
Là bƣớc chỉnh sửa chất lƣợng ảnh, nhƣ việc lọc nhiễu hay tăng cƣờng độ sáng, để
nâng cao chất lƣợng ảnh và chuyển sang ảnh xám để dễ dạng nhận dạng ảnh.
Chuyển đổi ảnh xám: Giả sử, hình ảnh của đƣợc lƣu trữ dƣới dạng RGB (Red-Green-
Blue). Điều này có nghĩa là có ba ma trận xám tƣơng ứng cho màu Red, Green, Blue. Công
việc là tìm cách tổng hợp ba ma trận này về thành một ma trận duy nhất. Một trong số các
công thức phổ biến để thực hiện việc đó là:
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 15
Y = 0.2126R + 0.7152G + 0.0722B (2.5)
Trong đó:
 Y: ma trận xám cần tìm
 R: ma trận xám đỏ của ảnh
 G: ma trận xám lục của ảnh
 B: ma trận xám lam của ảnh
Lọc trung bình: Giả sử có một ảnh đầu vào với I(x,y) là giá trị điểm ảnh tại một điểm
(x,y) và một ngƣỡng θ.
Bƣớc 1: Tính tổng các thành phần trong ma trận lọc (Kernel).
Bƣớc 2: Chia lấy trung bình của tổng các thành phần trong ma trận đƣợc tính ở trên
với số lƣợng các phần tử của cửa sổ lọc ra một giá trị Itb(x, y).
Bƣớc 3: Hiệu chỉnh:
- Nếu I(x,y) - Itb(x,y) > θ thì I(x,y) = Itb(x,y).
-Nếu I(x,y) - Itb(x,y) <= θ thì I(x,y)=I(x,y).
Chú ý: θ là một giá trị cho trƣớc và có thể có hoặc không tùy thuộc vào mục đích.
Tách biên
Tách biên là quá trình loại bỏ dữ liệu không cần thiết để giảm thiểu tài nguyên sử
dụng và dễ dàng tính toán.
Tách biên đƣợc chia thành các bƣớc:
 Giảm nhiễu
 Xác định đƣờng biên
 Loại bỏ dữ liệu không phải đƣờng biên
Giảm nhiễu:
Vì phát hiện cạnh, đƣờng biên dễ bị nhiễu trong ảnh, bƣớc đầu tiên là loại bỏ nhiễu
trong ảnh bằng bộ lọc Gaussian.
Xác định đƣờng biên:
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 16
Ảnh đƣợc làm mịn bằng bộ lọc tuyến tính nhằm mục đích loại bỏ những chi tiết nhỏ
ra khỏi ảnh trƣớc khi tiến hành tách các thành phần lớn hơn ra khỏi, ảnh sau đó đƣợc lọc
bằng hạt nhân Sobel tìm gradient và hƣớng cạnh cho mỗi pixel. Hƣớng dốc luôn vuông góc
với các cạnh. Nó đƣợc làm tròn thành một trong bốn góc đại diện cho hƣớng dọc, ngang và
hai đƣờng chéo.
Sau khi nhận đƣợc độ lớn và hƣớng gradient, việc quét toàn bộ hình ảnh đƣợc thực
hiện để xóa bất kỳ pixel không mong muốn nào có thể không tạo thành cạnh. Đối với điều
này, tại mỗi điểm ảnh, pixel đƣợc kiểm tra nếu nó là một cực đại cục bộ trong vùng lân cận
theo hƣớng gradient. Kiểm tra hình ảnh dƣới đây:
Hình 2.8: Xác định biên
Điểm A nằm trên cạnh theo hƣớng thẳng đứng. Hƣớng dốc là bình thƣờng cho cạnh.
Điểm B và C theo hƣớng dốc. Vì vậy, điểm A đƣợc so sánh với điểm B và C để xem nó có
là một cực đại hay không, nếu có thì nó thuộc đƣờng biên.
Loại bỏ dữ liệu không phải đƣờng biên:
Giai đoạn này quyết định đó là tất cả các cạnh, biên có thực sự là cạnh hay không.
Đối với điều này, chúng ta cần hai giá trị ngƣỡng, minVal và maxVal. Bất kỳ cạnh nào có
gradient cƣờng độ lớn hơn maxVal đều chắc chắn là các cạnh và các cạnh dƣới minVal chắc
chắn là không có cạnh, do đó bị loại bỏ. Những biên nằm giữa hai ngƣỡng này đƣợc phân
loại các cạnh liên tục hay không liên tục, nếu chúng đƣợc kết nối với các pixel "chắc chắn",
chúng đƣợc coi là một phần của các cạnh. Nếu không, chúng cũng bị loại bỏ.
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 17
Hình 2.9: Nhận dạng đƣờng biên
Cạnh A nằm trên giá trị maxVal, do đó đƣợc coi là đƣờng biên. Mặc dù cạnh C là
dƣới maxVal, nó đƣợc kết nối với cạnh A, do đó cũng đƣợc coi đƣờng biên hợp lệ và chúng
ta có đƣợc đƣờng cong đầy đủ đó. Nhƣng cạnh B, mặc dù nó ở trên minVal và nằm trong
cùng một vùng với cạnh của C, nó không đƣợc kết nối với bất kỳ đƣờng biên nào trên giá trị
maxval nên không phải cạnh do đó nó bị loại bỏ.
Lấp đầy biên
Là quá trình lấp đầy các đƣờng biên kín, không bị gián đoạn hay đứt khúc, để tạo ra
đƣợc ảnh nhị phân có giá trị 0 và 1. Mức 1 là giá trị của hình dạng lấp đầy biên, và bên
ngoài biên đƣợc coi là giá trị 0. Nhƣ hình bên trên, đầu tiên phải sơn lại các vùng ở ngoài
biên từ ảnh ban đầu ảnh a tức là đổi giá trị 0 bên ngoài thành giá trị 1 thành ảnh b. Sau đó
đảo giá trị ảnh ngƣợc lại của ảnh b ta đƣợc ảnh c.
Cuối cùng ta dùng phép toán OR để giữa ảnh a và ảnh c thì ta có kết quả.
Nhận dạng và phân loại sản phẩm
Ta nhận dạng sản phẩm dựa vào các đặc điểm riêng biệt của từng hình, thì sau đó ta
đã có đƣợc các đặc điểm về đỉnh, đặc điểm về cạnh. Đó là nhận dạng sản phẩm.
Sau khi có đƣợc các đặc điểm riêng biệt của từng hình nhƣ trên. Ta có phân loại từng
hình dạng sản phẩm một nhờ vào việc so sánh các đặc điểm riêng biệt của chúng. Ta lần
lƣợt đi so sánh từng hình một, từ hình vuông, đến hình chữ nhật, đến hình tam giác. Nếu các
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 18
đặc điểm trùng khớp với đặc điểm đƣợc đề ra trƣớc ở hình dạng nào thì ta kết luận ngay đó
là sản phẩm có hình dạng đó. Ngƣợc lại nếu không có đặc điểm nào khớp ta kết luận đó là
một sản phẩm nào đó khác mà không phải sản phẩm đã định sẵn.
2.3 ÁP DỤNG KỸ THUẬT HIỆU CHỈNH STEREO CAMERA ĐỂ TÍNH
KÍCH THƢỚC SẢN PHẨM
Khi sử dụng một camera thì rất khó xác định đƣợc khoảng cách từ camera đến vật.
Do vậy muốn xác định đƣợc khoảng cách thì cần ít nhất từ hai camera trở lên. Với hai hay
nhiều máy ảnh, chúng ta hoàn toàn có thể xác định đƣợc độ sâu nếu chúng ta xác định đƣợc
các điểm tƣơng đồng của hai ảnh mục tiêu và tham chiếu.
Một xu hƣớng phát triển mới là sử dụng camera thị giác để quan sát nhƣ mắt ngƣời.
Mặc dù việc chiết xuất dữ liệu từ ảnh thị giác là khó khăn hơn là dùng cảm biến nhƣng bù
lại thì cách thức này cung cấp cho con ngƣời những dữ liệu trực quan sinh động và đầy đủ.
Khi xử lý tín hiệu ảnh stereo thị giác thƣờng có hai khâu:
* Khâu đầu tiên là khâu tiền xử lý có nhiệm vụ lấy ra các dữ liệu có chứa thông
tin hữu ích cho việc phát triển các ứng dụng thị giác stereo thời gian thực.
* Khâu thứ hai các ứng dụng thị giác nhƣ ứng dụng tái tạo môi trƣờng 3D, phát
hiện đối tƣợng…
Trong khâu tiền xử lý, có một đặc điểm chính là khối lƣợng dữ liệu thu thập bằng
camera rất lớn (lớn hơn nhiều lần so với dữ liệu thu thập bằng cảm biến) cần đƣợc xử lý.
Mọi cách giải quyết mới đều phải đƣợc phát triển trên một nền tảng sẵn có. Ở phần tiếp, các
kỹ thuật cơ bản của xử lý ảnh 3D sẽ đƣợc đƣa ra để làm cơ sở phát triển cho các thuật toán
về sau.
2.3.1 GIỚI THIỆU KỸ THUẬT HIỆU CHỈNH STEREO CAMERA
Hiệu chỉnh stereo camera là phƣơng pháp tính toán và thực nghiệm nhằm tìm ra các
tham số của camera để tái tạo không gian 3D của một cảnh, một vật thể nào đó trong thực tế
bằng những ảnh mà camera đó ghi lại đƣợc.
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 19
2.3.2 STEREO CAMERA
Stereo vision là kỹ thuật sử dụng hai camera để đo khoảng cách giữa hai đối tƣợng.
Thông thƣờng sử dụng hai camera cùng loại và thông số đƣợc đặt trên đƣờng thẳng hoặc
ngang.
Hình 2.10: Cấu hình chuẩn của hệ thống 2 camera
Sử dụng camera stereo này, chúng ta có thể thu đƣợc hình ảnh của đối tƣợng tại hai
vị trí khác nhau: ảnh bên trái và ảnh bên phải của đối tƣợng (sự chênh lệch). Các ảnh của
các camera đƣợc phân tích để tìm các điểm chung. Sử dụng quy tắc tam giác đồng dạng và
độ lệch của các điểm chung để xác định khoảng cách (độ sâu) so với camera.
Hình 2.11: Hệ thống tọa độ của một stereo camera
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 20
Hình mô tả hệ thống tọa độ của một stereo camera, có thể đƣợc tính nhƣ trong hai
phƣơng trình sau:
fz
xlxrb
z
b



)(
(2.6)
d
fb
xrxl
fb
z
**


 (2.7)
Trong đó:
 d = xl-xr là sự chênh lệch.
 xl là tọa độ x của camera bên trái.
 xr là tọa độ x của camera bên phải.
 b là chiều dài cơ sở của hai camera.
 f là tiêu cự của máy ảnh.
 z là khoảng cách từ đƣờng cơ sở đến đối tƣợng.
Tính toán bản đồ chênh lệch:
Là một trong những vấn đề quan trọng trong thị giác máy tính 3D. Một số lƣợng lớn
các thuật toán đã đƣợc đề xuất để giải quyết vấn đề này. Một trong những phƣơng pháp
tƣơng đối mới là “Tính toán bản đồ độ sâu” từ hình ảnh stereo. Đối với các cặp hình ảnh
stereo đã đƣợc chỉnh sửa epipolar, mỗi điểm trong hình ảnh bên trái nằm trên đƣờng nằm
ngang (đƣờng epipolar) có thể có điểm ảnh tƣơng ứng trong hình ảnh bên phải. Cách tiếp
cận này đƣợc sử dụng để làm giảm không gian tìm kiếm chiều sâu bản đồ thuật toán tính
toán. Chiều sâu của một điểm ảnh là khoảng cách điểm không gian tƣơng ứng tới trung tâm
máy ảnh. Để ƣớc tính bản đồ độ sâu và phát hiện các đối tƣợng 3D, các điểm ảnh tƣơng
ứng trong những ảnh trái và ảnh phải cần đƣợc phát hiện.
Thuật toán là phần rất quan trong trong hệ thị giác máy tính 3D. Tuy nhiên, hiện nay
có rất nhiều thuật toán đã đƣợc phát triển và hàng năm thì cũng có nhiều thuật toán mới
đƣợc đề xuất. Việc phân loại tất cả các thuật toán là một điều rất khó vì hầu hết các nhà
nghiên cứu chỉ đƣa ra kết quả định tính hoặc là kết quả cuối cùng về hiệu quả của các thuật
toán của họ. Các thuật toán truyền thống của thị giác máy tính 3D là SAD (sum of absolute
diffirence), SSD (sum of squared diffirence) và NCC (normalized cross correlation). Các
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 21
hàm giá trị phù hợp đƣợc kết hợp trên các vùng cung cấp. Các vùng cung cấp thƣờng nhận
đƣợc nhƣ các cửa sổ đƣợc kết hợp có thể là hình vuông hoặc hình chữ nhật, kích thƣớc cố
định hoặc thích nghi. Việc xác định giá trị của kết hợp các hàm giá trị phù hợp, dẫn đến nền
tảng của hầu hết các thuật toán thị giác nổi. Các thuật toán truyền thống có thể đƣợc biểu
diễn toán học nhƣ sau:
1) Phƣơng pháp tổng bình phƣơng khác biệt (SSD – Sum of Squared
Differences):
 
 Wyx rl dyxIyxIdyxSSD ,
2
)),(),((),,( (2.8)
Phƣơng pháp này tính tổng của các bình phƣơng của các hiệu nên xuất hiện thêm
phép nhân trƣớc khi tính tổng. Do đó độ phức tạp tăng lên đáng kể.
2) Phƣơng pháp tổng sự khác biệt tuyệt đối (SAD - Sum of Absolute
Differences):
 
 Wyx rl dyxIyxIdyxSAD ,
),(),(),,( (2.9)
Theo công thức trên, việc tính giá trị chênh lệch của điểm (x,y) đƣợc thực hiện bằng
phép tính hiệu trong cửa sổ W. Do đó thuật toán đơn giản. Cửa sổ W và phạm vi chênh lệch
d càng lớn thì số phép tính tăng. Thông thƣờng có thể thực tính SAD với cửa sổ 3x3, hoặc
5x5 hoặc 7x7 hoặc 11x11. Phạm vi chênh lệch d thƣờng chọn dƣới 120 với các giá trị tham
khảo nhƣ 16, 50, 128.
3) Phƣơng pháp dựa trên sự tƣơng quan chéo chuẩn (NCC)
 

 




Wyx Wyx rl
Wyx rl
dyxIyxI
dyxIyxI
dyxNCC
, ,
22
,
),().,(
),()..,(
),,( (2.10)
Trong đó Il , Ir là những giá trị cƣờng độ trong hình ảnh trái và phải, (x, y) là tọa độ
của điểm ảnh, d là giá trị sai lệch đƣợc xem xét và W là cửa sổ phức hợp.
Việc lựa chọn các giá trị sai lệch thích hợp cho mỗi điểm ảnh đƣợc thực hiện sau đó.
Phƣơng pháp này có độ phức tạp cao nhất vì xuất hiện các phép toán tiêu tốn nhiều tài
nguyên của máy tính nhƣ phép bình phƣơng, khai căn. Do đó việc ứng dụng của thuật toán
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 22
này trong các hệ thống thời gian thực là không khả thi tức là, cho mỗi điểm ảnh (x, y) và
cho giá trị không đổi có sự khác nhau d, chi phí tối thiểu đƣợc lựa chọn.
D(x,y) = argminSAD(x,y,d) (2.11)
Phƣơng trình trên đƣợc dùng cho phƣơng pháp SAD. Tuy nhiên, trong nhiều trƣờng
hợp lựa chọn khác biệt là một quá trình lặp đi lặp lại, vì độ chênh lệch của mỗi điểm ảnh là
tùy thuộc vào sự chênh lệch của các điểm ảnh lân cận. Các thuật toán phân vùng lai là một
sự kết hợp với phƣơng pháp SAD đƣợc áp dụng phù hợp với hình ảnh stereo để tinh chỉnh
các bản đồ độ sâu cuối cùng.
Các thuật toán phù hợp với âm thanh stereo dựa trên phƣơng pháp mà không SAD
phân đoạn và cách tiếp cận lai các thuật toán phù hợp với hình ảnh stereo dựa trên SAD lai
có vẻ là thuật toán hiệu quả hơn để sản xuất bản đồ chênh lệch sạch hơn với các khu vực
đồng nhất. Mặt khác, các thuật toán phù hợp với hình ảnh stereo dựa trên phƣơng pháp SAD
sản xuất một bản đồ chiều sâu rõ ràng về hiện trƣờng. Hơn nữa, nó tạo ra một chất lƣợng
cao hơn và ít lỗi gây ra bởi tắc phân đoạn hình ảnh.
Thuật toán bao gồm các bƣớc nhƣ hình 2.12 :
Hình 2.12: Thuật toán SAD phân vùng
 Bƣớc 1: là quá trình hiệu chuẩn ảnh. Mục đích của quá trình này là xác
định đƣợc các thông số bên trong và bên ngoài của camera :
- Các thông số bên trong nhƣ là tiêu cự, điểm trung tâm, hiệu chỉnh vuông góc alpha
và độ méo,..
- Các thông số bên ngoài nhƣ là các phép xoay và các phép chuyển.
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 23
 Bƣớc 2: là quá trình hiệu chỉnh ảnh. Quá trình hiệu chỉnh ảnh là quá trình mà hai ảnh
của cảnh cố định chuyển đổi đơn ứng, có nghĩa rằng các đƣờng tâm cực đồng tâm trùng
nhau và song song với trục tâm quang.
 Bƣớc 3: là quá trình tìm điểm ảnh tƣơng đồng giữa ảnh mục tiêu và ảnh tham chiếu
tức là tìm bản đồ chênh lệch.
 Bƣớc 4: là sử dụng quy tắc tam giác đồng dạng và độ lệch của các điểm chung để xác
định khoảng cách so với camera., có nghĩa là tìm đƣợc bản đồ độ sâu.
Hình 2.13: Qui tắc tam giác đồng dạng
2.3.3 PHƢƠNG PHÁP HIỆU CHỈNH CHUẨN
Phƣơng pháp hiệu chỉnh chuẩn là công việc ƣớc tính các thông số của thấu kính, cảm
biến hình ảnh của máy ảnh. Có thể sử dụng các thông số này để cân chỉnh lại hiện tƣợng
biến dạng, đo kích thƣớc một vật ngoài thế giới thực, tìm ra vị trí của camera khi chụp một
bức hình.
Những công việc đó cũng đƣợc sử dụng trong các ứng dụng nhƣ thị giác máy tính để
phát hiện và đo đối tƣợng, trong robotics, hệ thống điều hƣớng, xây dựng ảnh 3D.
Các thông số camera bao gồm các thông số nội, thông số ngoại, các hệ số biến dạng.
Để ƣớc tính các thông số camera, bạn cần có những điểm 3D thực và điểm ảnh 2D tƣơng
ứng. Bạn có thể có những điểm trên bằng cách sử dụng nhiều hình chụp của một mẫu để cân
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 24
chỉnh ảnh, chẳng hạn là một bàn cờ. Sử dụng các ảnh đó, bạn có thể giải ra đƣợc thông số
camera. Mô hình camera pinhole là một mô hình camera đơn giản. Bạn có thể bắt gặp mô
hình camera này đƣợc cài đặt đơn giản khi ngƣời ta muốn xem hiện tƣợng nhật thực. Mô
hình gồm một hộp đen kín, đƣợc đục một lỗ nhỏ gọi là lỗ kim. Thuật ngữ gọi pinhole là
Focal Point. Khoảng cách từ Focal Point tới màn nhận ảnh là Focal length. Độ mở của
pinhole gọi là Aperture khẩu độ.
Hình 2.14: Mô hình các thông số của camera
Các thông số ảnh đƣợc biểu diễn bởi ma trận 3×4 đƣợc gọi là ma trận camera. Ma
trận camera này ánh xạ cảnh thế giới thực 3D vào mặt phẳng ảnh. Thuật toán calibration
tính ra ma trận camera sử dụng các thông số nội và thông số ngoại. Thông số ngoại của
camera đại diện cho vị trí của camera trong thế giới 3D. Thông số nội của camera đại diện
cho tâm quang và tiêu cự của camera.











































1
100
0
0
1 3333231
2232221
1131211
Z
Y
X
trrr
trrr
trrr
cf
cf
v
u
S yy
xx
(2.12)
Trong đó:
 (X,Y,Z) là tọa độ của điểm ảnh trong không gian ba chiều
 (u,v) là tọa độ của điểm ảnh hai chiều
 (cx,cy) là điểm chính, thƣờng là tâm ảnh
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 25
 fx,fy là độ dài tiêu cự biểu diễn ở đơn vị pixel. Ma trận các thông số nội tại không
phụ thuộc vào cảnh chụp. Vì vậy, một khi ƣớc tính, nó có thể đƣợc sử dụng lại miễn
là độ dài tiêu cự đƣợc cố định (trong trƣờng hợp ống kính zoom). Ma trận joint
rotation-translation đƣợc gọi là ma trận của các tham số bên ngoài. Nó đƣợc sử dụng
để mô tả chuyển động của camera xung quanh một cảnh tĩnh, hoặc ngƣợc lại, chuyển
động không thay đổi hình dáng của một đối tƣợng ở phía trƣớc của một máy ảnh tĩnh.
Tức là, [R|t] dịch tọa độ của một điểm (X,Y,Z) đến một hệ tọa độ, cố định đối với
máy ảnh.
Các ống kính thật thƣờng có một số biến dạng, phần lớn là biến dạng xoay và biến
dạng tiếp xúc. Các hệ số biến dạng không phụ thuộc vào cảnh. Do đó, chúng cũng thuộc về
các thông số nội. Và chúng vẫn giữ nguyên bất kể độ phân giải hình ảnh.
Ví dụ: nếu máy ảnh đã đƣợc hiệu chỉnh trên các hình ảnh có độ phân giải 320 x 240,
hoàn toàn có thể sử dụng các hệ số biến dạng tƣơng tự cho các hình ảnh 640 x 480 từ cùng
một máy ảnh trong khi fx,fy cx và cy cần phải đƣợc tính lại.
Các function dƣới đây sử dụng mô hình trên để thực hiện những việc sau:
 Dựng điểm 3D từ ảnh 2D với các thông số nội và ngoại.
 Tính các thông số ngoại với thông số nội, một vài điểm 3D và các phép chiếu
của chúng đƣợc cho trƣớc.
 Ƣớc lƣợng các thông số nội và ngoại của máy ảnh từ nhiều khung cảnh của
vật.
 Ƣớc lƣợng vị trí tƣơng đối và định hƣớng của stereo camera “heads” và tính
toán sự chuyển đổi chỉnh lƣu làm cho trục quang của máy ảnh song song.
2.4 NGÔN NGỮ PYTHON
Python là một ngôn ngữ lập trình đƣợc sử dụng phổ biến ngày nay từ trong môi
trƣờng học đƣờng cho tới các dự án lớn [5]. Ngôn ngữ phát triển nhiều loại ứng dụng, phần
mềm khác nhau nhƣ các chƣơng trình chạy trên desktop, server, lập trình các ứng dụng
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 26
web... Ngoài ra Python cũng là ngôn ngữ ƣa thích trong xây dựng các chƣơng trình trí tuệ
nhân tạo trong đó bao gồm machine learning. Ban đầu, Python đƣợc phát triển để chạy trên
nền Unix. Nhƣng sau này, nó đã chạy trên mọi hệ điều hành từ MS-DOS đến Mac OS,
OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix.
Python do Guido van Rossum tạo ra năm 1990. Python đƣợc phát triển trong một dự
án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý. Mặc dù sự phát
triển của Python có sự đóng góp của rất nhiều cá nhân, nhƣng Guido van Rossum hiện nay
vẫn là tác giả chủ yếu của Python. Ông giữ vai trò chủ chốt trong việc quyết định hƣớng
phát triển của Python.
Python là ngôn ngữ có hình thức đơn giản, cú pháp ngắn gọn, sử dụng một số lƣợng
ít các từ khoá, do đó Python là một ngôn ngữ dễ học đối với ngƣời mới bắt đầu tìm hiểu.
Python là ngôn ngữ có mã lệnh (source code hay đơn giản là code) không mấy phức
tạp. cả trƣờng hợp bạn chƣa biết gì về Python bạn cũng có thể suy đoán đƣợc ý nghĩa của
từng dòng lệnh trong source code.
Python có nhiều ứng dụng trên nhiều nền tảng, chƣơng trình phần mềm viết bằng
ngôn ngữ Python có thể đƣợc chạy trên nhiều nền tảng hệ điều hành khác nhau bao gồm
Windows, Mac OSX và Linux.
 Các thành phần cơ bản trong Python
Cấu trúc rẽ nhánh:
Cấu trúc if dùng để thực thi có điều kiện một khối cụ thể.
Cấu trúc lặp, gồm lệnh while và vòng lặp for:
While chạy một khối cụ thể cho đến khi điều kiện lặp có giá trị là sai thì dừng. Vòng
lặp for, lặp qua từng phần tử, mỗi phần tử sẽ đƣợc đƣa vào biến cục bộ để sử dụng với từng
khối trong vòng lặp.
Class:
Dùng để khai báo lớp (sử dụng trong lập trình hƣớng đối tƣợng) và lệnh def dùng để
định nghĩa hàm.
Kiểu dữ liệu
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 27
Sử dụng Python, thuận lợi cho ngƣời mới sử dụng đó là không cần phải khai báo
biến. Biến đƣợc xem là đã khai báo nếu nó đƣợc gán một giá trị lần đầu tiên. Căn cứ vào
mỗi lần gán, Python sẽ tự động xác định kiểu dữ liệu của biến. Python có một số kiểu dữ
liệu cơ bản sau:
 Int, long là kiểu số nguyên. Độ dài của kiểu số nguyên là tùy ý, chỉ bị giới hạn bởi bộ
nhớ máy tính.
 float: số thực.
 Complex: số phức.
 Str: chuỗi ký tự…
 Thƣ viện OpenCV
OpenCV (Open Source Computer Vision Library) là một thƣ viện mã nguồn mở, nó
là miễn phí cho những ai bắt đầu tiếp cận với các học thuật. OpenCV đƣợc ứng dụng trong
nhiều lĩnh vực nhƣ cho thị giác máy tính hay xử lý ảnh và máy học. Thƣ viện đƣợc lập trình
trên các ngôn ngữ cấp cao: C++, C, Python, hay Java và hỗ trợ trên các nền tảng Window ,
Linux, Mac OS, iOS và Android. OpenCV đã đƣợc tạo ra tại Intel vào năm 1999 bởi Gary
Bradsky , và ra mắt vào năm 2000. Opencv có rất nhiều ứng dụng: Nhận dạng ảnh, xử lý
hình ảnh, phục hồi hình ảnh/video, thực tế ảo...
Ở đề tài này thƣ viện OpenCV đƣợc chạy trên ngôn ngữ Python. OpenCV đƣợc dùng
làm thƣ viện chính để xử lý hình ảnh đầu vào và sau đó đi nhận dạng ảnh.
OpenCV Là một thƣ viện mở nên sử dụng các thuật toán một cách miễn phí, cùng
với việc chúng ta cũng có thể đóng góp thêm các thuật toán giúp Thƣ viện thêm ngày càng
phát triển.
Các tính năng của thƣ viện OpenCV:
 Đối với hình ảnh, chúng ta có thể đọc và lƣu hay ghi chúng.
 Về Video cũng tƣơng tự nhƣ hình ảnh cũng có đọc và ghi.
 Xử lý hình ảnh có thể lọc nhiễu cho ảnh, hay chuyển đổi ảnh.
 Thực hiện nhận dạng đặc điểm của hình dạng trong ảnh
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 28
 Phát hiện các đối tƣợng xác định đƣợc xác định trƣớc nhƣ khuôn mặt, mắt, xe trong
video hoặc hình ảnh.
 Phân tích video, ... ƣớc lƣợng chuyển động của nó, trừ nền ra và theo dõi các đối
tƣợng trong video.
2.5 GIỚI THIỆU PHẦN CỨNG
Sử dụng Synchronization USB Stereo Webcam Dual lens camera OV9750 960P
MJPEG 2560x960 with No distortion lens 3D USB camera module với cảm biến OV9750
thế hệ mới của OmniVision. Cảm biến sử dụng công nghệ mới nhất OmniPixel3-HS™
Hình 2.15: Sơ đồ khối của camera
Ảnh đầu vào là mảng hai chiều. Sau đó qua bộ khuếch đại tín hiệu và chuyển đổi từ
tín hiệu tƣơng tự sang tín hiệu số. Tiếp tục đến quá trình xử lý ảnh số. Kết quả cuối cùng
là ảnh số 8-bit RGB (Red – Green – Blue) có 4096 mức màu khác nhau.
CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 29
CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
3.1 GIỚI THIỆU
Ngày nay, phần lớn các thiết bị điện tử đều phát triển theo xu hƣớng tự động
hóa, thông minh, càng hiểu ý con ngƣời, chúng giao tiếp đƣợc với con ngƣời và
hoạt động theo ý muốn con ngƣời, để làm đƣợc điều đó thì các thiết bị cảm biến,
thuật toán hỗ trợ ra đời. Trong số đó có bài toán “phân loại sản phẩm theo hình
dạng và kích thƣớc” là một đề tài đáng để cho ta tìm hiểu.
Để tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng
và kích thƣớc”. Phân loại sản phẩm theo hình dạng (hình vuông, hình chữ nhật, hình
tam giác), có thể biết đƣợc kích thƣớc của sản phẩm. Mô hình gồm bộ điều khiển
trung tâm là laptop, khối thu tín hiệu hình ảnh từ bên ngoài là camera 3D.
Thiết kế mô hình phân loại sản phẩm theo hình dạng (hình vuông, hình chữ
nhật, hình tam giác) và kích thƣớc có thời gian và tốc độ xử lý nhanh, tuy nhiên
không chụp ảnh theo mong muốn ở điều kiện thiếu ánh sáng mà phải có màu sắc
riêng biệt để tăng cƣờng độ chính xác của ảnh tránh nhiễu. Đề tải chỉ xây dựng với
mô hình nhỏ và gọn không làm thành dây chuyền sản xuất.
3.2 THIẾT KẾ HỆ THỐNG PHẦN CỨNG
Sơ đồ gồm : bộ điều khiển trung tâm là laptop, khối thu tín hiệu hình ảnh từ
bên ngoài là stereo camera, sau đó đƣợc hiển thị kết quả trên màn hình máy tính,
cùng với bộ phận để ngƣời giao tiếp và điều khiển.
Chức năng các khối:
 Khối xử lý trung tâm: là bộ xử lý chính, nhận dữ liệu từ khối thu tín
hiệu camera, sau đó xử lý và phân tích nhận dạng, phân loại sản phẩm
để đƣa kết quả ra hiển thị.
 Khối thu tin hiệu hình ảnh: thu thập tín hiệu hình ảnh từ thực tế
chuyển về tín hiệu điện và gửi dữ liệu cho khối xử lý trung tâm. Ở
đây dùng stereo camera làm khối thu tín hiệu hình ảnh.
CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 30
 Khối hiển thị: hiển thị kết quả đƣợc nhận từ khối xử lý trung tâm.
Sử dụng màn hình của máy tính để hiển thị kết quả.
 Khối giao tiếp và điều khiển: sử dụng bàn phím và chuột để giao
tiếp với CPU.
 Khối nguồn: cung cấp nguồn cho toàn bộ hệ thống.
Khối xử lý
trung tâm
Khối thu tín
hiệu hình ảnh
Khối hiển
thị
Khối nguồn
Khối giao
tiếp và điều
khiển
Gửi hình ảnh
về trung tâm
Đưa kết quả
hiển thị
Cung cấp
điện áp
Tín hiệu
điều khiển
Hình 3.1: Sơ đồ khối
3.2.1 Khối xử lý
Vì vấn đề xử lý ảnh cần nhiều tài nguyên và tốc độ xử lý cao, nên ta không
sử dụng vi điều khiển thông thƣờng để xử lý. Chính vì vậy, nhóm đã sử dụng laptop
làm khối xử lý trung tâm.
Máy tính của nhóm có CPU core i5 tộc độ xử lý lên tới 3.4 GHz chính vì vậy
việc sử dụng vào mô hình là hợp lý. Máy tính hỗ trợ rất tốt việc giao tiếp các thiết
bị ngoại vi và model từ bên ngoài.
3.2.2 Khối thu tín hiệu
CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 31
Khối thu tín hiệu là thành phần quan trọng của mô hình. Có chức năng thu
thập dữ liệu từ thực tế rồi gửi dữ liệu cho khối xử lý trung tâm.
Hình 3.2: Khối thu tín hiệu
Ở đây để có chất lƣợng hình ảnh tốt để xử lý ảnh dễ dàng ta dùng camera
có độ phân giải cao, có khả năng ghi nhận chiều sâu đối tƣợng, tƣơng tự mắt con
ngƣời nên chọn stereo camera làm khối thu tín hiệu hình ảnh.
Là thiết bị có ảnh hƣởng lớn đến chất lƣợng ảnh cùng với việc nhận dạng và
phân loại sản phẩm. Nên “Synchronization USB Stereo Webcam Dual lens camera
OV9750 960P MJPEG 2560X960 with No distortion lens 3D usb camera module”
đƣợc chọn. Camera có độ phân giải cao, cùng với kích thƣớc nhỏ gọn phù hợp cho
các hƣớng phát triển sau này.
Hình 3.3: Synchronization USB Stereo Webcam Dual lens camera OV9750 960P
MJPEG 2560x960 with No distortion lens 3D usb camera module
Các tính năng và đặc điểm của camera:
 Module Camera USB2.0 1.3MP HD 960P đƣợc đồng bộ hóa.
 Công nghệ đồng bộ hóa, phù hợp với ứng dụng Stereo 3D VR.
CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 32
 Giao diện USB 2.0 tốc độ cao.
 Tốc độ khung hình cao, có thể nhận MJPEG: 2560X960 @ 60fps /
2560X720 @ 60fps / 1280X480 @ 60fps / 640X240 @ 60fps.
 Tiêu thụ điện năng thấp.
 Sử dụng trong HĐH Windows, Linux, Android, Mac
3.2.3 Khối hiển thị
Có chức năng hiển thị kết quả đƣợc nhận từ Khối xử lý trung tâm. Sử dụng
màn hình máy tính để hiển thị kết quả.
Hình 3.4: Laptop
3.2.4 Khối giao tiếp và điều khiển
 Bàn phím
Về hình dáng, bàn phím là sự sắp đặt các nút, hay phím. Một bàn phím
thông thƣờng có các ký tự đƣợc khắc hoặc in trên phím; với đa số bàn phím, mỗi
lần nhấn một phím tƣơng ứng với một ký hiệu đƣợc tạo ra.
 Chuột máy tính
Chuột máy tính là một thiết bị ngoại vi của máy tính dùng để điều khiển và
làm việc với máy tính. Để sử dụng chuột máy tính nhất thiết phải sử dụng màn
hình máy tính để quan sát toạ độ và thao tác di chuyển của chuột trên màn hình.
3.2.5 Khối nguồn
Có chức năng cung cấp điện áp cho toàn hệ thống.
CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 33
Module camera với dòng tiêu thụ 220mA và điện áp 5V có thể sử dụng cổng
USB 2.0 của máy tính.
Do sử dụng máy tính xách tay nên các thiết bị ngoại vi không đƣợc tính.
3.3 CÁC TÍNH TOÁN TRONG NHẬN DẠNG
3.3.1 Giới thiệu đặc điểm của hình dạng
Nhƣ đã tìm hiểu phƣơng pháp nhận dạng ở cơ sở lý thuyết, từ đó rút ra rằng:
 Đỉnh cùa hình dạng
Đầu tiên ta tìm số đỉnh của các hình. Có 3 hình dạng có đặc điểm liên quan
tới đỉnh là hình chữ nhật, hình vuông và hình tam giác.
Đặc điểm:
- Có 4 đỉnh là hình vuông hoặc hình chữ nhật.
- Có 3 đỉnh là hình tam giác.
 Cạnh của hình dạng
Vấn đề về cạnh chỉ có 2 hình là liên quan tới chúng là: hình chữ nhật và hình
vuông.
Đặc điểm:
- Hai cạnh kề bằng nhau là hình vuông.
- Hai cạnh kề không bằng nhau là hình chữ nhật.
3.3.2 Phƣơng pháp tính toán các đặc điểm
 Cách tìm đỉnh
Hình 3.5: Đỉnh của hình
Sử dụng thuật toán Ramer-Douglas-Peucker để tìm đƣờng bao xấp xỉ, từ
đƣờng bao ta có cạnh xấp xỉ và nhờ đó suy ra đƣợc đỉnh.
CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 34
Hình 3.6: Đoạn Ramer-Douglas-Peucker
Giả xử trên đƣờng viền của cạnh một đối tƣợng có các điểm lồi ra và lõm
vào, chính vì thế ta cần phải đi tìm đƣờng xấp xỉ cho nó. Ở đây, sử dụng thuật toán
Ramer-Douglas-Peucker, tức là tìm đƣờng đi ngắn nhất từ điểm đầu đến điểm cuối.
Hình trên ta thấy đƣờng ngắn nhất đi từ A đến E chính là đoạn AE. Tƣơng tự
nhƣ thế ta áp dụng lên hình dạng sản phẩm ta tìm đƣợc cạnh xấp xỉ là AH.
Hình 3.7: Đƣờng xấp xỉ
Từ đó ta có đƣờng bao xấp xỉ cho hình chữ nhật. Đỉnh ở đây là điểm đầu và
điểm cuối trên một đoạn thẳng. Ví dụ trên cạnh AB thì đỉnh của nó là A và B.
Giả xử nó có tọa độ A(m,n) và B(x,y). Tƣơng tự làm với các cạnh còn lại,
nếu có các đỉnh giống nhau về tọa độ thì ở đây nó là 1 đỉnh.
 Cách tìm độ dài cạnh
Hình 3.8: Độ dài cạnh
CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 35
Giả sử ta có tọa độ của 2 đỉnh tìm đƣợc ở bƣớc tìm đỉnh là A(m,n) và B(x,y)
Ta tìm cạnh với công thức:
    22
nymxAB  (3.1)
Tƣơng tự cạnh BC ta cũng tìm tƣơng tự
Nếu AB = BC thì đó là hình vuông
AB khác BC thì đó là hình chữ nhật
 Xác định kích thƣớc của đối tƣợng
Từ các phƣơng pháp tìm đỉnh và độ dài các cạnh ở phía trên ta có thể tính
toán đƣợc chu vi của từng sản phẩm dựa vào hình dạng và độ dài các cạnh của
chúng.
Ta tìm chu vi của chúng bằng cách xem chúng nhƣ một loại hình học cơ bản:
Hình chữ nhật
Chu vi bằng tổng hai cạnh kề nhân với 2:
P = (C + D) x 2 (3.2)
(với P là chu vi, C,D là 2 cạnh kề nhau)
Hình vuông
Chu vi bằng độ dài một cạnh nhân với 4:
P = D x 4 (3.3)
(với P là chu vi, D là độ dài cạnh)
Hình tam giác
Chu vi bằng tổng độ dài 3 cạnh
P = A + B + C (3.4)
(với P là chu vi; A, B, C lần lƣợt là độ dài 3 cạnh)
CHƢƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 36
CHƢƠNG 4: THI CÔNG HỆ THỐNG
4.1 GIỚI THIỆU
Ở phần này thực thi trên laptop quá trình lấy các hình mẫu có sẵn sau đó xử lý
phân tích và nhận dạng sản phẩm.
Đề tải chỉ xây dựng với mô hình nhỏ và gọn không làm thành dây chuyền sản
xuất. Mô hình đƣợc kết nối qua các dây tín hiệu nên sẽ không có phần thiết kế và thi
công bo mạch
4.2 THI CÔNG HỆ THỐNG
4.2.1 Các linh kiện và model cần thiết cho mô hình
Vì mô hình có linh kiện và model do nhà sản xuất sẵn nên sẽ không có sơ đồ
mạch in, nên có sơ đồ kết nối của mô hình.
Bảng 4.1: Danh sách các model và linh kiện liên quan.
STT Tên Giá trị Chú thích
1 Laptop corei5 Tốc độ 3.4GHz Có vỏ bảo vệ
2 Stereo Camera Độ phân giải và
khung hình:
2560X960 @ 60fps
Có dây kết nối với cổng
USB
3 Led 1W Màu trắng
4 Pin tiểu 3V Có vỏ bảo vể
4.2.2 Kết nối, lắp ráp và kiểm tra mô hình
Mô hình gồm bộ điều khiển trung tâm là bộ vi xử lý (CPU) của chiếc laptop,
khối thu tín hiệu hình ảnh từ bên ngoài là Camera 3D đƣợc kết nối vào cổng usb của
CHƢƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 37
laptop, sau đó kết quả hiển thị trên mà hình laptop, cùng với bộ phận để ngƣời giao tiếp
và điều khiển là chuột máy tính.
Kết nối Camera với Laptop
Camera đƣợc kết nối với cổng USB của laptop.
Sau khi kết nối thì xem cổng USB laptop đã nhận tín hiệu của camera chƣa, sau
đó ta chọn mở IDLE và chạy chƣơng trình kiểm tra đầu vào của camera xem kết quả
xem có xuất đầu vào của camera hay không.
Để chiếu sáng cho mô hình ta nối trực tiếp đèn led 1w, điện áp 3-3,7V màu
trắng với pin tiểu 3V .
Hình 4.1: Kết nối Camera
4.3 THI CÔNG MÔ HÌNH
Mô hình các khối hình hộp đƣợc gấp từ những tấm bìa cứng thành những hình
hộp chữ nhật, hình vuông, hình tam giác và đƣợc dán ở bên ngoài bằng những lớp giấy
màu (đỏ) để dễ dàng hơn trong việc nhận dạng, tránh việc nhiễu màu. Mô hình phải
đƣợc thực hiện trong điều kiện có ánh sang đầy đủ để tránh những sai số, giúp cho ảnh
có chất lƣợng tốt hơn cũng nhƣ tang cƣờng quá trình nhận dạng ổn định hơn và nhanh
hơn.
CHƢƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 38
Hình 4.2: Các khối hộp (Hình dạng sản phẩm)
4.4 LẬP TRÌNH HỆ THỐNG
4.4.1 Lƣu đồ giải thuật
CHƢƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 39
Hình 4.3: Lƣu đồ giải thuật chính
CHƢƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 40
Lƣu đồ giải thuật chính gồm: Thu thập ảnh RGB từ camera 3D, tiền xử lý ảnh,
nhận dạng màu sắc, tách biên, xác định các thông số 3D của môi trƣờng và giai đoạn
quan trọng nhất là nhận dạng và tính kích thƣớc sản phẩm, cuối cùng là xuất kết quả.
Trong đó:
Thu thập ảnh RGB từ camera 3D
Khi có một đối tƣợng di chuyển qua camera, đối tƣợng sẽ đƣợc chụp lại dƣới
dạng ảnh RGB với khung và độ phân giải là 720x640, 30fps.
RGB là từ viết tắt tiếng Anh của cơ chế hệ màu cộng, thƣờng đƣợc sử dụng để
hiển thị màu trên các màn hình TV, monitor máy tính và những thiết bị điện tử khác
(chẳng hạn nhƣ camera kỹ thuật số). Với ba màu cơ bản gồm: đỏ, xanh lá và xanh
dƣơng.
OpenCV xử lý ảnh và video ở định dạng 8 bit, số nguyên không dấu, định dạng
BGR. Nói cách khác, hình ảnh đƣợc chụp có thể đƣợc coi là 3 ma trận: xanh dƣơng,
xanh lá và đỏ (BGR) với các giá trị nguyên nằm trong khoảng từ 0 đến 255. Hình ảnh
sau đây cho thấy hình ảnh màu đƣợc biểu diễn bằng 3 ma trận.
Hình 4.4: Ma trận không gian màu BGR
Tiền xử lý ảnh
Bao gồm các bƣớc lọc nhiễu, nâng cao chất lƣợng ảnh để thuận tiện cho quá
trình nhận dạng ảnh.
Nhận dạng màu sắc
CHƢƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 41
Ở bƣớc này, ảnh RGB đầu vào đƣợc sau khi đƣợc lọc nhiễu ta tiến hành chuyển
đổi sang ảnh HSV. Trong không gian màu HSV ta so sánh từng pixel với ngƣỡng trên
và ngƣỡng dƣới của màu đỏ. Mục đích là để bộ xử lý sẽ dễ dàng nhận biết hơn đó là
đối tƣợng cần nhận dạng, hạn chế nhiễu.
Không gian màu HSV gồm ba ma trận: HUE, SATURATION and VALUE.
Trong Opencv thì HUE có phạm vi từ 0-179 mang thông tin màu sắc,
SATURATION từ 0-255 cho thông tin về độ thuần khiết của màu và VALUE từ 0-255
cho biết độ sang của điểm ảnh.
Thƣ viện OpenCV là một thƣ viện chuyên xử lý hình ảnh vì vậy nó hổ trợ rất
nhiều hệ màu nhƣ RGB, ARGB, BRGA, YUV, HSV… và nó cũng có cung cấp cho
chúng ta hàm cv.cvtColor (CV_BGR2HSV) để thực hiển chuyển đổi BGR sang HSV.
Tách biên và lấp đầy biên
Là quá trình xác định đƣờng biên sau đó loại bỏ những dữ liệu không cần thiết,
sau khi có đƣợc đƣờng biên ta lấp đầy biên để có đƣợc hình dạng của sản phẩm để đi
nhận dạng.
Hình 4.5: Sơ đồ khối chƣơng trình con tách biên và lấp đầy biên
Sau khi có đƣợc ảnh ta tiếp tục xử lý chất lƣợng hình ảnh đầu vào để cho quá
trình nhận dạng ảnh đƣợc tốt bao gồm việc chuyển đổi ảnh xám cũng nhƣ giãm nhiễu
để có chất lƣợng ảnh tốt hơn.
Giảm nhiễu: Quá trình giảm nhiễu ở đây ta giải nhiễu thêm một lần nữa giúp ảnh
chất lƣợng hơn. Vì phát hiện cạnh, đƣờng biên dễ bị nhiễu trong ảnh, bƣớc đầu tiên là
loại bỏ nhiễu trong ảnh bằng bộ lọc Gaussian.
CHƢƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 42
Chuyển đổi ảnh xám là quá trình chuyển đổi hình ảnh dƣới dạng RGB (Red-
Green-Blue) sang ảnh xám. Điều này có nghĩa là có ba ma trận xám tƣơng ứng cho
màu Red, Green, Blue, vông việc là tìm cách tổng hợp ba ma trận này về thành một ma
trận duy nhất đó là ma trận xám.
Xác định đƣờng biên: Ảnh đƣợc lọc mịn đƣợc đem đi xác định biên tạo ra các
đƣờng biên có giá trị là là một trong giá trị nhị phân của hình. Ở bƣớc này ta xác đinh
đƣờng biên bằng các tìm điểm A ở giữa hai điểm lân cận C và B ta xác định đó có phải
giái trị cực đại không tức là giá trị rất lớn so với các điểm lân cận. nếu nó đúng thì ta có
thể có thể xác định tạm thời đó là một phần của đƣờng biên.
Tách biên: Là quá trình lọai bỏ các dữ liệu không phải là biên đƣợc xác định từ
trƣớc, chỉ dữ lại những đƣờng biên.
Lấp đầy biên: Là quá trình lấp đầy các đƣờng biên kín, không bị gián đoạn hay
đứt khúc, để tạo ra đƣợc ảnh nhị phân có giá trị 0 và 1. Mức 1 là giá trị của hình dạng
lấp đầy biên, và bên ngoài biên đƣợc coi là giá trị 0.
Nhận dạng và tính kích thƣớc sản phẩm
Ở đây bao gồm giai đoạn gán nhãn cho từng hình dạng rồi phân tích nhận dạng.
Gán nhãn nói một cách tóm tắt là ta đi ghi chú cho từng hình để biết đó là hình gì, chu
vi và độ dài các cạnh là bao nhiêu.
Muốn phân loại đƣợc thì ta cần đi nhận dạng các đặc điểm của từng hình. Trong
đó có 3 đặc điểm chính để ta nhận dạng: Ta tìm đỉnh của hình dạng số đỉnh hình vuông
và chữ nhật có 4 đỉnh, hình tam giác có 3 đỉnh. Trong đó 2 cạnh bên của hình vuông
bằng nhau và hình chữ nhật không bằng nhau. Nhƣ vậy, ta đã phân loại đƣợc 3 loại sản
phẩm.
Tính kích thƣớc là quá trình tìm ra độ dài thực tế của các cạnh của sản phẩm để
tìm ra chu vi thực tế của sản phẩm.
Xuất kết quả là việc hiển thị kết quả từ bƣớc nhận dạng và tính kích thƣớc, độ
dài các cạnh.
CHƢƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 43
Hình 4.6: Lƣu đồ con nhận dạng sản phẩm
CHƢƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 44
4.4.2 Lập trình với ngôn ngữ Python cùng thƣ viện OpenCV
Giới thiệu ngôn ngữ Python
Python là một ngôn ngữ lập trình đƣợc sử dụng phổ biến ngày nay từ trong môi
trƣờng học đƣờng cho tới các dự án lớn. Ngôn ngữ phát triển nhiều loại ứng dụng,
phần mềm khác nhau nhƣ các chƣơng trình chạy trên desktop, server, lập trình các ứng
dụng web...
Ngoài ra Python cũng là ngôn ngữ ƣa thích trong xây dựng các chƣơng trình trí
tuệ nhân tạo trong đó bao gồm machine learning. Nó có thể chạy trên mọi hệ điều hành
từ MS-DOS đến Mac OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ
Unix.
Giao diện IDLE
Tạo File mới
Để tạo tập tin mới và lập trình trên Python ta vào khung tìm kiếm trên Window
nhập Python -> chọn IDLE
Hình 4.7: Tìm kiếm Python
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.
CHƢƠNG 4: THI CÔNG HỆ THỐNG
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
Hình 4.9: Lƣu đồ mô phỏng
CHƢƠNG 4: THI CÔNG HỆ THỐNG
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
a. Ảnh đầu vào
CHƢƠNG 4: THI CÔNG HỆ THỐNG
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 vuông, 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
Hình 4.12: Tách biên
CHƢƠNG 4: THI CÔNG HỆ THỐNG
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.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.
CHƢƠNG 4: THI CÔNG HỆ THỐNG
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 hoá 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.
Hình 4.16: Kết quả sau khi bấm chạy chƣơng trình
CHƢƠNG 4: THI CÔNG HỆ THỐNG
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
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.
Đặt sản phẩm ở vị trí so với camera cho kết quả kích thƣớc tốt nhất
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY
Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY

More Related Content

What's hot

File báo cáo đồ án smarthome
File báo cáo đồ án smarthomeFile báo cáo đồ án smarthome
File báo cáo đồ án smarthomeKim Long
 
đề Tài thiết kế hệ thống đèn giao thông tại ngã tư
đề Tài thiết kế hệ thống đèn giao thông tại ngã tưđề Tài thiết kế hệ thống đèn giao thông tại ngã tư
đề Tài thiết kế hệ thống đèn giao thông tại ngã tưnataliej4
 
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩmỨng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩmhieu anh
 
Đồ án Thiết kế hệ thống tưới cây tự động sử dụng Arduino
Đồ án Thiết kế hệ thống tưới cây tự động sử dụng ArduinoĐồ án Thiết kế hệ thống tưới cây tự động sử dụng Arduino
Đồ án Thiết kế hệ thống tưới cây tự động sử dụng ArduinoVerdie Carter
 
[123doc] dieu-khien-thiet-bi-qua-module-wifi-esp8266
[123doc]   dieu-khien-thiet-bi-qua-module-wifi-esp8266[123doc]   dieu-khien-thiet-bi-qua-module-wifi-esp8266
[123doc] dieu-khien-thiet-bi-qua-module-wifi-esp8266Ngo Gia HAi
 
đồ áN phân loại sản phâm dùng plc s71200
đồ áN phân loại sản phâm dùng plc s71200đồ áN phân loại sản phâm dùng plc s71200
đồ áN phân loại sản phâm dùng plc s71200Lê Gia
 

What's hot (20)

Đề tài: Thiết kế hệ thống bảo mật ứng dụng xử lý ảnh, HAY
Đề tài: Thiết kế hệ thống bảo mật ứng dụng xử lý ảnh, HAYĐề tài: Thiết kế hệ thống bảo mật ứng dụng xử lý ảnh, HAY
Đề tài: Thiết kế hệ thống bảo mật ứng dụng xử lý ảnh, HAY
 
File báo cáo đồ án smarthome
File báo cáo đồ án smarthomeFile báo cáo đồ án smarthome
File báo cáo đồ án smarthome
 
Đề tài: Hệ thống điều khiển và giám sát các thiết bị trong nhà, 9đ
Đề tài: Hệ thống điều khiển và giám sát các thiết bị trong nhà, 9đĐề tài: Hệ thống điều khiển và giám sát các thiết bị trong nhà, 9đ
Đề tài: Hệ thống điều khiển và giám sát các thiết bị trong nhà, 9đ
 
Đề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAY
Đề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAYĐề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAY
Đề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAY
 
Đề tài: Hệ thống giám sát và điều khiển thiết bị trong nhà, HAY
Đề tài: Hệ thống giám sát và điều khiển thiết bị trong nhà, HAYĐề tài: Hệ thống giám sát và điều khiển thiết bị trong nhà, HAY
Đề tài: Hệ thống giám sát và điều khiển thiết bị trong nhà, HAY
 
Đề tài: Nghiên cứu hệ thống điều khiển tự động nhà thông minh, HAY
Đề tài: Nghiên cứu hệ thống điều khiển tự động nhà thông minh, HAYĐề tài: Nghiên cứu hệ thống điều khiển tự động nhà thông minh, HAY
Đề tài: Nghiên cứu hệ thống điều khiển tự động nhà thông minh, HAY
 
đề Tài thiết kế hệ thống đèn giao thông tại ngã tư
đề Tài thiết kế hệ thống đèn giao thông tại ngã tưđề Tài thiết kế hệ thống đèn giao thông tại ngã tư
đề Tài thiết kế hệ thống đèn giao thông tại ngã tư
 
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩmỨng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
 
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng GatewayĐề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
 
Đề tài: Điều khiển xe robot bằng giọng nói với Raspberry pi 3
Đề tài: Điều khiển xe robot bằng giọng nói với Raspberry pi 3Đề tài: Điều khiển xe robot bằng giọng nói với Raspberry pi 3
Đề tài: Điều khiển xe robot bằng giọng nói với Raspberry pi 3
 
Đề tài: Thiết kế và thi công mô hình điều khiển thiết bị điện, HAY
Đề tài: Thiết kế và thi công mô hình điều khiển thiết bị điện, HAYĐề tài: Thiết kế và thi công mô hình điều khiển thiết bị điện, HAY
Đề tài: Thiết kế và thi công mô hình điều khiển thiết bị điện, HAY
 
Đề tài: Khóa điện tử có giám sát từ xa sử dụng GSM và RFID
Đề tài: Khóa điện tử có giám sát từ xa sử dụng GSM và RFIDĐề tài: Khóa điện tử có giám sát từ xa sử dụng GSM và RFID
Đề tài: Khóa điện tử có giám sát từ xa sử dụng GSM và RFID
 
Đề tài: Thiết kế hệ thống điều khiển các thiết bị trong phòng học
Đề tài: Thiết kế hệ thống điều khiển các thiết bị trong phòng họcĐề tài: Thiết kế hệ thống điều khiển các thiết bị trong phòng học
Đề tài: Thiết kế hệ thống điều khiển các thiết bị trong phòng học
 
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAYĐề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
 
Đề tài: Hệ thống Iot điều khiển và giám sát ngôi nhà, HAY, 9đ
Đề tài: Hệ thống Iot điều khiển và giám sát ngôi nhà, HAY, 9đĐề tài: Hệ thống Iot điều khiển và giám sát ngôi nhà, HAY, 9đ
Đề tài: Hệ thống Iot điều khiển và giám sát ngôi nhà, HAY, 9đ
 
Đồ án Thiết kế hệ thống tưới cây tự động sử dụng Arduino
Đồ án Thiết kế hệ thống tưới cây tự động sử dụng ArduinoĐồ án Thiết kế hệ thống tưới cây tự động sử dụng Arduino
Đồ án Thiết kế hệ thống tưới cây tự động sử dụng Arduino
 
Hệ thống giám sát chỉ số môi trường và hiển thị thông tin trên Web
Hệ thống giám sát chỉ số môi trường và hiển thị thông tin trên WebHệ thống giám sát chỉ số môi trường và hiển thị thông tin trên Web
Hệ thống giám sát chỉ số môi trường và hiển thị thông tin trên Web
 
[123doc] dieu-khien-thiet-bi-qua-module-wifi-esp8266
[123doc]   dieu-khien-thiet-bi-qua-module-wifi-esp8266[123doc]   dieu-khien-thiet-bi-qua-module-wifi-esp8266
[123doc] dieu-khien-thiet-bi-qua-module-wifi-esp8266
 
đồ áN phân loại sản phâm dùng plc s71200
đồ áN phân loại sản phâm dùng plc s71200đồ áN phân loại sản phâm dùng plc s71200
đồ áN phân loại sản phâm dùng plc s71200
 
Đồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.doc
Đồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.docĐồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.doc
Đồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.doc
 

Similar to Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY

Triển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE.pdf
Triển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE.pdfTriển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE.pdf
Triển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE.pdfhttps://dichvuvietluanvan.com/
 
Nghiên cứu, thiết kế và thi công hệ thống phân loại sản phẩm theo cân nặng, m...
Nghiên cứu, thiết kế và thi công hệ thống phân loại sản phẩm theo cân nặng, m...Nghiên cứu, thiết kế và thi công hệ thống phân loại sản phẩm theo cân nặng, m...
Nghiên cứu, thiết kế và thi công hệ thống phân loại sản phẩm theo cân nặng, m...anh hieu
 
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm ứng dụng cô...
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm ứng dụng cô...Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm ứng dụng cô...
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm ứng dụng cô...Man_Ebook
 

Similar to Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY (20)

Đề tài: Thiết kế dây chuyền phân loại đai ốc ứng dụng xử lý ảnh
Đề tài: Thiết kế dây chuyền phân loại đai ốc ứng dụng xử lý ảnhĐề tài: Thiết kế dây chuyền phân loại đai ốc ứng dụng xử lý ảnh
Đề tài: Thiết kế dây chuyền phân loại đai ốc ứng dụng xử lý ảnh
 
Đề tài: Mô hình giám sát và điều khiển mô hình trồng nấm rơm
Đề tài: Mô hình giám sát và điều khiển mô hình trồng nấm rơmĐề tài: Mô hình giám sát và điều khiển mô hình trồng nấm rơm
Đề tài: Mô hình giám sát và điều khiển mô hình trồng nấm rơm
 
Kiểm chứng các chương trình phần mềm hướng khía cạnh, HAY
Kiểm chứng các chương trình phần mềm hướng khía cạnh, HAYKiểm chứng các chương trình phần mềm hướng khía cạnh, HAY
Kiểm chứng các chương trình phần mềm hướng khía cạnh, HAY
 
Đề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đ
Đề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đĐề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đ
Đề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đ
 
Luận văn: Nhận dạng cảm xúc khuôn mặt người, HAY, 9đ
Luận văn: Nhận dạng cảm xúc khuôn mặt người, HAY, 9đLuận văn: Nhận dạng cảm xúc khuôn mặt người, HAY, 9đ
Luận văn: Nhận dạng cảm xúc khuôn mặt người, HAY, 9đ
 
Đề tài: Thiết kế bãi giữ xe ứng dụng công nghệ RFID và xử lý ảnh
Đề tài: Thiết kế bãi giữ xe ứng dụng công nghệ RFID và xử lý ảnhĐề tài: Thiết kế bãi giữ xe ứng dụng công nghệ RFID và xử lý ảnh
Đề tài: Thiết kế bãi giữ xe ứng dụng công nghệ RFID và xử lý ảnh
 
Đề tài: Giải pháp giả lập thiết bị mạng với Unetlab-EVE, HAY
Đề tài: Giải pháp giả lập thiết bị mạng với Unetlab-EVE, HAYĐề tài: Giải pháp giả lập thiết bị mạng với Unetlab-EVE, HAY
Đề tài: Giải pháp giả lập thiết bị mạng với Unetlab-EVE, HAY
 
Đề tài: Triển khai giải pháp giả lập thiết bị mạng với Unetlab EVE
Đề tài: Triển khai giải pháp giả lập thiết bị mạng với Unetlab EVEĐề tài: Triển khai giải pháp giả lập thiết bị mạng với Unetlab EVE
Đề tài: Triển khai giải pháp giả lập thiết bị mạng với Unetlab EVE
 
Đề tài: Triển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE
Đề tài: Triển khai giải pháp giả lập thiết bị mạng với Unetlab-EVEĐề tài: Triển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE
Đề tài: Triển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE
 
Triển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE.pdf
Triển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE.pdfTriển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE.pdf
Triển khai giải pháp giả lập thiết bị mạng với Unetlab-EVE.pdf
 
Đề tài: Thiết kế và thi công hệ thống quang báo, HAY, 9đ
Đề tài: Thiết kế và thi công hệ thống quang báo, HAY, 9đĐề tài: Thiết kế và thi công hệ thống quang báo, HAY, 9đ
Đề tài: Thiết kế và thi công hệ thống quang báo, HAY, 9đ
 
Đề tài: Hệ thống tính cước phí đường sắt metro sử dụng Rfid
Đề tài: Hệ thống tính cước phí đường sắt metro sử dụng RfidĐề tài: Hệ thống tính cước phí đường sắt metro sử dụng Rfid
Đề tài: Hệ thống tính cước phí đường sắt metro sử dụng Rfid
 
Nghiên cứu, thiết kế và thi công hệ thống phân loại sản phẩm theo cân nặng, m...
Nghiên cứu, thiết kế và thi công hệ thống phân loại sản phẩm theo cân nặng, m...Nghiên cứu, thiết kế và thi công hệ thống phân loại sản phẩm theo cân nặng, m...
Nghiên cứu, thiết kế và thi công hệ thống phân loại sản phẩm theo cân nặng, m...
 
Đề tài: Hệ thống điều khiển và giám sát thiết bị qua Webserver
Đề tài: Hệ thống điều khiển và giám sát thiết bị qua WebserverĐề tài: Hệ thống điều khiển và giám sát thiết bị qua Webserver
Đề tài: Hệ thống điều khiển và giám sát thiết bị qua Webserver
 
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm ứng dụng cô...
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm ứng dụng cô...Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm ứng dụng cô...
Thiết kế và chế tạo cánh tay robot 5 bậc tự do phân loại sản phẩm ứng dụng cô...
 
Đề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAY
Đề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAYĐề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAY
Đề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAY
 
Kiểm chứng các hệ thống thời gian thực sử dụng uppaal, HAY
Kiểm chứng các hệ thống thời gian thực sử dụng uppaal, HAYKiểm chứng các hệ thống thời gian thực sử dụng uppaal, HAY
Kiểm chứng các hệ thống thời gian thực sử dụng uppaal, HAY
 
Hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOT
Hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOTHệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOT
Hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOT
 
Đề tài: Mô hình nhà nuôi chim yến điều khiển, giám sát từ xa
Đề tài: Mô hình nhà nuôi chim yến điều khiển, giám sát từ xaĐề tài: Mô hình nhà nuôi chim yến điều khiển, giám sát từ xa
Đề tài: Mô hình nhà nuôi chim yến điều khiển, giám sát từ xa
 
Đề tài: Mô hình điều khiển, giám sát bãi giữ xe ô tô tự động, 9đ
Đề tài: Mô hình điều khiển, giám sát bãi giữ xe ô tô tự động, 9đĐề tài: Mô hình điều khiển, giám sát bãi giữ xe ô tô tự động, 9đ
Đề tài: Mô hình điều khiển, giám sát bãi giữ xe ô tô tự động, 9đ
 

More from Dịch vụ viết bài trọn gói ZALO 0917193864

Danh sách 200 đề tài luận văn thạc sĩ tài chính ngân hàng, từ sinh viên giỏi
Danh sách 200 đề tài luận văn thạc sĩ tài chính ngân hàng, từ sinh viên giỏiDanh sách 200 đề tài luận văn thạc sĩ tài chính ngân hàng, từ sinh viên giỏi
Danh sách 200 đề tài luận văn thạc sĩ tài chính ngân hàng, từ sinh viên giỏiDịch vụ viết bài trọn gói ZALO 0917193864
 

More from Dịch vụ viết bài trọn gói ZALO 0917193864 (20)

200 de tai khoa luạn tot nghiep nganh tam ly hoc
200 de tai khoa luạn tot nghiep nganh tam ly hoc200 de tai khoa luạn tot nghiep nganh tam ly hoc
200 de tai khoa luạn tot nghiep nganh tam ly hoc
 
Danh sách 200 đề tài luận văn tốt nghiệp ngành khách sạn,10 điểm
Danh sách 200 đề tài luận văn tốt nghiệp ngành khách sạn,10 điểmDanh sách 200 đề tài luận văn tốt nghiệp ngành khách sạn,10 điểm
Danh sách 200 đề tài luận văn tốt nghiệp ngành khách sạn,10 điểm
 
Danh sách 200 đề tài luận văn thạc sĩ ngân hàng, hay nhất
Danh sách 200 đề tài luận văn thạc sĩ ngân hàng, hay nhấtDanh sách 200 đề tài luận văn thạc sĩ ngân hàng, hay nhất
Danh sách 200 đề tài luận văn thạc sĩ ngân hàng, hay nhất
 
Danh sách 200 đề tài luận văn thạc sĩ ngữ văn, hay nhất
Danh sách 200 đề tài luận văn thạc sĩ ngữ văn, hay nhấtDanh sách 200 đề tài luận văn thạc sĩ ngữ văn, hay nhất
Danh sách 200 đề tài luận văn thạc sĩ ngữ văn, hay nhất
 
Danh sách 200 đề tài luận văn thạc sĩ ô tô, 10 điểm
Danh sách 200 đề tài luận văn thạc sĩ ô tô, 10 điểmDanh sách 200 đề tài luận văn thạc sĩ ô tô, 10 điểm
Danh sách 200 đề tài luận văn thạc sĩ ô tô, 10 điểm
 
Danh sách 200 đề tài luận văn thạc sĩ quản lý giáo dục mầm non, mới nhất
Danh sách 200 đề tài luận văn thạc sĩ quản lý giáo dục mầm non, mới nhấtDanh sách 200 đề tài luận văn thạc sĩ quản lý giáo dục mầm non, mới nhất
Danh sách 200 đề tài luận văn thạc sĩ quản lý giáo dục mầm non, mới nhất
 
Danh sách 200 đề tài luận văn thạc sĩ quản trị rủi ro, hay nhất
Danh sách 200 đề tài luận văn thạc sĩ quản trị rủi ro, hay nhấtDanh sách 200 đề tài luận văn thạc sĩ quản trị rủi ro, hay nhất
Danh sách 200 đề tài luận văn thạc sĩ quản trị rủi ro, hay nhất
 
Danh sách 200 đề tài luận văn thạc sĩ tài chính ngân hàng, từ sinh viên giỏi
Danh sách 200 đề tài luận văn thạc sĩ tài chính ngân hàng, từ sinh viên giỏiDanh sách 200 đề tài luận văn thạc sĩ tài chính ngân hàng, từ sinh viên giỏi
Danh sách 200 đề tài luận văn thạc sĩ tài chính ngân hàng, từ sinh viên giỏi
 
Danh sách 200 đề tài luận văn thạc sĩ tiêm chủng mở rộng, 10 điểm
Danh sách 200 đề tài luận văn thạc sĩ tiêm chủng mở rộng, 10 điểmDanh sách 200 đề tài luận văn thạc sĩ tiêm chủng mở rộng, 10 điểm
Danh sách 200 đề tài luận văn thạc sĩ tiêm chủng mở rộng, 10 điểm
 
danh sach 200 de tai luan van thac si ve rac nhua
danh sach 200 de tai luan van thac si ve rac nhuadanh sach 200 de tai luan van thac si ve rac nhua
danh sach 200 de tai luan van thac si ve rac nhua
 
Kinh Nghiệm Chọn 200 Đề Tài Tiểu Luận Chuyên Viên Chính Trị Hay Nhất
Kinh Nghiệm Chọn 200 Đề Tài Tiểu Luận Chuyên Viên Chính Trị Hay NhấtKinh Nghiệm Chọn 200 Đề Tài Tiểu Luận Chuyên Viên Chính Trị Hay Nhất
Kinh Nghiệm Chọn 200 Đề Tài Tiểu Luận Chuyên Viên Chính Trị Hay Nhất
 
Kho 200 Đề Tài Bài Luận Văn Tốt Nghiệp Ngành Kế Toán, 9 điểm
Kho 200 Đề Tài Bài Luận Văn Tốt Nghiệp Ngành Kế Toán, 9 điểmKho 200 Đề Tài Bài Luận Văn Tốt Nghiệp Ngành Kế Toán, 9 điểm
Kho 200 Đề Tài Bài Luận Văn Tốt Nghiệp Ngành Kế Toán, 9 điểm
 
Kho 200 Đề Tài Luận Văn Ngành Thủy Sản, từ các trường đại học
Kho 200 Đề Tài Luận Văn Ngành Thủy Sản, từ các trường đại họcKho 200 Đề Tài Luận Văn Ngành Thủy Sản, từ các trường đại học
Kho 200 Đề Tài Luận Văn Ngành Thủy Sản, từ các trường đại học
 
Kho 200 đề tài luận văn ngành thương mại điện tử
Kho 200 đề tài luận văn ngành thương mại điện tửKho 200 đề tài luận văn ngành thương mại điện tử
Kho 200 đề tài luận văn ngành thương mại điện tử
 
Kho 200 đề tài luận văn tốt nghiệp ngành điện tử viễn thông, 9 điểm
Kho 200 đề tài luận văn tốt nghiệp ngành điện tử viễn thông, 9 điểmKho 200 đề tài luận văn tốt nghiệp ngành điện tử viễn thông, 9 điểm
Kho 200 đề tài luận văn tốt nghiệp ngành điện tử viễn thông, 9 điểm
 
Kho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Giáo Dục Tiểu Học
Kho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Giáo Dục Tiểu HọcKho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Giáo Dục Tiểu Học
Kho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Giáo Dục Tiểu Học
 
Kho 200 đề tài luận văn tốt nghiệp ngành luật, hay nhất
Kho 200 đề tài luận văn tốt nghiệp ngành luật, hay nhấtKho 200 đề tài luận văn tốt nghiệp ngành luật, hay nhất
Kho 200 đề tài luận văn tốt nghiệp ngành luật, hay nhất
 
Kho 200 đề tài luận văn tốt nghiệp ngành quản trị văn phòng, 9 điểm
Kho 200 đề tài luận văn tốt nghiệp ngành quản trị văn phòng, 9 điểmKho 200 đề tài luận văn tốt nghiệp ngành quản trị văn phòng, 9 điểm
Kho 200 đề tài luận văn tốt nghiệp ngành quản trị văn phòng, 9 điểm
 
Kho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Sư Phạm Tin Học
Kho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Sư Phạm Tin HọcKho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Sư Phạm Tin Học
Kho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Sư Phạm Tin Học
 
Kho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Xuất Nhập Khẩu
Kho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Xuất Nhập KhẩuKho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Xuất Nhập Khẩu
Kho 200 Đề Tài Luận Văn Tốt Nghiệp Ngành Xuất Nhập Khẩu
 

Recently uploaded

BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptx
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptxChàm - Bệnh án (da liễu - bvdlct ctump) .pptx
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptxendkay31
 
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfChuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfhoangtuansinh1
 
Trích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docxTrích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docxnhungdt08102004
 
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Nguyen Thanh Tu Collection
 
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoabài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa2353020138
 
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líKiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líDr K-OGN
 
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...Nguyen Thanh Tu Collection
 
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdf
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdfNQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdf
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdfNguyễn Đăng Quang
 
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...Nguyen Thanh Tu Collection
 
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...ThunTrn734461
 
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Nguyen Thanh Tu Collection
 
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhvanhathvc
 
Sơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdfSơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdftohoanggiabao81
 
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...hoangtuansinh1
 
10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...
10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...
10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 

Recently uploaded (19)

BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptx
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptxChàm - Bệnh án (da liễu - bvdlct ctump) .pptx
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptx
 
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfChuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
 
Trích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docxTrích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docx
 
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
 
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoabài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
 
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líKiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
 
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
 
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdf
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdfNQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdf
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdf
 
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
 
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
 
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
 
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
 
Sơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdfSơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdf
 
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
 
10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...
10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...
10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 

Đề tài: Ứng dụng camera 3D trong phân loại sản phẩm, HAY

  • 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: ỨNG DỤNG CAMERA 3D TRONG VIỆC PHÂN LOẠI SẢN PHẨM THEO HÌNH DẠNG VÀ KÍCH THƢỚC GVHD: ThS. Ngô Bá Việt SVTH: Lê Văn Thái MSSV: 14141289 Tp. Hồ Chí Minh - 07/2019
  • 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: ỨNG DỤNG CAMERA 3D TRONG VIỆC PHÂN LOẠI SẢN PHẨM THEO HÌNH DẠNG VÀ KÍCH THƢỚC GVHD: ThS. Ngô Bá Việt SVTH: Lê Văn Thái MSSV: 14141289 Tp. Hồ Chí Minh - 07/2019
  • 3. TRƢỜNG ĐH SPKT TP. HỒ CHÍ MINH KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM ĐỘC LẬP - TỰ DO - HẠNH PHÚC ----o0o---- Tp. HCM, ngày 05 tháng 06 năm 2019 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Lê Văn Thái MSSV: 14141289 Chuyên ngành: Kỹ thuật Điện - Điện tử Mã ngành: 01 Hệ đào tạo: Đại học chính quy Mã hệ: 1 Khóa: 2014 Lớp: 14141DT1A I. TÊN ĐỀ TÀI: ỨNG DỤNG CAMERA 3D TRONG VIỆC PHÂN LOẠI SẢN PHẨM THEO HÌNH DẠNG VÀ KÍCH THƢỚC II. NHIỆM VỤ 1. Các số liệu ban đầu: Các tài liệu về Python và thƣ viện OpenCV, Giáo trình Xử lý ảnh. Các ví dụ về nhận dạng hình học cơ bản. 2. Nội dung thực hiện: Tìm hiểu phƣơng pháp nhận dạng và phân loại sản phẩm. Tổng quan về xử lý ảnh. Tìm hiểu Camera 3D và các Module liên quan. Viết chƣơng trình trên Python. Hoàn thành mô hình. Đánh giá kết quả thực hiện. III. NGÀY GIAO NHIỆM VỤ: 26/03/2019 IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 05/06/2019 V. HỌ VÀ TÊN CÁN BỘ HƢỚNG DẪN: ThS. Ngô Bá Việt CÁN BỘ HƢỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
  • 4. TRƢỜNG ĐH SPKT TP. HỒ CHÍ MINH KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM ĐỘC LẬP - TỰ DO - HẠNH PHÚC ----o0o---- Tp. HCM, ngày 05 tháng 06 năm 2019 LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Lê Văn Thái Lớp: 14141DT1A - MSSV: 14141289 Tên đề tài: Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thƣớc Tuần/ngày Nội dung Xác nhận GVHD 16-20/3 Chọn đề tài 21-25/3 Viết đề cƣơng chi tiết 26/3-05/4 Tìm hiểu phƣơng pháp nhận dạng hình cơ bản 06/-09/4 Tìm hiểu thuật toán dán nhãn 10-17/4 Tìm hiểu camera 3D 18-21/4 Tìm hiểu thuật toán tính khoảng cách 22-28/4 Tìm hiểu thuật toán tính kích thƣớc 29/5-04/5 Tìm hiểu về python 05-06/5 Thực hiện viết code python trên window 07-08/5 Làm các hình khối (sản phẩm) và chạy thử
  • 5. 13-20/5 Hoàn thành mô hình 21-29/5 Viết báo cáo GV HƢỚNG DẪN ThS. Ngô Bá Việt
  • 6. LỜI CAM ĐOAN Đề tài này là 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 Lê Văn Thái
  • 7. LỜI CẢM ƠN Đầu tiên tôi xin đƣợc cám ơn chân thành tới Thầy Ngô Bá Việt, Thầy đã tận tình hƣớng dẫn tôi để có thể hoàn thành tốt đề tài. 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ử đã tạo những điều kiện tốt nhất cho tôi hoàn thành đề tài. Những kiến thức bổ ích mà các Thầy Cô dạy, nó đƣợc áp dụng vào đề tài Đồ Án Tốt Nghiệp rất nhiều, từ những kiến thức nhỏ nhặt cho tới những bài học lớn. Một lần nữa tôi xin đƣợc gửi lời cám ơn đến tất cả Thầy Cô, nếu không có Thầy Cô thì chắc giờ này tôi sẽ khó có thể hoàn thành đề tài này. Tiếp theo tôi cũng xin cảm ơn tới các Anh, Chị khóa trên cùng các bạn sinh viên đã tạo điều kiện giúp đỡ, từ những tài liệu liên quan tới đề tài cho tới những kinh nghiệm sống thực tế. Nhờ họ mà tôi mới có thể phát triển đƣợc. Tôi cũng gửi lời đồng cảm ơn đến các bạn lớp 14141DT1A đã 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, và cũng là lớp học có nhiều kí ức nhất thời sinh viên của tôi. Cuối cùng là gửi lời cảm ơn đến Cha, Mẹ nếu không có hai đấng sinh thành thì ngày hôm nay cũng không có ai hiện diện ở đây để thực hiện những việc mình muốn, họ đã tạo mọi điều kiện để giúp con của mình hƣớng tới một tƣơng lai tốt đẹp. Một lần cuối xin chân thành cảm ơn! Ngƣời thực hiện đề tài Lê Văn Thái
  • 8. MỤC LỤC Trang bìa.................................................................................................................... i Nhiệm vụ đồ án......................................................................................................... ii Lịch trình ................................................................................................................iii Cam đoan ................................................................................................................ iv Lời cảm ơn................................................................................................................ v Mục lục.................................................................................................................... vi Liệt kê hình vẽ ......................................................................................................... ix Liệt kê bảng vẽ......................................................................................................... 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............................................................................1 1.4 GIỚI HẠN ......................................................................................................2 1.5 BỐ CỤC..........................................................................................................2 CHƢƠNG 2: CƠ SỞ LÝ THUYẾT .............................................................................4 2.1 TỔNG QUAN VỀ XỬ LÝ ẢNH VÀ CÁC THƢ VIỆN LIÊN QUAN............4 2.1.1 Giới thiệu xử lý ảnh..................................................................................4 2.1.2 Những vấn đề trong xử lý ảnh...................................................................4 2.2 PHƢƠNG PHÁP PHÂN LOẠI SẢN PHẨM THEO HÌNH DẠNG..............11 2.2.1 Các hình dạng cơ bản của sản phẩm........................................................11 2.2.2 Phƣơng pháp nhận dạng sản phẩm theo hình dạng..................................11 2.2.3 Các bƣớc thực hiện phân loại sản phẩm theo hình dạng..........................14
  • 9. 2.3 ÁP DỤNG KỸ THUẬT HIỆU CHỈNH STEREO CAMERA ĐỂ TÍNH KÍCH THƢỚC SẢN PHẨM.............................................................................................18 2.3.1 GIỚI THIỆU KỸ THUẬT HIỆU CHỈNH STEREO CAMERA .............18 2.3.2 STEREO CAMERA ...............................................................................19 2.3.3 PHƢƠNG PHÁP HIỆU CHỈNH CHUẨN..............................................23 2.4 NGÔN NGỮ PYTHON ................................................................................25 2.5 GIỚI THIỆU PHẦN CỨNG .........................................................................28 CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ ...........................................................29 3.1 GIỚI THIỆU .................................................................................................29 3.2 THIẾT KẾ HỆ THỐNG PHẦN CỨNG ........................................................29 3.2.1 Khối xử lý...............................................................................................30 3.2.2 Khối thu tín hiệu.....................................................................................30 3.2.3 Khối hiển thị...........................................................................................32 3.2.4 Khối giao tiếp và điều khiển ...................................................................32 3.2.5 Khối nguồn.............................................................................................32 3.3 CÁC TÍNH TOÁN TRONG NHẬN DẠNG .................................................33 3.3.1 Giới thiệu đặc điểm của hình dạng..........................................................33 3.3.2 Phƣơng pháp tính toán các đặc điểm.......................................................33 CHƢƠNG 4: THI CÔNG HỆ THỐNG..................................................................36 4.1 GIỚI THIỆU .................................................................................................36 4.2 THI CÔNG HỆ THỐNG...............................................................................36 4.2.1 Các linh kiện và model cần thiết cho mô hình.........................................36 4.2.2 Kết nối, lắp ráp và kiểm tra mô hình.......................................................36 4.3 THI CÔNG MÔ HÌNH..................................................................................37
  • 10. 4.4 LẬP TRÌNH HỆ THỐNG .............................................................................38 4.4.1 Lƣu đồ giải thuật.....................................................................................38 4.4.2 Lập trình với ngôn ngữ Python cùng thƣ viện OpenCV ..........................44 4.5 MÔ PHỎNG .................................................................................................45 4.5.1 Lƣu đồ....................................................................................................45 4.5.2 Xử lý tín hiệu hay hình ảnh.....................................................................46 4.6 VIẾT TÀI LIỆU HƢỚNG DẪN SỬ DỤNG, THAO TÁC............................48 4.6.1 Viết tài liệu hƣớng dẫn sử dụng..............................................................48 4.6.2 Quy trình thao tác ...................................................................................50 CHƢƠNG 5: KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ.................................................52 5.1 CAMERA 3D................................................................................................52 5.2 XÁC ĐỊNH MÀU SẮC CỦA SẢN PHẨM...................................................52 5.3 NHẬN DẠNG VÀ TÍNH KÍCH THƢỚC SẢN PHẨM................................54 5.4 PHÂN LOẠI SẢN PHẨM ............................................................................58 CHƢƠNG 6: KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ........................................60 6.1 KẾT LUẬN...................................................................................................60 6.1.1 Kết quả đạt đƣợc.....................................................................................60 6.1.2 Những mặt hạn chế.................................................................................60 6.2 HƢỚNG PHÁT TRIỂN ................................................................................60
  • 11. LIỆT KÊ HÌNH VẼ Hình Trang Hình 2.1: Lân cận 4 và lân cận 8...................................................................................6 Hình 2.2: Hình tách biên...............................................................................................8 Hình 2.3: Bộ lọc Gaussian ............................................................................................9 Hình 2.4: Đặc điểm hình chữ nhật ..............................................................................12 Hình 2.5: Đặc điểm hình vuông..................................................................................13 Hình 2.6: Đặc điểm hình tam giác ..............................................................................13 Hình 2.7: Sơ đồ các bƣớc thực hiện phân loại sản phẩm.............................................14 Hình 2.8: Xác định biên..............................................................................................16 Hình 2.9: Nhận dạng đƣờng biên................................................................................17 Hình 2.10: Cấu hình chuẩn của hệ thống 2 camera .....................................................19 Hình 2.11: Hệ thống tọa độ của một stereo camera.....................................................19 Hình 2.12: Thuật toán SAD phân vùng.......................................................................22 Hình 2.13: Qui tắc tam giác đồng dạng.......................................................................23 Hình 2.14: Mô hình các thông số của camera .............................................................24 Hình 2.15: Sơ đồ khối của camera ..............................................................................28 Hình 3.1: Sơ đồ khối...................................................................................................30 Hình 3.2: Khối thu tín hiệu.........................................................................................31 Hình 3.3: Synchronization USB Stereo Webcam Dual lens camera OV9750 960P MJPEG 2560x960 with No distortion lens 3D usb camera module.............................31 Hình 3.4: Laptop ........................................................................................................32 Hình 3.5: Đỉnh của hình .............................................................................................33
  • 12. Hình 3.6: Đoạn Ramer-Douglas-Peucker....................................................................34 Hình 3.7: Đƣờng xấp xỉ..............................................................................................34 Hình 3.8: Độ dài cạnh.................................................................................................34 Hình 4.1: Kết nối Camera...........................................................................................37 Hình 4.2: Các khối hộp (Hình dạng sản phẩm) ...........................................................38 Hình 4.3: Lƣu đồ giải thuật chính...............................................................................39 Hình 4.4: Ma trận không gian màu BGR ....................................................................40 Hình 4.5: Sơ đồ khối chƣơng trình con tách biên và lấp đầy biên................................41 Hình 4.6: Lƣu đồ con nhận dạng sản phẩm.................................................................43 Hình 4.7: Tìm kiếm Python ........................................................................................44 Hình 4.8: Tạo project mới...........................................................................................45 Hình 4.9: Lƣu đồ mô phỏng........................................................................................45 Hình 4.10: Kiểm tra các bƣớc thực hiện......................................................................46 Hình 4.11: Ảnh xám ...................................................................................................47 Hình 4.12: Tách biên ..................................................................................................47 Hình 4.13: Lấp đầy biên .............................................................................................48 Hình 4.14: Kết quả nhận dạng phân loại sản phẩm. ....................................................48 Hình 4.15: Kiểm tra thƣ viện ......................................................................................49 Hình 4.16: Kết quả sau khi bấm chạy chƣơng trình ....................................................49 Hình 4.17: Quy trình vận hành ...................................................................................50 Hình 5.1: Kết quả ảnh đầu vào từ camera ...................................................................52 Hình 5.2: Kết quả nhận dạng màu sắc sản phẩm của camera.......................................53 Hình 5.3: Nhận dạng và tính kích thƣớc sản phẩm hình chữ nhật................................54 Hình 5.4: Nhận dạng và tính kích thƣớc sản phẩm hình vuông ...................................54
  • 13. Hình 5.5: Nhận dạng và tính kích thƣớc sản phẩm hình tam giác................................55 Hình 5.6: Camera chƣa thể nhận dạng cùng lúc nhiều sản phẩm.................................57 Hình 5.7: Phân loại theo kích sản phẩm hình chữ nhật................................................58 Hình 5.8: Phân loại theo kích thƣớc sản phẩm hình tam giác ......................................58 Hình 5.9: Phân loại theo kích thƣớc sản phẩm hình tam giác ......................................59
  • 14. LIỆT KÊ BẢNG Bảng Trang Bảng 2.1: Đặc điểm hình dạng sản phẩm....................................................................14 Bảng 4.1: Danh sách các model và linh kiện liên quan................................................36 Bảng 5.1: Thống kê kết quả nhận dạng màu sắc sản phẩm..........................................53 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 vuông.............55 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.........55 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 .........57
  • 15. TÓM TẮT Hiện nay, nền Công nghiệp đang hƣớng tới Công nghiệp 4.0, là sự kết hợp các Công nghệ lại với nhau, làm mờ ranh giới giữa Vật lý, Kỹ thuật số và Sinh học. Từ đó, các thiết bị điện tử thông minh đang ngày càng xuất hiện phổ biến. Không những nó giúp ích cho cá nhân hay gia đình, mà còn ứng dụng cả trong Chính trị, Y tế, Giáo dục...Điển hình là trong lĩnh sản xuất, vấn đề phân loại sản phẩm trong sản xuất là không thể thiếu ở khâu đóng gói. Chính vì vậy, nhóm đã chọn đề tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thƣớc” Đề tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thước” là phân loại sản phẩm theo hình dạng (hình tròn, hình vuông, hình chữ nhật, hình tam giác) và kích thƣớc dựa trên ngôn ngữ Python với thƣ viện chính là OpenCV. Ở đây sử dụng các đặc điểm riêng biệt của từng hình dạng để đi nhận dạng và sau đó phân loại từng sản phẩm. Kết quả thực hiện của đề tài đã nhận dạng đƣợc những sản phẩm có hình dạng (hình tròn, hình vuông, hình chữ nhật, hình tam giác) cùng với việc biết đƣợc kích thƣớc của từng sản phẩm.
  • 16. CHƢƠNG 1: TỔNG QUAN BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 1 CHƢƠNG 1: TỔNG QUAN 1.1 ĐẶT VẤN ĐỀ Cùng với sự phát triển ngày càng mạnh mẽ của khoa học kĩ thuật trong một vài thập kỷ gần đây, xử lý ảnh tuy là một ngành khoa học còn tƣơng đối mới mẻ so với nhiều ngành khoa học khác nhƣng hiện nay đang là một trong những lĩnh vực phát triển rất nhanh và thu hút sự quan tâm đặc biệt từ các nhà khoa học, thúc đẩy các trung tâm nghiên cứu, ứng dụng về lĩnh vực hấp dẫn này. Xử lý ảnh đóng vai trò quan trọng trong nhiều ứng dụng thực tế về khoa học kĩ thuật cũng nhƣ trong cuộc sống thƣờng ngày nhƣ: sản xuất và kiểm tra chất lƣợng, sự di chuyển của Robot, các phƣơng tiện đi lại tự trị, công cụ hƣớng dẫn cho ngƣời mù, an ninh và giám sát, nhận dạng đối tƣợng, nhận dạng mặt, các ứng dụng trong y học, sản xuất, hiệu chỉnh video. Camera 3D [1-2] hiện đang là loại camera có độ ứng dụng cao trong khoa học kỹ thuật vì camera này có khả năng ghi nhận chiều sâu đối tƣợng, tƣơng tự mắt con ngƣời. Dựa trên các nghiên cứu trƣớc đây nhƣ “Phân loại sản phẩm dùng Kit Raspberry” [3] là một ứng dụng sử dụng các thuật toán xử lý ảnh [4] trên nền tảng Python kết hợp với phần cứng là Raspberry [5] để phân loại sản phẩm dựa trên hình dạng. Đề tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thƣớc” đƣơc lựa chọn thực hiện để có thể phân loại theo hình dạng sản phẩm và phân loại theo kích thƣớc sản phẩm dựa trên các thông tin từ camera 3D. 1.2 MỤC TIÊU - Tìm hiểu về camera 3D và ngôn ngữ lập trình python với thƣ viện OpenCV. - Phân loại sản phẩm theo hình dạng và kích thƣớc. 1.3 NỘI DUNG NGHIÊN CỨU Để tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thƣớc” Có những nội dung sau:
  • 17. CHƢƠNG 1: TỔNG QUAN BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 2  NỘI DUNG 1: Tìm hiểu phƣơng pháp nhận dạng và phân loại sản phẩm theo hình dạng và kích thƣớc.  NỘI DUNG 2: Tổng quan về xử lý ảnh.  NỘI DUNG 3: Tìm hiểu camera 3D và các module liên quan.  NỘI DUNG 4: Viết chƣơng trình trên python.  NỘI DUNG 5: Hoàn thành mô hình.  NỘI DUNG 6: Đánh giá kết quả thực hiện 1.4 GIỚI HẠN Với đề tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thƣớc” thì các giới hạn bao gồm: - Thiết kế mô hình sử dụng camera 3D để phân loại sản phẩm theo hình dạng, kích thƣớc. - Sử dụng ngôn ngữ lập trình python. - Mô hình hoạt động trong điều kiện lý tƣởng, đủ độ sáng. 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 Chƣơng này sẽ trình bày cơ bản về xử lý ảnh, phƣơng pháp cơ bản để nhận dạng và phân loại ảnh, tính kích thƣớc sản phẩm, giới thiệu cơ bản về camera 3D và thƣ viện liên quan.  Chƣơng 3: Thiết kế và tính toán Chƣơng này sẽ đi tìm hiểu kỹ các thuật toán nhận dạng sản phẩm theo hình dạng, thuật toán tính kích thƣớc và thiết kế mô hình sản phẩm.  Chƣơng 4: Thi công hệ thống
  • 18. CHƢƠNG 1: TỔNG QUAN BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 3 Nội dụng chƣơng này là quá trình thi công cùng với việc chạy chƣơng trình về phân loại sản phẩm cũng nhƣ tính kích thƣớc sản phẩm.  Chƣơng 4: Kết quả nhận xét và đánh giá Nội dụng chƣơng này là tổng hợp các kết quả đạt đƣợc sau khi thi công mô hình và kết quả đạt đƣợc khi phân loại sản phẩm.  Chƣơng 5: Kết luận và hƣớng phát triển Kết quả nhận đƣợc khi hoàn thiện đề tài, đƣa ra các hƣớng phát triển hoàn thiện.
  • 19. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 4 CHƢƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 TỔNG QUAN VỀ XỬ LÝ ẢNH VÀ CÁC THƢ VIỆN LIÊN QUAN 2.1.1 Giới thiệu xử lý ảnh Xử lý ảnh không còn là đề tài quá mới, nó đƣợc áp dụng từ trong các hoạt động thƣờng ngày cho đến việc nâng cao sản xuất. Nó giúp ích cho cá nhân hay gia đình, mà còn ứng dụng cả trong Chính trị, Y tế, Giáo dục… Xử lý tín hiệu là một môn học trong kỹ thuật điện tử, viễn thông và trong toán học. Liên quan đến nghiên cứu và xử lý tín hiệu kỹ thuật số và analog, giải quyết các vấn đề về lƣu trữ, các thành phần bộ lọc, các hoạt động khác trên tín hiệu. Các tín hiệu này bao gồm truyền dẫn tín hiệu, âm thanh hoặc giọng nói, hình ảnh, và các tín hiệu khác… Trong số các phƣơng pháp xử lý tín hiệu kể trên, lĩnh vực giải quyết với các loại tín hiệu mà đầu vào là một hình ảnh và đầu ra cũng là một hình ảnh, sản phẩm đầu ra đƣợc thực hiện trong một quá trình xử lý. Đó chính là quá trình xử lý ảnh. Nó có thể đƣợc chia thành xử lý hình ảnh tƣơng tự và xử lý hình ảnh kỹ thuật số. Để có 1 bức ảnh số ta có quá trình thực hiện nhƣ sau: Chụp ảnh từ một máy ảnh là một quá trình vật lý. Ánh sáng mặt trời sử dụng nhƣ một nguồn năng lƣợng. Một dãy cảm biến đƣợc sử dụng cho việc thu lại của hình ảnh. Vì vậy, khi ánh sáng mặt trời rơi trên ngƣời đối tƣợng, sau đó số lƣợng ánh sáng phản xạ của đối tƣợng đƣợc cảm nhận từ các cảm biến, và một tín hiệu điện áp liên tục đƣợc tạo ra bởi số lƣợng dữ liệu cảm biến đó. Để tạo ra một hình ảnh kỹ thuật số, chúng ta cần phải chuyển đổi dữ liệu này thành một dạng kỹ thuật số. Điều này liên quan đến việc lấy mẫu và lƣợng tử hóa. Kết quả của việc lấy mẫu và lƣợng tử hóa sau một quá trình xử lý là một hình ảnh kỹ thuật số. 2.1.2 Những vấn đề trong xử lý ảnh Điểm ảnh
  • 20. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 5 Là đơn vị cơ bản nhất để tạo nên một bức ảnh kỹ thuật số, địa chỉ của điểm ảnh đƣợc xem nhƣ là một tọa độ (x,y) nào đó. Một bức ảnh kỹ thuật số - có thể đƣợc tạo ra bằng cách chụp hoặc bằng một phƣơng pháp đồ họa nào khác - đƣợc tạo nên từ hàng ngàn hoặc hàng triệu pixel riêng lẻ. Bức ảnh càng chứa nhiều pixel thì càng chi tiết. Một triệu pixel thì tƣơng đƣơng với 1 megapixel. Ảnh số Ảnh số là tập hợp hữu hạn các điểm ảnh với mức xám phù hợp dùng để mô tả ảnh gần với ảnh thật. Số điểm ảnh xác định độ phân giải của ảnh. Ảnh có độ phân giải càng cao thì càng thể hiện rõ nét các đặt điểm của tấm hình càng làm cho tấm ảnh trở nên thực và sắc nét hơn. Một hình ảnh là một tín hiệu hai chiều. Nó đƣợc xác định bởi hàm toán học f(x, y) trong đó x và y là hai tọa độ theo chiều ngang và chiều dọc. Các giá trị của f(x, y) tại bất kỳ điểm nào là cung cấp các giá trị điểm ảnh (pixel ) tại điểm đó của một hình ảnh. Phân loại ảnh Mức xám của điểm ảnh là cƣờng độ sáng, gán bằng một giá trị tại điểm đó. Các mức ảnh xám thông thƣờng: 16, 32, 64, 128, 256. Mức đƣợc sử dụng thông dụng nhất là 256, tức là dùng 1byte để biểu diễn mức xám. Ảnh nhị phân: Là ảnh có 2 mức trắng và đen. Chỉ có 2 giá trị 0 và 1 và chỉ sử dụng 1 bit dữ liệu trên 1 điểm ảnh. Ảnh đen trắng: Là ảnh có hai màu đen, trắng (không chứa màu khác) với mức xám ở các điểm ảnh có thể khác nhau. Ảnh màu: Là ảnh kết hợp của 3 màu cơ bản lại với nhau để tạo ra một thế giới màu sinh động. Ngƣời ta thƣờng dùng 3byte để mô tả mức màu, tức là có khoảng 16,7 triệu mức màu. Quan hệ giữa các điểm ảnh Lân cận điểm ảnh: đƣợc nói một cách hài hƣớc nhƣ là hàng xóm của các điểm ảnh. Có 2 loại lân cận cơ bản là lân cận 4 và lân cận 8.
  • 21. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 6 Điểm xét Điểm xét Điểm xét Lân cận 4 chéoLân cận 4 hàng cột Lân cận 8 Hình 2.1: Lân cận 4 và lân cận 8 Bốn điểm ảnh lân cận 4 theo cột và hàng với tọa độ lần lƣợt là (x+1, y), (x-1, y), (x,y+1), (x, y-1) ký hiệu là tập N4(p). Bốn điểm ảnh lân cận 4 theo đƣờng chéo có tọa độ lần lƣợt là (x+1, y+1), (x+1, y+1), (x-1, y+1), (x-1, y-1) ký hiệu là tập ND(p). Tập 8 điểm ảnh lân cận 8 là hợp của 2 tập trên: N8(p) = N4(p) + ND(p). Liên kết ảnh [3][4]: Các mối liên kết của ảnh đƣợc xem nhƣ là mối liên kiết của 2 điểm ảnh gần nhau, có 3 loại liên kết: liên kết 4, liên kết 8, lên kết m(liên kết hỗn hợp). Trong ảnh đa mức xám, ta có thể đặt V chứa nhiều giá trị nhƣ V={tập con}. Cho p có tọa độ (x, y). Liên kết 4: hai điểm ảnh p và q có giá trị thuộc về tập V đƣợc gọi là liên kết 4 của nhau nếu q thuộc về tập N4(p). Liên kết 8: hai điểm ảnh p và q có giá trị thuộc về tập V đƣợc gọi là liên kết 8 của nhau nếu q thuộc về tập N8(p). Liên kết m: hai điểm ảnh p và q có giá trị thuộc về tập V đƣợc gọi là Liên kết M của nhau nếu thõa 1 trong 2 điều kiện sau: q thuộc về tập N4(p). q thuộc về tập ND(p) và giao của hai tập N4(p), N4(q) không chứa điểm ảnh nào có giá trị thuộc V. Lọc nhiễu Ảnh thu nhận đƣợc thƣờng sẽ bị nhiễu nên cần phải loại bỏ nhiễu. Các toán tử không gian dùng trong kỹ thuật tăng cƣờng ảnh đƣợc phân nhóm theo công dụng: làm trơn nhiễu, nổi biên. Để làm trơn nhiễu hay tách nhiễu [3-4], ngƣời ta sử dụng các bộ lọc tuyến tính (lọc
  • 22. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 7 trung bình, thông thấp) hoặc lọc phi tuyến (trung vị, giả trung vị, lọc đồng hình). Từ bản chất của nhiễu (thƣờng tƣơng ứng với tần số cao) và từ cơ sở lý thuyết lọc là: bộ lọc chỉ cho tín hiệu có tần số nào đó thông qua, để lọc nhiễu ngƣời ta thƣờng dùng lọc thông thấp (theo quan điểm tần số không gian) hay lấy tổ hợp tuyến tính để san bằng (lọc trung bình). Để làm nổi cạnh (ứng với tần số cao), ngƣời ta dùng các bộ lọc thông cao, lọc Laplace. Phƣơng pháp lọc nhiễu. Chia làm 2 loại: lọc tuyến tính, lọc phi tuyến. Làm trơn nhiễu bằng lọc tuyến tính Khi chụp ảnh có thể xuất hiện nhiều loại nhiễu vào quá trình xử lý ảnh, nên ta cần phải lọc nhiễu [4]. Gồm các phƣơng pháp cơ bản lọc trung bình, lọc thông thấp… Lọc trung bình: Với lọc trung bình, mỗi điểm ảnh đƣợc thay thế bằng trung bình trọng số của các điểm lân cận. Lọc trung bình có trọng số chính là thực hiện chập ảnh đầu vào với nhân chập H. Nhân chập H có dạng:            111 111 111 9 1 H (2.1) Lọc thông thấp: Lọc thông thấp thƣờng đƣợc sử dụng để làm trơn nhiễu. Về nguyên lý của bộ lọc thông thấp giống nhƣ đã trình bày trên.            010 121 010 8 1 H (2.2) Làm trơn nhiễu bằng lọc phi tuyến Các bộ lọc phi tuyến cũng hay đƣợc dùng trong kỹ thuật tăng cƣờng ảnh. Một số phƣơng pháp lọc cơ bản bộ lọc trung vị, lọc ngoài… Với lọc trung vị, điểm ảnh đầu vào sẽ đƣợc thay thế bởi trung vị các điểm ảnh còn lọc giả trung vị sẽ dùng trung bình cộng của hai giá trị “trung vị” (trung bình cộng của max và min). Lọc trung vị: Kỹ thuật này đòi hỏi giá trị các điểm ảnh trong cửa sổ phải xếp theo thứ tự tăng hay giảm dần so với giá trị trung vị. Kích thƣớc cửa số thƣờng đƣợc chọn sao cho số điểm ảnh trong cửa sổ là lẻ.
  • 23. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 8 Phƣơng pháp phát hiện biên Biên là một trong những vấn đền ta cần quan tâm trong xử lý ảnh. Vì ở giai đoạn phân đoạn ảnh chủ yếu dựa vào biên [4]. Hình 2.2: Hình tách biên Điểm biên: Một điểm ảnh đƣợc coi là điểm biên nếu có sự thay đổi nhanh hoặc đột ngột về mức xám. Ví dụ trong ảnh nhị phân, điểm đen gọi là điểm biên nếu lân cận nó có ít nhất một điểm trắng. Đƣờng biên: tập hợp các điểm biên liên tiếp tạo thành một đƣờng biên. Ý nghĩa của đƣờng biên trong xử lý: ý nghĩa đầu tiên của đƣờng biên là một loại đặc trƣng cục bộ tiêu biểu trong phân tích, nhận dạng ảnh. Thứ hai, ngƣời ta sử dụng biên làm phân cách các vùng xám cách biệt. Ngƣợc lại, ngƣời ta cũng sử dụng các vùng ảnh để tìm đƣờng phân cách. Tầm quan trọng của biên: để thấy rõ tầm quan trọng của biên, xét ví dụ sau: khi ngƣời họa sỹ muốn vẽ một danh nhân, họa sỹ chỉ cần vẽ vài đƣờng nứt tốc họa mà không cần vẽ một cách đầy đủ. Nhƣ vậy, phát hiện biên một cách lý tƣởng là phát hiện đƣợc tất cả các đƣờng biên trong các đối tƣợng. Định nghĩa toán học của biên ở trên là cơ sở cho các kỹ thuật phát hiện biên. Điều quan trọng là sự biến thiên giữa các điểm ảnh thƣờng nhỏ, trong khi đó biến thiên độ sáng của điểm biên thƣờng là khá lớn khi qua biên. Xuất phát cơ sở này ngƣời ta thƣờng sử dụng hai phƣơng pháp phát hiện biên nhƣ sau: Tách biên theo đạo hàm bậc một [4]: Có 2 phƣơng pháp cơ bản là: một là tạo gradient của hai hƣớng và trực giao trong ảnh, hai là dùng tập đạo hàm có hƣớng.
  • 24. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 9 Tách biên theo đạo hàm bậc hai [4]: đƣợc thực hiện trên một số dạng vi phân bậc 2 để làm xuất hiện biên. Có hai dạng của phƣơng pháp đạo hàm bậc hai đã đƣợc nghiên cứu là: phƣơng pháp Lapplace và đạo hàm trực tiếp. Bộ tách biên Canny [4]: phƣơng pháp phát hiện này đƣợc sử dụng phổ biến vì nó có nhiều ƣu điểm hơn các phƣơng pháp khác. Các bƣớc thực hiện: Làm phẳng dùng bộ lọc Gauss. Hình 2.3: Bộ lọc Gaussian Sau đó, Gradient cục bộ của biên độ và hƣớng đƣợc tính. Tìm điểm ảnh có biên độ lớn nhất dùng kỹ thuật nonmaximal suppression. Các điểm ảnh đỉnh tìm đƣợc chia làm hai ngƣỡng T1 và T2, T1 < T2. Các điểm ảnh đỉnh có giá trị lớn hơn T2 đƣợc gọi là Strong và nằm trong khoảng T1 và T2 đƣợc gọi là Weak. Liên kiết các điểm ảnh Weak có 8 kết nối đến điểm ảnh Strong. Phƣơng pháp gradient: Gradient là một vector có các thành phần biểu thị tốc độ thay đổi giá trị của điểm ảnh theo 2 hƣớng x và y, hay có thể nói là nó đại diện cho sự thay đổi về hƣớng và độ lớn của một vùng ảnh. Ảnh đƣợc làm mịn sau đó đƣợc lọc bằng hạt nhân Sobel theo cả hƣớng ngang và dọc để lấy đạo hàm đầu tiên theo hƣớng nằm ngang (Gx) và hƣớng dọc (Gy). Từ hai hình ảnh này, chúng ta có thể tìm gradient và hƣớng cạnh cho mỗi pixel nhƣ sau: 22 )(_ yx GGGGradientEdge  (2.3)         Gx Gy Angle 1 tan)( (2.4)
  • 25. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 10 Phân đoạn ảnh Phân đoạn ảnh là bƣớc then chốt trong xử lý ảnh. Giai đoạn này nhằm phân tích ảnh thành các vùng 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ức xám, cùng màu hay cùng độ nhóm. Quá trình phân đoạn ảnh nhằm tách đối tƣợng cần khảo sát ra khỏi phần nội dung còn lại của ảnh, hay phân chia các đối tƣợng trong ảnh thành những đối tƣợng riêng biệt, nhƣ vậy quá trình phân đoạn ảnh là quá trình giảm bớt số lƣợng thông tin trong ảnh và chỉ giữ lại những thông tin cần thiết cho ứng dụng. Do đó phân đoạn ảnh là quá trình loại bỏ các đối tƣợng không quan tâm trong ảnh. Có nhiều phƣơng pháp phân đoạn ảnh khác nhau. Trong đó quá trình phân đoạn ảnh sử dụng một ngƣỡng giá trị xám để phân đoạn ảnh ra thành các đối tƣợng và nền là phƣơng pháp đơn giản nhất. Lúc này các điểm ở bên dƣới ngƣỡng giá trị xám thuộc về nền còn những điểm ảnh ở bên trên ngƣỡng giá trị xám thuộc về đối tƣợng. Phƣơng pháp phân đoạn ảnh này hiệu quả lớn đối với ảnh nhị phân, văn bản in hay đồ họa... Dựa vào đặc tính vật lý của vùng ảnh, các kỹ thuật phân đoạn vùng có thể đƣợc chia làm 3 loại: Các kỹ thuật cục bộ: dựa trên các đặc tính cục bộ của các điểm ảnh và các lân cận của nó. Các kỹ thuật tổng thể: phân đoạn một ảnh dựa trên cơ sở của thông tin lấy từ tổng thể nhƣ sử dụng biểu đồ mức xám histogram. Các kỹ thuật chia, nối và phát triển: dựa trên các khái niệm tƣơng đồng về hình dạng và tính đồng nhất. Hai vùng có thể đƣợc nối lại với nhau và liền kề bên nhau. Các vùng không đồng nhất có thể đƣợc chia thành các vùng nhỏ. Một vùng có thể đƣợc phát triển bằng các nối các điểm ảnh sao cho nó đồng nhất với nhau. Các phần mềm hỗ trợ xử lý ảnh Hiện nay xử lý ảnh đƣợc giảng dạy trƣờng đại học và ứng dụng vào thực tế rất nhiều nhƣ các phần mềm chỉnh sửa hình ảnh hay nhận biết khuôn mặt. Chính vì thế có rất nhiều
  • 26. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 11 công cụ để chúng ta lập trình ứng dụng vào thực tế, Nhƣ phải kể đến Matlap, hay ngôn ngữ Python… 2.2 PHƢƠNG PHÁP PHÂN LOẠI SẢN PHẨM THEO HÌNH DẠNG Với để tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thƣớc.” Thiết kế mô hình phân loại sản phẩm theo hình dạng (hình vuông, hình chữ nhật, hình tam giác) và tính kích thƣớc của chúng. Ở phần này sẽ đi tìm hiểu chi tiết phƣơng pháp nhận dạng của từng hình dạng của sản phẩm, phƣơng pháp tính kích thƣớc và phân loại sản phẩm theo từng hình dạng đã đƣợc nhận dạng. 2.2.1 Các hình dạng cơ bản của sản phẩm Trong cuộc sống hiện nay, nhu cầu về kiểu dáng sản phẩm ngày càng đƣợc chú trọng, để đáp ứng nhu cầu thiết yếu đó nên trên thị trƣờng ra nhiều sản phẩm có hình dạng và kiểu dáng đa dạng. Ở đây ta sẽ chia sản phẩm ra 2 nhóm, cách chia này dựa vào sự phổ biến của hình dạng sản phẩm ở ngoài cuộc sống, nhóm hình dạng chính (hình chữ nhật, hình vuông, hình tam giác) và các hình dạng còn lại ta chia thành 1 nhóm. Khi kết quả phân loại sản phẩm rơi vào một trong những hình nhóm hình này thì kết quả sau nhận dạng chỉ ra đúng tên hình dạng của sản phẩm. Hình chữ nhật: Đặc điểm nhận dạng: Có 4 đỉnh, 4 cạnh, 4 góc vuông, 2 cạnh đối diện đều bằng nhau, khác với so với hình vuông là 2 cạnh kề không bằng nhau… Hình vuông: Đặc điểm nhận dạng: Có 4 đỉnh, 4 cạnh, 4 góc vuông, 2 cạnh đối diện đều bằng nhau, 2 cạnh kề bằng nhau… Hình tam giác: Đặc điểm nhận dạng: có 3 đỉnh và 3 cạnh là hình tam giác… 2.2.2 Phƣơng pháp nhận dạng sản phẩm theo hình dạng Nhận dạng ảnh là giai đoạn quan trọng cuối của một hệ thống xử lý ảnh. Nhận dạng là quá trình phân loại các đối tƣợng đƣợc biểu diễn theo một mô hình nào đó. Ảnh đƣợc chụp sẽ đƣợc phân tích thành các đặc trƣng riêng biệt, với những đặc trƣng đó ta đem đi tìm hiểu và nhận dạng.
  • 27. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 12 Mô hình của tôi nhận dạng 3 hình cơ bản là: hình vuông, hình chữ nhật, hình tam giác. Nhƣ đề cập ở trên các các hình dạng của sản phẩm có các đặc điểm đặc trƣng. Tuy nhiên, thì vẫn có một số đặc điểm giống nhau, đặc điểm khác nhau, cùng với đó có thêm một số đặc điểm bị dƣ thừa trong việc so sánh với các sản phẩm khác tức là một số đặc điểm không liên quan đến nhau. Nếu nhận dạng tất cả các đặc điểm của các hình thì điều đó rất mất thời gian cùng với tiêu tốn tài nguyên dữ liệu lớn. Chính vì vậy ở đề tài này, ta cần chọn lọc ra từng đặc điểm riêng biệt của từng hình mà các hình không có và loại bỏ các đặc điểm cần thiết. Nhƣ vậy, để nhận dạng đƣợc hình dạng của sản phẩm cần xác định các đặc điểm, đặc trƣng riêng biệt của của từng hình dạng. Ở đây chỉ có 3 hình dạng sản phẩm (hình chữ nhật, hình vuông, hình tam giác) cần phân loại, chính vì vậy sẽ có một số đặc điểm hình dạng không cần xét tới. a. Sản phẩm hình chữ nhật Hình chữ nhật là hình có 4 đỉnh, 4 cạnh, 4 góc vuông, 2 cạnh đối diện bằng nhau,... Từ đặc điểm đó ta đi so sánh với 2 hình còn lại và phân tích thấy: Đặc điểm thứ nhất có 4 đỉnh, nhƣng sản phẩm hình vuông cũng có 4 đỉnh. Chính vì vậy ta có đặc điểm thứ hai để so sánh sự khác biệt với hình vuông, đó là 2 cạnh kề không bằng nhau với hình chữ nhật, với hình vuông thì chúng bằng nhau. Nhƣ vậy, đặc điểm nhận dạng sản phẩm hình chữ nhật, gồm 4 đỉnh và 2 cạnh kề không bằng nhau. a khác b a b E F GH Hình 2.4: Đặc điểm hình chữ nhật
  • 28. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 13 b. Sản phẩm hình vuông Đặc điểm nhận dạng: Có 4 đỉnh, 4 cạnh, 4 góc vuông, 2 cạnh đối diện đều bằng nhau, 2 cạnh kề bằng nhau… Từ đặc điểm đó ta đi so sánh với 2 hình còn lại và phân tích thấy: Đặc điểm thứ nhất có 4 đỉnh, nhƣng sản phẩm hình chữ nhật cũng có 4 đỉnh nhƣ đã đề cập ở trên. Chính vì vậy ta có đặc điểm thứ hai để so sánh sự khác biệt với hình chữ nhật, đó là 2 cạnh bằng nhau. Nhƣ vậy, đặc điểm nhận dạng sản phẩm hình vuông, gồm 4 đỉnh và 2 cạnh kề bằng nhau. a b E F GH a = b Hình 2.5: Đặc điểm hình vuông c. Sản phẩm hình tam giác Đặc điểm nhận dạng: có 3 đỉnh và 3 cạnh là hình tam giác... Từ đặc điểm đó ta đi so sánh với 2 hình còn lại và phân tích thấy: Chỉ có hình tam giác có 3 đỉnh, và đó chính là đặc điểm đặc trƣng riêng biệt của tam giác. B A C Hình 2.6: Đặc điểm hình tam giác
  • 29. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 14 Bảng 2.1: Đặc điểm hình dạng sản phẩm Đặc điểm Hình vuông Hình chữ nhật Hình tam giác Đỉnh 4 4 3 Cạnh 2 cạnh kề bằng nhau 2 cạnh kề không bằng nhau Có 3 cạnh 2.2.3 Các bƣớc thực hiện phân loại sản phẩm theo hình dạng Hình 2.7: Sơ đồ các bƣớc thực hiện phân loại sản phẩm Thu nhận ảnh Thu thập ảnh là bƣớc mà ảnh có thể nhận qua camera hoặc có thể lấy từ bộ nhớ của hệ thống. Tiền xử lý ảnh Là bƣớc chỉnh sửa chất lƣợng ảnh, nhƣ việc lọc nhiễu hay tăng cƣờng độ sáng, để nâng cao chất lƣợng ảnh và chuyển sang ảnh xám để dễ dạng nhận dạng ảnh. Chuyển đổi ảnh xám: Giả sử, hình ảnh của đƣợc lƣu trữ dƣới dạng RGB (Red-Green- Blue). Điều này có nghĩa là có ba ma trận xám tƣơng ứng cho màu Red, Green, Blue. Công việc là tìm cách tổng hợp ba ma trận này về thành một ma trận duy nhất. Một trong số các công thức phổ biến để thực hiện việc đó là:
  • 30. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 15 Y = 0.2126R + 0.7152G + 0.0722B (2.5) Trong đó:  Y: ma trận xám cần tìm  R: ma trận xám đỏ của ảnh  G: ma trận xám lục của ảnh  B: ma trận xám lam của ảnh Lọc trung bình: Giả sử có một ảnh đầu vào với I(x,y) là giá trị điểm ảnh tại một điểm (x,y) và một ngƣỡng θ. Bƣớc 1: Tính tổng các thành phần trong ma trận lọc (Kernel). Bƣớc 2: Chia lấy trung bình của tổng các thành phần trong ma trận đƣợc tính ở trên với số lƣợng các phần tử của cửa sổ lọc ra một giá trị Itb(x, y). Bƣớc 3: Hiệu chỉnh: - Nếu I(x,y) - Itb(x,y) > θ thì I(x,y) = Itb(x,y). -Nếu I(x,y) - Itb(x,y) <= θ thì I(x,y)=I(x,y). Chú ý: θ là một giá trị cho trƣớc và có thể có hoặc không tùy thuộc vào mục đích. Tách biên Tách biên là quá trình loại bỏ dữ liệu không cần thiết để giảm thiểu tài nguyên sử dụng và dễ dàng tính toán. Tách biên đƣợc chia thành các bƣớc:  Giảm nhiễu  Xác định đƣờng biên  Loại bỏ dữ liệu không phải đƣờng biên Giảm nhiễu: Vì phát hiện cạnh, đƣờng biên dễ bị nhiễu trong ảnh, bƣớc đầu tiên là loại bỏ nhiễu trong ảnh bằng bộ lọc Gaussian. Xác định đƣờng biên:
  • 31. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 16 Ảnh đƣợc làm mịn bằng bộ lọc tuyến tính nhằm mục đích loại bỏ những chi tiết nhỏ ra khỏi ảnh trƣớc khi tiến hành tách các thành phần lớn hơn ra khỏi, ảnh sau đó đƣợc lọc bằng hạt nhân Sobel tìm gradient và hƣớng cạnh cho mỗi pixel. Hƣớng dốc luôn vuông góc với các cạnh. Nó đƣợc làm tròn thành một trong bốn góc đại diện cho hƣớng dọc, ngang và hai đƣờng chéo. Sau khi nhận đƣợc độ lớn và hƣớng gradient, việc quét toàn bộ hình ảnh đƣợc thực hiện để xóa bất kỳ pixel không mong muốn nào có thể không tạo thành cạnh. Đối với điều này, tại mỗi điểm ảnh, pixel đƣợc kiểm tra nếu nó là một cực đại cục bộ trong vùng lân cận theo hƣớng gradient. Kiểm tra hình ảnh dƣới đây: Hình 2.8: Xác định biên Điểm A nằm trên cạnh theo hƣớng thẳng đứng. Hƣớng dốc là bình thƣờng cho cạnh. Điểm B và C theo hƣớng dốc. Vì vậy, điểm A đƣợc so sánh với điểm B và C để xem nó có là một cực đại hay không, nếu có thì nó thuộc đƣờng biên. Loại bỏ dữ liệu không phải đƣờng biên: Giai đoạn này quyết định đó là tất cả các cạnh, biên có thực sự là cạnh hay không. Đối với điều này, chúng ta cần hai giá trị ngƣỡng, minVal và maxVal. Bất kỳ cạnh nào có gradient cƣờng độ lớn hơn maxVal đều chắc chắn là các cạnh và các cạnh dƣới minVal chắc chắn là không có cạnh, do đó bị loại bỏ. Những biên nằm giữa hai ngƣỡng này đƣợc phân loại các cạnh liên tục hay không liên tục, nếu chúng đƣợc kết nối với các pixel "chắc chắn", chúng đƣợc coi là một phần của các cạnh. Nếu không, chúng cũng bị loại bỏ.
  • 32. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 17 Hình 2.9: Nhận dạng đƣờng biên Cạnh A nằm trên giá trị maxVal, do đó đƣợc coi là đƣờng biên. Mặc dù cạnh C là dƣới maxVal, nó đƣợc kết nối với cạnh A, do đó cũng đƣợc coi đƣờng biên hợp lệ và chúng ta có đƣợc đƣờng cong đầy đủ đó. Nhƣng cạnh B, mặc dù nó ở trên minVal và nằm trong cùng một vùng với cạnh của C, nó không đƣợc kết nối với bất kỳ đƣờng biên nào trên giá trị maxval nên không phải cạnh do đó nó bị loại bỏ. Lấp đầy biên Là quá trình lấp đầy các đƣờng biên kín, không bị gián đoạn hay đứt khúc, để tạo ra đƣợc ảnh nhị phân có giá trị 0 và 1. Mức 1 là giá trị của hình dạng lấp đầy biên, và bên ngoài biên đƣợc coi là giá trị 0. Nhƣ hình bên trên, đầu tiên phải sơn lại các vùng ở ngoài biên từ ảnh ban đầu ảnh a tức là đổi giá trị 0 bên ngoài thành giá trị 1 thành ảnh b. Sau đó đảo giá trị ảnh ngƣợc lại của ảnh b ta đƣợc ảnh c. Cuối cùng ta dùng phép toán OR để giữa ảnh a và ảnh c thì ta có kết quả. Nhận dạng và phân loại sản phẩm Ta nhận dạng sản phẩm dựa vào các đặc điểm riêng biệt của từng hình, thì sau đó ta đã có đƣợc các đặc điểm về đỉnh, đặc điểm về cạnh. Đó là nhận dạng sản phẩm. Sau khi có đƣợc các đặc điểm riêng biệt của từng hình nhƣ trên. Ta có phân loại từng hình dạng sản phẩm một nhờ vào việc so sánh các đặc điểm riêng biệt của chúng. Ta lần lƣợt đi so sánh từng hình một, từ hình vuông, đến hình chữ nhật, đến hình tam giác. Nếu các
  • 33. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 18 đặc điểm trùng khớp với đặc điểm đƣợc đề ra trƣớc ở hình dạng nào thì ta kết luận ngay đó là sản phẩm có hình dạng đó. Ngƣợc lại nếu không có đặc điểm nào khớp ta kết luận đó là một sản phẩm nào đó khác mà không phải sản phẩm đã định sẵn. 2.3 ÁP DỤNG KỸ THUẬT HIỆU CHỈNH STEREO CAMERA ĐỂ TÍNH KÍCH THƢỚC SẢN PHẨM Khi sử dụng một camera thì rất khó xác định đƣợc khoảng cách từ camera đến vật. Do vậy muốn xác định đƣợc khoảng cách thì cần ít nhất từ hai camera trở lên. Với hai hay nhiều máy ảnh, chúng ta hoàn toàn có thể xác định đƣợc độ sâu nếu chúng ta xác định đƣợc các điểm tƣơng đồng của hai ảnh mục tiêu và tham chiếu. Một xu hƣớng phát triển mới là sử dụng camera thị giác để quan sát nhƣ mắt ngƣời. Mặc dù việc chiết xuất dữ liệu từ ảnh thị giác là khó khăn hơn là dùng cảm biến nhƣng bù lại thì cách thức này cung cấp cho con ngƣời những dữ liệu trực quan sinh động và đầy đủ. Khi xử lý tín hiệu ảnh stereo thị giác thƣờng có hai khâu: * Khâu đầu tiên là khâu tiền xử lý có nhiệm vụ lấy ra các dữ liệu có chứa thông tin hữu ích cho việc phát triển các ứng dụng thị giác stereo thời gian thực. * Khâu thứ hai các ứng dụng thị giác nhƣ ứng dụng tái tạo môi trƣờng 3D, phát hiện đối tƣợng… Trong khâu tiền xử lý, có một đặc điểm chính là khối lƣợng dữ liệu thu thập bằng camera rất lớn (lớn hơn nhiều lần so với dữ liệu thu thập bằng cảm biến) cần đƣợc xử lý. Mọi cách giải quyết mới đều phải đƣợc phát triển trên một nền tảng sẵn có. Ở phần tiếp, các kỹ thuật cơ bản của xử lý ảnh 3D sẽ đƣợc đƣa ra để làm cơ sở phát triển cho các thuật toán về sau. 2.3.1 GIỚI THIỆU KỸ THUẬT HIỆU CHỈNH STEREO CAMERA Hiệu chỉnh stereo camera là phƣơng pháp tính toán và thực nghiệm nhằm tìm ra các tham số của camera để tái tạo không gian 3D của một cảnh, một vật thể nào đó trong thực tế bằng những ảnh mà camera đó ghi lại đƣợc.
  • 34. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 19 2.3.2 STEREO CAMERA Stereo vision là kỹ thuật sử dụng hai camera để đo khoảng cách giữa hai đối tƣợng. Thông thƣờng sử dụng hai camera cùng loại và thông số đƣợc đặt trên đƣờng thẳng hoặc ngang. Hình 2.10: Cấu hình chuẩn của hệ thống 2 camera Sử dụng camera stereo này, chúng ta có thể thu đƣợc hình ảnh của đối tƣợng tại hai vị trí khác nhau: ảnh bên trái và ảnh bên phải của đối tƣợng (sự chênh lệch). Các ảnh của các camera đƣợc phân tích để tìm các điểm chung. Sử dụng quy tắc tam giác đồng dạng và độ lệch của các điểm chung để xác định khoảng cách (độ sâu) so với camera. Hình 2.11: Hệ thống tọa độ của một stereo camera
  • 35. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 20 Hình mô tả hệ thống tọa độ của một stereo camera, có thể đƣợc tính nhƣ trong hai phƣơng trình sau: fz xlxrb z b    )( (2.6) d fb xrxl fb z **    (2.7) Trong đó:  d = xl-xr là sự chênh lệch.  xl là tọa độ x của camera bên trái.  xr là tọa độ x của camera bên phải.  b là chiều dài cơ sở của hai camera.  f là tiêu cự của máy ảnh.  z là khoảng cách từ đƣờng cơ sở đến đối tƣợng. Tính toán bản đồ chênh lệch: Là một trong những vấn đề quan trọng trong thị giác máy tính 3D. Một số lƣợng lớn các thuật toán đã đƣợc đề xuất để giải quyết vấn đề này. Một trong những phƣơng pháp tƣơng đối mới là “Tính toán bản đồ độ sâu” từ hình ảnh stereo. Đối với các cặp hình ảnh stereo đã đƣợc chỉnh sửa epipolar, mỗi điểm trong hình ảnh bên trái nằm trên đƣờng nằm ngang (đƣờng epipolar) có thể có điểm ảnh tƣơng ứng trong hình ảnh bên phải. Cách tiếp cận này đƣợc sử dụng để làm giảm không gian tìm kiếm chiều sâu bản đồ thuật toán tính toán. Chiều sâu của một điểm ảnh là khoảng cách điểm không gian tƣơng ứng tới trung tâm máy ảnh. Để ƣớc tính bản đồ độ sâu và phát hiện các đối tƣợng 3D, các điểm ảnh tƣơng ứng trong những ảnh trái và ảnh phải cần đƣợc phát hiện. Thuật toán là phần rất quan trong trong hệ thị giác máy tính 3D. Tuy nhiên, hiện nay có rất nhiều thuật toán đã đƣợc phát triển và hàng năm thì cũng có nhiều thuật toán mới đƣợc đề xuất. Việc phân loại tất cả các thuật toán là một điều rất khó vì hầu hết các nhà nghiên cứu chỉ đƣa ra kết quả định tính hoặc là kết quả cuối cùng về hiệu quả của các thuật toán của họ. Các thuật toán truyền thống của thị giác máy tính 3D là SAD (sum of absolute diffirence), SSD (sum of squared diffirence) và NCC (normalized cross correlation). Các
  • 36. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 21 hàm giá trị phù hợp đƣợc kết hợp trên các vùng cung cấp. Các vùng cung cấp thƣờng nhận đƣợc nhƣ các cửa sổ đƣợc kết hợp có thể là hình vuông hoặc hình chữ nhật, kích thƣớc cố định hoặc thích nghi. Việc xác định giá trị của kết hợp các hàm giá trị phù hợp, dẫn đến nền tảng của hầu hết các thuật toán thị giác nổi. Các thuật toán truyền thống có thể đƣợc biểu diễn toán học nhƣ sau: 1) Phƣơng pháp tổng bình phƣơng khác biệt (SSD – Sum of Squared Differences):    Wyx rl dyxIyxIdyxSSD , 2 )),(),((),,( (2.8) Phƣơng pháp này tính tổng của các bình phƣơng của các hiệu nên xuất hiện thêm phép nhân trƣớc khi tính tổng. Do đó độ phức tạp tăng lên đáng kể. 2) Phƣơng pháp tổng sự khác biệt tuyệt đối (SAD - Sum of Absolute Differences):    Wyx rl dyxIyxIdyxSAD , ),(),(),,( (2.9) Theo công thức trên, việc tính giá trị chênh lệch của điểm (x,y) đƣợc thực hiện bằng phép tính hiệu trong cửa sổ W. Do đó thuật toán đơn giản. Cửa sổ W và phạm vi chênh lệch d càng lớn thì số phép tính tăng. Thông thƣờng có thể thực tính SAD với cửa sổ 3x3, hoặc 5x5 hoặc 7x7 hoặc 11x11. Phạm vi chênh lệch d thƣờng chọn dƣới 120 với các giá trị tham khảo nhƣ 16, 50, 128. 3) Phƣơng pháp dựa trên sự tƣơng quan chéo chuẩn (NCC)          Wyx Wyx rl Wyx rl dyxIyxI dyxIyxI dyxNCC , , 22 , ),().,( ),()..,( ),,( (2.10) Trong đó Il , Ir là những giá trị cƣờng độ trong hình ảnh trái và phải, (x, y) là tọa độ của điểm ảnh, d là giá trị sai lệch đƣợc xem xét và W là cửa sổ phức hợp. Việc lựa chọn các giá trị sai lệch thích hợp cho mỗi điểm ảnh đƣợc thực hiện sau đó. Phƣơng pháp này có độ phức tạp cao nhất vì xuất hiện các phép toán tiêu tốn nhiều tài nguyên của máy tính nhƣ phép bình phƣơng, khai căn. Do đó việc ứng dụng của thuật toán
  • 37. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 22 này trong các hệ thống thời gian thực là không khả thi tức là, cho mỗi điểm ảnh (x, y) và cho giá trị không đổi có sự khác nhau d, chi phí tối thiểu đƣợc lựa chọn. D(x,y) = argminSAD(x,y,d) (2.11) Phƣơng trình trên đƣợc dùng cho phƣơng pháp SAD. Tuy nhiên, trong nhiều trƣờng hợp lựa chọn khác biệt là một quá trình lặp đi lặp lại, vì độ chênh lệch của mỗi điểm ảnh là tùy thuộc vào sự chênh lệch của các điểm ảnh lân cận. Các thuật toán phân vùng lai là một sự kết hợp với phƣơng pháp SAD đƣợc áp dụng phù hợp với hình ảnh stereo để tinh chỉnh các bản đồ độ sâu cuối cùng. Các thuật toán phù hợp với âm thanh stereo dựa trên phƣơng pháp mà không SAD phân đoạn và cách tiếp cận lai các thuật toán phù hợp với hình ảnh stereo dựa trên SAD lai có vẻ là thuật toán hiệu quả hơn để sản xuất bản đồ chênh lệch sạch hơn với các khu vực đồng nhất. Mặt khác, các thuật toán phù hợp với hình ảnh stereo dựa trên phƣơng pháp SAD sản xuất một bản đồ chiều sâu rõ ràng về hiện trƣờng. Hơn nữa, nó tạo ra một chất lƣợng cao hơn và ít lỗi gây ra bởi tắc phân đoạn hình ảnh. Thuật toán bao gồm các bƣớc nhƣ hình 2.12 : Hình 2.12: Thuật toán SAD phân vùng  Bƣớc 1: là quá trình hiệu chuẩn ảnh. Mục đích của quá trình này là xác định đƣợc các thông số bên trong và bên ngoài của camera : - Các thông số bên trong nhƣ là tiêu cự, điểm trung tâm, hiệu chỉnh vuông góc alpha và độ méo,.. - Các thông số bên ngoài nhƣ là các phép xoay và các phép chuyển.
  • 38. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 23  Bƣớc 2: là quá trình hiệu chỉnh ảnh. Quá trình hiệu chỉnh ảnh là quá trình mà hai ảnh của cảnh cố định chuyển đổi đơn ứng, có nghĩa rằng các đƣờng tâm cực đồng tâm trùng nhau và song song với trục tâm quang.  Bƣớc 3: là quá trình tìm điểm ảnh tƣơng đồng giữa ảnh mục tiêu và ảnh tham chiếu tức là tìm bản đồ chênh lệch.  Bƣớc 4: là sử dụng quy tắc tam giác đồng dạng và độ lệch của các điểm chung để xác định khoảng cách so với camera., có nghĩa là tìm đƣợc bản đồ độ sâu. Hình 2.13: Qui tắc tam giác đồng dạng 2.3.3 PHƢƠNG PHÁP HIỆU CHỈNH CHUẨN Phƣơng pháp hiệu chỉnh chuẩn là công việc ƣớc tính các thông số của thấu kính, cảm biến hình ảnh của máy ảnh. Có thể sử dụng các thông số này để cân chỉnh lại hiện tƣợng biến dạng, đo kích thƣớc một vật ngoài thế giới thực, tìm ra vị trí của camera khi chụp một bức hình. Những công việc đó cũng đƣợc sử dụng trong các ứng dụng nhƣ thị giác máy tính để phát hiện và đo đối tƣợng, trong robotics, hệ thống điều hƣớng, xây dựng ảnh 3D. Các thông số camera bao gồm các thông số nội, thông số ngoại, các hệ số biến dạng. Để ƣớc tính các thông số camera, bạn cần có những điểm 3D thực và điểm ảnh 2D tƣơng ứng. Bạn có thể có những điểm trên bằng cách sử dụng nhiều hình chụp của một mẫu để cân
  • 39. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 24 chỉnh ảnh, chẳng hạn là một bàn cờ. Sử dụng các ảnh đó, bạn có thể giải ra đƣợc thông số camera. Mô hình camera pinhole là một mô hình camera đơn giản. Bạn có thể bắt gặp mô hình camera này đƣợc cài đặt đơn giản khi ngƣời ta muốn xem hiện tƣợng nhật thực. Mô hình gồm một hộp đen kín, đƣợc đục một lỗ nhỏ gọi là lỗ kim. Thuật ngữ gọi pinhole là Focal Point. Khoảng cách từ Focal Point tới màn nhận ảnh là Focal length. Độ mở của pinhole gọi là Aperture khẩu độ. Hình 2.14: Mô hình các thông số của camera Các thông số ảnh đƣợc biểu diễn bởi ma trận 3×4 đƣợc gọi là ma trận camera. Ma trận camera này ánh xạ cảnh thế giới thực 3D vào mặt phẳng ảnh. Thuật toán calibration tính ra ma trận camera sử dụng các thông số nội và thông số ngoại. Thông số ngoại của camera đại diện cho vị trí của camera trong thế giới 3D. Thông số nội của camera đại diện cho tâm quang và tiêu cự của camera.                                            1 100 0 0 1 3333231 2232221 1131211 Z Y X trrr trrr trrr cf cf v u S yy xx (2.12) Trong đó:  (X,Y,Z) là tọa độ của điểm ảnh trong không gian ba chiều  (u,v) là tọa độ của điểm ảnh hai chiều  (cx,cy) là điểm chính, thƣờng là tâm ảnh
  • 40. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 25  fx,fy là độ dài tiêu cự biểu diễn ở đơn vị pixel. Ma trận các thông số nội tại không phụ thuộc vào cảnh chụp. Vì vậy, một khi ƣớc tính, nó có thể đƣợc sử dụng lại miễn là độ dài tiêu cự đƣợc cố định (trong trƣờng hợp ống kính zoom). Ma trận joint rotation-translation đƣợc gọi là ma trận của các tham số bên ngoài. Nó đƣợc sử dụng để mô tả chuyển động của camera xung quanh một cảnh tĩnh, hoặc ngƣợc lại, chuyển động không thay đổi hình dáng của một đối tƣợng ở phía trƣớc của một máy ảnh tĩnh. Tức là, [R|t] dịch tọa độ của một điểm (X,Y,Z) đến một hệ tọa độ, cố định đối với máy ảnh. Các ống kính thật thƣờng có một số biến dạng, phần lớn là biến dạng xoay và biến dạng tiếp xúc. Các hệ số biến dạng không phụ thuộc vào cảnh. Do đó, chúng cũng thuộc về các thông số nội. Và chúng vẫn giữ nguyên bất kể độ phân giải hình ảnh. Ví dụ: nếu máy ảnh đã đƣợc hiệu chỉnh trên các hình ảnh có độ phân giải 320 x 240, hoàn toàn có thể sử dụng các hệ số biến dạng tƣơng tự cho các hình ảnh 640 x 480 từ cùng một máy ảnh trong khi fx,fy cx và cy cần phải đƣợc tính lại. Các function dƣới đây sử dụng mô hình trên để thực hiện những việc sau:  Dựng điểm 3D từ ảnh 2D với các thông số nội và ngoại.  Tính các thông số ngoại với thông số nội, một vài điểm 3D và các phép chiếu của chúng đƣợc cho trƣớc.  Ƣớc lƣợng các thông số nội và ngoại của máy ảnh từ nhiều khung cảnh của vật.  Ƣớc lƣợng vị trí tƣơng đối và định hƣớng của stereo camera “heads” và tính toán sự chuyển đổi chỉnh lƣu làm cho trục quang của máy ảnh song song. 2.4 NGÔN NGỮ PYTHON Python là một ngôn ngữ lập trình đƣợc sử dụng phổ biến ngày nay từ trong môi trƣờng học đƣờng cho tới các dự án lớn [5]. Ngôn ngữ phát triển nhiều loại ứng dụng, phần mềm khác nhau nhƣ các chƣơng trình chạy trên desktop, server, lập trình các ứng dụng
  • 41. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 26 web... Ngoài ra Python cũng là ngôn ngữ ƣa thích trong xây dựng các chƣơng trình trí tuệ nhân tạo trong đó bao gồm machine learning. Ban đầu, Python đƣợc phát triển để chạy trên nền Unix. Nhƣng sau này, nó đã chạy trên mọi hệ điều hành từ MS-DOS đến Mac OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix. Python do Guido van Rossum tạo ra năm 1990. Python đƣợc phát triển trong một dự án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý. Mặc dù sự phát triển của Python có sự đóng góp của rất nhiều cá nhân, nhƣng Guido van Rossum hiện nay vẫn là tác giả chủ yếu của Python. Ông giữ vai trò chủ chốt trong việc quyết định hƣớng phát triển của Python. Python là ngôn ngữ có hình thức đơn giản, cú pháp ngắn gọn, sử dụng một số lƣợng ít các từ khoá, do đó Python là một ngôn ngữ dễ học đối với ngƣời mới bắt đầu tìm hiểu. Python là ngôn ngữ có mã lệnh (source code hay đơn giản là code) không mấy phức tạp. cả trƣờng hợp bạn chƣa biết gì về Python bạn cũng có thể suy đoán đƣợc ý nghĩa của từng dòng lệnh trong source code. Python có nhiều ứng dụng trên nhiều nền tảng, chƣơng trình phần mềm viết bằng ngôn ngữ Python có thể đƣợc chạy trên nhiều nền tảng hệ điều hành khác nhau bao gồm Windows, Mac OSX và Linux.  Các thành phần cơ bản trong Python Cấu trúc rẽ nhánh: Cấu trúc if dùng để thực thi có điều kiện một khối cụ thể. Cấu trúc lặp, gồm lệnh while và vòng lặp for: While chạy một khối cụ thể cho đến khi điều kiện lặp có giá trị là sai thì dừng. Vòng lặp for, lặp qua từng phần tử, mỗi phần tử sẽ đƣợc đƣa vào biến cục bộ để sử dụng với từng khối trong vòng lặp. Class: Dùng để khai báo lớp (sử dụng trong lập trình hƣớng đối tƣợng) và lệnh def dùng để định nghĩa hàm. Kiểu dữ liệu
  • 42. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 27 Sử dụng Python, thuận lợi cho ngƣời mới sử dụng đó là không cần phải khai báo biến. Biến đƣợc xem là đã khai báo nếu nó đƣợc gán một giá trị lần đầu tiên. Căn cứ vào mỗi lần gán, Python sẽ tự động xác định kiểu dữ liệu của biến. Python có một số kiểu dữ liệu cơ bản sau:  Int, long là kiểu số nguyên. Độ dài của kiểu số nguyên là tùy ý, chỉ bị giới hạn bởi bộ nhớ máy tính.  float: số thực.  Complex: số phức.  Str: chuỗi ký tự…  Thƣ viện OpenCV OpenCV (Open Source Computer Vision Library) là một thƣ viện mã nguồn mở, nó là miễn phí cho những ai bắt đầu tiếp cận với các học thuật. OpenCV đƣợc ứng dụng trong nhiều lĩnh vực nhƣ cho thị giác máy tính hay xử lý ảnh và máy học. Thƣ viện đƣợc lập trình trên các ngôn ngữ cấp cao: C++, C, Python, hay Java và hỗ trợ trên các nền tảng Window , Linux, Mac OS, iOS và Android. OpenCV đã đƣợc tạo ra tại Intel vào năm 1999 bởi Gary Bradsky , và ra mắt vào năm 2000. Opencv có rất nhiều ứng dụng: Nhận dạng ảnh, xử lý hình ảnh, phục hồi hình ảnh/video, thực tế ảo... Ở đề tài này thƣ viện OpenCV đƣợc chạy trên ngôn ngữ Python. OpenCV đƣợc dùng làm thƣ viện chính để xử lý hình ảnh đầu vào và sau đó đi nhận dạng ảnh. OpenCV Là một thƣ viện mở nên sử dụng các thuật toán một cách miễn phí, cùng với việc chúng ta cũng có thể đóng góp thêm các thuật toán giúp Thƣ viện thêm ngày càng phát triển. Các tính năng của thƣ viện OpenCV:  Đối với hình ảnh, chúng ta có thể đọc và lƣu hay ghi chúng.  Về Video cũng tƣơng tự nhƣ hình ảnh cũng có đọc và ghi.  Xử lý hình ảnh có thể lọc nhiễu cho ảnh, hay chuyển đổi ảnh.  Thực hiện nhận dạng đặc điểm của hình dạng trong ảnh
  • 43. CHƢƠNG 2: CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 28  Phát hiện các đối tƣợng xác định đƣợc xác định trƣớc nhƣ khuôn mặt, mắt, xe trong video hoặc hình ảnh.  Phân tích video, ... ƣớc lƣợng chuyển động của nó, trừ nền ra và theo dõi các đối tƣợng trong video. 2.5 GIỚI THIỆU PHẦN CỨNG Sử dụng Synchronization USB Stereo Webcam Dual lens camera OV9750 960P MJPEG 2560x960 with No distortion lens 3D USB camera module với cảm biến OV9750 thế hệ mới của OmniVision. Cảm biến sử dụng công nghệ mới nhất OmniPixel3-HS™ Hình 2.15: Sơ đồ khối của camera Ảnh đầu vào là mảng hai chiều. Sau đó qua bộ khuếch đại tín hiệu và chuyển đổi từ tín hiệu tƣơng tự sang tín hiệu số. Tiếp tục đến quá trình xử lý ảnh số. Kết quả cuối cùng là ảnh số 8-bit RGB (Red – Green – Blue) có 4096 mức màu khác nhau.
  • 44. CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 29 CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ 3.1 GIỚI THIỆU Ngày nay, phần lớn các thiết bị điện tử đều phát triển theo xu hƣớng tự động hóa, thông minh, càng hiểu ý con ngƣời, chúng giao tiếp đƣợc với con ngƣời và hoạt động theo ý muốn con ngƣời, để làm đƣợc điều đó thì các thiết bị cảm biến, thuật toán hỗ trợ ra đời. Trong số đó có bài toán “phân loại sản phẩm theo hình dạng và kích thƣớc” là một đề tài đáng để cho ta tìm hiểu. Để tài “Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thƣớc”. Phân loại sản phẩm theo hình dạng (hình vuông, hình chữ nhật, hình tam giác), có thể biết đƣợc kích thƣớc của sản phẩm. Mô hình gồm bộ điều khiển trung tâm là laptop, khối thu tín hiệu hình ảnh từ bên ngoài là camera 3D. Thiết kế mô hình phân loại sản phẩm theo hình dạng (hình vuông, hình chữ nhật, hình tam giác) và kích thƣớc có thời gian và tốc độ xử lý nhanh, tuy nhiên không chụp ảnh theo mong muốn ở điều kiện thiếu ánh sáng mà phải có màu sắc riêng biệt để tăng cƣờng độ chính xác của ảnh tránh nhiễu. Đề tải chỉ xây dựng với mô hình nhỏ và gọn không làm thành dây chuyền sản xuất. 3.2 THIẾT KẾ HỆ THỐNG PHẦN CỨNG Sơ đồ gồm : bộ điều khiển trung tâm là laptop, khối thu tín hiệu hình ảnh từ bên ngoài là stereo camera, sau đó đƣợc hiển thị kết quả trên màn hình máy tính, cùng với bộ phận để ngƣời giao tiếp và điều khiển. Chức năng các khối:  Khối xử lý trung tâm: là bộ xử lý chính, nhận dữ liệu từ khối thu tín hiệu camera, sau đó xử lý và phân tích nhận dạng, phân loại sản phẩm để đƣa kết quả ra hiển thị.  Khối thu tin hiệu hình ảnh: thu thập tín hiệu hình ảnh từ thực tế chuyển về tín hiệu điện và gửi dữ liệu cho khối xử lý trung tâm. Ở đây dùng stereo camera làm khối thu tín hiệu hình ảnh.
  • 45. CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 30  Khối hiển thị: hiển thị kết quả đƣợc nhận từ khối xử lý trung tâm. Sử dụng màn hình của máy tính để hiển thị kết quả.  Khối giao tiếp và điều khiển: sử dụng bàn phím và chuột để giao tiếp với CPU.  Khối nguồn: cung cấp nguồn cho toàn bộ hệ thống. Khối xử lý trung tâm Khối thu tín hiệu hình ảnh Khối hiển thị Khối nguồn Khối giao tiếp và điều khiển Gửi hình ảnh về trung tâm Đưa kết quả hiển thị Cung cấp điện áp Tín hiệu điều khiển Hình 3.1: Sơ đồ khối 3.2.1 Khối xử lý Vì vấn đề xử lý ảnh cần nhiều tài nguyên và tốc độ xử lý cao, nên ta không sử dụng vi điều khiển thông thƣờng để xử lý. Chính vì vậy, nhóm đã sử dụng laptop làm khối xử lý trung tâm. Máy tính của nhóm có CPU core i5 tộc độ xử lý lên tới 3.4 GHz chính vì vậy việc sử dụng vào mô hình là hợp lý. Máy tính hỗ trợ rất tốt việc giao tiếp các thiết bị ngoại vi và model từ bên ngoài. 3.2.2 Khối thu tín hiệu
  • 46. CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 31 Khối thu tín hiệu là thành phần quan trọng của mô hình. Có chức năng thu thập dữ liệu từ thực tế rồi gửi dữ liệu cho khối xử lý trung tâm. Hình 3.2: Khối thu tín hiệu Ở đây để có chất lƣợng hình ảnh tốt để xử lý ảnh dễ dàng ta dùng camera có độ phân giải cao, có khả năng ghi nhận chiều sâu đối tƣợng, tƣơng tự mắt con ngƣời nên chọn stereo camera làm khối thu tín hiệu hình ảnh. Là thiết bị có ảnh hƣởng lớn đến chất lƣợng ảnh cùng với việc nhận dạng và phân loại sản phẩm. Nên “Synchronization USB Stereo Webcam Dual lens camera OV9750 960P MJPEG 2560X960 with No distortion lens 3D usb camera module” đƣợc chọn. Camera có độ phân giải cao, cùng với kích thƣớc nhỏ gọn phù hợp cho các hƣớng phát triển sau này. Hình 3.3: Synchronization USB Stereo Webcam Dual lens camera OV9750 960P MJPEG 2560x960 with No distortion lens 3D usb camera module Các tính năng và đặc điểm của camera:  Module Camera USB2.0 1.3MP HD 960P đƣợc đồng bộ hóa.  Công nghệ đồng bộ hóa, phù hợp với ứng dụng Stereo 3D VR.
  • 47. CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 32  Giao diện USB 2.0 tốc độ cao.  Tốc độ khung hình cao, có thể nhận MJPEG: 2560X960 @ 60fps / 2560X720 @ 60fps / 1280X480 @ 60fps / 640X240 @ 60fps.  Tiêu thụ điện năng thấp.  Sử dụng trong HĐH Windows, Linux, Android, Mac 3.2.3 Khối hiển thị Có chức năng hiển thị kết quả đƣợc nhận từ Khối xử lý trung tâm. Sử dụng màn hình máy tính để hiển thị kết quả. Hình 3.4: Laptop 3.2.4 Khối giao tiếp và điều khiển  Bàn phím Về hình dáng, bàn phím là sự sắp đặt các nút, hay phím. Một bàn phím thông thƣờng có các ký tự đƣợc khắc hoặc in trên phím; với đa số bàn phím, mỗi lần nhấn một phím tƣơng ứng với một ký hiệu đƣợc tạo ra.  Chuột máy tính Chuột máy tính là một thiết bị ngoại vi của máy tính dùng để điều khiển và làm việc với máy tính. Để sử dụng chuột máy tính nhất thiết phải sử dụng màn hình máy tính để quan sát toạ độ và thao tác di chuyển của chuột trên màn hình. 3.2.5 Khối nguồn Có chức năng cung cấp điện áp cho toàn hệ thống.
  • 48. CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 33 Module camera với dòng tiêu thụ 220mA và điện áp 5V có thể sử dụng cổng USB 2.0 của máy tính. Do sử dụng máy tính xách tay nên các thiết bị ngoại vi không đƣợc tính. 3.3 CÁC TÍNH TOÁN TRONG NHẬN DẠNG 3.3.1 Giới thiệu đặc điểm của hình dạng Nhƣ đã tìm hiểu phƣơng pháp nhận dạng ở cơ sở lý thuyết, từ đó rút ra rằng:  Đỉnh cùa hình dạng Đầu tiên ta tìm số đỉnh của các hình. Có 3 hình dạng có đặc điểm liên quan tới đỉnh là hình chữ nhật, hình vuông và hình tam giác. Đặc điểm: - Có 4 đỉnh là hình vuông hoặc hình chữ nhật. - Có 3 đỉnh là hình tam giác.  Cạnh của hình dạng Vấn đề về cạnh chỉ có 2 hình là liên quan tới chúng là: hình chữ nhật và hình vuông. Đặc điểm: - Hai cạnh kề bằng nhau là hình vuông. - Hai cạnh kề không bằng nhau là hình chữ nhật. 3.3.2 Phƣơng pháp tính toán các đặc điểm  Cách tìm đỉnh Hình 3.5: Đỉnh của hình Sử dụng thuật toán Ramer-Douglas-Peucker để tìm đƣờng bao xấp xỉ, từ đƣờng bao ta có cạnh xấp xỉ và nhờ đó suy ra đƣợc đỉnh.
  • 49. CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 34 Hình 3.6: Đoạn Ramer-Douglas-Peucker Giả xử trên đƣờng viền của cạnh một đối tƣợng có các điểm lồi ra và lõm vào, chính vì thế ta cần phải đi tìm đƣờng xấp xỉ cho nó. Ở đây, sử dụng thuật toán Ramer-Douglas-Peucker, tức là tìm đƣờng đi ngắn nhất từ điểm đầu đến điểm cuối. Hình trên ta thấy đƣờng ngắn nhất đi từ A đến E chính là đoạn AE. Tƣơng tự nhƣ thế ta áp dụng lên hình dạng sản phẩm ta tìm đƣợc cạnh xấp xỉ là AH. Hình 3.7: Đƣờng xấp xỉ Từ đó ta có đƣờng bao xấp xỉ cho hình chữ nhật. Đỉnh ở đây là điểm đầu và điểm cuối trên một đoạn thẳng. Ví dụ trên cạnh AB thì đỉnh của nó là A và B. Giả xử nó có tọa độ A(m,n) và B(x,y). Tƣơng tự làm với các cạnh còn lại, nếu có các đỉnh giống nhau về tọa độ thì ở đây nó là 1 đỉnh.  Cách tìm độ dài cạnh Hình 3.8: Độ dài cạnh
  • 50. CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 35 Giả sử ta có tọa độ của 2 đỉnh tìm đƣợc ở bƣớc tìm đỉnh là A(m,n) và B(x,y) Ta tìm cạnh với công thức:     22 nymxAB  (3.1) Tƣơng tự cạnh BC ta cũng tìm tƣơng tự Nếu AB = BC thì đó là hình vuông AB khác BC thì đó là hình chữ nhật  Xác định kích thƣớc của đối tƣợng Từ các phƣơng pháp tìm đỉnh và độ dài các cạnh ở phía trên ta có thể tính toán đƣợc chu vi của từng sản phẩm dựa vào hình dạng và độ dài các cạnh của chúng. Ta tìm chu vi của chúng bằng cách xem chúng nhƣ một loại hình học cơ bản: Hình chữ nhật Chu vi bằng tổng hai cạnh kề nhân với 2: P = (C + D) x 2 (3.2) (với P là chu vi, C,D là 2 cạnh kề nhau) Hình vuông Chu vi bằng độ dài một cạnh nhân với 4: P = D x 4 (3.3) (với P là chu vi, D là độ dài cạnh) Hình tam giác Chu vi bằng tổng độ dài 3 cạnh P = A + B + C (3.4) (với P là chu vi; A, B, C lần lƣợt là độ dài 3 cạnh)
  • 51. CHƢƠNG 4: THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 36 CHƢƠNG 4: THI CÔNG HỆ THỐNG 4.1 GIỚI THIỆU Ở phần này thực thi trên laptop quá trình lấy các hình mẫu có sẵn sau đó xử lý phân tích và nhận dạng sản phẩm. Đề tải chỉ xây dựng với mô hình nhỏ và gọn không làm thành dây chuyền sản xuất. Mô hình đƣợc kết nối qua các dây tín hiệu nên sẽ không có phần thiết kế và thi công bo mạch 4.2 THI CÔNG HỆ THỐNG 4.2.1 Các linh kiện và model cần thiết cho mô hình Vì mô hình có linh kiện và model do nhà sản xuất sẵn nên sẽ không có sơ đồ mạch in, nên có sơ đồ kết nối của mô hình. Bảng 4.1: Danh sách các model và linh kiện liên quan. STT Tên Giá trị Chú thích 1 Laptop corei5 Tốc độ 3.4GHz Có vỏ bảo vệ 2 Stereo Camera Độ phân giải và khung hình: 2560X960 @ 60fps Có dây kết nối với cổng USB 3 Led 1W Màu trắng 4 Pin tiểu 3V Có vỏ bảo vể 4.2.2 Kết nối, lắp ráp và kiểm tra mô hình Mô hình gồm bộ điều khiển trung tâm là bộ vi xử lý (CPU) của chiếc laptop, khối thu tín hiệu hình ảnh từ bên ngoài là Camera 3D đƣợc kết nối vào cổng usb của
  • 52. CHƢƠNG 4: THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 37 laptop, sau đó kết quả hiển thị trên mà hình laptop, cùng với bộ phận để ngƣời giao tiếp và điều khiển là chuột máy tính. Kết nối Camera với Laptop Camera đƣợc kết nối với cổng USB của laptop. Sau khi kết nối thì xem cổng USB laptop đã nhận tín hiệu của camera chƣa, sau đó ta chọn mở IDLE và chạy chƣơng trình kiểm tra đầu vào của camera xem kết quả xem có xuất đầu vào của camera hay không. Để chiếu sáng cho mô hình ta nối trực tiếp đèn led 1w, điện áp 3-3,7V màu trắng với pin tiểu 3V . Hình 4.1: Kết nối Camera 4.3 THI CÔNG MÔ HÌNH Mô hình các khối hình hộp đƣợc gấp từ những tấm bìa cứng thành những hình hộp chữ nhật, hình vuông, hình tam giác và đƣợc dán ở bên ngoài bằng những lớp giấy màu (đỏ) để dễ dàng hơn trong việc nhận dạng, tránh việc nhiễu màu. Mô hình phải đƣợc thực hiện trong điều kiện có ánh sang đầy đủ để tránh những sai số, giúp cho ảnh có chất lƣợng tốt hơn cũng nhƣ tang cƣờng quá trình nhận dạng ổn định hơn và nhanh hơn.
  • 53. CHƢƠNG 4: THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 38 Hình 4.2: Các khối hộp (Hình dạng sản phẩm) 4.4 LẬP TRÌNH HỆ THỐNG 4.4.1 Lƣu đồ giải thuật
  • 54. CHƢƠNG 4: THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 39 Hình 4.3: Lƣu đồ giải thuật chính
  • 55. CHƢƠNG 4: THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 40 Lƣu đồ giải thuật chính gồm: Thu thập ảnh RGB từ camera 3D, tiền xử lý ảnh, nhận dạng màu sắc, tách biên, xác định các thông số 3D của môi trƣờng và giai đoạn quan trọng nhất là nhận dạng và tính kích thƣớc sản phẩm, cuối cùng là xuất kết quả. Trong đó: Thu thập ảnh RGB từ camera 3D Khi có một đối tƣợng di chuyển qua camera, đối tƣợng sẽ đƣợc chụp lại dƣới dạng ảnh RGB với khung và độ phân giải là 720x640, 30fps. RGB là từ viết tắt tiếng Anh của cơ chế hệ màu cộng, thƣờng đƣợc sử dụng để hiển thị màu trên các màn hình TV, monitor máy tính và những thiết bị điện tử khác (chẳng hạn nhƣ camera kỹ thuật số). Với ba màu cơ bản gồm: đỏ, xanh lá và xanh dƣơng. OpenCV xử lý ảnh và video ở định dạng 8 bit, số nguyên không dấu, định dạng BGR. Nói cách khác, hình ảnh đƣợc chụp có thể đƣợc coi là 3 ma trận: xanh dƣơng, xanh lá và đỏ (BGR) với các giá trị nguyên nằm trong khoảng từ 0 đến 255. Hình ảnh sau đây cho thấy hình ảnh màu đƣợc biểu diễn bằng 3 ma trận. Hình 4.4: Ma trận không gian màu BGR Tiền xử lý ảnh Bao gồm các bƣớc lọc nhiễu, nâng cao chất lƣợng ảnh để thuận tiện cho quá trình nhận dạng ảnh. Nhận dạng màu sắc
  • 56. CHƢƠNG 4: THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 41 Ở bƣớc này, ảnh RGB đầu vào đƣợc sau khi đƣợc lọc nhiễu ta tiến hành chuyển đổi sang ảnh HSV. Trong không gian màu HSV ta so sánh từng pixel với ngƣỡng trên và ngƣỡng dƣới của màu đỏ. Mục đích là để bộ xử lý sẽ dễ dàng nhận biết hơn đó là đối tƣợng cần nhận dạng, hạn chế nhiễu. Không gian màu HSV gồm ba ma trận: HUE, SATURATION and VALUE. Trong Opencv thì HUE có phạm vi từ 0-179 mang thông tin màu sắc, SATURATION từ 0-255 cho thông tin về độ thuần khiết của màu và VALUE từ 0-255 cho biết độ sang của điểm ảnh. Thƣ viện OpenCV là một thƣ viện chuyên xử lý hình ảnh vì vậy nó hổ trợ rất nhiều hệ màu nhƣ RGB, ARGB, BRGA, YUV, HSV… và nó cũng có cung cấp cho chúng ta hàm cv.cvtColor (CV_BGR2HSV) để thực hiển chuyển đổi BGR sang HSV. Tách biên và lấp đầy biên Là quá trình xác định đƣờng biên sau đó loại bỏ những dữ liệu không cần thiết, sau khi có đƣợc đƣờng biên ta lấp đầy biên để có đƣợc hình dạng của sản phẩm để đi nhận dạng. Hình 4.5: Sơ đồ khối chƣơng trình con tách biên và lấp đầy biên Sau khi có đƣợc ảnh ta tiếp tục xử lý chất lƣợng hình ảnh đầu vào để cho quá trình nhận dạng ảnh đƣợc tốt bao gồm việc chuyển đổi ảnh xám cũng nhƣ giãm nhiễu để có chất lƣợng ảnh tốt hơn. Giảm nhiễu: Quá trình giảm nhiễu ở đây ta giải nhiễu thêm một lần nữa giúp ảnh chất lƣợng hơn. Vì phát hiện cạnh, đƣờng biên dễ bị nhiễu trong ảnh, bƣớc đầu tiên là loại bỏ nhiễu trong ảnh bằng bộ lọc Gaussian.
  • 57. CHƢƠNG 4: THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 42 Chuyển đổi ảnh xám là quá trình chuyển đổi hình ảnh dƣới dạng RGB (Red- Green-Blue) sang ảnh xám. Điều này có nghĩa là có ba ma trận xám tƣơng ứng cho màu Red, Green, Blue, vông việc là tìm cách tổng hợp ba ma trận này về thành một ma trận duy nhất đó là ma trận xám. Xác định đƣờng biên: Ảnh đƣợc lọc mịn đƣợc đem đi xác định biên tạo ra các đƣờng biên có giá trị là là một trong giá trị nhị phân của hình. Ở bƣớc này ta xác đinh đƣờng biên bằng các tìm điểm A ở giữa hai điểm lân cận C và B ta xác định đó có phải giái trị cực đại không tức là giá trị rất lớn so với các điểm lân cận. nếu nó đúng thì ta có thể có thể xác định tạm thời đó là một phần của đƣờng biên. Tách biên: Là quá trình lọai bỏ các dữ liệu không phải là biên đƣợc xác định từ trƣớc, chỉ dữ lại những đƣờng biên. Lấp đầy biên: Là quá trình lấp đầy các đƣờng biên kín, không bị gián đoạn hay đứt khúc, để tạo ra đƣợc ảnh nhị phân có giá trị 0 và 1. Mức 1 là giá trị của hình dạng lấp đầy biên, và bên ngoài biên đƣợc coi là giá trị 0. Nhận dạng và tính kích thƣớc sản phẩm Ở đây bao gồm giai đoạn gán nhãn cho từng hình dạng rồi phân tích nhận dạng. Gán nhãn nói một cách tóm tắt là ta đi ghi chú cho từng hình để biết đó là hình gì, chu vi và độ dài các cạnh là bao nhiêu. Muốn phân loại đƣợc thì ta cần đi nhận dạng các đặc điểm của từng hình. Trong đó có 3 đặc điểm chính để ta nhận dạng: Ta tìm đỉnh của hình dạng số đỉnh hình vuông và chữ nhật có 4 đỉnh, hình tam giác có 3 đỉnh. Trong đó 2 cạnh bên của hình vuông bằng nhau và hình chữ nhật không bằng nhau. Nhƣ vậy, ta đã phân loại đƣợc 3 loại sản phẩm. Tính kích thƣớc là quá trình tìm ra độ dài thực tế của các cạnh của sản phẩm để tìm ra chu vi thực tế của sản phẩm. Xuất kết quả là việc hiển thị kết quả từ bƣớc nhận dạng và tính kích thƣớc, độ dài các cạnh.
  • 58. CHƢƠNG 4: THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 43 Hình 4.6: Lƣu đồ con nhận dạng sản phẩm
  • 59. CHƢƠNG 4: THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 44 4.4.2 Lập trình với ngôn ngữ Python cùng thƣ viện OpenCV Giới thiệu ngôn ngữ Python Python là một ngôn ngữ lập trình đƣợc sử dụng phổ biến ngày nay từ trong môi trƣờng học đƣờng cho tới các dự án lớn. Ngôn ngữ phát triển nhiều loại ứng dụng, phần mềm khác nhau nhƣ các chƣơng trình chạy trên desktop, server, lập trình các ứng dụng web... Ngoài ra Python cũng là ngôn ngữ ƣa thích trong xây dựng các chƣơng trình trí tuệ nhân tạo trong đó bao gồm machine learning. Nó có thể chạy trên mọi hệ điều hành từ MS-DOS đến Mac OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix. Giao diện IDLE Tạo File mới Để tạo tập tin mới và lập trình trên Python ta vào khung tìm kiếm trên Window nhập Python -> chọn IDLE Hình 4.7: Tìm kiếm Python 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.
  • 60. CHƢƠNG 4: THI CÔNG HỆ THỐNG 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 Hình 4.9: Lƣu đồ mô phỏng
  • 61. CHƢƠNG 4: THI CÔNG HỆ THỐNG 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 a. Ảnh đầu vào
  • 62. CHƢƠNG 4: THI CÔNG HỆ THỐNG 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 vuông, 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 Hình 4.12: Tách biên
  • 63. CHƢƠNG 4: THI CÔNG HỆ THỐNG 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.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.
  • 64. CHƢƠNG 4: THI CÔNG HỆ THỐNG 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 hoá 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. Hình 4.16: Kết quả sau khi bấm chạy chƣơng trình
  • 65. CHƢƠNG 4: THI CÔNG HỆ THỐNG 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 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. Đặt sản phẩm ở vị trí so với camera cho kết quả kích thƣớc tốt nhất