沈德海,張龍昌,鄂 旭
(渤海大學(xué) 信息科學(xué)與技術(shù)學(xué)院,遼寧 錦州 121013)
一種基于Sobel算子梯度增強(qiáng)的邊緣檢測(cè)算法
沈德海,張龍昌,鄂 旭
(渤海大學(xué) 信息科學(xué)與技術(shù)學(xué)院,遼寧 錦州 121013)
針對(duì)傳統(tǒng)Sobel算子在圖像邊緣檢測(cè)中存在的弱邊緣提取較差及邊緣較粗等不足,提出了一種局部梯度增強(qiáng)的檢測(cè)算法。算法采用改進(jìn)的Sobel算子卷積模板計(jì)算圖像梯度;然后對(duì)梯度圖像采用局部標(biāo)準(zhǔn)差方法增強(qiáng)局部弱邊緣的梯度,最后對(duì)局部梯度增強(qiáng)的圖像進(jìn)行細(xì)化處理并提取圖像邊緣,得到邊緣圖像。實(shí)驗(yàn)結(jié)果表明,該算法獲取的邊緣圖像邊緣信息較豐富,連續(xù)性好,邊緣較細(xì),整體效果優(yōu)于傳統(tǒng)Sobel算法,具有較高的實(shí)用價(jià)值。
邊緣檢測(cè);Sobel算子;局部梯度;標(biāo)準(zhǔn)差;梯度增強(qiáng)
在圖像處理和計(jì)算機(jī)視覺(jué)等領(lǐng)域中,圖像邊緣檢測(cè)已經(jīng)成為一個(gè)重要的研究課題。圖像邊緣是圖像的最基本特征之一,其中包含了豐富的內(nèi)在信息,如形狀、大小、位置及方向等,有效地檢測(cè)和提取圖像邊緣對(duì)于后續(xù)的圖像分析、分割和識(shí)別等處理過(guò)程至關(guān)重要[1]。圖像邊緣表現(xiàn)為局部區(qū)域的灰度不連續(xù)性,是那些灰度值發(fā)生較快變化的像素點(diǎn)的集合,在邊緣點(diǎn)處,其一階微分值為極大值或二階導(dǎo)數(shù)過(guò)零交叉點(diǎn)。傳統(tǒng)的邊緣檢測(cè)方法有 Sobel[2]、Roberts[3]、Prewitt、Laplactian等。這些算法主要是通過(guò)空域卷積模板與圖像進(jìn)行卷積運(yùn)算來(lái)求解圖像梯度,然后再通過(guò)選取閾值提取圖像邊緣,算法相對(duì)簡(jiǎn)單、速度較快,但在方向特征上要求較少,容易丟失一些細(xì)節(jié),且對(duì)噪聲敏感。
近年來(lái),隨著一些新理論的出現(xiàn),新的邊緣檢測(cè)算法也不斷涌現(xiàn),如形態(tài)學(xué)算法[4]、小波變換算法[5]、模糊理論算法[6]、神經(jīng)網(wǎng)絡(luò)算法[7]及遺傳算法[8]等,這些算法在邊緣信息精確程度、噪聲抑制能力及邊緣細(xì)化等方面各有所長(zhǎng),當(dāng)然也存在一些問(wèn)題,如算法復(fù)雜度高、實(shí)時(shí)性差、普適性差等。本文在傳統(tǒng)Sobel算子基礎(chǔ)上,提出了一種基于局部梯度增強(qiáng)的邊緣檢測(cè)算法,算法采用水平、垂直、45°和135°4個(gè)方向的5x5大小的卷積模板進(jìn)行檢測(cè),同時(shí),對(duì)梯度圖像采用局部標(biāo)準(zhǔn)差進(jìn)行了梯度增強(qiáng),使得檢測(cè)的邊緣較為完整、細(xì)節(jié)較為豐富,連續(xù)性較好。
傳統(tǒng)Sobel算子采用空域微分算子來(lái)計(jì)算圖像梯度,在某一點(diǎn)的梯度對(duì)應(yīng)于該點(diǎn)的一階導(dǎo)數(shù)。設(shè)f(x,y)為連續(xù)數(shù)字圖像函數(shù),其在點(diǎn)(x,y)處的梯度矢量定義[9]如式(1)。
式中i,j分別為x,y方向的單位矢量。梯度算子的幅值和方向分別如式(2)和(3)所示。
式(2)的計(jì)算結(jié)果即為圖像f(x,y)在點(diǎn)(x,y)的梯度幅值,其值的大小代表了邊緣信息的強(qiáng)度,其值越大,則越是具有邊緣特性。式(3)的結(jié)果為該邊緣的方向角度。在實(shí)際應(yīng)用中,由于采集到的數(shù)據(jù)圖像是離散的像素點(diǎn)陣集合,因此在邊緣檢測(cè)中常有相鄰或間隔的像素值的差分來(lái)表示圖像的方向梯度值,如式(4)和式(5)所示,其圖像像素對(duì)應(yīng)位置關(guān)系如圖1所示。
圖1 圖像像素對(duì)應(yīng)位置關(guān)系Fig.1 Location relation of image pixels
傳統(tǒng)Sobel算子采用水平和垂直兩個(gè)方向模板與圖像進(jìn)行卷積運(yùn)算,得到兩個(gè)方向梯度。如圖2所示。其中模板內(nèi)的值為模板權(quán)值,參與卷積運(yùn)算,與對(duì)應(yīng)位置的離散圖像像素進(jìn)行加權(quán)計(jì)算。
圖2 Sobel算子模板Fig.2 Sobel operator templates
其中模板內(nèi)的權(quán)值與對(duì)應(yīng)位置的圖像像素灰度值進(jìn)行加權(quán)平均,計(jì)算獲取圖像方向梯度,在一定程度上提供了邊緣方向的連續(xù)性。由于Sobel算子只在水平和垂直2個(gè)方向上獲取邊緣信息,所以會(huì)使其它方向的邊緣信息丟失或弱化,邊緣連續(xù)性差。文獻(xiàn)[1]將模板擴(kuò)展至0°、22.5°、45°、67.5°、90°、112.5°、135°和157.5°8個(gè)方向,大大增加了算法的運(yùn)算量。本文將模板增加至垂直、水平、45°和135°4個(gè)方向,在一定程度上將水平、垂直和兩個(gè)斜向的邊緣信息較好地進(jìn)行了檢測(cè),使得邊緣方向更強(qiáng)。通過(guò)實(shí)驗(yàn)驗(yàn)證,本文算法提取的邊緣信息更豐富,方向性更強(qiáng),計(jì)算量大大減小。
2.1 定義四方向算子模板
本文采用大小為5×5的4個(gè)方向卷積模板,4個(gè)方向分別為垂直方向、水平方向、45°方向和135°方向,分別用來(lái)檢測(cè)水平方向邊緣、垂直方向邊緣、135°方向邊緣和45°方向邊緣,如圖3所示。圖中的四個(gè)方向模板中,不同位置賦予不同的權(quán)值,權(quán)值的大小根據(jù)該位置的像素對(duì)中心點(diǎn)相應(yīng)方向梯度值貢獻(xiàn)大小來(lái)決定,也反應(yīng)了該位置與距離模板中心的位置關(guān)系,距離最近的為4或-4,其次為2或-2,再次為1或-1,最遠(yuǎn)的為0。4個(gè)方向模板及合理化的權(quán)值設(shè)置可以使計(jì)算出的梯度方向性更強(qiáng),連續(xù)性更好,梯度值更為準(zhǔn)確。
圖3 本文算法卷積模板Fig.3 Convolution templates of this paper algorithm
2.2 初步計(jì)算圖像梯度
采用本文的4個(gè)方向卷積模板分別與對(duì)應(yīng)的圖像數(shù)據(jù)進(jìn)行卷積運(yùn)算,并將每個(gè)卷積結(jié)果求和,得出的結(jié)果對(duì)應(yīng)圖像窗口中心點(diǎn)的4個(gè)方向梯度值,然后采用式(6)來(lái)求解中心點(diǎn)的梯度,最終得到梯度圖像G。
式(6)中,grad1、grad2、grad3和grad4分別代表中心點(diǎn)的水平、垂直、45°和135°四個(gè)方向梯度值,式中α是衰減因子,其主要作用是為了防止計(jì)算結(jié)果的溢出,在進(jìn)行梯度計(jì)算時(shí),將各個(gè)方向梯度除以衰減因子,然后再參與計(jì)算,經(jīng)過(guò)實(shí)驗(yàn)驗(yàn)證,本文算法中α取4時(shí)可以達(dá)到較好的結(jié)果,不會(huì)產(chǎn)生益處現(xiàn)象。
2.3 局部梯度增強(qiáng)
傳統(tǒng)的基于梯度的邊緣檢測(cè)算法直接提取梯度圖像G中像素值大于某一設(shè)定閾值的像素點(diǎn)作為邊緣點(diǎn),得到邊緣圖像,由于設(shè)定閾值是全局的,很可能將梯度圖像中一些局部梯度較弱的邊緣細(xì)節(jié)丟失,造成邊緣圖像的細(xì)節(jié)不豐富。所以,本文在對(duì)梯度圖像提取邊緣前,先對(duì)梯度圖像進(jìn)行局部增強(qiáng),增強(qiáng)算法按照式(7)進(jìn)行。
上式中,median([G(x,y)])為梯度圖像G中3×3窗口內(nèi)的梯度中值,sd為該窗口內(nèi)中心點(diǎn)的鄰域梯度標(biāo)準(zhǔn)差,G’為增強(qiáng)的梯度圖像。算法表明,如果在局部區(qū)域內(nèi),中心點(diǎn)的梯度值與其標(biāo)準(zhǔn)差之和如果大于該區(qū)域的梯度中值,則將該點(diǎn)梯度值加上增強(qiáng)參數(shù)作為新的梯度值保留,根據(jù)實(shí)驗(yàn)可知,增強(qiáng)參數(shù)為標(biāo)準(zhǔn)差的九分之一時(shí)效果較好。通過(guò)此方法可以將局部區(qū)域較弱的邊緣梯度得以增強(qiáng),在后續(xù)提取時(shí),邊緣細(xì)節(jié)較為豐富。
2.4 邊緣細(xì)化和提取
梯度圖像的邊緣多呈現(xiàn)屋頂狀,一般來(lái)說(shuō)可根據(jù)邊緣區(qū)域的灰度值大小,將邊緣區(qū)域分為暗區(qū)間、灰色區(qū)間和亮區(qū)間。圖像真正的邊緣主要分布在屋頂處的亮區(qū)間,通過(guò)局部閾值法可以調(diào)整和消除分布在非亮區(qū)間的虛假邊緣,達(dá)到細(xì)化效果。式(8)為邊緣細(xì)化公式,由于本文在前面將局部弱邊緣梯度進(jìn)行了增強(qiáng),在此細(xì)化時(shí),局部弱邊緣將會(huì)在一定程度上得以保留。其中β為調(diào)解參數(shù),一般取0.7至0.9時(shí),效果較好,本文算法β取0.8。
最后,選取合適閾值TH,將細(xì)化后的梯度圖像G采用式(9)的方法進(jìn)行二值化處理,得到邊緣圖像E。
對(duì)于閾值TH,根據(jù)不同的圖像選擇不同的值,本文中對(duì)于圖像lena,TH設(shè)定60,效果較好;對(duì)于圖像blood,TH設(shè)定100時(shí)效果較好;對(duì)于cerebrum圖像,TH設(shè)定90時(shí)效果較好。
在Matlab 2010平臺(tái)下編程進(jìn)行驗(yàn)證算法的有效性,對(duì)選取的3幅標(biāo)準(zhǔn)灰度圖像lena、cell和cerebrum如圖4所示,分別采用本文算法和傳統(tǒng)Sobel算法進(jìn)行邊緣檢測(cè)處理。實(shí)驗(yàn)結(jié)果如圖5、圖6和圖7所示。
圖4 實(shí)驗(yàn)原圖Fig.4 Experiment initial image
圖5 lena圖像邊緣檢測(cè)效果對(duì)比Fig.5 Edge detection effects of lena
圖6 cell圖像邊緣檢測(cè)效果對(duì)比Fig.6 Edge detection effects of cell
圖7 cerebrum圖像邊緣檢測(cè)效果對(duì)比Fig.7 Edge detection effects of cerebrum
圖5 為細(xì)節(jié)較為豐富的lena圖像邊緣檢測(cè)對(duì)比結(jié)果。從圖中我們可以看出,本文算法的梯度圖像邊緣灰度更強(qiáng),一些較弱邊緣得到了很好的增強(qiáng),邊緣顯得更清晰;從邊緣圖像的對(duì)比圖中可以看出,本文算法提取的lena圖像邊緣細(xì)節(jié)更豐富,方向性更強(qiáng),而且邊緣連續(xù)性及完整性都要好于傳統(tǒng)Sobel算法,同時(shí),本文算法提取的邊緣明顯要比Sobel算法提取的邊緣細(xì)。
圖6為邊緣較為模糊的cell圖像邊緣檢測(cè)效果對(duì)比。從對(duì)比圖中可以看出,本文算法提取的細(xì)胞梯度圖像,邊緣灰度較強(qiáng),局部弱邊緣得到增強(qiáng);細(xì)胞邊緣圖像中,本文算法的圖像邊緣連續(xù)性更好,而且輪廓清晰,邊緣較細(xì),整體效果明顯優(yōu)于傳統(tǒng)Sobel算法。
圖7是對(duì)比度比較清晰的醫(yī)學(xué)cerebrum圖像邊緣檢測(cè)效果對(duì)比。從圖中可以看出,本文算法的梯度圖像亮度明顯高于傳統(tǒng)Sobel算法的梯度圖像,邊緣輪廓比較清晰;本文算法的邊緣圖像連續(xù)性更好一些,細(xì)節(jié)比較豐富,邊緣也比較細(xì),整體效果依然要優(yōu)于傳統(tǒng)Sobel算法。
針對(duì)傳統(tǒng)Sobel算子的不足,提出了一種改進(jìn)算法,算法采用新的模板進(jìn)行卷積運(yùn)算,對(duì)梯度圖像采用了局部梯度標(biāo)準(zhǔn)差增強(qiáng)的方法,使得弱邊緣的梯度得到增強(qiáng),最后對(duì)其進(jìn)行細(xì)化并提取邊緣。對(duì)比實(shí)驗(yàn)證明,和傳統(tǒng)的Sobel算子算法相比,本文算法提取的圖像邊緣細(xì)節(jié)較為豐富、方向性和連續(xù)性較好,邊緣較細(xì),具有一定的實(shí)用價(jià)值。
[1]鄭英娟,張有會(huì),王志巍,等.基于八方向Sobel算子的邊緣檢測(cè)算法[J].計(jì)算機(jī)科學(xué),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]何春華,張雪飛,胡迎春.基于改進(jìn)Sobel算子的邊緣檢測(cè)算法的研究[J].光學(xué)技術(shù),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自適應(yīng)邊緣檢測(cè)方法[J].西安交通大學(xué)學(xué)報(bào),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]師文,朱學(xué)芳,朱光.基于形態(tài)學(xué)的MRI圖像自適應(yīng)邊緣檢測(cè)算法術(shù)[J].儀器儀表學(xué)報(bào),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]李晨,王軍鋒.基于提升小波的自適應(yīng)閾值邊緣檢測(cè)新算法[J].光電子技術(shù),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]陳穎峰,李金文,張婕.模糊推理在邊緣檢測(cè)中的應(yīng)用[J].中國(guó)測(cè)試,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]李玉榮.基于改進(jìn)BP神經(jīng)網(wǎng)絡(luò)的彩色圖像邊緣檢測(cè)[J].煤炭技術(shù),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]牟宇飛,張文普,彭畑.基于遺傳算法閾值優(yōu)化的模糊邊緣檢測(cè)[J].重慶理工大學(xué)學(xué)報(bào):自然科學(xué),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ìn)的圖像邊緣檢測(cè)算法[J].地球科學(xué)與環(huán)境學(xué)報(bào),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 稿件編號(hào):201408103
遼寧省高等學(xué)校實(shí)驗(yàn)室項(xiàng)目(L2012397);博士后基金項(xiàng)目(2012M520158);遼寧省“百千萬(wàn)人才工程”資助項(xiàng)目(2012921 058);教育廳科研一般項(xiàng)目(L2012400)
沈德海(1978—),男,滿族,遼寧興城人,碩士,講師。研究方向:圖像處理,數(shù)據(jù)庫(kù)技術(shù)。