AI 驅動文件
您想了解什麼?
分割:為每個畫素分配標籤
分割器會檢視裁剪區域並回答一個更豐富的問題:不僅是這裡是什麼,還包括在哪裡以及有多少。劃痕究竟在哪裡?汙漬有多大?托盤裡有幾粒藥片?它以分類器的速度換取逐畫素的掩碼,提供測量、計數或定位缺陷所需的空間細節。
其設定基於與分類器相同的層級結構:Type 擁有 Class,而 Type 以 ROI 的形式標記到影象上。
把它想象成一套數字油畫套件。Inspection Type 是套件(調色盤加上形狀輪廓)。Class 是你可以選擇的顏料顏色。ROI 是你為每次捕獲繪製的畫布,每個繪製的畫素最終都會被精確地分配到一個類別,包括隱式的 background。
三個概念
在訓練 AI 模型之前,相機需要知道在哪裡檢視、有哪些可能的結果,以及如何評估每個裁剪區域。這三個問題對應三個概念,並以非常特定的方式巢狀。
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.
心智模型:一個 type 擁有 classes 和 ROIs
Inspection Type 是一個容器。它持有一個共享的資料集、一個共享的類別列表和一個訓練好的 AI 模型。然後,你將該容器在影象上的多個位置標記下來,這些標記就是 ROI。同一型別的每個 ROI 都繼承相同的類別,並由相同的模型進行評估。
- Inspection Type 是容器。
- Class 是結果詞彙表。
- ROI 是影象上的位置。
對於分割器:為每個畫素分配標籤——繪製,而非選擇
分割器對每個 ROI 裁剪區域執行比選擇類別更豐富的操作:它為每個畫素打標籤。你不是選擇一個下拉答案,而是在訓練影象上將缺陷塗繪出來,模型則學習每個類別的形狀。每個 ROI 的輸出是一個掩碼——一張可用於測量、定位和計數的逐畫素對映。
例項演示:表面缺陷檢測
設想一塊拉絲金屬表面上有兩道劃痕、一處凹痕和一塊汙漬。你可以這樣配置:
- Type:
Surface Quality(1 個 ROI,分割器) - Classes:
background(隱式)、scratch、dent、stain - ROI:
Surface_Top(覆蓋可檢測區域)
你不需要為整個區域選擇一個標籤,而是用每種類別的顏色逐一塗繪每個缺陷。模型輸出是一個掩碼,按類別細分:
| Class | 覆蓋率 |
|---|---|
| background | 93.5% |
| scratch | 3.1% |
| dent | 1.4% |
| stain | 2.0% |
從這個例子中需要內化三點:
- 繪製,而非選擇。 你不是為整個 ROI 選擇一個標籤,而是逐畫素塗繪每個缺陷。模型學習每個類別的形狀,而不僅僅是其是否存在。
- ROI 是畫素疆域。 分割器在 ROI 內部檢視併為每個畫素打標籤。表面積越大 = 需要評估的畫素越多。仍要遵循
512 × 512規則,如果區域過大則使用網格切片。 - Class 是缺陷型別。 不是透過/失敗,每個類別都是你想要定位的不同物件:
scratch、dent、stain。再加上一個隱式的background。
深入瞭解:類的行為方式
每個類都是調色盤上的一種顏色
在分割器中,類不是從下拉選單中選擇的標籤,而是你塗抹的顏料。選擇一個類,你的畫筆就開始用該類的顏色書寫畫素。ROI 中的每個畫素最終都被精確地分配給一個類,包括預設的 background。
- 在型別上定義一次。 新增一個類(例如
burn_mark)併為其指定顏色。該型別的每個 ROI 現在都可以在其調色盤上使用此顏色。 - Background 是免費的。 你不需要塗抹"這裡沒問題"的畫素。任何未塗抹的畫素自動為
background。 - 每個畫素一個類。 在
scratch上用dent塗抹會替換標籤,類不能在單個畫素上疊加。 - 從簡單開始。 兩到三個缺陷類通常比六個模糊的類表現更好。合併相似的缺陷,直到模型難以區分它們,然後再拆分。
深入瞭解:ROI 的行為方式
區域越小越好。 讓每個 ROI 剛好足夠大以包含特徵。更小的 ROI 意味著更少的訓練資料、更快的迭代和更準確的 AI 決策,特徵會主導裁剪區域而不是淹沒在背景中,並且不會被縮小。
仍然要小,仍然要具體,即使對於分割器也是如此
很容易想在整個表面上繪製一個巨大的 ROI,但黃金法則仍然適用。分割器的 ROI 會被縮小以適應模型輸入,就像分類器的一樣,一個僅 20 畫素寬的缺陷在你將 2000 畫素寬的 ROI 縮小到 512 時會消失。
- 將每個 ROI 保持在 512 × 512 px 以下。 超過這個尺寸,細節會因縮小而永久丟失。小缺陷會變得不可見。
- 緊湊的裁剪意味著緊湊的掩膜。 小的 ROI 保持每個畫素的全解析度,因此掩膜與真實缺陷邊界對齊。
- 大表面?用網格平鋪。 不要將一個 ROI 拉伸到整個面板上。佈置較小 ROI 的網格,使每個平鋪塊保持全解析度,並讓模型能夠看到細微的缺陷。
- 掩膜按捕獲持久化。 每個訓練影象都會為該 ROI 儲存自己繪製的掩膜;模型從所有這些掩膜中學習。
- 豐富的輸出。 每個 ROI 你可以獲得每個類的畫素數、每個缺陷區域的邊界框以及可測量的面積,足以用於基於尺寸的透過/失敗規則。
資料流:每個 ROI 返回的是掩膜,而不是標籤
在執行時,相機從完整影象中裁剪出 ROI,將其輸入到訓練好的分割器中,並得到逐畫素的預測,即一個與原圖相同大小的掩膜,其中每個畫素都帶有一個類。相機從該掩膜中匯出畫素數、缺陷區域和邊界框。
- 捕獲帶有 ROI 標記的完整幀。
- 裁剪 ROI 為單張影象,保持在 512 × 512 px 或以下。
- 分割器模型使用編碼器-解碼器架構為每個畫素預測一個類。
- 掩膜輸出是一個彩色畫素圖加上每個類的畫素數,以及每個連通區域的邊界框。透過/失敗規則在 IO模組 中基於這些數字執行。
發揮創意:mask 是一個幾何物件
一旦分割器返回 mask,你就不再侷限於透過/失敗。你獲得了每個類別的精確形狀和位置,這意味著你可以推匯出測量值、計數、距離和空間關係。這解鎖了一整類與"找到劃痕"完全不同的檢測,並且同一個分割器可以服務於所有這些用途。
Area & coverage
Pixel counts become mm² on a calibrated camera. Set pass/fail in real-world units, "reject if stain > 3 mm²", instead of fuzzy percentages.
Distinct blobs
Four small pits tell a different story than one big one. Count connected regions per class to flag defect frequency, not just total coverage.
Dimensions & shape
Length, width, aspect ratio, orientation, all fall out of the mask. Flag long scratches, ignore micro ones. Or flag round dents and ignore elongated ones.
Blob-to-blob distance
Euclidean gap between two painted regions, centroid-to-centroid or nearest-edge. Useful for component spacing, pin pitch, weld-to-weld gaps, or detecting defect clusters.
Distance to a reference
Paint a second class for your reference (edge, fiducial, adjacent component) then measure how far the defect sits from it. A defect 8 mm inside might be fine; 0.5 mm from the edge might be a reject.
Not just defects
Paint whatever you want to find: pills in a blister, screws in a tray, weld beads, gaps, fiducials, cells on a slide. Segmentation is a general-purpose scalpel, not a defect-only tool.
設定回顧
在訓練之前的快速檢查清單。如果每一項都成立,你的分割器將擁有堅實的基礎。
- 每個表面對應一個 Inspection Type。 檢測兩種不同的材料或缺陷族?為每一個分配獨立的型別,讓它們擁有各自的類別、資料集和模型。
- 類別代表缺陷型別,而非嚴重程度。
scratch、dent、stain,每一個都是不同的視覺物件。嚴重程度和透過/失敗來自下游對 mask 畫素數的統計。 - 背景是隱含的。 你從不繪製或標註"良好"畫素。任何未繪製的部分都屬於
background。 - ROI 尺寸要合理設計。 覆蓋感興趣區域,但每個 ROI 保持在 512 × 512 px 以下。如果表面較大,可使用網格平鋪。
- 繪製每一個可見的缺陷。 訓練資料中遺漏的缺陷會讓模型把它們當作背景,這是質量檢查中最糟糕的教訓。
- 每個類別從 10 到 15 張影象開始。 訓練、執行實時預覽、在 mask 錯誤處新增針對性影象、重新訓練。通常迭代兩到四次即可。
下一步
- 理解分類器,關於下拉選擇模型的姊妹頁面。
- 感興趣區域 (ROI),繪製 ROI 的實用指南。
- 訓練您的 AI,標註與訓練工作流。