2017-05-09 611 views
0

我已经改变了matlab中的图像,现在我想写它到我的文件系统。如何保存bmp图像,matlab

我的代码看起来像现在这种权利:

save('newimage.bmp', 'newimage'); 

中得到显示错误的MATLAB程序。 但是,当我尝试打开我的文件夹中保存的图片我得到的错误: “无法读取文件标题!未知的文件格式,空/损坏的文件或文件未找到!

所以我尝试了 “imwrite” - 函数: 代码:

imwrite(newimage , 'newimage.bmp'); 

,但现在我在MATLAB中得到充足的错误:

"Warning: Data loss and unexpected results may occur with signed pixel data. In imwrite (line 447) In project (line 35) Error using writebmp (line 14)

Expected X to be one of these types:

logical, uint8, single, double Instead its type was int16.

Error in imwrite (line 472) feval(fmt_s.write, data, map, filename, paramPairs{:}); "

我不能发现其中的错误。感谢提前的帮助,并为穷英语感到难过

+0

考虑阅读错误信息以找出错误;) –

回答

1

您的图像是int16类型,显然,adn bitmats不支持它。

转换图像为另一种类型使用bmp(或使用png

imwrite(im2single(newimage) , 'newimage.bmp');

imwrite(im2double(newimage) , 'newimage.bmp');

imwrite(im2uint8(newimage) , 'newimage.bmp');

取决于您的数据和所需的精度。

+0

的作品!谢谢!! – noclue123