matlab实现图像的放大及旋转(2)

2019-08-31 13:50

a 旋转前 b 旋转后 图10 图像旋转前、后的显示效果比较

五、实验报告要求:

1、 说明利用MATLAB图像处理工具箱进行图像的加、减、乘、除处理的方法; 2、 (作业)不调用函数,自行编写代码实现二维图像的放大与旋转并记录结果图像。 提交:

① 放大(基于像素放大原理)

A=imread('C:\\Documents and Settings\\Administrator\\桌面\\matlab\\logo.tif') B=zeros(320,320) x=1.2

>> for i=1:1:round(x*107); for j=1:1:round(x*122);

B(i,j)=A(round(i/x),round(j/x)); end end

>> imshow(B)

② 旋转

A=imread('C:\\Documents and Settings\\Administrator\\桌面\\matlab\\logo.tif') y=pi/6%角度

a=zeros(107,122)%矩阵i for i=1:1:107; for j=1:1:122; a(i,j)=i;

end end

aa=zeros(107,122)%i` for i=1:1:107; for j=1:1:122;

aa(i,j)=round(i*cos(y)-j*sin(y)); end end

aa=aa+61%调整

b=zeros(107,122)%矩阵j for i=1:1:107; for j=1:1:122; b(i,j)=j; end end

bb=zeros(107,122)%j` for i=1:1:107; for j=1:1:122;

bb(i,j)=round(i*sin(y)+j*cos(y)); end end

G=zeros(153,159)%扩展画布 for i=1:1:107; for j=1:1:122; m=aa(i,j); n=bb(i,j);

G(m,n)=A(i,j); end end

%去空穴

>> for m=2:1:152; for n=2:1:158; if(G(m,n)==0)

G(m,n)=(G(m-1,n)+G(m+1,n)+G(m,n-1)+G(m,n+1))/4; end

end end

>> figure,imshow(G)

%写入:

>> imwrite(G,'C:\\Documents and Settings\\Administrator\\桌面\\matlab\\g','tif') imshow('C:\\Documents and Settings\\Administrator\\桌面\\matlab\\g.tif')


matlab实现图像的放大及旋转(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:山东版五年级品德与社会下册试题(1)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: