如何保存bmp图像,matlab

如何保存bmp图像,matlab,matlab,Matlab,我已经在matlab中修改了一个图像,现在我想把它写入我的文件系统 我的代码现在看起来像这样: save('newimage.bmp', 'newimage'); 在matlab程序中,不会显示任何错误。 但是,当我尝试打开文件夹中保存的图片时,出现错误: 无法读取文件头!文件格式未知、文件为空/已损坏或未找到文件 所以我尝试了“imwrite”功能: 代码: 但是现在我在matlab中遇到了很多错误: 警告:有符号像素可能会导致数据丢失和意外结果 数据。imwrite(第447行)中的项目

我已经在matlab中修改了一个图像,现在我想把它写入我的文件系统

我的代码现在看起来像这样:

save('newimage.bmp', 'newimage'); 
在matlab程序中,不会显示任何错误。 但是,当我尝试打开文件夹中保存的图片时,出现错误: 无法读取文件头!文件格式未知、文件为空/已损坏或未找到文件

所以我尝试了“imwrite”功能: 代码:

但是现在我在matlab中遇到了很多错误:

警告:有符号像素可能会导致数据丢失和意外结果 数据。imwrite(第447行)中的项目(第35行)错误使用 writebmp(第14行)

预期X为以下类型之一:

逻辑,uint8,单,双,而它的类型是int16

imwrite(第472行)feval(fmt_.write、数据、映射、文件名、, 参数对{:})


我找不到错误。提前感谢您的帮助,并对您的英语水平低下表示歉意

您的图像是int16类型的,而且bitmats显然不支持该类型

将图像转换为其他类型以使用
bmp
(或使用
png

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

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

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


取决于您的数据和期望的精度

考虑阅读错误消息以查找错误;)
imwrite(newimage , 'newimage.bmp');