我想检测图像中的红色物体。我将RGB img转换为HSV。所以为了知道我在这个网站上使用颜色托盘的红色范围 https://alloyui.com/examples/color-picker/hsv 我发现H(Hue)在0到10之间作为下限,340到359作为上限。我也发现S(饱和度)和V(值)的最大值是100.但问题是我发现有些人说红色H:0到10的范围是下限,160到180是超限。 https://solarianprogrammer.com/2015/05/08/detect-red-circles-image-using-opencv/ OpenCV better detection of red color? 他们也说最大S和V是255。This is color i got when i tried to find the upper limit of the red
答案 0 :(得分:1)
HSV有不同的定义,因此您的特定转换函数给出的值是您应该使用的值。测量它们是确定的最佳方式。
原则上H是一个角度,因此它从0到360,红色以0为中心(并且理解360 == 0)。但是有些实现会将它除以2以使其适合8位。其他人则为8位扩展到0-255的全部范围。
对于S和V也是如此。有时它们的值在0到100之间,有时它们会达到255.
要进行测量,请创建一个具有纯红色像素(RGB值255,0,0)和转换的图像。这将给出红色色调(H)和最大饱和度(S)的中心。然后制作一个从橙色变为紫色的图像,这些颜色接近红色。然后你应该看到H的范围。最后,制作一个纯白色的图像(255,255,255)。这将具有最大强度(V)。