【目标跟踪】|atom

文章标题:《ATOM: Accurate Tracking by Overlap Maximization》
文章地址:https://arxiv.org/pdf/1811.07628.pdf
github地址:https://github.com/visionml/pytracking
CVPR2019 oral

问题

人们把专注于开发强大的分类器,但是严重忽略了准确的目标状态估计(target state estimation)(也就是包围框的回归问题)。

实际中,许多分类器采用简单的多尺度搜索方法(例如 SiamFC)来估计目标的包围框。

在这里插入图片描述
图1。将我们的方法与最先进的跟踪器进行比较。基于相关滤波器的UPDT[3]缺少明确的目标状态估计组件,而是执行蛮力多尺度搜索。因此,它不处理纵横比变化,这可能导致跟踪失败(第二行)。DaSiamRPN[42]采用包围盒回归策略来估计目标状态,但在平面外旋转、变形等情况下仍存在困难。我们的方法采用重叠预测网络,成功地处理了这些挑战,并提供了准确的包围盒预测

我们认为这种方法本质上是局限的,因为目标估计是一个很复杂的事情,需要有该目标的高层次信息(high-level knowledge)。

跟踪任务可以分解为一个分类(classification)任务和一个估计(estimation )任务。对于前者,要通过把图像区域划分为前景和背景,从而鲁棒地提供目标的粗略定位。

后者是估计目标状态,通常用一个边界框表示。

在线学习就是在第一帧获取分类器权重。捕获特定目标的特征。

本文做法

(1)包围框的预测
本文中,我们平衡了目标分类和目标估计之间的性能差距,我们引入了一个新颖的跟踪架构,由专门的目标估计和目标分类两部分组成。

受到最近的 IoU-Net 的启发,我们训练一个目标估计组件 ,来预计 “目标” 和 “估计出来的包围框” 之间的 IoU。由于原始的 IoU-Net 是特定类别的(class-specific 的),所以它对于通用目标跟踪不是非常合适,我们提出了一个新颖的架构把 target-specific 的信息融入到 IoU 的预测中。 我们用过引入一种基于调制的(modulation-based)网络组件,把 reference 的图像(也就是模板)的目标外观信息结合起来,以获得 target-specific 的 IoU 估计。这使得我们在大规模数据集上离线训练目标估计组件。在跟踪的过程中,通过把预测得到的 IoU overlap 最大化,来找到目标包围框。

(2)在线训练分类器 (用共轭梯度在线训练)
为了开发一个无缝的透明的跟踪方法,我们也重新讨论了目标分类问题,以避免不必要的复杂性。我们的目标分类组件简单且强大,由 2 22 个全连接层的网络头组成。与目标估计模块不同,分类组件是在线训练的,在受到干扰的场景下提供强鲁棒性。为了保证实时性能,我们解决了在线优化时,无法高效地梯度下降的问题。相反,采用了基于共轭梯度的策略,还演示了如何在深度学习架构中实现它。跟踪流程很简单,主要包括分类、估计、模型更新。

相关工作

基于相关滤波(correlation-based)的跟踪器得到广泛应用。但是一直以来都无法精确地估计目标(包围框)。即使要找到一个单参数的尺度因子,也是一个巨大的挑战。大多数方法都采用蛮力多尺度检测的策略,计算负担很大。因此,默认的方法是用一个单独的分类器来做状态估计。但目标分类器不是对目标状态的所有方面都敏感,例如宽度和高度。实际上,目标状态在某些方面具有不变性,可以考虑利用这个特性来提高模型的鲁棒性。我们不依赖于分类器,而是学习一个专门的目标估计组件。

跟踪要把分类和估计分开,因为分类主要用来判断某个位置目标是否存在,而对目标的状态并不敏感,目标状态在跟踪中简化为2D位置和目标框的长宽,这个是目标评价做的事,所以将跟踪框架分成两个任务模块有助于提高整体的性能。

基于CF的跟踪器可以说是一个不错的分类器,它会输出一个响应图,根据最大响应判断目标最可能存在的位置,但是这种方法不能完全估计目标的状态,比如尺度,所以尺度估计一般会使用额外的分类器进行估计。
而目标的精确估计需要大量的先验信息,因为如形变这类目标变化是难以单靠跟踪图像的信息进行估计的。

所以作者认为SiameseRPN的成功主要依赖于大量的离线训练,但是Siamese方法大部分受限于分类的性能,因为这类方法没有在线训练的过程,而CF方法是有的,所以没有在线训练
导致它不能很好的应对跟踪中的干扰,或者说相似的目标,模型更新也只能部分解决这个问题。

对于目标包围框的精确估计,是一个复杂的任务,需要有高级的先验知识。边界框依赖于目标的姿态和视角,这不能被建模为一个简单的图像变换(例如统一的图像缩放)。因此,从零开始在线学习准确的目标估计是非常具有挑战性的。最近有一些方法,通过大量的离线训练来整合先验知识。例如 SiamRPN,还有它的延伸算法,都展现了包围框回归的能力。

然而这些孪生(siamese)跟踪方法通常在目标分类问题上挣扎。 不像那些基于相关(correlation-based)的方法,跟踪由于没有做在线更新,没有明确地考虑干扰因素。虽然有的使用简单的模板更新技术,改善了一点点,但它还没有达到强大的在线学习模型的水平。所以作者提出了一个在线训练的分类器和一个离线训练的评价网络,联合起来解决目标跟踪问题,其实和检测很像了,就是一个两阶段的跟踪框架。

与孪生跟踪方法相比,我们在线学习分类模型,同时利用了大量的离线训练来进行目标估计任务。

在这里插入图片描述
在这里插入图片描述

目标分类和目标估计 任务共用同一个骨干网络,这个骨干是在 ImageNet 上预训练的 ResNet-18,然后在这里微调。

和检测任务不同,IoU模块需要针对目标而不是针对类别进行训练,作者认为IoU预测模块是一个高层语义的模块,所以仅仅使用视频第一帧训练是不合理的,所以需要离线训练得到一个泛化能力强的IoU预测模块。

难点在于IoU模块如何利用好给定目标的参考帧的信息,作者进行了很多尝试,发现Siamese的结构不错,于是就用了类似的叫做基于调制的网络来预测给定参考帧的任意目标的IoU。

分为上下两部分,上半部利用参考帧生成调制向量给下半部测试帧的网络进行调制。两支的输入特征网络都是一致的。上半部分提出的是参考帧x 0 的参考目标B 0 的特征,输出一个正数的D维的调制向量c,D对应特征层数。

而在测试帧x时,网络部分发生了变化,主干网络提出的特征后多接了一层卷积层,相应的后面pooling也变大了,之后用调制向量对特征的每一通道做了加权处理,即赋予了参考帧的信息,调制后的特征再被送给IoU预测模块g,即三个全连接层后输出IoU,那么公式表达对一个bb,B的IoU即I o U ( B ) = g ( c ( x 0 , B 0 ) ⋅ z ( x , B ) )

训练

作者使用了LaSOT和trackingNet数据集上采集的图片对,还使用了coco数据集进行数据扩增,采用了和DaSiamese类似的方法

在参考帧上,提取了目标周围的5倍大小的方形区域作为输入,测试帧则是将图片做了位置和尺度的偏移扰动来模仿跟踪场景,每一个图片对生成16个候选bb,这是由gt加上高斯噪声生成的,并且设定bb和gt最小的IoU为0.1,使用图像模糊和色彩扰动进行数据扩增,IoU最终归一化到-1和1之间。训练的时候主干网络是不更新的。

分类网络

由两层卷积层构成,主要用于粗略定位所以不需要更深的网络,说是分类网络其实更像回归,类似深度回归跟踪的思想,用卷积操作回归出一个以目标为中心的高斯label,写出函数即

在这里插入图片描述
和CF方法类似写出目标函数即
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在线跟踪

评价网络部分估计目标的位置和尺度,首先根据分类网络的置信图找到最大置信点,即粗略的候选目标区,结合上一帧的尺度生成初始bb,理论上只用一个bb就可以了,但是多多益善嘛,所以加了噪声后又生成9个,10个bb都给IoUNet预测模块利用target estimation模块计算它们的IoU数值,对每个bb,5次梯度下降迭代最大化IoU得到最优bb,最后取3个最高IoU值的bb的平均作为最终预测结果,

这里面的调制向量仅仅是第一帧计算出来的,也就是说参考帧分支仅在第一帧用,后面就不用了,参考帧就是初始化帧。

ref
https://www.bilibili.com/video/BV1H54y167rG?vd_source=74166d3ce4e663703f01426526c56fd1

https://blog.csdn.net/laizi_laizi/article/details/109455080

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值