計(jì)算機(jī)圖像處理_第1頁
計(jì)算機(jī)圖像處理_第2頁
計(jì)算機(jī)圖像處理_第3頁
計(jì)算機(jī)圖像處理_第4頁
計(jì)算機(jī)圖像處理_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

圖象處理中的邊緣檢測------canny算(轉(zhuǎn))2008-07-3014:04:07|

分類:

\o"編程"編程

閱讀295

評論0

字號:大中小

訂閱圖象邊緣檢測中邊界閉合性的分析與探討摘

在圖象邊緣檢測中往往要求所檢測到的邊緣具有封閉特性,本文詳細(xì)地分析了目前常用的兩種算法:哈夫變換和Canny邊緣檢測算法,最后,探討邊緣算子應(yīng)滿足的準(zhǔn)則。

關(guān)鍵詞

邊緣檢測;閉合性;哈夫變換;Canny算子

1引言

圖象的邊緣是指圖象局部區(qū)域亮度變化顯著的部分,該區(qū)域的灰度剖面一般可以看作是一個(gè)階躍,既從一個(gè)灰度值在很小的緩沖區(qū)域內(nèi)急劇變化到另一個(gè)灰度相差較大的灰度值。圖象的邊緣部分集中了圖象的大部分信息,圖象邊緣的確定與提取對于整個(gè)圖象場景的識別與理解是非常重要的,同時(shí)也是圖象分割所依賴的重要特征,邊緣檢測主要是圖象的灰度變化的度量、檢測和定位,自從1959提出邊緣檢測以來,經(jīng)過五十多年的發(fā)展,已有許多中不同的邊緣檢測方法。在我們常用的幾種用于邊緣檢測的算子中Laplace算子常常會產(chǎn)生雙邊界;而其他一些算子如Sobel算子又往往會形成不閉合區(qū)域。本文主要討論了在邊緣檢測中,獲取封閉邊界區(qū)域的算法。2圖象邊緣檢測的基本步驟

(1)濾波。邊緣檢測主要基于導(dǎo)數(shù)計(jì)算,但受噪聲影響。但濾波器在降低噪聲的同時(shí)也導(dǎo)致邊緣強(qiáng)度的損失。

(2)增強(qiáng)。增強(qiáng)算法將鄰域中灰度有顯著變化的點(diǎn)突出顯示。一般通過計(jì)算梯度幅值完成。

(3)檢測。但在有些圖象中梯度幅值較大的并不是邊緣點(diǎn)。最簡單的邊緣檢測是梯度幅值閾值判定。

(4)定位。精確確定邊緣的位置。

圖1邊緣檢測酸法的基本步驟3邊界閉合的算法3.1哈夫變換[3]

由于噪聲的存在,用各種算子得到的邊緣象素不連續(xù),但是由于邊緣象素之間有一定的連續(xù)性,我們就可以根據(jù)邊緣象素在梯度幅度或梯度方向上的連續(xù)性把他們連接起來。具體說來,如果象素(s,t)在象素(x,y)的領(lǐng)域且它們的梯度幅度與梯度方向在給定的閾值下滿足:

T是幅度閾值;A是角度閾值;

那么,如對所有的邊緣象素都進(jìn)行上述的判斷和連接就可以得到一個(gè)閉合的邊界。哈夫變換方法是利用圖像得全局特性而對目標(biāo)輪廓進(jìn)行直接檢測的方法,在已知區(qū)域形狀的條件下,哈夫變換可以準(zhǔn)確地捕獲到目標(biāo)的邊界(連續(xù)的獲不連續(xù)的),并最終以連續(xù)曲線的形式輸出變換結(jié)果,該變換可以從強(qiáng)噪聲環(huán)境中將已知形狀的目標(biāo)準(zhǔn)確得分割提取出來。

哈夫變換的核心思想是:點(diǎn)—線的對偶性(duality)。通過變換將圖象從圖像控件轉(zhuǎn)換到參數(shù)空間,在圖像空間中一條過點(diǎn)(x,y)的直線方程為y=px+q,通過代數(shù)變換可以轉(zhuǎn)換為另一種形式p=-px+y,即參數(shù)空間中過點(diǎn)(p,q)的一條直線,如果在圖像空間中保持直線的斜率和截距的不變,其在參數(shù)空間必定過點(diǎn)(p,q),這也就說明,在圖像空間中共線的點(diǎn)對應(yīng)參數(shù)空間共點(diǎn)的線.哈夫變換就是根據(jù)上述點(diǎn)—線的對偶性把在圖象空間中存在的直線檢測問題轉(zhuǎn)換為參數(shù)空間中存在的點(diǎn)檢測問題,后者的處理要比前者簡單易行得多,只需簡單地累加統(tǒng)計(jì)即可實(shí)現(xiàn)對邊緣的檢測.哈夫變換不僅能檢測直線等一階曲線的目標(biāo),對于園、橢圓等高階的曲線都可以檢測出來。如圓的方程為:

其參數(shù)空間是一個(gè)3D空間A(a,b,r),原理與檢測直線上的點(diǎn)相同,只是復(fù)雜性增加了。如果圓的半徑r己知,則問題又回到了2D空間A(a,b)

哈夫變換對已知目標(biāo)的檢測過程受隨機(jī)噪聲和曲線中斷等不利因素的影響很小,而且分割出的目標(biāo)是直接放到另一個(gè)“干凈”的緩存中的,因此可以做到零噪聲,是相當(dāng)有優(yōu)勢的。常規(guī)的哈夫變換在理論上能對所有可以寫出具體解析表達(dá)式的曲線進(jìn)行目標(biāo)檢測,但是在實(shí)際處理時(shí),經(jīng)常待檢測的目標(biāo)不規(guī)則或是很難獲取甚至根本沒有解析式,此時(shí)就要采取廣義上的哈夫變換來檢測目標(biāo),3.2最優(yōu)的階梯型邊緣檢測算法(canny邊緣檢測)

1.Canny邊緣檢測基本原理

(1)圖象邊緣檢測必須滿足兩個(gè)條件:一能有效地抑制噪聲;二必須盡量精確確定邊緣的位置。

(2)根據(jù)對信噪比與定位乘積進(jìn)行測度,得到最優(yōu)化逼近算子。這就是Canny邊緣檢測算子。

(3)類似與Marr(LoG)邊緣檢測方法,也屬于先平滑后求導(dǎo)數(shù)的方法。

2.Canny邊緣檢測算法:

step1:用高斯濾波器平滑圖象;

step2:用一階偏導(dǎo)的有限差分來計(jì)算梯度的幅值和方向;

step3:對梯度幅值進(jìn)行非極大值抑制;

step4:用雙閾值算法檢測和連接邊緣。

step1:高斯平滑函數(shù)

step3:非極大值抑制

僅僅得到全局的梯度并不足以確定邊緣,因此為確定邊緣,必須保留局部梯度最大的點(diǎn),而抑制非極大值。(non-maximasuppression,NMS)解決方法:利用梯度的方向。圖2非極大值抑制四個(gè)扇區(qū)的標(biāo)號為0到3,對應(yīng)3*3鄰域的四種可能組合。

在每一點(diǎn)上,鄰域的中心象素M與沿著梯度線的兩個(gè)象素相比。如果M的梯度值不比沿梯度線的兩個(gè)相鄰象素梯度值大,則令M=0。即:

step4:閾值化

減少假邊緣段數(shù)量的典型方法是對N[i,j]使用一個(gè)閾值。將低于閾值的所有值賦零值。但問題是如何選取閾值?

解決方法:雙閾值算法。雙閾值算法對非極大值抑制圖象作用兩個(gè)閾值τ1和τ2,且2τ1≈τ2,從而可以得到兩個(gè)閾值邊緣圖象N1[i,j]和N2[i,j]。由于N2[i,j]使用高閾值得到,因而含有很少的假邊緣,但有間斷(不閉合)。雙閾值法要在N2[i,j]中把邊緣連接成輪廓,當(dāng)?shù)竭_(dá)輪廓的端點(diǎn)時(shí),該算法就在N1[i,j]的8鄰點(diǎn)位置尋找可以連接到輪廓上的邊緣,這樣,算法不斷地在N1[i,j]中收集邊緣,直到將N2[i,j]連接起來為止。4邊緣算子應(yīng)滿足的準(zhǔn)則

若滿足此準(zhǔn)則,就能保證單邊緣只有一個(gè)響應(yīng)。對一個(gè)算法的性能評價(jià)可分為兩個(gè)階段進(jìn)行:計(jì)算假邊緣與丟失邊緣的數(shù)目;測量用于估計(jì)位置和方向的誤差(或誤差分布)。邊緣檢測算法的優(yōu)劣也可用品質(zhì)因數(shù)(FigureofMerit)來描述。Pratt品質(zhì)因數(shù)是其中一種,它著重考慮了丟失了有效的邊緣、邊緣定位誤差和將噪聲判斷為邊緣等三種誤差。5結(jié)束語

邊緣檢測在圖象分割、模式識別、機(jī)器視覺等中都有重要作用,人們已研究出很多種邊緣檢測算法,而哈夫變換和canny邊緣算子等是最經(jīng)典的算法,人們已在這些經(jīng)典算法基礎(chǔ)上提出一些新的改進(jìn)算法。clearall;closeall;warningoffall;I=imread('lena.bmp');%%如果是其他類型圖像,請先轉(zhuǎn)換為灰度圖%%沒有噪聲時(shí)的檢測結(jié)果BW_sobel=edge(I,'sobel');BW_prewitt=edge(I,'prewitt');BW_roberts=edge(I,'roberts');BW_laplace=edge(I,'log');BW_canny=edge(I,'canny');figure(1);subplot(2,3,1),imshow(I),xlabel('原始圖像');subplot(2,3,2),imshow(BW_sobel),xlabel('sobel檢測');subplot(2,3,3),imshow(BW_prewitt),xlabel('prewitt檢測');subplot(2,3,4),imshow(BW_roberts),xlabel('roberts檢測');subplot(2,3,5),imshow(BW_laplace),xlabel('laplace檢測');subplot(2,3,6),imshow(BW_canny),xlabel('canny檢測');%%加入高斯噪聲(μ=0,σ^2=0.01)檢測結(jié)果I_g1=imnoise(I,'gaussian',0,0.01);BW_sobel=edge(I_g1,'sobel');BW_prewitt=edge(I_g1,'prewitt');BW_roberts=edge(I_g1,'roberts');BW_laplace=edge(I_g1,'log');BW_canny=edge(I_g1,'canny');figure(2);subplot(2,3,1),imshow(I_g1),xlabel('加入高斯噪聲(μ=0,σ^2=0.01)圖像');subplot(2,3,2),imshow(BW_sobel),xlabel('sobel檢測');subplot(2,3,3),imshow(BW_prewitt),xlabel('prewitt檢測');subplot(2,3,4),imshow(BW_roberts),xlabel('roberts檢測');subplot(2,3,5),imshow(BW_laplace),xlabel('laplace檢測');subplot(2,3,6),imshow(BW_canny),xlabel('canny檢測');%%加入高斯噪聲(μ=0,σ^2=0.02)檢測結(jié)果I_g2=imnoise(I,'gaussian',0,0.02);BW_sobel=edge(I_g2,'sobel');BW_prewitt=edge(I_g2,'prewitt');BW_roberts=edge(I_g2,'roberts');BW_laplace=edge(I_g2,'log');BW_canny=edge(I_g2,'canny');figure(3);subplot(2,3,1),imshow(I_g2),xlabel('加入高斯噪聲(μ=0,σ^2=0.02)圖像');subplot(2,3,2),imshow(BW_sobel),xlabe

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論