国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Canny算子的改進(jìn)型圖像邊緣提取算法

2019-02-21 07:59:34費(fèi)勝巍儲(chǔ)有兵
自動(dòng)化與儀表 2019年1期
關(guān)鍵詞:高斯算子梯度

范 晞,費(fèi)勝巍,儲(chǔ)有兵

(東華大學(xué) 機(jī)械工程學(xué)院,上海 201620)

圖像的最基本特征是邊緣,即像素灰度級(jí)的階梯變化或屋頂變化的像素點(diǎn)集合。目前,常用的邊緣提取算子大致分為兩類(lèi):一階差分邊緣檢測(cè)算子和二階微分邊緣檢測(cè)算子。常見(jiàn)的一階差分邊緣檢測(cè)算子主要包括Sobel算子、Prewitt算子和Roberts算子。二階微分邊緣檢測(cè)算子主要有LoG算子、Laplace算子等。在常見(jiàn)的邊緣檢測(cè)算子中,Laplace算子產(chǎn)生雙邊界,而其他算子如Sobel算子,會(huì)形成一個(gè)非封閉區(qū)域,且對(duì)噪聲敏感。

與傳統(tǒng)的微分算子相比,基于優(yōu)化算法的Canny邊緣檢測(cè)算子由于具有信噪比大、檢測(cè)精度高的優(yōu)點(diǎn)而得到了廣泛的應(yīng)用,然而傳統(tǒng)的Canny算子在實(shí)際濾波過(guò)程中會(huì)造成邊緣模糊。許多學(xué)者對(duì)此進(jìn)行了深入的研究,并提出了一些改進(jìn)型的Canny算法。例如,文獻(xiàn)[1]用中值濾波替代高斯濾波;文獻(xiàn)[2]使用基于梯度方向的檢測(cè)方法替代雙閾值法;文獻(xiàn)[3]通過(guò)形態(tài)學(xué)來(lái)細(xì)化邊緣。在此提出的改進(jìn)型算法使用雙邊濾波器代替?zhèn)鹘y(tǒng)Canny算法中的高斯濾波器,可以在去除噪聲的同時(shí)保留更多邊緣信息,并增加了45°和135°兩個(gè)方向的梯度模板來(lái)計(jì)算梯度幅值,從而可以檢測(cè)到更多的邊緣,同時(shí)采用Curvelet變換增強(qiáng)圖像邊緣,減少假邊緣的產(chǎn)生。

1 傳統(tǒng)Canny檢測(cè)算法

1.1 理論基礎(chǔ)

Canny邊緣檢測(cè)算法是Canny[4]在1986年提出的一種多邊緣檢測(cè)算法,并給出了判斷邊緣檢測(cè)性能的3個(gè)標(biāo)準(zhǔn):

信噪比標(biāo)準(zhǔn)主要作用是提高邊緣檢測(cè)的正確性,使得錯(cuò)檢或者漏檢的邊緣錯(cuò)誤率下降。

最佳定位標(biāo)準(zhǔn)目的是使標(biāo)記得出的邊緣盡可能地接近圖像真正的邊緣,從而提高定位的精度。

單邊應(yīng)答標(biāo)準(zhǔn)是為了確保在單個(gè)邊緣上只有一個(gè)像素應(yīng)答,并最大程度地抑制假邊緣的應(yīng)答。

1.2 傳統(tǒng)Canny 算法實(shí)現(xiàn)步驟

步驟1高斯濾波器平滑圖像。傳統(tǒng)Canny算法采用高斯濾波器[5],利用其一階導(dǎo)數(shù)分別按行和列對(duì)原始圖像進(jìn)行卷積處理,由此平滑圖像。

式中:σ為高斯函數(shù)的標(biāo)準(zhǔn)差,用于調(diào)節(jié)平滑程度;f(x,y)為原始圖像;I(x,y)為平滑圖像。

步驟2計(jì)算梯度的幅值和方向。采用2×2鄰域一階偏導(dǎo)的有限差分,計(jì)算I(x,y)的二維高斯函數(shù) G(x,y)的梯度矢量▽G,即

根據(jù)高斯函數(shù)的可分離性,將梯度矢量的卷積模板分解為2個(gè)一維的行和列濾波器,即

將式(4)(5)分別與 f(x,y)卷積,得到

式中:A(i,j),?(i,j)分別為圖像上點(diǎn)(i, j)處的梯度幅值和方向角。

步驟3對(duì)梯度幅值應(yīng)用非極大值抑制。在3×3的窗口范圍內(nèi)插值像素。如圖1所示,將周?chē)袼胤纸鉃?個(gè)方向鄰域,并以A(i,j)為中心計(jì)算總共9個(gè)像素的梯度,并在梯度方向上插值結(jié)果。對(duì)于每個(gè)像素,A(i,j)與沿著梯度方向的2個(gè)梯度幅值進(jìn)行比較。如果A(i,j)值小于在梯度方向上的2個(gè)插值結(jié)果,則 A(i,j)的邊緣被標(biāo)記為0;如果 A(i,j)值大于等于在梯度方向上的2個(gè)插值結(jié)果,則A(i, j)的邊緣被納入候選對(duì)象。

圖1 像素點(diǎn)鄰域Fig.1 Pixel point neighborhood

步驟4用雙閾值算法檢測(cè)和連接邊緣。經(jīng)非極大值抑制得到的結(jié)果,仍存在許多噪聲和假邊緣,需要進(jìn)一步閾值處理,以消除假邊緣。通常的做法是確定1個(gè)高閾值Th和1個(gè)低閾值Tb,即在灰度直方圖中像素點(diǎn)個(gè)數(shù)沿梯度方向累加,當(dāng)像素累加個(gè)數(shù)達(dá)到像素總個(gè)數(shù)的80%時(shí),將該處的閾值設(shè)定為T(mén)h,Tb則為T(mén)h的 40%。

2 改進(jìn)型Canny算子

傳統(tǒng)Canny算法采用高斯函數(shù)濾波,在去除噪聲的同時(shí)會(huì)造成邊緣模糊,而且會(huì)丟失一些細(xì)節(jié)信息。針對(duì)這一問(wèn)題,在此提出采用雙邊濾波代替高斯濾波,以達(dá)到增強(qiáng)保邊的目的,并增加45°和135°兩個(gè)方向的梯度模板,以確保檢測(cè)出更多的真實(shí)邊緣,再結(jié)合Curvelet變換增強(qiáng)圖像邊緣,減少假邊緣的產(chǎn)生。

2.1 雙邊濾波原理

Tomasi在1998年提出雙邊濾波算法[6]。雙邊濾波(Bilateral filter)是一種非線性的濾波方法,它結(jié)合了圖像的空間鄰近性和像素值的相似性,并考慮了空間信息和灰度的相似性,從而達(dá)到了保留邊緣和去噪的目的。它比高斯濾波器多了1個(gè)高斯方差sigma-d,其基于高斯濾波函數(shù)的空間分布,所以在邊緣附近,距離較遠(yuǎn)的像素不會(huì)過(guò)多影響到邊緣上的像素值,這樣就確保了邊緣附近像素值的保存。

雙邊濾波的像素輸出值取決于鄰域像素值的加權(quán)組合,即:

式中:p(i,j)為像素輸出值; f(k,l)為像素輸入值;ω(i,j,k,l)為加權(quán)系數(shù)。

2.2 梯度計(jì)算

傳統(tǒng)的Canny算子在計(jì)算梯度時(shí)僅計(jì)算水平方向和垂直方向上的像素梯度值,從而導(dǎo)致邊緣像素丟失。為了能夠檢測(cè)更多的方向像素,在此提出在Sobel卷積的情況下,添加45°和135°兩個(gè)方向的梯度模板,如圖2所示。

圖2 四方向梯度模板Fig.2 Four-direction gradient template

圖中,4個(gè)方向的梯度模板分別為

式中:Qx為水平方向的梯度模板;Qy為垂直方向的梯度模板;Qxy為45°方向的梯度模板;Qyx為135°方向的梯度模板。

4個(gè)方向上的梯度分量 Ex,Ey,Exy,Eyx可以分別由 Qx,Qy,Qxy,Qyx卷積得到,則該像素點(diǎn)的梯度幅值E為

2.3 Curvelet變換

2002年文獻(xiàn)[7]給出第二代Curvelet變換,并在其基礎(chǔ)上提出了一種快速離散變換算法。Curvelet變換是基于傅里葉變換和小波變換的改進(jìn),它具有高度各向異性,并且具有很好的沿邊緣表達(dá)信息的能力,這對(duì)于恢復(fù)形狀的沿邊緣的主要結(jié)構(gòu)和抑制周邊噪聲具有優(yōu)勢(shì)。其過(guò)程如圖3所示。

圖3 Curvelet變換過(guò)程Fig.3 Curvelet transformation process

文獻(xiàn)[7]所提出的離散Curvelet變換有USFFT法和Wrapping法2種實(shí)現(xiàn)方法。在此采用了Wrapping法,其實(shí)現(xiàn)步驟如下:

步驟1笛卡爾坐標(biāo)系中任意函數(shù)f的二維FFT 變換,得到 f[n1,n2],-n/2≤n1,n2≤n/2。

步驟2針對(duì)頻域中的尺度j和方向l參數(shù),進(jìn)行重采樣,得到 f[n1,n2-n1tanθl]。

步驟3將步驟2中的f與方形窗相乘,并在原點(diǎn)附近對(duì) f[n1,n2]局部化。

步驟4利用二維快速傅里葉逆變換(IFFT),得到離散Curvelet變換系數(shù)集。

3 試驗(yàn)結(jié)果及效果評(píng)價(jià)

3.1 視覺(jué)效果比較

選用像素大小為512×512的Barbara圖像作為試驗(yàn)對(duì)象,并加入1%的椒鹽噪聲,通過(guò)MatLab 2013a仿真軟件作為實(shí)驗(yàn)平臺(tái),傳統(tǒng)的Canny算子檢測(cè)效果如圖4所示,試驗(yàn)中選取Th=120,sigma=1。由圖4(c)可見(jiàn)經(jīng)過(guò)傳統(tǒng)Canny算子檢測(cè)圖像去噪的同時(shí)存在明顯的模糊邊緣。

圖4 傳統(tǒng)Canny算子檢測(cè)效果Fig.4 Traditional Canny operator detection effect

圖5為本文改進(jìn)型Canny算子。由圖5(a)可以看出,在進(jìn)行雙邊濾波后圖像保留了更多的邊緣信息,同時(shí)減少了噪聲的干擾。在sobel邊緣檢測(cè)中,增加2個(gè)方向的梯度幅值保留了更多的真實(shí)邊緣,接著進(jìn)行的Curvelet變換將圖像分解為高頻子帶和低頻子帶。通過(guò)對(duì)高頻子帶進(jìn)行非線性閾值去噪;對(duì)低頻子帶進(jìn)行分段非線性增強(qiáng),最后完成Curvelet逆變換以增強(qiáng)圖像邊緣。

圖5(d)為本文改進(jìn)型Canny算法的檢測(cè)結(jié)果。對(duì)比傳統(tǒng)Canny算法,本文算法檢測(cè)的邊緣更加清晰和真實(shí),同時(shí)具有較強(qiáng)的抗噪聲干擾檢測(cè)能力。

圖5 改進(jìn)型Canny算子檢測(cè)效果Fig.5 Improved Canny operator detection effect

3.2 評(píng)價(jià)參數(shù)比較

為了定性分析試驗(yàn)效果,選取均值、方差、信息熵以及平均梯度作為衡量指標(biāo)。方差能夠度量圖像灰度值分散程度,信息熵能夠度量圖像灰度值的一致性,平均梯度作為衡量圖像清晰程度的標(biāo)準(zhǔn)。評(píng)價(jià)參數(shù)見(jiàn)表1。

由表可知,高斯濾波后圖像的均值有所下降,表明圖像亮度改變較大;而雙邊濾波后的均值與原始圖像基本相同,圖像亮度基本不變。Cuevelet變換后的圖像均值略有下降,但圖像亮度基本與原始圖像一致。根據(jù)信息熵可看出,對(duì)雙邊濾波后的圖像進(jìn)行Curvelet變換的圖像信息熵遠(yuǎn)高于高斯濾波圖像。這表明本文改進(jìn)型算法能夠最大程度地保持圖像灰度的一致性。由平均梯度可看出,Curvelet變換后圖像的平均梯度值最大,說(shuō)明本文算法在保留邊緣細(xì)節(jié)信息上效果最佳。

表1 試驗(yàn)結(jié)果評(píng)價(jià)參數(shù)Tab.1 Test result evaluation parameters

4 結(jié)語(yǔ)

分析了傳統(tǒng)Canny邊緣檢測(cè)算子存在的不足之處,在此基礎(chǔ)上提出了一種改進(jìn)型Canny邊緣檢測(cè)算子。試驗(yàn)結(jié)果表明,該算法能夠有效地減少假邊緣的產(chǎn)生,保留更多的真實(shí)邊緣,提高了邊緣檢測(cè)的精確度。同時(shí)在抗噪聲干擾方面也優(yōu)于傳統(tǒng)Canny算子。由對(duì)比試驗(yàn)結(jié)果可以看出,本文算法為邊緣檢測(cè)提供了一種新思路。該算法尚存在一些問(wèn)題,比如:增加2個(gè)方向的梯度幅值后,對(duì)于梯度模板的選取因人而異,其效果對(duì)于先驗(yàn)知識(shí)依賴較大;在進(jìn)行非極大值抑制時(shí),對(duì)于高低閾值的選取,其自適應(yīng)能力較差。對(duì)此有待于進(jìn)行深入的研究。

猜你喜歡
高斯算子梯度
小高斯的大發(fā)現(xiàn)
一個(gè)改進(jìn)的WYL型三項(xiàng)共軛梯度法
擬微分算子在Hp(ω)上的有界性
一種自適應(yīng)Dai-Liao共軛梯度法
各向異性次Laplace算子和擬p-次Laplace算子的Picone恒等式及其應(yīng)用
天才數(shù)學(xué)家——高斯
一類(lèi)Markov模算子半群與相應(yīng)的算子值Dirichlet型刻畫(huà)
一類(lèi)扭積形式的梯度近Ricci孤立子
Roper-Suffridge延拓算子與Loewner鏈
有限域上高斯正規(guī)基的一個(gè)注記
灵川县| 敦化市| 巴中市| 陇西县| 从江县| 凤山县| 南靖县| 庆阳市| 明光市| 城口县| 丰宁| 开化县| 眉山市| 甘谷县| 鄂伦春自治旗| 黄浦区| 长葛市| 郓城县| 清丰县| 新郑市| 漯河市| 天长市| 平陆县| 卢龙县| 扎囊县| 太康县| 景谷| 湖北省| 平阳县| 夏河县| 荣昌县| 江山市| 惠水县| 鄂伦春自治旗| 观塘区| 溧水县| 天峻县| 阿拉善右旗| 弥勒县| 青海省| 阆中市|