MATLAB - 将RGB图像转换为灰度,但保持绿色

时间:2014-09-07 04:50:04

标签: matlab

任何MATLAB代码都可以将图像转换为灰度,但只保留图像中的绿色。

我想要的是我的输出是保持图像的绿色,其余的仍然是灰色

1 个答案:

答案 0 :(得分:0)

如果您想简单地保留图像的绿色成分,只需将图像的R和B分量设置为零即可。

为此,只需在变量my_image中加载图片,然后执行以下操作:

>> my_image = imread('lena.bmp');
>> imshow(my_image);

enter image description here

现在,

>> [x, y, z] = size(my_image);
>> my_image(:,:,1) = zeros(x,y);
>> my_image(:,:,3) = zeros(x,y);
>> imshow(my_image);

结果如下所示: enter image description here

如果您想将绿色显示为灰度,您可以执行以下操作:

>> my_image = imread('lena.bmp');
>> imshow(my_image(:,:,2));

enter image description here