陳少杰 李柏林 劉甲甲 馮河洋
(西南交通大學(xué)機(jī)械工程學(xué)院 四川 成都 610031)
?
快速魯棒的光學(xué)零件表面劃痕亞像素檢測(cè)方法研究
陳少杰 李柏林 劉甲甲 馮河洋
(西南交通大學(xué)機(jī)械工程學(xué)院 四川 成都 610031)
針對(duì)光學(xué)零件表面劃痕檢測(cè)精度較低的問題,提出一種多尺度線檢測(cè)與離散正交多項(xiàng)式曲線擬合相結(jié)合的亞像素邊緣檢測(cè)算法。首先,為克服噪聲等干擾,基于不同尺度線檢測(cè)特性,提出改進(jìn)的多尺度線檢測(cè),并通過該方法得到劃痕初始輪廓。然后,對(duì)邊緣點(diǎn)及其鄰域在梯度方向上的點(diǎn)進(jìn)行篩選。最后,利用正交多項(xiàng)式曲線擬合具有模型簡(jiǎn)單、求解速度較快、擬合精確的特點(diǎn),對(duì)所選取離散點(diǎn)進(jìn)行曲線擬合,以實(shí)現(xiàn)亞像素邊緣檢測(cè)。實(shí)驗(yàn)結(jié)果表明,該算法檢測(cè)精度較高,具有較強(qiáng)的魯棒性,同時(shí)更好地適用于屋脊邊緣檢測(cè);較最小二乘法時(shí)間大大降低,且低于較快速的三次樣條插值法,平均計(jì)算時(shí)間比為19.9∶4.73∶1,處理效率顯著提高,能夠滿足工程應(yīng)用中快速、高精度檢測(cè)要求。
光學(xué)器件 劃痕檢測(cè) 線性檢測(cè)器 曲線擬合 亞像素邊緣檢測(cè)
光學(xué)零件在拋光加工過程中,不可避免地會(huì)因拋光磨砂顆粒導(dǎo)致表面存在劃痕等缺陷。這些缺陷將會(huì)影響元件的正常工作,并影響光學(xué)系統(tǒng)的質(zhì)量。隨著機(jī)器視覺技術(shù)的快速發(fā)展,通過高分辨率CCD相機(jī)獲取疵病圖像,采用數(shù)字圖像處理算法,以實(shí)現(xiàn)劃痕疵病檢測(cè),逐步取代了傳統(tǒng)人工檢測(cè)方法。目前采用的邊緣檢測(cè)、閾值分割等圖像處理方法,算法簡(jiǎn)單、速度快,但對(duì)噪聲及光照不均等干擾敏感,且只能達(dá)到像素級(jí)精度[1,2]?,F(xiàn)代精密光學(xué)加工對(duì)表面疵病檢測(cè)精確度要求提高,像素級(jí)精度已經(jīng)不能滿足檢測(cè)精度的需求,因此需要更高精度的亞像素級(jí)的檢測(cè)算法。
初始邊緣的提取是亞像素邊緣定位的基礎(chǔ)。由于實(shí)際采集的圖像通常含有較多噪聲以及光照不均勻等干擾信息,且劃痕邊緣與背景對(duì)比度不明顯,常用的邊緣檢測(cè)算法Sobel、Roberts、Prewitt以及Canny等方法難以提取完整初始輪廓邊緣?;诰€性檢測(cè)的邊緣檢測(cè)方法受噪聲及光照不均等影響較小,在檢測(cè)屋脊邊緣方面取得一定效果。其最開始是由Ricci等人提出[3],用于檢測(cè)視網(wǎng)膜中血管。因其采用單一尺度線性檢測(cè)器,存在模糊緊鄰血管、產(chǎn)生偽邊緣等缺陷。Nguyen[4]等人將其推廣,構(gòu)建了多尺度線性檢測(cè),在視網(wǎng)膜血管圖像分割中取得較好效果;但是其計(jì)算模型只是簡(jiǎn)單地把不同尺度下線檢測(cè)響應(yīng)函數(shù)進(jìn)行線性融合,并引入了背景噪聲。在此基礎(chǔ)上,Hou[5]進(jìn)一步提出根據(jù)不同權(quán)重將不同尺度下線檢測(cè)響應(yīng)函數(shù)進(jìn)行融合的模型,能夠?yàn)樘卣鲌D像提供更多血管信息,但其不同尺度的響應(yīng)也未能充分利用各尺度線性檢測(cè)器的特性。本文提出了新的多尺度線性檢測(cè)器,使其能更好地檢測(cè)劃痕邊緣,且適用于常規(guī)屋脊邊緣檢測(cè)。目前常用的亞像素精度的檢測(cè)算法,主要分為插值法[6-8]、矩方法[9-13]和擬合法[14-16]等幾類。其中,插值法重復(fù)性好,計(jì)算量小,但定位精度較低;基于矩的方法,運(yùn)算復(fù)雜度較高,計(jì)算量普遍較大。基于高斯曲線擬合方法是對(duì)沿梯度方向梯度值進(jìn)行曲線擬合,模型簡(jiǎn)單,對(duì)于邊緣模糊程度不敏感。常用的曲線擬合方法是最小二乘法,其穩(wěn)定性較好,但計(jì)算復(fù)雜度高且耗時(shí)。
為了實(shí)現(xiàn)光學(xué)零件表面劃痕快速、穩(wěn)定、精確的邊緣檢測(cè),本文提出了一種基于改進(jìn)的多尺度線檢測(cè)與離散正交多項(xiàng)式曲線擬合相結(jié)合的亞像素邊緣檢測(cè)算法。該算法首先通過改進(jìn)的多尺度線檢測(cè)得到劃痕初始輪廓;然后,篩選邊緣點(diǎn)及其鄰域在梯度方向上的點(diǎn),并進(jìn)行正交多項(xiàng)式曲線擬合,從而實(shí)現(xiàn)亞像素邊緣檢測(cè)。通過實(shí)驗(yàn)分析和對(duì)比,本文改進(jìn)的多尺度線檢測(cè)受噪聲及光照不均等影響較小,魯棒性好;基于離散正交多項(xiàng)式曲線擬合的亞像素邊緣檢測(cè)算法快速、易于實(shí)現(xiàn)、抗噪聲能力較強(qiáng)、定位精度高。
(1)
基礎(chǔ)線檢測(cè)器中,窗口W的尺寸一般選為血管寬度的兩倍,以確保當(dāng)檢測(cè)窗口的中心位于血管中軸線上時(shí),血管和背景像素?cái)?shù)量近似相等,以此區(qū)分背景區(qū)域線檢測(cè)器的響應(yīng)。基礎(chǔ)線檢測(cè)器能很好地處理血管中央反射,受噪聲等干擾較小,但是其存在模糊鄰近血管、在強(qiáng)邊緣處產(chǎn)生偽邊緣等缺陷。多尺度線性檢測(cè)原理是不同尺度下線檢測(cè)器的響應(yīng)不同,長(zhǎng)尺度線性檢測(cè)器能夠檢測(cè)大尺寸血管,并且能夠處理中央反射;而短尺度檢測(cè)器能夠有效檢測(cè)細(xì)節(jié)及鄰近的并行血管?;诓煌瑱z測(cè)器的優(yōu)點(diǎn),Nguyen以及Hou分別提出式(2)、式(3)兩個(gè)不同多尺度線檢測(cè)模型:
(2)
(3)
(4)
該模型根據(jù)不同尺度響應(yīng)特性,改進(jìn)了多尺度的響應(yīng)權(quán)重,使其能更好地發(fā)揮不同尺度檢測(cè)器優(yōu)勢(shì),在避免偽邊緣產(chǎn)生的同時(shí),也為劃痕邊緣提供了更多的細(xì)節(jié)信息。由于原圖含有較多噪聲以及光照不均勻等干擾信息,為避免引入原圖干擾信息,所以不再加入原圖相關(guān)信息。
圖1 不同算法劃痕分割結(jié)果
經(jīng)過多尺度線性檢測(cè)之后并不能直接把劃痕提取出來,其結(jié)果代表每個(gè)像素屬于劃痕的可能性。還需要進(jìn)行后續(xù)處理,本文采取自適應(yīng)閾值分割處理算法。由于劃痕寬度集中在7個(gè)像素左右,因此設(shè)置窗口寬度W為15 個(gè)像素。最后得到的圖像結(jié)果如圖1(c)所示。通過圖中結(jié)果對(duì)比可知,本文所提出的多尺度算法在劃痕偽邊緣以及細(xì)節(jié)處理方面均比Nguyen與Hou效果好,并且受噪聲及光照不均等干擾信息影響較小。
邊緣附近點(diǎn)(過渡區(qū)域)的灰度值通常是連續(xù)分布而不是垂直于邊緣方向的階躍分布。根據(jù)中心極限定理,沿邊緣點(diǎn)梯度方向,灰度變化近似為高斯分布,并且高斯分布的中心是在沿該梯度方向灰度變化最大的地方,即為亞像素邊緣位置。因此,只要求得梯度分布曲線的極大值點(diǎn)即可得到亞像素邊緣坐標(biāo)。通過上述劃痕檢測(cè)算法,已經(jīng)得到像素級(jí)邊緣點(diǎn),此時(shí)需得到確定高斯曲線的離散點(diǎn)。在實(shí)際應(yīng)用中,取點(diǎn)個(gè)數(shù)太少會(huì)導(dǎo)致定位不準(zhǔn)確;反之,會(huì)因噪聲干擾影響定位精度且增加運(yùn)算負(fù)擔(dān)。所以本文提出的選取策略過程如下:
(1) 以邊緣點(diǎn)為中心,沿邊緣的梯度方向在梯度圖像中截取一系列像素點(diǎn)的梯度值 g(i),i=1,2,…,n;
(2) 以g(i)中最大值g(max)位置為分界點(diǎn),向前后兩個(gè)方向進(jìn)行篩選。當(dāng)g(i)-g(i-1) 由于得到的點(diǎn)的梯度圖像是離散的, 直接將這些離散數(shù)據(jù)擬合成高斯曲線,計(jì)算復(fù)雜,且難以進(jìn)行。高斯曲線方程經(jīng)過等式兩邊同時(shí)取對(duì)數(shù)后近似為拋物線,且二次曲線是高斯曲線的高次逼近,具有較高的計(jì)算精度。通過二次曲線來近似高斯曲線,求出極大值點(diǎn),即為亞像素邊緣點(diǎn)坐標(biāo),既能保證誤差較小,也能顯著提高計(jì)算效率。對(duì)于二次曲線擬合,常用的方法是最小二乘法,其穩(wěn)定性較好。但若直接進(jìn)行最小二乘法求解,計(jì)算復(fù)雜度高且耗時(shí)。為實(shí)現(xiàn)快速精確的亞像素邊緣檢測(cè),本文采用離散正交多項(xiàng)式作曲線最佳擬合[17-19]。 設(shè)多項(xiàng)式集合{p0(x),p1(x),…,pn(x)}是關(guān)于節(jié)點(diǎn)集合{x0,x1,…,xm}的一個(gè)正交多項(xiàng)式族。其中pi(x)代表一個(gè)i次多項(xiàng)式,一般有n p0(x)=1 p1(x)=x-α (5) pk+1(x)=(x-αk+1)pk(x)-βkpk-1(x) k=1,2,…,n-1 其中pk(x)為最高項(xiàng)系數(shù)為1的k次多項(xiàng)式,αk+1、βk+1由{pk(x)}的正交性可得: (6) 當(dāng)求解一個(gè)n次多項(xiàng)式擬合問題時(shí),可以利用正交多項(xiàng)式pi(x)作為線性組合模型的基函數(shù)。本文采用{p0(x),p1(x),p2(x)}作為擬合基底,進(jìn)行2次正交多項(xiàng)式擬合,則得到擬合多項(xiàng)式函數(shù)形式為: y=a0p0(x)+a1p1(x)+a2p2(x) (7) 依據(jù)線性組合模型的最小二乘擬合問題的求解方法以及正交多項(xiàng)式的定義,可以得到上述擬合問題的最小二乘解對(duì)應(yīng)線性方程組: (8) (9) 亞像素邊緣點(diǎn)坐標(biāo)位于曲線的極大值點(diǎn),通過對(duì)擬合曲線求一階導(dǎo)數(shù)即可得到極大值坐標(biāo)t,于是亞像素邊緣坐標(biāo)為(xs,ys): (10) 其中,(xP,yP)為初始像素位置,θ為梯度方向角。由于目標(biāo)函數(shù)是高斯曲線取對(duì)數(shù)后近似得到,因此進(jìn)行擬合的值應(yīng)當(dāng)用像素梯度值的對(duì)數(shù)值。 3.1 像素級(jí)邊緣檢測(cè)魯棒性實(shí)驗(yàn) 傳統(tǒng)的邊緣檢測(cè)算法中,Canny方法較其他方法抗噪性能好。因此,采用本文算法與Canny算法進(jìn)行對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖2所示。通過對(duì)比分析可知,本文提出的多尺度算法,處理得到的劃痕經(jīng)過輪廓提取后邊界連續(xù),對(duì)噪聲的抑制能力較強(qiáng),受到光照不均等影響較小,處理結(jié)果較一般邊緣檢測(cè)方法Canny算法效果更好;且不需要設(shè)定閾值,同時(shí)適用于一般屋脊邊緣檢測(cè)。 圖2 不同算法處理結(jié)果 3.2 亞像素級(jí)邊緣定位精度、魯棒性以及時(shí)間復(fù)雜度實(shí)驗(yàn) 矩方法因定位精度高和抗噪能力好而被廣泛應(yīng)用,但其定位原理是針對(duì)理想階躍邊緣模型,存在原理性誤差。且如果考慮模糊后的邊緣模型,就會(huì)增加模型參數(shù),導(dǎo)致參數(shù)求解變得十分困難,不利于實(shí)時(shí)檢測(cè)。插值法是對(duì)像素點(diǎn)的灰度值[6,7]或灰度值的一階導(dǎo)數(shù)[8]進(jìn)行插值。其中,基于灰度的三次樣條插值方法[7],根據(jù)樣條插值原理,得到邊緣的連續(xù)灰度分布;通過計(jì)算樣條函數(shù)的二階導(dǎo)數(shù)為零點(diǎn),實(shí)現(xiàn)亞像素定位,計(jì)算過程簡(jiǎn)單,運(yùn)算時(shí)間短。文獻(xiàn)[6,8]采用非線性四階插值,以增加圖像信息,實(shí)現(xiàn)亞像素邊緣定位。 針對(duì)上述特點(diǎn),本文采取文獻(xiàn)[7,8]中插值法、最小二乘法曲線擬合以及本文算法在定位精度、魯棒性以及時(shí)間復(fù)雜度方面進(jìn)行實(shí)驗(yàn)對(duì)比驗(yàn)證。 對(duì)于曲線擬合,常用的方法是最小二乘法,其穩(wěn)定性較好。通過對(duì)劃痕1911個(gè)邊緣點(diǎn)的數(shù)據(jù)分別采用最小二乘法和本文算法進(jìn)行擬合,得到結(jié)果如表1所示,其平均誤差為7.93×10- 8,平方差為1.69×10- 9。圖3中顯示了隨機(jī)抽取一組數(shù)據(jù)的不同算法的擬合曲線,其中本文算法與最小二乘法擬合曲線重合。這說明了本文算法擬合結(jié)果精確且穩(wěn)定,驗(yàn)證了其有效性及魯棒性。 表1 不同算法擬合結(jié)果對(duì)比 圖3 不同算法對(duì)數(shù)據(jù)進(jìn)行處理后曲線圖 利用本文算法與樣條插值法進(jìn)行對(duì)比實(shí)驗(yàn),其結(jié)果在原圖中局部顯示如圖4(a)所示。本文算法得到亞像素邊緣點(diǎn)比三次樣條插值法穩(wěn)定,抗噪性較強(qiáng),精度優(yōu)于該插值結(jié)果。利用本文算法與最小二乘法以及四階非線性插值法進(jìn)行對(duì)比試驗(yàn),隨機(jī)選取一組處理后數(shù)據(jù)。如圖3所示,本文算法與最小二乘法擬合曲線重合,得到的極大值位置(即亞像素邊緣點(diǎn)位置)為同一點(diǎn)。雖然該插值法得到曲線更接近原數(shù)據(jù),但當(dāng)原數(shù)據(jù)受噪聲等干擾時(shí),其得到結(jié)果也相應(yīng)地將受到影響;且沿邊緣某一梯度方向,梯度值近似為高斯分布,插值法得到的極大值位置與擬合法得到的近似高斯曲線的極大值點(diǎn)有偏差,所以定位結(jié)果并不精確。同時(shí)綜合圖4(b)可知,本文算法得到亞像素邊緣點(diǎn)比該插值法更接近實(shí)際邊緣點(diǎn),精度優(yōu)于該插值結(jié)果。這說明了本文算法的精確性與魯棒性。 圖4 不同算法亞像素邊緣檢測(cè)結(jié)果對(duì)比 時(shí)間復(fù)雜度方面,最小二乘法的時(shí)間復(fù)雜度為O(n4) ;三次樣條插值,其時(shí)間復(fù)雜度為O(n3);本文算法的時(shí)間復(fù)雜度為O(n2)。針對(duì)1911組數(shù)據(jù)處理的時(shí)間,如表2所示。本文算法時(shí)間較最小二乘法時(shí)間大大降低,且低于較快速的三次樣條插值法,平均計(jì)算時(shí)間比例為19.9∶4.73∶1,說明了本文算法的有效性。 表2 不同算法處理時(shí)間結(jié)果對(duì)比 本文以光學(xué)零件表面劃痕疵病圖像為例,提出了一種基于改進(jìn)的多尺度線檢測(cè)與離散正交多項(xiàng)式曲線擬合相結(jié)合的亞像素邊緣檢測(cè)算法。初始邊緣提取方面,本文提出的多尺度線檢測(cè)對(duì)于噪聲及光照不均等干擾不敏感,得到的邊界連續(xù),比Canny算法效果更好,并適用于一般屋脊邊緣檢測(cè);基于離散正交多項(xiàng)式曲線擬合的亞像素邊緣定位方法,很好地解決了最小二乘法復(fù)雜且耗時(shí)的問題,速度為最小二乘法的19.9倍,且比三次樣條插值法速度快;同時(shí)擬合精度高,定位較三次樣條以及四階非線性插值法精確,魯棒性好。實(shí)驗(yàn)結(jié)果表明,本文提出的方法易于實(shí)現(xiàn)、處理效率高、劃痕輪廓定位精度較高且穩(wěn)定。除光學(xué)零件圖像外,本文所提出的方法對(duì)其他類型圖像涉及到的屋脊邊緣檢測(cè)也具有很好的處理效果。 [1] Chen X Y,Liu D,Wang S T,et al.Research on digital calibration method for optical surface defect dimension[C]//6th International Symposium on Advanced Optical Manufacturing and Testing Technologies (AOMATT 2012).International Society for Optics and Photonics,2012,8417:84173L. [2] 朱聰,于廣婷,李柏林,等.一種新的精密光學(xué)鏡片表面疵病寬度測(cè)量方法[J].計(jì)算機(jī)應(yīng)用與軟件,2014,31(12):259-261,286. [3] Ricci E,Perfetti R.Retinal blood vessel segmentation using line operators and support vector classification[J].IEEE Transactions on Medical Imaging,2007,26(10):1357-1365. [4] Nguyen U T V,Bhuiyan A,Park L A F,et al.An effective retinal blood vessel segmentation method using multi-scale line detection[J].Pattern Recognition,2013,46(3):703-715. [5] Yanli Hou.Automatic Segmentation of Retinal Blood Vessels Based on Improved Multi-scale Line Detection[J].Journal of Computing Science and Engineering,2014,8(2):119-128. [6] Hermosilla T,Bermejo E,Balaguer A,et al.Non-linear fourth-order image interpolation for subpixel edge detection and localization[J].Image and Vision Computing,2008,26(9):1240-1248. [7] 孫秋成,周亞洲,寧闖,等.基于三次樣條插值的亞像素邊緣檢測(cè)方法[J].控制工程,2014,21(2):290-293. [8] 吳鵬,徐洪玲,宋文龍,等.基于非線性四階圖像插值的亞像素邊緣檢測(cè)算法[J].哈爾濱工程大學(xué)學(xué)報(bào),2015,36(2):243-247. [9] Da F P,Zhang H.Sub-pixel edge detection based on an improved moment[J].Image and Vision Computing,2010,28(12):1645-1658. [10] 楊浩,裴蕾,李昌順.基于Zernike矩亞像素邊緣檢測(cè)的快速算法[J].計(jì)算機(jī)應(yīng)用研究,2011,28(11):4380-4382,4385. [11] 肖鋒,郭麗娜.基于降維技術(shù)及空間矩的彩色圖像亞像素邊緣檢測(cè)[J].計(jì)算機(jī)應(yīng)用與軟件,2014,31(6):204-207. [12] Zeng T,Chen S G,Zhang B,et al.A fast subpixel edge detection method for image of micro-part[C]//Fifth International Conference on Machine Vision (ICMV 12). International Society for Optics and Photonics,2013,8783:87831H. [13] 蔡艷,葉連祥,孫大為,等.基于改進(jìn)的Zernike矩亞像素邊緣提取算法外螺紋非接觸測(cè)量[J].上海交通大學(xué)學(xué)報(bào),2014,48(10):1468-1472,1478. [14] Fabijanska A.Gaussian-based approach to subpixel detection of blurred and unsharp edges[C]//Computer Science and Information Systems (FedCSIS),2014 Federated Conference on.IEEE,2014:641-650. [15] Flesia A G,Ames G,Bergues G,et al.Sub-pixel straight lines detection for measuring through machine vision[C]//2014 IEEE International Instrumentation and Measurement Technology Conference (I2MTC) Proceedings,2014:402-406. [16] 陳小衛(wèi),徐朝輝,郭海濤,等.利用極值梯度的通用亞像素邊緣檢測(cè)方法[J].測(cè)繪學(xué)報(bào),2014,43(5):500-507. [17] Li Liwei,Zhang Bing,Gao Lianru,et al.Spectral feature extraction based on Orthogonal Polynomial Function fitting[C]//Pattern Recognition in Remote Sensing (PRRS),2014 8th IAPR Workshop on.IEEE,2014:1-4. [18] Carley M.Moving least squares via orthogonal polynomials[J].SIAM Journal on Scientific Computing,2010,32(3):1310-1322. [19] 李建保,張鐵,孫寶京,等.基于正交多項(xiàng)式最小二乘分段擬合的氣象探測(cè)數(shù)據(jù)處理方法[C]//第23屆中國(guó)控制與決策會(huì)議,2011:838-841. RESEARCH ON FAST AND ROBUST SUB-PIXEL DETECTION METHOD FOR SCRATCHES ON OPTICAL COMPONENTS Chen Shaojie Li Bailin Liu Jiajia Feng Heyang (CollegeofMechanicalEngineering,SouthwestJiaotongUniversity,Chengdu610031,Sichuan,China) Aiming at the problem of low precision in scratch detection on optical lens surface, we proposed a sub-pixel edge detection algorithm, which combines the multi-scale line detection and discrete orthogonal polynomial curve fitting. First, to overcome interference of noise, based on the characteristics of line detection in different scales we proposed an improved multi-scale line detection, and obtained initial contour of scratches by this method. Then, we screened the edge points and the points of their neighbourhood on gradient direction. Finally, by making use of the advantages of orthogonal polynomial curve fitting in simple model, fast processing and precise fitting, we fitted the selected discrete points into curve so as to realise the sub-pixel edge detection. Experimental results show that the proposed method has higher accuracy and robustness, and is suitable for roof edge detection better. In terms of processing time, the method is greatly reduced when contrasting with the least square method, and is also faster than cubic spline interpolation method, their average computation time ratios are 1∶19.9∶4.73, the processing efficiency is significantly improved. This method can meet the requirements of fast and high precision detection in engineering applications. Optical devices Scratch detection Linear detector Curve fitting Sub-pixel edge detection 2015-09-06。四川省科技支撐計(jì)劃基金項(xiàng)目(2014GZ 0005)。陳少杰,碩士生,主研領(lǐng)域:數(shù)字化設(shè)計(jì)和圖像處理。李柏林,教授。劉甲甲,博士生。馮河洋,碩士生。 TP391.41 A 10.3969/j.issn.1000-386x.2016.11.0373 實(shí)驗(yàn)結(jié)果與分析
4 結(jié) 語(yǔ)