4

如何过滤红色色调的图像?我知道红色在 330° 和 30° 之间大约为零(在 OpenCV 中用 165 到 15 表示?)。由于在 360°(OpenCV 中为 180)存在溢出,我如何使用 InRange 方法使用该范围?

4

1 回答 1

1

我使用以下代码检测 HUE 颜色:

垫 img_hsv, dst ;
帽子>>图片;
cvtColor(图像,img_hsv,CV_RGB2HSV);
inRange(img_hsv, 标量(110, 130, 100), 标量(140, 255, 255), dst);

其中 dst 是与 img_hsv 和 CV_8U 类型大小相同的 Mat。
你的标量决定了过滤后的颜色。在我的情况下:

HUE 从 110 到 140
SAT 从 130 到 255
VAL 从 100 到 255

更多信息: OpenCV 2.4 InRange()

我不确定是否使用超出 180 范围的色调,但我认为您可以单独计算它们,然后添加生成的垫子。

于 2013-04-24T14:48:30.393 回答