R&D
CENTER

對位(Alignment):讓零件以相同姿態擺正的技術

零件每次以不同角度擺放,模型就會先學到旋轉而不是瑕疵。本課整理對位的原理與用途,包括圓形零件的 Ring 對位、任意形狀的 PCA 對位,以及對位後再判定的 yolo_align。

入門3 分鐘2 瀏覽
本課重點
  1. 對位消除「位置」與「旋轉」,讓模型只專注於瑕疵。
  2. 圓形零件以圓心與方向特徵(凸片·耳部)決定方向,任意形狀則以影像矩(PCA)決定方向。
  3. 訓練資料與現場檢測必須使用相同的對位。對位設定由 Image Processing Tool 與 Multi-Inspector 共用。
  4. 對位失敗時,以原始影像繼續判定,避免對位錯誤導致產線停止。

異常檢測模型學習的是「良品長這個樣子」。但如果良品每次都以不同角度拍攝,模型要學的「正常」範圍就會擴大到所有旋轉後的樣貌。範圍越寬,微小瑕疵就越容易被埋沒其中。對位會在拍攝後立即消除這個問題。

拍攝原圖 · 旋轉 −38° rotation-fix 對位後 · 凸片朝 12 點,中心位於畫面中央 ① 找出圓心② 計算凸片角度③ 旋轉·平移
圓形零件的 Ring 對位。將圓心移到畫面中央,並旋轉使方向特徵(凸片)朝向 12 點鐘方向。

圓形零件:Ring 對位

束帶、環、軸承這類圓形零件依下列順序對位。Multi-Inspector 的 rotation-fix 模式即採用此方式。

  1. 找出中心 — 以圓偵測(Hough Circle)或將圓擬合到輪廓(circle fitting)求出零件中心。
  2. 找出方向 — 圓形旋轉後看起來都一樣,因此要找出凸片或耳部(ear)這類只存在於一處的特徵角度。
  3. 旋轉·平移 — 將中心移到畫面中央,特徵轉到 12 點鐘方向。

任意形狀:Shape(PCA)對位

像安全帶扣這種非圓形零件找不到圓。這時改用零件區域的影像矩求出姿態。

  • 一階矩(重心) — 零件的位置。
  • 二階矩(主軸) — 零件延伸最長的方向。與主成分分析(PCA)的計算相同。
  • 三階矩(不對稱度) — 只靠主軸,零件前後翻轉 180° 時無法區分。將質量較集中的一側定為前方,即可消除這個模糊性。

詳細計算與設定請見技術筆記 如何對位非圓形零件。如果不需要方向、只需對齊位置,則使用 Center-Only 對位。

對位後判定:yolo_align

Multi-Inspector EB 產線版本自 v2.2 起支援 yolo_align 模式。先將零件對位並置中,再以 YOLO 找出瑕疵。由於瑕疵總是出現在相近的位置與方向,即使資料量相同,偵測也更穩定。詳細設定請參考 yolo_align 模式 筆記。

訓練與檢測必須使用相同的對位

對位在訓練時執行一次,在現場檢測時再執行一次。兩者只要稍有不同,模型收到的影像就會和訓練時不一樣。因此 Multi-Inspector 會直接沿用 fineAi Image Processing Tool 中建立的對位設定。準備資料時的對位與產線上運作的對位,會得到相同的結果。

為失敗做好準備

對位是在影像中尋找特徵的過程,因此可能失敗。例如零件被拍到只剩一半,或光源瞬間閃爍。對位失敗時,Multi-Inspector 會以原始影像繼續判定並留下記錄。產線不會因對位錯誤而停止,失敗的影像也可以事後收集起來分析原因。

何時不使用對位

  • 零件固定在治具上、每次都在相同位置拍攝時,不需要對位也已足夠。
  • 形狀不固定的對象(食品、農產品等)難以訂定對位基準。這時適合使用對位置變化較不敏感的模型(如 AnomalyDINO),或不經對位的 YOLO。請參考 選擇異常檢測演算法 課程。