周神特,張 瀟,王宇宇,柯 宇,趙文宏
(浙江工業大學 機械工程學院,杭州 310014)
經過砂帶平面磨床加工后的金屬板材主要是去除了板材表面的銹蝕、表面瑕疵、電鍍層和氧化皮等表面覆蓋物,隨著制造業的發展,對金屬板材表面質量的要求日益提高[1-2]。表面質量的一個重要評判標準就是表面波紋度,表面波紋度是介于表面粗糙度和表面形狀誤差之間的表面幾何不平度,表面波紋度影響著金屬板材的抗疲勞強度、抗腐蝕性、磨損性能以及外觀等[3]。
目前,常規金屬板材表面波紋度的檢測方法大都采用接觸式檢測,該方法在一定程度上會對金屬板材造成一定的損傷,且檢測效率低、精度不高。基于機器視覺的金屬板材表面波紋度檢測方法是一種非接觸式的方法,該方法能夠快速、有效地提取表面信息,實現無損檢測,有效地提高金屬板材的檢測速度,降低誤檢率[4]。
HORN[5]通過研究圖像表面的成像機理和光線反射原理,提出了明暗成形的原理,通過分析拍攝的單一表面圖像來獲取形貌輪廓。WOODHAM[6]等基于Lambert定律提出了一種光度立體測量法,用于提取表面輪廓形貌。ZHANG[7]提出了一種利用投影產生光柵圖像的測量光學結構,以此獲得標準工件表面的波紋度輪廓和波幅。
目前,國內外基于機器視覺的波紋度檢測大多數集中在對木材表面的研究,對金屬材料表面的研究較少,僅有的一些研究理論僅限于小尺寸零件表面波紋度的測量,并且這些測量方式存在較大限制,一般只適合于實驗室的精密研究,不適宜用于生產環境中金屬板材波紋度的測量[8]。因此,基于機器視覺的高效、高精度的金屬板材表面波紋度測量方法具有重要意義。
表面波紋度的主要評定參數均定義在波紋度輪廓的一個取樣長度范圍內,工程應用較多的評定參數為波紋度的輪廓算術平均偏差參數Wa[9]。波紋度輪廓中波峰和波谷的變化信息如圖1所示,該參數反映了波紋度輪廓中波峰和波谷的微小變化等重要信息。因此,采用Wa作為金屬板材表面波紋度的評定參數。

圖1 波紋度輪廓中波峰和波谷的變化信息
通過工業相機與特定光源所采集到的金屬板材圖像能夠較好地反映出表面波紋度的特性[10]。將這些圖像進行對比后發現,在光照和環境條件一致的情況下,相同波紋度的等級試樣,其表面圖像紋理特征呈高度的統一性,而不同波紋度等級試樣的表面圖像紋理特征呈明顯的差異性。因此,可通過提取表面圖像紋理的特征信息,建立與表面波紋度之間的關系模型,來實現對工件表面波紋度的測量。
圖像中噪聲的灰度值與鄰域內的像素點灰度值相差較大[11]。中值濾波可以克服最小均方濾波、平滑濾波等線性濾波器所導致的圖像細節模糊問題,是濾除脈沖干擾和圖像掃描噪聲最有效的方法。但是中值濾波耗時較長,去除噪聲的性能受到模板窗口的限制。根據金屬板材表面圖像的灰度分布特點,可以在求取濾波時考慮移動的兩列像素的灰度值變化,對中值濾波去噪算法進行加權加速。加權快速中值濾波去噪前后的金屬板材表面紋理特征如圖2所示。

圖2 加權快速中值濾波去噪前后的金屬板材表面紋理特征
改進后的中值濾波算法減少了中值濾波的計算量,在去噪的同時較好地保證了圖像的紋理特征,保證了檢測的快速性和實時性。
圖像的紋理特征參數與方向具有一定的相關性,為了加快相關參數的提取和分析,需要將圖像旋轉至與紋理方向一致。基于圖像的全局特征,選擇具有特定形狀特征的邊緣像素,并連接成連續平滑邊緣的過程稱為霍夫變換。在參數空間中找到相交線最多的一點并確定該點的參數,就能確定圖像空間中的某一特定直線的方程,達到直線檢測的目的[12]。
建立平面極坐標系的原因是有些直線斜率為0,直線的極坐標如式(1)所示。
ρ=xcosθ+ysinθ
(1)
式中:ρ為直線距原點的法線距離;θ為直線與x軸的夾角。
霍夫變換的計算步驟如下所述。
(1) 首先進行圖像二值化處理,待檢測區域為灰度值為“1”的像素點。
(2) 在極坐標空間里建立一個累加列表A(ρ,θ),初始值為0。
(3) 對于感興趣區域,遍歷θ,對應的數組A(ρ,θ)累加,直到所有灰度值為“1”的像素點全部遍歷完成。
(4)累加結束之后,數組A中最大值對應的參數就是要檢測的直線的參數。
經過霍夫變換計算的其中一條直線如圖3所示,直線為經過霍夫變換計算的其中一條,根據找到的直線,即可獲得旋轉角度。

圖3 經過霍夫變換計算的其中一條直線
圖像旋轉公式如式(2),(3)所示。

(2)

(3)
式中:m1,m2為旋轉參數;W為原始圖像寬度;H為原始圖像高度;Wn為輸出圖像寬度;Hn為輸出圖像高度。
圖4為基于霍夫變換的圖像旋轉結果。

圖4 基于霍夫變換的圖像旋轉結果
灰度共生矩陣通過計算像素點灰度值的排列位置關系及分布密度關系來反映圖像空間的灰度關系,是反映圖像紋理特征的重要分析方法。對灰度共生矩陣各元素值的分析可反映圖像灰度在相鄰方向、間隔、變化幅度等方面的綜合信息,即圖像整體分布特征,同時也可描述灰度等級相同圖像的像素點密度[13]。灰度共生矩陣的數學表達式為:
P(i,j,d,θ)={[(x,y),(x+Dx,y+Dv)]|
f(x,y)=i,f(x+Dx,y+Dv)=j}
(4)
式中:x,y為圖像中像素的坐標;d為生成步長,是大于0且小于圖像分辨率最小值的整數;θ為生成方向,一般取0°,45°,90°,135°等4個方向。
首先,將每幅圖像的灰度級量化,選擇像素點偏移距離和角度。灰度共生矩陣由圖像的灰度級、生成步長以及生成方向共同決定。因此,針對不同位置的金屬板材圖像,需要選取適當的結構參數以獲得具有最大表征能力的紋理特征的統計特征參數。
(1) 圖像灰度級的確定
對圖像的灰度級進行壓縮歸一化處理,歸一化的公式為
F(x,y)=INT[f(x,y)×L/fM]+1
(5)
式中:L為歸一化后灰度圖像最大的灰度級;fM為原灰度圖像中灰度的最大值。
為了減少計算量,使數據離散性較好,將圖像壓縮至16的灰度級。
(2) 生成方向的確定
選取和紋理方向一致的90°方向來生成灰度共生矩陣,可以保證紋理特征統計參數提取的有效性,同時減少計算量,加快處理速度。
(3) 生成步長的確定
圖像在壓縮的過程中,圖像中的一些像素點將不能參與到灰度共生矩陣的生成中,使一些重要的紋理信息弱化或者消失,圖像的真實信息無法得到準確反映。在灰度級壓縮至較小范圍的情況下,通常選取d=1的生成步長,才能夠最大限度地反映圖像的紋理信息。
特征參數與對應的表面波紋度實際值之間的相關程度較高,使用皮爾遜相關系數來描述波紋度與參數之間的相關性。皮爾遜相關系數是反映兩個變量相關程度的統計指標,表達式如式(6)所示。

(6)
式中:cov(X,Y)為兩個變量的協方差;sX,sY為X,Y的標準差;E為期望。
根據拍攝的金屬板材粗糙度樣塊的表面圖像,提取10個基于灰度共生矩陣的特征參數,分別計算出各個特征參數與波紋度之間的相關系數和波動系數,特征參數的表征能力分析如表1所示。

表1 特征參數的表征能力分析
分析表1可以發現,根據灰度共生矩陣選取的10個特征參數與波紋度之間存在一定的相關性,其中能量、反差、相關、逆差距和熵等5個參數與波紋度具有較高的相關系數,而另外5個特征參數的表征能力置信度低于0.7,表征波紋度這種高精度的數據需要采用較高置信度的特征參數,在相關系數較高的5個特征參數中,可以發現,逆差距的波動系數小,穩定性不夠高。綜上所述,選取能量、反差、相關和熵這4個特征參數,能穩定、高效地表達波紋度,基于這些參數,建立了金屬板材表面波紋度的檢測模型和特征體系。
BP(Back-Propagation)神經網絡是神經網絡中使用最為廣泛的一類,其將系統所產生的誤差返回到輸出值,利用誤差來調整神經元的權重,生成一個可以模擬出原始問題的人工神經網絡系統[14]。反向傳播的基本思想就是通過計算輸出層與期望值之間的誤差來調整網絡參數,從而使得誤差變小。BP神經網絡模型中有3層結構,輸入層、隱藏層和輸出層,其誤差計算公式如式(7),(8)所示。
δ[L]=αL⊙σ′(z[L])
(7)
δ[ι]=ω[l+1]Tδ[l+1]⊙σ′(z[l])
(8)
式中:δ[L]為輸出層誤差;δ[ι]為隱含層誤差;a為學習率;T為輸出。
參數變化率如式(9),(10)所示。

(9)

(10)
式中:b為偏置項。
參數更新是BP神經網絡最重要的一個環節,直接影響模型預測準確率。式(11),(12)為參數更新的過程簡化。

(11)

(12)
輸入層神經元的數目過少,表征能力不足,映射關系的建立將存在一定難度。由上文可以得到,基于灰度共生矩陣提取的對比度、相關、能量、熵這4個特征參數對波紋度值具有較強的表征能力,因此,選取這4個參數作為輸入,則輸入層的神經元數目可以設置為4[15]。以表面波紋度為檢測對象,輸出層為波紋度值。模型輸出相對誤差Error、均方誤差MSE數學表達式如式(13),(14)所示。
Error=|bij-aij|max
(13)

(14)
式中:aij為神經網絡實際輸出矩陣中的元素;bij為神經網絡期望輸出矩陣中的元素。
由表2可知,當隱含層神經元數目為4,6,8,10時,均方誤差、不同神經元數目的相差不大,訓練時間在隱含層神經元個數為6時最短。綜合考慮相對誤差以及訓練時間的大小,選擇隱含層神經元數為6。設定BP神經網絡的參數如表3所示。

表2 不同隱含層神經元數目下的神經網絡性能

表3 BP神經網絡參數
金屬板材表面波紋度一般要求小于0.8 μm,選取波紋度值分別為0.35,0.55,0.75,0.95 μm的金屬板材樣塊。這些樣塊用表面輪廓測量儀進行測量,對同一樣塊的不同位置分別進行3次測量,同時計算出相應的特征參數。
根據圖像基于灰度共生矩陣的統計特征參數,輸入模型中進行訓練,訓練樣本如表4所示,將檢測結果與表面輪廓儀的實際測量值進行對比,結果如表5所示。

表4 訓練樣本
波紋度檢測模型的訓練樣本來源于尺寸較小的金屬板材試樣,拍攝的尺寸、圖像的放大倍率、光照的均勻性、試驗環境的干擾等都會對預測精度造成一定的影響。由表5可知,增加大尺寸金屬板材的樣本訓練后的波紋度檢測模型,檢測結果與實測值的最大絕對誤差值僅為0.051 μm,相對誤差平均值僅為4.90%,準確率達95.10%,達到了對金屬板材表面波紋度的檢測要求,證明了表面波紋度檢測模型在大尺寸金屬板材表面波紋度檢測中的可行性。

表5 實際值與檢測值對比
針對金屬板材的表面特性,提出了一種非接觸式的無損檢測表面波紋度檢測方法。該方法首先通過加權快速中值濾波實現圖像去噪,利用這種去噪方法有效地提升了圖像的去噪效率,之后提取圖像基于灰度共生矩陣的特征參數,驗證了與波紋度的相關性,并選取置信度較高、較為穩定的特征參數,最后將特征參數作為輸入參數,構建了基于BP神經網絡的表面波紋度檢測模型,并將檢測值與表面輪廓儀測量值進行對比,檢測結果與實測值誤差在允許范圍內,試驗檢測誤差僅為4.90%,驗證了該檢測模型的可行性,能夠實現金屬板材表面波紋度的快速、高精度檢測。