邊緣檢測算法在醫(yī)學(xué)超聲液性病變圖像中的應(yīng)用
1.1.3 Prewitt算子
Prewitt和Sobel算子都是使用3×3模板的一階微分算子,它們是在研究曲面擬合的基礎(chǔ)上提出的。擬合是指已知某連續(xù)函數(shù)的一系列離散函數(shù)值,通過最小二乘法等準(zhǔn)則來確定該函數(shù)中的待定系數(shù)。Prewitt和Sobel算子的2個差分模板的系數(shù)之間的區(qū)別僅在于求平均的方法不同。隨后出現(xiàn)的Kirseh算子用不等權(quán)的8個3×3循環(huán)平均梯度算子分別與圖像進(jìn)行卷積,取其中的最大值輸出,它可以檢測各個方向上的邊緣,減少了由于平均而造成的細(xì)節(jié)丟失,但同時(shí)增加了計(jì)算量。
1.2 基于二階微分的邊緣檢測算法
前面討論了基于一階微分的邊緣檢測,如果所求的一階微分高于某一閾值,則確定該點(diǎn)為邊緣點(diǎn)。一階微分組成的梯度是一種矢量,不但有大小還有方向,和標(biāo)量比較,數(shù)據(jù)存儲量比較大。一種更好的方法就是求梯度局部最大值對應(yīng)的點(diǎn),并認(rèn)定它們是邊緣點(diǎn),通過去除一階微分中的非局部最大值,可以檢測出更精確的邊緣。一階微分的局部最大值對應(yīng)著二階微分的零交叉點(diǎn),這意味著在邊緣點(diǎn)處有一階微分的峰值,同樣地,有二階微分的零交叉點(diǎn)。這樣,通過找圖像強(qiáng)度的二階微分的零交叉點(diǎn)就能找到邊緣點(diǎn)。
在二維空間,對應(yīng)二階微分有兩種算子:Laplace算子和Marr算子。Laplace算子也稱拉氏算子,它的特點(diǎn)是具有旋轉(zhuǎn)對稱性而不具備方向性,只需要一個3×3模板。Laplaee算子是對二維函數(shù)進(jìn)行運(yùn)算的二階導(dǎo)數(shù)算子,與方向無關(guān),對取向不敏感,因而計(jì)算量要小。根據(jù)邊緣的特性,Laplace算子可以作為邊緣提取算子,計(jì)算數(shù)字圖像的Laplaee值可以借助模板實(shí)現(xiàn),但是它對噪聲相當(dāng)敏感,它相當(dāng)于高通濾波,常會出現(xiàn)一些虛假邊緣。由于Laplace算子存在著諸多缺陷,它一般并不直接應(yīng)用于邊緣檢測,而是結(jié)合其它方法以提高邊緣的定位精度。而Marr算子就是在Laplace算子基礎(chǔ)上改進(jìn),由于它使用的是高斯型的Laplace模板,因此又被稱作LOG算子,先對圖像用Gauss函數(shù)進(jìn)行平滑,然后利用Laplace算子對平滑的圖像求二階導(dǎo)數(shù)后得到的零交叉點(diǎn)作為待選邊緣。LOG算子就是對圖像進(jìn)行濾波和微分的過程,是利用旋轉(zhuǎn)對稱的LOG模板與圖像做卷積,確定濾波器輸出的零交叉位置。
1.3 Canny算子
Canny算子是最常用的邊緣檢測方法之一,是一個具有濾波、增強(qiáng)和檢測的多階段的優(yōu)化算子。
該算法的基本過程如圖1所示。本文引用地址:http://www.ex-cimer.com/article/193780.htm
Canny算子檢測邊緣的實(shí)質(zhì)是求信號函數(shù)的極大值問題來判定圖像邊緣像素點(diǎn)?;静襟E為:
(1)用高斯濾波器平滑圖像;
(2)用一階偏導(dǎo)的有限差分來計(jì)算梯度的幅值和方向;
(3)對梯度幅值進(jìn)行非極大值抑制;
(4)用雙閾值算法檢測和連接邊緣。Canny算子能夠得到連續(xù)完整的圖像,但需要注意的問題是:Gauss濾波的尺度,以及雙閾值的選擇。
1.4 基于Snake模型的邊緣檢測算法
Snake模型是1987年由Kass提出的,它的基本思想是以構(gòu)成一定形狀的控制曲線為模板(或者稱為輪廓線),通過模板自身的彈性形變與圖像局部特征相匹配達(dá)到調(diào)和,即某種能量函數(shù)極小化,完成對圖像邊緣的提取,通過對模板的進(jìn)一步分析而實(shí)現(xiàn)圖像的理解和識別。能量最小化模型已經(jīng)有了很長的發(fā)展歷史,Kass對其進(jìn)行了改進(jìn),采用動態(tài)調(diào)整的方法來實(shí)現(xiàn)它,對圖像的高層信息進(jìn)行分析和提取而不至于受到太多低層信息的影響。通過在原始的最小化函數(shù)中加入外力因子,可以引導(dǎo)初始化的輪廓線朝著特定的方向前進(jìn),最后達(dá)到提取目標(biāo)邊界的目的。
1.4.1 基本Snake模型
Kass等提出的基本Snake模型由一組控制點(diǎn)組成,即v(s)=(x(s),y(s)),s∈[0,1],其中x(s)和y(s)分別表示每個控制點(diǎn)在圖像中的坐標(biāo)位置,s是以傅立葉變換形式描述邊界的自變量。其對應(yīng)的能量函數(shù)定義為:
式中:Eint為曲線的內(nèi)部能量;Eext為外部能量。
內(nèi)部能量定義為:
式中|vs(s)|為彈性能量,是曲線相對于弧長的一階導(dǎo)數(shù)的模,受彈性系數(shù)的調(diào)節(jié),控制著曲線的張力。|vss(s)|是彎曲能量,是曲線相對于弧長的二階導(dǎo)數(shù)的模,受剛性系數(shù)的調(diào)節(jié),控制曲線的變形程度。
對于普通的灰度圖像I(x,y),典型的外部能量(外部力)表達(dá)有如下2種定義:
式中為梯度算子,是方差為σ的二維高斯函數(shù)。在圖像邊緣區(qū)域,圖像灰度值的梯度往往較大,取反后計(jì)算以滿足能量最小的要求。
評論