目标追踪算法学习记录

        在视频目标跟踪中的期望是在当前帧中正确找到跟踪的对象,因为我们已经在所有(或几乎所有)以前的帧中成功跟踪了该对象,所以我们知道对象是如何移动的。换句话说,我们知道运动模型的参数。运动模型只是一种奇特的表达方式,它会知道物体在前一帧中的位置和速度(速度+运动方向)。而如果对这个物体一无所知,则可以根据当前的运动模型来预测新的位置,从而非常接近物体的新位置。

        目标跟踪可以描述为:运动模型预测物体的大致位置。外观模型微调此估计,以便根据外观提供更准确的估计。  

        如果对象非常简单,并且没有改变它的外观,我们可以使用一个简单的模板作为外观模型并查找该模板。然而,现实生活并不那么简单。对象的外观可能会发生显著变化。为了解决这个问题,在许多现代追踪器中,这个外观模型是一个在线训练的分类器。

        分类器的任务是将图像的矩形区域分类为对象或背景。分类器接受图像区域作为输入,并返回介于0和1之间的分数,以指示图像区域包含对象的概率。如果确定图像区域是背景,则分数为0;如果确定区域是对象,则分数为1。

1、GOTURN Tracker

        Goturn是一种基于深度学习的对象跟踪算法。最初的实现是在Caffe,目前已经移植到OpenCV跟踪API。Goturn速度更快。它在caffe的gpu上以100fps的速度运行,在opencv cpu上以20fps的速度运行。

2、BOOSTING Tracker助推跟踪器

        该跟踪器基于ADaboost的在线版本,ADaboost是基于HAAR级联的人脸检测器内部使用的算法。这个分类器需要在运行时用对象的正负示例进行培训。以用户(或其他对象检测算法)提供的初始边界框为对象的正例,边界框外的许多图像部位作为背景。给定一个新的帧,分类器在前一个位置附近的每个像素上运行,并记录分类器的得分。对象的新位置是得分最大的位置。

缺点:速度较慢,并且表现不好,跟踪失败后,不能及时呈现错误报告。

3、MIL Tracker 密尔跟踪器

        这个跟踪器的概念与上面描述的BOOSTING Tracker相似。最大的区别是,它不只是将对象的当前位置视为一个正示例,还会在当前位置周围的一个小邻域中查找,以生成几个潜在的正示例。你可能认为这是一个坏主意,因为在这些“积极”的例子中,大多数的对象都不是中心。

        这就是多实例学习(mil)来拯救的地方。在mil中,您不指定正负示例,而是指定正负“bags”。正面的图像收集并非都是正面的例子。一个正面的bag包含了以对象当前位置为中心的区域,以及它周围的一个小邻域中的区域。即使被跟踪对象的当前位置不准确,当来自当前位置附近的样本放入正袋中时,很有可能该袋至少包含一个图像,并且该对象很好地居中。

优点:性能不错。它不会像助推跟踪器那样漂移,并且在部分遮挡下也能正常工作。

缺点:失败率较高。

4、KCF跟踪器

         KCF代表kernelized correlation filters。这个追踪器建立在前两个追踪器中提出的想法之上。该跟踪器利用了这样一个事实:在MIL跟踪器中使用的多个正样本具有较大的重叠区域。这些重叠的数据导致了一些很好的数学特性,这些特性被跟踪器利用,从而使跟踪速度更快、更准确。

优点:准确度和速度都比MIL跟踪器好,它报告跟踪故障比BOOSTING和MIL这两个追踪算法好。

缺点:无法从完全遮挡中恢复。

5、TLD跟踪器

         TLD代表跟踪、学习和检测。顾名思义,这个跟踪器将长期跟踪任务分解为三个组件(短期)跟踪、学习和检测。在作者的论文中,“跟踪器跟踪对象从一帧到另一帧。探测器定位到目前为止观察到的所有外观,并在必要时纠正跟踪器。学习估计检测器的错误并更新它以避免将来出现这些错误。”这个跟踪器的输出有点跳跃。例如,如果您正在跟踪一个行人,并且场景中还有其他行人,则此跟踪器有时可以临时跟踪一个与您要跟踪的行人不同的行人。在积极的一面,这条轨迹似乎是在更大的比例、运动和遮挡上跟踪一个对象。如果你有一个隐藏在另一个物体后面的视频序列,这个跟踪器可能是个不错的选择。

 优点:在多帧遮挡下效果最好。此外,跟踪最佳的超比例变化。

 缺点:很多误报使它几乎不可用。

6、MEDIANFLOW跟踪器

        在内部,这个跟踪器可以实时地跟踪物体的前后方向,并测量这两个轨迹之间的差异。最大限度地减少这种向前向后的误差,使他们能够可靠地检测跟踪故障,并在视频序列中选择可靠的轨迹。

        在测试中发现这个跟踪器在运动可预测和对象小的情况下工作得最好。与其他跟踪者不同的是,即使跟踪明显失败,跟踪者也知道跟踪何时失败。

 优点:出色的跟踪故障报告。当运动是可预测的并且没有遮挡时,效果非常好。

 缺点:大幅度运动跟踪,模型会失效。

7、MOSSE 莫斯跟踪器

        最小平方误差输出和(mosse)使用自适应相关进行对象跟踪,当使用单帧进行初始化时,可产生稳定的相关滤波器。Mosse跟踪器对光照、比例、姿势和非刚性变形的变化具有鲁棒性。对于遮挡,跟踪器能够在对象重新出现时暂停并恢复到停止的位置。

优点:速度快。

缺点:准确率不如CSRT和KCF高。

8、CSRT跟踪器

        在具有信道和空间可靠性的鉴别相关滤波器(DCF-CSR)中,我们使用空间可靠性图从帧中调整滤波器支持到所选区域的一部分进行跟踪。这样可以确保选定区域的放大和定位,并改进对非矩形区域或对象的跟踪。它只使用两个标准功能(HoGs and Colornames)。它也在相对较低的fps(25 fps)下工作,但提供了更高的目标跟踪精度。

优点:比KCR精度高。

缺点:速度较慢。

摘自公众号“OpenCV与AI深度学习”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值