【正文】
algorithm and whose characteristic. To studying image analysis field of other knowledge to lay the foundation.Keywords: Edge Treatment , MATLAB, GUI, Log operator, Canny operator 目 錄第一章 緒論 1 數(shù)字圖像簡(jiǎn)介 1 數(shù)字圖像的處理 2 圖像邊緣處理的意義 3 本章小結(jié) 3第二章 開發(fā)平臺(tái)的選擇 4 開發(fā)平臺(tái)的選擇 4 Matlab簡(jiǎn)介 4 本章小結(jié) 5第三章 常用的圖像邊緣檢測(cè)算法 6 引言 6 邊緣檢測(cè)與提取過程 7 邊緣檢測(cè)與提取常用算法 8 Roberts邊緣算子 8 Sobel邊緣算子 9 Prewitt邊緣算子 9 Log邊緣算子 10 Canny邊緣算子 11 本章小結(jié) 13第四章 常用算法的實(shí)現(xiàn)與比較 14 常用算法的Matlab實(shí)現(xiàn) 14 算子之間的比較 18 算子的定位性 18 算子的穩(wěn)定性 19 本章小結(jié) 22第五章 圖像邊緣提取的GUI設(shè)計(jì) 23 主要函數(shù)的介紹 23 GUI的實(shí)現(xiàn) 24 本章小結(jié) 30第六章 系統(tǒng)測(cè)試 31 打開圖像模塊測(cè)試 31 保存圖像模塊 31 執(zhí)行模塊測(cè)試 31 本章小結(jié) 32結(jié)論 33參考文獻(xiàn) 34致謝 35第一章 緒論在實(shí)際圖像邊緣檢測(cè)問題中,圖像的邊緣作為圖像的一種基本特征,經(jīng)常被應(yīng)用到較高層次的圖像應(yīng)用中,它在圖像識(shí)別、圖像分割、圖像增強(qiáng)以及圖像壓縮等領(lǐng)域中有較為廣泛的應(yīng)用。本文寫作的主要目的是對(duì)常用的圖像邊緣提取算法進(jìn)行研究和對(duì)比,了解常用邊緣提取算法的原理及其特點(diǎn),為以后深入學(xué)習(xí)圖像分析領(lǐng)域的其它知識(shí)打下基礎(chǔ)。本文主要闡述基于Matlab的圖像邊緣檢測(cè)技術(shù)。如果發(fā)表相關(guān)成果,一定征得指導(dǎo)教師同意,且第一署名單位為XXX。對(duì)本文的研究成果做出重要貢獻(xiàn)的個(gè)人和集體,均已在文中以明確方式標(biāo)明。 畢業(yè)論文(設(shè)計(jì))題 目: 圖像處理中的邊緣提取算 法及其實(shí)現(xiàn) 院(系): 專業(yè)年級(jí): 姓 名: 張大威 學(xué) 號(hào): 指導(dǎo)教師: 2012年4月1日原 創(chuàng) 性 聲 明本人鄭重聲明:本人所呈交的畢業(yè)論文,是在指導(dǎo)老師的指導(dǎo)下獨(dú)立進(jìn)行研究所取得的成果。本聲明的法律責(zé)任由本人承擔(dān)。本人離校后使用畢業(yè)論文或與該論文直接相關(guān)的學(xué)術(shù)論文或成果時(shí),第一署名單位仍然為XXX。以Matlab為開發(fā)平臺(tái)和編程語言,設(shè)計(jì)出圖像邊緣檢測(cè)軟件,并且設(shè)計(jì)了圖形用戶界面GUIDE,在圖形用戶界面中添加了與各種算子相對(duì)應(yīng)的處理程序,以及圖形文件的獲取、保存等功能,完成了圖像邊緣檢測(cè)軟件。關(guān)鍵詞:圖像邊緣處理,MATLAB,GUI,Log算子,Canny算子Edge extraction algorithm in image processing and its implementationAbstractDigital image edge detection plays an import part in image analysis, such as image segmentation, interested region recognition and region shape it’s an import method in image feature extraction of image edge includes the valuable infotmation of the image which can be use in image understanding and through edge detection,we can reduce the calculation of image analysis and processing in the following step.This article discusses the Matlabbased image edge detection .Discussed in Matlab as the development platform and programming language, designed edge detection software , the design of the graphical user interface GUIDE , bining the portrait maps ,text maps, fractal images to illustrate the positioning of these operators。圖像的邊緣是圖像最基本的特征之一。由于邊緣檢測(cè)在許多方面都有著非常重要的使用價(jià)值,所以人們一直在致力于研究和解決如何構(gòu)造出具有良好性質(zhì)及效果的邊緣檢測(cè)算子的問題。圖像也可以理解為介于文字和繪圖之間的一種形式。 數(shù)字圖像的處理一幅圖像可以定義為一個(gè)二維函數(shù)f (x , y),這里的x和y是空間坐標(biāo),而且在任何一對(duì)空間坐標(biāo)(x , y)上的幅值f被稱為該點(diǎn)圖像的強(qiáng)度或灰度。然而,人類感知只是限于電磁波譜的視覺波段,而成像機(jī)器則可覆蓋幾乎全部電磁波譜,他們可以對(duì)那些非人類習(xí)慣的那些圖像源進(jìn)行加工,這些圖像源包括超聲波、電子顯微鏡及計(jì)算機(jī)所產(chǎn)生的圖像。當(dāng)圖像已被采集且已對(duì)獲取過程中產(chǎn)生的失真進(jìn)行了校正,那么所有可用圖像處理技術(shù)在本質(zhì)上是通用的。邊緣是圖像最基本的特征,所謂邊緣,就指周圍灰度強(qiáng)度有反差變化的那些像素的集合,是圖像分割所依賴的重要基礎(chǔ),也是紋理分析和圖像識(shí)別的重要基礎(chǔ)。 圖像邊緣處理的意義圖像處理是自動(dòng)化學(xué)科的一個(gè)分支,在工程技術(shù)領(lǐng)域有著廣泛的應(yīng)用,而邊緣檢測(cè)技術(shù)又是圖形處理中的重要部分。第二章 開發(fā)平臺(tái)的選擇 開發(fā)平臺(tái)的選擇現(xiàn)在可用于圖像處理編程的軟件有很多,基本上主流的編程工具軟件都可以,但對(duì)于我們要完成畢業(yè)設(shè)計(jì)的大學(xué)生而言,要在很短的時(shí)間內(nèi)將圖像處理程序給編寫出來的話,用那些專業(yè)的編程軟件是比較困難的。這是因?yàn)镸atlab有專門的圖像處理工具箱,有很多實(shí)現(xiàn)某種圖像處理功能的函數(shù),而專業(yè)級(jí)的編程工具并沒有專門為圖像處理而編寫的函數(shù),很多圖像處理函數(shù)需要開發(fā)者自己編寫。它在數(shù)學(xué)類科技應(yīng)用軟件中,在數(shù)值計(jì)算方面首屈一指。Matlab圖形處理研究的主要問題有:本文主要使用到圖像分析中的圖像邊緣檢測(cè)功能。圖像邊緣信息在圖像分布和人的視覺中都是十分重要的,是圖像識(shí)別中提取圖像特征的一個(gè)重要屬性。本文寫作的目的是探索和研究幾種經(jīng)典的圖像邊緣提取算法。所謂邊緣(或邊沿)是指其周圍像素灰度有階躍變化或屋頂變化的那些像素的集合。這些方法多是以待處理像素為中心的鄰域作為進(jìn)行灰度分析的基礎(chǔ),實(shí)現(xiàn)對(duì)圖像邊緣的提取并已經(jīng)取得了較好的處理效果。從本質(zhì)上說,圖像邊緣是圖像局部特性不連續(xù)性的反應(yīng),它標(biāo)志著一個(gè)區(qū)域的終結(jié)和另一個(gè)區(qū)域的開始。在圖像中邊緣區(qū)域的灰度在空間上的變化形式一般可分為三個(gè)類型:階躍型、房頂型和凸緣型,如圖31所示: 階躍型 房頂型 突圓型 邊緣灰度變化圖31 三個(gè)類型 邊緣檢測(cè)與提取過程從人的直觀感受來說,邊緣對(duì)應(yīng)于物體的幾何邊界。此外,還需要把邊緣細(xì)化成只有一個(gè)像素的寬度。3)檢測(cè):在有些圖像中梯度幅值較大的并不是邊緣點(diǎn)。這些方法經(jīng)過實(shí)踐的檢驗(yàn),成為了經(jīng)典的內(nèi)容。經(jīng)典的邊界提取技術(shù)大都基于微分運(yùn)算,首先通過平滑來濾除圖像中的噪聲,然后進(jìn)行一階微分或二階微分運(yùn)算,求得梯度最大值或二階導(dǎo)數(shù)的過零點(diǎn),最后選取適當(dāng)?shù)拈撝祦硖崛∵吔纭?21000121101202101圖32 Sobel邊緣算子 Sobel算子認(rèn)為鄰域的像素對(duì)當(dāng)前像素產(chǎn)生的影響不是等價(jià)的,所以距離不同的像素具有不同的權(quán)值,對(duì)算子結(jié)果產(chǎn)生的影響也不同。 Log邊緣算子由于利用圖像強(qiáng)度二階導(dǎo)數(shù)的零交叉點(diǎn)來求邊緣點(diǎn)的算法對(duì)噪聲十分敏感,所以要在邊緣檢測(cè)前濾除噪聲,為此,馬爾(Marr)和希爾得勒斯(Hildreth)根據(jù)人類視覺特性提出了一種邊緣檢測(cè)的方法,該方法將高斯濾波和拉普拉斯檢測(cè)算子結(jié)合在一起進(jìn)行邊緣檢測(cè)的方法,故稱為L(zhǎng)og(Laplacian of Gassian )算法,也稱之為高斯拉普拉斯算子,該算法的主要思路和步驟如下:(1)濾波:首先對(duì)圖像f(x,y)進(jìn)行平滑濾波,其濾波函數(shù)根據(jù)人類視覺特性選為高斯函數(shù),即: 其中,G(x,y)是一個(gè)圓對(duì)稱函數(shù),其平滑的作用是可通過來控制的。拉普拉斯函數(shù)用二維二階導(dǎo)數(shù)的近似,是因?yàn)樗且环N無方向算子。這就是馬爾和希爾得勒斯提出的邊緣檢測(cè)算子(簡(jiǎn)稱MH算子),又稱為墨西哥草帽算子。Canny方法也使用拉普拉斯算子,該方法與其他邊緣檢測(cè)方法不同之處在于,它使用2種不同的閾值分別檢測(cè)強(qiáng)邊緣和弱邊緣,并且僅當(dāng)弱邊緣與強(qiáng)邊緣相連時(shí)才將弱邊緣包含在輸出圖像中,因此這種方法容易檢查出真正的弱邊緣。step2: = , =*= 反映了圖像(x,y)點(diǎn)處的邊緣強(qiáng)度,是圖像(x,y)點(diǎn)處的法向矢量。在每一點(diǎn)上,鄰域的中心像素M與沿著梯度線的兩個(gè)像素相比。理論上是可行的,問題是如何選取閾值。由于G2(x,y)使用高閾值得到,因而含有很少的假邊緣,但有間斷(不閉合)。 本章小結(jié)本章介紹了邊緣檢測(cè)中五種比較有代表性的算法,從數(shù)學(xué)的角度講述了各算子的實(shí)現(xiàn)步驟,下一章將介紹各種算法在Matlab中的實(shí)現(xiàn)。 常用算法的Matlab實(shí)現(xiàn)Matlab圖像處理工具箱提供的edge函數(shù)可以實(shí)現(xiàn)邊緣檢測(cè)的功能。 d) Canny;e)Sobel主要代碼為:f = imread (39。 %將彩色圖像轉(zhuǎn)換為灰度圖像f = im2double(f)。PF = edge(f, 39。Prewitt Filter39。)。LF = edge(f, 39。Laplacian of Gaussian (LoG) Filter39。)。DF = edge(f, 39。sobel Filter39。在Matlab中輸入如下的程序:f = imread(39。 %將彩色圖像轉(zhuǎn)換為灰度圖像f = im2double(f)。