使用opencv

时间:2018-06-07 13:12:27

标签: c++ opencv image-processing video-processing video-tracking

我需要视频中两个对象的xy水平投影。我完全控制了环境,所以我把相机放在上面。 (我对视频本身不感兴趣,但从视频中我也得到了将音轨校准到适当单位的措施。)

我正在考虑在opencv中使用其中一个实现的跟踪算法。我一直在玩他们用示例代码运行示例代码并且工作得非常好。

我的第一个也是非常主要的问题是: 鉴于我可以自由选择,我可以使用的最佳标记是什么?我认为明亮的LED很可能是最容易的。但我不确定这种算法可能更适用于复杂形状或具有更多功能的对象。二维码可以更好地运作吗?标记会移动和倾斜,这就是我不确定的原因。灯光听起来不错,而且非常坚固。

第二个问题,实际上可能与第一个问题相互依赖,是: 这种情况的最佳跟踪算法是什么? 我在网上看了一下。可用的跟踪方法的一个非常好的摘要是https://www.learnopencv.com/object-tracking-using-opencv-cpp-python/,我认为我应该使用KCF跟踪器。但是,我还没有深入研究算法,我想我可能会使用不兼容的想法:比如,跟踪颜色可能只是通过一些颜色过滤并基于速度来完成使用一些预测等等。但也许这种检测许多功能的算法在光线下不能很好地工作。

所以,我想这个问题可能会被重新表述为:在我的特定场景中,最佳标记/跟踪算法组合是什么?

1 个答案:

答案 0 :(得分:1)

这些跟踪算法用于跟踪复杂模式,例如视频中的面部变化,以及头部方向的变化。如果你在应用程序中你可以使用颜色或光来唯一地标记你的对象,那么这将是最快的算法和最简单的算法。如果你需要非常精确的定位,那么你需要考虑使用标记,原因是标记允许子像素定位。