(文章來(lái)源:現(xiàn)代電子技術(shù),作者:馬桂珍,房宗良,姚宗中)
1 引 言
邊緣是圖像最基本的特征,是圖像分割的第一步。經(jīng)典的邊緣檢測(cè)方法如:Roberts,Sobel,Prewitt,Kirsch,Laplace等方法,基本都是對(duì)原始圖像中象素的小鄰域構(gòu)造邊緣檢測(cè)算子,進(jìn)行一階微分或二階微分運(yùn)算,求得梯度最大值或二階導(dǎo)數(shù)的過(guò)零點(diǎn),最后選取適當(dāng)?shù)拈y值提取邊界。由于這些算法涉及梯度的運(yùn)算,因此均存在對(duì)噪聲敏感、計(jì)算量大等缺點(diǎn)。在實(shí)踐中,發(fā)現(xiàn)SUSAN算法只基于對(duì)周邊象素的灰度比較,完全不涉及梯度的運(yùn)算,因此其抗噪聲能力很強(qiáng),運(yùn)算量也比較小。并將SUSAN算法用于多類圖像的邊緣檢測(cè)中,實(shí)驗(yàn)證明該算法非常適合含噪圖像的邊緣檢測(cè)。
2 SUSAN邊緣檢測(cè)簡(jiǎn)介
2.1 SUSAN特征檢測(cè)原理
如圖1所示,用一個(gè)圓形模板在圖像上移動(dòng),若模板內(nèi)象素的灰度與模板中心象素(稱為:核Nucleus)灰度的差值小于一定閥值,則認(rèn)為該點(diǎn)與核具有相同(或相近)的灰度,由滿足這樣條件的象素組成的區(qū)域稱為USAN(Univalue Segment Assimilating Nucleus)。
當(dāng)圓形模板完全處在圖像或背景中時(shí),USAN區(qū)域面積最大(如圖1中的a和b);當(dāng)模板移向圖像邊緣時(shí),USAN區(qū)域逐漸變?。ㄈ鐖D1中c);當(dāng)模板中心處于邊緣時(shí),USAN區(qū)域很?。ㄈ鐖D1中的d);當(dāng)模板中心處于角點(diǎn)時(shí),USAN區(qū)域最?。ㄈ鐖D1中的e)。可以看出,在邊緣處象素的USAN值都小于或等于其最大值的一半。因此,計(jì)算圖像中每一個(gè)象素的USAN值,通過(guò)設(shè)定一個(gè)USAN閥值,查找小于閥值的象素點(diǎn),即可確定為邊緣點(diǎn)。
2.2 SUSAN邊緣檢測(cè)算法
(1)算法描述
對(duì)整幅圖像中的所有象素,用圓形模板進(jìn)行掃描,比較模板內(nèi)每一象素與中心象素的灰度值,通過(guò)與給定的閥值比較,來(lái)判別該象素是否屬于USAN區(qū)域,如下式:
式(1)中c(r,r0)為模板內(nèi)屬于USAN區(qū)域的象素的判別函數(shù);I(r0)是模板中心象素(核)的灰度值;I(r)為模板內(nèi)其他任意象素的灰度值;t是灰度差門限。
圖像中每一點(diǎn)的USAN區(qū)域大小可用下式表示:
式(2)中D(r0)為以r0為中心的圓形模板區(qū)域。得到每個(gè)象素的USAN值n(r0)以后,再與預(yù)先設(shè)定得門限g進(jìn)行比較,當(dāng)n(r0)
(2)模板的選取
由于圖像的數(shù)字化,實(shí)際上無(wú)法實(shí)現(xiàn)真正的圓形模板,所以都是采用近似圓代替。但是模板較小時(shí),如果門限選取不恰當(dāng),可能會(huì)發(fā)生邊緣點(diǎn)漏檢的情況。模板也不宜取得太大,否則會(huì)增大運(yùn)算量大,通??扇?×5或37象素模板。本文實(shí)驗(yàn)中均采用的是5×5的模板。
(3)門限t,g的確定
門限g決定了邊緣點(diǎn)的USAN區(qū)域的最大值,即只要圖像中的象素的USAN值小于g,該點(diǎn)就被判定為邊緣點(diǎn)。g過(guò)大時(shí),邊緣點(diǎn)附近的象素可能作為邊緣被提取出為模板的最大USAN值),可以較好地提取出初始邊緣點(diǎn)。如果要達(dá)到單象素的精度,還需進(jìn)一步剔除多余象素。
門限t表示所能檢測(cè)邊緣點(diǎn)的最小對(duì)比度,也是能忽略的噪聲的最大容限。t越小,可從對(duì)比度越低的圖像中提取特征。因此對(duì)于不同對(duì)比度和噪聲情況的圖像,應(yīng)取不同的t值。
3 實(shí) 驗(yàn)
在主頻2.3 GHz,內(nèi)存256 MB的PC機(jī)上,分別對(duì)SUSAN算法(t=10,g=18)和傳統(tǒng)的Robert算子、Gauss-Laplace算子、Prewitt算子,采用Visal C++編程,對(duì)圖2中的3幅灰度測(cè)試圖像進(jìn)行邊緣檢測(cè)。圖2中(a)是原始測(cè)試圖像,(b)是加入高斯噪聲(μ=0,σ=0.005)的測(cè)試圖像,(c)是加入椒鹽噪聲(ρ=O.005)的測(cè)試圖像。圖3~圖5分別是對(duì)圖2中(a)~(c)三幅圖像的邊緣檢測(cè)結(jié)果。
4 性能比較與分析
由實(shí)驗(yàn)結(jié)果可以看出,SUSAN算法具有以下優(yōu)良性能:
4.1邊緣檢測(cè)效果好
無(wú)論對(duì)直線,還是曲線邊緣,SUSAN算法基本上可以檢測(cè)出所有的邊緣,檢測(cè)結(jié)果較好。雖然實(shí)驗(yàn)中沒有達(dá)到一個(gè)象素的精度,但這主要是因?yàn)閷?duì)邊緣的兩側(cè)都應(yīng)用了SUSAN算法,對(duì)具體的實(shí)際應(yīng)用,可以對(duì)背景不再應(yīng)用SUSAN算法,這樣不但可以達(dá)到細(xì)化邊緣的目的,而且運(yùn)算量也大大減少。
而Robert算子和Prewitt算子對(duì)部分直線邊緣不能檢測(cè)出來(lái),圓的邊緣也有部分漏檢情況;Gauss-Laplace算子雖然基本上可以檢測(cè)出所有邊緣,但是他的定位效果較差,邊緣象素較寬。
4.2抗噪聲能力好
由于USAN的求和相當(dāng)于求積分,所以這種算法對(duì)噪聲不敏感,而且SUSAN算法不涉及梯度的計(jì)算,所以該算法抗噪聲的性能很好。很明顯,如果考慮有獨(dú)立同分布的高斯噪聲,只要噪聲小于USAN函數(shù)的相似灰度門限值,噪聲就可被忽略。對(duì)局部突變的孤立噪聲,即使噪聲的灰度與核相似,只要局部USAN值小于門限g,也不會(huì)對(duì)邊緣檢測(cè)造成影響。因此SUSAN邊緣檢測(cè)算法可以用于被噪聲污染的圖像的邊緣檢測(cè)。
而其他的邊緣檢測(cè)算法,Robert算子、Prewitt算子、Gauss-Laplace算子,以及應(yīng)用廣泛的Canny算子,由于這些算法都涉及一階梯度,甚至二階梯度的計(jì)算,所以他們的抗噪聲能力較差[2-5],圖4、圖5也證明了這一結(jié)論。
4.3算法使用靈活
使用控制參數(shù)t和g,可以根據(jù)具體情況很容易地對(duì)不同對(duì)比度、不同形狀的圖像通過(guò)設(shè)置恰當(dāng)?shù)膖和g進(jìn)行控制。比如圖像的對(duì)比度較大,則可選取較大的t值,而圖像的對(duì)比度較小,則可選取較小的t值。所以這種算法非常適用于對(duì)某些低對(duì)比度圖像或目標(biāo)的識(shí)別。
4.4運(yùn)算量小,速度快
對(duì)1幅256×256的圖像,應(yīng)用SUSAN算法進(jìn)行計(jì)算,對(duì)每一點(diǎn)只需做8次加法運(yùn)算,共需要做256×256×8次加法。
而對(duì)于其他的經(jīng)典的邊緣檢測(cè)算法,如果采用歐式距離作為梯度算子,Sobel算子采用兩個(gè)3×3的模板,對(duì)每一點(diǎn)需要做9次加法,6次乘法,以及1次開方運(yùn)算,則共需要做256×256×9次加法運(yùn)算和256×256×6次乘法運(yùn)算,以及256×256次開方運(yùn)算。對(duì)Gauss-Laplace算子、Priwitt算子以及Canny算子計(jì)算量就更大。
4.5 可以檢測(cè)邊緣的方向信息
SUSAN算法實(shí)際上還可以檢測(cè)邊緣的方向信息。具體算法是,對(duì)每一個(gè)檢測(cè)點(diǎn)計(jì)算模板內(nèi)與該點(diǎn)灰度相似的象素集合的重心,檢測(cè)點(diǎn)與該重心的連線的矢量垂直與這條邊緣。
5 結(jié) 語(yǔ)
SUSAN邊緣檢測(cè)算法直接利用圖像灰度相似性的比較,而不需計(jì)算梯度,具有算法簡(jiǎn)單、定位準(zhǔn)確、抗噪聲能力強(qiáng)等特點(diǎn)。因此,非常適于含噪圖像或低對(duì)比度灰度圖像的邊緣檢測(cè)。如果進(jìn)一步減小門限g的數(shù)值,SUSAN算法還可以用于角點(diǎn)的檢測(cè)。
責(zé)任編輯:gt
-
噪聲
+關(guān)注
關(guān)注
13文章
1120瀏覽量
47400 -
PC
+關(guān)注
關(guān)注
9文章
2076瀏覽量
154146 -
C++
+關(guān)注
關(guān)注
22文章
2108瀏覽量
73618
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論