如何在图像中更改/交换颜色?

时间:2017-04-04 04:25:37

标签: matlab image-processing

所以我有了这个形象:

I = [2 2 2 2 3 3 3;
     2 2 2 2 2 3 3;
     1 1 2 2 2 3 3;
     1 1 1 1 2 3 3;
     1 1 1 1 1 1 3;
     1 1 1 1 1 1 1;
     1 1 1 1 1 1 1];

figure, imshow(I, [], 'InitialMagnification','fit')     

RGBImage = label2rgb(I);
figure, imshow(RGBImage, 'InitialMagnification','fit');

RGBImage情节中,我的像素I==3yellow,我希望保持原样;我I==1blue,但我希望它们成为'red';我也I==2blueish-green?,但我希望它们的颜色为'blue'(原来是I==1)。

有人可以帮我解决这个问题吗?非常感谢提前。

1 个答案:

答案 0 :(得分:0)

colormap参数添加到label2rgb

I = [2 2 2 2 3 3 3;
    2 2 2 2 2 3 3;
    1 1 2 2 2 3 3;
    1 1 1 1 2 3 3;
    1 1 1 1 1 1 3;
    1 1 1 1 1 1 1;
    1 1 1 1 1 1 1];
cm = [1,0,0;0,0,1;1,1,0];
RGBImage = label2rgb(I,cm);
figure, imshow(RGBImage, 'InitialMagnification','fit');

enter image description here