王方超,張 旻,宮麗美
(1.解放軍電子工程學院,安徽 合肥 230037; 2.安徽省電子制約技術重點實驗室,安徽 合肥 230037)
?
改進的Roberts圖像邊緣檢測算法
王方超1,2,張旻1,2,宮麗美1,2
(1.解放軍電子工程學院,安徽 合肥230037; 2.安徽省電子制約技術重點實驗室,安徽 合肥230037)
摘要:針對復雜背景下圖像邊緣檢測中存在抗噪性能不強、邊緣不連續等問題,提出了改進的Roberts邊緣檢測算法。該算法采用3×3鄰域代替Roberts算法中2×2鄰域來計算梯度幅值;并利用圖像塊之間相似性的三維塊匹配的去噪模型,提高Roberts算子的檢測精度和抗噪性能;通過最佳閾值迭代方法代替人為指定閾值來獲取最佳分割閾值,有效地提取圖中目標輪廓。仿真實驗結果表明,該算法PSNR達到33 dB左右,比抗噪形態學邊緣檢測算法和一種改進的Roberts和灰色關聯分析的邊緣檢測算法抗噪性能好,在抑制噪聲干擾的同時,能保留邊緣信息,較好提取目標的整體輪廓信息,為后續目標識別奠定基礎。
關鍵詞:邊緣檢測;梯度幅值;三維塊匹配;最佳閾值迭代分割
0引言
邊緣檢測在模式識別、機器視覺等領域有著廣泛的應用前景[1]。主要是利用邊緣檢測算子提取邊緣點集,由于檢測中存在噪聲、圖像模糊以及邊緣間斷等情況。因此,為了解決抗噪性能和圖像邊界存在間斷等問題,研究有效的邊緣檢測算法具有非常重要的意義。
常用的邊緣檢測算子,如Roberts、Sobel、Canny等通過計算梯度極大值或二階導數過零值檢測邊緣[2-6],這些算子在提取目標輪廓邊緣信息時,并不占絕對優勢,如文獻[4]中Canny算子不能保證提取目標邊緣的連續性,文獻[5]抗噪形態學邊緣檢測新算子圖像邊緣檢測不能保證良好的抗噪性能,文獻[6]提取目標邊緣輪廓不完整等。本文針對上述問題,提出了改進的Roberts圖像邊緣檢測算法。
1Roberts邊緣檢測算法
在邊緣檢測中,傳統Roberts算子是一種簡單而高效的算子,它采用2×2模板,利用圖像中對角線方向相鄰像素差值近似梯度幅值來檢測目標邊緣,傳統Roberts算子模板如圖1所示。

圖1 Roberts算子Fig.1 Roberts operator
采用對角線方向相鄰的4個像素之差進行梯度檢測,計算公式如下:
fx(x,y)=f(x,y)-f(x+1,y+1)
(1)
fy(x,y)=f(x,y+1)-f(x+1,y)
(2)
其梯度幅值計算為:
(3)
那么通過差分運算,可得到Roberts算子在點(x+1/2,y+1/2)的連續梯度幅值近似為G(x,y),當取適當閾值Th時,使得G(x,y)>Th,則認為點(x,y)為邊緣點。
Roberts算子對圖像邊緣檢測而言定位精度高,在水平和垂直方向效果較好[7]。但該算子對噪聲較敏感,無法消除局部干擾,對圖像中目標和背景灰度差異表現并不顯著的弱邊緣卻很難檢測識別,這將導致提取的目標邊緣出現間斷。并且該算子的閾值需要人為設定,使得傳統的Roberts算子在提取不同目標輪廓時,具有很大的局限性。
2改進的Roberts算法
2.1改進計算梯度幅值方法
針對Roberts邊緣檢測算法采用2×2鄰域內斜向偏差分的梯度計算方法的不足,本文采用3×3鄰域通過計算0°、45°、90°、135°等方向的梯度幅值,有效檢測8個方向的邊緣,并且增加了對角線方向的權值,使得在梯度幅值計算中邊緣定位更加準確。增加了垂直和水平方向模板,如圖2所示。

圖2 Roberts算子梯度幅值方向模板Fig.2 The Roberts operator gradient amplitude direction template
計算像素在0°方向的差分為:
f0=f(x,y-1)-f(x,y+1)
(4)
90°方向的差分為:
f90=f(x-1,y)-f(x+1,y)
(5)
45°方向的差分為:
f45=3×[f(x+1,y-1)-f(x-1,y+1)]
(6)
135°方向的差分為:
f135=(-3)×[f(x-1,y-1)-f(x+1,y+1)]
(7)
它們對應的卷積算子分別為:
改進后的Roberts算子充分考慮像素8鄰域的信息,直接避免像素本身參與計算,有效地提高邊緣的檢測精度。此外,用二階范數計算梯度幅值為:
(8)
2.2采用BM3D的去噪模型
經過在傳統Roberts算子基礎上增加水平、垂直方向的信息來增強方向模塊的檢測力度,并依照目標像素的梯度幅值大于閾值Th,則被認為是邊緣像素點,反之就不是,則刪除此點,獲得較完整邊緣信息。但是在實際圖像處理中,如在復雜背景下提取目標邊緣時,噪聲也會引起像素梯度幅值的跳變,使得梯度新幅值大于閾值Th,導致噪聲被當做偽邊緣提取,進而影響到人們獲取真實的邊緣信息。因此,必須采取適當方法排除噪聲點,常用的去噪算法有均值濾波和中值濾波。均值濾波去噪簡單直觀,在消除高斯白噪聲中效果不錯,但它會帶來邊緣和細節模糊;中值濾波去除椒鹽噪聲較強,缺點同樣會帶來圖像邊緣模糊和出現偽邊緣。對此,本文采用基于塊匹配和三維變換域濾波去噪算法[8-10]。
算法步驟為:
1)分組
對含噪圖像p設定若干參考塊進行塊匹配。假設選當前參考塊pr,其大小為L1×L1。則以pr為中心,以3個像素為一個步長在目標周圍適當區域進行搜索,通過計算兩個塊pr與pn之間的距離來確定它們之間的相似性,即:

(9)
式(9)中,Mr和Mn分別表示各自矩陣塊的模。
(10)

2)硬閾值濾波處理
對得到三維數組TSp進行三維線性變換,通過式(11)設置合適三維變換域系數來濾除噪聲。然后通過逆變換得到所有圖像塊的估計值。
(11)

(12)
經過變換域硬閾值處理,可濾除大部分噪聲分量,同時也保留了真實圖像信息。
3)聚合
實質上是為了獲得真實圖像估計值,需要對重疊的估計值進行加權平均。假設Npr為當前塊經硬閾值處理后矩陣系數的非零個數,那么該參考塊的初始估計值為:
(13)
Npr的值越小,說明真實圖像中含噪聲分量的值就越小,得到的估計值就越大。通過加權平均聚合每組中所有圖像塊獲得最終去噪圖像[12]I。
2.3最佳閾值迭代分割方法
在得到去噪圖像基礎上,根據Roberts算法中閾值Th選取,若所選閾值過高,則易導致邊緣破裂;若所選閾值過低,則提取的邊緣中易出現更多的偽邊緣,還可能將噪聲作為邊緣提取。我們采用最佳閾值迭代的方法選取合適閾值[11]代替人為指定閾值Th。首先選擇閾值Tu的初始估算值,利用閾值Tu把圖像分割為兩組子圖像,根據子圖像特性計算新的閾值,然后利用新的閾值在進行圖像分割,經若干次迭代后,使分割錯誤的圖像像素點降到最少。其主要操作為:
1)設置閾值Tu的初始估算值:
(14)
式(14)中,迭代次數u的初值為0,Imax和Imin分別是去噪圖像最大灰度值和最小灰度值。
2)根據閾值Tu將圖像分割為目標和背景兩部分,其中,
(15)
(16)
計算求出Ro和Rb兩部分的平均灰度值分別為:
(17)
(18)
其中,f(i,j)為圖像上(i,j)點的灰度值,N(i,j)是(i,j)點的權重系數,一般為1。
3)計算新的閾值Tu+1:
(19)
4)循環第二步至第四步,當Tu=Tu+1時,則循環結束,否則u=u+1并轉至步驟2進行迭代運算。那么圖像分割最佳閾值為Tu+1。
5)根據閾值Tu+1的大小,輸出最終的目標圖像輪廓。
2.4改進算法實現步驟
改進算法的步驟如下:
1)輸入原始圖像,并在原圖像基礎上加入高斯噪聲。
2)在Roberts算子基礎上,增加了水平和垂直方向模板,通過8個方向有效檢測圖像邊緣。
3)使用多尺度、非局部的BM3D去噪模型,對含噪邊緣圖像通過塊匹配生成三維矩陣,然后在三維域去噪,最后逆變換得到去噪圖像。
4)通過迭代的方式獲取最佳分割閾值Tu+1。
5)利用閾值Tu+1對處理后的圖像檢測,得到最終邊緣輪廓圖像。
3仿真實驗及結果分析
實驗所用軟件為Matlab7.6.0;硬件條件:i3CPU,內存2G。實驗圖像為經典的Lena圖像、普通小轎車圖像(Car)、Google Earth航拍的飛機圖像(Plane)。為了驗證改進算法的有效性,本文做了四組實驗。
實驗1:經典Lena圖像的邊緣檢測
針對改進梯度幅值特性,對σ=0.05的Lena圖像使用Roberts、文獻[5—6]及改進算法進行邊緣檢測,實驗結果如圖3所示。

圖3 各種算法對Lena圖像邊緣檢測Fig.3 Algorithms processing for Lena
由實驗1得出,Roberts、文獻[5—6]算法在低噪聲下不能較完整的提取目標的邊緣,改進算法在改進梯度幅值基礎上,使得邊緣定位更加準確,檢測的邊緣信息更加清晰完整。
實驗2:Car圖像的邊緣檢測
針對改進梯度幅值和最佳閾值迭代分割方法特性,對σ=0.1的Car圖像利用Roberts、文獻[5—6]及改進算法進行邊緣檢測實驗結果如圖4所示。

圖4 各種算法對Car圖像處理Fig.4 Algorithms processing for Car
從實驗2可得出,Roberts、文獻[5—6]算法在低噪聲下檢測目標邊緣不完整且出現偽邊緣,本文算法在增加方向模板基礎上,通過迭代方式計算最佳分割閾值,消除偽邊緣獲得較完整輪廓紋理信息。
實驗3:Plane圖像的邊緣檢測
針對改進梯度幅值、BM3D去噪方法及最佳閾值分割特性,在復雜背景下,對Google Earth航拍的飛機圖像(Plane)利用4種算法對其進行邊緣檢測,實驗結果如圖5所示。
從實驗3可看出,在復雜背景下,Roberts算法檢測效果更差,文獻[5]和文獻[6]仍分別存在抗噪性能差、提取目標邊緣不完整等缺點,而本文改進算法在抑制噪聲對邊緣檢測干擾的同時,有效消除偽邊緣,獲得完整飛機輪廓圖像。

圖5 各種算法對Plane圖像處理Fig.5 Algorithms processing for Plane
實驗4:各算法性能比較
為了更客觀有效的評價本文所提出的邊緣檢測算法,采用峰值信噪比(PSNR)作為各圖像邊緣檢測的評價標準。其計算公式如下,
(20)
式(20)中,I0(x,y)、I(x,y)分別表示加高斯噪聲的原始圖像和最終邊緣檢測的圖像,m×n為圖像大小。所得結果如表1。

表1 三種算法關于指標PSNR的比較
從表1可看出,對同一圖像進行處理時,本文算法PSNR均大于文獻[5—6]算法。可見,本文改進算法很大程度提高了抗噪性能。
針對算法復雜度問題,本文對這3種算法計算時間做了比較,結果如表2。

表2 三種算法時間對比
從表2可以看出,與文獻[5]、文獻[6]相比,本文算法主要利用了BM3D的去噪模型去除邊緣噪聲,并采用迭代方式獲取最佳分割閾值代替人為指定閾值,使得算法變得復雜,運行時間也相應增加。
綜上所述,本文算法在增加時間復雜度的代價下,能很好抑制噪聲對圖像邊緣檢測的干擾,且能完整保留邊緣信息,較好檢測出目標邊緣。
4結論
本文提出了改進的Roberts圖像邊緣檢測算法。該算法利用BM3D去噪模型并采用了最佳閾值迭代分割方法有效地解決了復雜背景下圖像邊緣檢測存在噪聲和邊緣不連續等問題。仿真實驗結果表明,改進算法能較好的提取圖像邊緣,保持圖像的細節信息,特別在噪聲存在情況下,本文算法峰值信噪比達到33dB左右,相比文獻[5—6]兩種算法高出近一倍,同樣具有較高的檢測精度。本文算法不足是算法復雜度有所增加,前兩幅圖像時間在7s左右,相比文獻[5—6]兩種算法時間增加了近10倍,第三幅圖像時間為16.5s,比這兩種算法時間復雜度增加了15倍左右,下一步研究中還需對算法進行優化以減少算法復雜度。
參考文獻:
[1]張艷麗,保文星.粒子群優化算法在圖像邊緣檢測中的研究應用[J].計算機技術與發展,2009,19(5):26-29.
[2]王征. 一種基于數學形態學的邊緣檢測方法[J].計算機與數字工程,2012,40(2):102-104.
[3]熊立志,陳立潮,潘理虎.基于多尺度輪廓結構元素的多形狀邊緣檢測[J].計算機應用研究,2012,29(9):3497-3500.
[4]王小俊,劉旭敏,關永.基于改進Canny算子的圖像邊緣檢測算法[J].計算機工程,2012,38(14):196-198.
[5]于博,牛錚,王力.抗噪形態學邊緣檢測新算子圖像邊緣檢測[J].信息技術,2012,36(3):10-12.
[6]文永革,何紅洲,李海洋.一種改進的Roberts和灰色關聯分析的邊緣檢測算法[J].圖學學報,2014,35(4):638-642.
[7]臧卓,林輝,楊敏華.基于色素含量的針葉樹種敏感波段提取研究[J].中南林業科技大學學報,2013,33(1):35-40.
[8]李政,劉文江,戎蒙恬,等.BM3D視頻去噪算法實現與評估[J].信息技術,2012,30(4):30-32.
[9]EladM.Sparseandredundantrepresentation-fromtheorytoapplicationsinsignalandimageprocessing[M].Berlin:Springer,2010.
[10]MAGGIONIM,BORACCHIG,FOIA,etal.VideoDenoising,Deblocking,andEnhancementThroughSeparable4-DNonlocalSpatiotemporalTransforms[J].IEEETransactionsonImageProcessing,2012,21(9):3952-3966.
[11]楊勇,郭玲,王天江.基于多尺度結構張量的多類無監督彩色紋理圖像分割方法[J].計算機輔助設計與圖形學學報,2014,26(5):813-825.
[12]劉麗,匡綱要.圖像紋理特征提取方法綜述[J].中國圖像圖形學報,2009,14(4):622-635.
Image Edge Detection Algorithm of Roberts Operator
WANG Fangchao1,2,ZHANG Min1,2,GONG Limei1,2
(1.Electronic Engineering Institute of PLA, Hefei 230037, China;2. Key Laboratory Electronic Restricting Technique, Hefei 230037, China)
Abstract:Aiming at the problems of the resist noise performance is poor, the edge is not continuous when detecting the edge of image in the complex background, an improved Roberts edge-detection method was proposed. The algorithm adopted neighbor-field to replace neighbor-field to calculate grades extent value. And based on image block similarity between 3D block matching denoising model, detection accuracy and anti-noise performance of Roberts operator was improved. The artificial specified threshold method replaced the optimal iterative threshold segmentation method to obtain optimal segmentation threshold for effectively extract the target contour in image. Simulation results showed that the algorithm with PSNR was superior to the algorithm of morphology in edge detection to resist the noise with an improved image edge detection algorithm based on Roberts and gray relational analysis, which could suppress noise interference and keep the edge information.
Key words:edge detection; Roberts algorithm; 3-D block matching; optimal iterative threshold segmentation
中圖分類號:TP391.41
文獻標志碼:A
文章編號:1008-1194(2016)02-0088-05
作者簡介:王方超(1991—),男,陜西渭南人,碩士研究生,研究方向:數據挖掘與圖像處理。E-mail:fangchaowang@163.com。
基金項目:國家自然科學基金項目資助(60972161);安徽省自然科學基金項目資助(1408085QF115)
*收稿日期:2015-09-21