數(shù)字圖像處理實(shí)習(xí)報(bào)告_第1頁(yè)
數(shù)字圖像處理實(shí)習(xí)報(bào)告_第2頁(yè)
數(shù)字圖像處理實(shí)習(xí)報(bào)告_第3頁(yè)
數(shù)字圖像處理實(shí)習(xí)報(bào)告_第4頁(yè)
數(shù)字圖像處理實(shí)習(xí)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)字圖像處理實(shí)習(xí)報(bào)告 專(zhuān)業(yè):生醫(yī)0901 小組成員:李建魯、張丹 指導(dǎo)老師:喻 罡2012年7月10日數(shù)字圖像處理一、目的1 用matlab或其他的語(yǔ)言來(lái)實(shí)現(xiàn)數(shù)字圖像處理方面的一些操作;2 熟悉matlab7.1的一些基本函數(shù)及與數(shù)字圖像處理相關(guān)的函數(shù);3 熟悉圖形用戶(hù)界面(gui),并用其來(lái)編寫(xiě)界面;4 熟悉數(shù)字圖像處理課程中的一些知識(shí)點(diǎn),如圖像灰度變化,直方圖,圖像增強(qiáng),濾波,圖像復(fù)原,形態(tài)學(xué)處理,圖像邊緣檢測(cè),圖像放大和縮小等等,并能用matlab實(shí)現(xiàn)以上的功能;5 掌握從簡(jiǎn)單到復(fù)雜的方法,一步一步的實(shí)現(xiàn)功能,并能耐心排錯(cuò),養(yǎng)成合作互助精神。二、任務(wù)1實(shí)現(xiàn)圖像的打開(kāi),顯示,保存操作,實(shí)現(xiàn)

2、圖像的旋轉(zhuǎn);2實(shí)現(xiàn)圖像的灰度變換(圖像反轉(zhuǎn),對(duì)數(shù)反轉(zhuǎn),冪次反轉(zhuǎn));3實(shí)現(xiàn)圖像的大小變換;4實(shí)現(xiàn)圖像的直方圖處理及直方圖均衡化;5實(shí)現(xiàn)圖像的空域和頻域增強(qiáng),實(shí)現(xiàn)均值濾波,維納濾波,中值濾波及巴特沃斯低通、高通濾波;6實(shí)現(xiàn)圖像的加噪,如椒鹽噪聲、高斯噪聲等;7實(shí)現(xiàn)圖像的形態(tài)學(xué)運(yùn)算,如開(kāi)運(yùn)算,閉運(yùn)算,膨脹運(yùn)算,腐蝕運(yùn)算等操作;8實(shí)現(xiàn)圖像的邊緣檢測(cè),如robert算子邊緣檢測(cè),sobel算子邊緣檢測(cè),prewitt算子邊緣檢測(cè),log算子邊緣檢測(cè),canny算子邊緣檢測(cè);9實(shí)現(xiàn)整個(gè)界面的設(shè)計(jì),編排,最終達(dá)到一種比較完美的效果。三、主要內(nèi)容及步驟 本次實(shí)驗(yàn)主要是利用設(shè)計(jì)編輯器進(jìn)行g(shù)ui界面設(shè)計(jì),并進(jìn)行相

3、應(yīng)代碼編寫(xiě),以實(shí)現(xiàn)數(shù)字圖像處理。 步驟:1、啟動(dòng)guide。直接輸入guide運(yùn)行或單擊file菜單欄中的new打開(kāi)gui模塊界面。2、利用gui界面中的控件完成界面設(shè)計(jì)。3、用屬性編輯器設(shè)置各個(gè)控件的相關(guān)屬性。4、編寫(xiě)回調(diào)程序。主要界面四、算法實(shí)現(xiàn)(相應(yīng)代碼) 打開(kāi):filename,pathname=. uigetfile(*.jpg,jpeg-files (*.jpg); . *.tif,tif-files(*.tif);*.png,png-files(*.png);. *.*,all files (*.*),_,untitled.jpg);str=pathname,filename;g

4、lobal image;global dai;image=imread(str);dai=image;axes(handles.axes1);imshow(image);圖像翻轉(zhuǎn):可以實(shí)現(xiàn)順時(shí)針90度的選轉(zhuǎn),每點(diǎn)擊一下,則選擇90global dai;dai=imrotate(dai,90,bilinear);axes(handles.axes2);imshow(dai);對(duì)數(shù)翻轉(zhuǎn):global dai; a=double(dai); m,n=size(dai); for x=1:m for y=1:n g(x,y)=log(a(x,y)+1); end end axes(handles.ax

5、es2);imshow(mat2gray(g);冪次翻轉(zhuǎn):global dai; a=double(dai); m,n=size(dai); for x=1:m for y=1:n g(x,y)=0; g(x,y)=a(x,y).5; end end axes(handles.axes2);imshow(mat2gray(g);直方圖:global dai;axes(handles.axes2);counts,x=imhist(dai);bar(x,counts);直方圖均衡化:global dai; j= histeq(dai); axes(handles.axes2); imshow(j)

6、;開(kāi)運(yùn)算:global dai; se=strel(disk,1);pp3=imopen(dai,se); axes(handles.axes2); imshow(pp3);閉運(yùn)算:global dai; se=strel(disk,1); pp4=imclose(dai,se); axes(handles.axes2); imshow(pp4);膨脹運(yùn)算:global dai; se=strel(disk,1); pp1=imdilate(dai,se); axes(handles.axes2); imshow(pp1);腐蝕運(yùn)算:global dai; se=strel(disk,1);

7、pp2=imerode(dai,se); axes(handles.axes2);imshow(pp2);椒鹽噪聲:加入的參數(shù)為0.05global daiglobal imageprompt=輸入?yún)?shù)1:;defans=0;p=inputdlg(prompt,輸入?yún)?shù),1,defans);p1=str2num(p1);dai=imnoise(image,salt & pepper,p1); %生成椒鹽噪聲axes(handles.axes2);imshow(dai);imwrite(dai,salt.jpg); 高斯噪聲:輸入的參數(shù)1為0.5參數(shù)2為0.5global daiglobal i

8、mageprompt=輸入?yún)?shù)1:,輸入?yún)?shù)2:;defans=0,0;p=inputdlg(prompt,輸入?yún)?shù),1,defans);p1=str2num(p1);p2=str2num(p2);dai=imnoise(image,gaussian,p1,p2); %生成高斯噪聲axes(handles.axes2);imshow(dai);log算子邊緣檢測(cè):global dai; bw4=edge(dai,log); axes(handles.axes2);imshow(bw4);sobel算子邊緣檢測(cè):global dai;bw2=edge(dai,sobel); axes(handl

9、es.axes2); imshow(bw2);canny算子邊緣檢測(cè):global dai; bw5=edge(dai,canny); axes(handles.axes2); imshow(bw5);prewitt算子邊緣檢測(cè):global dai; bw3=edge(dai,prewitt); axes(handles.axes2); imshow(bw3);均值濾波:global dai;axes(handles.axes2);k1=filter2(fspecial(average,5),dai)/255;imshow(k1);維納濾波:global dai;axes(handles.a

10、xes2);prompt=輸入?yún)?shù)1:,輸入?yún)?shù)2:;defans=5,5;p=inputdlg(prompt,輸入?yún)?shù),1,defans);p1=str2num(p1);p2=str2num(p2);dai=wiener2(dai,p1,p2); %維納濾波imshow(dai);imwrite(dai,wiener.jpg); 中值濾波:global daidai=medfilt2(dai,5,5,symmetric); axes(handles.axes2);%中值濾波imshow(dai);imwrite(dai,medfilt.jpg);巴特奧斯濾波:global dai; axes

11、(handles.axes2); f=double(dai); g=fft2(f); g=fftshift(g); n1,n2=size(g); n=2; d0=50; n1=fix(n1/2); n2=fix(n2/2); for i=1:n1 for j=1:n2 d=sqrt(i-n1)2+(j-n2)2); h=1/(1+0.414*(d/d0)(2*n); result(i,j)=h*g(i,j); end end result=ifftshift(result); x2=ifft2(result); x3=uint8(real(x2); imshow(x3);高通濾波:global

12、 dai; axes(handles.axes2); f=double(dai); g=fft2(f); g=fftshift(g); n1,n2=size(g); n=2; d0=5; n1=fix(n1/2); n2=fix(n2/2); for i=1:n1 for j=1:n2 d=sqrt(i-n1)2+(j-n2)2); if d=0 h=0; else h=1/(1+(d0/d)(2*n); end result(i,j)=h*g(i,j); end end result=ifftshift(result); x2=ifft2(result); x3=uint8(real(x2)

13、; imshow(x3);圖像旋轉(zhuǎn):可以任意角度旋轉(zhuǎn),上圖為旋轉(zhuǎn)30的截圖global imageaxes(handles.axes2);prompt=旋轉(zhuǎn)角度:;defans=0;p=inputdlg(prompt,input,1,defans);p1=str2num(p1);f=imrotate(image,p1,bilinear,crop);imshow(f);handles.img=f;guidata(hobject,handles);上下翻轉(zhuǎn):global imagef=flipud(image);axes(handles.axes2)imshow(f);handles.img=f;

14、 guidata(hobject,handles);鏡像翻轉(zhuǎn):axes(handles.axes2);global imagef=fliplr(image);imshow(f);handles.img=f;guidata(hobject,handles);轉(zhuǎn)換成灰度:global dal;global image%t=getimage;dal=rgb2gray(image); axes(handles.axes2);imshow(dal);截圖:global dal;global imageaxes(handles.axes2);dal=imcrop(image); axes(handles.

15、axes2);imshow(dal);global image axes(handles.axes2);imshow(image); 撤銷(xiāo):axes(handles.axes2); global timshow(t);放大與縮?。篻lobal imageaxes(handles.axes2);b=double(image);a=str2num(get(handles.edit5,string);c=imresize(b,a,nearest);imshow(uint8(c);axes(handles.axes2);保存:filename filepath=uiputfile(*.jpg,jpeg

16、-files (*.jpg); . *.tif,tif-files(*.tif);*.png,png-files(*.png);. *.*,all files (*.*),_,untitled.jpg); if isequal(filename,filepath,0,0) filefullname=filepath filename; axes(handles.axes2); iter=getimage(gca); imwrite(iter,filefullname,jpg); else msgbox(保存失敗!); end六、討論(1)在基于空域的圖像增強(qiáng)中,對(duì)數(shù)變換和指數(shù)變化,能壓縮或抑制

17、明暗灰度級(jí),從而是圖片變得清晰。(2)直方圖均衡化能是變化后的圖像函數(shù)密度分布近似均勻化,擴(kuò)展了像素動(dòng)態(tài)范圍,但不能抑制噪聲。(3)均值濾波能有效除去圖像中不相關(guān)的細(xì)節(jié),減少噪聲,但易引起邊緣模糊;中值濾波去噪能力強(qiáng),對(duì)椒鹽噪聲尤為有效,能有效保持圖像的細(xì)節(jié)(邊緣)。(4)基于頻域的圖像增強(qiáng)中,巴特沃斯濾波和高斯濾波都能使圖像平滑,但巴特沃斯不能徹底消除振鈴效應(yīng),而高斯可以。(5)邊緣檢測(cè)中:sobert算子在用于水平和垂直方向的檢測(cè)時(shí)精確度高但容易丟失邊緣。不能抑制噪聲,對(duì)陡峭的地噪聲圖像檢測(cè)效果好。sobel算子能抑制一定的噪聲,易引起邊緣模糊,檢測(cè)出為噪聲,檢測(cè)效果低。prewitt算子和sobel相似。log算子對(duì)噪聲抑制明顯,亦能是邊緣平滑,但有時(shí)會(huì)丟失很多邊緣。canny算子抗躁能力強(qiáng),檢測(cè)精度高。七、實(shí)習(xí)總結(jié)剛開(kāi)始聽(tīng)到老師講實(shí)習(xí)內(nèi)容是覺(jué)得比較簡(jiǎn)單,因?yàn)橐郧坝眠^(guò)matlab做過(guò)類(lèi)似的實(shí)驗(yàn),何況這次可以調(diào)用matlab中本身庫(kù)函數(shù)。但真正去看了題目時(shí)覺(jué)得好難,既要用gui設(shè)計(jì)界面,又要編寫(xiě)代碼,而對(duì)于matlab的應(yīng)用也不是很熟練。經(jīng)過(guò)查閱資料,和隊(duì)友討論總算有了思路。 剛剛開(kāi)始時(shí)的確不熟悉,總是犯錯(cuò),有各種各樣的問(wèn)題,加上粗心大意,經(jīng)常錯(cuò)誤還找不到錯(cuò)誤。通過(guò)這15天的實(shí)習(xí)我學(xué)會(huì)了很多

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論