资源描述:
《图形图像处理实验》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验一计算图像的基本统计指标实验目的:1)熟悉Matlab图像处理工具箱的使用方法。2)了解计算图像统计指标的方法及其在图像处理中的意义。实验原理:1)可将一幅图视为一个二维矩阵,因此Matlab处理图像十分方便。2)利用Matlab图像处理工具箱读、写和显示图像。实验内容:将图像反白。图像是RGB彩色图像football.jpg,采用rgb2gray函数可以将彩色图像转换为黑白图像。I=imread('football.jpg');subplot(131);imshow(I);J=rgb2gray(I);subplot(132
2、);imshow(J);Ave=mean2(J);SD=std2(double(J));s=size(J);all_white=255*ones(s(1),s(2));all_white_uint8=uint8(all_white);K=imsubtract(all_white_uint8,J);subplot(133);imshow(K);imwrite(K,'football_inverse.jpg');实验结果:实验二图像的数字化实验目的:1)了解静止图像的数字化原理。2)掌握常用数字化设备的使用。实验原理:通过将模拟图像
3、数字化后,用计算机对图像进行灵活的处理。实验内容:2.1用Matlab程序说明实际数字图像量化特点。clc;clear;W=16;I=imread('kids.tif');s=size(I);J=I(s(1)/2-W/2:s(1)/2+W/2-1,s(2)/2-W/2:s(2)/2+W/2-1)imshow(J);K=I(2*W:s(1)-W,2*W:s(2)-5*W);figure,imshow(K);实验结果:实验三图像变换实验目的:1)了解图像正变换和逆变换的原理2)理解图像变换的系数特点3)掌握常用图像变换的实现过程4)
4、掌握图像的频谱分析方法5)了解图像变换在图像数据压缩等方面的应用实验原理:1)二维离散傅立叶变换、余弦变换、小波变换的正逆变换公式。2)Matlab中变换的实现函数。3)讨论正交变换的应用。实验内容:3.1应用Matlab实现图像的傅立叶变换。I=imread('pout.tif');imshow(I);F1=fft2(I);figure,imshow(log(abs(F1)+1),[010]);F2=fftshift(F1);figure,imshow(log(abs(F2)+1),[010]);实验结果:原始图像图像的频谱图
5、中心化的频谱图3.2应用Matlab实现图像的DCT变换。clearall;clcI=imread('tire.tif');subplot(121);imshow(I);C1=dct2(I);C2=fftshift(C1);subplot(122);imshow(log(abs(C2))+1,[010]);实验结果:原始图像DCT系数3.3已知二维数字图像矩阵f,求此图像的二维DWT,并反求f。f=[2552;3333;3333;2551];G=[1111;11-1-1;1-1-11;1-11-1];W=(1/16)*G*f*G
6、实验结果:W=3.18750.0625-0.81250.06250.0625-0.06250.0625-0.06250.18750.0625-0.81250.06250.0625-0.06250.0625-0.06253.4bior3.7是双正交样条小波对应的滤波器。应用Matlab对wbarb.mat图像实现小波变换。loadwbarb;image(X);colormap(map);[cA1,cH1,cV1,cD1]=dwt2(X,'bior3.7');A1=upcoef2('a',cA1,'bior3.7',1);H1=up
7、coef2('h',cH1,'bior3.7',1);V1=upcoef2('v',cV1,'bior3.7',1);D1=upcoef2('d',cD1,'bior3.7',1);figure;colormap(map);subplot(221);image(wcodemat(A1,180));title('ApproximationA1');subplot(222);image(wcodemat(H1,255));title('HorizontalDetailH1');subplot(223);image(wcodemat(
8、V1,255));title('VerticalV1');subplot(224);image(wcodemat(D1,255));title('DiagonalD1');Y=2.0*IDWT2(A1,H1,V1,D1);Y=imresize(Y,0.5);fi