Multihypothesis Trajectory Analysis for Robust Visual Tracking

2019-10-27 14:33:49

Paperhttps://www.cv-foundation.org/openaccess/content_cvpr_2015/papers/Lee_Multihypothesis_Trajectory_Analysis_2015_CVPR_paper.pdf

Codehttp://mcl.korea.ac.kr/research/object_tracking/dylee_cvpr2015/dylee_cvpr_2015_source_code.zip

Project pagehttp://mcl.korea.ac.kr/research/object_tracking/dylee_cvpr2015/

1. Background and Motivation:

本文提出使用多个轨迹假设的方法来进行跟踪,貌似也是首次将 trajectory 引入到跟踪中。该方法可以有效地考虑前后帧之间的关联。 用多个 tracker 去跑,然后设计度量公式,去选择轨迹片段。

2. STRUCK tracker:

本节对 STRUCK 跟踪算法进行了回归。

3. MTA Tracker

作者这里通过通过对比前向跟踪结果后向跟踪结果的差异性,来判断当前前向跟踪器的结果是否可靠。此外,作者采用多个前向跟踪器来提供多个轨迹假设。通过前向和后向分析,作者选择最好的 前向跟踪轨迹来改善跟踪的精确度和鲁棒性。

3.1 Multiple Component Trackers:

作者为同一个 tracker,输入不同的 feature,从而达到得到不同跟踪轨迹的目的。三条轨迹分别使用:Haar-like feature,Color histograms,Illumination invariant feature,具体细节如下所示:

为了衡量特征向量 u 和 v 之间的相似性,我们用交叉核(intersection kernel)来组合他们,得到:

3.2 Trajectory Analysis --- Robustness Score

三个成分的跟踪器产生了三个轨迹假设。作者衡量每一个跟踪器的鲁棒性,然后选择当前时刻最优的作为最终的轨迹。

跟踪器鲁棒性得分的计算方法如下:

首先,从前些帧到当前帧,先用 tracker 进行跟踪,那么可以得到前向轨迹:

然后,在 frame t2 时刻的位置,我们初始化再初始化一个 tracker 进行后向的跟踪。后向轨迹如下:

注意到,在间隔 [t1, t2] 的最后一帧 t2,我们有 作者用后向轨迹来检查前向轨迹的可靠性,但是采用三种不同的度量方式:geometric similarity, cyclic weight, and appearance similarity。如图 2 (a)所示,几何相似性得分如下:

利用的是前向位置 和 后向位置的距离,其中分母为 500。理想的情况下,后向估计应该和前向是一致的,此时的几何相似性为 1。

接下来,我们衡量前向和后向的循环权重。由于跟踪失败情况的存在,后向传播的最终位置可能和前向的起始位置不相同。在这种情况下,两个轨迹并不能构成一个闭环。如图 2(b)所示,跟踪器 1 和 2 构成了闭环,但是 3 并没有。此外,虽然 1 和 2 都构成了闭环,但是两者的 IoU 差距还是很大的,因为 2 出现了很大的不重合。但是这可能是因为 heavy occlusion,反而 跟踪器 2 可能是成功跟踪上的。与此对比,跟踪器 3 可能就是失败的 tracker 了。

实际上,作者计算两个对应 BBox 的重合度,得到:

其中,德尔塔 里面有一个 x 的表示的是该 BBox 的面积,而有两个 BBox 的是两个 BBox 的重合面积。当该比值小于 0.3 的时候,表示前向和后向轨迹不一致。作者统计在这个短期内不匹配的次数,以检查两个轨迹是否构成一个闭环。然后,定义两个轨迹的循环权重如下:

注意到,10^6 是一个任意的大数(big number)。

此外,作者也定义了 appearance similarity 来衡量反向位置的可靠性。假设我们已经用多个 tracker 跑完了某一段,得到了前向轨迹。我们保持四个图像块,沿着前向轨迹选择的 bbox。第一帧的 bbox 是默认选择的,其他三个bbox更新用于产生最高的判别函数得分。假设 P(x) 表示 x 位置的 image patch,然后,其后向轨迹对应该图像块的 appearance similarity 可以定义为:

其中,分母中 delta 2 的平方 为 900,w 和 h 分别是 BBox 的宽和高。K 是高斯权重 mask,黑点表示 pixel-by-pixel weight multiplication。如果该指标较小,则表明:反向轨迹的 bbox 相对于以前的,快速改变了其外观,可能表明出现了 tracking error。

最终,我们组合几何相似性,循环权重,外观相似性来量化跟踪器的鲁棒性,得到:

该度量值越大,表明前向轨迹越可靠。

3.3 Tracking by Optimal Trajectory Selection.

作者为了降低计算复杂度,每间隔 $\tao$ 帧运行一次轨迹分析。然后开始计算鲁棒性得分,得到当前 frame clip 的轨迹,即:公式(11)。

3.4 Failure Handling

作者也设置了一个阈值,对多个轨迹进行分析,进行 tracking failure 的判断。

4. Experiments

==

Multihypothesis Trajectory Analysis for Robust Visual Tracking的更多相关文章

  1. Summary on Visual Tracking: Paper List, Benchmarks and Top Groups

    Summary on Visual Tracking: Paper List, Benchmarks and Top Groups 2018-07-26 10:32:15 This blog is c ...

  2. Resources in Visual Tracking

    这个应该是目前最全的Tracking相关的文章了 一.Surveyand benchmark: 1.      PAMI2014:VisualTracking_ An Experimental Sur ...

  3. Adaptive Decontamination of the Training Set: A Unified Formulation for Discriminative Visual Tracking

    Martin Danelljan 判决类追踪模型是由训练样本学习得到,但是为了适应目标和背景的变化sample set在每一帧中都会更新. 令(xjk, yjk)表示第k帧k={1,2,...,t}中 ...

  4. Survey of single-target visual tracking methods based on online learning 翻译

    基于在线学习的单目标跟踪算法调研 摘要 视觉跟踪在计算机视觉和机器人学领域是一个流行和有挑战的话题.由于多种场景下出现的目标外貌和复杂环境变量的改变,先进的跟踪框架就有必要采用在线学习的原理.本论文简 ...

  5. 论文笔记之: Hierarchical Convolutional Features for Visual Tracking

    Hierarchical Convolutional Features for Visual Tracking  ICCV 2015 摘要:跟卢湖川的那个文章一样,本文也是利用深度学习各个 layer ...

  6. 论文笔记:SiamRPN++: Evolution of Siamese Visual Tracking with Very Deep Networks

    SiamRPN++: Evolution of Siamese Visual Tracking with Very Deep Networks 2019-04-02 12:44:36 Paper:ht ...

  7. 论文笔记:Deeper and Wider Siamese Networks for Real-Time Visual Tracking

    Deeper and Wider Siamese Networks for Real-Time Visual TrackingUpdated on 2019-04-01 16:10:37 Paper ...

  8. Particle filter for visual tracking

    Kalman Filter Cons: Kalman filtering is inadequate because it is based on the unimodal Gaussian dist ...

  9. ‘Skimming-Perusal’ Tracking: A Framework for Real-Time and Robust Long-term Tracking

    ‘Skimming-Perusal’ Tracking: A Framework for Real-Time and Robust Long-term Tracking 2019-09-05 21:1 ...

随机推荐

  1. python学习之:序列类型 之列表,元组,range

    列表 列表是可变序列,通常用于存放同类项目的集合(其中精确的相似程度将根据应用而变化). class list([iterable]) 可以用多种方式构建列表: 使用一对方括号来表示空列表: [ ] ...

  2. Java中遇到Case cannot be resolved to a variable问题

    Java中遇到Case cannot be resolved to a variable问题 记录一下这两天项目中遇到的一个小问题. 在项目中遇到一个问题,一直显示   Case cannot be ...

  3. python 常用的标准库

    glob模块   提供了一个函数,用于匹配符合要求的文件: import glob list=glob.glob("*.py") #匹配当前目录下的所有匹配的文件名(包括后缀),以 ...

  4. Linux开发环境配置大全

    Linux开发环境配置 零章:通过xshell在linux上安装JDK8 壹章:通过xshell在linux上安装tomcat8 贰章:通过xshell在linux上安装mysql5.7(终极版) 叁 ...

  5. RabbitMQ的使用Demo

    rabbitmq消息队列,官网有六种,实战常用的也就如下五种. 下面开始demo讲解 大致三步:1.配置消息队列,2.生产者提供消息给队列,3.消费者监听消费队列消息 源码下载:https://pan ...

  6. Odoo定时任务(自动任务)

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826270.html  一:定时任务模型 Odoo中内置了一个定时任务模型  ir.cron ,它定义了一 ...

  7. 关于Discuz x3.3页面空白解决方法

    今天找时间分析了一下,找到了页面空白的原因,可能是因为php版本兼容性的问题所致,所以只是部分用户遇到这种情况,这里分享一下.经过分析发现是sourcefunctionfunction_core.ph ...

  8. Oracle创建视图 及 授权

    创建视图语句: CREATE VIEW GRM_PROFIT_VIEW AS SELECT ID, DEPT_CODE, DEPT_NAME, YMONTH, PROJECT_NAME, PROJEC ...

  9. 阶段性项目 ATM+购物车项目

    ATM + 购物车https://www.cnblogs.com/kermitjam/articles/10687180.html readme 内容前戏: 一个项目是如何从无到有的. 一 需求分析 ...

  10. 注解 @EnableFeignClients 工作原理

    概述在Spring cloud应用中,当我们要使用feign客户端时,一般要做以下三件事情 : 使用注解@EnableFeignClients启用feign客户端:示例 : @SpringBootAp ...