田國富,馬書新,高峰
(沈陽工業(yè)大學(xué) 機(jī)械工程學(xué)院,遼寧 沈陽 110870)
摘要:提出了一種基于圖像處理的玻璃缺陷實(shí)時(shí)檢測系統(tǒng)。闡述了系統(tǒng)的基本原理和結(jié)構(gòu),著重研究了系統(tǒng)的核心技術(shù):中值濾波、圖像分割、邊緣檢測、缺陷定位、參數(shù)計(jì)算與缺陷識別。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)的檢測識別率高,達(dá)到95%;速度快,處理周期約350 ms;抗干擾能力強(qiáng),基本能夠?qū)崿F(xiàn)鋼化玻璃缺陷的在線檢測要求。
關(guān)鍵詞:玻璃缺陷;實(shí)時(shí)檢測;圖像處理;BP神經(jīng)網(wǎng)絡(luò)
0引言
現(xiàn)在的玻璃缺陷檢測系統(tǒng)主要是利用人工檢測、激光檢測和摩爾干涉定理的方法。人工檢測容易帶來主觀誤差,激光檢測易受干擾,摩爾干涉定理檢測往往占用大量的檢測時(shí)間,不能適應(yīng)自動化生產(chǎn)線。將圖像測量技術(shù)應(yīng)用于玻璃的非接觸測量,可以避免主觀誤差,提高檢測效率[1]。
1系統(tǒng)概述
1.1系統(tǒng)的整體結(jié)構(gòu)
圖1所示為玻璃缺陷實(shí)時(shí)檢測系統(tǒng)的基本結(jié)構(gòu),主要包括:LED光源、CCD陣列攝像機(jī)、圖像處理單元、顯示器、通信/輸入輸出單元等。
圖1實(shí)時(shí)檢測系統(tǒng)結(jié)構(gòu)示意圖玻璃原板的檢測幅面較大,檢測精度和效率要求較高,故系統(tǒng)采用C/S網(wǎng)絡(luò)化分布的并行處理方式[2]。如圖2所示,使用柯拉光路透鏡組以獲取均勻穩(wěn)定的視場強(qiáng)度,使用遮光罩避免了外部光的干擾。
1.2系統(tǒng)的基本原理
圖3為實(shí)時(shí)檢測原理示意圖,光源背面垂直照射玻璃,由攝像機(jī)組拍攝圖像,傳輸?shù)接?jì)算機(jī)中,由軟件進(jìn)行圖像分析,提取缺陷的位置,特征參數(shù)及判別類型,并通過局域以太網(wǎng)發(fā)送至總服務(wù)器 [3]。
2玻璃圖像的精確測量
在光源照射下,玻璃缺陷的圖像顯示是非常明顯的,這就為圖像檢測奠定了基礎(chǔ)。圖4所示為缺陷的圖像檢測算法步驟[4]。
2.1圖像去噪
采用了一種改進(jìn)的自適應(yīng)中值濾波算法 [5],其過程如下:假設(shè)玻璃圖像大小為m×n,T的初值為玻璃圖像總像素的一半,即T=mn/2。
(1)窗口回復(fù)缺省值,對新開始的內(nèi)容排序并建立直方圖,確定其值P,同時(shí)記下亮度Pi不大于P的像素?cái)?shù)目Q。
(2)因最左列亮度PL的每個(gè)像素為P,且H[PL] =H[PL]-1。則H[PL]即為直方圖最左列亮度的像素?cái)?shù)。
(3)將窗口右移1列,因最右列亮度PR的每個(gè)像素為P,且H[PR]=H[PR]+1。如果PR<P,則置Q=Q+1。
(4)若Q>T則轉(zhuǎn)步驟(5)。重復(fù)Q=Q+H[P], P=P+1;直到Q≥T,則轉(zhuǎn)步驟(6)。
(5)重復(fù)P=P-1,Q=Q-H[P],直到Q≤T。
(6)如果窗口的右側(cè)列不是玻璃圖像的右邊界,則轉(zhuǎn)步驟(2)。
(7)如果窗口的底行不是玻璃圖像的下邊界,則轉(zhuǎn)步驟(1)。
2.2閾值分割
提出了一種復(fù)合型閾值分割算法。
2.2.1基于自跟蹤的閾值曲面分割方法[6]
在檢測前采集一無缺陷玻璃圖像,將其灰度分布曲面作為初始曲面f0(x,y)。假設(shè)圖像為m×n, R(x,y)為實(shí)時(shí)圖像,G為平均灰度差變化:
以G為修正值對f0(x,y)修正,得到新的閾值曲面T(x,y),有
T(x,y)=f0(x,y)+G(2)
為了保證分割時(shí)缺陷的特征,必須保持各像素間的灰度關(guān)系,因此采用式(3)所示的向下分割[7]:
2.2.2自適應(yīng)閾值分割[8]
整幅圖像總像素像素的灰度值比閾值T小的像素個(gè)數(shù)記作N1,比閾值T大的像素個(gè)數(shù)記作N2,則目標(biāo)像素點(diǎn)數(shù)在整幅圖像中所占比例為C1=N1M×N,平均灰度為U1,背景像素點(diǎn)數(shù)在整幅圖像中所占比例為C2=N2M×N,平均灰度為U2。其中N1+N2=M×N, U1+U2=1。則圖像的加權(quán)平均灰度值U與類間方差g分別為:
U=C1×U1+C2×U2(4)
g=C1×(U-U1)2+C2×(U-U2)2(5)
當(dāng)g最大時(shí),目標(biāo)與背景的對比度最大,可用遍歷法得到對應(yīng)的最大最佳閾值T,然后進(jìn)行圖像二值化分割。
2.3圖像邊緣檢測
本文采用了一種二階段逼近式亞像素邊緣檢測算法。
2.3.1圖像邊緣粗定位
Sobel算子能確定邊緣點(diǎn)的位置和方向,對噪聲具有平滑作用,所以在邊緣粗定位時(shí)選用Sobel算子[8]。給定閾值T,根據(jù)圖5可知,若像素f(x,y)附近存在邊緣時(shí),梯度值S(x, y)需要滿足以下關(guān)系:
S(x,y)≥S(x+1,y)>S(x+2,y),
S(x,y)≥S(x-1,y)>S(x-2,y),S(x,y)>T
?。▁,y-2)(x,y-1)(x-2,y)(x-1,y)(x, y)(x+1,y)(x+2,y)(x,y+1)(x,y+2)
2.3.2圖像邊緣精定位
選取5個(gè)像素點(diǎn),橫坐標(biāo)x代表像素值,其取值分別設(shè)為-2、-1、0、1、2,其縱坐標(biāo)y代表各點(diǎn)對應(yīng)的灰度值,依據(jù)施密特正交化法得到正交基,如式(6)所示:
則灰度分布擬合表達(dá)式為:
F5(x)=a0×G0(x)+a1×G1(x)+a2×G2(x)
+a3×G3(x)+a4×G4(x)+a5×G5(x)(7)
根據(jù)最小二乘法原理有:
根據(jù)函數(shù)的極值求解條件,求解的x即是亞像素點(diǎn)的位置。
2.4缺陷區(qū)域定位
在同一實(shí)驗(yàn)環(huán)境下,分別采用8鄰域搜索算法及RLE算法對同一幅8 000×6 000的含缺陷的灰度圖像進(jìn)行處理,記錄時(shí)間運(yùn)算周期,結(jié)果如表1所示[9]。
2.5缺陷特征參數(shù)提?。?0]
本文提取如下4種特征參數(shù)作為區(qū)分缺陷類型的指標(biāo): 缺陷核心面積、缺陷目標(biāo)的伸長度、周長和圓形度。
(1)面積A定義為區(qū)域內(nèi)所包圍的像素點(diǎn)數(shù)。計(jì)算方法是掃描整幅圖像,統(tǒng)計(jì)目標(biāo)邊界及內(nèi)部的全部像素?cái)?shù),公式為:
(2)伸長度Q可以把細(xì)長目標(biāo)和近似圓形或方形目標(biāo)區(qū)分開來,公式為:
Q=DL/A(13)
其中,A為缺陷區(qū)域面積,D與L分別為目標(biāo)寬度和長度。
(3)周長Z即區(qū)域邊界的長度。假設(shè)每個(gè)點(diǎn)是面積為1的一個(gè)小方塊,對圖像邊緣做出標(biāo)記,累計(jì)所標(biāo)記的像素總數(shù),即為周長。標(biāo)記方法如下:
?、俣x一個(gè)二維數(shù)組h(i, j)=1,其中(i, j)是值為 1的點(diǎn)的坐標(biāo)。
?、趯φ鶊D像從上到下掃描,比較相鄰兩點(diǎn)的值,若值為1和0,則令h1(i, j)=1,記錄滿足條件的像素?cái)?shù)目Z1;再從左到右掃描,比較相鄰兩點(diǎn)的值,若值為1和0,則令h2(i, j)=1,記錄像素?cái)?shù)目Z2。
?、塾?jì)算Z=Z1+Z2,Z為區(qū)域邊界的周長。
?。?)圓形度O主要用來區(qū)分圓形或橢圓形缺陷(氣泡等)及細(xì)長狀缺陷(裂紋或異物摻雜等),可用式(14)求解:
O=A/Z2(14)
2.6缺陷類型識別
2.6.1缺陷類型識別原理
若當(dāng)均勻光垂直入射沒有雜質(zhì)的玻璃時(shí),出射光的強(qiáng)度也是均勻的,方向也不會發(fā)生改變,如圖6(a)所示;若遇到光透射型缺陷,光線在缺陷位置發(fā)生折射,相機(jī)靶面上探測到的光相應(yīng)增強(qiáng),如圖6(b)所示;若遇到光吸收型雜質(zhì),則該缺陷位置的光會變?nèi)?,相機(jī)靶面上探測到的光比周圍的光要弱,如圖6(c)所示[10]。
2.6.2缺陷類型識別方法
考慮到玻璃缺陷分類的多類性和非線性,系統(tǒng)采用三層BP算法的神經(jīng)網(wǎng)絡(luò)識別缺陷。缺陷識別流程如圖7所示。隱含層節(jié)點(diǎn)數(shù)取7,激活函數(shù)為sigmoid函數(shù),將雜質(zhì)特征參數(shù)作為網(wǎng)絡(luò)輸入,網(wǎng)絡(luò)輸出為雜質(zhì)類型,在誤差反饋時(shí)采用動量項(xiàng)和自適應(yīng)學(xué)習(xí)速度的方法改進(jìn)網(wǎng)絡(luò)訓(xùn)練[11]。
實(shí)驗(yàn)證明,在誤差范圍達(dá)到0.002時(shí),缺陷識別率在95%,對大于0.4 mm的缺陷分類準(zhǔn)確率達(dá)92%,滿足了浮法玻璃缺陷在線分類的要求。
3實(shí)驗(yàn)數(shù)據(jù)與誤差分析
系統(tǒng)每處理一幀6 140×2 000的圖像時(shí)間為350 ms,以縱向0.2 mm/pixel的分辨率計(jì)算, 30 m/min的速度對應(yīng)采集每幀的時(shí)間為540 ms>350 ms,算法很好地滿足了缺陷在線檢測的實(shí)時(shí)性要求。
圖8玻璃缺陷對圖8所示兩種缺陷圖像進(jìn)行實(shí)時(shí)處理,計(jì)算區(qū)域特征參數(shù)并進(jìn)行識別分類,數(shù)據(jù)如表2所示,可以看出,算法具有較高的識別正確率和分類準(zhǔn)確率。
4結(jié)論
針對鋼化玻璃生產(chǎn)企業(yè)的需求,采用視覺檢測方法,實(shí)現(xiàn)了玻璃缺陷快速定位、計(jì)算和類型識別,缺陷識別率在95%以上,分類準(zhǔn)確率達(dá)92%。儀器的連續(xù)性好,抗干擾能力強(qiáng),在應(yīng)對鋼化玻璃的自爆問題上可以發(fā)揮很大作用。
參考文獻(xiàn)
?。?] 石兵華,金永,王召巴.基于數(shù)字光柵投影的浮法玻璃缺陷檢測方法研究[J]. 光電子.激光, 2014,25(3):521525.
?。?] 王飛,崔鳳奎,劉建亭,等.一種平板玻璃缺陷在線檢測系統(tǒng)的研究[J].應(yīng)用光學(xué), 2010,31(1):9599.
?。?] 趙漣漪,許寶杰,童亮. 玻璃缺陷在線檢測系統(tǒng)的研究[J].北京信息科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,26(4):5761.
?。?] 楊繼亮,金永,王召巴.基于線陣CCD的玻璃缺陷檢測系統(tǒng)研究[J].傳感器與微系統(tǒng),2011,30(11):2527.
[5] 周欣,鄧文怡,劉力雙. 玻璃缺陷快速檢測分類研究[J]. 微計(jì)算機(jī)信息, 2008,28(27):304305,20.
?。?] 楊杰,盧盛林,趙曉芳. 機(jī)器視覺在鋼化玻璃缺陷檢測中的應(yīng)用研究[J].計(jì)算機(jī)技術(shù)與發(fā)展, 2013,23(3):211214.
?。?] 趙健,高軍,羅超,等.基于數(shù)字圖像處理的玻璃缺陷在線檢測系統(tǒng)[J].電子技術(shù)應(yīng)用, 2013,39(12):9092.
?。?] 田國富,高峰. 一種圖像亞像素邊緣檢測算法的改進(jìn)研究[J]. 微型機(jī)與應(yīng)用, 2015,34(21):4042.
[9] 余文勇,周祖德,陳幼平. 一種浮法玻璃全面缺陷在線檢測系統(tǒng)[J]. 華中科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2007,35(8):14.
?。?0] 劉懷廣,陳幼平,謝經(jīng)明,等. 浮法玻璃缺陷在線識別技術(shù)的研究[J]. 小型微型計(jì)算機(jī)系統(tǒng), 2011,38(4):738742.
?。?1] 吳丹. 玻璃缺陷識別算法研究[J]. 現(xiàn)代工業(yè)經(jīng)濟(jì)和信息化,2015,5(2):7273.