matlab中figure的图像旋转
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab中figure的图像旋转相关的知识,希望对你有一定的参考价值。
figure了一个字母E,但是是逆时针旋转了90度的,怎么样才能figure一个正常的呢
1、matlab函数:B =imrotate(A,angle,method);A是原始图像,angle是旋转角度,B为旋转后的图像;使用method参数可以改变插值算法,例
如:'nearest':最邻近线性插值(Nearest-neighbor
interpolation)'bilinear':双线性插值(Bilinear
interpolation)'bicubic':双三次插值(或叫做双立方插值)(Bicubic interpolation).B =
imrotate(A,angle,method,bbox)bbox参数用于指定输出图像属性:'crop':通过对旋转后的图像B进行裁剪,保持旋转
后输出图像B的尺寸和输入图像A的尺寸一样.'loose':使输出图像足够大,以保证源图像旋转后超出图像尺寸范围的像素值没有丢失.一般上这种格
式产生的图像的尺寸都要大于源图像的尺寸。
2、举例:
a = imread( 'xxxx.bmp' );
b = imrotate( a, -5 );% 注意,如果是顺时针旋转,就是负的
imwrite( b, 'xxxx_change.bmp' );% 旋转后再保存到某个位 参考技术A I = imrotate(I,-90);
imshow(I)本回答被提问者采纳 参考技术B 用flip函数
matlab中如何将输出的figure中的图像保存在我的文档中
直接将图片另存为jpg格式或者其他格式都行 参考技术A figure图像是通过MATLAB处理数字的常用表示方法,通过图像可以清晰的看到数字简单的关系,要想保存图像以下有四种方法可供选择:1、直接另存为
在figure中使用菜单file——>saveas——>选择保存形式(fig,eps,jpeg,gif,png,bmp等),这个的缺点是另存为的图像清晰度有很大的牺牲
2、复制到剪贴板
在figure中使用菜单edit——>copy figure——>此时图像就复制到剪贴板了,我们可以借助其他软件(比如:绘图板)保存为需要的图片
3、saveas命令格式
Matlab提供直接的saveas函数可以将指定figure中的图像或者simulink中的框图进行保存,相当于【文件】中的【另存为】
% saveas(figure_handle,filename,fileformat)
plot(1:10);
saveas(gcf,‘myfig.jpg’)
复制代码
4、print函数
print函数原本不是用来进行图像保存了,而是操作打印机的,但是这里我们可以借用下
% print(figure_handle,fileformat,filename)
x=-pi:2*pi/300:pi;
y=sin(x);
plot(x,y);
%Matlab根据文件扩展名,自动保存为相应格式图片,另外路径可以是绝对也可以是相对
print(gcf,'-dpng','abc.png') %保存为png格式的图片到当前路径
复制代码
另外有网友向我反映,有时我们只有一个Matlab图像的fig文件,但没有该图像的相关坐标数据,那我们如何获取fig图像的数据呢,这个其实比较好办
1、将那个fig文件保存到Matlab的搜索路径下,双击打开它
2、在Matlab的command中输入如下内容
h=get(gcf,'chidren')
data=get(h,'xdata','ydata','zdat a')
%此时图形中所有图像的三维数据x,y,z将会以结构体的形式保存到data变量中了 参考技术B 直接选择保存格式就可以了
以上是关于matlab中figure的图像旋转的主要内容,如果未能解决你的问题,请参考以下文章