Giới thiệu dự án
Trong kỷ nguyên Công nghiệp 4.0, tự động hóa đóng vai trò then chốt nhằm tối ưu hóa năng suất, giảm thiểu chi phí nhân công và nâng cao độ chính xác trong dây chuyền sản xuất. Theo các khảo sát công nghiệp, các lỗi phân loại thủ công chiếm từ 5% đến 12% tổng lượng phế phẩm trong khâu đóng gói và kiểm định chất lượng. Xử lý ảnh số (Digital Image Processing) và thị giác máy tính (Computer Vision) đã trở thành công cụ quan trọng nhằm giải quyết bài toán này. Tuy nhiên, các hệ thống camera 2D truyền thống gặp giới hạn nghiêm trọng: không thể đo đạc chiều sâu thực tế ($Z$), dễ bị ảnh hưởng bởi biến dạng góc phối cảnh (perspective distortion) và khó xác định kích thước tuyệt đối của vật thể trong không gian ba chiều khi khoảng cách từ camera đến phôi thay đổi.
Đồ án tốt nghiệp "Ứ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" (chuyên ngành Kỹ thuật Điện tử Truyền thông, Trường Đại học Sư phạm Kỹ thuật TP.HCM) giải quyết trực tiếp bài toán nhận dạng, đo đạc kích thước thực tế và phân loại phôi sản phẩm hình học tự động. Giải pháp ứng dụng module camera Stereo 3D đồng bộ kết hợp cùng ngôn ngữ lập trình Python và thư viện OpenCV nhằm trích xuất đồng thời thông tin hình thái 2D và bản đồ độ sâu (Disparity Map) theo thời gian thực.
+-----------------------------------+
| Stereo Camera 3D (OV9750) |
| Dual-lens MJPEG 2560x960 @ 60fps |
+-----------------+-----------------+
| (USB 2.0)
v
+-----------------------------------------------------------------------+
| KHỐI XỬ LÝ TRUNG TÂM (CPU) |
| |
| [Thu nhận ảnh Left/Right] -> [Tiền xử lý & Lọc Gaussian/Sobel] |
| | |
| v |
| [Canny Edge & Lấp đầy biên] -> [Ramer-Douglas-Peucker Xấp xỉ đa giác] |
| | |
| v |
| [Tính Disparity SAD/Stereo] -> [Trích xuất Đỉnh, Cạnh & Chu vi] |
+-----------------------------------+-----------------------------------+
|
v
+-----------------+-----------------+
| Hiển thị GUI / Phân loại |
| - Hình học: Tam giác, Vuông, CN |
| - Kích thước & Chu vi thực tế |
+-----------------------------------+
Mục tiêu của dự án
- Nghiên cứu nguyên lý thị giác hai mắt (Stereo Vision) và phương pháp hiệu chỉnh thông số camera (Camera Calibration) theo mô hình Pinhole.
- Xây dựng thuật toán xử lý ảnh trên nền tảng Python và OpenCV: tách biên Canny, làm mịn Gaussian, lấp đầy biên (Morphological Edge Filling) và giải thuật Ramer-Douglas-Peucker để xấp xỉ đa giác.
- Nhận dạng chính xác 3 nhóm hình học cơ bản: hình tam giác (3 đỉnh), hình vuông (4 đỉnh, 2 cạnh kề bằng nhau) và hình chữ nhật (4 đỉnh, 2 cạnh kề khác nhau).
- Tính toán khoảng cách chiều sâu $Z$ và kích thước thực (chiều dài cạnh, chu vi) của sản phẩm dựa trên nguyên lý tam giác đồng dạng và ma trận hiệu chuẩn.
- Triển khai mô hình phần cứng hoạt động ổn định với độ trễ thấp và độ chính xác phân loại đạt trên 95%.
Phạm vi và giới hạn
- Phạm vi đối tượng: Sản phẩm dạng hình học đơn giản phẳng (hình vuông, hình chữ nhật, hình tam giác) đơn sắc hoặc có độ tương phản rõ với nền.
- Giới hạn môi trường: Hệ thống hoạt động trong điều kiện chiếu sáng ổn định (ánh sáng khuếch tán, không bị bóng gắt cục bộ); xử lý từng sản phẩm đơn lẻ nằm trong trường quan sát của Stereo Camera (khoảng cách làm việc $30\text{ cm} - 80\text{ cm}$).
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
| Tiêu chí kỹ thuật |
Cảm biến quang / Tiệm cận truyền thống |
Camera công nghiệp 2D đơn lẻ |
Hệ thống Stereo Camera 3D (Đề tài) |
| Khả năng trích xuất hình học |
Kém (chỉ nhận diện điểm ngắt) |
Tốt trên mặt phẳng cố định |
Toàn diện (Hình học 2D + Chiều sâu $Z$) |
| Độ nhạy với khoảng cách phôi |
Rất cao (sai số lớn khi phôi lệch) |
Lệch kích thước khi phôi thay đổi độ cao |
Tự bù sai số nhờ bản đồ độ sâu Disparity |
| Chi phí triển khai phần cứng |
Thấp ($< 1.000.000$ VNĐ) |
Trung bình ($5.000.000 - 15.000.000$ VNĐ) |
Tối ưu chi phí ($< 3.500.000$ VNĐ) |
| Khả năng nâng cấp thuật toán |
Không có (phần cứng cố định) |
Bị giới hạn ở tính toán phẳng |
Cao (mở rộng Deep Learning, 3D Point Cloud) |
YÊU CẦU HỆ THỐNG (MoSCoW)
+-----------------------------------------------------------------------------------------+
| MUST HAVE (Bắt buộc) |
| - Nhận diện 3 loại hình: Vuông, Chữ nhật, Tam giác qua số đỉnh và tỷ lệ cạnh. |
| - Thu nhận luồng ảnh stereo đồng bộ độ phân giải tối thiểu 1280x480 @ 30fps. |
| - Trích xuất tọa độ đỉnh và đo chiều dài các cạnh thực tế (sai số < 5%). |
+-----------------------------------------------------------------------------------------+
| SHOULD HAVE (Nên có) |
| - Tự động tính toán chu vi sản phẩm theo thời gian thực. |
| - Bộ lọc Gaussian giảm thiểu nhiễu hạt môi trường. |
+-----------------------------------------------------------------------------------------+
| COULD HAVE (Có thể có) |
| - Mở rộng nhận diện hình tròn dựa trên độ tròn biên (Circularity metric). |
| - Giao diện GUI hiển thị đồng thời ảnh RGB và Disparity Map. |
+-----------------------------------------------------------------------------------------+
| WON'T HAVE (Chưa thực hiện ở pha này) |
| - Phân loại đa vật thể xếp chồng lấn (Occlusion). |
| - Điều khiển tay gắp Robot 6 trục tích hợp trực tiếp qua Modbus/EtherCAT. |
+-----------------------------------------------------------------------------------------+
Thiết kế hệ thống
Cấu trúc phần cứng
- Khối thu nhận tín hiệu: Module Synchronization USB Stereo Webcam Dual Lens Camera OV9750 (OmniVision OmniPixel3-HS™).
- Độ phân giải: 1.3 Megapixel (960P), xuất luồng đôi MJPEG lên tới $2560 \times 960 \text{ @ } 60\text{fps}$, $1280 \times 480 \text{ @ } 60\text{fps}$.
- Ống kính không méo (No-distortion lens), đồng bộ tín hiệu phần cứng giữa hai cảm biến trái (Left) và phải (Right).
- Giao tiếp và nguồn: USB 2.0 (5V DC – 220mA).
- Khối xử lý trung tâm: Máy tính cá nhân trang bị CPU Intel Core i5 3.4GHz, 8GB RAM, hệ điều hành Windows/Linux.
- Khối hiển thị & điều khiển: Màn hình giám sát trực quan, hiển thị khung bao bounding-box, tên phân loại, tọa độ đỉnh và kích thước cạnh.
+-------------------------------------------------------------------------+
| NGĂN XẾP CÔNG NGHỆ (TECH STACK) |
+-------------------+----------------------+------------------------------+
| Thành phần | Công nghệ / Thiết bị | Phiên bản / Thông số |
+-------------------+----------------------+------------------------------+
| Ngôn ngữ lõi | Python | 3.7.x |
| Thư viện thị giác | OpenCV (cv2) | 3.4.x / 4.1.x |
| Thư viện tính toán| NumPy | 1.16.x |
| Cảm biến Stereo | Dual OV9750 Module | MJPEG 960P 60fps Synchronized|
| Driver Camera | UVC / DirectShow | Chuẩn Video Class |
+-------------------+----------------------+------------------------------+
Mô hình toán học hiệu chuẩn Camera (Pinhole Model)
Mối quan hệ giữa tọa độ 3D thực tế $(X, Y, Z)$ và tọa độ điểm ảnh 2D $(u, v)$ được mô tả qua ma trận thông số nội (Intrinsic Matrix $K$) và ma trận thông số ngoại (Extrinsic Matrix $[R|t]$):
$$Z \begin{bmatrix} u \ v \ 1 \end{bmatrix} = \begin{bmatrix} f_x & 0 & c_x \ 0 & f_y & c_y \ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} r_{11} & r_{12} & r_{13} & t_1 \ r_{21} & r_{22} & r_{23} & t_2 \ r_{31} & r_{32} & r_{33} & t_3 \end{bmatrix} \begin{bmatrix} X \ Y \ Z \ 1 \end{bmatrix}$$
Trong đó:
- $f_x, f_y$: Tiêu cự camera tính theo đơn vị pixel dọc theo trục $x$ và $y$.
- $(c_x, c_y)$: Điểm chính quang học (Principal Point) trên cảm biến.
- $R$: Ma trận quay $3 \times 3$, $t$: Vector tịnh tiến $3 \times 1$.
Left Camera (Ol) Right Camera (Or)
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
+-------------------+
|
v
Object Point P(X,Y,Z)
Khoảng cách từ camera đến bề mặt sản phẩm (chiều sâu $Z$) tính theo nguyên lý tam giác đồng dạng:
$$Z = \frac{f \cdot b}{d} = \frac{f \cdot b}{x_l - x_r}$$
- $b$: Chiều dài cơ sở (Baseline) giữa hai tâm thấu kính.
- $d = x_l - x_r$: Độ lệch pha điểm ảnh (Disparity) giữa ảnh trái và ảnh phải.
Phương pháp nghiên cứu và phát triển
+-----------------------------------------------------------------------------------+
| LỘ TRÌNH TRIỂN KHAI DỰ ÁN (PROJECT TIMELINE) |
+-------------------+---------------------------------------------------------------+
| Tuần 1 - Tuần 2 | Khảo sát lý thuyết xử lý ảnh số, cấu hình Stereo Camera. |
| Tuần 3 - Tuần 4 | Thuật toán lọc nhiễu, tách biên Canny và lấp đầy biên. |
| Tuần 5 - Tuần 6 | Triển khai thuật toán Ramer-Douglas-Peucker & trích xuất đỉnh.|
| Tuần 7 - Tuần 8 | Lập trình Stereo Disparity, tính toán kích thước thực tế. |
| Tuần 9 - Tuần 10 | Lắp ráp giá đỡ mô hình, hiệu chuẩn quang học bàn cờ 9x6. |
| Tuần 11 - Tuần 12 | Thử nghiệm phân loại mẫu, đánh giá sai số và đóng gói báo cáo.|
+-------------------+---------------------------------------------------------------+
Implementation và kết quả
Quy trình xử lý và thuật toán cốt lõi
Quy trình nhận dạng và phân loại sản phẩm trải qua 5 bước liên hoàn:
- Chuyển đổi không gian màu: Ảnh màu BGR chuyển đổi sang ảnh mức xám thông qua trọng số:
$$Y = 0.299R + 0.587G + 0.114B$$
- Khử nhiễu làm mịn: Áp dụng bộ lọc Gaussian 2D kích thước kernel $5 \times 5$:
$$G(x, y) = \frac{1}{2\pi\sigma^2} e^{-\frac{x^2+y^2}{2\sigma^2}}$$
- Tách biên Canny: Xác định độ lớn Gradient $G = \sqrt{G_x^2 + G_y^2}$ và hướng $\theta = \arctan(G_y / G_x)$, áp dụng lọc Non-maximal Suppression và ngắt ngưỡng Hysteresis kép $(T_1, T_2)$.
- Lấp đầy biên (Morphological Edge Filling): Dùng toán tử hình thái học và phép nghịch đảo nhị phân để tạo vùng khép kín cho sản phẩm.
- Xấp xỉ đa giác Ramer-Douglas-Peucker: Rút gọn chuỗi điểm đường bao thành các đoạn thẳng đặc trưng để trích xuất số đỉnh.
import cv2
import numpy as np
def classify_and_measure_shape(contour, depth_z, focal_length):
"""
Trích xuất số đỉnh, phân loại hình học và tính toán kích thước thực tế.
"""
# Xấp xỉ chu vi đường bao bằng thuật toán Ramer-Douglas-Peucker
perimeter = cv2.arcLength(contour, True)
epsilon = 0.04 * perimeter
approx = cv2.approxPolyDP(contour, epsilon, True)
num_vertices = len(approx)
shape_label = "Unknown"
dimensions = {}
# Hệ số chuyển đổi pixel sang mm dựa vào độ sâu Z
# real_size = (pixel_size * Z) / focal_length
scale_factor = depth_z / focal_length
if num_vertices == 3:
shape_label = "Triangle"
# Tính độ dài 3 cạnh thực tế
pt1, pt2, pt3 = approx[0][0], approx[1][0], approx[2][0]
side_a = np.linalg.norm(pt1 - pt2) * scale_factor
side_b = np.linalg.norm(pt2 - pt3) * scale_factor
side_c = np.linalg.norm(pt3 - pt1) * scale_factor
dimensions = {"Side_A": side_a, "Side_B": side_b, "Side_C": side_c, "Perimeter": side_a + side_b + side_c}
elif num_vertices == 4:
# Tính tỷ lệ hai cạnh kề để phân biệt hình vuông và chữ nhật
pt1, pt2, pt3, pt4 = approx[0][0], approx[1][0], approx[2][0], approx[3][0]
edge_1 = np.linalg.norm(pt1 - pt2) * scale_factor
edge_2 = np.linalg.norm(pt2 - pt3) * scale_factor
ratio = abs(edge_1 - edge_2) / max(edge_1, edge_2)
if ratio < 0.10: # Độ lệch dưới 10% xem như hai cạnh kề bằng nhau
shape_label = "Square"
dimensions = {"Side": edge_1, "Perimeter": 4 * edge_1}
else:
shape_label = "Rectangle"
dimensions = {"Width": min(edge_1, edge_2), "Length": max(edge_1, edge_2), "Perimeter": 2 * (edge_1 + edge_2)}
return shape_label, approx, dimensions
Thử nghiệm và đánh giá độ chính xác
Hệ thống được tiến hành đánh giá thực nghiệm trên 150 mẫu thử nghiệm thực tế (50 mẫu hình vuông, 50 mẫu hình chữ nhật, 50 mẫu hình tam giác) ở các vị trí và hướng xoay ngẫu nhiên trong khoảng cách đo từ $40\text{ cm}$ đến $60\text{ cm}$.
+---------------------------------------------------------------------------------------------------------+
| THỐNG KÊ KẾT QUẢ NHẬN DẠNG VÀ ĐO KÍCH THƯỚC SẢN PHẨM |
+-------------------+---------------+-------------------+---------------------+---------------------------+
| Loại hình học | Số mẫu thử | Nhận dạng đúng | Độ chính xác (%) | Sai số kích thước TB (mm) |
+-------------------+---------------+-------------------+---------------------+---------------------------+
| Hình vuông | 50 | 49 | 98.0% | $\pm 1.2\text{ mm}$ |
| Hình chữ nhật | 50 | 48 | 96.0% | $\pm 1.5\text{ mm}$ |
| Hình tam giác | 50 | 48 | 96.0% | $\pm 1.8\text{ mm}$ |
+-------------------+---------------+-------------------+---------------------+---------------------------+
| TỔNG HỢP | 150 | 145 | 96.67% | $\pm 1.5\text{ mm}$ |
+-------------------+---------------+-------------------+---------------------+---------------------------+
BIỂU ĐỒ TỶ LỆ NHẬN DẠNG ĐÚNG (%)
Hình vuông [========================================] 98.0%
Hình chữ nhật [======================================] 96.0%
Hình tam giác [======================================] 96.0%
Trung bình [=======================================] 96.7%
- Tốc độ xử lý: Pipeline hoàn thành xử lý 1 frame trong $16.6\text{ ms} - 22.0\text{ ms}$ trên CPU Intel Core i5, đáp ứng tốt tần số hiển thị thời gian thực $45 - 60\text{ fps}$.
- Hiệu năng Stereo Matching: Thuật toán SAD (Sum of Absolute Differences) đạt tốc độ vượt trội so với NCC (Normalized Cross Correlation), giảm tải $65%$ chi phí tính toán phần cứng mà vẫn đảm bảo độ phân giải chiều sâu cho phôi phẳng.
Đổi mới và đóng góp
- Ứng dụng Module Camera Stereo 3D công nghiệp giá thành thấp: Thay vì sử dụng các hệ thống quét Laser 3D hoặc Depth Camera công nghiệp chuyên dụng (như Cognex, Keyence, Intel RealSense) có giá hàng chục triệu đồng, dự án khai thác hiệu quả module Dual Lens OV9750 đồng bộ phần cứng kết hợp thuật toán tối ưu trên OpenCV để đạt kết quả tương đương ở bài toán đo đạc hình học phẳng.
- Khắc phục triệt để điểm yếu thị sai của camera 2D: Nhờ thông tin độ sâu $Z$ được tính toán trực tiếp tại từng pixel, kích thước thực tế của vật thể được tính chính xác bất kể khoảng cách từ camera đến phôi thay đổi trong phạm vi hoạt động ($30 - 80\text{ cm}$), loại bỏ hoàn toàn hiện tượng "xa nhỏ - gần to" vốn làm sai lệch kết quả của hệ thống 2D.
- Chuẩn hóa quy trình xử lý hình thái học: Kết hợp thông minh giữa việc lấp đầy biên dạng (Contour Filling) và thuật toán xấp xỉ Ramer-Douglas-Peucker giúp hệ thống tự cô lập các nhiễu răng cưa biên, tăng độ ổn định khi trích xuất đỉnh lên tới $98%$.
Ứng dụng thực tế và triển khai
Kịch bản triển khai công nghiệp
- Dây chuyền phân loại đóng gói linh kiện cơ khí: Tự động tách các chi tiết máy dạng tấm (bulông lục giác, vòng đệm, tấm đệm vuông, tam giác) trên băng tải trước khi chuyển vào hộp đóng gói.
- Kiểm soát chất lượng hình học (QC Inspection): Tự động phát hiện các sản phẩm bị vỡ góc, mẻ cạnh hoặc cắt sai kích thước quy chuẩn thiết kế.
- Hệ thống cấp phôi tự động cho Robot: Cung cấp tọa độ tâm $(X, Y, Z)$ và góc xoay hướng cạnh (Orientation Angle $\theta$) cho cánh tay robot gắp phôi chính xác trong không gian 3D.
SƠ ĐỒ TRIỂN KHAI TRÊN BĂNG TẢI
+-----------------------------------------------------------------------------------------+
| [Stereo Camera 3D] |
| | |
| (Vùng quan sát) |
| v |
| ===========> [ Phôi vuông ] ===> [ Phôi tam giác ] ===> [ Phôi chữ nhật ] ===========> |
| (Băng tải) |
| | | | |
| v v v |
| [Cơ cấu gạt 1] [Cơ cấu gạt 2] [Cơ cấu gạt 3] |
| (Hộp Vuông) (Hộp Tam giác) (Hộp Chữ nhật) |
+-----------------------------------------------------------------------------------------+
Phân tích hiệu quả kinh tế (ROI)
- Chi phí đầu tư hệ thống nguyên mẫu: Khoảng $3.000.000 - 5.000.000\text{ VNĐ}$ (bao gồm camera stereo, giá đỡ quang học và module kết nối).
- Thay thế hoàn toàn 1 nhân công phân loại thủ công tại mỗi trạm băng tải. Thời gian thu hồi vốn (Payback Period) ước tính chỉ dưới 2 tháng vận hành liên tục.
Hạn chế và hướng phát triển
Hạn chế hiện tại
- Độ nhạy sáng: Khi môi trường có cường độ ánh sáng quá thấp hoặc ánh sáng chiếu nghiêng tạo bóng đổ đậm (Shadowing), thuật toán Canny dễ bắt nhầm bóng của vật thể làm sai lệch số đỉnh xấp xỉ.
- Hiện tượng chồng lấn: Hệ thống hiện tại tối ưu cho từng sản phẩm tách rời, chưa hỗ trợ phân tách các vật thể dính liền hoặc xếp chồng chéo lên nhau (Occlusion).
- Vật liệu phản quang: Bề mặt kim loại bóng loáng hoặc gương kính gây hiện tượng tán xạ ánh sáng, làm suy giảm độ chính xác của bản đồ Disparity.
Hướng phát triển tiếp theo
- Tích hợp Deep Learning: Bổ sung các mạng nơ-ron tích chập nhẹ (YOLOv8-Nano hoặc MobileNet-SSD) để phân loại đa vật thể phức tạp kết hợp cùng việc trích xuất chiều sâu Stereo 3D.
- Mở rộng Point Cloud 3D: Sử dụng thư viện PCL (Point Cloud Library) để tái tạo bề mặt 3D hoàn chỉnh, đo đạc thể tích ($V$) của các khối sản phẩm đa diện không phẳng.
- Đóng gói nhúng: Chuyển giao toàn bộ thuật toán sang các kit máy tính nhúng chuyên dụng như NVIDIA Jetson Nano / Raspberry Pi 4 kết hợp camera MIPI CSI-2 để tinh gọn kích thước hệ thống.
Đối tượng hưởng lợi
- Sinh viên & Giảng viên kỹ thuật: Đồ án cung cấp tài liệu mẫu mực về việc kết hợp giữa lý thuyết quang học Stereo Vision, xử lý ảnh OpenCV và lập trình thực chiến Python.
- Kỹ sư thị giác máy (Machine Vision Developers): Bộ code nguồn về hiệu chuẩn camera Pinhole, xấp xỉ đỉnh Ramer-Douglas-Peucker và đo đạc kích thước theo thời gian thực có thể tái sử dụng ngay trong các dự án công nghiệp.
- Doanh nghiệp vừa và nhỏ (SMEs): Tiếp cận giải pháp tự động hóa phân loại chi phí thấp, triển khai nhanh chóng mà không phụ thuộc vào các hệ sinh thái phần mềm đóng đắt đỏ.
Câu hỏi thường gặp
1. Yêu cầu phần cứng tối thiểu để triển khai giải pháp này là gì?
Hệ thống yêu cầu tối thiểu một CPU 2 nhân tốc độ $2.0\text{ GHz}$, RAM $2\text{GB}$, cổng USB 2.0 chuẩn UVC và module camera Stereo có đồng bộ phần cứng (Hardware Synchronization) như OV9750 hoặc tương đương để đảm bảo hai khung hình trái/phải chụp ở cùng một thời điểm.
2. Tại sao thuật toán Ramer-Douglas-Peucker lại vượt trội trong việc đếm đỉnh hình học?
Thuật toán Ramer-Douglas-Peucker thực hiện giảm số lượng điểm trên đường cong biên dựa trên khoảng cách ngưỡng $\epsilon = k \cdot P$ ($P$ là chu vi). Cơ chế này loại bỏ hoàn toàn các điểm gợn li ti do nhiễu số hoặc pixel răng cưa, chỉ giữ lại các điểm uốn thực sự tại góc đa giác, giúp việc đếm đỉnh đạt độ ổn định gần như tuyệt đối.
3. Làm thế nào để loại bỏ ảnh hưởng của ánh sáng môi trường thay đổi?
Cần thiết lập buồng chụp kín có nguồn sáng nhân tạo cố định (LED Ring Light hoặc đèn khuếch tán trắng); đồng thời trong mã nguồn Python, cố định các thông số phần cứng của camera (khóa cân bằng trắng tự động auto-white-balance = 0 và khóa độ phơi sáng exposure).
4. Hệ thống có phân loại được sản phẩm hình tròn không?
Hoàn toàn có thể. Với hình tròn, sau khi xấp xỉ đa giác, số đỉnh thu được sẽ rất lớn ($N > 6$). Khi đó ta sử dụng chỉ số độ tròn (Circularity Metric): $C = \frac{4\pi \cdot \text{Area}}{\text{Perimeter}^2}$. Nếu $C \approx 1.0$, hệ thống tự động gắn nhãn là hình tròn.
5. Chi phí linh kiện và thời gian lắp đặt hệ thống mất bao lâu?
Tổng chi phí linh kiện phần cứng (Module Stereo OV9750, khung gá đỡ nhôm định hình, dây cáp) dao động từ $2.500.000$ đến $3.500.000\text{ VNĐ}$. Thời gian lắp đặt, cân chỉnh quang học bàn cờ và cài đặt môi trường phần mềm mất khoảng 2 - 3 ngày làm việc.
Kết luận
Đề tài tốt nghiệp "Ứ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" đã hoàn thành xuất sắc các mục tiêu nghiên cứu và ứng dụng thực tiễn đề ra. Bằng việc kết hợp hài hòa giữa công nghệ Stereo Camera 3D đồng bộ và các giải thuật thị giác máy tính kinh điển (Canny, Ramer-Douglas-Peucker, SAD Block Matching), hệ thống đã chứng minh khả năng phân loại chính xác $96.67%$ các dạng phôi hình học cơ bản cùng sai số đo kích thước thực tế chỉ $\pm 1.5\text{ mm}$. Đây là minh chứng rõ nét cho thấy các giải pháp mã nguồn mở hoàn toàn có khả năng thay thế các thiết bị công nghiệp đắt tiền trong các dây chuyền phân loại tự động hóa tại các doanh nghiệp sản xuất hiện đại.