如何将RGB图像转换为亮度图像并将图像存储为Matlab中的.raw文件

时间:2015-07-22 14:35:18

标签: image matlab rgb luminance

我正在尝试将RGB图像转换为亮度图像并将其另存为.raw图像以在另一个软件中使用它。我使用以下代码

m = imread('20x20-alpha1-1.jpg');
out = zeros(1942,2588);
for i=1:1942
   for j=1:2588
    out(i,j) = 0.2126*m(i,j,1) + 0.7152*m(i,j,2) + 0.0722*m(i,j,3);
   end
end
fileID = fopen('20x20-alpha1-1.raw');
fwrite(fileID,out);
fclose(fileID);

但是,当我尝试使用IrfanViewer打开图像时,该文件被认为已损坏。这是我的代码中的问题吗?如果是这样,我如何将此图像转换为亮度图像并保存? 谢谢:))

1 个答案:

答案 0 :(得分:0)

在这种情况下,没有必要乱用.raw文件。写一个tiff文件:

imwrite(out,'20x20-alpha1-1.tiff','tiff')