matlab 图像几何变换+答案
更新时间:2024-04-19 09:37:01 阅读量: 综合文库 文档下载
- matlab安装教程推荐度:
- 相关推荐
实验四:图像几何变换(编程 报告) 一、 实验目的
(1) 学习几种常见的图像几何变换,并通过实验体会几何变换的效果;
(2) 掌握图像平移、剪切、缩放、旋转、镜像、错切等几何变换的算法原理及编程实现
(3) 掌握matlab编程环境中基本的图像处理函数 (4) 掌握图像的复合变换 二、 涉及知识点
(1) 图像几何变换不改变图像像素的值,只改变像素所在的几何位置 (2) 图像裁剪imcrop函数,语法格式为:
B=imcrop(A);交互式用鼠标选取区域进行剪切
B=imcrop(A,[left top right bottom]);针对指定的区域[left top right bottom]进行剪切
(3) 图像缩放imresize函数,语法格式为: B = imresize(A,m,method)
这里参数method用于指定插值的方法,可选用的值为'nearest'(最邻近法),'bilinear'(双线性插值),'bicubic'(双三次插值),默认为'nearest'。 B = imresize(A,m,method)返回原图A的m倍放大的图像(m小于1时效果是缩小)。
(4) 图像旋转imrotate函数,语法格式为: B = imrotate(A,angle,’crop’),参数crop用于指定裁剪旋转后超出图像的部分。 三、实验内容
(1) 将图像hehua.bmp裁剪成200X200大小
(2) 制作动画,将一幅图像逐渐向左上角平移移出图像区域,空白的地方用白色
填充
(3) 利用剪切图像函数制作动画
(4) 将图像分别放大1.5倍和缩小0.8倍,插值方法使用双线性插值法,分别显
示图像。
(5) 将图像水平镜像,再顺时针旋转45度,显示旋转后的图像。
(6) 将图像分别进行水平方向30度错切,垂直方向45度错切,分别显示结果 四、 实验环境
Windows下matlab编程环境 五、 实验源代码及结果
1. f=imread('hehua.bmp');
figure; imshow(f); title('原图');
f2=imcrop(f,[50,50,250,250]); figure;
imshow(uint8(f2)); title('裁剪后');
imwrite(f2,'d:/5/hehua1.bmp');
2. f=imread('hehua1.bmp');
[m,n,x]=size(f); f=double(f); for i=1:10 mx=10*i; my=10*i;
g=zeros(m,n,x)+255;
%g(mx+1:m,my+1:n,1:x)=f(1:m-mx,1:n-my ,1:x); g(1:m-mx,1:n-my ,1:x)=f(mx+1:m,my+1:n,1:x); figure;
imshow(uint8(g)); end
3. f=imread('hehua1.bmp');
[m,n]=size(f); for i=50:10:200 m=i; n=i;
f2=imcrop(f,[n,n,m,m]); figure;
imshow(uint8(f2)); end
4. f=imread('hehua1.bmp');
figure; imshow(f); title('原图'); f=double(f);
f1=imresize(f,1.5,'bilinear'); figure;
imshow(uint8(f1)); title('放大1.5倍');
f2=imresize(f,0.8,'bilinear'); figure;
imshow(uint8(f2)); title('缩小0.8倍');
5. f=imread('hehua1.bmp');
subplot(131); imshow(f); title('原图'); [m,n,x]=size(f); g=zeros(m,n,x); for i=1:m for j=1:n
for k=1:x
g(i,j,k)=f(i,n-j+1,k); end end
end
subplot(132); imshow(uint8(g)); title('水平镜像');
f2=imrotate(g,45,'crop'); subplot(133);
imshow(uint8(f2));
title('顺时针旋转45度');
6. f=imread('hehua1.bmp');
subplot(131); imshow(f); title('原图'); h=size(f);
f1=zeros(h(1)+round(h(2)*tan(pi/6)),h(2),h(3)); for m=1:h(1) for n=1:h(2)
f1(m+round(n*tan(pi/6)),n,1:h(3))=f(m,n,1:h(3)); end end
subplot(132);
imshow(uint8(f1)); title('水平30度');
f2=zeros(h(1),h(2)+round(h(2)*tan(pi/4)),h(3)); for m=1:h(1) for n=1:h(2)
f2(m,n+round(m*tan(pi/4)),1:h(3))=f(m,n,1:h(3)); end end
subplot(133);
imshow(uint8(f2)); title('垂直45度');
六、
心得体会
正在阅读:
matlab 图像几何变换+答案04-19
CFG桩施工中常见的问题-质量控制措施及应注意的质量问题04-18
国际金融习题10-16
XX办事处关于民营经济发展工作的情况汇报09-09
乱斗西游2小白龙阵容搭配攻略详解07-25
申论80分以上06-25
中国历代疆域变迁史(含东亚中亚西亚南亚)04-04
三峡:无法告别 南香红10-23
初中课程基础整合与拓展训练05-01
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 几何
- 变换
- 图像
- 答案
- matlab
- 浅谈招标过程中易出现的问题及处理方式
- 2014年高一12月份化学月考试卷
- 上海2013届高三理科最新数学试题精选函数及其应用
- 新华书店携手拉卡拉开店宝实现传统企业转型
- 劳动和社会保障法试题2
- 织雀教育测试用例评审有效性的44个衡量标准
- 浮头式换热器E201设计
- 基于浙大中控JX-300X
- 外科手术部位感染预防与控制技术指南(试行)
- 2014年滨州中考思品模拟试题(七) 3
- 食品化学复习资料
- 参观幼儿园心得体会
- 1《计算比赛场次》
- 从“愚昧”到“科学”:科学技术简史
- 农三师四十八团1500亩优质红枣基地建设
- 小技巧多种方法让网络共享资源自动映射
- 333教育综合真题
- IDC考试试题
- 新教科版一年级品德与生活上册期中测试卷及答案
- 大气物理学教学大纲