如何从阈值结果中获取颜色值?

时间:2019-06-25 04:14:57

标签: c++ opencv threshold

我在图像中设置了阈值。然后,我想获取图像的值(黑白)。我尝试使用<?xml version="1.0" encoding="utf-8"?> <js:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:j="library://ns.apache.org/royale/jewel" xmlns:html="library://ns.apache.org/royale/html" xmlns:js="library://ns.apache.org/royale/express"> <j:Card width="350"> <html:H3 text="Jewel CheckBox"/> <j:CheckBox text="Not Checkbox"/> <j:CheckBox text="Checked" selected="true"/> <j:CheckBox text="Disabled"> <j:beads> <j:Disabled/> </j:beads> </j:CheckBox> <j:CheckBox text="Checked and Disabled" selected="true"> <j:beads> <j:Disabled/> </j:beads> </j:CheckBox> </j:Card> </js:Application> ,但不能。还有另一种方法吗?

阈值结果:

Threshold Result

我设置了一个阈值来根据颜色检测物体。

我的代码:

frame_hsv.at<Vec3b>(x, y)

如果可能的话,我也想读取遮罩图像中的颜色值(黑色和彩色)。

伪造图片:

Masking Image

1 个答案:

答案 0 :(得分:0)

您可以这样做:

cvtColor(frame, frame_HSV, COLOR_BGR2HSV);
...
Vec3b hsv = frame_HSV.at<Vec3b>(x, y);
int H = hsv.val[0]; //hue
int S = hsv.val[1]; //saturation
int V = hsv.val[2]; //value