北方民族大學(xué)電氣信息學(xué)院 陶 然 楚栓成
邊緣是圖像的最基本特征,它體現(xiàn)了用于識(shí)別的有用信息,為人們用作描述、識(shí)別目標(biāo)以及解釋圖像提供了一個(gè)重要的特征參數(shù)。邊緣檢測(cè)是圖像處理、圖像分析和計(jì)算機(jī)視覺領(lǐng)域中最經(jīng)典的研究內(nèi)容之一,是進(jìn)行模式識(shí)別和圖像信息提取的基本手段。醫(yī)學(xué)X射線的圖像邊緣檢測(cè)是圖像檢測(cè)的一個(gè)重要應(yīng)用領(lǐng)域,在醫(yī)療診斷中起著越來越重要的作用。
目前進(jìn)行主要邊緣檢測(cè)的方法是sobel算子、canny算子、prewitt算子、roberts算子、LOG算子檢測(cè)方法。圖像邊緣檢測(cè)必須滿足兩個(gè)條件:(1)能有效地抑制噪聲;(2)必須盡量精確確定邊緣的位置。本文將研究集中常見的算子檢測(cè)方法對(duì)于醫(yī)學(xué)邊緣圖像的應(yīng)用,以為進(jìn)一步的圖像應(yīng)用提供依據(jù)。
對(duì)圖像{f(i,j)}的每個(gè)像素,考慮它上,下,左,右鄰點(diǎn)的灰度的加權(quán)差,與之接近鄰點(diǎn)的權(quán)值最大。據(jù)此,定義Sobel算子[1]如下:
適當(dāng)取門限TH,作如下判斷:S(i,j)>TH,(i,j)為階躍邊緣點(diǎn),{S(i,j)}為邊緣圖像。
Sobel算子很容易在空間上實(shí)現(xiàn),Sobel邊緣檢測(cè)不但產(chǎn)生較好的邊緣檢測(cè)效果,而且受噪聲影響也比較小。當(dāng)使用大的鄰域時(shí),抗噪聲能力會(huì)更好,但這樣會(huì)增加計(jì)算量,并且得出的邊緣也會(huì)相應(yīng)變粗。Sobel算子對(duì)噪聲有平滑作用,能夠提供較精確的邊緣方向信息,是一種較為常用的邊緣檢測(cè)方法。基于Sobel算子在數(shù)字圖像的邊緣檢測(cè)方法,存在著許多不足之處,例如在基于Sobel梯度算子時(shí),其邊緣檢測(cè)雖然說速度快,但得到的往往是不連續(xù)的、不完整的結(jié)構(gòu)信息。這類方法對(duì)噪聲比較敏感,為了有效抑制噪聲,一般都首先對(duì)原圖像進(jìn)行平滑,再進(jìn)行邊緣檢測(cè)就能成功地檢測(cè)到真正的邊緣。
根據(jù)對(duì)信噪比與定位乘積進(jìn)行測(cè)度,得到最優(yōu)化逼近算子,這就是Canny邊緣檢測(cè)算子。Canny算子邊沿檢測(cè)的基本思想是:先對(duì)處理的圖像選擇一定的Gussian濾波器進(jìn)行平滑濾波,然后采用一種稱之為“非極值抑制”的技術(shù),對(duì)平滑后的圖像處理,得到最后所需的邊緣圖像[3]。
Canny算子是邊緣檢測(cè)中最具代表的一種局部極值邊緣檢測(cè)算子,提取的邊緣線型連接程度較好,對(duì)邊緣提取的較完整,邊緣線提取很細(xì)。Canny算子具有較好的抗噪能力和較高的邊緣定位精度。對(duì)于高噪聲的模糊圖像,Canny算子在抑制噪聲的同時(shí)往往錯(cuò)過一些低強(qiáng)度的邊緣,而一些高強(qiáng)度噪聲被檢測(cè)為邊緣。Canny方法則以一階導(dǎo)數(shù)為基礎(chǔ)來判斷邊緣點(diǎn),它是一階傳統(tǒng)微分中檢測(cè)階躍型邊緣效果最好的算子之一,它比Roberts算子、Sobel算子和Prewitt算子極小值算法的去噪能力都要強(qiáng),但它也容易平滑掉一些邊緣信息。
Roberts邊緣檢測(cè)算子根據(jù)任意一對(duì)互相垂直方向上的差分可用來計(jì)算梯度的原理,采用對(duì)角線方向相鄰兩象素之差,即:
有了Δxf,Δyf之后,很容易計(jì)算出Roberts的梯度幅值R(i,j)
適當(dāng)取門限TH,作如下判斷:R(i,j)>TH,(i,j)為階躍邊緣點(diǎn),{R(i,j)}為邊緣圖像[1]。
Roberts算子采用對(duì)角線方向相鄰兩像素之差近似梯度幅值檢測(cè)邊緣。它適合于得到方向不同的邊緣,對(duì)不同方向的邊緣都比較敏感,檢測(cè)水平和萬垂直邊緣的效果好于斜向邊緣,定位精度高。但是在進(jìn)行差分計(jì)算的過程中對(duì)噪聲敏感,即有噪聲影響的像素點(diǎn)可能被檢測(cè)為邊緣點(diǎn)。Robert s算子定位比較精確,但由于不包括平滑,所以對(duì)于噪聲比較敏感。
對(duì)圖像{f(i,j)}的每個(gè)像素,考慮它上,下,左,右鄰點(diǎn)的灰度之差,據(jù)此,定義Prewitt算子如下:
卷積算子為:
適當(dāng)取門限TH,作如下判斷:P(i,j)>TH,(i,j)為階躍邊緣點(diǎn)。{P(i,j)}為邊緣圖像。Prewitt算子是一階的微分算子,是平均濾波,這對(duì)灰度漸變低噪聲的圖象有較好的檢測(cè)效果,但是對(duì)于混合多復(fù)雜噪聲的圖像的處理效果就不理想了。
拉普托斯算子是最常用的二階基于導(dǎo)數(shù)的邊緣檢測(cè)算子,它易受噪點(diǎn)影響,為減少對(duì)噪點(diǎn)敏感度,Marr和Hildreth將高斯濾波和拉普拉斯邊緣檢測(cè)結(jié)合在一起,形成了LOG算子。LOG首先進(jìn)行高斯平滑,然后進(jìn)行拉普拉斯運(yùn)算[5]。
設(shè)原圖像為f(i,j),高斯濾波函數(shù)為G(i,j),兩者進(jìn)行卷積運(yùn)算,然后利用拉普拉斯算子?2實(shí)現(xiàn)邊緣檢測(cè),輸出的圖像h(i,j),則LOG算子如下:
用LOG算子處理圖像時(shí),是先用G(i,j)進(jìn)行平滑處理,然后用 ?2對(duì)圖像進(jìn)行二階導(dǎo)數(shù)增強(qiáng)。
LOG算子在進(jìn)行邊緣檢測(cè)時(shí),能很大程度的抑制噪聲。通過將圖像原值與LOG函數(shù)值進(jìn)行比較,發(fā)現(xiàn)部分由圖像上絕大部分噪聲組成。它對(duì)于噪點(diǎn)不太敏感,因?yàn)楦咚购瘮?shù)減少噪點(diǎn),并σ且拉普拉斯模版使檢測(cè)到假邊緣的概率減到最小。通過圖像平滑,消除了一切尺度小于的圖像強(qiáng)度變化,若用其它算子檢測(cè)法,需要計(jì)算不同方向的微分,而它無方向性,所以可以節(jié)省計(jì)算量。它定位精度高,邊緣連續(xù)性好,可以提取對(duì)比度較弱的邊緣點(diǎn)。
未經(jīng)處理的原始圖像見圖1(A),存在一定程度的噪聲干擾,在對(duì)圖像檢測(cè)之前,對(duì)X線頭影片進(jìn)行了中值濾波的預(yù)處理。圖1(B)、1(C)、1(D)、1(E)、1(F)依次是應(yīng)用log算子、roberts算子、sobel算子、canny算子、prewitt算子檢測(cè)處理之后的圖像結(jié)果。
通過matlab5.0實(shí)驗(yàn)平臺(tái)得出的實(shí)驗(yàn)結(jié)果可以看出,Canny算子邊緣檢測(cè)精度比較高并且抗噪聲性能較強(qiáng),但是對(duì)于X線圖像的檢測(cè),丟失了很多重要的邊緣和區(qū)域,因此結(jié)果并不能令人滿意。Roberts算子采用對(duì)角線方向相鄰兩象素之差近似梯度幅值檢測(cè)邊緣。檢測(cè)水平和垂直邊緣的效果好于斜向邊緣,定位精度高,對(duì)噪聲敏感,而且檢測(cè)圖像的細(xì)節(jié)過于豐富,圖像中表現(xiàn)出很多并不需要的紋理特征。Sobel算子邊緣檢測(cè)根據(jù)象素點(diǎn)上、下、左、右各個(gè)鄰點(diǎn)灰度值加權(quán)差,在邊緣處達(dá)到極值這一現(xiàn)象檢測(cè)邊緣,其對(duì)噪聲具有平滑作用,提供較為精確的邊緣方向信息,但是邊緣定位精度不夠高。Prewitt算子邊緣檢測(cè)利用象素點(diǎn)上、下、左、右各個(gè)鄰點(diǎn)灰度值的差,在邊緣處達(dá)到極值檢測(cè)邊緣,其檢測(cè)圖像的邊緣出現(xiàn)很多不連續(xù)情況,圖像不清晰。Log算子邊沿檢測(cè)的邊緣無法區(qū)分虛實(shí)線,對(duì)于像素的反差大小無法區(qū)分,圖像邊緣連貫性好,可以觀察到很多細(xì)節(jié)。
圖1 幾種檢測(cè)圖像
針對(duì)醫(yī)學(xué)圖像討論和比較了幾種常用的邊緣檢測(cè)算子。roberts精度不高,只能檢測(cè)出圖像大致的輪廓,而對(duì)于比較細(xì)的邊緣可能會(huì)忽略。Prewitt和Sobel算子比Roberts效果要好一些。LOG濾波和Canny算子的檢測(cè)效果優(yōu)于roberts算子,能夠檢測(cè)出圖象較細(xì)的邊緣部分。不同的醫(yī)學(xué)圖像在不同的系統(tǒng),針對(duì)不同的環(huán)境條件和要求,選擇合適的算子來對(duì)圖象進(jìn)行邊緣檢測(cè),為圖像進(jìn)一步應(yīng)用具有很重要的作用。
[1]岡薩雷斯.數(shù)字圖像處理(第二版)[M].電子工業(yè)出版社,2003.
[2]何斌,等.VisualC++數(shù)字圖像處理[M].北京:人民郵電出版社,2001,1.
[3]徐建華.圖像處理與分析[M].北京:科學(xué)出版社,1992,1.
[4]Canny J.A Computational Approach to Edge Detection[J].IEEETrans.on Pattern Analysis and Machine Intelligence,1986,8(6):679-698.
[5]袁麗婷,邱力軍.基于Matlab的X線醫(yī)學(xué)圖像增強(qiáng)與直方圖處理方法[J].第四軍醫(yī)大學(xué)學(xué)報(bào),2007,28(4):376-378.