【问题标题】:Saving grayscale image as it appears in jet colormap保存在喷射色彩图中出现的灰度图像
【发布时间】:2015-01-02 13:56:18
【问题描述】:

我有从光谱数据(波段分类)处理的灰度卫星图像。如果我在 imshow 中使用 jet colormap,它将显示绝对颜色映射图像。但是,如果我尝试在特定位置进行 imwrite,它会像蓝色图像一样保存。我在matlab中心看到了一个例子,但我没有得到。谁能帮我用彩色图像写我的图像。

Matlab 中心链接:http://www.mathworks.in/matlabcentral/answers/25026-saving-grayscale-image-as-it-appears-in-jet-colormap-of-imagesc

接受的答案链接是:http://www.mathworks.com/matlabcentral/fileexchange/7943

我已经尝试了很多次,这将在绘图(imshow)中显示颜色映射图像,他们没有在任何地方使用颜色映射。现在我想用颜色映射来写我的图像。

示例代码:

I= imread('image path');
imshow(I,'colormap',jet);
imwrite(I,'path','jpg');  /not working

imwrite(I,jet,'path','jpg');  /not working

请帮忙解决这个问题。

【问题讨论】:

  • 不是我想要的,而是尝试。我睡觉前的最后一条评论:)...imwrite(rgb2ind(img1,1e-2,'dither'),colormap(jet),'someImg.jpg');
  • 不工作。使用抖动>解析输入时出错

标签: image matlab image-processing octave


【解决方案1】:

当您使用imshow 时,颜色图始终会调整为图像中的值范围。 imwrite 但是,如果您使用 singledouble 数据类型,则假定您的图像的值范围为 [0,1]。在保存之前尝试将图像缩放到范围 [0,1]。

如果您在对 imwrite 的调用中提供颜色图,MATLAB 会假定您使用的是索引图像。因此,您必须首先将图像转换为索引格式。以下 sn-p 适用于我的测试图像I

% scale to [0,1]
I = I - min(I(:));
I = I ./ max(I(:));

% Create indexed image
[J,~] = gray2ind(I);

% Save image
imwrite(J,jet,'path','jpg');

【讨论】:

  • 对不起。如何为我的图像执行此操作。请举个例子!
  • 假设您有一个图像I,它可以通过减去最小值然后除以最大值轻松缩放到 [0,1]。即J = I-min(I(:)); J = J ./ max(J(:));
  • 不,我得到的输出相同。
  • 我在我的答案中添加了第二段,其中包含更多信息和一些示例代码。希望这对你有用。
【解决方案2】:

hbaderts 的解决方案对我来说效果很好,但后来我发现有些图像的缩放方式与imshow 的缩放方式略有不同。

但是,我可能会找到原始问题的原因。在 Matlab 启动后,它的默认颜色图(包括“jet”)设置为 64 色(64x3)。然后,如果显示任何带有颜色图的图像,例如如果执行imshow('cameraman.tif'), colormap('jet'),则所有默认颜色图都变为 256x3(可以在前后使用jetMap=jet; 进行验证)。然后,可能会发生使用与应用于图像图形的颜色图不同的颜色图编写的图像(例如,如果图形在 imwrite 之后调用)。

最后我找到了这个解决方案(不需要图像预缩放):

% Create indexed image, explicitly using 256 colors
imInd=gray2ind(im,256);
% Convert indexed image to RGB using 256-colors jet map
jetRGB=ind2rgb(imInd,jet(256));
% Save image
imwrite(jetRGB,'jet.png');

我使用的图片现在的色阶是一样的,保存的和图中的一样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-06
    • 2015-11-20
    • 2019-03-04
    • 2017-05-07
    • 2013-07-28
    • 1970-01-01
    • 2014-09-11
    • 2011-12-28
    相关资源
    最近更新 更多