Как отличить цвет HSV от RGB в OpenCV?

Я хочу сделать программу, которая отслеживает положение ручки со светодиодом, перемещает мышь и щелкает. Для этого я использую RGB LED и OpenCV с C ++. Тем не менее, для любого из 3 цветов я просто получаю 87,955 грн. Как я могу их отличить?

1

Решение

Лучше преобразовать цветовое пространство hsv, если вы делаете цветовую сегментацию, так как она не влияет на яркость и изменение освещенности,

Вы можете использовать цветовую гамму, как

    cvtColor(src, hsv, CV_BGR2HSV);
inRange(hsv,Scalar(0,50,40), Scalar(10,255,255),thr1); //upper red range of hue cylinder
inRange(hsv,Scalar(165,50,40), Scalar(179,255,255),thr2);// lower red range of hue cylinder
thr1+=thr2; // Red pixels.

Также смотрите цвет hsv-wheel Вот который поможет вам получить точную цветовую гамму в HSV для конкретного цвета

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]