邊緣檢測實(shí)驗(yàn)報(bào)告_第1頁
邊緣檢測實(shí)驗(yàn)報(bào)告_第2頁
邊緣檢測實(shí)驗(yàn)報(bào)告_第3頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、圖像邊緣提取實(shí)驗(yàn)報(bào)告一、實(shí)驗(yàn)?zāi)康耐ㄟ^課堂的學(xué)習(xí),已經(jīng)對圖像分割的相關(guān)理論知識已經(jīng)有了全面的了解,知道了許多圖像分割的算法及算子,了解到不同的算子算法有著不同的優(yōu)缺點(diǎn),為了更好更直觀地對圖像分割進(jìn)行深入理解,達(dá)到理論聯(lián)系實(shí)際的目的,特制定如下的實(shí)驗(yàn)。二、實(shí)驗(yàn)原理檢測圖像邊緣信息,可以把圖像看做曲面,邊緣就是圖像的變化最劇烈的位置。這里所講的邊緣信息包含兩個(gè)方面:一是邊緣的具體位置,即像素的坐 標(biāo);而是邊緣的方向。微分算子有兩個(gè)重要性質(zhì):定域性(或局部性)、敏感性(或 無界性)。敏感性就是說,它對局部的函數(shù)值變化很敏感,但是因其對變化過于 敏感又有了天然的缺陷一一不能抵抗噪聲。局部性意思是指,每一

2、點(diǎn)的導(dǎo)數(shù)只 與函數(shù)在該點(diǎn)鄰近的信息有關(guān)。主要有兩大類基于微分算子的邊緣檢測技術(shù):一階微分算子邊緣檢測與二階微分算子邊緣檢測。這些檢測技術(shù)采用以下的基本步驟:(1) 將相應(yīng)的微分算子簡化為離散的差分格式,進(jìn)而簡化為模板(記為T)。(2) 利用模板對圖像f(m,n)進(jìn)行運(yùn)算,獲得模板作用后的結(jié)果 Tf(m,n)。(3) 提出閾值h,在采用一階微分算子情形記錄下高于某個(gè)閾值h的位置坐標(biāo)Sh (m, n)|Tf(m,n) h(而采用二階微分算子情形,一般是對某個(gè)閾值0確立Sh (m, n)|Tf(m, n) )對集合Sh進(jìn)行整理,同時(shí)調(diào)整閾值hRoberts 算子Roberts算子是一種利用局部差分算

3、子尋找邊緣的算子,兩個(gè)模板分別為1 0Rxc彳010 1Ryy 1 0則,Rxf(i, j)= f(i, j) f(i 1, j1)Ryf(i,j)=f(i 1, j) f(i, j1)算法的步驟為:(1)首先用兩個(gè)模板分別對圖像作用得到Rxf 和 Ryf ;(2)對Tf(i,j) Rxf |Ry,進(jìn)行閾值判決,若Tf(i,j)大于閾值則相應(yīng)的點(diǎn) 位于便于邊緣處。對于閾值選取的說明:由于微分算子的檢測性能受閾值的影響較大,為此,針對具體圖像我們采用以下閾值的選取方法,對處理后的圖像統(tǒng)計(jì)大于某一閾 值的點(diǎn),對這些數(shù)據(jù)求平均值,以下每個(gè)程序均采用此方法,不再做說明。Sobel算子Sobel算子采用

4、中心差分,但對中間水平線和垂直線上的四個(gè)鄰近點(diǎn)賦予略高的權(quán)重。兩個(gè)模板分別如下:101202Sy101Prewitt 算子Prewitt算子也屬于中心差分類型,板如下:但沒有給最鄰近點(diǎn)較高的權(quán)重,兩個(gè)模1011Px101Py010111 10 01 1采用一階微分算子很難找到一個(gè)一致的閾值選擇辦法,保證檢測出的圖像有相對均勻的寬度,克服這個(gè)障礙的辦法是改用二階微分算子進(jìn)行邊緣檢測定位。 Laplace采用一階微分算子很難找到一個(gè)一致的閾值選擇辦法,保證檢測出的圖像有相對均勻的寬度,克服這個(gè)障礙的辦法是改用二階微分算子進(jìn)行邊緣檢測定位。經(jīng)常采用如下Laplace微分算子:2f 2ff(x, y)

5、 2 rx y并進(jìn)而尋找f(x,y)的跨零點(diǎn)的位置(零點(diǎn)的局部正和負(fù)的取值都有)。 當(dāng)然實(shí)踐中可以通過模板來實(shí)現(xiàn),本程序采用如下模板:0 1 01410 1 0無論什么樣的微分算子,直接用來進(jìn)行邊緣檢測,會(huì)受到噪聲很大的干擾。 即使是二階微分算子也不能克服噪聲干擾。但是如果采用高斯低通濾波,所得 的結(jié)果則比較好地保留了圖像的邊緣特征。Marr-Hildrech 的LOG邊緣檢測算法:精選資料Canny檢測子Canny算子采用和數(shù)據(jù)內(nèi)容相關(guān)的濾波技術(shù)。Canny算子求邊緣點(diǎn)具體算法步驟如下:1. 用高斯濾波器平滑圖像.2. 用一階偏導(dǎo)有限差分計(jì)算梯度幅值和方向3. 對梯度幅值進(jìn)行非極大值抑制.4

6、. 用雙閾值算法檢測和連接邊緣.步1.圖像與高斯平滑濾波器卷積:-a令g (“ 訓(xùn)平滑后的區(qū)像,用虹3 Q)對圈像a 7 )的珈回表示劉g(蓋丿)-嘰H&汁耳中;冰代表卷積.步2-使用一階有限筆分計(jì)算偏導(dǎo)數(shù)陣列P與匕已平滑心 點(diǎn)閱梯度可以便用2x2-階育限差分近說式來計(jì)算r與了偏導(dǎo)數(shù)的兩個(gè) 陣列£匕了)與咒兀川£(切知伉=f/(x十ij)vj)+/(i+i十匸h叨十i川2,;)対G尸二LZ(兀尹+ 1) 了(工為+/(兀+1丿+1) /(兀+人片)卩2t VPay + h rX. V+1-p + l. i +l V. Vm1>1/a r +1I",I

7、.r + L r+ 11-1J1-1I在這牛2般正方形內(nèi)求育限差分的均值*臥便在圖像中的同一點(diǎn)計(jì)算x和y吊偏導(dǎo)數(shù) 梯度°幅值和方位角可用直角坐癖9極坐標(biāo)的坐標(biāo)轉(zhuǎn)優(yōu)公式來計(jì)茸:兀3二J&X (兀+E (兀巧2亦加二arctan (牙(兀尹)®(s)Afjv,y反映了團(tuán)慷的邊緩強(qiáng)虧日比片反映了邊緣的方向口便得取得局部最大值 的方向角靈扎尹卜就反映了邊緣:的亓直L步3.對梯度幅值進(jìn)行非極大值抑 制(non_maxima suppression , NMS):僅僅得到全局的梯度并不足以確定邊緣, 因此為確定邊緣,必須保留局部梯 度最大的點(diǎn),而抑制非極大值。解決方法:利用梯度

8、的方向12384765埒梯度角離散為圓周的四個(gè)扇區(qū)之一衣以便用3X3的窗口作抑制運(yùn)算。四亍扇區(qū)的標(biāo)號為 0到對應(yīng)貂3鄰域的四種可能組合在每一點(diǎn)上,鄰域的中心象素人幾與沿著梯度線螢兩入篡秦相比=如果My的 梯度值不比沿梯度線的兩個(gè)相鄰辣秦梯蜜值大則令步4用 雙閾值算法檢測和連接邊緣對非極大值抑制圖像作用兩個(gè)閾值th1和th2,兩者關(guān)系th1=0.4th2 。我們把梯度值小于th1的像素的灰度值設(shè)為0,得到圖像1。然后把梯度值小于 th2的 像素的灰度值設(shè)為0,得到圖像2。由于圖像2的閾值較高,去除大部分噪音,但同時(shí)也損失了有用的邊緣信息。而圖像1的閾值較低,保留了較多的信息,我們可以以圖像2為基

9、礎(chǔ),以圖像1為補(bǔ)充來連結(jié)圖像的邊緣。鏈接邊緣的具體步驟如下:對圖像2進(jìn)行掃描,當(dāng)遇到一個(gè)非零灰度的像素p(x,y)時(shí),跟蹤以p(x,y)為開始點(diǎn)的輪廓線,直到輪廓 線的終點(diǎn)q(x,y)??疾靾D像1中 與圖像2中q(x,y)點(diǎn)位置對應(yīng)的點(diǎn)s(x,y)的8鄰 近區(qū)域。如 果在s(x,y)點(diǎn)的8鄰近區(qū)域中有非零像素s(x,y)存在,則將其包括到圖像2中, 作為r(x,y)點(diǎn)。從r(x,y)開始,重復(fù)第一步,直到我們在圖像1和圖像2中都 無法繼續(xù)為止。當(dāng)完成對包含p(x,y)的 輪廓線的連結(jié)之后,將這條輪廓線標(biāo)記為已經(jīng)訪問?;氐降谝徊剑瑢ふ蚁乱粭l輪廓線。重復(fù)第一步、第二步、第三步,直到圖像2中找不到新

10、輪廓線為止。至此,完成canny算 子的邊緣檢測。三、具體過程原皓國像Mb創(chuàng)檢測卩怕wit t檢測laplace 檢測匚茗朗¥檢測卩怕wit t檢測加入高斯噪聲宀旳闿像sb創(chuàng)檢測Ciberts 檢測laplace 檢測cannyfe測Log算子閾值取0.01Canny算子閾值取0.2卩怕wit t檢測加入高斯噪聲(尸0,是加2)團(tuán)像汕畫檢測roberts 檢測lplace 檢測匚茗朗¥檢測Log算子閾值取0.01Canny算子閾值取0.25四、實(shí)驗(yàn)分析通過對上述幾種算子的研究,我們可以發(fā)現(xiàn), Prewit t算子和Sobel算 子都是對圖像進(jìn)行差分和濾波運(yùn)算,僅在平滑部分的

11、權(quán)值選擇上有些差異,但是 圖像產(chǎn)生了一定的模糊,而且有些邊緣還檢測不出來,所以檢測精度比較低 , 該類算子比較適用于圖像邊緣灰度值比較明顯的情況。Robert s算子檢測精度比較高,但容易丟失一部分邊緣,使檢測的結(jié)果 不完整,同時(shí)圖像沒經(jīng)過平滑處理,不能抑制噪聲,所以該算子對具有陡峭的低 噪聲圖像響應(yīng)最好。Laplace算子通過高斯函數(shù)對圖像進(jìn)行了平滑處理,對噪聲的抑制作用比 較明顯 , 但處理的同時(shí)也可能將原有的邊緣平滑 , 造成某些邊緣無法檢測到。 此外,噪聲對其影響也較大,檢測到的圖細(xì)節(jié)很豐富 , 同時(shí)就可能出現(xiàn)偽邊緣。 但是,如果要降低偽邊緣的話,又可能使檢測精度下降,丟失很多真邊緣。

12、因 此, 對于不同圖像應(yīng)選擇不同參數(shù)。Canny 算子也采用高斯函數(shù)對圖像進(jìn)行平滑處理 ,也具有較強(qiáng)的去噪能力 但同樣可能會(huì)丟失一些邊緣信息,但是,從圖中可以看出, Canny 算子比 Laplace 算子的檢測邊緣的精度要高些。 通過實(shí)驗(yàn)結(jié)果可以看出 ,該算子在上述 幾種邊緣檢測算子當(dāng)中效果最好。 通過上述實(shí)驗(yàn)結(jié)果我們可以發(fā)現(xiàn),在加入高斯噪聲以后, canny 算子的去噪能 力減弱,對邊緣檢測的效果不太明顯。相反,從圖中可以發(fā)現(xiàn) sobel 算子和 prewitt 算子對噪聲的過濾作用較為明顯。 基本上能夠檢測出較為完整的邊緣信 號。Matlab 代碼: clear all;close al

13、l;warning off all;I = imread('cameraman.tif');% 沒有噪聲時(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(' 原始

14、圖像 ');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(

15、9;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);sub

16、plot(2,3,1),imshow(l_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('laplac

17、e檢測');subplot(2,3,6),imshow(BW_canny),xlabel('canny檢測 ');%加入高斯噪聲(卩=0 ,于2=0.02 )檢測結(jié)果l_g2 = imnoise(l,'gaussian',0,0.02);BW_sobel = edge(l_g2,'sobel');BW_prewitt = edge(l_g2,'prewitt');BW_roberts = edge(l_g2,'roberts');BW_laplace = edge(l_g2,'log');BW_canny = edge(l_g2,'canny');figure(3);subplot(2,3,1),imshow(l_g2),xlabel('加入高斯噪聲(尸0 ,于2=0.02)圖像')subplot(2,3,2),imshow(BW_sobe

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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

提交評論