數(shù)字圖像處理4課件_第1頁
數(shù)字圖像處理4課件_第2頁
數(shù)字圖像處理4課件_第3頁
數(shù)字圖像處理4課件_第4頁
數(shù)字圖像處理4課件_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第五講圖像處理工具箱支持的基本圖像類型Matlab圖像處理工具箱支持四種基本圖像類型。1.索引圖像索引圖像包括圖像矩陣與顏色圖數(shù)組(調(diào)色板)。其中顏色圖是按圖像中的顏色值進行排序后的數(shù)組。對于每個像素,圖像矩陣包含一個值,這個值就是顏色圖數(shù)組中的索引。顏色圖為m*3雙精度值矩陣,各行分別指定紅、綠、藍(RGB)單色值,R、G、B為值域是[0,1]的實數(shù)值。例:loadtrees;subimage(X,map);觀察圖像矩陣X,顏色圖map以及它們的關(guān)系。I=imread(‘e:\lb\temp.bmp’);轉(zhuǎn)化為索引圖像,然后觀察。第五講圖像處理工具箱支持的基本圖像類型2.灰度圖像灰度圖像保存在一個矩陣中,矩陣的每個元素代表一個像素點。矩陣可以是雙精度類型,其值域為[0,1];也可以為uint8類型,其數(shù)據(jù)范圍為[0,255]。矩陣的每一個元素值代表不同的亮度或灰度級,亮度值為0,表示黑色,亮度值為1(或者uint8類型的255)代表白色。例:lena7.gif(灰度值范圍為[0,255])I=imread(‘f:\lb\myimage\lena7.gif’);I=double(I)/255;(灰度值范圍為[0,1])

第五講圖像處理工具箱支持的基本圖像類型3.二值圖像表示二值圖像的二維矩陣僅由0/1或0/255值構(gòu)成。二值圖像可以看成為一個僅包含黑與白的特殊灰度圖像,也可看作共有兩種顏色的索引圖像。二值圖像可以保存為雙精度或uint8類型的數(shù)組,顯然,使用Uint8類型更節(jié)省空間。在圖像處理工具箱中,任何一個返回二值圖像的函數(shù)都是以uint8類型邏輯數(shù)組來返回的。例:I=imread(‘f:\lb\myimage\lena7.gif’);E=edge(I,’soble’);imshow(E,[]);觀察E的類型。

第六講數(shù)字圖像處理工具箱函數(shù)本章主要介紹MATLAB圖像處理工具箱中的函數(shù)。包含14個類型的函數(shù):圖像顯示函數(shù);圖像文件輸入輸出函數(shù);圖像幾何運算函數(shù);圖像像素值及統(tǒng)計;圖像分析函數(shù);圖像增強及平滑函數(shù);圖像線性濾波及二維線性濾波器設(shè)計函數(shù);第六講數(shù)字圖像處理工具箱函數(shù)圖像變換函數(shù);圖像鄰域及塊操作函數(shù);二值圖像操作函數(shù);基于區(qū)域的圖像處理函數(shù);圖像顏色操作函數(shù);顏色空間轉(zhuǎn)換函數(shù);圖像類型轉(zhuǎn)換函數(shù)。1.圖像顯示Colorbar

功能:在顯示圖像時,顯示顏色條,以顯示圖像中顏色的變化情況。格式:(1)colorbar;(2)colorbar(‘vert’);(3)colorbar(‘hotiz’);(4)H=colorbar(…);(5)colorbar(H)

例:loadtrees;

subimage(X,map),colorbar;

subimage(X,map),colorbar(‘horiz’);什么是顏色軸句柄?

H=colorbar(‘vert’);

可用于觀察顏色軸的屬性(get(H))等格式(5)的用法,例子:H=axes;colorbar(H);(H表示坐標(biāo)軸)1.圖像顯示3.subimage功能:顯示圖像.格式:(1)subimage(X,map);(2)subimage(I);(3)subimage(RGB);注:由格式(1)、(2)、(3)可知:subimage可用于顯示索引、灰度、彩色圖像,適用范圍廣。(與image的區(qū)別)例:loadtrees;[X2,map2]=imread(‘forest.tif’);subplot(1,2,1);subimage(X,map);title(‘trees.mat’);subplot(1,2,1);subimage(X2,map2);title(‘forest.tif’);1.圖像顯示4.imshow功能:顯示圖像.格式:(1)imshow(I,n);(2)imshow(I,[lowhigh]);(3)imshow(X,map);(4)imshow(RGB);例:imshowf:\myimage\lena7.gifI=getimage;whos注:subimage與imshow的區(qū)別:I=imread(‘f:\myimage\lena7.gif’);figure,subimage(I);與imshow(I);的區(qū)別.比較imshow(I);imshow(I,256);imshow(I,512);imshow(I,[]);1.圖像顯示5.montage(蒙太奇)功能:按矩形剪輯方式顯示多幀圖像.格式:(1)montage(I);(2)montage(X,MAP);(3)montage(RGB);

例:loadmri;%mri為核磁共振圖像montage(D,map);(共有27幀圖像)whos

1.圖像顯示8.warp功能:顯示圖像為紋理映射表面。格式:(1)warp(X,map);(2)warp(I,n);(3)warp(RGB);例1:[x,y,z]=cylinder;I=imread(‘testpat1.tif’);warp(x,y,z,I);例2:[x,y,z]=sphere;loadtrees;warp(x,y,z,X,map);

2.圖像文件操作1.imread功能:從圖像文件中讀入文件到內(nèi)存變量格式:(1)A=imread(‘文件名’,‘圖像文件格式’);(2)[X,map]=imread(‘文件名’,‘圖像文件格式’).例:X=imread('cameraman.tif','tif');imshow(X,[]);whos[X2,map2]=imread('forest.tif');imshow(X2,map2)

2.圖像文件操作2.imwrite功能:將圖像寫入圖像文件中格式:(1)imwrite(A,‘文件名’,‘圖像文件格式’);(2)imwrite(X,map,‘文件名’,‘圖像文件格式’)例:imwrite(X,’cman.jpg’,’jpg’);info=imfinfo(‘cman.jpg’,’jpg’);注:圖像寫入文件時數(shù)據(jù)都轉(zhuǎn)化為uint8類型。如:loadtrees;imwrite(X,map,’test.tif’,’tif’);clear;[X2,map2]=imread(‘test.tif’,’tif’);觀察索引矩陣,調(diào)色板的變化。3.圖像幾何運算1.imcrop功能:圖像剪裁。格式:(1)I2=imcrop(I);(2)X2=imcrop(X,map);(3)RGB2=imcrop(RGB);(4)I2=imcrop(I,RECT);(5)X2=imcrop(X,map,RECT);(6)RGB2=imcrop(RGB,RECT).例:loadwoman;用鼠標(biāo)操作.loadwoman;X2=imcrop(X,map,[604010090]);%widthandheightsubplot(1,2,1),subimage(X,map);title(‘原圖像’);subplot(1,2,2),subimage(X2,map);title(‘原圖剪塊[604010090]’);3.圖像幾何運算2.imresize功能:圖像大小調(diào)整。格式:(1)B=imresize(A,m,method);(2)B=imresize(A,[mrows,mcols],method);例:loadwoman;X2=imresize(X,2,’bilinear’);subplot(1,2,1),subimage(X,map);title(‘原圖像’);subplot(1,2,2),subimage(X2,map);title(‘大小調(diào)整后圖像m=2’);X3=imresize(X,[100100],’bilinear’);subimage(X3,map);注:插值后的圖像可能有小數(shù)或效果不好,觀察X2;[X4,map1]=imread(‘forest.tif’),X5=imresize(X4,2,’bilinear’);3.圖像幾何運算3.imrotate功能:圖像旋轉(zhuǎn)。格式:(1)B=imrotate(A,angle,method);(2)B=imrotate(A,angle,method,’crop’).例:loadwoman;R=imrotate(X,90,’bilinear’);subplot(1,2,1),subimage(R,map);title(‘旋轉(zhuǎn)90度后的圖像’);R1=imrotate(X,45,’bilinear’,’crop’);subplot(1,2,2),subimage(R1,map);title(‘旋轉(zhuǎn)45度后的圖像’);觀察R,R1,有小數(shù)。4.圖像像素值及其統(tǒng)計2.improfile功能:計算圖像中輪廓的強度。格式:(1)C=impro(n);(2)C=impro);C=impro).例:I=imread('alumgrns.tif');%氧化鋁圖像imshow(I,[]);C=improfile;I=imread(‘f:\myimage\temp.bmp’);I=rgb2gray(I);imshow(I);improfile;觀察圖形結(jié)果。用鼠標(biāo)選擇像素點操作。

4.圖像像素值及其統(tǒng)計3.imhist功能:計算圖像數(shù)據(jù)直方圖。格式:(1)imhist(I,n);(2)imhist(X,map);(3)[counts,X]=imhist(…)例:I=imread('f:\lb\myimage\lena7.gif');imhist(I);或[counts,X]=imhist(I);stem(X,counts);loadtrees;imhist(X,map);4.圖像像素值及其統(tǒng)計4.mean2功能:計算圖像均值。格式:m=mean2(A)例:I=imread('f:\lb\myimage\lena7.gif');I=double(I);m=mean2(I);均值的作用:作門限等(例)。mean的用法.5.std2

功能:求圖像的標(biāo)準差。格式:s=sdt2(A)例:I=imread('f:\lb\myimage\lena7.gif');I=double(I);s=std2(I);方差的作用:描述數(shù)據(jù)的分散程度(例)。5.圖像分析edge

功能:灰度圖像邊緣檢測。格式:BW=edge(I,method)等例:I=imread(‘a(chǎn)lumgrns.tif’);BW=edge(I,’roberts’);

imshow(I);figure;

imshow(BW);比較幾種算子在檢測邊緣的優(yōu)劣:

BW1=edge(I,'canny');BW2=edge(I,'log');5.圖像分析2.qtdecomp功能:執(zhí)行四叉樹分解。格式:(1)S=qtdecomp(I);(2)S=qtdecomp(I,threshold);等例:example251.m什么是稀疏矩陣?分析分解過程。3.qtgetblk

功能:獲得四叉樹分解塊值。格式:(1)[vals,R,C]=qtgetblk(I,S,dim);(2)[vals,Idx]=qtgetblk(I,S,dim)例:example252.m7.二維線性濾波及濾波器設(shè)計格式(2)圖像A分別與Hcol向量在列方向上和Hrow在行方向上進行卷積,在張量積小波中有應(yīng)用。例:I=imread(‘f:\lb\myimage\lena7.gif’);Hcol=[1,1];Hrow=[1,1];I1=conv2(Hcol,Hrow,I);imshow(I1,[]);觀察I1的大小。問:I1與函數(shù)dwt2分解后的四個子圖是什么關(guān)系?即dwt2實現(xiàn)的實質(zhì)是什么?(函數(shù)dyaddown的用法)Hcol=[1,1];Hrow=[1,-1];Hcol=[1,-1];Hrow=[1,1];Hcol=[1,-1];Hrow=[1,-1];7.二維線性濾波及濾波器設(shè)計對于格式(3),conv2返回二維卷積結(jié)果的一部分,由‘shape’指定大小?!畇hape’可以是下列各值之一:‘full’為缺省值,大小[ma+mb-1,na+nb-1];例:與格式(1)相同?!畇ame’卷積結(jié)果圖像的大小與原圖像大相同。例:在例1中加入第3個參數(shù)‘same’?!痸alid’返回在卷積過程中,末使用邊緣補0部分進行計算的卷積的部分結(jié)果,大小為[ma-mb+1,na-nb+1];例:在例1中加入第3個參數(shù)‘valid’。I2=conv2(I,H,’valid’);觀察I2的大小。7.二維線性濾波及濾波器設(shè)計4.filter2功能:二維線性數(shù)字濾波。格式:(1)Y=filter2(B,X);用二維濾波器B對圖像X進行線性相關(guān)濾波,返回圖像Y的大小與X的大小相同。例:I=imread(‘f:\lb\myimage\lena7.gif’);H=[0,-1,0;-1,4,-1;0,-1,0];I1=filter2(H,I);imshow(I1,[]);觀察I1的大小。注:B和X能否交換順序?7.二維線性濾波及濾波器設(shè)計5.fspecial功能:產(chǎn)生預(yù)定義濾波器。格式:(1)H=fspecial(type);(2)H=fspecial(‘gaussain’,n,sigma);(3)H=fspecial(‘sobel’);(4)H=fspecial(‘prewitt’);(5)H=fspecial(‘laplacian’,alpha);(6)H=fspecial(‘log’,n,sigma);(7)H=fspecial(‘a(chǎn)verage’,n);(8)H=fspecial(‘unsharp’,alpha);(9)H=fspecial(‘disk’,RADIUS);%教材無,請加上(10)H=fspecial(‘motion’,LEN,THETA);%教材無,請加上7.二維線性濾波及濾波器設(shè)計格式(1),fspecial產(chǎn)生一個由type指定的二維濾波器。返回的H常用來對圖像進行濾波。type的可能值為下列之一:‘gaussian’,’sobel’,’prewitt’,’laplacian’,’log’,’average’,’unsharp’例:觀察如下各種類型的濾波器。H=fspecial(‘sobel’);H=fspecial(‘prewitt’);H=fspecial(‘a(chǎn)vearge’);對于格式(2),產(chǎn)生大小為n*n、方差為sigma的高斯低通濾波器,產(chǎn)生濾波器的數(shù)學(xué)表達式為:

(的歸一化)7.二維線性濾波及濾波器設(shè)計例:H=fspecial(‘gaussian’,3,0.5);等價于H=fspecial(‘gaussian’);H=fspecial(‘gaussian’,5);高斯濾波器的生成過程:producegaussianfilter.m(教材與此有別)高斯濾波器的作用:低通濾波,獲取圖像的低頻部分。例:H=fspecial(‘gaussian’,3,0.5);H1=fspecial(‘gaussian’,5,5);I=imread(‘f:\lb\myimage\lena7.gif’);I1=conv2(I,H);I2=conv2(I,H1);imshow(I1,[]);figure,imshow(I2,[]);7.二維線性濾波及濾波器設(shè)計對于格式(5),fspecial函數(shù)可返回3*3濾波器,逼近Laplacian算子形狀,產(chǎn)生濾波器的數(shù)學(xué)表達式為:離散模板為:

以前學(xué)過的模板是a=0時的特殊情況。格式中的alpha就是a,它用來控制濾波器的形狀,其值在[0,1]之間,缺省值為0.2。拉普拉斯濾波器的作用:圖像銳化,提取高頻。H=fspecial(‘laplacian’,0.2);I1=conv2(I,H);7.二維線性濾波及濾波器設(shè)計對于格式(6),fspecial可返回一旋轉(zhuǎn)對稱的log濾波器,sigma為標(biāo)準差,n指定濾波器的大小,產(chǎn)生濾波器的數(shù)學(xué)表達式為:

同學(xué)們可自已編程求其濾波器(仿照高斯濾波器的生成過程)。log濾波器的應(yīng)用:提取圖像的高頻成份。I=imread('f:\myimage\lena7.gif');H=fspecial('log',5);I1=conv2(I,H);imshow(I1,[]);

7.二維線性濾波及濾波器設(shè)計對于格式(7),fspecial可返回均值濾波器,其算法如下:ones(n(1),n(2))/(n(1)*n(2))如:H=fspecial(‘a(chǎn)verage’,5);為ones(5,5)/25;均值濾波器的作用:平滑圖像。例:I=imread('f:\myimage\lena7.gif');H=fspecial(‘a(chǎn)ver',5);I1=conv2(I,H);imshow(I1,[]);

7.二維線性濾波及濾波器設(shè)計對于格式(8),fspecial返回模糊對比增強濾濾器,其算法如下:

它是如下laplacian模板的一般形式:它是把的中心改為-5然后把各元素乘(-1)后的結(jié)果。7.二維線性濾波及濾波器設(shè)計例:用unsharp濾波器對saturn.tif圖像進行濾波。教材:I=imread(‘saturn.tif’);h=fspecial(‘unsharp’,0.5);I2=filter2(h,I)/255;imshow(I);figure,imshow(I2);7.二維線性濾波及濾波器設(shè)計對于格式(9),fspecial返回一個球形低通濾波器,RADIUS為濾波器的半徑,濾波器的大小為2*RADIUS+1,但球形以外的值均為0,如:H=fspecial(‘disk’,5);作用:對圖像進行低通濾波。

例:I=imread('f:\myimage\lena7.gif');H=fspecial(‘disk’,5);I1=conv2(I,H);imshow(I1,[]);問:與方形低通濾波器的濾波效果有何區(qū)別?

7.二維線性濾波及濾波器設(shè)計對于格式(10),fspecial返回一個運動模糊濾波器,用此濾波器可產(chǎn)生運動模糊的圖像,LEN為模糊時像素運動的距離,THETA為模糊時像素旋轉(zhuǎn)的角度。H=fspecial('motion',50,45);作用:對圖像產(chǎn)生運動模糊。

例:I=imread('f:\myimage\lena7.gif');subplot(2,2,1);imshow(I,[]);title('OriginalImage');H=fspecial('motion',50,45);MotionBlur=conv2(I,H);subplot(2,2,2);imshow(MotionBlur,[]);title('MotionBlurredImage');作業(yè):上機熟悉函數(shù)fspecial的用法及應(yīng)用。11.基于區(qū)域的圖像處理4.roipoly功能:選擇要處理的多邊形區(qū)域格式:(1)BW=roipoly(I,C,R)(2)BW=roipoly(I)(3)BW=roipoly(x,y,I,xi,yi)(4)[BW,xi,yi]=roipoly(…)(5)[x,y,BW,xi,yi]=roipoly(…)例1:I=imread(‘eight.tif’);c=[222272300270221194];r=[21217512112175];BW=roipoly(I,c,r);imshow(I);figure,imshow(BW);例2:I=imread('f:\myimage\lena7.gif');roipoly(I);BW=roipoly(I);11.基于區(qū)域的圖像處理3.roifilt2功能:對要處理的區(qū)域濾波格式:(1)J=roifilt2(H,I,BW)(2)J=roifilt2(I,BW,fun)(3)BW=roifilt2(I,BW,fun,p1,p2,…)例1:I=imread(‘eight.tif’);c=[222272300270221194];r=[21217512112175];BW=roipoly(I,c,r);h=fspecial(‘unsharp’);J=roifilt2(h,I,BW);imshow(I);figure,imshow(J);例2:I=imread('f:\myimage\lena7.gif');BW=roipoly(I);h=fspecial(‘gaussian’,5,5);J=roifilt2(h,I,BW);imshow(J,[]);14.圖像類型轉(zhuǎn)換2.gray2ind功能:灰度圖像轉(zhuǎn)化為索引圖像。格式:[X,MAP]=gray2ind(I,n)gray(n)表示顏色圖例:I=imread('f:\lb\myimage\lena7.gif');[X1,map1]=gray2ind(I,128);imshow(X1,map1);[X2,map2]=gray2ind(I,16);figure,imshow(X2,map2);14.圖像類型轉(zhuǎn)換3.ind2gray功能:索引

溫馨提示

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

最新文檔

評論

0/150

提交評論