我的目标是拥有实时的 MultiTracker with Learning。
我使用卡尔曼滤波器跟踪对象,但在跟踪时发现估计错误。
该对象未被连续跟踪。我想实现一些学习机制以及跟踪。
我想到的一种方法是,
1)计算特定 roi 的平均 HSV,然后将该 HSV 值存储在一个向量(Scalar
或Vec3b
)中
2)将新的 HSV 值(来自某个 ROI 的平均值)与所有以前的 HSV 值进行比较矢量集合。3)如果新的 HSV 值与向量
中的 HSV 值
不匹配,则将其作为新的单独对象进行跟踪。
4) 否则,如果新的 roi 匹配向量中的 HSV 值
,那么就说它是 roi 中存在的同一个对象。继续跟踪旧对象。
5) 进行一些基于时间的定期检查以删除vector 中的旧 HSV 值。
我尝试过 KCF、MIL 等,它们不是实时的。你能推荐任何实时学习机制或改进上述建议的方法吗?