AI-POWERED DOCS
What do you want to know?
Huấn Luyện Segmenter
Hướng dẫn này chỉ cho bạn cách thiết lập và cấu hình tính năng segmentation của OV80i để tự động phát hiện, đo lường và phân tích các đặc điểm hoặc lỗi cụ thể trên các bộ phận của bạn. Sử dụng segmentation khi bạn cần xác định các hình dạng bất thường, đo diện tích hoặc phát hiện các mẫu cụ thể mà không thể xử lý bằng classification đơn giản.
Xem chủ đề này trong thực tế: Cách tạo recipe segmentation trong vài phút
Khi Nào Sử Dụng Segmentation: Lỗi bề mặt, tràn chất lỏng, hình dạng bất thường, đo diện tích, phát hiện mẫu, hoặc bất kỳ đặc điểm nào yêu cầu độ chính xác ở cấp độ pixel.
Trước Khi Bắt Đầu
Những Gì Bạn Cần
- Hệ thống camera OV80i đã được thiết lập và kết nối
- Các bộ phận thử nghiệm có đặc điểm bạn muốn segment (ví dụ: tấm giấy có vết bút chì)
- Điều kiện ánh sáng tốt cho ứng dụng cụ thể của bạn
- 15-20 hình ảnh mẫu để huấn luyện
Bước 1: Tạo Recipe Segmentation
1.1 Bắt Đầu Recipe Mới
- Điều hướng đến trang All Recipes
- Nhấp
+ New Recipe(góc trên bên phải)
- Nhập Tên Recipe: Sử dụng tên mô tả như "Pencil_Mark_Detection" hoặc "Surface_Defect_Segmentation"
- Chọn Loại Recipe: Chọn "Segmentation" từ menu thả xuống
- Nhấp
OKđể tạo
1.2 Kích Hoạt Recipe
- Tìm recipe của bạn trong danh sách (hiển thị là "Inactive")
- Nhấp
Activate - Nhấp
Activate and go to editorđể xác nhận và khởi chạy trình chỉnh sửa recipe
✅ Kết Quả: Recipe hiện đã "Active" với Recipe Editor được hiển thị.
Bước 2: Cấu Hình Cài Đặt Camera
2.1 Mở Cấu Hình Imaging
- Nhấp
Configure Imaging(phía dưới bên trái)

2.2 Tối Ưu Hóa Focus Cho Segmentation
Focus là yếu tố quan trọng để phát hiện cạnh chính xác:
- Đặt bộ phận thử nghiệm trong khung hình của camera
- Điều chỉnh Focus cho đến khi các cạnh sắc nét và rõ ràng
- Thử nghiệm với các bộ phận khác nhau để đảm bảo độ focus nhất quán trên toàn dải
- Focus vào bề mặt nơi các lỗi/đặc điểm sẽ xuất hiện
- Đảm bảo toàn bộ khu vực quan tâm đều được focus sắc nét
- Hơi quá sắc nét vẫn tốt hơn là focus mờ đối với segmentation
2.3 Thiết Lập Exposure Tối Ưu
Exposure phù hợp đảm bảo phát hiện đặc điểm nhất quán:
- Điều chỉnh Exposure để cân bằng ánh sáng
- Tránh các khu vực quá sáng (vùng trắng hoàn toàn)
- Đảm bảo các đặc điểm có thể nhìn thấy với độ tương phản tốt
Hướng Dẫn Exposure Cho Segmentation:
- Các đặc điểm cần có độ tương phản rõ ràng với nền
- Tránh các bóng có thể bị nhầm lẫn với lỗi
- Thử nghiệm với nhiều điều kiện bộ phận khác nhau (sạch, bẩn, mòn)
2.4 Cấu Hình Mẫu Ánh Sáng LED
Chọn ánh sáng dựa trên đối tượng bạn đang segment:
| Loại Đặc Điểm | Ánh Sáng Khuyến Nghị | Lý Do |
|---|---|---|
| Lỗi bề mặt | Bright field | Chiếu sáng đều làm lộ rõ các bất thường trên bề mặt |
| Vết xước/nứt | Side lighting | Tạo bóng làm nổi bật các lỗi dạng đường thẳng |
| Đặc điểm nhô cao | Dark field | Làm cho các vùng nhô cao nổi bật so với nền |
| Chất lỏng tràn | Side lighting | Hiển thị sự khác biệt về kết cấu bề mặt |
2.5 Điều Chỉnh Gamma để Tăng Cường Đặc Trưng
- Tăng Gamma để cải thiện độ tương phản giữa các đặc trưng và nền
- Thử nghiệm các giá trị khác nhau trong khi quan sát các đặc trưng mục tiêu
- Tìm cài đặt giúp các đặc trưng dễ phân biệt nhất
2.6 Lưu Cấu Hình
- Xem lại các cài đặt trong bản xem trước trực tiếp
- Nhấp vào
Save Imaging Settings

✅ Điểm Kiểm Tra: Các đặc trưng phải hiển thị rõ ràng với độ tương phản tốt.
Bước 3: Thiết Lập Template và Alignment
3.1 Điều Hướng đến Phần Template
Nhấp vào "Template Image and Alignment" trong menu breadcrumb
3.2 Cấu Hình Alignment (Tùy Chọn)
![]()
Với ví dụ này, chúng ta sẽ bỏ qua alignment:
- Chọn
Skip Alignernếu các bộ phận được định vị nhất quán - Nhấp vào
Save

Khi Nào Nên Dùng Aligner: Bật khi các bộ phận đến với vị trí hoặc hướng thay đổi có thể ảnh hưởng đến độ chính xác của segmentation.
Bước 4: Xác Định Vùng Kiểm Tra
4.1 Điều Hướng đến Inspection Setup
Nhấp vào "Inspection Setup" trong menu breadcrumb
4.2 Thiết Lập Region of Interest (ROI)
ROI xác định nơi segmentation sẽ diễn ra:
- Đặt một bộ phận thử nghiệm trong tầm nhìn của camera
- Kéo các góc ROI để đóng khung vùng kiểm tra
- Định cỡ ROI phù hợp:
- Bao gồm tất cả các khu vực mà đặc trưng có thể xuất hiện
- Loại trừ các vùng nền không cần thiết
- Để lại khoảng đệm nhỏ xung quanh vị trí đặc trưng dự kiến

4.3 Thực Hành Tốt Nhất về ROI cho Segmentation
| Nên | Không Nên |
|---|---|
| Bao phủ toàn bộ bề mặt kiểm tra | Bao gồm các đối tượng nền không liên quan |
| Để lại khoảng đệm quanh các cạnh | Tạo ROI quá nhỏ cho sự thay đổi đặc trưng |
| Cân nhắc sự thay đổi vị trí bộ phận | Chồng lấn với đồ gá hoặc dụng cụ |
| Kiểm tra với các đặc trưng lớn nhất dự kiến | Bao gồm các khu vực có dấu vĩnh viễn |
4.4 Lưu Cài Đặt ROI
- Xác minh ROI bao phủ tất cả các khu vực mục tiêu
- Nhấp vào
Save
Bước 5: Gắn Nhãn Dữ Liệu Huấn Luyện
5.1 Điều Hướng đến Label And Train
Nhấp vào "Label And Train" trong menu breadcrumb
5.2 Cấu Hình Inspection Class
- Nhấp vào
Editbên dưới Inspection Types - Đổi tên class để phù hợp với đặc trưng của bạn (ví dụ: "Pencil Mark", "Surface Defect", "Spill Area")
- Chọn màu class để nhận diện trực quan
- Lưu các thay đổi
5.3 Chụp và Gắn Nhãn Hình Ảnh Huấn Luyện
Bạn cần tối thiểu 10 hình ảnh được gắn nhãn, nhưng khuyến nghị 15-20:
Quy Trình Chụp Hình
- Đặt bộ phận thử nghiệm đầu tiên vào khu vực kiểm tra
- Chụp hình bằng giao diện camera
- Sử dụng công cụ Brush để tô lên các đặc trưng mục tiêu
- Tô chính xác:
- Bao phủ toàn bộ vùng đặc trưng
- Giữ trong ranh giới đặc trưng
- Không tô vào vùng nền
- Sử dụng phương pháp gắn nhãn nhất quán
- Nhấp vào
Save Annotations - Lặp lại với bộ phận tiếp theo

Phương Pháp Gắn Nhãn Tốt Nhất
| Gắn Nhãn Tốt | Gắn Nhãn Kém |
|---|---|
| Ranh giới đặc trưng chính xác | Vẽ cạnh cẩu thả |
| Định nghĩa đặc trưng nhất quán | Tiêu chí không nhất quán |
| Bao phủ đầy đủ đặc trưng | Thiếu vùng đặc trưng |
| Nền sạch (không vẽ) | Vẽ nhầm vào nền |
5.4 Đa Dạng Dữ Liệu Huấn Luyện
Đảm bảo tập huấn luyện của bạn bao gồm:
- Kích thước đặc trưng khác nhau
- Cường độ đặc trưng đa dạng
- Nhiều vị trí khác nhau trong ROI
- Điều kiện ánh sáng khác nhau (nếu có)
- Các trường hợp biên và ví dụ ranh giới
5.5 Kiểm Tra Chất Lượng Dữ Liệu Huấn Luyện
- Xem lại tất cả hình ảnh đã gắn nhãn
- Xác minh phương pháp gắn nhãn nhất quán
- Xóa bất kỳ ví dụ nào được gắn nhãn sai
- Thêm ví dụ nếu cần
Bước 6: Huấn Luyện Mô Hình Segmentation
6.1 Bắt Đầu Quá Trình Huấn Luyện
- Nhấn
Return to Livekhi hoàn tất việc gắn nhãn - Nhấn
Train Segmentation Model

6.2 Cấu Hình Tham Số Huấn Luyện
- Đặt Số Lần Lặp (Iterations):
- Huấn luyện nhanh: 50-100 lần lặp (5-10 phút)
- Chất lượng sản xuất: 200-500 lần lặp (15-30 phút)
- Độ chính xác cao: 500+ lần lặp (30+ phút)
- Nhấn
Start Training
6.3 Theo Dõi Tiến Trình Huấn Luyện
Tiến trình huấn luyện hiển thị:
- Số lần lặp hiện tại
- Phần trăm độ chính xác huấn luyện
- Thời gian hoàn thành ước tính

Điều Khiển Huấn Luyện:
- Abort Training: Dừng nếu có sự cố
- Finish Training Early: Dừng khi độ chính xác đã đủ

- Độ chính xác 85% thường phù hợp cho sản xuất
- Huấn luyện sẽ tự động dừng khi đạt độ chính xác mục tiêu
- Nhiều dữ liệu huấn luyện thường tốt hơn nhiều lần lặp
Bước 7: Kiểm Tra Hiệu Suất Segmentation
7.1 Truy Cập Live Preview
- Nhấn
Live Previewsau khi huấn luyện hoàn tất - Kiểm tra với các sản phẩm khác nhau:
- Sản phẩm đạt chuẩn (không hoặc ít segmentation)
- Sản phẩm lỗi đã biết (sẽ làm nổi bật các lỗi)
- Các trường hợp biên và ví dụ ranh giới

7.2 Đánh Giá Kết Quả
Kiểm tra chất lượng segmentation:
| Chỉ Số | Hiệu Suất Tốt | Cần Cải Thiện |
|---|---|---|
| Accuracy | Phát hiện đặc trưng thực một cách nhất quán | Bỏ sót các đặc trưng rõ ràng |
| Precision | Ít false positive | Nhiều vùng nền bị làm nổi bật |
| Chất Lượng Cạnh | Ranh giới sạch, chính xác | Cạnh thô hoặc không chính xác |
| Tính Nhất Quán | Kết quả tương tự khi kiểm tra lặp lại | Kết quả thay đổi nhiều |
7.3 Khắc Phục Kết Quả Kém
| Vấn Đề | Nguyên Nhân Có Thể | Giải Pháp |
|---|---|---|
| Thiếu đặc trưng | Dữ liệu huấn luyện không đủ | Thêm nhiều ví dụ được gắn nhãn |
| False positive | Ánh sáng/độ tương phản kém | Cải thiện cài đặt chụp ảnh |
| Cạnh thô | Chất lượng ảnh kém | Cải thiện tiêu cự/ánh sáng |
| Kết quả không nhất quán | Thiếu đa dạng trong huấn luyện | Thêm nhiều ví dụ đa dạng hơn |
Bước 8: Cấu Hình Logic Pass/Fail
8.1 Truy Cập IO Block
- Đảm bảo mô hình AI hiển thị màu xanh (trạng thái đã được huấn luyện)
- Điều hướng đến IO Block qua menu breadcrumb
8.2 Xóa Logic Mặc Định
- Xóa node Classification Block Logic
- Chuẩn bị xây dựng logic segmentation tùy chỉnh
8.3 Xây Dựng Flow Segmentation
Tạo flow Node-RED với các thành phần sau:
- Kéo các node từ panel bên trái:
- Function node (cho logic)
- Debug node (để kiểm tra)
- Node Pass/Fail cuối cùng
- Kết nối các node bằng dây

8.4 Cấu Hình Logic Theo Nhu Cầu Của Bạn
Phương Án A: Pass nếu Không Phát Hiện Lỗi
Trường Hợp Sử Dụng: Kiểm tra chất lượng khi bất kỳ đặc điểm nào được phát hiện đều là fail
Mã Function Node:
const allBlobs = msg.payload.segmentation.blobs;
const results = allBlobs.length <1; // Pass if no features found
msg.payload = results;
return msg;
Phương Án B: Pass nếu Chỉ Có Lỗi Nhỏ
Trường Hợp Sử Dụng: Chấp nhận các lỗi nhỏ dưới ngưỡng kích thước
Mã Function Node:
const threshold = 500; // Adjust pixel count threshold
const allBlobs = msg.payload.segmentation.blobs;
const allUnderThreshold = allBlobs.every(blob => blob.pixel_count < threshold);
msg.payload = allUnderThreshold;
return msg;
Phương Án C: Pass nếu Tổng Diện Tích Lỗi Nhỏ
Trường Hợp Sử Dụng: Chấp nhận các chi tiết có tổng diện tích lỗi hạn chế
Mã Function Node:
const threshold = 5000; // Adjust total pixel threshold
const allBlobs = msg.payload.segmentation.blobs;
const totalArea = allBlobs.reduce((sum, blob) => sum + blob.pixel_count, 0);
msg.payload = totalArea < threshold;
return msg;
8.5 Cấu Hình Function Node
- Nhấp đúp vào Function node
- Sao chép mã phù hợp từ các ví dụ ở trên
- Dán vào tab "On Message"
- Điều chỉnh giá trị ngưỡng cho ứng dụng của bạn
- Nhấp
Done
8.6 Triển Khai và Kiểm Tra Logic
- Nhấp
Deployđể kích hoạt logic - Điều hướng đến HMI để kiểm tra
- Kiểm tra với các chi tiết tốt và xấu đã biết
- Xác minh kết quả pass/fail khớp với kỳ vọng
Bước 9: Xác Thực Sản Xuất
9.1 Kiểm Tra Toàn Diện
Kiểm tra hệ thống segmentation với:
| Trường Hợp Kiểm Tra | Kết Quả Mong Đợi | Hành Động Nếu Thất Bại |
|---|---|---|
| Chi tiết sạch | Pass (không có segmentation) | Điều chỉnh ngưỡng hoặc huấn luyện lại |
| Lỗi nhỏ | Pass/Fail theo tiêu chí của bạn | Tinh chỉnh các tham số logic |
| Lỗi lớn | Fail (segmentation rõ ràng) | Kiểm tra độ chính xác của mô hình |
| Trường hợp biên | Hành vi nhất quán | Thêm dữ liệu huấn luyện |
9.2 Xác Thực Hiệu Suất
Theo dõi các chỉ số sau:
- Thời gian xử lý mỗi lần kiểm tra
- Tính nhất quán qua nhiều lần kiểm tra
- Độ chính xác với ánh sáng sản xuất
- Độ tin cậy khi hoạt động kéo dài
9.3 Điều Chỉnh Cuối Cùng
Nếu hiệu suất không đạt yêu cầu:
- Thêm dữ liệu huấn luyện cho các trường hợp biên
- Điều chỉnh giá trị ngưỡng trong logic
- Cải thiện điều kiện chụp ảnh
- Huấn luyện lại mô hình với các vòng lặp bổ sung
Thành Công! Hệ Thống Segmentation Của Bạn Đã Sẵn Sàng
Bạn hiện đã có một hệ thống segmentation hoạt động với khả năng:
- Tự động phát hiện các đặc điểm hoặc lỗi cụ thể
- Đo diện tích với độ chính xác ở mức pixel
- Áp dụng logic pass/fail tùy chỉnh dựa trên yêu cầu của bạn
- Tích hợp với hệ thống sản xuất qua điều khiển I/O
Tùy Chọn Cấu Hình Nâng Cao
Logic Ngưỡng Tùy Chỉnh
Đối với các tiêu chí chấp nhận phức tạp, hãy kết hợp nhiều điều kiện:
const smallThreshold = 200;
const largeThreshold = 1000;
const maxTotalArea = 3000;
const allBlobs = msg.payload.segmentation.blobs;
const smallBlobs = allBlobs.filter(blob => blob.pixel_count < smallThreshold);
const largeBlobs = allBlobs.filter(blob => blob.pixel_count > largeThreshold);
const totalArea = allBlobs.reduce((sum, blob) => sum + blob.pixel_c