AI 驅動文件
您想了解什麼?
使用分類器(單 ROI 示例)
本教程將帶你在 OV20i 攝像系統上建立你的第一個分類模型。你將學習如何設定一個單一 ROI(Region of Interest)分類器,以自動識別並對不同型別的物件進行分類——在本示例中為鑽頭的不同尺寸。
將要構建: 一個可執行的分類模型,能夠自動識別並對不同鑽頭尺寸進行分類和排序,並具備可配置的透過/不透過邏輯。
預計時間: 45–60 分鐘
技能等級: 入門
先決條件: 已設定並連線 OV20i 攝像系統
步驟 1:建立一個新的分類配方
1.1 進入配方建立介面
- 在 OV20i 介面中導航到“所有配方”頁面
- 點選
+ New Recipe在右上角
1.2 配置配方設定
將顯示“新增新配方”對話方塊:
- 輸入配方名稱: 使用一個描述性的名稱,例如 “Drill_Bit_Classification_v1”
- 命名提示: 為了便於識別,請包含物件型別及版本資訊
- 選擇配方型別: 從下拉選單中選擇 “Classification”
- 點選
OK以建立配方
1.3 啟用並開啟配方編輯器
- 在“所有配方”列表中定位新建的配方(它將顯示為“Inactive”)
- 點選配方條目右側的
Activate - 點選
Activate and go to editor以確認並啟動配方編輯器
✅ 檢查點: 配方現已顯示為“Active”,並顯示配方編輯器。
步驟 2:配置相機成像設定
2.1 開啟成像配置
- 在配方編輯器的左下角單擊
Configure Imaging
2.2 調整焦點設定
焦點對準確分類至關重要:
- 將鑽頭放置在相機視野中
- 使用以下任一方式調整焦點:
- 滑塊控制元件,或
- 手動數值輸入
- 測試不同的焦點位置,直到鑽頭邊緣清晰銳利
焦點提示:
- 使用實時預覽檢視焦點變化(實時)
- 將焦點放在最重要的特徵上(鑽頭螺旋槽、尖端幾何形狀)
- 確保物件的整個深度在焦點範圍內
2.3 最佳化曝光設定
適當曝光可確保一致的影象質量:
- 使用滑塊或手動輸入調整曝光
- 目標是在均衡照明下:
- 物件細節清晰可見
- 無區域過曝(純白)
- 陰影不過於遮蔽重要特徵
2.4 配置 LED 照明
照明對分類準確性有顯著影響:
- 根據物件選擇 LED 光模式:
- Bright Field(明場):通用照明
- Dark Field(暗場):突出邊緣和表面缺陷
- Side Lighting(側光):揭示紋理和高度變化
- 對於鑽頭,嘗試:
- **Bright Field(明場)**用於一般形狀分類
- **Side Lighting(側光)**以突出螺旋槽幾何形狀
2.5 調整 Gamma 設定
Gamma 控制影象對比度:
- 調整 Gamma 以增強特徵可見性
- 較低數值可提亮暗區
- 較高數值可提升對比度
2.6 儲存成像設定
- 在實時預覽中檢視所有設定
- 點選
Save Imaging Settings以應用配置
✅ Checkpoint: 您的相機現在應能對鑽頭產生一致、光線充足的影象。
第 3 步:配置模板影象與對齊
3.1 導航至對齊
- 在麵包屑導航中點選
Template Image and Alignment,或 - 使用下拉選單選擇
Template Image and Alignment
3.2 跳過對齊器(本教程)
由於鑽頭將被一致地放置:
- 選擇
Skip Aligner - 點選
Save以應用更改
何時使用 Aligner: 當部件到達時以不同的位置或方向出現時使用對齊器。對於本教程,假設部件放置保持一致。
第 4 步:設定檢查 ROI
4.1 導航至 Inspection Setup
- 點選麵包屑導航中的
Inspection Setup
4.2 定義 ROI
ROI 定義了分類將發生的位置:
- 在相機檢視中放置鑽頭
- 拖動 ROI 的角點 以框定鑽頭
- 確保 ROI:
- 完全包含鑽頭
- 排除不必要的背景
- 足夠覆蓋最大鑽頭型號
4.3 ROI 最佳實踐
| 要做 | 不要做 |
|---|---|
| 包含所有重要特徵 | 讓 ROI 太大(包含噪聲) |
| 在物件周圍留出小邊界 | 截斷物件的部分 |
| 將預期物件居中 | 在一個 ROI 中包含多個物件 |
| 在影象間保持一致的 ROI 尺寸 | 捕獲之間更改 ROI |
4.4 儲存 ROI 設定
- 使用不同尺寸的鑽頭驗證 ROI 位置
- 點選
Save以應用 ROI 設定
✅ Checkpoint: 無論鑽頭的具體尺寸如何,ROI 應始終能框定鑽頭。
第 5 步:訓練分類模型
5.1 導航至 Classification Block
- 在麵包屑導航中點選
Classification Block
5.2 建立 Classification Classes
您將為不同鑽頭尺寸建立分類:
示例類別:
- Small Bits (1-3mm)
- Medium Bits (4-6mm)
- Large Bits (7-10mm)
5.3 捕獲訓練影象
對於每個類別,至少捕獲 5 張不同的影象:
Class 1: Small Bits
- 在 ROI 中放置一個小鑽頭
- 點選
capture獲取訓練影象 - 將影象標註為“Small”
- 再用 4 個不同朝向/位置的小鑽頭重複
Class 2: Medium Bits
- 在 ROI 中放置一箇中等鑽頭
- 捕獲並標註為“Medium”
- 再用不同的中等鑽頭重複 4 次
Class 3: Large Bits
- 在 ROI 中放置一個大型鑽頭
- 捕獲並標註為“Large”
- 再用不同的大鑽頭重複 4 次
5.4 訓練影象最佳實踐
| 最佳實踐 | 為何重要 |
|---|---|
| 使用不同的示例 | 提高模型的泛化能力 |
| 改變朝向 | 處理現實世界的定位變化 |
| 包含邊緣情況 | 更好地在類別之間界限檢測 |
| 保持一致的照明 | 降低對照明依賴的錯誤 |
| 最少 5 張影象 | 提供足夠的訓練資料 |
5.5 審閱並驗證標籤
- 仔細檢查所有標註的影象
- 確保正確的類別分配
- 刪除任何標註錯誤的示例
5.6 啟動模型訓練
- 點選
Train Classification Model - 選擇訓練模式:
- Fast: 快速訓練用於測試(2-5 分鐘)
- Accurate: 生產就緒訓練(10-20 分鐘)
- 選擇迭代次數:
- More iterations = Better accuracy → 更多迭代 = 更高的準確性
- More iterations = Longer training time → 更多迭代 = 更長的訓練時間
- 點選
Start Training
5.7 監控訓練進度
訓練進度模態框顯示:
- 當前迭代次數
- 訓練準確率百分比
- 預計完成時間
訓練控制元件:
- Abort Training: 如有需要,停止訓練
- Finish Training Early: 當達到足夠的準確度時停止訓練
訓練提示:
- 目標準確度達到時,訓練會自動停止
- 85%+ 準確度通常適用於生產使用
- 如準確度較低,可以使用更多影象重新訓練
✅ Checkpoint: 您的模型應達到 >85% 的訓練準確度。
Step 6: 測試您的分類器
6.1 訪問實時預覽
- 點選
Live Preview訓練完成後 - 將不同的鑽頭放置在 ROI 中
- 觀察分類結果:
- 預測的類別名稱
- 置信度百分比
- 分類時間
6.2 驗證測試
逐一系統地測試每個類別:
| 測試型別 | 預期結果 | 失敗時的處理 |
|---|---|---|
| 已知小位 | 分類為 "Small" >80% 置信度 | 新增更多訓練影象 |
| 已知中位 | 分類為 "Medium" >80% 置信度 | 檢查標籤準確性 |
| 已知大位 | 分類為 "Large" >80% 置信度 | 用更多示例重新訓練 |
| 空 ROI | 無分類或低置信度 | 調整置信度閾值 |
6.3 分類問題排查
| 問題 | 可能原因 | 解決辦法 |
|---|---|---|
| 低置信度 | 訓練資料不足 | 新增更多訓練影象 |
| 錯誤的分類 | 影象質量差 | 改善照明/對焦 |
| 結果不一致 | ROI 包含背景噪聲 | 減小 ROI 大小 |
| 類別混淆 | 外觀相似的物件 | 新增更多可區分的示例 |
Step 7: 配置透過/失敗邏輯
7.1 導航至 IO Block
在繼續之前,請確保所有 AI 塊都已訓練完成(綠色狀態):
- 點選麵包屑選單中的 "IO Block",或
- 從 Recipe Editor 選擇 "Configure I/O"
7.2 定位 Classification Logic Node
- 找到名為 "Classification Block Logic Node" 的節點(紫色節點)
- 若缺失: 從左側的節點選單拖拽
節點顏色: 紫色節點表示 AI 運算的 Overview Logic Blocks。
7.3 配置 Classification Logic
- 雙擊 Classification Logic Node
- 配置設定:
ROI 選擇
- 從 "Inspection Region" 下拉選單中選擇您的 ROI
置信度閾值
- Set confidence threshold(通常為 70-85%)
- Higher threshold = 更嚴格的分類
- Lower threshold = 更寬鬆的分類
目標類別選擇
- 為“透過”結果選擇目標類別
- **示例:**僅當中等位應透過時,請選擇“Medium”
多 ROI 邏輯(高階)
- 如有需要,新增更多 ROI
- 選擇邏輯: Any 或 All 規則必須透過
7.4 示例透過/失敗配置
配置 1:尺寸特定透過
ROI: Drill_Bit_ROI
Target Class: Medium
Confidence: 80%
Logic: Pass only medium drill bits
配置 2:尺寸範圍透過
ROI: Drill_Bit_ROI
Target Classes: Medium OR Large
Confidence: 75%
Logic: Pass medium or large bits
配置 3:拒絕小位
ROI: Drill_Bit_ROI
Target Class: NOT Small
Confidence: 85%
Logic: Fail if classified as small
7.5 部署邏輯配置
- 在右上角點選
Done - 在 Node-RED 編輯器的右上角點選
Deploy - 驗證部署成功訊息
第 8 步:最終測試與驗證
8.1 端到端測試
測試完整的檢測工作流程:
- 在檢測區域放置測試物件
- 觸發檢測(手動或自動)
- 驗證結果:
- 顯示正確的分類
- 正確的透過/失敗指示
- 時序效能一致
8.2 生產驗證清單
| 測試用例 | 預期結果 | ✓ |
|---|---|---|
| 目標類別物件 | 透過結果 | ☐ |
| 非目標類別物件 | 失敗結果 | ☐ |
| 空 ROI | 失敗結果 | ☐ |
| 部分遮擋物件 | 適當的置信度水平 | ☐ |
| 照明條件差 | 效能穩定 | ☐ |
8.3 效能最佳化
如果結果不令人滿意:
- 新增更多訓練影象(尤其是邊緣情形)
- 調整置信度閾值
- 改善照明一致性
- 細化 ROI 定位
- 使用“Accurate”模式重新訓練
恭喜!
您已成功建立第一個分類模型!您的 OV20i 系統現在可以:
- 自動識別不同鑽頭尺寸
- 基於分類結果應用透過/失敗邏輯
- 為每個分類提供置信度分數
- 透過 I/O 控制與生產工作流整合
下一步
現在您已掌握單個 ROI 分類,可以考慮探索:
高階分類技術
- Multi-ROI 分類(面向複雜部件)
- Hierarchical 分類(用於詳細分類
- Combination inspection(classification + defect detection)
生產整合
- PLC 通訊用於自動分揀
- 用於質量跟蹤的資料記錄
- 針對多條生產線的 Recipe 管理
模型最佳化
- Transfer learning(針對相似產品)
- Active learning(用於持續改進)
- Performance monitoring 與 retraining schedules
🔗 參閱
故障排除指南
常見問題及解決方案
| 問題 | 症狀 | 解決方案 |
|---|---|---|
| 精度低 | 分類經常錯誤 | 增加更多樣本的訓練影象 |
| 效能慢 | 處理時間較長 | 降低 ROI 尺寸,最佳化照明 |
| 結果不一致 | 同一物件產生不同結果 | 改善部件定位,檢查對焦 |
| 誤檢 | 空 ROI 顯示分類結果 | 提高置信度閾值 |
| 訓練失敗 | 模型無法成功訓練 | 檢查影象質量,確保每個類別不少於 5 張影象 |
獲取幫助
如果您在本教程未覆蓋的問題遇到困擾:
- 檢查文件中的故障排除指南
- 檢視系統日誌以獲取錯誤訊息
- 聯絡 Overview 支援,並提供:
- 配方匯出檔案
- 展示該問題的示例影象
- 系統配置詳情
教程完成! 您現在擁有一個可用於生產的分類系統。請定期驗證效能,並在需要時重新訓練模型,以確保長期準確性。