《计算机图像处理二》由会员分享,可在线阅读,更多相关《计算机图像处理二(5页珍藏版)》请在金锄头文库上搜索。
1、西南大学 工程技术学院学生实验报告姓名蒋安祥学号222015322092089班级2年级/专业电气工程及其自动化实验日期2017/6/10实验学时3同组人实验成绩(五级记分)指导教师签字年月日课程名称:计算机图像处理实验名称:实验二 图像变换实验一、实验目的(1)了解图像频域变换和几何变换的目的和意义。(2)掌握MATLAB中常用的图像频域变换、几何变换函数的使用方法。(3)掌握图像傅里叶变换、离散余弦变换的算法原理。(4)掌握图像位置变换、形状变换和复合变换的算法原理。(5)了解图像频域变换和空间变换的基本应用。二、实验内容(包括源程序和程序运行结果)(1)将图像saturn.png进行ff
2、t变换,并将频谱进行频率位移,移到窗口中央,并显示出频率变换后的频谱图,再进行反变换,显示图像。源程序:clc,clear;close all;RGB=imread(saturn.png);I0=rgb2gray(RGB); %转换为灰度图像I=imresize(I0,1/2); %缩小figure(1);subplot(2,2,1),imshow(I),title(原始灰度图像);J1=fft2(I); %二维fft变换subplot(2,2,2),imshow(log(1+abs(J1),),title(频谱);J2=fftshift(J1);subplot(2,2,3),imshow(l
3、og(1+abs(J2),),title(频率移位);K=ifft2(J2); %反变换subplot(2,2,4),imshow(K,),title(反变换);程序运行结果:(2)将图像saturn.png顺时针旋转45o、90o、135o、180o, 然后计算其FFT,并显示变换前后的频谱图。源程序: clc,clear;close all;RGB=imread(saturn.png);I0=rgb2gray(RGB); %转换为灰度图像I=imresize(I0,1/3); %缩小for k=1:4 A=imrotate(I,-45*k); figure(k); subplot(1,2,
4、1),imshow(A); J=fftshift(fft2(A); subplot(1,2,2),imshow(log(1+abs(J),);end程序运行结果:旋转45: 旋转90:旋转135: 旋转180(3)分别用函数flipdim和函数imresize实现任意图像的镜像变换和大小缩放变换。源程序: clc,clear;close all;RGB=imread(saturn.png);I0=rgb2gray(RGB); %原始灰度图figure(1),imshow(I0),title(原始图像);I=double(I0);I1=imresize(I,0.25);figure(2);ims
5、how(uint8(I1),title(缩小4倍);R1=flip(I1,1);R2=flip(I1,2);R3=flip(R2,1);figure(3);subplot(221);imshow(uint8(I1),title(原始图像);subplot(222);imshow(uint8(R1),title(水平镜像);subplot(223);imshow(uint8(R2),title(垂直镜像);subplot(224);imshow(uint8(R3),title(对角镜像);程序运行结果:(4)对图像pout.tif进行离散余弦变换,舍去小于的10系数,然后做反变换,并显示变换前后
6、的图像。源程序: clc,clear;close all;P=imread(pout.tif); subplot(2,2,1),imshow(P),title(原始灰度图像);J=dct2(P); %离散余弦变换subplot(2,2,2);imshow(log(1+abs(J),title(dct变换后的图像图);J1=idct2(J);subplot(2,2,3),imshow(J1,),title(直接反变换的图像)J(abs(J)10)=0; %舍去一部分J2=idct2(J); %舍去小于十后的反变换subplot(2,2,4),imshow(J2,),title(舍去小于十后的反变换);程序运行结果:三、实验总结与建议 通过这次实验,了解了如何对图像频域变换和几何变换的简易操作。掌握了运用MATLAB进行常用的图像频域变换、几何变换函数的使用方法。理解了图像傅里叶变换、离散余弦变换的算法原理和图像位置变换、形状变换和复合变换的算法原理。对图像频域变换和空间变换的应用更加熟练。注: A4纸单面打印 第5页