沈德海,張龍昌,鄂 旭
(渤海大學 信息科學與技術學院,遼寧 錦州 121013)
一種基于Sobel算子梯度增強的邊緣檢測算法
沈德海,張龍昌,鄂 旭
(渤海大學 信息科學與技術學院,遼寧 錦州 121013)
針對傳統Sobel算子在圖像邊緣檢測中存在的弱邊緣提取較差及邊緣較粗等不足,提出了一種局部梯度增強的檢測算法。算法采用改進的Sobel算子卷積模板計算圖像梯度;然后對梯度圖像采用局部標準差方法增強局部弱邊緣的梯度,最后對局部梯度增強的圖像進行細化處理并提取圖像邊緣,得到邊緣圖像。實驗結果表明,該算法獲取的邊緣圖像邊緣信息較豐富,連續性好,邊緣較細,整體效果優于傳統Sobel算法,具有較高的實用價值。
邊緣檢測;Sobel算子;局部梯度;標準差;梯度增強
在圖像處理和計算機視覺等領域中,圖像邊緣檢測已經成為一個重要的研究課題。圖像邊緣是圖像的最基本特征之一,其中包含了豐富的內在信息,如形狀、大小、位置及方向等,有效地檢測和提取圖像邊緣對于后續的圖像分析、分割和識別等處理過程至關重要[1]。圖像邊緣表現為局部區域的灰度不連續性,是那些灰度值發生較快變化的像素點的集合,在邊緣點處,其一階微分值為極大值或二階導數過零交叉點。傳統的邊緣檢測方法有 Sobel[2]、Roberts[3]、Prewitt、Laplactian等。這些算法主要是通過空域卷積模板與圖像進行卷積運算來求解圖像梯度,然后再通過選取閾值提取圖像邊緣,算法相對簡單、速度較快,但在方向特征上要求較少,容易丟失一些細節,且對噪聲敏感。
近年來,隨著一些新理論的出現,新的邊緣檢測算法也不斷涌現,如形態學算法[4]、小波變換算法[5]、模糊理論算法[6]、神經網絡算法[7]及遺傳算法[8]等,這些算法在邊緣信息精確程度、噪聲抑制能力及邊緣細化等方面各有所長,當然也存在一些問題,如算法復雜度高、實時性差、普適性差等。本文在傳統Sobel算子基礎上,提出了一種基于局部梯度增強的邊緣檢測算法,算法采用水平、垂直、45°和135°4個方向的5x5大小的卷積模板進行檢測,同時,對梯度圖像采用局部標準差進行了梯度增強,使得檢測的邊緣較為完整、細節較為豐富,連續性較好。
傳統Sobel算子采用空域微分算子來計算圖像梯度,在某一點的梯度對應于該點的一階導數。設f(x,y)為連續數字圖像函數,其在點(x,y)處的梯度矢量定義[9]如式(1)。

式中i,j分別為x,y方向的單位矢量。梯度算子的幅值和方向分別如式(2)和(3)所示。

式(2)的計算結果即為圖像f(x,y)在點(x,y)的梯度幅值,其值的大小代表了邊緣信息的強度,其值越大,則越是具有邊緣特性。式(3)的結果為該邊緣的方向角度。在實際應用中,由于采集到的數據圖像是離散的像素點陣集合,因此在邊緣檢測中常有相鄰或間隔的像素值的差分來表示圖像的方向梯度值,如式(4)和式(5)所示,其圖像像素對應位置關系如圖1所示。

圖1 圖像像素對應位置關系Fig.1 Location relation of image pixels

傳統Sobel算子采用水平和垂直兩個方向模板與圖像進行卷積運算,得到兩個方向梯度。如圖2所示。其中模板內的值為模板權值,參與卷積運算,與對應位置的離散圖像像素進行加權計算。

圖2 Sobel算子模板Fig.2 Sobel operator templates
其中模板內的權值與對應位置的圖像像素灰度值進行加權平均,計算獲取圖像方向梯度,在一定程度上提供了邊緣方向的連續性。由于Sobel算子只在水平和垂直2個方向上獲取邊緣信息,所以會使其它方向的邊緣信息丟失或弱化,邊緣連續性差。文獻[1]將模板擴展至0°、22.5°、45°、67.5°、90°、112.5°、135°和157.5°8個方向,大大增加了算法的運算量。本文將模板增加至垂直、水平、45°和135°4個方向,在一定程度上將水平、垂直和兩個斜向的邊緣信息較好地進行了檢測,使得邊緣方向更強。通過實驗驗證,本文算法提取的邊緣信息更豐富,方向性更強,計算量大大減小。
2.1 定義四方向算子模板
本文采用大小為5×5的4個方向卷積模板,4個方向分別為垂直方向、水平方向、45°方向和135°方向,分別用來檢測水平方向邊緣、垂直方向邊緣、135°方向邊緣和45°方向邊緣,如圖3所示。圖中的四個方向模板中,不同位置賦予不同的權值,權值的大小根據該位置的像素對中心點相應方向梯度值貢獻大小來決定,也反應了該位置與距離模板中心的位置關系,距離最近的為4或-4,其次為2或-2,再次為1或-1,最遠的為0。4個方向模板及合理化的權值設置可以使計算出的梯度方向性更強,連續性更好,梯度值更為準確。

圖3 本文算法卷積模板Fig.3 Convolution templates of this paper algorithm
2.2 初步計算圖像梯度
采用本文的4個方向卷積模板分別與對應的圖像數據進行卷積運算,并將每個卷積結果求和,得出的結果對應圖像窗口中心點的4個方向梯度值,然后采用式(6)來求解中心點的梯度,最終得到梯度圖像G。

式(6)中,grad1、grad2、grad3和grad4分別代表中心點的水平、垂直、45°和135°四個方向梯度值,式中α是衰減因子,其主要作用是為了防止計算結果的溢出,在進行梯度計算時,將各個方向梯度除以衰減因子,然后再參與計算,經過實驗驗證,本文算法中α取4時可以達到較好的結果,不會產生益處現象。
2.3 局部梯度增強
傳統的基于梯度的邊緣檢測算法直接提取梯度圖像G中像素值大于某一設定閾值的像素點作為邊緣點,得到邊緣圖像,由于設定閾值是全局的,很可能將梯度圖像中一些局部梯度較弱的邊緣細節丟失,造成邊緣圖像的細節不豐富。所以,本文在對梯度圖像提取邊緣前,先對梯度圖像進行局部增強,增強算法按照式(7)進行。

上式中,median([G(x,y)])為梯度圖像G中3×3窗口內的梯度中值,sd為該窗口內中心點的鄰域梯度標準差,G’為增強的梯度圖像。算法表明,如果在局部區域內,中心點的梯度值與其標準差之和如果大于該區域的梯度中值,則將該點梯度值加上增強參數作為新的梯度值保留,根據實驗可知,增強參數為標準差的九分之一時效果較好。通過此方法可以將局部區域較弱的邊緣梯度得以增強,在后續提取時,邊緣細節較為豐富。
2.4 邊緣細化和提取
梯度圖像的邊緣多呈現屋頂狀,一般來說可根據邊緣區域的灰度值大小,將邊緣區域分為暗區間、灰色區間和亮區間。圖像真正的邊緣主要分布在屋頂處的亮區間,通過局部閾值法可以調整和消除分布在非亮區間的虛假邊緣,達到細化效果。式(8)為邊緣細化公式,由于本文在前面將局部弱邊緣梯度進行了增強,在此細化時,局部弱邊緣將會在一定程度上得以保留。其中β為調解參數,一般取0.7至0.9時,效果較好,本文算法β取0.8。

最后,選取合適閾值TH,將細化后的梯度圖像G采用式(9)的方法進行二值化處理,得到邊緣圖像E。

對于閾值TH,根據不同的圖像選擇不同的值,本文中對于圖像lena,TH設定60,效果較好;對于圖像blood,TH設定100時效果較好;對于cerebrum圖像,TH設定90時效果較好。
在Matlab 2010平臺下編程進行驗證算法的有效性,對選取的3幅標準灰度圖像lena、cell和cerebrum如圖4所示,分別采用本文算法和傳統Sobel算法進行邊緣檢測處理。實驗結果如圖5、圖6和圖7所示。

圖4 實驗原圖Fig.4 Experiment initial image

圖5 lena圖像邊緣檢測效果對比Fig.5 Edge detection effects of lena

圖6 cell圖像邊緣檢測效果對比Fig.6 Edge detection effects of cell

圖7 cerebrum圖像邊緣檢測效果對比Fig.7 Edge detection effects of cerebrum
圖5 為細節較為豐富的lena圖像邊緣檢測對比結果。從圖中我們可以看出,本文算法的梯度圖像邊緣灰度更強,一些較弱邊緣得到了很好的增強,邊緣顯得更清晰;從邊緣圖像的對比圖中可以看出,本文算法提取的lena圖像邊緣細節更豐富,方向性更強,而且邊緣連續性及完整性都要好于傳統Sobel算法,同時,本文算法提取的邊緣明顯要比Sobel算法提取的邊緣細。
圖6為邊緣較為模糊的cell圖像邊緣檢測效果對比。從對比圖中可以看出,本文算法提取的細胞梯度圖像,邊緣灰度較強,局部弱邊緣得到增強;細胞邊緣圖像中,本文算法的圖像邊緣連續性更好,而且輪廓清晰,邊緣較細,整體效果明顯優于傳統Sobel算法。
圖7是對比度比較清晰的醫學cerebrum圖像邊緣檢測效果對比。從圖中可以看出,本文算法的梯度圖像亮度明顯高于傳統Sobel算法的梯度圖像,邊緣輪廓比較清晰;本文算法的邊緣圖像連續性更好一些,細節比較豐富,邊緣也比較細,整體效果依然要優于傳統Sobel算法。
針對傳統Sobel算子的不足,提出了一種改進算法,算法采用新的模板進行卷積運算,對梯度圖像采用了局部梯度標準差增強的方法,使得弱邊緣的梯度得到增強,最后對其進行細化并提取邊緣。對比實驗證明,和傳統的Sobel算子算法相比,本文算法提取的圖像邊緣細節較為豐富、方向性和連續性較好,邊緣較細,具有一定的實用價值。
[1]鄭英娟,張有會,王志巍,等.基于八方向Sobel算子的邊緣檢測算法[J].計算機科學,2013,40(11A):354-356.ZHENG Ying-juan,ZHANG You-hui,WANG Zhi-wei,et al.Edge detection algorithm based on the eight directions sobel operator[J].Computer Science,2013,40(11A):354-356.
[2]何春華,張雪飛,胡迎春.基于改進Sobel算子的邊緣檢測算法的研究[J].光學技術,2012,38(3):323-327.HE Chun-hua,ZHANG Xue-fei,HU Ying-chun.A study on the improved algorithm for Sobel on image edge detection[J].Optical Technique,2012,38(3):323-327.
[3]康牧,許慶功,王寶樹.一種Roberts自適應邊緣檢測方法[J].西安交通大學學報,2008,42(10):1240-1244.KANG Mu,XU Qing-gong,WANG Bao-shu.A roberts’adaptive edge detection method[J].Journal of Xi’an Jiaotong University,2008,42(10):1240-1244.
[4]師文,朱學芳,朱光.基于形態學的MRI圖像自適應邊緣檢測算法術[J].儀器儀表學報,2013,34(2):408-413.SHI Wen,ZHU Xue-fang,ZHU Guang.Adaptive edge detection algorithm of MRI image based on morphology[J].Chinese Journal of Scientific Instrument,2013,34(2):408-413.
[5]李晨,王軍鋒.基于提升小波的自適應閾值邊緣檢測新算法[J].光電子技術,2012,32(2):91-94.LI Chen,WANG Jun-feng.A new adaptive threshold edge detection method based on lifting wavelet[J].Optoelectronic Technology,2012,32(2):91-94.
[6]陳穎峰,李金文,張婕.模糊推理在邊緣檢測中的應用[J].中國測試,2014,40(1):33-35,54.CHEN Ying-feng,LI Jin-wen,ZHANG Jie.Application of fuzzy inference in image edge extraction[J].China Measurement&Test,2014,40(1):33-35,54.
[7]李玉榮.基于改進BP神經網絡的彩色圖像邊緣檢測[J].煤炭技術,2011,30(10):154-156.LI Yu-rong.Edge detection for color image based on improved BP neural network[J].Coal Technology,2011,30(10): 154-156.
[8]牟宇飛,張文普,彭畑.基于遺傳算法閾值優化的模糊邊緣檢測[J].重慶理工大學學報:自然科學,2012,26(8):91-112.MOU Yu-fei,ZHANG Wen-pu,PENG Tian.Fuzzy edge detection according to threshold optimization based on genetic algorithm[J].Journal of Chongqing University of Technology:Natural Science,2012,26(8):91-112.
[9]崔建軍,詹世富,鄭雄偉.一種改進的圖像邊緣檢測算法[J].地球科學與環境學報,2008,30(3):323-325,330.CUI Jian-jun,ZHAN Shi-fu,ZHENG Xiong-wei,et al.An improved edge detection algorithm[J].Journal of Earth Sciences and Environment,2008,30(3):323-325,330.
An strengthening gradient edge detection algorithm based on Sobel
SHEN De-hai,ZHANG Long-chang,E Xu
(Institute of Information Science and Technology,Bohai University,Jinzhou 121013,China)
An edge detection algorithm is proposed aiming at the shortcoming of traditional Sobel operator in poor weak edge extraction and coarse edge.The new algorithm calculates the image gradient by improved Sobel convolution templates,then uses local standard deviation to strengthen local weak edge gradient of gradient image,at last,uses refinement method to refine the gradient strengthened image and extract the image edge.The results show that the edge image extracted by improved algorithm has rich edge information,good edge continuity and thin edge,its edge detection effects are better than traditional Sobel algorithm,and has high practical value.
edge detection;Sobel operator;local gradient;standard deviation;gradient strength
TN911.73
A
1674-6236(2015)10-0162-04
2014-08-19 稿件編號:201408103
遼寧省高等學校實驗室項目(L2012397);博士后基金項目(2012M520158);遼寧省“百千萬人才工程”資助項目(2012921 058);教育廳科研一般項目(L2012400)
沈德海(1978—),男,滿族,遼寧興城人,碩士,講師。研究方向:圖像處理,數據庫技術。