《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 設(shè)計(jì)應(yīng)用 > 基于視覺(jué)圖像的微小零件邊緣檢測(cè)算法研究
基于視覺(jué)圖像的微小零件邊緣檢測(cè)算法研究
摘要: 邊緣是指局部強(qiáng)度變化最顯著部分.主要存在于目標(biāo)與目標(biāo)、目標(biāo)與背景、區(qū)域與區(qū)域之間,是圖像分割、紋理特征和形狀特征等圖像分析的重要基礎(chǔ)。如何快速、準(zhǔn)確提取圖像的邊緣信息一直是國(guó)內(nèi)外研究的熱點(diǎn),目前已有多種邊緣檢測(cè)算法,其中最經(jīng)典的算法就是Sobel算法。該算法由于計(jì)算量小、速度快,廣泛應(yīng)用于諸多領(lǐng)域,但其檢測(cè)方向有限,抗噪能力較低,因此,該算法也具有一定的局限性。而且,實(shí)際應(yīng)用中,像素級(jí)已無(wú)法滿足精度要求,只能采用亞像素級(jí)的細(xì)分算法。
Abstract:
Key words :
1 引言
    邊緣是指局部強(qiáng)度變化最顯著部分.主要存在于目標(biāo)與目標(biāo)、目標(biāo)與背景、區(qū)域與區(qū)域之間,是圖像分割、紋理特征和形狀特征等圖像分析的重要基礎(chǔ)。如何快速、準(zhǔn)確提取圖像的邊緣信息一直是國(guó)內(nèi)外研究的熱點(diǎn),目前已有多種邊緣檢測(cè)算法,其中最經(jīng)典的算法就是Sobel算法。該算法由于計(jì)算量小、速度快,廣泛應(yīng)用于諸多領(lǐng)域,但其檢測(cè)方向有限,抗噪能力較低,因此,該算法也具有一定的局限性。而且,實(shí)際應(yīng)用中,像素級(jí)已無(wú)法滿足精度要求,只能采用亞像素級(jí)的細(xì)分算法。
    這里給出擴(kuò)展的4個(gè)方向的Sobel算子,即采用4個(gè)方向的模板,細(xì)化處理其梯度方向圖,鑒于插值法計(jì)算量小、精度高的特點(diǎn),故選用二次多項(xiàng)式插值法實(shí)現(xiàn)亞像素細(xì)分。

2 擴(kuò)展的Sobel細(xì)化算子
2.1 擴(kuò)展的兩個(gè)模板
   
圖像目標(biāo)的邊緣是灰度不連續(xù)性的反映,其種類(lèi)可粗略區(qū)分為:階躍性邊緣和層頂狀邊緣。前者的兩邊像素點(diǎn)灰度值顯著不同,后者位于灰度值從增加到減少的變化轉(zhuǎn)折點(diǎn)。為了更準(zhǔn)確描述圖像邊緣點(diǎn).減少噪聲對(duì)其檢測(cè)結(jié)果的影響,提高算子的抗噪能力,在水平、垂直模板的基礎(chǔ)上重新構(gòu)造2個(gè)3x3的模板,模板各個(gè)位置的權(quán)重是由該位置到中心點(diǎn)的距離以及該位置在模板中所在的方向決定的,等距離的點(diǎn)具有相同權(quán)重,如圖l所示。這里選用最高輸出模板所對(duì)應(yīng)的邊緣梯度值作為像元邊緣梯度強(qiáng)度。

2.2 Sobel算子細(xì)化邊緣
    圖像邊緣包含圖像的大量信息,但模板計(jì)算的數(shù)值僅僅只是圖像對(duì)應(yīng)的梯度圖像,邊緣出現(xiàn)于梯度較大位置,若想提取圖像邊緣必須設(shè)定閾值將其二值化。由一階梯度算子得到梯度圖像,一般邊緣較粗,若直接對(duì)其梯度圖像設(shè)定閾值進(jìn)行二值化,很難找到合適的閾值.也不便于邊緣連接與邊緣特征提取等后期處理。因此在對(duì)圖像梯度圖像進(jìn)行二值化前,必須細(xì)化所檢測(cè)的梯度邊緣。細(xì)化原理是基于經(jīng)典Sobel算子定義的:

   
    梯度方向?yàn)椋?/p>


    Sobel算子模板中的元素表示算式中相應(yīng)像素的權(quán)重因子。Sobel算子是邊緣檢測(cè)算子,故其處理模板中各因子之和為零。另一方面,由于正因子和負(fù)因子之和分別為4和一4,在極端情況下處理結(jié)果可能溢出。因此,在實(shí)際使用時(shí),Sobel算子通常采用已設(shè)定閾值進(jìn)行二值化,即處理結(jié)果得到的是已二值化的邊緣圖。該結(jié)果將導(dǎo)致邊緣圖中幅值較小的邊緣丟失。為了克服這個(gè)缺陷,引入一個(gè)衰減因子Scale,用它去除計(jì)算結(jié)果,來(lái)消除數(shù)據(jù)的溢出,而無(wú)需二值化處理,而且其結(jié)果是無(wú)失真的灰階邊緣圖,從而保留所有邊緣數(shù)值同。加入擴(kuò)展的模板后可得:


因子Scale取4,它也是歸一化因子,即兩個(gè)灰度層的階躍,交界處的處理結(jié)果就是其灰度差值。
    灰度圖像細(xì)化處理步驟如下:①對(duì)灰度圖像作帶衰減因子的Sobel處理,得灰度邊緣圖。Sobel處理采用式(3);②對(duì)所得灰度邊緣圖再作帶衰減因子的Sobel處理;③灰度邊緣圖減去Sobel處理結(jié)果,再將與負(fù)值部分對(duì)應(yīng)的邊緣點(diǎn)的值改為零,得到細(xì)化的邊緣圖。

3 多項(xiàng)式插值亞像素細(xì)分的精定位
    運(yùn)用Sobel細(xì)化算子改進(jìn)的方向模板獲取邊緣點(diǎn)的梯度方向,可采用已知的邊緣點(diǎn)的梯度方向近似代替未知的亞像素點(diǎn)的梯度方向,并在該方向上進(jìn)行二次多項(xiàng)式插值得到邊緣的亞像素位置。
  

 

  對(duì)于灰度圖像中任意點(diǎn)的梯度幅值用R表示,設(shè)R0為邊緣點(diǎn)P0(m,n)的灰度梯度方向的模,R-1,R1分別是在梯度方向上與P0相鄰的兩像素點(diǎn)P-1,P1的梯度幅值,經(jīng)推導(dǎo)可得亞像素點(diǎn)的坐標(biāo)(xe,ye)為:

 

   
式中:W為相鄰像素點(diǎn)到邊緣點(diǎn)距離,θ為梯度方向與x軸正向夾角。
    由式(4)可得出,亞像素細(xì)分定位邊緣的前提條件為:R0>R-1且R0>R1。
    采用擴(kuò)展的Sobel細(xì)化算子搜索單像素邊緣,在搜索過(guò)程中,剔除邊緣點(diǎn)梯度方向的非極大值,從而保證亞像像素細(xì)分定位的前提條件成立。方向模板與P-1,P1點(diǎn)坐標(biāo)對(duì)應(yīng)表如表1所示。

4 實(shí)驗(yàn)與結(jié)果分析
   
為了驗(yàn)證該算法,提取在線實(shí)時(shí)采集的微小零件圖像進(jìn)行實(shí)驗(yàn)。
    (1)可擴(kuò)展的Sobel細(xì)化算子的驗(yàn)證 引入灰階Sobel算子后,得到的邊緣圖仍是灰階圖像,此時(shí)采用Sobel算子處理,得到邊緣的邊緣圖。在新的邊緣圖上,原邊緣的兩側(cè)得到新的邊緣,而中間部分卻變成背景,且其寬度小于原邊緣。利用該特點(diǎn)細(xì)化原邊緣,即將原邊緣減去新邊緣圖,再將結(jié)果中與負(fù)的部分對(duì)應(yīng)的邊緣變?yōu)榱?,最后得到接近單像素寬的邊緣圖,從而達(dá)到細(xì)化邊緣的效果,如圖2所示。

    (2)亞像素細(xì)分算法定位 經(jīng)過(guò)擴(kuò)展方向模板的Sobel細(xì)化算子后,提取接近單像素的邊緣,在其梯度方向上用亞像素細(xì)分算法對(duì)圖像邊緣進(jìn)一步定位。
    圖3是在原邊緣基礎(chǔ)上取一段圓弧,對(duì)其細(xì)分前后的坐標(biāo)圖,可以看出,經(jīng)過(guò)亞像素細(xì)分算法定位后得到的像素邊緣比較光滑。相對(duì)于未細(xì)分,其精確度得到提高。

    (3)計(jì)算標(biāo)準(zhǔn)偏差 以單個(gè)點(diǎn)的像素坐標(biāo)值為標(biāo)準(zhǔn)坐標(biāo)值,將定位后的單點(diǎn)與對(duì)應(yīng)點(diǎn)的坐標(biāo)差作為算法偏差,計(jì)算得到的標(biāo)準(zhǔn)偏差約0.20 pixel。

5 結(jié)論
    采用的邊緣檢測(cè)算法是通過(guò)擴(kuò)展的4個(gè)方向的Sobel算子引入衰減因子而得到無(wú)失真的灰階邊緣圖,再采用Sobel算子細(xì)化,可使較陡邊緣部分光滑連續(xù),且接近單點(diǎn)寬的邊緣;采用二次多項(xiàng)式插值法在梯度方向插值后得到光滑邊緣,定位精度達(dá)到0.20 pixel,適于對(duì)精度要求較高的視覺(jué)系統(tǒng)。

 

 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。