图像的几何变换编程实践.doc
文本预览下载声明
电气与自动化工程学院
图像处理与机器视 课程研究型学习
技术报告
项目名称: 图像的几何变换编程实践
学生姓名: 学号:
项目序号: 专业:
提交时间: 指导老师:
目 录
一、项目概述 1
1.实验目的与要求 1
2实验原理及知识点 1
二、程序代码 2
1.图像的缩放 2
2.图像的旋转 3
3.图像的镜像 3
4.图像平移 5
5.图像转置 6
三、讨论 7
参考文献 8
一、项目概述
1.实验目的与要求
掌握图像几何变换的基本原理,熟练掌握数字图像的缩放、旋转、平移、镜像和转置的基本原理及其MATLAB编程实现方法。
2实验原理及知识点
图像的几何变换是图像处理和图像分析的基础内容之一,它不仅提供了产生某些特殊效果图像的可能,而且可使图像处理和分析的程序简单化,特别是当图像具有一定的规律时,一个图形可以由另一个图像通过几何变换来实现。?
图像的几何变换不改变图像的像素值,而改变像素所在位置。从变换的性质分,图像的几何变换有位置变换(平移、镜像、旋转)、形状变换(比例缩放、错切)和复合变换等。?图像的位置变换主要包括图像平移变换、图像镜像变换和图像旋转变换等。
二、程序代码
1.图像的缩放
I = imread(zhaopian11.tif);%读取zhaopian11.tif
Scale = 1.35;%定义缩放大小
J1 = imresize(I, Scale, nearest); %采用最近邻插值算法缩放1.35后赋给J1
J2 = imresize(I, Scale, bilinear);%采用双线性插值算法缩放1.35后赋给J2
figure(1),imshow(I), title(原始图像);%显示原图像
figure(2); %显示缩放后图像
subplot(1,2,1), imshow(J1), title(调整后的图像——使用最近邻插值 );
subplot(1,2,2),imshow(J2), title(调整后的图像——使用双线性插值 );
图3-1
图3-2
2.图像的旋转
A = imread(zhaopian33.tif);%读取zhaopian3.jpg
Theta = 45; %定义旋转角度45
B = imrotate(A, Theta, nearest);%采用最近邻插值算法将A逆时针旋转45后给B
Theta = -45; %定义旋转角度-45
C = imrotate(A, Theta, bilinear, crop);%采用双线性插值算法将A顺时针旋转45后给C
figure(3),subplot(2,2,1),imshow(A), title(原始图像);%显示原图和旋转后图像
subplot(2,2,2),imshow(B), title(旋转的图像——使用最近邻插值 );
subplot(2,2,3),imshow(C), title( 旋转的图像——使用双线性插值 );
图3-3
3.图像的镜像
D = imread(zhaopian3.jpg);%读取zhaopian3.jpg给D
E = flipdim(D,2); %对D图像每一行进行逆序排列给E
F = flipdim(D,1); %对D图像每一列进行逆序排列给F
figure(4), subplot(1,2,1), imshow(D);%显示原图和镜像图像
subplot(1,2,2), imshow(E);title(垂直镜像);
figure(5), subplot(2,1,1), imshow(D);
subplot(2,1,2), imshow(F);title(水平镜像);
图3-4
图3-5
4.图像平移
imori=imread(zhaopian3.jpg); %读入图像
imres=imori;
[m,n]
显示全部