Matlab:Load .tif>转换bmp 256>转换bmp 24位

时间:2013-05-06 12:31:03

标签: image matlab bmp 24-bit 256color

对于某些编码,我想执行以下操作:

  • 阅读.tif文件
  • 转换为256色的.bmp(从绘画中获取,在matlab中找不到它!)
  • 使用24位转换为.bmp(正常转换为.bmp为24位,这有效)

问题出在步骤2中。我需要这一步,因为它会降低图像质量,因此它会使截面颜色不那么先进。有了它,一个部分将具有相同的值,而不是4种类型的深蓝色,你用肉眼看不到。

转化发生的部分代码:

%Reads image
[XX,map] = imread('Test_Script.tif');

%Convert to 256 bmp?

%Write image first if needed
%imwrite()
%Read new image
%[ZZ,map] = imread()

%Converts to rgb 8-bit
YY=ind2rgb8(XX,map);

%writes image
imwrite(YY, map, 'Test_Script_new.bmp','bmp');

嗯,我无法弄清楚,也许你有一个想法?

1 个答案:

答案 0 :(得分:0)

尝试以下方法:

[img,map] = imread('canoe.tif');
rgb = im2uint8(ind2rgb(img,map));

%imshow(img,map)
%imshow(rgb)

imwrite(img, map, '8bpp.bmp', 'bmp')
imwrite(rgb, '24bpp.bmp', 'bmp')