找出出問題的佐證層
在更動設定之前,先判斷故障出在取像、可見零件佐證、空間判定,還是後續的事件關聯上。要保留最初的參考狀態和原始結果。在完全可觀察的區域裡漏掉了所需零件、被截斷的觀察被送去複核(Review),以及一個正確的結果被用到了另一個組裝件上,這是三種不同的故障。它們需要不同的對照,在報告中也必須能區分開來。不要用後來出現的一張「通過」截圖,去覆蓋最初的症狀。診斷從一個可重現的失敗案例和聲明的佐證邊界開始,而不是從一個更寬的區間開始——選更寬的區間,只是為了減少螢幕上能看到的紅色指示。
重放出問題的那張原圖
用產生該症狀的確切來源影像、裁切轉換、節點圖版本和參考類別進行重放。凡是相關之處,都要查看實際安裝的節點和模型識別碼,而不是只信節點圖上顯示的名稱。如果完全相同的凍結材料得到了不同的輸出,就要先排查前處理、相依項目,或請求與結果的對應關係,再去怪治具。如果重放結果穩定、新影像卻出錯,接下來就比較光學和取像條件。要保留完整的原始影格,免得局部預覽掩蓋原因。重放成功可以縮小排查範圍,但並不能證明出錯的那一個影格來自預期的組裝事件。
區分被截斷的佐證與真實缺失
把聲明的區域疊加在完整的來源影像上,檢查所需零件、它的觀察餘量以及任何遮擋的工具。零組件跨過區域邊界,並不一定表示組裝件上缺了它。在光學條件和參考類別保持固定的前提下,比較同一個已標示的組裝件在基線姿態和某個允許的改變後姿態下的情況。如果歧義是截斷造成的,就先透過取像或幾何來恢復觀察,再去更動缺失判定的規則。擴大區域可能把相鄰治具上的特徵帶進來,它隨後會冒充缺失的零件。要把恢復的可見性和新增的佐證風險都記錄下來,而不是只接受一個看上去更乾淨的局部裁切。
截斷不同於觀察到的缺失
在解讀局部候選缺失之前,先檢查完整的組裝件和聲明的區域。
- 完整的原始組裝視圖
- 聲明的零組件觀察區
- 跨過區域邊緣的可見零件
- 排除相鄰治具的佐證
先解釋重複候選,再做過濾
當某個所需標籤出現不止一次時,檢查原始的前景連通區域或偵測器候選。判斷這些候選是各自獨立的真實特徵、一處反光造成的分裂、混入的治具部分,還是所選模型路徑產生的重複偵測。保留原始佐證和聲明的標籤對應。不要挑選「恰好讓空間規則通過」的那個候選。固定區域前景方法與訓練過的偵測器,需要不同的對照;去除重複的過濾並不能證明零件辨識正確。對任何擬議的遮罩或抑制更動,都要在同樣的缺件和錯位參考件上比較,確認這樣的修正不會抹掉真實的瑕疵,也不會悄悄把不同的物體合併。
diagnostic_record = {
'assembly_id': assembly_id,
'image_id': image_id,
'graph_revision': graph_revision,
'raw_detections': raw_detections,
'detection_validity': detection_validity,
'raw_rule': raw_rule,
'execution_status': execution_status,
'event_identity': event_identity,
}
# Record the failure without converting Review, unknown states or execution errors into Pass.核對關係的正負號與座標系
在質疑機械參考之前,先核對第一個和第二個標籤、它們的中心定義、裁切轉換以及所選的關係。帶正負號的水平差在標籤對調後會變號,而歐氏距離無法表示同樣的方向性條件。經審閱的受限關係包含區間端點,並且要求在評估之前標籤唯一且有效。要查看實際的規則設定和原生原因,不能只看畫出來的箭頭。沒有經過驗證的幾何,就不要用物理公差去取代影像局部的區間。正負號或座標的修正,必須同時在預期的關係和對調後的關係上得到證明,而不能因為現在某一個正常的組裝件通過了就接受。
追蹤組裝事件
分別追蹤取像指令或事件、來源影格、組裝件識別碼、節點圖版本、原始判定和接收端動作。重複出現的舊影像,會讓處理看上去很穩定,而目前的組裝件其實從未被檢測。要在隔離環境中測試延遲、缺失和被取消的結果,並確認它們按明確的非合格方式處理。檢查佇列或快取是否用上一個組裝件遲到的答覆,覆蓋了目前的結果。要保留原始的複核(Review)結果和執行錯誤,而不是把它們對應成一個方便的可見零件計數。時序和控制器的行為,需要有各自經過驗證的工站約定;僅憑離線處理日誌,並不能認定整合已經通過。
保留診斷工作表
為每個失敗案例在工作表中寫一列,記錄它的原始影像、獨立參考、樣件和事件識別碼、裁切座標、節點圖與執行階段版本、原始零件佐證、有效性、規則以及疑似成因。再補上鑑別對照,以及能推翻該解釋的觀察。候選結果要與基線放在一起保留,包括尚未解決的案例。該表把可見性、重複、關係和事件這幾類排查分開,並不規定某種通用的過濾方法。複核和執行失敗要保留在計畫分母之內。這樣,另一位工程師就能區分:哪些是有依據的修正,哪些只是挑出了變得方便處理的樣本之後才拼湊出來的、貌似合理的說法。
| 故障特徵 | 鑑別對照 | 須留存的佐證 |
|---|---|---|
| 所需零件跨過觀察邊界 | 同一樣件在聲明的各姿態下 | 完整影格、區域座標與有效性 |
| 所需標籤有多個候選 | 檢查原始連通區域或模型候選 | 原始遮罩或偵測結果,附標籤對應 |
| 零件可見,關係判定卻反了 | 核對標籤順序和帶正負號座標規則 | 實際中心、轉換與凍結的規則 |
| 目前組裝件顯示的是更早的結果 | 在隔離環境中注入延遲或缺失的結果 | 組裝件、影像、請求和動作的識別碼 |
驗證修正,且不掩蓋失敗
先在凍結的開發樣本組上驗證擬議的修正,再在獨立的驗收組裝件上驗證,所用的限度須在執行之前約定好。要確認可見瑕疵仍然能被檢出,並且沒有哪個原有的失敗只是變成了未回報的複核、過時的影格,或者被重新貼了標籤的參考。把更動後的節點圖和取像設定,連同最初的基線一起凍結。如果所需的機械特性是隱藏的,或者零件辨識仍未得到證實,就保留這條邊界,並要求採用另一種觀察或測試。Deyi Vision 可以支援對受支援工作流程的診斷,但本文的流程並不能為目前的軟體套件、真實的相機安裝或量產組裝效能提供認證。
修正需要一個鑑別對照
保留失敗的佐證,在不挑選方便的候選的前提下,驗證擬議的解釋。
- 凍結失敗案例與參考
- 列出相互競爭的成因
- 進行受控比較
- 驗證修正,或保留未解決的範圍
來源與技術參考資料
這些資料說明本教學所用方法的依據與適用範圍。文中的檢查範例僅供參考;量產驗收需要用你自己的樣品取得佐證。
- Contours: Getting StartedOpenCV查核於
- Morphological TransformationsOpenCV查核於
- Triggered Image AcquisitionBasler查核於
部件與選型參考
- machine vision software · 英文參考資料
- 機器視覺驗收測試清單
- 自動化外觀檢測
- 機器視覺系統
- 電池極耳焊接高度檢測
- 巴魯夫 Balluff 視覺感測器替代方案
- 得利捷 Datalogic 讀碼器替代方案
- Banner Vision Sensor Alternative · 英文參考資料
- EAN-13 追溯:重複與漏讀
- 可見液位檢測的相機設定
- 可見液面邊界的照明與 ROI
- 排查可見液位判定不穩定的問題
- 用混淆矩陣設定檢測閾值
- 檢查雷射輪廓基準與缺失資料的處理行為
- OCR 標籤核對:不可讀文字與錯誤文字
- 為未封口包裝的完整性檢測設定相機
- 為未封口包裝的內容物選擇照明與 ROI
- 排查包裝完整性的誤判
- 密封與膠條外觀:斷口診斷
- SKU 顏色分選:通道與漂移診斷
- 表面瑕疵檢測:誤報診斷

