使用opencv在受控环境中进行视频跟踪的跟踪标记和跟踪算法选择
Tracking marker and tracking algorithm choice for video tracking in a controlled environment using opencv
我需要视频中两个对象的xy水平投影。我可以完全控制环境,所以我把相机放在顶部的中心。(我对视频本身不感兴趣,但从视频中我还获得了将轨道校准到适当单位的措施(。
我正在考虑使用 opencv 中实现的跟踪算法之一。我一直在和他们一起玩,用示例视频运行示例代码,并且工作得很好。
我的第一个也是非常主要的问题是: 鉴于我可以自由选择,我可以使用的最佳标记是什么?我在想明亮的LED很可能是最简单的。但我不确定这种算法是否可能更适合复杂的形状或具有更多特征的对象。二维码能更好地工作吗?标记会移动和倾斜,这就是我不确定的原因。灯光听起来不错,而且对倾斜相当坚固。
第二个问题,实际上可能与第一个问题相互依赖,是: 此方案的最佳跟踪算法是什么? 我在网上读了一点。对可用跟踪方法的一个非常好的总结是我认为应该使用 KCF 跟踪器的地方 https://www.learnopencv.com/object-tracking-using-opencv-cpp-python/。但是,我还没有深入研究算法,我认为我可能使用了不兼容的想法:比如,跟踪颜色可能很简单,只需通过一些颜色过滤并根据速度使用一些预测等就可以完成。但也许这种检测许多特征的算法在光下并不真正有效。
所以,再一次,我想这个问题可以重新表述为:在我的特定场景中,最好的标记/跟踪算法组合是什么?
这些跟踪算法用于跟踪复杂的模式,例如视频中的一张脸,其中光线发生变化,头部方向也在变化。如果在应用程序中,您可以使用颜色或光线来唯一地标记对象,那么这将是最快和最简单的算法。如果需要非常精确的定位,那么需要考虑使用标记,原因是标记允许子像素定位。
- 如何使用默认参数等选择模板专业化
- 如何(从固定列表中)选择一个数字序列,该序列将与目标数字相加
- 选择要调用的构造函数
- C++选择排序算法中的逻辑错误
- QTreeView幻灯片多选后无法使用单击选择
- 无法获取菜单选择以运行函数.C++
- Qt C++静态thread_local QNetworkAccessManager是线程应用程序的好选择吗
- 光线跟踪器灯光反射错误
- 在C++中,如何通过几种类型从元组中选择多个元素
- 人脸跟踪arduino代码的优化
- 讨论 - 创建矩阵时的数组与向量的向量 - 什么是最实用的选择
- 对可变参数使用声明.如何选择正确的功能
- 跟踪滚动条上的鼠标事件
- 选择选举获胜者的程序
- 如何使用新运算符跟踪在循环中创建的 QLabel
- 如何选择在 csv 文件中输出的位置
- 根据用户回答声明"Players"。用户选择玩家数量。播放器是结构体
- 使用opencv在受控环境中进行视频跟踪的跟踪标记和跟踪算法选择
- OpenCV:无法从 contrib 存储库中找到模块(跟踪器,选择ROI)
- 跟踪选择排序中的交换和比较次数