【问题标题】:Matlab create image from array and save without displayingMatlab从数组创建图像并保存而不显示
【发布时间】:2015-08-09 05:57:43
【问题描述】:

抱歉,如果这是一个骗局,我已经搜索了一个多小时,但搜索词都非常广泛,我只是不断得到相同的结果。此外,我对 matlab 还很陌生,如有任何误解,我深表歉意。

Anywho,我有一个 matlab 程序,它需要经常保存从矩阵生成的图像,但如果不先显示它,我就是不知道该怎么做。基本上我陷入了两个函数之间,imageimwrite,两者都只完成了我想要的一半。

image 能够获取我的矩阵并创建所需的输出,但它只是将其显示到图形窗口

imwrite 能够将图像保存到文件而不显示它,但是图像完全错误,我找不到任何可以修复它的参数。

我见过的其他问题涉及使用 imread 和管理数字和东西,但我只是在做(例如)

matrix = rand(20);
colormap(winter);
image(matrix, 'CDataMapping', 'scaled');

matrix = rand(20);
imwrite(matrix, winter(256), 'filename.png');

有什么方法可以调用image 函数,使其不显示图形窗口然后保存到文件中?类似于在 matplotlib 中调用 imshow 然后 savefig

【问题讨论】:

    标签: image matlab


    【解决方案1】:

    这样做:

    matrix = rand(20);
    f = figure('visible', 'off');
    colormap(winter);
    image(matrix, 'CDataMapping', 'scaled');
    print(f, '-dpng', 'filename.png');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-01
      • 1970-01-01
      • 2012-06-16
      • 2013-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多