matlab如何让调整保存图像的大小

用matlab二值化一RGB图像,原图是64*64的,直接用figure上的保存,图片变的很大,程序用了imresize函数也没反应,请教高手输出的图像如何也保存为同等大小,做数字水印用的

matlab运行得到的图像,利用copy
figure命令,然后在visio中粘贴,得到的图像有点大,如果直接用在beamer中,为了显示图像,只能使scale较小,导致图中的文本太小看不清。如果首先在matlab中的print
preview首先手动修改,就不会出现这个问题。举例如下:

t=-1:0.05:2;
i =
cos(1000*t+deg2rad(30));
plot(t,i,'b-','LineWidth',2);
grid on
axis
on
xlabel('t/s'),ylabel('i/A');

1.为了去掉白边,勾选Edit->copy
options->transparent background。

2.把Match figure screen size前面的对号去掉。

3.勾选File->Print preview->Use manual size and
position,在下面的宽度或高度框中设置合适的大小,再点击Fix aspect ratio。

4.copy
figure到visio中,打印成pdf就可插入beamer。需要注意的是,也可以在matlab中打印成pdf,但是效果没有visio做出来的好。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-24
不要直接保存figure中的图像,将二值化后的矩阵用imwrite保存。追问

如果以这个64*64大小为例,请问二值化后的imwrite函数怎么写,保存后图像的路径在什么位置,因为才接触matlab图像处理,不太懂,谢谢指教

追答

比如二值化后的矩阵是A,那么
imwrite(A,'D:\文件夹\你要取的名字,bmp')
如果不指定目录则在matlab当前工作目录中保存。
下面是例子
load trees
BW = im2bw(X,map,0.4);
figure, imshow(X,map), figure, imshow(BW)
imwrite(BW,'ds.bmp')%ds.bmp保存在当前工作目录中

本回答被提问者采纳
第2个回答  2018-03-03
用imresize改完图片大小后,直接用imwrite,就会保存在当前文件夹里,与改过的大小不变。
语句:
imwrite(A,filename.ext);%A是要保存的图片,filename是你给图片起的名,ext是你想要的文件格式。
相似回答