基于matlab圖像增強(qiáng)的比較的程序設(shè)計(jì)_第1頁(yè)
基于matlab圖像增強(qiáng)的比較的程序設(shè)計(jì)_第2頁(yè)
基于matlab圖像增強(qiáng)的比較的程序設(shè)計(jì)_第3頁(yè)
基于matlab圖像增強(qiáng)的比較的程序設(shè)計(jì)_第4頁(yè)
基于matlab圖像增強(qiáng)的比較的程序設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、沈陽(yáng)理工大學(xué)數(shù)字圖象處理課程設(shè)計(jì)目 錄1 Matlab軟件簡(jiǎn)介11.1 Matlab語(yǔ)言的歷史11.2 Matlab軟件概況12 設(shè)計(jì)目的33 原理分析43.1 數(shù)字圖像噪聲43.2 空間域圖像增強(qiáng)43.3 中值濾波54 程序設(shè)計(jì)64.1 程序設(shè)計(jì)思路64.2 要使用的Matlab函數(shù)65 程序流程圖75.1 添加高斯噪聲流程圖75.2 添加椒鹽噪聲流程圖85.3 中值濾波流程圖96 源程序106.1 添加高斯噪聲再濾波106.2 添加椒鹽噪聲再濾波117 程序運(yùn)行結(jié)果及分析127.1 高斯噪聲濾波結(jié)果127.2 椒鹽噪聲濾波結(jié)果137.3 結(jié)果分析14結(jié)束語(yǔ)15參考文獻(xiàn)16摘 要 圖像增強(qiáng)是

2、數(shù)字圖像處理的基本內(nèi)容之一,其目的是突出在圖像中的有用信息,擴(kuò)大圖像中不同物體特征之間的差別,為圖像的信息提取及其他圖像分析技術(shù)奠定良好的基礎(chǔ)。圖像增強(qiáng)的主要目的是通過(guò)增強(qiáng)圖像中的有用信息,抑制無(wú)用信息從而改善圖像的視覺(jué)效果和有利于人工和機(jī)器分析。處理的過(guò)程中,消除圖像的噪聲干擾是一個(gè)非常重要的問(wèn)題。圖像在實(shí)際應(yīng)用中可能會(huì)遇到各種噪聲干擾,如高斯噪聲、椒鹽噪聲等??梢圆捎每臻g域圖像增強(qiáng)的辦法對(duì)其進(jìn)行處理,減少噪聲的影響。本次課設(shè)使用的是空間濾波對(duì)圖片處理,包括均值濾波和中值濾波。關(guān)鍵詞:高斯噪聲,椒鹽噪聲,均值濾波,中值濾波沈陽(yáng)理工大學(xué)數(shù)字圖象處理課程設(shè)計(jì)1 Matlab軟件簡(jiǎn)介1.1 Mat

3、lab語(yǔ)言的歷史70年代后期,身為美國(guó)New Mexico大學(xué)計(jì)算機(jī)系系主任的Cleve Moler發(fā)現(xiàn)學(xué)生用FORTRAN編寫接口程序很費(fèi)時(shí)間,于是他開(kāi)始自己動(dòng)手,利用業(yè)余時(shí)間為學(xué)生編寫EISPACK和LINPACK的接口程序。Cleve Moler給這個(gè)接口程序取名為Matlab。1984年,為了推廣Matlab在數(shù)值計(jì)算中的應(yīng)用,Cleve Moler、Johon Little等正式成立了Math works公司,從而把Matlab推向市場(chǎng),并開(kāi)始了對(duì)Matlab工具相等的開(kāi)發(fā)設(shè)計(jì)。 1.2 Matlab軟件概況Matlab是MatrixLaboratory

4、的縮寫,意為矩陣實(shí)驗(yàn)室。它具有強(qiáng)大的矩陣處理功能和繪圖功能,進(jìn)還能進(jìn)行文字處理,繪圖,建模仿真等功能。隨著版本的不斷升級(jí),它在數(shù)值計(jì)算及符號(hào)計(jì)算功能上得到了進(jìn)一步完善。Matlab已經(jīng)發(fā)展成為多學(xué)科、多種工作平臺(tái)的功能強(qiáng)大的大型軟件。在歐美等高校,Matlab已經(jīng)成為線性代數(shù)、自動(dòng)控制理論、概率論及數(shù)理統(tǒng)計(jì)、數(shù)字信號(hào)處理、時(shí)間序列分析、動(dòng)態(tài)系統(tǒng)仿真等高級(jí)課程的基本教學(xué)工具。Matlab有以下一些特點(diǎn):Matlab的幫助功能很強(qiáng)大,自帶有詳細(xì)的幫助手冊(cè),基于HTML的完整的幫助功能,也可以用help命令來(lái)得到幫助信息。程序語(yǔ)法與C語(yǔ)言類似,設(shè)計(jì)自由度大,方便我們編程。例如在Matlab里,用戶無(wú)

5、需對(duì)變量預(yù)定義就可使用。大量數(shù)學(xué)函數(shù)已經(jīng)定義好,并且有很強(qiáng)的用戶自定義函數(shù)的能力。Matlab有高級(jí)的程序環(huán)境,但程序環(huán)境很簡(jiǎn)單易用,有與其它語(yǔ)言編寫的程序結(jié)合和輸入輸出格式化數(shù)據(jù)的能力;Matlab既具有結(jié)構(gòu)化的控制語(yǔ)句,又有面向?qū)ο缶幊痰奶匦?。還有一個(gè)原因使Matlab受人們歡迎的,那就是Matlab源程序具有很大的開(kāi)放性。除了內(nèi)部函數(shù)以外,所有Matlab的核心文件和工具箱文件都是可讀可改的源文件,用戶可通過(guò)對(duì)源文件的修改以及加入自己的文件構(gòu)成新的工具箱。Matlab有強(qiáng)大的的圖形繪制功能。在Matlab里,數(shù)據(jù)可視化的操作非常簡(jiǎn)單易用。Matlab還有較強(qiáng)的編輯圖形界面的能力??梢杂脕?lái)

6、聲成圖解和可視化的二維、三維圖。Matlab還擁有功能強(qiáng)大的各種工具箱。其工具箱分為兩類:功能性工具箱和學(xué)科性工具箱。功能性工具箱主要用來(lái)擴(kuò)充其符號(hào)計(jì)算功能,圖示建模仿真功能,文字處理功能以及與硬件實(shí)時(shí)交互功能。功能性工具箱用于多種學(xué)科。而學(xué)科性工具箱是專業(yè)性比較強(qiáng)的,如(control、signal proceessing 、commumnication) toolbox等。這些工具箱都是由該領(lǐng)域內(nèi)學(xué)術(shù)水平很高的專家編寫的,所以用戶無(wú)需編寫自己學(xué)科范圍內(nèi)的基礎(chǔ)程序,而直接進(jìn)行高,精,尖的研究,能極大地促進(jìn)我們的學(xué)習(xí)研究工作。雖然Matlab有很多優(yōu)點(diǎn),但它也有一些缺點(diǎn),比如:由于Matlab

7、的程序不用編譯等預(yù)處理,也不生成可執(zhí)行文件,程序?yàn)榻忉寛?zhí)行,所以速度較慢。2設(shè)計(jì)目的與要求1) 了解對(duì)灰度圖片處理的基本原理和方法并熟悉掌握MATLAB編程環(huán)境的一般操作和運(yùn)用。2) 通過(guò)MATLAB仿真軟件,實(shí)現(xiàn)給定一張灰度圖片,模擬加入高斯噪聲、椒鹽噪聲,然后使用中值濾波、均值濾波等方法進(jìn)行圖像增強(qiáng)。3) 利用matlab對(duì)加入噪聲的該圖片進(jìn)行處理,記錄每一種方法的過(guò)程,并進(jìn)行比較,分析哪種噪聲的所對(duì)應(yīng)的增強(qiáng)方法效果最好。4) 在加深對(duì)數(shù)字圖像處理課本知識(shí)理解的基礎(chǔ)上,學(xué)會(huì)運(yùn)用已學(xué)的知識(shí)設(shè)計(jì)圖像增強(qiáng)的處理方法并對(duì)結(jié)果進(jìn)行分析。5) 根據(jù)課程設(shè)計(jì)有關(guān)規(guī)范,按時(shí)、獨(dú)立完成課程設(shè)計(jì)說(shuō)明書。3原理

8、分析3.1 數(shù)字圖像噪聲數(shù)字圖像在圖像獲取集數(shù)字化過(guò)程,以及在數(shù)字圖像傳輸?shù)倪^(guò)程中,有可能會(huì)受到噪聲干擾。圖像傳感器在獲取圖像中會(huì)受到環(huán)境和原件質(zhì)量的影響,產(chǎn)生噪聲。例如照相機(jī)照相時(shí)會(huì)受到光照影響。數(shù)字圖像在傳輸過(guò)程中,由于傳輸信道回手到噪聲干擾,也會(huì)產(chǎn)生噪聲。噪聲有很多種類,例如:高斯噪聲,瑞利噪聲,椒鹽噪聲,指數(shù)分布噪聲等等。本次課設(shè)討論的是高斯噪聲和椒鹽噪聲。高斯噪聲符合高斯分布,高斯噪聲的產(chǎn)生源于電子電路噪聲和由低照明度或高溫帶來(lái)的傳感器噪聲。其概率密度函數(shù)為: (3-1)椒鹽噪聲又稱(雙極)脈沖噪聲,其概率密度函數(shù)為: (3-2)b>a,灰度級(jí)b在圖像中將顯示為一個(gè)亮點(diǎn),灰度級(jí)

9、a為一個(gè)暗點(diǎn)。椒鹽噪聲最主要表現(xiàn)在成像中的短暫停留中。3.2 空間域圖像增強(qiáng)對(duì)噪聲圖片處理要使用圖像增強(qiáng)的方法。圖像增強(qiáng)技術(shù)是為了人類視覺(jué)系統(tǒng)的生理接受特點(diǎn)而設(shè)計(jì)一種改善圖像的方法,處理圖像,使其更適合于特定應(yīng)用。圖像增強(qiáng)的方法有空間域方法和頻域方法。本次課設(shè)使用的是空間域方法??臻g域指圖像平面本身,以圖像像素直接處理為基礎(chǔ)??臻g域增強(qiáng)包括灰度變換,直方圖處理,用算數(shù)、邏輯操作增強(qiáng),空間濾波等。其中空間濾波包括平滑空間濾波器,銳化空間濾波器。平滑空間濾波器包括平滑線性濾波器和統(tǒng)計(jì)排序?yàn)V波器。3.3 中值濾波統(tǒng)計(jì)排序?yàn)V波器是一種非線性的空間濾波器,它的響應(yīng)就與圖像濾波器包圍的圖像區(qū)域中像素的排序

10、,然后由統(tǒng)計(jì)排序結(jié)果決定的值代替中心像素的值。最常見(jiàn)的例子就是中值濾波器。為對(duì)一幅圖像上的某個(gè)點(diǎn)做中值濾波處理,必須先將掩模內(nèi)欲求的像素及其鄰域的像素排序,確定出中值,并將該值賦予該像素點(diǎn)。中值濾波器有優(yōu)秀的去噪能力aaaaa,比小尺寸的線性平滑濾波器的模糊程度要低很多。4程序設(shè)計(jì)4.1 程序設(shè)計(jì)思路首先考慮如何在圖像中加入噪聲。本次課設(shè)使用的圖片是256級(jí)灰度圖片,在Matlab中表示為一個(gè)矩陣。加入噪聲就是改變矩陣中某些點(diǎn)的值。在加入高斯噪聲時(shí),可以使用函數(shù)隨機(jī)生成高斯分布的矩陣,隨機(jī)的加到某些點(diǎn)上。在加入椒鹽噪聲時(shí),也是二循環(huán)循環(huán)矩陣中每一點(diǎn),隨機(jī)的改變某一點(diǎn)的值為0或255。中值濾波可

11、以用兩重循環(huán)循環(huán)圖片中除了邊緣的點(diǎn),對(duì)該點(diǎn)及周圍的八個(gè)點(diǎn)的數(shù)值進(jìn)行排序,得到中值,將該點(diǎn)的值改為中值即可實(shí)現(xiàn)。4.2 要使用的Matlab函數(shù)加入噪聲要用到隨機(jī)數(shù)生成函數(shù)。加入高斯噪聲用的函數(shù)是randn,隨機(jī)數(shù)randn產(chǎn)生均值為0,方差 2 = 1,標(biāo)準(zhǔn)差 = 1的正態(tài)分布的隨機(jī)數(shù)或矩陣的函數(shù)。其用法有Y = randn,Y = randn(n),Y = randn(m,n),Y = randn(m n),Y = randn(m,n,p,.),Y = randn(m n p.),Y = randn(size(A),randn(method,s),s = randn(method)。本課設(shè)程

12、序中的用法是Y = randn(size(A),返回一個(gè)和A有同樣維數(shù)大小的隨機(jī)數(shù)組。加入椒鹽噪聲時(shí)用的函數(shù)是rand,可以返回一個(gè)0-1之間均勻分布的隨機(jī)數(shù)。其用法有Y = rand,Y = rand(n),Y = rand(m,n),Y = rand(m n),Y = rand(m,n,p,.),Y = rand(m n p.),Y = rand(size(A),rand(method,s),s = rand(method),本程序中的用法是Y=rand,Y值是一個(gè)隨機(jī)數(shù)。中值濾波時(shí)可以使用reshape函數(shù)進(jìn)行矩陣變形,其用法有B = reshape(A,m,n),B = reshape

13、(A,m,n,p,.),B = reshape(A,m n p .),B = reshape(A,.,.),B = reshape(A,siz)。本程序中用法是b=reshape(a,1,9),就是把3×3矩陣轉(zhuǎn)化為1×9的矩陣以便于排序。再用sort函數(shù)對(duì)一個(gè)數(shù)組進(jìn)行排序,用法是B = sort(A),B = sort(A,dim),B = sort(.,mode),B,IX = sort(.)。本程序中用法是B = sort(A),把矩陣A按行進(jìn)行升序排序。5程序流程圖5.1 添加高斯噪聲流程圖如下圖6.1是添加高斯噪聲的流程圖,通過(guò)高斯隨機(jī)數(shù)函數(shù)生成高斯分布數(shù),加到原

14、圖像中。讀入圖片到I把I轉(zhuǎn)換為double型數(shù)據(jù)生成和I大小一樣的高斯分布矩陣J并取整I=I+J再把I轉(zhuǎn)化為整數(shù)型圖5.1添加高斯噪聲流程圖5.2 添加椒鹽噪聲流程圖 圖5.2是添加椒鹽噪聲的流程圖,通過(guò)均勻隨機(jī)數(shù)函數(shù)隨機(jī)的在圖片中添加白點(diǎn)或黑點(diǎn),噪聲密度是0.05。該點(diǎn)值為255讀入圖片到I從I的第一到最后一行循環(huán)從I的第一到最后一列循環(huán)如果隨機(jī)數(shù)大于0.95該點(diǎn)值為0得到加入噪聲的矩陣YYYNNN如果隨機(jī)數(shù)小于0.5YN圖5.2添加椒鹽噪聲5.3 中值濾波流程圖 如圖5.3是中值濾波流程圖,首先找出某點(diǎn)及周圍8個(gè)點(diǎn)的數(shù)值,對(duì)其進(jìn)行排序,找出其中的中值,賦值給該點(diǎn)。讀入圖片到I從I的第一到最

15、后一行循環(huán)從I的第一到最后一列循環(huán)該點(diǎn)值為0得到中值濾波后的矩陣YNNYa等于以該點(diǎn)為中心的3×3矩陣把a(bǔ)轉(zhuǎn)化為1×9的矩陣b對(duì)b排序該點(diǎn)的值等于b(5)圖5.3 中值濾波流程圖6源程序6.1 添加高斯噪聲再濾波以下程序是給圖片2.jpg添加高斯噪聲,再用3×3的均值濾波和中值濾波處理。 clear all;I=imread('G:12.jpg');%讀入圖片到Ifigure(1);%顯示原圖片imshow(I);J=round(0.1*randn(size(I)*256); %產(chǎn)生均值為0,方差0.1,范圍0-1的高斯噪聲矩陣J,再乘以256以適

16、應(yīng)灰度圖片的數(shù)值,J與I大小相同J=uint8(J);%把J轉(zhuǎn)換為整數(shù)型矩陣I=I+J;%I加入噪聲figure(2);%顯示加入噪聲后的圖片imshow(I,0 255);for m=2:size(I,1)-1 %中值濾波 for n=2:size(I,2)-1%循環(huán)矩陣I中除了邊緣外每一點(diǎn) a=I(m-1:m+1,n-1:n+1);%a等于該點(diǎn)周圍3×3矩陣 b=reshape(a,1,9);%把a(bǔ)轉(zhuǎn)化為1×9矩陣 b=sort(b);%對(duì)b升序排序 I(m,n)=b(5);%該點(diǎn)值等于中值b(5) end;end;figure(3)%顯示中值濾波結(jié)果imshow(I)

17、;6.2 添加椒鹽噪聲再濾波以下程序是給圖片2.jpg添加椒鹽噪聲,再用3×3的均值濾波和中值濾波處理。 clear all;I=imread('G:12.jpg');%讀入圖片到Ifigure(1)%顯示原圖片imshow(I);for m=1:size(I,1) %加椒鹽噪聲。噪聲密度0.05 for n=1:size(I,2)%循環(huán)I內(nèi)每一點(diǎn) if rand>0.95%如果均勻隨機(jī)數(shù)大于0.95 if round(rand)%如果均勻隨機(jī)數(shù)大于0.5 I(m,n)=0;%該點(diǎn)值變?yōu)? else I(m,n)=255;%否則該點(diǎn)值變?yōu)?55 end; end

18、; end;end;figure(2)%顯示添加椒鹽噪聲后的圖片imshow(I);for m=2:size(I,1)-1 %中值濾波 for n=2:size(I,2)-1 a=I(m-1:m+1,n-1:n+1); b=reshape(a,1,9); b=sort(b); I(m,n)=b(5); end;end;figure(4) %顯示中值濾波后圖片imshow(I);7 程序運(yùn)行結(jié)果及分析7.1 高斯噪聲濾波結(jié)果首先在Matlab中輸入源程序,然后保存,選擇Debug菜單中的Run執(zhí)行程序。程序運(yùn)行結(jié)果如圖7.1-7.3:圖7.1 原圖片圖7.2 添加高斯噪聲圖片圖7.3

19、中值濾波結(jié)果7.2 椒鹽噪聲濾波結(jié)果椒鹽噪聲濾波程序使用的圖片和高斯噪聲濾波程序一樣,都是12.jpg,其程序運(yùn)行結(jié)果如圖7.4-7.6:圖7.4 原圖片圖7.5 添加椒鹽噪聲圖片圖7.6 中值濾波結(jié)果7.3 結(jié)果分析通過(guò)程序運(yùn)行結(jié)果可以看出,在添加高斯噪聲的圖片中,使用中值濾波后,圖像的噪聲減弱了,同時(shí)圖像也變模糊了。在添加椒鹽噪聲的圖片中,使用中值濾波后,濾除了椒鹽噪聲,圖片也沒(méi)有明顯模糊,說(shuō)明中值濾波濾除椒鹽噪聲很有效。高斯噪聲是幅值近似正態(tài)分布,但分布在每一點(diǎn)的像素上,因?yàn)閳D像中的每一點(diǎn)都是污染點(diǎn),所以中值濾波選不到合適的污染點(diǎn)。椒鹽噪聲是幅值近似相等但是隨機(jī)分布在不同的位置上,圖像中有干凈點(diǎn)也有污點(diǎn),中值濾波是選擇適當(dāng)?shù)狞c(diǎn)來(lái)代替污染點(diǎn)的數(shù)所以處理效果好。結(jié)束語(yǔ)通過(guò)Matlab的學(xué)習(xí)研究,我對(duì)Matlab有了初步的認(rèn)識(shí),我掌握了Matlab的基本操作,并學(xué)會(huì)了用Matlab解決一些課程中的問(wèn)題,下面是我具體的一些體會(huì)Matlab功能非常強(qiáng)大,幾乎可以計(jì)算我們目前所遇到的任何問(wèn)題,不僅可以計(jì)算數(shù)學(xué)問(wèn)題,也可以用來(lái)解決電路等其他學(xué)科的各種問(wèn)題。而且我們可以自編函數(shù),從而可以解決更多樣的問(wèn)題。但以目前我們的知識(shí),只能掌握Matlab的一小部分功能,在以后的學(xué)習(xí)中,我還需要繼續(xù)學(xué)習(xí)Mat

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論