




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、.實驗一 常用MATLAB圖像處理命令一、實驗?zāi)康?#160; 1、熟悉并掌握MATLAB工具的使用;2、實現(xiàn)圖像的讀取、顯示、代數(shù)運算和簡單變換。二、實驗環(huán)境MATLAB 6.5以上版本、WIN XP或WIN2000計算機三、常用函數(shù)l 讀寫圖像文件1 imread imread函數(shù)用于讀入各種圖像文件,如:a=imread('e:w01.tif') 2 imwrite imwrite函數(shù)用于寫入圖像文件,如:imwrite(a,'e:w02.tif',tif) 3 imfinfo imfinfo函數(shù)用于讀取圖像文件的有關(guān)信息,如:imfinfo('e
2、:w01.tif')l 圖像的顯示1 image image函數(shù)是MATLAB提供的最原始的圖像顯示函數(shù),如: a=1,2,3,4;4,5,6,7;8,9,10,11,12; image(a); 2 imshow imshow函數(shù)用于圖像文件的顯示,如: i=imread('e:w01.tif');imshow(i);title(原圖像)%加上圖像標題 3 colorbar colorbar函數(shù)用顯示圖像的顏色條,如: i=imread('e:w01.tif'); imshow(i); colorbar; 4 figurefigure函數(shù)用于設(shè)定圖像顯示
3、窗口,如:figure(1); /figure(2);5 subplot 把圖形窗口分成多個矩形部分,每個部分可以分別用來進行顯示。Subplot(m,n,p)分成m*n個小窗口,在第p個窗口中創(chuàng)建坐標軸為當前坐標軸,用于顯示圖形。6 plot繪制二維圖形plot(y)Plot(x,y)xy可以是向量、矩陣。l 圖像類型轉(zhuǎn)換1 rgb2gray/灰色把真彩圖像轉(zhuǎn)換為灰度圖像i=rgb2gray(j)2 im2bw/黑白通過閾值化方法把圖像轉(zhuǎn)換為二值圖像I=im2bw(j,level)Level表示灰度閾值,取值范圍01(即0.n),表示閾值取自原圖像灰度范圍的n%3 imresize改變圖像的
4、大小I=imresize(j,m n)將圖像j大小調(diào)整為m行n列l(wèi) 圖像運算1 imadd兩幅圖像相加,要求同樣大小,同種數(shù)據(jù)類型Z=imadd(x,y)表示圖像x+y2 imsubstract兩幅圖像相減,要求同樣大小,同種數(shù)據(jù)類型Z=imsubtract(x,y) 表示圖像x-y3 immultiplyZ=immultiply(x,y) 表示圖像x*y4 imdivideZ=imdivide(x,y) 表示圖像x/y5:m = imadjust(a,0.5;1) ;%圖像變亮n = imadjust(a,0;0.5) ;%圖像變暗g=255-a;%負片效果四、實驗內(nèi)容(請將實驗程序填寫在下
5、方合適的位置,實驗圖像結(jié)果拷屏粘貼).1、讀入一幅RGB圖像,變換為灰度圖像和二值圖像,并在同一個窗口內(nèi)分成三個子窗口來分別顯示RGB圖像和灰度圖像,注上文字標題。a=imread('f:1.jpg')i = rgb2gray(a)I = im2bw(a,0.5)subplot(3,1,1);imshow(a);title('原圖像')subplot(3,1,2);imshow(i);title('灰度圖像')subplot(3,1,3);imshow(I);title('二值圖像') 2、對兩幅不同圖像執(zhí)行加、減、乘、除操作,在
6、同一個窗口內(nèi)分成五個子窗口來分別顯示,注上文字標題。a=imread('f:1.jpg')A=imresize(a,800 800)b=imread('f:2.jpg')B=imresize(b,800 800)Z1=imadd(A,B)Z2=imsubtract(A,B)Z3=immultiply(A,B)Z4=imdivide(A,B)subplot(3,2,1); imshow(A);title('原圖像A')subplot(3,2,2); imshow(B);title('原圖像B')subplot(3,2,3); ims
7、how(Z1);title('加法圖像')subplot(3,2,4); imshow(Z2);title('減法圖像')subplot(3,2,5); imshow(Z3);title('乘法圖像')subplot(3,2,6); imshow(Z2);title('除法圖像')3、 對一幅圖像進行灰度變化,實現(xiàn)圖像變亮、變暗和負片效果,在同一個窗口內(nèi)分成四個子窗口來分別顯示,注上文字標題。a=imread('f:1.jpg');m = imadjust(a,0.5;1) ;%圖像變亮n = imadjust(a
8、,0;0.5) ;%圖像變暗g=255-a;%負片效果subplot(2,2,1);imshow(a);title('原圖像')subplot(2,2,2);imshow(m);title('圖像變亮')subplot(2,2,3);imshow(n);title('圖像變暗') subplot(2,2,4);imshow(g);title('負片效果') 4、熟悉數(shù)字圖像處理常用函數(shù)的使用,調(diào)出幫助文檔查看其各種不同用法。方法:選擇函數(shù)(函數(shù)所在區(qū)變暗),點右鍵彈出菜單,選擇“Help on Selection”五、實驗總結(jié)分析
9、圖像的代數(shù)運算結(jié)果,分別陳述圖像的加、減、乘、除運算可能的應(yīng)用領(lǐng)域。實驗四 常用圖像增強方法一、實驗?zāi)康?#160; 1、熟悉并掌握MATLAB圖像處理工具箱的使用;2、理解并掌握常用的圖像的增強技術(shù)。二、實驗環(huán)境MATLAB 6.5以上版本、WIN XP或WIN2000計算機三、相關(guān)知識 1 imnoise imnoise函數(shù)用于對圖像生成模擬噪聲,如: i=imread('e:w01.tif');j=imnoise(i,'gaussian',0,0.02);模擬均值為0方差為0.02的高斯噪聲,j=imnoise(i,'salt&pepper
10、', 0.04) 模擬疊加密度為0.04的椒鹽噪聲 2 fspecial fspecial函數(shù)用于產(chǎn)生預(yù)定義濾波器,如: h=fspecial('sobel');%sobel水平邊緣增強濾波器 h=fspecial('gaussian');%高斯低通濾波器 h=fspecial('laplacian');%拉普拉斯濾波器 h=fspecial('log');%高斯拉普拉斯(LoG)濾波器 h=fspecial('average');%均值濾波器3 基于卷積的圖像濾波函數(shù) imfilter函數(shù), filter
11、2函數(shù),二維卷積conv2濾波,都可用于圖像濾波,用法類似,如: i=imread('e:w01.tif'); h=1,2,1;0,0,0;-1,-2,-1;%產(chǎn)生Sobel算子的水平方向模板j=filter2(h,i);或者:h = fspecial(prewitt)I = imread('cameraman.tif');imshow(I); H = fspecial('prewitt); %預(yù)定義濾波器M = imfilter(I,H);imshow(M) 或者: i=imread('e:w01.tif'); h=1,1,1;1,1,
12、1;1,1,1; h=h/9; j=conv2(i,h);4 其他常用濾波舉例(1)中值濾波 medfilt2函數(shù)用于圖像的中值濾波,如: i=imread('e:w01.tif'); j=medfilt2(i,M N);對矩陣i進行二維中值濾波,領(lǐng)域為M*N,缺省值為3*3 (2)利用拉氏算子銳化圖像, 如: i=imread('e:w01.tif'); j=double(i); h=0,1,0;1,-4,0;0,1,0;%拉氏算子 k=conv2(j,h,'same');三、實驗步驟1、采用二維中值濾波函數(shù)medfilt2對受椒鹽噪聲干擾的圖
13、像濾波,窗口分別采用3*3,5*5,7*7I = imread('f:lena.png');J = imnoise(I,'salt & pepper',0.04);K1 = medfilt2(J,3 3);%對矩陣i進行二維中值濾波,領(lǐng)域為3*3 K2 = medfilt2(J,5 5);K3 = medfilt2(J,7 7);subplot(2,2,1);imshow(J);title('椒鹽噪聲干擾圖像')subplot(2,2,2);imshow(K1);title('領(lǐng)域為3*3二維中值濾波')subplot(2
14、,2,3);imshow(K2);title('領(lǐng)域為5*5二維中值濾波') subplot(2,2,4);imshow(K3);title('領(lǐng)域為7*7二維中值濾波') 2、采用MATLAB中的函數(shù)filter2對受噪聲干擾的圖像進行均值濾波I = imread('f:lena.png');j=imnoise(i,'gaussian',0,0.02);%模擬均值為0方差為0.02的高斯噪聲,M= filter2(fspecial('average',9),J)/255; %模板尺寸為9subplot(2,1,1
15、);imshow(j);title('噪聲干擾圖像')subplot(2,1,2);imshow(M);title('改進后的圖像')3、 采用三種不同算子對圖像進行銳化處理。i=imread('f:1.jpg')I=rgb2gray(s)H=fspecial('sobel')%應(yīng)用Sobel算子銳化圖像I1=filter2(H,I)%Sobel算子濾波銳化H=fspecial('prewitt')%應(yīng)用prewitt算子銳化圖像I2=filter2(H,I)%prewitt算子濾波銳化H=fspecial(
16、9;log')%應(yīng)用log算子銳化圖像I3=filter2(H,I)%log算子濾波銳化subplot(2,2,1);imshow(i);title('原圖像')subplot(2,2,2);imshow(I1);title('Sobel算子銳化圖像')subplot(2,2,3);imshow(I2);title('prewitt算子銳化圖像') subplot(2,2,4);imshow(I3);title('log算子銳化圖像') 四、實驗總結(jié)1、比較不同平滑濾波器的處理效果,分析其優(yōu)缺點2、比較不同銳化濾波器的處理
17、效果,分析其優(yōu)缺點實驗五 圖像恢復(fù)和圖像分割一、實驗?zāi)康?#160; 1、熟悉并掌握MATLAB圖像處理工具箱的使用;2、理解并掌握常用的圖像的恢復(fù)和分割技術(shù)。二、實驗環(huán)境MATLAB 6.5以上版本、WIN XP或WIN2000計算機三、相關(guān)知識1 deconvwnr維納濾波,用法:J = deconvwnr(I,PSF,NSR) 用維納濾波算法對圖片I進行圖像恢復(fù)后返回圖像J。 I是一個N維數(shù)組。PSF是點擴展函數(shù)的卷積。NSP是加性噪聲的噪聲對信號的功率比。如:I = im2double(imread('cameraman.tif'); imshow(I); title(
18、'Original Image '); %模擬運動模糊 Matlab中文論壇 LEN = 21; THETA = 11; PSF = fspecial('motion', LEN, THETA); blurred = imfilter(I, PSF, 'conv', 'circular'); figure, imshow(blurred) %恢復(fù)圖像www.iLoveM wnr2 = deconvwnr(blurred_noisy, PSF); figure, imshow(wnr2) title('Restoration
19、 of Blurred') 2 edge 檢測灰度或者二值圖像的邊緣,返回一個二值圖像,1像素是檢測到的邊緣,0像素是非邊緣。用法:BW = edge(I,'sobel',thresh,direction),I為檢測對象;邊緣檢測算子可用sobel,roberts,prewitt,zerocross,log,canny;thresh指定閾值,檢測時忽略所有小于閾值的邊緣,默認自動選擇閾值;direction方向,在所指定的方向direction上,用 算子進行邊緣檢測horizontal(水平方向)、vertical(垂直方向)或both(兩個方向)。如:I = imr
20、ead('circuit.tif'); BW1 = edge(I,'prewitt'); imshow(BW1); 3 strel創(chuàng)建形態(tài)學結(jié)構(gòu)元素。用法: SE = STREL('arbitrary',NHOOD,HEIGHT) 創(chuàng)建一個指定領(lǐng)域的非平面結(jié)構(gòu)化元素。HEIGHT是一個矩陣,大小和NHOOD相同,他指定了NHOOD中任何非零元素的高度值。SE = STREL('ball',R,H,N) 創(chuàng)建一個空間橢球狀的結(jié)構(gòu)元素,其X-Y平面半徑為R,高度為H。R必須為非負整數(shù),H是一個實數(shù)。N必須為一個非負偶數(shù)。當N>0
21、時此球形結(jié)構(gòu)元素由一系列空間線段結(jié)構(gòu)元素來近似。 SE = STREL('diamond',R) 創(chuàng)建一個指定大小R平面鉆石形狀的結(jié)構(gòu)化元素。R是從結(jié)構(gòu)化元素原點到其點的距離,必須為非負整數(shù)。SE = STREL('disk',R,N) 創(chuàng)建一個指定半徑R的平面圓盤形的結(jié)構(gòu)元素。這里R必須是非負整數(shù). N須是0, 4, 6, 8.當N大于0時,圓盤形結(jié)構(gòu)元素由一組N(或N+2)個周期線結(jié)構(gòu)元素來近似。當N等于0時,不使用近似,即結(jié)構(gòu)元素的所有像素是由到中心像素距離小于等于R的像素組成。N可以被忽略,此時缺省值是4。注: 形態(tài)學操作在N>0情況下要快于N=0
22、的情形。 如:se1 = strel('square',11) % 11乘以11的正方形4 imerode腐蝕圖像用法:IM2 = imerode(IM,SE) 腐蝕灰度、二進制或壓縮二進制圖像 IM ,返回腐蝕圖像 IM2 。參數(shù) SE 是函數(shù) strel 返回的一個結(jié)構(gòu)元素體或是結(jié)構(gòu)元素體陣列。如:使用一個盤狀結(jié)構(gòu)元素腐蝕一幅二進制圖像。 originalBW = imread('circles.png'); se = strel('disk',11); erodedBW = imerode(originalBW,se); ims
23、how(originalBW), figure, imshow(erodedBW) 5 imdilate膨脹圖像用法:IM2 = imdilate(IM, SE) 膨脹灰度圖像、二值圖像、或者打包的二值圖像IM,返回膨脹圖像M2。變量SE是一個結(jié)構(gòu)元素或者一個結(jié)構(gòu)元素的數(shù)組,其是通過strel函數(shù)返回的。如:利用一個運行結(jié)構(gòu)元素膨脹灰度圖像。 I = imread('cameraman.tif'); se = strel('ball',5,5); I2 = imdilate(I,se); imshow(I), title('Original')
24、figure, imshow(I2), title('Dilated') 三、實驗步驟1、產(chǎn)生運動模糊圖像,運用維納濾波進行圖像恢復(fù),顯示結(jié)果。i=imread('f:1.jpg')I=rgb2gray(s)I = im2double(I); %模擬運動模糊LEN = 21;THETA = 11;PSF = fspecial('motion', LEN, THETA); blurred = imfilter(I, PSF, 'conv', 'circular');%恢復(fù)圖像wnr2 = deconvwnr(blur
25、red, PSF); subplot(1,2,1);imshow(blurred);title('運動模糊圖像') subplot(1,2,2);imshow(wnr2);title('恢復(fù)圖像')2、 采用三種不同算子檢測圖像邊緣,顯示結(jié)果。i=imread('f:1.jpg')BW1 = edge(I,'prewitt'); BW2 = edge(I,'zerocross');BW3 = edge(I,'canny');subplot(2,2,1);imshow(i);title('原圖
26、像')subplot(2,2,2);imshow(BW1);title('prewitt邊緣圖')subplot(2,2,3);imshow(BW2);title('zerocross邊緣圖') subplot(2,2,4);imshow(BW3);title('canny邊緣圖') 3、對二值圖像分別進行方形模板3*3和5*5的膨脹和腐蝕操作,顯示結(jié)果。a=imread('f:1.jpg')i = rgb2gray(a)I = im2bw(a,0.5)se3 = strel('disk',3); erod
27、edBW1 = imerode(I,se3); se4 = strel('disk',5); erodedBW2 = imerode(I,se4); se1 = strel('ball',3,3); I1 = imdilate(a,se1); se2 = strel('ball',5,5); I2 = imdilate(a,se2); subplot(2,2,1);imshow(I1);title('3*3膨脹圖像')subplot(2,2,2);imshow(I2);title('5*5膨脹圖像')subplot
28、(2,2,3);imshow(erodedBW1);title('3*3腐蝕圖像') subplot(2,2,4);imshow(erodedBW2);title('5*5腐蝕圖像') 實驗六 圖像處理實際應(yīng)用一、實驗?zāi)康?、熟悉并掌握MATLAB圖像處理工具箱的使用;2、理解并掌握常用的圖像處理技術(shù)。二、實驗環(huán)境MATLAB 6.5以上版本、WIN XP或WIN2000計算機三、實驗內(nèi)容調(diào)試運行下列程序,分析程序,對每條語句給出注釋,并顯示最終執(zhí)行結(jié)果??偨Y(jié)算法思想及優(yōu)缺點.I=imread('Car.jpg');y,x,z=size(I);m
29、yI=double(I);% RGB to HSI %tic % Y 方向 %Blue_y=zeros(y,1);for i=1:y for j=1:x if(myI(i,j,1)<=30)&&(myI(i,j,2)<=62)&&(myI(i,j,2)>=51)&&(myI(i,j,3)<=142)&&(myI(i,j,3)>=119) % 藍色RGB的灰度范圍 Blue_y(i,1)= Blue_y(i,1)+1; end end endtemp MaxY=max(Blue_y); % Y方向車牌區(qū)
30、域確定PY1=MaxY;while (Blue_y(PY1,1)>=5)&&(PY1>1) PY1=PY1-1;end PY2=MaxY;while (Blue_y(PY2,1)>=5)&&(PY2<y) PY2=PY2+1;endIY=I(PY1:PY2,:,:);% X 方向 % Blue_x=zeros(1,x); for j=1:x for i=PY1:PY2 if(myI(i,j,1)<=30)&&(myI(i,j,2)<=62)&&(myI(i,j,2)>=51)&&a
31、mp;(myI(i,j,3)<=142)&&(myI(i,j,3)>=119) Blue_x(1,j)= Blue_x(1,j)+1; end end endPX1=1;while (Blue_x(1,PX1)<3)&&(PX1<x) PX1=PX1+1;end PX2=x;while (Blue_x(1,PX2)<3)&&(PX2>PX1) PX2=PX2-1;endPX1=PX1-2; % 對車牌區(qū)域的修正PX2=PX2+2;Plate=I(PY1:PY2,PX1-2:PX2,:);t=toc % 讀取計時
32、%figure,imshow(I);figure,plot(Blue_y);gridfigure,plot(Blue_x);gridfigure,imshow(IY);添加注釋和改正后的程序:I=imread('f:Car.jpg');%讀取圖片y,x,z=size(I);%給定圖片大小myI=double(I);%返回雙精度值% RGB to HSI %tic %計時開始 % Y 方向 %Blue_y=zeros(y,1);%一列全零矩陣for i=1:y%給定i的范圍 for j=1:x%給定j的范圍 if(myI(i,j,1)<=30)&&(myI(
33、i,j,2)<=62)&&(myI(i,j,2)>=51)&&(myI(i,j,3)<=142)&&(myI(i,j,3)>=119) % 藍色RGB的灰度范圍 Blue_y(i,1)= Blue_y(i,1)+1; % y矩陣加一 end end endtemp MaxY=max(Blue_y); % Y方向車牌區(qū)域確定PY1=MaxY;%y矩陣的最大元素while (Blue_y(PY1,1)>=5)&&(PY1>1)% 確定藍色RGB Blue_y所在位置 PY1=PY1-1; %對車牌區(qū)
34、域的修正,向上調(diào)整end PY2=MaxY; %y矩陣的最大元素while (Blue_y(PY2,1)>=5)&&(PY2<y) %確定藍色RGB Blue_y所在位置 PY2=PY2+1; %對車牌區(qū)域的修正向下調(diào)整endIY=I(PY1:PY2,:,:);%行的范圍 % X 方向 % Blue_x=zeros(1,x); %一行全一矩陣 for j=1:x%給定j的取值范圍 for i=PY1:PY2%給定i的取值范圍 if(myI(i,j,1)<=30)&&(myI(i,j,2)<=62)&&(myI(i,j,2)
35、>=51)&&(myI(i,j,3)<=142)&&(myI(i,j,3)>=119)%調(diào)整I中的范圍 Blue_x(1,j)= Blue_x(1,j)+1; % Blue_x 的矩陣加一 end end endPX1=1;%當PX1等于1時while (Blue_x(1,PX1)<3)&&(PX1<x) % 確定藍色RGB Blue_x的位置 PX1=PX1+1; %對車牌區(qū)域的修正向下調(diào)整end PX2=x; %當PX2等于x時while (Blue_x(1,PX2)<3)&&(PX2>
36、;PX1) %確定藍色RGB Blue_x的位置 PX2=PX2-1; %對車牌區(qū)域的修正向下調(diào)整endPX1=PX1-2; % 對車牌區(qū)域的修正PX2=PX2+2; %對車牌區(qū)域的修正Plate=I(PY1:PY2,PX1-2:PX2,:);%矩陣行列的范圍 t=toc % 讀取計時%figure,imshow(I);%創(chuàng)建圖像窗口,顯示圖像Ifigure,plot(Blue_y);grid%創(chuàng)建圖像窗口,繪制Blue_y圖像,畫出網(wǎng)格線figure,plot(Blue_x);grid%創(chuàng)建圖像窗口,繪制Blue_x圖像,畫出網(wǎng)格線figure,imshow(Plate); %創(chuàng)建圖像窗口,
37、顯示圖像Platet =0.5630實驗二 圖像基本操作一、實驗?zāi)康?#160; 1、熟悉及掌握圖像的采樣原理,實現(xiàn)圖像的采樣過程,進行圖像的灰度轉(zhuǎn)換。 2、理解直方圖的概念及應(yīng)用,實現(xiàn)圖像直方圖的顯示,及通過直方圖均衡和直方圖規(guī)定化方法對圖像進行修正。二、實驗環(huán)境MATLAB 6.5以上版本、WIN XP或WIN2000計算機三、相關(guān)函數(shù)l 圖像的增強1、 直方圖imhist函數(shù)用于數(shù)字圖像的直方圖計算或顯示,imhist(I, n)計算和顯示圖像I的直方圖,n為指定的灰度級數(shù)目,默認為256。如果I是二值圖像,那么n僅有兩個值。counts,x = imhis
38、t(.)返回直方圖數(shù)據(jù)向量counts,相應(yīng)的色彩值向量x。如: i=imread('e:w01.tif');imhist(i); 2 、直方圖均衡化histeq函數(shù)用于數(shù)字圖像的直方圖均衡化,J = histeq(I, n) 均衡化后的級數(shù)n,缺省值為64。J = histeq(I, hgram) "直方圖規(guī)定化",即將原是圖象 I 的直方圖變換成用戶指定的向量 hgram (即指定另一幅圖像的直方圖數(shù)據(jù)向量)。如: i=imread('e:w01.tif');j=histeq(i,N);對圖像i執(zhí)行均衡化,得到具有N個灰度級的
39、灰度圖像j,N缺省值為64 3、 灰度調(diào)整imadjust函數(shù)用于數(shù)字圖像的灰度或顏色調(diào)整,J = imadjust(I) 將灰度圖像 I 中的亮度值映射到 J 中的新值并使 1 的數(shù)據(jù)是在低高強度和飽和,這增加了輸出圖像 J 的對比度值。 J = imadjust(I,low_in; high_in,low_out; high_out) 將圖像I中的亮度值映射到J中的新值,即將low_in至high_in之間的值映射到low_out至high_out之間的值。low_in 以下與 high_in 以上的值被剪切掉了,也就是說,low_in 以下的值映射到 low_out,high_in 以上
40、的值映射到high_out。它們都可以使用空的矩陣,默認值是0 1。 如: i=imread('e:w01.tif'); j=imadjust(i,0.3,0.7,);將圖像i轉(zhuǎn)換為j,使灰度值從0.30.7與缺省值01相匹配l 運算函數(shù)1、Zeros生成全0數(shù)組或矩陣如 B = zeros(m,n) or B = zeros(m n) 返回一個 m*n 全0矩陣2、取整函數(shù)floor最小取整函數(shù)round四舍五入取整函數(shù)ceil最大取整函數(shù)如a = -1.9, -0.2, 3.4, 5.6, 7.0, 2.4+3.6iI=round(a)I = -2 0 3 6 7 2+ 4
41、i四、實驗內(nèi)容1、對一幅圖像進行2倍、4倍、8倍和16倍減采樣,顯示結(jié)果。 a=imread('f:/1.jpg'); b=rgb2gray(a); for m=1:4 figure width,height=size(b); quartimage=zeros(floor(width/(m),floor(height/(2*m); k=1; n=1; for i=1:(m):width for j=1:(2*m):height quartimage(k,n)=b(i,j); n=n+1; end k=k+1; n=1; end imshow(uint8(quartimage);
42、End2、 顯示一幅灰度圖像a,改變圖像亮度使其整體變暗得到圖像b,顯示兩幅圖像的直方圖。a=imread('f:lena_color.png')c=rgb2gray(a)b=c-46subplot(2,1,1);imhist(c);title('原圖像')subplot(2,1,2);imhist(b);title('變暗后的圖像')3、 對圖像b進行直方圖均衡化,顯示結(jié)果圖像和對應(yīng)直方圖。b=imread('f:lena_color.png')c=rgb2gray(b)j=histeq(c)subplot(2,2,1),ims
43、how(c)subplot(2,2,2),imshow(j)subplot(2,2,3),imhist(c) %顯示原始圖像直方圖subplot(2,2,4),imhist(j) %顯示均衡化后圖像的直方圖4、 讀入圖像c,執(zhí)行直方圖規(guī)定化,使圖像a的灰度分布與c大致相同,顯示變換后圖像及對應(yīng)直方圖。I=imread('f:lena.png');>> J=histeq(I,64); %均衡化成32個灰度級的直方圖>> counts,x=imhist(J); %返回直方圖圖像向量countsb=imread('f:1.jpg')Q=rgb2
44、gray(b)>> M=histeq(Q,counts); %將原始圖像Q的直方圖變成指定向量counts >> figure,>> subplot(3,2,1),imshow(I);>> subplot(3,2,2),imshow(Q);>> subplot(3,2,3),imhist(I);>> subplot(3,2,4),imhist(Q)>> subplot(3,2,5),imhist(J);>> subplot(3,2,6),imhist(M);實驗三 圖像變換一、實驗?zāi)康?#160;
45、1、熟悉及掌握圖像的變換原理及性質(zhì),實現(xiàn)圖像的傅里葉變換。二、實驗環(huán)境MATLAB 6.5以上版本、WIN XP或WIN2000計算機三、相關(guān)函數(shù)l 圖像的變換 1 fft2 fft2函數(shù)用于數(shù)字圖像的二維傅立葉變換,如: i=imread('e:w01.tif');j=fft2(i);由于MATLAB無法顯示復(fù)數(shù)圖像,因此變換后的結(jié)果還需進行求模運算,即調(diào)用abs函數(shù)。之后常常還進行對數(shù)變換,即調(diào)用log函數(shù),以減緩傅里葉譜的快速衰減,更好地顯示高頻信息。 2 ifft2 ifft2函數(shù)用于數(shù)字圖像的二維傅立葉反變換,如: i=imread('e:w01.tif
46、9;); j=fft2(i);k=ifft2(j);3 fftshift用于將變換后圖像頻譜中心從矩陣的原點移動到矩陣的中心B=fftshift(i) 4 利用fft2計算二維卷積 利用fft2函數(shù)可以計算二維卷積,如: a=8,1,6;3,5,7;4,9,2; b=1,1,1;1,1,1;1,1,1; a(8,8)=0; b(8,8)=0; c=ifft2(fft2(a).*fft2(b); c=c(1:5,1:5); 利用conv2(二維卷積函數(shù))校驗, 如: a=8,1,6;3,5,7;4,9,2; b=1,1,1;1,1,1;1,1,1; c=conv2(a,b);四、實驗內(nèi)容1、對一幅圖像進行平移,顯示原始圖像與處理后圖像,分別對其進行傅里葉變換,顯示變換后結(jié)果,分析原圖
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 勞動合同違約責任及典型案例分析
- 家庭用工合同模板參考范本
- 篇二:購房合同范本規(guī)范
- 室內(nèi)防水改造合同范本
- 定制旅行服務(wù)協(xié)議合同
- 房地產(chǎn)開發(fā)施工合同樣本
- 金融市場中銀行承兌質(zhì)押合同的法律效力
- 兼職市場拓展合同樣本
- 發(fā)射設(shè)備在極端環(huán)境下的穩(wěn)定性檢測考核試卷
- 塑膠跑道材料的生產(chǎn)工藝與質(zhì)量控制考核試卷
- 《智慧旅游認知與實踐》課件-第九章 智慧旅行社
- 馬工程《刑法學(下冊)》教學課件 第16章 刑法各論概述
- 唐詩三百首(楷書)
- (新版)公用設(shè)備工程師《專業(yè)知識》(給排水)考試題庫及答案
- 01-第一章運動學緒論PPT課件
- 電動車智能充電器的設(shè)計與制作畢業(yè)論文
- 軟件系統(tǒng)部署方案
- 第九套廣播體操動作要領(lǐng)及圖解.
- JWF1312B中文說明書-2017-3-2(1)(1)
- 系統(tǒng)命名法[教學參考]
評論
0/150
提交評論