高文彬,莊申樂,王秀劍,周 敏,宋冉冉,張成雷,2*
(1.山東龍立電子有限公司,山東臨沂,276000;2.臨沂大學,山東臨沂,276000)
隨著深水連接裝置智能化轉型的不斷發展,使得電連接器在水下設備的研發上獲得更大范圍、更深層的實時數據傳輸成為可能,也為各類電接插件推動海洋安全提供了數據基礎。連接器殼體作為連接器外罩,能有效保護其內部絕緣體和接觸件,殼體外觀質量是評價產品品質的重要指標之一,對其質量評估是產品檢測中的重要環節。
目前,國內連接器殼體外觀質量檢測多依靠人工目測實現,檢測效率低、勞動強度大,檢測判別的標準因人而異,其漏檢率、錯檢率較高,嚴重制約了連接器的自動化生產效率,另外人工檢測成本較高,不利于企業生產成本控制。基于上述問題,提出了一種運用機器視覺檢測技術的殼體表面缺陷檢測方法,它在獲取缺陷信息和識別缺陷類型方面具有人工不可替代的穩定性和準確性,拓展了現代缺陷檢測技術的發展方向。
完整的機器視覺缺陷檢測系統具有機器視覺系統的一般架構,通過圖像采集系統獲取產品圖像,由圖像處理模塊接收轉變成數字信號,然后對數字信號進行預處理、圖像增強、缺陷分割、特征提取,最終實現產品的分類[1]。其系統運行流程如圖1所示。

圖1 機器視覺缺陷檢測系統流程圖
殼體表面缺陷檢測系統的總體設計包括兩部分:硬件結構和軟件設計。根據功能不同,整個檢測系統可劃分為五大模塊:工業計算機、光學照明系統、圖像采集系統、自動檢測分類系統、反饋系統[2],如圖2所示。

圖2 殼體表面缺陷檢測系統
針對該圓形連接器外殼,其在生產過程中,由于外部環境的變化,如加工人員水平、機床和刀具磨損等都可能導致其產生缺陷,在人工檢驗過程中常見缺陷類型有點狀缺陷、線狀缺陷、坑狀缺陷等,具體見表1。

表1 人工檢驗過程中常見缺陷類型
殼體圖像增強是通過一系列特定的處理,解決圖像邊緣模糊、對比度較弱等問題[3],使圖像中感興趣的的部分凸現出來,同時去除圖像中某些不需要或是不重要的信息。常用的圖像增強技術有直方圖變換均衡化和分段式變換修正方式,對灰度部分進行規定化處理。
直方圖變換均衡化是運用某些特殊化處理,將一部分圖像的灰度級增強,可以有效規避均勻化直方圖。很好的解決原始殼體圖像中邊緣化模糊問題,并且可以顯著的增強圖像的對比度和清晰度,如圖3和4所示。

圖3 原始直方圖

圖4 均衡化后的直方圖
分段線性變換法是常用來擴展感興趣部分的灰度變化范圍函數,對不感興趣的圖像區域進行抑制和削弱[4],通過動態調節圖像中不同灰度值間的范圍參數來增強圖像中相的反差,進一步增強圖像間的對比度,其表達式如公式(1):
(1)
其中,g(x,y)為變換后圖像,灰度范圍數值[0,Mg],原始圖像為f(x,y),灰度范圍數值[0,Mf],變換后函數圖像如圖5所示。

圖5 分段線性變換圖
由變換后的函數圖像可知,通過控制分段直線的斜率或調整函數圖像轉折點的位置,可壓縮或擴張分段區間內的灰度值范圍,當[a,b]區間內的直線斜率大于1時,可增加該區間內的灰度值范圍,也即增強圖像的對比度。另外,對兩個區間內的灰度值進行壓縮后,可實現圖像增強效果。
為了能完整的把殼體缺陷圖像與背景圖像分割出來,使下一步對區域輪廓的提取工作更加徹底與精確,本文決定采用OSTU閾值化分割算法和小波變換算法。OSTU閾值化分割算法使用的條件是目標與背景間的多類間方差化最大,可以使圖像被錯誤分割的概率最小,由于該方法是基于二維灰度直方圖,所以也稱二維OSTU閾值分割法,針對直方圖中波峰和波谷明顯的圖像,其分割效果非常好。小波變換算法是在傅里葉變換的基礎上發展起來的,其在圖形模糊快速計算中的應用十分重要,針對直方圖中峰谷不明顯區域分割效果很好,并對每一類特征值進行歸一化處理。結合二維OSTU閾值分割算法和小波變換算法的分析計算,可以大大降低噪聲和殘余背景對圖像分割的影響,得到具有缺陷的圖像,如圖6所示。

圖6 分割后的缺陷圖像
圖像的特征提取是通過一些數學模型描述圖像的紋理信息,是對圖像中灰度級變化的數字化表達,公認的缺陷提取方法是簡單、常用的灰度共生矩陣(GLCM)算法。
灰度共生矩陣能夠靈活的描述紋理更為細微的特征,從中提取角二階矩、對比度、熵、面積和周長等5種特征參數具體描述圖像紋理變化。
(1)角二階矩Asm(或稱能量)
(2)對比度Con
(3)熵Ent

(4)面積S
(5)周長L
L=∑(x,y∈R1
本文根據根據上述計算公式,隨機抽取5個樣本的缺陷參數進行紋理特征統計,實驗數據如表2所示。

表2 抽取的樣本紋理特征(單位:像素)
針對點狀缺陷、線狀缺陷和坑狀缺陷的紋理特征進行提取,從表2中可以得出,三種缺陷的角二階矩、對比度、熵、面積和周長有明顯的不同:點狀缺陷集中在4像素、1像素、2像素、320像素和60像素左右,線狀缺陷集中在3像素、4~5像素、1.5像素、1200像素和460像素左右,而坑狀缺陷集中在2.5像素、7像素、0.6像素、900像素和160像素左右。由此可見,該5種特征參數對三種缺陷的區分效果較為理想,這些特性可以作為殼體缺陷分類識別的依據。
圖像的采集、預處理和特征提取等工作完成后,需要建立針對缺陷識別與分類的分類器。本文分類器的設計是基于BP神經網絡的模式識別算法。
該神經網絡模型在用于缺陷分類時,需要先進行自學習,使網絡模型能夠自行區分缺陷特征量和相對應的缺陷類型[5],學習結束后就可以利用學習結果實現對具有相同特征的缺陷分類。如圖7所示,為三層BP神經網絡實現殼體缺陷分類器設計流程圖。

圖7 三層BP神經網絡實現殼體缺陷分類器
一般情況下,若隱含層擁有的節點數越多,精度越高,訓練時間更長,容易導致誤讀和泛化能力下降;反之精度降低,訓練時間減少,學習過程發散,無法確定最優值[6]。在實際應用中,保證可以正確反映輸入輸出關系時,隱含層節點數越少越好。本文使用圖像采集處理后得到的200組數據,確定隱含層最優節點個數如表3所示。

表3 隱含層節點個數與訓練時間和精度的關系
從表3可以得出,當隱含層的節點數達到21時,訓練時間短,訓練精度最高,考慮到系統收斂速度和泛化能力,選定隱含層節點數為21。
學習率η也稱為步長,主要用來改變閾值、權值和修正量。在標準BP神經網絡算法中定為常數,然而在實際應用中,學習率選得過小,收斂速度太慢;學習率選得過大,則有可能修正過頭,導致振蕩甚至發散,無法收斂,通常將其范圍設置為0.01~1。本文多次對BP神經網絡進行訓練學習,表4為學習率和迭代次數的關系。

表4 學習率和迭代次數的關系
由表4可知,學習率η在[0.01,1]范圍變化時,迭代的次數是先減少后增加,當學習率為0.8時,迭代的次數最少,收斂的速度也最快。綜上可知,設定系統學習率為0.8。
本文選取不同類型缺陷的100個樣本進行訓練,另取點狀、線狀、坑狀缺陷各50組樣本作為測試樣本,運用BP神經網絡分類器對殼體表面缺陷圖像進行分類,結果如表5所示。
由表5可以得出,該分類器對點狀、線狀、坑狀缺陷的識別和分類有很好的效果,三種缺陷的識別率分別高達96%、92%、96%,由此可見該系統具有很高的識別精度。

表5 神經網絡識別缺陷結果
針對殼體表面缺陷的特點,將殼體表面缺陷劃分為點狀、線狀和坑狀三種類型,通過對所獲得的殼體缺陷圖像處理和分類,采用直方圖均衡化和分段線性變化增強圖像;二維OSTU閾值分割算法和小波變換算法進行圖像閾值分割;基于灰度共生矩陣的紋理特征計算法對殼體表面缺陷進行特征提取,并構造了BP神經網絡缺陷分類器,實驗驗證結果表明,該分類器具有很好的識別與分類精度。