數(shù)字圖像處理-課程設(shè)計(jì).doc
目錄一、目的與要求2二、課程設(shè)計(jì)選題的背景意義3三、設(shè)計(jì)的主要內(nèi)容及基本原理4四、總體方案設(shè)計(jì)5五、測試和調(diào)試7六、總結(jié)與體會(huì)16七、參考文獻(xiàn)17一、目的與要求1、課程設(shè)計(jì)目的(1)、提高分析問題、解決問題的能力,進(jìn)一步鞏固數(shù)字圖像處理系統(tǒng)中的基本原理和方法。(2)、熟悉掌握一門計(jì)算機(jī)語言,可以進(jìn)行數(shù)字圖像應(yīng)用處理的開發(fā)設(shè)計(jì)。2、課程設(shè)計(jì)任務(wù)(1)、對加有高斯、椒鹽、和乘性噪聲的圖像進(jìn)行;(2)、采用不同的濾波方法處理上述圖像,比較處理結(jié)果;(3)、分析對于所加噪聲哪種方法能夠獲得較好的處理效果;(4)、概括介紹圖像平滑應(yīng)用領(lǐng)域; 注:圖像要選擇有代表性,分別對高頻成分豐富、中低頻成分進(jìn)行分析3、課程設(shè)計(jì)要求(1)、理解各種圖像處理方法確切意義;(2)、獨(dú)立進(jìn)行方案的制定,系統(tǒng)結(jié)構(gòu)要合理。(3)、程序開發(fā)時(shí),則必須清楚主要實(shí)現(xiàn)函數(shù)的目的和作用。如果使用matlab來進(jìn)行開發(fā),則必須理解每個(gè)函數(shù)的具體意義和適用范圍。(4)、通過多幅不同形式的圖像來檢測該系統(tǒng)的穩(wěn)定性和正確性。二、課程設(shè)計(jì)選題的背景意義數(shù)字圖像處理(Digital Image Processing)是通過計(jì)算機(jī)對圖像進(jìn)行去除噪聲、增強(qiáng)、復(fù)原、分割、提取特征等處理的方法和技術(shù)。最早出現(xiàn)于20世紀(jì)50年代,作為一門學(xué)科大約形成于20世紀(jì)60年代初期。發(fā)展到現(xiàn)在其應(yīng)用范圍十分廣泛,涉及航天和航空技術(shù)、生物醫(yī)學(xué)工程、通信工程、視頻和多媒體等。作為圖像處理的一個(gè)重要分支,圖像平滑是指用于突出圖像的寬大區(qū)域、低頻成分、主干部分或抑制圖像噪聲和干擾高頻成分,使圖像亮度平緩漸變,減小突變梯度,改善圖像質(zhì)量的圖像處理方法。主要包括:領(lǐng)域平均法、中值濾波法、理想地低通濾波器法等等,因噪聲的類型而選擇不同的濾波法。圖像平滑因其獨(dú)特的功能而廣泛應(yīng)用于圖像顯示、傳輸、動(dòng)畫制作和媒體合成等多個(gè)領(lǐng)域。對于該課題的設(shè)計(jì),能加強(qiáng)對圖像處理的認(rèn)識,理解噪聲對圖像干擾的原因,以及去除噪聲的方法,同時(shí)增強(qiáng)系統(tǒng)設(shè)計(jì)提高分析問題與解決問題的能力。設(shè)計(jì)過程中采用matlab編寫程序及結(jié)果運(yùn)行,有效地提高軟件處理數(shù)字圖像的方法與認(rèn)識水平。 三、設(shè)計(jì)的主要內(nèi)容及基本原理1、主要內(nèi)容該系統(tǒng)主要是完成圖像平滑的算法及實(shí)現(xiàn),具體來說是是對圖像的噪聲處理。圖像在傳輸、存儲(chǔ)過程中不可避免地會(huì)受到各種噪聲的干擾,設(shè)計(jì)出該系統(tǒng)可以對圖像進(jìn)行噪聲分析、各種噪聲處理以及結(jié)果比較,實(shí)現(xiàn)圖像的平滑運(yùn)算,改善圖像質(zhì)量,也可以模糊圖像,使圖像看起來柔和自然,最終達(dá)到良好的視覺效果。2、基本原理 本系統(tǒng)采用matlab軟件進(jìn)行編程設(shè)計(jì),在matlab中可直接調(diào)用多種函數(shù)對圖像處理。首先是調(diào)用加噪函數(shù)對原圖像的加入各種噪聲,然后設(shè)計(jì)并采用多種方法對有噪聲的圖像進(jìn)行去噪處理,分為空域法和頻域法,主要有領(lǐng)域平均法、中值濾波法和低通濾波器法,通過比較多幅圖像的處理結(jié)果,選擇對不同噪聲種類的最佳處理方法。 處理過程中調(diào)用的matlab函數(shù)有imnoise(加噪聲函數(shù))、imfilter(均值濾波函數(shù))、medifilt2(中值濾波函數(shù))和自己構(gòu)建的低通濾波器等等。3、matlab簡介matlab是美國Mathworks公司1983年首次推出的一套高性能的數(shù)值分析和計(jì)算軟件,MATLAB將矩陣運(yùn)算、數(shù)值分析、圖形處理、編程技術(shù)結(jié)合在一起,為用戶提供了一個(gè)強(qiáng)有力的科學(xué)及工程問題的分析計(jì)算和程序設(shè)計(jì)工具,它還提供了專業(yè)水平的符號計(jì)算、文字處理、可視化建模仿真和實(shí)時(shí)控制等功能,是具有全部語言功能和特征的新一代軟件開發(fā)平臺(tái)。在數(shù)字圖像處理領(lǐng)域,有很多匯編語言,也有多種軟件工具,但matlab,具有很好的優(yōu)勢:豐富的函數(shù)工具箱,能方便的調(diào)用各種函數(shù);強(qiáng)大的矩陣處理能力,快速計(jì)算大量復(fù)雜的數(shù)據(jù),因而受到廣大工作人員的青睞。本系統(tǒng)采用的軟件即為matalb仿真處理。四、總體方案設(shè)計(jì)1、系統(tǒng)設(shè)計(jì)框圖原圖 加噪聲 噪聲分析 系統(tǒng)評測 結(jié)果比較 平滑處理2、模塊功能介紹 如上系統(tǒng)框圖所示,該系統(tǒng)共分為五個(gè)模塊(原圖模塊不算),開發(fā)工具選用matlab,下面就各個(gè)模塊功能作簡要介紹:(1)、 加噪聲模塊 對圖像進(jìn)行加噪聲處理,采用imnoise函數(shù),其語法為:J=imnoise(I,type)J=imnoise(I,type,parameters)功能:返回原圖像I添加典型噪聲的圖像J,參數(shù)type和parameters用于確定噪聲的相應(yīng)的參數(shù)。(2)、噪聲分析噪聲種類共有三種:type=gaussian時(shí), 為高斯噪聲; type=salt & pepper時(shí), 為椒鹽噪聲; type=speckle時(shí), 為乘法噪聲;(3)、平滑處理平滑處理分為空域法和頻域法,空域法可采用函數(shù)imfilter、medfilt2,其語法分別為: J=imfilter(I,H); J=medfilt2(I,A);功能說明與上述噪聲函數(shù)類似,這里不再一一累述。頻域法,主要只頻域低通濾波器,函數(shù)模型為:G(u,v)=H(u,v)F(u,v)常用的低通濾波器有4種:理想低通濾波器,巴特沃斯低通濾波器,指數(shù)型低通濾波器,梯形低通濾波器(4)、結(jié)果比較通過對多幅圖像采用不同的處理方法,比較各種方法對不同圖像的處理效果,選出應(yīng)對各種噪聲最好的處理方法。(5)、系統(tǒng)評測 對整個(gè)系統(tǒng)作出整體性測驗(yàn),驗(yàn)證系統(tǒng)的可靠性與穩(wěn)定性,對不足之處加以改進(jìn)以改善系統(tǒng)。五、測試和調(diào)試 上圖是本系統(tǒng)所采用的原始圖片,該圖像細(xì)節(jié)處不多,所對應(yīng)的中低頻較多,具有很好的試驗(yàn)價(jià)值。1、分別對兩幅圖添加不同種類噪聲,編寫matlab程序。I=imread(tatanic.jpg);I1=imnoise(I,gaussian);I2=imnoise(I,salt & pepper,0.02);I3=imnoise(I,speckle);imshow(I);title(tatanic)figure,imshow(I1);title(tatanic-高斯噪聲)figure,imshow(I2);title(tatanic-椒鹽噪聲)figure,imshow(I3);title(tatanic-乘性噪聲)結(jié)果如下所示: 2、平滑濾波平滑濾波分為空域法和頻域法。空域法主要介紹領(lǐng)域平均法和中值濾波法,頻域法主要介紹低通濾波器法。(1)領(lǐng)域平均法 這種方法的基本思想是用幾個(gè)像素的灰度的平均值來代替每個(gè)像素的灰度。假定一幅*個(gè)像素的圖像,處理后得到一幅圖像。由下式?jīng)Q定: 式中,R為預(yù)先確定的領(lǐng)域(不包括(x,y);m為領(lǐng)域R中的像素點(diǎn)數(shù);為輸出圖像,為輸入圖像。對混有噪聲的圖像進(jìn)行領(lǐng)域?yàn)V波處理,matlab編程程序代碼如下:模板1 H1= I=imread(tatanic.jpg);I1=imnoise(I,gaussian);I2=imnoise(I,salt & pepper,0.02);I3=imnoise(I,speckle);H1=ones(3,3)/9;J1=imfilter(I1,H1);J2=imfilter(I2,H1);J3=imfilter(I3,H1);figure,imshow(J1);title(高斯噪聲模板1均值濾波)figure,imshow(J2);title(椒鹽噪聲模板1均值濾波)figure,imshow(J3);title(乘性噪聲模板1均值濾波) 模板2 H2= I=imread(tatanic.jpg);I1=imnoise(I,gaussian);I2=imnoise(I,salt & pepper,0.02);I3=imnoise(I,speckle);H2=1 1 1;1 2 1;1 1 1/10;J1=imfilter(I1,H2);J2=imfilter(I2,H2);J3=imfilter(I3,H2);figure,imshow(J1);title(高斯噪聲模板2均值濾波)figure,imshow(J2);title(椒鹽噪聲模板2均值濾波)figure,imshow(J3);title(乘性噪聲模板2均值濾波)程序運(yùn)行結(jié)果分別如下圖: (2)中值濾波法中值濾波實(shí)際上就是用一個(gè)含有奇數(shù)個(gè)像素的窗口在圖像中滑動(dòng),將窗口中心點(diǎn)的灰度值用窗口內(nèi)各點(diǎn)的灰度中值代替。設(shè)有一個(gè)一維序列,窗口長度為(為奇數(shù)),在某個(gè)位置上,窗口內(nèi)的個(gè)像素為,, , ,則=Med, 分別對兩幅圖添加各種噪聲并作中值濾波處理,matlab程序如下:(a):3*3中值濾波模板I=imread(tatanic.jpg);I1=imnoise(I,gaussian);I2=imnoise(I,salt & pepper,0.02);I3=imnoise(I,speckle);J1=medfilt2(I1,3,3);J2=medfilt2(I2,3,3);J3=medfilt2(I3,3,3);figure,imshow(J1);title(tatanic高斯噪聲3*3中值濾波)figure,imshow(J2);title(tatanic椒鹽噪聲3*3中值濾波)figure,imshow(J3);title(tatanic乘性噪聲3*3中值濾波)(b):5*5中值濾波模板I=imread(tatanic.jpg);I1=imnoise(I,gaussian);I2=imnoise(I,salt & pepper,0.02);I3=imnoise(I,speckle);J1=medfilt2(I1,5,5);J2=medfilt2(I2,5,5);J3=medfilt2(I3,5,5);figure,imshow(J1);title(tatanic高斯噪聲5*5中值濾波)figure,imshow(J2);title(tatanic椒鹽噪聲5*5中值濾波)figure,imshow(J3);title(tatanic乘性噪聲5*5中值濾波)程序運(yùn)行結(jié)果如下:3、頻域?yàn)V波法圖像從空間域變換到頻域后,其低頻分量對應(yīng)圖像中灰度值變化比較緩慢的區(qū)域,而高頻分量則顯示了圖像中物體的邊緣和隨機(jī)噪聲。低通濾波器的功能是通過濾波器函數(shù)H減弱和抑制高頻分量。因此,低通濾波器和空域中的平滑濾波器一樣可以消除圖像中的隨機(jī)噪聲,減弱邊緣效應(yīng),起到平滑圖像的作用。常用的低通濾波器包括理想低通濾波器、巴特沃斯低通濾波器、指數(shù)低通濾波器和梯形低通濾波器等多種類型,下面介紹幾種常用的低通濾波器:(1)、巴特沃斯低通濾波器式中,是截止頻率;n為濾波器的階次。(2)、指數(shù)低通濾波器(3)、梯形低通濾波器編寫matlab頻域低通濾波程序:f1,f2=freqspace(25,meshgrid);Hd=zeros(25,25);d=sqrt(f1.2+f2.2)<0.5;Hd(d)=1;h=fsamp2(Hd);figure,freqz2(h,64,64);title(二維低通濾波器) I=imread(tatanic.jpg);I1=imnoise(I,gaussian);I2=imnoise(I,salt & pepper,0.02);I3=imnoise(I,speckle);J1=imfilter(I1,h,replicate);J2=imfilter(I2,h,replicate);J3=imfilter(I3,h,replicate);figure,imshow(J1);title(高斯低通濾波)figure,imshow(J2);title(椒鹽低通濾波)figure,imshow(J3);title(乘性低通濾波)程序運(yùn)行結(jié)果如下:3、結(jié)果比較對比上述各幅圖片,不同噪聲對應(yīng)不同的平滑處理方法,可以看出不同濾波方法對不同噪聲的優(yōu)劣:均值濾波法對乘性噪聲具有很好的濾波效果中值濾波法對椒鹽噪聲具有很好的濾波效果頻域低通濾波法對乘性噪聲具有很好的濾波效果此外,同種濾波方法不同模板也具有優(yōu)劣之分。均值濾波法中,模板2效果較好于模板1,;中值濾波法中,3*3模板較好與5*5模板。四、系統(tǒng)評測本系統(tǒng)對圖像平滑處理分為空間域和頻率域,空間域采用均值濾波和中值濾波兩種方法,又各采用兩種模板濾波,主要是為了應(yīng)對不同噪聲而設(shè)計(jì)的,通過比較可以發(fā)現(xiàn)均值濾波法對乘性噪聲具有很好的濾波效果,中值濾波法對椒鹽噪聲具有很好的濾波效果,頻域低通濾波法對乘性噪聲具有很好的濾波效果。由于本設(shè)計(jì)只選用了兩個(gè)模板,所以濾波范圍適用不是很廣,對于一些噪聲仍不能有很好的濾波效果,尤其在頻域?yàn)V波中只設(shè)計(jì)了一種濾波方法,所以限制了在頻率方面的應(yīng)用。但對于一般的常見噪聲可以濾波,對圖像精度要求不高的系統(tǒng)仍可采用。六、總結(jié)與體會(huì)這次為期一周的課程設(shè)計(jì),在查閱眾多資料以及和各位同學(xué)與老師的幫助下,最終順利完成。對于課題所要求的任務(wù),我所設(shè)計(jì)的系統(tǒng)基本上符合測試要求,在此過程中也有不少體會(huì)與收獲。 我所設(shè)計(jì)的課題是圖像平滑處理,選用的軟件處理工具是matlab,在圖書館也借閱了相關(guān)圖書,以便于自己能熟練運(yùn)用軟件操作。對于其中關(guān)鍵的程序編寫,則大量參考實(shí)驗(yàn)指導(dǎo)書和圖書,增加了幾種模板以應(yīng)對不同噪聲類型。在選取圖片時(shí),選擇了一張中低頻較為豐富的圖片,和噪聲具有很好的區(qū)分性,具有很好的實(shí)驗(yàn)效果。對于這次課程設(shè)計(jì)的收獲有以下幾點(diǎn): 1、加深了對噪聲的認(rèn)識。圖像處理首先要認(rèn)清噪聲的類型以便選擇合適處理方法,所以第一步噪聲分類很重要。噪聲主流分三類,各種噪聲具有不同的特點(diǎn),對應(yīng)于時(shí)域和頻域的特點(diǎn)也各不相同,這也是處理各種噪聲的選擇依據(jù)。 2、程序編寫。程序編寫是整個(gè)設(shè)計(jì)系統(tǒng)的關(guān)鍵之處,系統(tǒng)對圖像平滑處理就是用軟件中程序來處理的。自己獨(dú)立完成一個(gè)完整的程序設(shè)計(jì)很難,設(shè)計(jì)過程中借鑒了各種圖書上的程序,用他們的設(shè)計(jì)思想結(jié)合本課題要求而重新編寫出新的符合本課題的程序,經(jīng)過多次調(diào)試直至出現(xiàn)期望的結(jié)果。 3、方法的選取。對于一個(gè)同樣的問題,有多種可以選擇的方法,但每個(gè)方法各有優(yōu)劣之分。對于本課題,事先不能預(yù)測各種方法的好壞,必須多種方法采用,最后比較結(jié)果的好壞來選擇適應(yīng)一個(gè)問題的方法。七、參考文獻(xiàn)1、數(shù)字圖像處理 曹茂永 北京大學(xué)出版社 2007.9.2、精通MATLAB圖像處理 張 強(qiáng)、王正林 電子工業(yè)出版社 2009.6.3、MATLAB數(shù)字圖像處理 張德豐 機(jī)械工業(yè)出版社 2009.1.4、MATLAB7.0在圖像處理中的應(yīng)用 羅軍輝、馮平、哈力旦.A 2005.6. 機(jī)械工業(yè)出版社參考網(wǎng)址:1、http:/baike.baidu.com.2、http:/wenku.baidu.com.指導(dǎo)老師:張明艷安徽工程大學(xué)電科教研室