溫陽東 俞家鑫
(合肥工業大學電氣與自動化工程學院,合肥 230009)
隨著國民經濟的快速發展,通過橡膠密封的產品在工業各領域的應用越來越廣泛,而當前密封橡膠圈在生產過程中容易出現凸點、氣泡、毛邊多出及切割不平等缺陷,嚴重影響其安全性和可靠性,利用機器視覺技術進行橡膠圈的質量檢測可以提高檢測的準確度,筆者針對機器視覺過程中對橡膠圈的圖像提取處理和缺陷檢測進行了算法研究,并給出仿真結果[1,2]。
對橡膠圈的圖像進行合理的處理是提取橡膠圈缺陷的基礎,在實際操作中,由于受到采集環境及設備等因素的影響,采集到的橡膠圈的圖像缺陷特征不明顯,進行數字圖像處理后,可以提高圖像質量以便識別和提取缺陷[3]。
筆者通過數據采集卡將采集到的橡膠圈的圖像傳送到計算機,再進行圖像處理(圖1)。對采集到的圖像主要經過圖像濾波、圖像增強、圖像分割和數學形態學處理,最后通過缺陷識別算法來判斷橡膠圈是否存在缺陷[4]。

圖1 圖像處理流程
筆者在采用CCD攝像機采集橡膠圈圖像的過程中難免會受到各種干擾,使圖像上出現一些隨機、離散和孤立的像素,這些像素會降低圖像質量,使圖像變得模糊,而且還會淹沒特征,所以需要對采集到的圖像進行一些處理,盡可能最大程度地恢復原始圖像。
圖像濾波是指在濾除噪聲的同時又能保證圖像的邊緣輪廓和線條清晰,中值濾波的原理是把圖像中某一像素的值f′(x,y)用該像素的領域g(s,t)中各點的中值代替,即:
中值濾波方法去噪效果較好,但對于點和線條細節較多的圖像其濾波效果不理想,筆者選擇了一種改進后的中值濾波算法,創建兩幅待測目標圖像;選擇一個垂直方向的一維中值濾波器對目標圖像進行濾波,再使用一個水平方向的一維中值濾波器繼續濾波,得到第一幅圖像;同理得到第二幅圖像;最后對兩幅圖像取灰度平均值,得到最終的濾波圖像[5]。
對采集到的橡膠圈圖像增加椒鹽噪聲并采取改進中值濾波,在MATLAB中的仿真結果如圖2所示。

圖2 濾波效果展示
該中值濾波算法在有效濾波的同時,能保留較多的垂直和水平方向的圖像信息,在運算的速度上也有一定的提高。
圖像增強是根據需求突出圖像中的某些信息,同時削弱不需要信息,使得處理后的圖像更有利于邊緣的檢測和缺陷特征的提取[6~8]。筆者采用直方圖來反應圖像中各個灰度級出現的頻率,直方圖定義可表示為:
其中,N表示圖像的總像素數,nk是第k個灰度的像素數,rk表示第k個灰度級,P(rk)表示該灰度級出現的相對頻數。
橡膠圈的灰度圖像和對應的灰度直方圖如圖3所示。

圖3 灰度及其直方圖
從圖3中可以看出,圖像的像素主要集中在灰度級小于110的范圍內,圖像整體偏暗,且對比度較小,灰度分布呈現雙峰式,通過對直方圖的分析,可以了解圖像整體對比度、明亮程度以及與缺陷相關的灰度分布情況等。
在MATLAB中,imadjust函數可用于直接灰度調整,選取0.0~0.2的灰度范圍進行變換,對有氣泡缺陷的橡膠圈進行灰度變換(圖4)。由圖4可以看出,灰度變換后不僅可以增強圖像對比度,而且可以有效去除圖像背景。

圖4 灰度變換效果
圖像邊緣是指圖像中表達物體的周圍像素灰度發生階躍變化的像素的集合,分割的效果將直接影響后續的圖像識別和特征提取的效果。
邊緣分割算子可分成兩種,一種是微分算子,如Roberts算子、Prewitt算子等;另一種是加了最優濾波器的檢測算子,如LOG算子和Canny算子[9,10]。傳統的Canny算子適用性較好,梯度圖像需要進行非極大值抑制,再求閾值提取邊緣,目前雙閾值的求取難以避免人工設定的影響,難以精確進行邊緣檢測,本課題采用改進Canny算子進行了邊緣檢測并將其與其他幾種算法進行比較[11,12]。
改進型Canny算子在圖像中尋找邊緣的算法步驟為:


c. 非極大值抑制,若圖像內的像素點(i,j)的梯度幅值M(i,j)比梯度方向上相鄰兩像素的幅值要小,則像素灰度值置0,即不是邊緣點。

選取一階微分算子、LOG算子、Canny算子和改進型Canny算子對含有缺陷的橡膠圈圖像進行邊緣檢測,待測圖像已經過去噪和增強處理,檢測結果如圖5、6所示。

圖5 毛邊缺陷圖像檢測結果

圖6 氣泡缺陷圖像檢測結果
從圖5、6中可以看出改進的Canny檢測算法對毛邊缺陷和氣泡缺陷的圖像具有較好的檢測效果,而Prewitt檢測算法僅對毛邊缺陷有較好的效果,所以Canny算法的適用性較好。
筆者主要研究了基于機器視覺的橡膠圈缺陷檢測算法,將采集到的圖像進行濾波、增強及邊緣檢測等處理,以便檢測出橡膠圈的缺陷特征,通過改進的中值濾波濾除了圖像中的椒鹽噪聲,建立圖像直方圖分析了有缺陷橡膠圈的灰度分布情況,比較了毛邊缺陷和氣泡缺陷的幾種算子檢測效果,結果表明改進的Canny算子能夠較好的提取各種缺陷特征。