汪承研, 石偉萍, 李玉玲, 張 勇
(1.廣東機電職業技術學院, 廣東 廣州 510515; 2.東北財經大學, 遼寧 大連 116025;3.深圳威斯特姆智能技術有限公司, 廣東 深圳 518000)
機器視覺在識別、尺寸測量、缺陷檢測、定位引導等方面的應用已經較為普遍,尤其在缺陷檢測場景,比如零件的缺料、裂紋、多料等缺陷,在精度要求不高的情況下,機器視覺可以完全替代人眼, 并且檢測準確度可以得到非常好的重復性。 但是,有些缺陷的檢測精度要求很高,而且呈現出多樣性和不可預測性, 傳統的機器視覺算法已經無法滿足應用需求, 隨著人工智能的深度學習算法發展,將其和機器視覺的缺陷檢測應用結合起來,是提供外觀缺陷檢測精度的重要方法之一。
在運用機器視覺進行結構件特征和缺陷高精度檢測研究方面,國內科研機構近些年開展了相應的研究。 五邑大學科研工作者開發了一種基于機器視覺的盤紙輪廓直徑和寬度大小的檢測模型, 該檢測模型是以霍夫圓檢測和canny 邊緣檢測算法作為設計基礎, 通過提取盤紙輪廓來實現圓心坐標、直徑和寬度大小的檢測。 運用圖形進行細化后所提取的輪廓骨架, 確定邊緣像素的特征點位置, 運用最小二次函數乘法將特征點位置的坐標進行擬合,標定其極限值偏差,判定產品的合格性,其寬度檢測誤差在0.8mm 左右[1]。西南交通大學的科研工作者研究了基于機器視覺的航空鉚釘尺寸檢測技術,使用OpenCV 作為開發平臺, 采用閾值分割算法與分水嶺算法進行圖像分割;同時,通過平滑處理、形態學、輪廓提取算法完成圖像處理,實測結果表明,其測量精度可以達到0.01mm[2]。
機器視覺的應用雖然蓬勃發展, 但是在機器視覺應用本身的智能化程度并不高, 根據對機器視覺在缺陷檢測方面的需求調研,主要問題表現在兩個方面:
(1)測量精度問題。 受被測零件外表面不同的反光效果,光源和鏡頭,以及被測零件的定位精度等影響,缺陷檢測精度和準確度還有較大的提升空間, 主要是一些處于臨界識別狀態的缺陷難被識別出來, 有一些缺陷有較大比例的誤判。
(2)調測參數繁多。 檢測前需要設定較多的前置參數,包括特征形狀,顏色,光源,大概尺寸,相對定位等,人工進行參數調試時有可能因為經驗不足導致設置不合理,直接影響檢測的精度,調測成本較高。
技術上, 機器視覺本身屬于人工智能和模式識別一個子學科,機器視覺的處理對象就是視頻和圖片數據,隨著人工智能技術的發展,深度學習將與機器視覺緊密結合起來,一方面在海量數據中挖掘新的價值,另一方面將有助于解決機器視覺應用中需要人工干預過多的問題。隨著設備分辨率的提升和軟件算法的改善,融合人工智能技術的機器視覺的處理速度和精度都會得到同步提升。
機器視覺進行特征和缺陷檢測時, 其過程將需要轉換為數學表達。機器視覺需要三個過程任務,依次是分類任務,檢測任務,分割任務,見圖1。 機器視覺的分類任務要解決特征和缺陷是什么,通過提取特征信息,該任務要判斷目標特征的具體信息, 比如目標是劃痕或是異物等等; 機器視覺的檢測任務要解決特征和缺陷在何處,即需要標記缺陷和特征所處的具體位置; 機器視覺的分割任務要解決缺陷是多少的問題,即缺陷的長度、面積、程度等一系列信息,這些信息能輔助進行產品質量等級評估, 從而可以對產品質量等級進行劃分。

圖1 機器視覺缺陷檢測的計算機任務
依據數據標簽的不同, 基于深度學習的外觀缺陷檢測整體分為全監督學習模型、 無監督學習模型和其他方法,見圖2。 第一種全監督學習模型中,將大量標記有標簽的缺陷圖像輸入系統進行網絡訓練, 比如將有劃痕的區域或圖像標記為“劃痕”,系統訓練后獲得各種規格和不同背景下的劃痕,并導入模版,在檢測階段,當系統檢測到劃痕特征時,將判斷為“劃痕”缺陷。 相反,第二種弱監督學習模型,將無缺陷的樣本導入進行網絡訓練,生成系統的“良品”模版,在檢測階段,當系統檢測到正常樣本中未出現過的缺陷時,將判斷該對象為不合格品。 其他方法主要思想是將兩者結合起來,發揮各自模型的優勢,形成半監督學習模型和弱監督學習模型。 目前多數研究主要集中在全監督學習模型方向,主要該模型目前可信度略高,本文的研究也基于全監督學習模型。

圖2 基于深度學習缺陷檢測模型
以某結構件產品的外觀檢測為例,見圖3,良品結構上要求無變形、凹陷、機械損傷;色澤上要求表面光潔,無密集的異色點;產品品牌絲印正確等。 總結其缺陷特點:缺陷種類比較多,缺陷位置不確定,缺陷程度波動幅度比較大,有些與良品的邊界較為模糊。人工方式會帶來較高的誤判率, 傳統的機器視覺檢測方法雖然可以一定程度降低誤判率,但改進有限。 針對該類缺陷檢測需求,經過驗證,基于深度學習的機器視覺檢測方法是有效的。

圖3 某結構件產品的凹陷和劃痕缺陷CCD 圖像分析
基于深度學習的外觀缺陷檢測平臺系統框架由圖像采集子系統,機械運動子系統和主機組成,見圖4。 其中圖像采集子系統負責對產品拍照采集圖像; 主機包含圖像的預處理,缺陷分類,缺陷檢測,缺陷定級,結果呈現等模塊組成, 圖像進入主機后首先需要進行圖像的預處理, 然后依次進行缺陷分類, 檢測缺陷的位置, 給缺陷分級, 最后根據檢測結果控制機械運動子系統; 在主機中還有一個重要的深度學習模塊,其提供缺陷網絡訓練功能,并為目標圖像分類,檢測,分割做決策支持。

圖4 基于深度學習的外觀缺陷檢測系統框架
基于深度學習的外觀缺陷檢測平臺的處理流程由缺陷的分類,缺陷的定位,以及缺陷的定級三大步驟組成,深度學習嵌入其中解決特征提取和識別,如圖5 所示。
被檢測件的圖像采集后,首先需要進行預處理, 預處理是運用視覺算法對圖像進行降噪和提質; 檢測的第一大步驟是使用卷積神經網絡進行特征提取和分類, 在訓練過程中, 缺陷特征將不斷被加入模版庫, 在檢測過程中,被提取的特征與模版進行匹配,從而判斷缺陷有無,如果沒有缺陷, 當前檢測流程結束; 當判斷為缺陷存在時,對當前缺陷進行分類;第二大步驟是確定缺陷所在的位置;第三大步驟是缺陷分級,本步驟中需要提取特征的顯著度值,并進行標記,在訓練過程中,特征顯著度值被不斷標記和等級劃分,在檢測過程中,系統根據被檢測件的特征顯著度值進行等級劃分。

圖5 基于深度學習的外觀缺陷檢測系統業務流程
系統通過持續的訓練后,隨著樣本數據的不斷增加,其檢測的精度變得更高,誤判率也急劇降低。在某產品的霧化器檢測應用中,經過訓練后,缺陷檢測的誤判率短時間內從最初的80%下降到了2%以內。
外觀缺陷檢測是一個非常廣泛的領域, 傳統的機器視覺檢測缺陷步驟繁瑣,模式固定,調測復雜,已經較難應對當前缺陷種類繁多,波動范圍大,客戶自動化要求高等需求。基于深度學習的外觀缺陷檢測, 經過驗證可以比較好應對當前的挑戰,對于一些過往無法用機器進行檢測的模糊缺陷,引入深度學習后,通過一定的訓練,基于深度學習的外觀缺陷檢測系統在多數場景下是完全可以替代人工的。