AI-POWERED DOCS
What do you want to know?
Classification: một nhãn cho mỗi vùng
Bộ phân loại (classifier) xem xét một vùng đã được cắt và trả lời một câu hỏi duy nhất: đây là loại nào? Đạt hay không đạt. Trống hay đầy. Đỏ, xanh lá, hay xanh dương. Đây là loại kiểm tra đơn giản nhất, nhanh nhất, và là lựa chọn mặc định phù hợp trừ khi bạn cần biết vị trí của lỗi.
Việc thiết lập một classifier được xây dựng trên một hệ thống phân cấp đơn giản: Types sở hữu Classes, và Types được đóng dấu lên hình ảnh dưới dạng ROIs.
Hãy nghĩ về nó như một hệ thống con dấu cao su. Inspection Type là chính con dấu (thiết kế). ROIs là các dấu mà bạn đóng lên trang giấy (hình ảnh). Mỗi dấu kế thừa cùng một thiết kế, cùng một danh sách class, và cùng một mô hình đã được huấn luyện.
OV10i chỉ chạy các mô hình classifier. Nếu việc kiểm tra của bạn cần mặt nạ ở cấp độ pixel (đếm, đo diện tích, định vị lỗi), hãy nâng cấp lên OV20i hoặc OV80i, vốn hỗ trợ segmentation.
Ba khái niệm
Trước khi có thể huấn luyện một mô hình AI, camera cần biết nơi để nhìn, những kết quả khả dĩ là gì, và cách mỗi vùng cắt sẽ được đánh giá. Ba câu hỏi đó tương ứng với ba khái niệm, và chúng lồng vào nhau theo một cách rất cụ thể.
Inspection Type
A named bucket. Holds one shared dataset, one shared list of classes, and one trained AI model.
Classes
The vocabulary of possible outcomes for this inspection. Defined once on the type.
Region of Interest (ROI)
A rectangle drawn on the image. Many ROIs can share one type and, therefore, one dataset and one model.
Mô Hình Tư Duy: một type sở hữu các classes và các ROIs
Inspection Type là một thùng chứa. Nó chứa một bộ dữ liệu chung, một danh sách class chung, và một mô hình AI đã huấn luyện. Bạn sau đó đóng dấu thùng chứa đó lên hình ảnh ở nhiều vị trí, những con dấu đó chính là ROIs. Mỗi ROI cùng type kế thừa các classes giống nhau và được đánh giá bởi cùng một mô hình.
- Inspection Type là thùng chứa.
- Classes là từ vựng kết quả.
- ROI là một vị trí trên hình ảnh.
Đối với classifier: một nhãn cho mỗi ROI, được chọn từ danh sách class
Một classifier lấy mỗi vùng cắt ROI và đặt một câu hỏi duy nhất: vùng này trông giống class nào? Có hay không. Đạt hay không đạt. Tốt, trầy xước, hay nứt vỡ. Đầu ra cho mỗi ROI là một tên class kèm theo điểm tin cậy (confidence score), một câu trả lời phân loại rõ ràng mà phần còn lại của pipeline có thể hành động.
Ví dụ thực tế: kiểm tra sự hiện diện của ốc vít trên PCB
Hãy xem xét một PCB với sáu vị trí ốc vít. Bốn ốc vít có mặt, một bị thiếu, một bị hư hỏng. Bạn sẽ cấu hình như sau:
- Type:
Screws(6 ROIs, classifier) - Classes:
present,absent,damaged - ROIs:
Screw_1đếnScrew_6, mỗi cái được gán một trong ba classes
Đầu ra cho mỗi ROI là một nhãn cộng với điểm tin cậy:
| ROI | Nhãn | Độ tin cậy |
|---|---|---|
| Screw_1 | present | 0.98 |
| Screw_2 | absent | 0.94 |
| Screw_3 | present | 0.97 |
| Screw_4 | present | 0.96 |
| Screw_5 | present | 0.95 |
| Screw_6 | damaged | 0.82 |
Ba điều cần ghi nhớ từ ví dụ này:
- Một nhãn cho mỗi ROI. Classifier gán chính xác một class cho mỗi vùng cắt, một lựa chọn từ dropdown, không phải tác vụ tô vẽ. Đầu ra là
class_namecộng với điểmconfidence. - Type là chủ sở hữu. Cả sáu ROIs chia sẻ cùng bộ dữ liệu Screws. Chụp một hình ảnh cho bạn sáu mẫu huấn luyện mới, và một mô hình đã huấn luyện quyết định cho cả sáu.
- ROIs chỉ là các vị trí. Vẽ chặt (dưới 512 × 512 px). Sử dụng Duplicate để đóng dấu
Screw_1 → Screw_2 → Screw_3, mỗi cái tự động kế thừa danh sách class.
Phân tích sâu: cách các classes hoạt động
Classes thuộc về type, không phải ROI
Đây là điều quan trọng nhất cần ghi nhớ. Classes là một thuộc tính của Inspection Type, có nghĩa là việc thêm hoặc xóa một class sẽ thay đổi tùy chọn nhãn cho mỗi ROI sử dụng type đó, một cách tự động.
- Định nghĩa một lần. Nhấp + Add class trong bảng Classes. Đặt tên (ví dụ
stripped_head) và chọn màu. - Lan truyền tức thì. Class mới xuất hiện trong dropdown trên mỗi ROI của type đó. Không cần cấu hình từng ROI.
- Gán nhãn lại khi cần. Các hình ảnh huấn luyện hiện có giữ nguyên nhãn của chúng; bạn có thể xem lại bất kỳ hình ảnh nào và phân loại lại sang class mới.
- Giữ tinh gọn. Bắt đầu với bộ classes nhỏ nhất nắm bắt được các quyết định của bạn. Hai classes (
pass/fail) thường hoạt động tốt hơn năm classes mơ hồ.
Phân tích sâu: cách các ROIs hoạt động
Vùng nhỏ hơn thắng. Tạo mỗi ROI vừa đủ lớn để chứa tính năng cần kiểm tra. ROIs nhỏ hơn nghĩa là ít dữ liệu huấn luyện hơn, lặp nhanh hơn, và quyết định AI chính xác hơn, tính năng chiếm ưu thế trong vùng cắt thay vì bị lạc trong nền, và không có gì bị thu nhỏ.
Nhỏ, cụ thể, và nhiều
ROI cho camera biết nơi cần cắt. Vùng cắt càng chặt, tín hiệu mô hình nhận được càng rõ. Vì các ROIs chia sẻ cùng một type, việc thêm nhiều ROIs nhân lên dữ liệu huấn luyện của bạn mà không nhân lên công việc.
- Giữ vùng cắt dưới 512 × 512 px. Bất cứ thứ gì lớn hơn sẽ bị thu nhỏ để vừa với đầu vào mô hình, và chi tiết bị mất vĩnh viễn.
- Chặt là tốt hơn. Một ROI nhỏ xung quanh một tính năng đơn lẻ cho mô hình một tín hiệu rõ ràng và cần ít dữ liệu huấn luyện hơn để hội tụ.
- Nhiều ROIs, một type. 10 ốc vít → 10 ROIs trên cùng type Screws. Một lần chụp trở thành mười mẫu huấn luyện, và một mô hình xử lý cả mười khi suy luận.
- Sử dụng Duplicate. Đặt tên ROI đầu tiên một cách có ý nghĩa (
Screw_Top_Left). Duplicate tự động tăng số trong tên để bạn không phải gõ lại. - Cần phủ toàn bộ? Đừng vẽ một ROI khổng lồ, hãy lát một lưới các ROIs nhỏ. Mỗi cái giữ được độ phân giải đầy đủ.
Luồng dữ liệu: mỗi ROI thực hiện hành trình riêng qua mô hình
Khi chạy, camera cắt mỗi ROI ra khỏi toàn bộ hình ảnh, đưa vào mô hình đã huấn luyện từng cái một, và ghi lại class nào thắng cùng với điểm tin cậy. Kết quả là một nhãn cho mỗi ROI, mỗi lần chụp.
- Chụp toàn bộ khung hình với tất cả ROIs đã được đánh dấu.
- Cắt riêng lẻ để mỗi ROI trở thành hình ảnh nhỏ riêng.
- Mô hình classifier chọn một class cộng với điểm tin cậy cho mỗi vùng cắt.
- Đầu ra là một bảng ROI → nhãn → độ tin cậy. Logic pass/fail trên bảng đó tùy thuộc vào các quy tắc IO Block của bạn.
Tóm tắt thiết lập
Một danh sách kiểm tra nhanh trước khi huấn luyện. Nếu mỗi mục dưới đây đều đúng, classifier của bạn sẽ có nền tảng vững chắc.
- Một Inspection Type cho mỗi quyết định. Đừng trộn "screws" và "labels" trong cùng một type, hãy cho mỗi cái type riêng để chúng có classes, dataset, và mô hình riêng.
- Classes được định nghĩa ở cấp type. Mỗi ROI đều có cùng dropdown. Nếu một tùy chọn không áp dụng cho mọi ROI, có lẽ nó thuộc về một type khác.
- ROIs được vẽ chặt và đặt tên mô tả.
Screw_Top_Lefttốt hơnNew ROI. Giữ mỗi ROI vừa đủ lớn cho tính năng của nó, và dưới 512 × 512 px. - Alignment hoạt động trước. Nếu chi tiết bị dịch chuyển hoặc xoay, aligner di chuyển ROIs của bạn theo. ROIs chặt chỉ hoạt động khi alignment vững chắc.
- 3 đến 5 hình ảnh huấn luyện cho mỗi class để bắt đầu. Huấn luyện, tìm các trường hợp lỗi, thêm dữ liệu có mục tiêu, huấn luyện lại. Hai đến bốn lần lặp là điển hình.
- Mỗi nhãn được kiểm tra hai lần. Một nhãn sai trong năm hình ảnh huấn luyện là 20% bị nhiễm bẩn. Nhấp View All ROIs trước mỗi lần huấn luyện.
Tiếp theo là gì
- Regions of Interest (ROIs), hướng dẫn thực hành để vẽ ROIs.
- Huấn Luyện AI Của Bạn, quy trình gán nhãn và huấn luyện.
- Outputs, cách kết nối các quyết định pass/fail vào IO Block.