imread函数在matlab中不起作用

时间:2015-06-16 19:25:33

标签: matlab image-processing matlab-figure

我是图像处理和学习matlab的新手。实际上到现在为止我已经使用了matlab云版本,可以直接上传图像并且没有任何问题。但现在我面临着在matlab离线版软件中上传图像的极端问题。

  1. 我使用"导入数据"导入图像。

  2. 然后我写了这个命令

  3.   

    h = imread(' digi1.jpg');

    1. 但我的第一行并没有说digi1不存在。

1 个答案:

答案 0 :(得分:1)

您遇到的问题来自将数据保存到MATLAB数据文件,使用.jpg扩展名重命名文件并尝试使用imread读取数据。

遗憾的是,这不起作用。您无法将数据的文件类型从.mat更改为.jpg。你所做的只是改变文件的名称。您没有更改文件的内容。更改文件扩展名和文件名并不意味着内容会发生变化。将其重命名为digi1.jpg仍会使该文件成为MATLAB MAT文件,您只能使用可以读取这些文件的软件阅读(Python,R,当然是MATLAB)。

因此,请在命令提示符中尝试使用load name.mat(这是MAT文件的名称)。这应该会为您提供已加载到工作区中的图像。无论调用哪个变量,都可以使用imwrite将图像保存到文件中。

假设图像存储在名为A的变量中,请执行以下操作:

>> load name.mat
>> imwrite(A, 'digi1.jpg');

确保name.mat位于您尝试运行上述代码的当前工作目录中。您现在应该在磁盘上保存图像。但是,如果你想保持图像的质量,我建议你使用无损的东西而不是JPG。请尝试使用PNG,因此请将图片保存为.png而不是.jpg