设想 :
我正在尝试跟踪两个不同颜色的对象。一开始,提示用户将第一个彩色对象(例如,可能是红色)保持在相机前面的特定位置(在屏幕上用矩形标记)并按任意键,然后我的程序会占用帧的那部分(ROI) 并分析其中的颜色,以找到要跟踪的颜色。同样对于第二个对象也是如此。然后像往常一样,cv.inRange
在 HSV 颜色平面中使用函数并跟踪对象。
做了什么:
我将要跟踪的对象的 ROI 转换为 HSV 并检查色调直方图。我有两个案例如下:
(这里只有一个主要的中心峰。但在某些情况下,我得到两个这样的峰,一个是更大的峰,周围有一些像素簇,第二个峰比第一个小,但大小很大,周围也有小簇.我现在没有它的示例图像。但它几乎看起来像下面(在油漆中创建))
问题 :
How can I get best range of hue values from these histograms?
我的意思是最佳范围,可能是 ROI 中大约 80-90% 的像素位于该范围内。
还是有比这更好的方法来跟踪不同颜色的物体?