Skip to main content

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ỉ hỗ trợ classifier

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ể.

01 / Concept

Inspection Type

A named bucket. Holds one shared dataset, one shared list of classes, and one trained AI model.

02 / Concept

Classes

The vocabulary of possible outcomes for this inspection. Defined once on the type.

03 / Concept

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 TYPEone bucket1 dataset · 1 model · N ROIsCLASSES · DEFINED ONCEclass_aclass_bclass_c+ addAdd or edit classes here andevery ROI on this type updates.Single source of truth.ROIs · PLACED ON IMAGEroi_1roi_2roi_3roi_4roi_5+ add ROIEach ROI is a tight crop at a specificlocation, evaluated by the same model.All share one dataset.classes applied to ROIs
  • 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:

OV-MCU · v2Screw_1 · presentScrew_2 · absentScrew_3 · presentScrew_4 · presentScrew_5 · presentScrew_6 · damaged
  • Type: Screws (6 ROIs, classifier)
  • Classes: present, absent, damaged
  • ROIs: Screw_1 đến Screw_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:

ROINhãnĐộ tin cậy
Screw_1present0.98
Screw_2absent0.94
Screw_3present0.97
Screw_4present0.96
Screw_5present0.95
Screw_6damaged0.82

Ba điều cần ghi nhớ từ ví dụ này:

  1. 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_name cộng với điểm confidence.
  2. 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.
  3. 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.

TYPE · SCREWS · CLASSESpresentabsentdamagedstripped_headNEWAdd a class here →Screw_1LABELpresent ▾other options:· absent · damaged· stripped_head ← newScrew_2LABELabsent ▾other options:· present · damaged· stripped_head ← newScrew_3LABELpresent ▾other options:· absent · damaged· stripped_head ← new…AND EVERY OTHER ROI OF THIS TYPE
  1. Đị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.
  2. 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.
  3. 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.
  4. 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

Quy Tắc Vàng của ROIs

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.

GOOD · TIGHT CROP60 × 60 px · feature dominatesBAD · TOO LARGEscrew is a speck · downscaledDUPLICATE PATTERNScrew_1Screw_2Screw_3…NName the first ROI, click Duplicate, and the rest auto-increment.All share the same type → same classes, same dataset, same model.10 ROIs × 1 CAPTURE = 10 TRAINING SAMPLES
  1. 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.
  2. 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ụ.
  3. 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.
  4. 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.
  5. 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.

1 · CAPTUREFull frame + 6 ROIs2 · CROP INDIVIDUALLYScrew_1Screw_2Screw_3Screw_4Screw_5Screw_6max 512 × 512 px each3 · CLASSIFIER MODELScrews · trained modelpicks 1 class + confidence4 · OUTPUTScrew_1present 0.98Screw_2absent 0.94Screw_3present 0.97Screw_4present 0.99Screw_5present 0.96Screw_6damaged 0.82resultFAIL
  1. Chụp toàn bộ khung hình với tất cả ROIs đã được đánh dấu.
  2. Cắt riêng lẻ để mỗi ROI trở thành hình ảnh nhỏ riêng.
  3. 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.
  4. Đầ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_Left tốt hơn New 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ì