如何找到R,G,B,H,S,V值

时间:2018-05-01 09:40:31

标签: matlab image-processing rgb hsv

我有一片水稻的叶子。我想只提取稻叶的R,G,B,H,S,V值。我已经完成了分离背景和对象。但我还没有能够提取色彩空间的价值。你能帮助我吗?谢谢你。

这是我的代码:

rmat=Im(:,:,1)
gmat=Im(:,:,2);
bmat=Im(:,:,3);


subplot(2,2,1), imshow(rmat);
title('Red Plane');
subplot(2,2,2), imshow(gmat);
title('Green Plane');
subplot(2,2,3), imshow(bmat);
title('Blue Plane');
subplot(2,2,4), imshow(I);
title('Original Image');


%%levelr = 0.63;
levelg = 0.5;
levelb = 0.4;

i1=im2bw(rmat,levelr);
i2=im2bw(gmat,levelg);
i3=im2bw(bmat,levelb);
Isum = (i1&i2&i3);

我想知道例子:R = 60 B = 85 G = 125

我正在使用MATLAB。

Paddy leaf

1 个答案:

答案 0 :(得分:0)

如果Im是您的普通图像,则可能是RGB格式。因此,

rgb = Im(x,y,:)

将是一个3元素向量,包含(x,y)处像素的RGB值。

接下来,使用rgb2hsv函数将该三元组转换为HSV三元组:

hsv = rgb2hsv(rgb)

您也可以使用该功能将整个图像转换为HSV。