目标跟踪的块跟踪技术(2)

OpenCV 终于由2.x升级到3.0.0了,尽管只是一个alpha版,但是带来了大量的新特性。

在目标跟踪方面,一批比较新的技术被整合进来。

OpenCV 2.x在整合新的特征描述方法、物体识别算法、gpu运算等方面可以说是相当卖力,但是对于目标跟踪,却还是停留在光流法和camshift这种十年甚至数十年前的方法上。

这次3.0终于把OAB、MIL和TLD等方法整合进来了。


OAB是发表在2006年的论文On-line Boosting and Vision的方法,其主要思想是用AdaBoost的学习方法建立一个目标分类器,用之前的跟踪结果作为训练集,每一帧都在线更新分类器,并预测下一帧中目标的位置。这是首次运用AdaBoost的方法解决目标跟踪问题的尝试。

该方法的核心是Online Boosting。Offline AdaBoost中需要根据当前分类器的分类正误情况,计算每个样本的采样权重,并用于下一轮选择弱分类器时的迭代。Online Boosting用了一个三层结构,第一层是弱分类器,第二层是由不同若分类器组合成的分类器,第三层才是最终分类器。弱分类器仍然是对当前样本的二值判断;在第二层分类器中累计之前所有样本的正确率,隐含了之前样本的效果;最终分类器根据第二层分类器的正确率进行AdaBoost。

其中第二层颇为古怪,论文似乎也没说明原因。猜想这固然有可能提高单个分类器正确率,但所有二层分类器共享相同的弱分类器似乎又缺乏明确的道理,纯粹是提高处理速度。


MIL是发表在2009年的PAMI上的论文Robust Object Tracking with Online Multiple Instance Learning的方法,它是OAB的改进版。改进之处主要是每帧增加了很多采样,不像OAB是一正四负。其实OAB也想多采样的,结果效果不太好。原因是对目标稍微偏一些的采样是否可以作为正例,OAB作者就这一问题还发了另一篇关于半监督学习的论文。MIL引入了多示例学习的方法,算是部分解决了这个问题,但是这一来boost的能量函数公式也变得相当复杂了,以致于不容易直接求解得到boost算法。所以MIL也做了一个大幅度的简化,弱分类器输出的是一个连续值而非离散值,整个MIL的boost过程不改变每个采样的权重,也不求每个弱分类器的权重alpha,alpha是由弱分类器自己的分类效果决定的。因为没有遵守boost的规定,实际上它不具备boost的理论正确性。


TLD大名鼎鼎,就不多介绍了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
覆盖保持(Coverage-preserving)是一种在软件测试中常用的技术,目的是记录程序执行过程中的覆盖信息,以评估测试的覆盖率。在覆盖保持技术中,程序执行路径中的每个基本(basic block)都被标记为已执行或未执行,从而确定是否覆盖了该基本。这种技术通常用于评估测试套件的质量和效果,并帮助发现未被测试覆盖的代码区域。 覆盖引导跟踪(Coverage-guided Tracing)是一种基于覆盖信息指导的程序追踪技术。在二进制模糊测试中,覆盖引导跟踪被广泛应用于引导和指导模糊测试过程。它通过记录程序执行的覆盖信息来引导模糊测试生成更有潜力的输入,以增加发现潜在漏洞的可能性。 覆盖引导跟踪通常具有以下特征: 1. **覆盖信息记录**:在程序执行过程中,跟踪器会监控程序的执行路径并记录已执行的基本,以及相应的分支和函数调用等信息。 2. **覆盖信息反馈**:跟踪器会根据已记录的覆盖信息,为模糊测试生成输入提供指导。通常会优先选择未被执行过的基本或分支作为测试输入的目标。 3. **迭代优化**:在模糊测试的迭代过程中,跟踪器会持续更新覆盖信息,并根据最新的覆盖情况调整测试输入,以提高测试的效果和覆盖率。 覆盖引导跟踪在二进制模糊测试中起到了至关重要的作用,它能够帮助测试人员或自动化工具更有效地发现潜在漏洞。通过结合覆盖保持技术,可以减少冗余的执行开销,提高模糊测试的效率和性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值