数图各实验代码_第1页
数图各实验代码_第2页
数图各实验代码_第3页
数图各实验代码_第4页
数图各实验代码_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上实验一 数字图像的基本操作与代数运算1.对各RGB图像、索引图像、灰度图像,用imread读出图像文件,并用imshow将图像显示出来,并用iminfo给出图像信息。观察一下图像数据的特点,理解数字图像在MATLAB中的处理就是处理一个矩阵,根据图像文件信息和图像数据矩阵的特点,确定图像的类型,体会各自数据的特点。x=imread('RGBimageD.tiff')imshow(x)imfinfo('RGBimageD.tiff')2.选择一幅RGB彩色图像(图像RGBimageA),分别显示出原图像和R、G、B三个分量图像(用subp

2、lot函数显示在同一窗口中),观察对比它们的特点,体会不同颜色所对应的R、G、B分量的不同之处。subplot(2,2,1),imshow (y),title ('原图像');subplot(2,2,2),imshow (y(:,:,1),title ('R分量');subplot(2,2,3),imshow (y(:,:,2),title ('G分量');subplot(2,2,4),imshow (y(:,:,3),title ('B分量');3.将图像A中心部分选取出来,显示中心部分,并保存为与图像A相同格式的图像文件。 y

3、=imread('RGBimageA.tiff')A1=imcrop(y,100,100,300,300);subplot(1,2,1),imshow (y),title ('原图像');subplot(1,2,2),imshow (A1),title ('图像A的中心部分');imwrite(A1,'A1.tiff','tiff')4.选择一幅RGB图像(图像RGBimageB),使用imread和imwrite进行图像文件格式的相互转换(TIFF与JPG相互转换)。z=imread('RGBimageB

4、.tiff','tiff')imwrite(z,'RGBimageB.jpg','jpg')5.给灰度图像加入高斯噪声,并显示。运用for循环,分别将5幅、50幅和500幅加有随机高斯噪声的图像进行相加并求其平均值。将几种求平均后的图像显示在同一图像对话框中,比较其结果。I, M = imread('eight.tif');J = imnoise(I, 'gaussian', 0, 0.02);subplot(1,2,1), imshow(I, M), title('原图像');subplo

5、t(1,2,2), imshow(J, M), title('加噪声后图像');m, n = size(I);K = zeros(m, n);for i = 1 : 100 J = imnoise(I, 'gaussian', 0, 0.02); J1 = im2double(J); K = K + J1;endK = K / 100; %求图像的平均figure; imshow(K), title('相加求平均后的图像');6.自行下载两幅的图像,进行相加、相减、相乘的代数运算(注意运算时候图像的尺寸、类型等,如果不同,应将尺寸较大的图像裁剪或

6、缩放),显示运算之前和运算之后的图像。四种图像处理代数运算的数学表达式如下:其中A(x,y)和B(x,y)为输入图像,而C(x,y)为输出图像。7.选择一幅索引图像,将图像文件读出,并将这个图像显示出来。尝试修改MAP颜色矩阵的值,再将图像显示出来,观察图像颜色的变化。(选做)X,MAP = imread ('flowers.tif','tif');MAP1 = MAP + MAP;subimage (X,MAP1);实验二 图像的灰度变换与空域滤波1.显示图像A及其灰度直方图。用imadjust函数将它的灰度值调整到0,1之间,并观察调整后的图像与原图像的差别

7、,调整后的灰度直方图与原灰度直方图的区别;改变灰度值调整范围,观察调整后的图像的变化及其与原图像的差别,调整后的灰度直方图的变化及其与原灰度直方图的区别;进一步利用改变灰度值调整范围,实现图像的反转。X = imread('A.tif');Y = imadjust(X,0.2 0.8,);Z = imadjust(X,1,0);subplot(3,2,1),imshow(X),title('图像A');subplot(3,2,2),imhist(X),title('原图像的灰度直方图');subplot(3,2,3),imshow(Y),titl

8、e('调整后的图像A');subplot(3,2,4),imhist(Y),title('调整后的灰度直方图');subplot(3,2,5),imshow(Z),title('反转后的图像A');subplot(3,2,6),imhist(Z),title('反转后的灰度直方图');2.读取灰度图像B,用histeq函数将原始图像的灰度直方图均衡化,同时观察均衡化后的图像与前面图像的差别,均衡化后的灰度直方图与前面的灰度直方图的区别。I = imread('B.tif');J = histeq(I);subplo

9、t(2,2,1),imshow(I),title('图像B');subplot(2,2,2),imhist(I,64),title('图像B的直方图');subplot(2,2,3),imshow(J),title('均衡化的图像B');subplot(2,2,4),imhist(J,64),title('均衡化图像B的直方图');3.给图像C加入高斯噪声,分别采用不同大小的模板对加有噪声的图像进行均值滤波,用一个图像处理对话框(subplot)显示原图像、加有噪声的图像及均值滤波的图像。比较结果。X = imread('

10、C.tif');Y = imnoise(X,'gaussian',0,0.005);Z1= filter2(fspecial('average',3),Y)/255;Z2= filter2(fspecial('average',5),Y)/255;Z3= filter2(fspecial('average',7),Y)/255;Z4= filter2(fspecial('average',9),Y)/255;subplot(2,3,1),imshow(X),title('图像C');subp

11、lot(2,3,2),imshow(Y),title('加入高斯噪声的图像C');subplot(2,3,3),imshow(Z1),title('均值滤波模版尺寸为3');subplot(2,3,4),imshow(Z2),title('均值滤波模版尺寸为5');subplot(2,3,5),imshow(Z3),title('均值滤波模版尺寸为7');subplot(2,3,6),imshow(Z4),title('均值滤波模版尺寸为9');4.分别采用不同大小的模板对上述加有噪声的图像进行中值滤波,用一个图像

12、处理对话框(subplot)显示原图像、加有噪声的图像及中值滤波的图像。比较结果。X = imread('C.tif');Y = imnoise(X,'gaussian',0,0.005);I1= medfilt2(Y,3,3);I2= medfilt2(Y,7,7);subplot(2,2,1),imshow(X),title('图像C');subplot(2,2,2),imshow(Y),title('加入高斯噪声的图像C');subplot(2,2,3),imshow(I1),title('3×3模版

13、9;);subplot(2,2,4),imshow(I2),title('7×7模版');实验三 图像的频域处理1.读取图像A(lena.tiff)和B(rice.tif),显示这两幅图像,对图像作傅立叶变换,显示图像的傅里叶幅度谱和相位谱。做傅立叶逆变换,显示重建图像,看是否与原图像相同。A = imread('lena.tiff');B = imread('rice.tif');I=fftshift(fft2(A);J=fftshift(fft2(B);subplot(2,3,1),imshow(A);subplot(2,3,2),

14、imshow(log(1+abs(I),);subplot(2,3,3),imshow(angle(I);subplot(2,3,4),imshow(B);subplot(2,3,5),imshow(log(1+abs(J),);subplot(2,3,6),imshow(angle(J);X=ifft2(I);Y=ifft2(J);subplot(2,3,1),imshow(A),title('图像A');subplot(2,3,2),imshow(log(1+abs(I),),title('二维傅里叶变换');subplot(2,3,3),imshow(lo

15、g(abs(X),),title('逆变换后图像');subplot(2,3,4),imshow(B),title('图像B');subplot(2,3,5),imshow(log(1+abs(J),),title('二维傅里叶变换');subplot(2,3,6),imshow(log(abs(Y),),title('逆变换后图像');2.设计一个简单的巴特沃斯低通滤波器(截止频率自选),对图像A作频域低通滤波,再作反变换,观察两种不同的截止频率下反变换后的图像与原图像的区别。A=imread('lena.tiff

16、9;);PQ = paddedsize(size(A);D0 = 0.01*PQ(1);H = lpfilter('btw',PQ(1),PQ(2),D0);g = dftfilt(A,H);subplot(1,2,1),imshow(A),title('原图像');subplot(1,2,2),imshow(g,),title('D0较小的滤波');A=imread('lena.tiff');PQ = paddedsize(size(A);D0 = 0.08*PQ(1);H = lpfilter('btw',PQ

17、(1),PQ(2),D0);g = dftfilt(A,H);subplot(1,2,1),imshow(A),title('原图像');subplot(1,2,2),imshow(g,),title('D0较大的滤波');3.(选做内容)设计一个高斯高通滤波器(截止频率自选),对图像B作高频增强滤波,再作反变换,观察两种不同的截止频率下反变换后的图像与原图像的区别。B=imread('rice.tif');PQ=paddedsize(size(B);D0=0.01*PQ(1);HBW=hpfilter('gaussian',PQ

18、(1),PQ(2),D0,2);H=0.5+2*HBW;g=dftfilt(B,H);subplot(1,2,1),imshow(B),title('原图像');subplot(1,2,2),imshow(g,),title('D0较小的滤波');B=imread('rice.tif');PQ=paddedsize(size(B);D0=0.1*PQ(1);HBW=hpfilter('gaussian',PQ(1),PQ(2),D0,2);H=0.5+2*HBW;g=dftfilt(B,H);subplot(1,2,1),imsh

19、ow(B),title('原图像');subplot(1,2,2),imshow(g,),title('D0较大的滤波');实验四 图像复原利用imnoise3对图像I进行加入参数为C=0 32; 0 64; 16 16; 32 0; 64 0; -16 16的周期噪声,得到图像J。对含噪图像J进行陷波滤波图像复原。要求列出各个步骤的运行代码。显示I,J,差分图像I-I'。显示I、J、以及噪声的频谱。img = im2double(imread('peppers.tiff');C=0 32; 0 64; 16 16; 32 0; 64 0

20、; -16 16;A=1000 2000 3000 4000 5000 6000;r,R,S=imnoise3(512,512,C,A);img_noise = img + r;F0 = fft2(img);F0 = fftshift(F0);F = fft2(img_noise);F = fftshift(F);sizec = size(img);H = ones(sizec(1),sizec(2);x0 = sizec(1)/2 + 1;y0 = sizec(2)/2 + 1;x = x0;w = 0.4*2*pi;N = 2*pi/w;y = y0 - round(sizec(2)/N)

21、;H(x,y-3:y+3) = 0;H(x,(y0-y)+y0-3:(y0-y)+y0+3)=0;I=ifftshift(F.*H);img1=ifft2(I);subplot(4,2,1),imshow('peppers.tiff'),title('原图像');subplot(4,2,2),imshow(img),title('原图转double类型');subplot(4,2,3),imshow(S),title('规定脉冲的谱');subplot(4,2,4),imshow(r,),title('空间域中相应的正弦噪

22、声模式');subplot(4,2,5),imshow(img_noise),title('加噪图像');subplot(4,2,6),imshow(log(1+abs(F0),),title('原图像频谱');subplot(4,2,7),imshow(log(1+abs(F),),title('加噪图像频谱');subplot(4,2,8),imshow(img1,),title('陷波滤波结果');实验五 图像变化与编码1.已知符号x1,x8对应概率为0.4, 0.18, 0.1, 0.1, 0.07, 0.06,

23、0.05, 0.04。按教材图8.2 的方式将其转换为霍夫曼码(编码过程写在实验报告中),并利用huffman.m 转换为霍夫曼码,对照结果是否相同。p = 0.4 0.18 0.1 0.1 0.07 0.06 0.05 0.04;c = huffman(p)结果如下: c = '1' '010' '0111' '000' '0011' '0010' '01101' '01100'2.对给定图像I利用mat2huff.m, huff2mat.m 进行霍夫曼编码、解码。

24、计算压缩率CR。>> I = imread('Tracy.tif');>> J = mat2huff(I);>> cr1 = imratio(I,J)cr1 = 1.2191>> save('tracy.mat','J');>> cr2 = imratio('Tracy.tif','tracy.mat')cr2 = 1.2386>> load tracy.mat>> K = huff2mat(J);>> L = imre

25、ad('Tracy.tif');>> rmse = compare(K,L)rmse = 03.对给定图像I先进行预测编码、霍夫曼编码,然后进行霍夫曼解码、预测解码。计算压缩率 CR。显示预测误差图像x-x 。预测器采用x=(A+B+C)/3,如下图所示:ACBx比较该预测器与mat2lpc 所指定的预测器性能差异(CR 与 执行速度)。(提示:可参考mat2lpc.m, lpc2mat.m,或采用循环方式设计预测器,执行速度可用tic,toc)。>> x = imread('Tracy.tif');>> tic>>

26、; e1 =mat2lpc(x);>> tocElapsed time is 20. seconds.>> tic>> e2 = mymat2lpc(x);>> tocElapsed time is 17. seconds.>> figure;imshow(e1,);>> figure;imshow(e2,);>> EN = entropy(x),entropy(e1), entropy(e2)EN = 6.5147 3.9741 3.8448>> y1 = mat2huff(e1);>>

27、; y2 = mat2huff(e2);>> z1 = huff2mat(y1);>> z2 = huff2mat(y2);>> x1 = lpc2mat(z1);>> x2 = mylpc2mat(z2);>> ComRatio = imratio(x,y1), imratio(x,y2)ComRatio = 1.9952 2.0646>> compare(x,x1)ans = 0>> compare(x,x2)ans = 0实验六 综合实验1、对给定的一幅彩色图像F进行图像增强,结果保存为BMP图像G。wi

28、n = 5,5;img = imread('F.tiff');x = img(:,:,1);y = img(:,:,2);z = img(:,:,3);X = medfilt2(x,win);Y = medfilt2(y,win);Z = medfilt2(z,win);G = cat(3,X,Y,Z);imwrite(G,'G.bmp','bmp');subplot(1,2,1),imshow(img),title('原图像');subplot(1,2,2),imshow(G),title('原图像用中值滤波去除椒盐噪声');2、将图像G以JPEG格式进行压缩,质量因子设为70,结果保存为JPG图像J。A = imread('G.bmp');imwrite(A,'J.jpg','jpg','quality',70);imshow('J.jpg'), title('图像G以JPEG格式压缩');3、(1)计算J相对于G的均方根误差RMSE。 B = imread('J.jpg');rmse = compare(A,B)rms

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论