MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   在MATLAB中,如何绘制图像并保存结果而不显示? (https://www.labfans.com/bbs/showthread.php?t=22697)

poster 2019-12-10 16:49

在MATLAB中,如何绘制图像并保存结果而不显示?
 
这种问题从[URL="https://stackoverflow.com/questions/575475/how-can-i-save-an-altered-image-in-matlab"]这个问题[/URL]结束的地方开始。 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等,而不显示结果,然后保存显示的内容。有人知道对此有任何快速解决方案吗?

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


回答:
创建图形时,将[I]Visibile[/I]属性设置为[I]Off[/I] 。

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')

[url=https://stackoverflow.com/questions/963674]更多&回答...[/url]


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

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