Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 其它 > 资料存档
资料存档 资料存档
回复
 
主题工具 显示模式
旧 2019-12-10, 16:49   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 在MATLAB中,如何绘制图像并保存结果而不显示?

这种问题从这个问题结束的地方开始。 MATLAB具有功能强大且灵活的图像显示系统,可让您使用imshow和plot命令显示复杂图像,然后保存结果。例如:

im = imread('image.tif'); f = figure, imshow(im, 'Border', 'tight'); rectangle('Position', [100, 100, 10, 10]); print(f, '-r80', '-dtiff', 'image2.tif'); 这很好。

问题是,如果您要进行大量图像处理,那么它就会开始真正地拖拽显示您创建的每个图像-您通常只想保存它们。我知道我可以开始直接写入图像,然后保存结果。但是使用plot / rectangle / imshow非常简单,因此我希望有一个命令可以让我调用plot,imshow等,而不显示结果,然后保存显示的内容。有人知道对此有任何快速解决方案吗?

另外,一种将样条线放置到位图上的快速方法可能有效。


回答:
创建图形时,将Visibile属性设置为Off

f = figure('visible','off') 你的情况是

im = imread('image.tif'); f = figure('visible','off'), imshow(im, 'Border', 'tight'); rectangle('Position', [100, 100, 10, 10]); print(f, '-r80', '-dtiff', 'image2.tif'); 如果您想再次查看,可以

set(f,'visible','on')

更多&回答...
poster 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛禁用 表情符号
论坛启用 [IMG] 代码
论坛启用 HTML 代码



所有时间均为北京时间。现在的时间是 23:55


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.