外觀瑕疵檢測為什麼導入產線困難?從三個技術特性談起
量測、定位、辨識在機器視覺中已相當成熟,外觀瑕疵檢測卻仍是最容易卡關的題目。本文從瑕疵定義、良品變異與判斷可解釋性三個特性,說明它與其他視覺題目的本質差異,以及為什麼規則式與深度學習兩條主流路線都沒有讓這個題目變簡單。
作者:林晏全 · IQUMIN Inc.

機器視覺涵蓋的題目很廣:2D尺寸量測、工件定位、字元辨識、物件追蹤。這些題目經過多年的發展,已經有成熟的方法與大量可選的方案。相較之下,外觀瑕疵檢測雖然需求最普遍,卻也是最常出現「上線後過度檢測、參數調不完、最後被關掉」的一類。
這篇文章主要是想整理一件事:外觀瑕疵檢測在技術上和其他視覺題目究竟差在哪裡。理解這些差異,會比較容易判斷一個方案適不適合自己的產線,也比較能和設備商、演算法供應商用同一套語言討論。
特性一:瑕疵沒有明確的定義
量測有明確的目標:長度 10.00 mm、公差 ±0.05 mm。定位也有:工件中心落在哪個座標、旋轉幾度。這些題目的「正確答案」可以用數字寫下來,演算法只需要盡可能準確地逼近它。
「刮傷」則不然。同樣稱為刮傷,可能是 0.1 mm 的髮絲紋,也可能是 2 mm 的明顯溝痕;可能在邊緣或中央;可能是直線或弧線。再加上縮水、流痕、髒污、色差、異物,每一類都有近乎無限的形態,而且同一條產線在不同時期出現的瑕疵樣貌也會改變。
這個特性決定了一件事:外觀瑕疵檢測沒有辦法像量測一樣,靠一組明確的規格來定義「什麼是對的」。它需要的是一種描述「什麼是不正常」的方式,而這件事在工程上比描述「什麼是正確」困難得多。
特性二:良品本身就有變異
第二個特性常常被低估。一條正常運作的產線,良品之間並不完全相同:射出件的表面光澤會隨模溫微幅變化,金屬件的加工紋路每一件都略有差異,布面與紙材的紋理本來就帶有隨機性。這些差異在品保眼中都是「正常」,但在影像上它們確實存在。
如果系統把某一件良品當成唯一的標準,任何偏離這個標準的正常變異都會被視為異常,這就是過度檢測最常見的來源。反過來,如果為了容忍這些變異而放寬條件,真正細微的瑕疵就跟著被放過。
所以外觀瑕疵檢測真正要處理的,不只是「找出瑕疵」,而是「在良品的正常變異範圍之內,分辨出超出範圍的部分」。這需要系統對良品的變異有某種程度的認識,而不只是對瑕疵有認識。
特性三:判斷需要能被解釋
第三個特性來自使用情境。當系統判定一件產品 NG,品保或製程人員通常會想知道原因:偏離在哪裡、程度多大、和良品差在什麼地方。這個答案會直接影響下一步:要不要調整門檻、要調多少、調整之後對漏檢與過檢的影響是什麼。
如果系統只能回答「異常機率 0.87」,這個討論就難以進行。不是因為數字不對,而是因為它無法對應到任何製程上可以操作的量。相較之下,若判斷可以拆解成「這個區域偏離了多少面積、色差多少」,品保就能拿著數字和製程討論可接受的範圍,也能針對不同區域設定不同的嚴格程度。
可解釋性在量測題目裡是理所當然的(量出來的數字本身就是解釋),在外觀瑕疵檢測裡卻需要刻意設計。
兩條主流路線,為什麼都沒有讓它變簡單
面對上述三個特性,業界目前主要有兩條技術路線,它們各自解決了一部分問題,但也各自留下了一部分。
規則式(Rule-based)影像處理。 由工程師針對每一種瑕疵定義特徵與閾值:面積大於多少、對比度超過多少、長寬比落在什麼範圍。這條路線的判斷完全透明、運算輕量,也不需要訓練資料,對「判斷需要能被解釋」這個特性回應得很好。但它直接撞上前兩個特性:瑕疵沒有明確定義,規則就永遠寫不完;良品本身有變異,固定閾值就無法區分正常差異與真正的瑕疵。實務上的結果是規則越加越多、每加一條就多一個誤判的機會,最後在過檢與漏檢之間反覆拉扯。
深度學習(Deep Learning)。 讓模型從大量已標註的瑕疵影像中自行學習特徵,不再需要人工寫規則,對形態多變的瑕疵有很強的辨識能力,也是目前研究與應用最活躍的方向。它在第一個特性上前進了一大步,卻在另外兩個特性上遇到新的門檻:因為瑕疵形態無限、正常產線的不良率又低,要蒐集到每一類都足夠且具代表性的樣本需要很長的時間,而且產品一改版就要重來;同時模型輸出的是機率,判斷的依據不容易對應到製程上可以操作的量,可解釋性需要額外的工具補足。
換句話說,兩條路線都不是失敗的方法,它們在各自擅長的場景裡運作得很好。但它們都沒有改變外觀瑕疵檢測的本質:無法用一組規格把「不正常」定義清楚、必須在良品的正常變異裡分辨異常、而且每個判斷都需要說得出理由。這些是題目本身的性質,換一種演算法並不會讓它們消失。
小結
外觀瑕疵檢測的困難,來自它與其他視覺題目在本質上的差異:瑕疵沒有明確定義、良品本身就有變異、判斷需要能被解釋。量測、定位、辨識之所以成熟,是因為它們的目標可以被明確寫下來,方法也就能被通用化;外觀瑕疵檢測則是每一條產線、每一種材質、每一個時期都有自己的樣貌,很難用同一套做法直接套用。
這也是為什麼它需求最普遍,卻最容易在導入後卡關。理解這些天性,並不會直接給出答案,但至少能讓我們在評估任何方法時,先問對問題:它怎麼定義不正常、怎麼看待良品的變異、判斷的依據是什麼。
