凌绝顶 发表于 2010-11-3 20:42

imwrite的具体用法

imwrite(A,filename,fmt),其中A指的是什么?

zhouyang664 发表于 2010-11-3 21:11

原图:



= imread('A.jpg') ;
imwrite(A, 'B.jpg', 'jpg')      ;

B图如下:


凌绝顶 发表于 2010-11-3 21:14

回复 zhouyang664 的帖子

我要是用matlab做了一个图figure 1,那怎么样用imwrite保存图片?
imwrite(figure 1,'fig.eps','eps')?

zhouyang664 发表于 2010-11-3 21:18

本帖最后由 zhouyang664 于 2010-11-3 21:20 编辑

那应该用saveas吧?
h = figure(....)                   ;
saveas(h, 'figure.eps', 'eps') ;

凌绝顶 发表于 2010-11-3 21:44

回复 zhouyang664 的帖子

如何循环保存图片?
for ii=1:5
h(ii)=figure(ii);
saveas(h(ii),'fig.jpg','jpg')
end
如何将图片命名为不同的名称?

zhouyang664 发表于 2010-11-3 22:00

h = zeros(1, 5) ;
forii = 1 : 5
    h(ii) = figure(ii)                               ;
    name = strcat('fig', num2str(ii), '.jpg') ;
    saveas( h(ii), name, 'jpg')               ;
end

凌绝顶 发表于 2010-11-3 22:02

回复 zhouyang664 的帖子

你真厉害!thank you very much!

zhouyang664 发表于 2010-11-3 22:16

回复 凌绝顶 的帖子

我也只是8月才开始学的,你也可以这样的,好好学吧!

凌绝顶 发表于 2010-11-3 22:39

回复 zhouyang664 的帖子

对于MATLAB我是需要什么才学什么,没有系统地学过,看来得系统地学一学了。

凌绝顶 发表于 2010-11-3 22:46

回复 zhouyang664 的帖子

在图形编辑界面点另存为与用命令saveas两者有什么区别?

zhouyang664 发表于 2010-11-3 23:19

应该没有区别吧,saveas命令提供一种命令存储方式,方便在程序中使用!

凌绝顶 发表于 2010-11-4 07:53

zhouyang664 发表于 2010-11-3 23:19 static/image/common/back.gif
应该没有区别吧,saveas命令提供一种命令存储方式,方便在程序中使用!

据我发现,他们是有区别的。用saveas保存图片就解决了我上篇帖子说的空白页边距的问题。但是用另存为保存的图片的页边距很大。这是为什么?我不清楚。而且另存为保存文件的格式选择性很有限。

qibbxxt 发表于 2010-11-4 08:38

1.保存图形可以也可以用print
2.循环保存关键是图形的名字要变化,名字是字符串,可以用sprintf来操作

appleseed05 发表于 2010-11-5 23:48

回复 zhouyang664 的帖子

也可以这样
forii = 1 : 5
    saveas(gcf,['fig' num2str(ii)],'jpg');
end

appleseed05 发表于 2010-11-5 23:51

回复 凌绝顶 的帖子

个人理解,这个应该是这样的,当你点击另存为的时候保存的图片就是你的fig窗口看到的。但是如果你用saveas那么matlab肯定有默认参数保存图片,如大小,边距,dpi等
页: [1] 2
查看完整版本: imwrite的具体用法