AI 驅動文件
您想了解什麼?
使用分類器(單 ROI 示例)
本教程將帶您在 OV10i 相機系統上建立第一個分類模型。您將學習如何設定一個單 ROI(Region of Interest)的分類器,以自動識別並對不同型別的物件進行分類——在本示例中為鑽頭的不同尺寸。
您將構建的內容: 一個可執行的分類模型,能夠在可配置的透過/不透過邏輯下自動識別並排序不同尺寸的鑽頭。
預計用時: 45–60 分鐘
難度等級: 初學者
前提條件: OV10i 攝像頭系統已設定並連線
步驟 1:建立一個新的分類配方
1.1 進入配方建立
- Navigate to All Recipes page in your OV10i interface
在 OV10i 介面中開啟「所有配方」頁面 - Click
+ New Recipein the top-right corner
點選+ New Recipe(右上角)
1.2 配置配方設定
The Add A New Recipe modal will appear:
- Enter Recipe Name: Use a descriptive name like "Drill_Bit_Classification_v1"
輸入配方名稱: 使用描述性名稱,如“Drill_Bit_Classification_v1”- Naming Tip: Include the object type and version for easy identification
- 命名提示: 為便於識別,請包含物件型別和版本號
- Naming Tip: Include the object type and version for easy identification
- Select Recipe Type: Choose "Classification" from the dropdown menu
選擇配方型別: 從下拉選單中選擇 "Classification" - Click
OKto create the recipe
點選OK以建立配方
1.3 啟用並開啟配方編輯器
- Locate your new recipe in the All Recipes list (it will show as "Inactive")
在「所有配方」列表中定位到新建的配方(它將顯示為「未啟用」) - Click
Activateon the right side of the recipe entry
點選配方條目右側的「啟用」 - Click
Activate and go to editorto confirm and launch the recipe editor
點選“啟用並進入編輯器”以確認並啟動配方編輯器
✅ Checkpoint: Recipe is now "Active" with the Recipe Editor displayed.
✅ 檢查點: 配方現已處於“已啟用”狀態,且顯示了配方編輯器。
步驟 2:配置相機成像設定
2.1 開啟成像配置
- Click
Configure Imagingin the lower left-hand side of the Recipe Editor
點選配方編輯器左下角的Configure Imaging
2.2 調整對焦設定
對焦對於準確分類至關重要:
- Position your drill bits in the camera's field of view
將鑽頭放置在相機視野內 - Adjust Focus using either:
- The slider control, OR
- Manual value entry
調整對焦 使用以下任一方式: - 滑塊控制元件,或
- 手動輸入數值
- Test different focus positions until drill bit edges are sharp and clear
測試不同的對焦位置,直到鑽頭邊緣清晰銳利
對焦提示:
- Use the live preview to see focus changes in real-time
- 使用實時預覽實時觀察對焦變化
- Focus on the most important features (drill bit flutes, tip geometry)
- 將對焦聚焦在最重要的特徵上(鑽頭螺槽、端部幾何)
- Ensure the entire depth of your objects is in focus
- 確保物件的整個深度範圍都在焦平面
2.3 最佳化曝光設定
合適的曝光可確保一致的影象質量:
- Adjust Exposure using the slider or manual entry
調整曝光 使用滑塊或手動輸入 - Aim for balanced lighting where:
- Object details are clearly visible
物件細節清晰可見 - No areas are overexposed (pure white)
無區域過曝(純白) - Shadows don't obscure important features
陰影不遮擋重要特徵
- Object details are clearly visible
2.4 配置 LED 照明
照明對分類準確性具有顯著影響:
- Select LED Light Pattern based on your objects:
- Bright Field:通用照明
- Dark Field:突出邊緣和表面缺陷
- Side Lighting:顯示紋理和高度變化
- 對於鑽頭,請嘗試以下選項:
- Bright field 用於一般形狀分類
- Side lighting 用於強調螺槽幾何
2.5 調整伽瑪設定
Gamma controls image contrast:
- 調整伽瑪以提升特徵可見性
- 較低的數值可使暗區變亮
- 較高的數值會增強對比度
2.6 儲存成像設定
- 在實時預覽中檢視所有設定
- 點選
Save Imaging Settings以應用配置
✅ 檢查點: 相機現在應能生成一致、光線充足的鑽頭影象。
第 3 步:配置模板影象與對齊
3.1 導航至 Alignment
- 點選“模板影象與對齊” 在麵包屑導航中,或
- 使用下拉選單選擇“模板影象與對齊”
3.2 跳過對齊器(本教程使用)
由於鑽頭將被一致放置:
- 選擇
Skip Aligner - 點選
Save以應用更改
何時使用對齊器: 當零件到達的位置或方向不同尋常時,請使用對齊器。對於本教程,我們假設零件放置一致。
第 4 步:設定 Inspection ROI
4.1 導航至 Inspection Setup
- 點選 "Inspection Setup" 在麵包屑導航中
4.2 定義 Region of Interest
ROI 定義了分類將發生的位置:
- 在攝像頭檢視中放置鑽頭
- 拖動 ROI 的角點以框選鑽頭
- 確保 ROI:
- 完全包含鑽頭
- 排除不必要的背景
- 對於最大的鑽頭尺寸變體也要足夠大
4.3 ROI 最佳實踐
| 做 | 不做 |
|---|---|
| 包含所有重要特徵 | 將 ROI 設得過大(包含噪聲) |
| 在物件周圍留出小邊框 | 將物件的部分剪下掉 |
| 將期望物件居中 | 同一個 ROI 中包含多個物件 |
| 在不同影象中保持一致的 ROI 大小 | 拍攝時改變 ROI |
4.4 儲存 ROI 配置
- 在不同鑽頭尺寸下驗證 ROI 位置
- 點選
Save以應用 ROI 設定
檢查點: 無論鑽頭的具體尺寸如何,ROI 應能始終框選鑽頭。
第 5 步:訓練 Classification Model
5.1 導航到 Classification Block
- 點選 "Classification Block" 在麵包屑導航中
5.2 建立 Classification Classes
您將為不同鑽頭尺寸建立分類類:
示例分類:
- Small Bits (1-3mm)
- Medium Bits (4-6mm)
- Large Bits (7-10mm)
5.3 捕捉 Training Images
每個類別至少捕捉 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 驗證測試
逐類系統性測試:
| Test Type | Expected Result | Action if Failed |
|---|---|---|
| Known Small Bit | 被分類為 "Small" >80% 置信度 | 新增更多訓練影象 |
| Known Medium Bit | 被分類為 "Medium" >80% 置信度 | 稽覈標註準確性 |
| Known Large Bit | 被分類為 "Large" >80% 置信度 | 使用更多示例重新訓練 |
| Empty ROI | 無分類或置信度較低 | 調整置信閾值 |
6.3 分類問題排除
| Problem | Possible Causes | Solutions |
|---|---|---|
| Low confidence | 訓練資料不足 | 新增更多訓練影象 |
| Wrong classifications | 影象質量差 | 提高照明/對焦 |
| Inconsistent results | ROI 包含背景噪聲 | 減小 ROI 的尺寸 |
| Classes confused | 外觀相似的物件 | 新增更多具辨識性的示例 |
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
置信度閾值
- 設定置信度閾值(通常為 70-85%)
- 更高閾值 = 更嚴格的分類
- 較低閾值 = 更寬鬆的分類
目標類別選擇
- 為“透過”結果選擇目標類別
- 示例:如果只有 Medium 位應透過,請選擇“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" 模式下重新訓練
恭喜!
您已成功建立了第一 個分類模型!您的 OV10i 系統現在可以:
- 自動識別不同鑽頭尺寸
- 基於分類結果應用透過/失敗邏輯
- 為每個分類提供置信分數
- 透過 I/O 控制元件與生產工作流整合
下一步
現在您已經掌握了單 ROI 分類,可以考慮探索:
高階分類技術
- Multi-ROI classification,用於複雜部件
- Hierarchical classification,用於詳細分類
- Combination inspection(classification + defect detection)
生產整合
- PLC communication,用於自動分揀
- Data logging,用於質量跟蹤
- Recipe management,用於多條產品線
模型最佳化
- Transfer learning,用於相似產品
- Active learning,用於持續改進
- Performance monitoring 與 retraining schedules
🔗 相關連結
故障排除指南
常見問題與解決方案
| 問題 | 症狀 | 解決方案 |
|---|---|---|
| 精度差 | 分類結果經常錯誤 | 增加更多多樣化的訓練影象 |
| 效能慢 | 處理時間較長 | 降低 ROI 大小,最佳化照明 |
| 結果不一致 | 同一物件給出不同結果 | 改進部件定位,檢查對焦 |
| 誤報 | 空 ROI 顯示分類 | 提高置信度閾值 |
| 訓練失敗 | 模型無法成功訓練 | 檢查影象質量,確保每個類別 5 張以上影象 |
獲取幫助
如果在本教程中未覆蓋的問題,請:
- 在文件中檢視故障排除指南
- 檢查系統日誌以獲取錯誤訊息
- 聯絡 Overview 支援,並提供:
- 配方匯出檔案
- 展示問題的示例影象
- 系統配置詳情
教程完成! 現在您擁有一個可投入生產使用的分類系統。請定期驗證效能,並在需要時重新訓練您的模型,以維持長期的準確性。