【论文阅读】TOMP: Transforming Model Prediction for Tracking

论文链接:https://arxiv.org/abs/2203.11192

Abstract

Optimization based tracking methods have been widely successful by integrating a target model prediction module, providing effective global reasoning by minimizing an objective function.

第一句背景介绍,当前基于优化的方法通过集成目标模型预测模块最小化目标函数以提供有效的推理取得了广泛的成功

While this inductive bias integrates valuable domain knowledge, it limits the expressivity of the tracking network.

第二句指出当前存在的问题,尽管这种归纳偏置(卷积神经网络使用卷积存在先天的归纳偏置)整合了有价值的领域知识,但也限制了跟踪网络的表现。

In this work, we therefore propose a tracker architecture employing a Transformer-based model prediction module. Transformers capture global relations with little inductive bias, allowing it to learn the prediction of more powerful target models. We further extend the model predictor to estimate a second set of weights that are applied for accurate bounding box regression. The resulting tracker relies on training and on test frame information in order to predict all weights transductively

第三部分介绍本文针对这个问题所做的工作:应用基于Transform的模型预测模块构建了一个跟踪网络。Transformer能够以极低的归纳偏置来捕捉全局信息,能够学习到更加有力的目标模型的预测。作者更进一步扩展了模型预测器,用他来估计用于准确边框回归的第二权重集合,最后得到的跟踪器依赖于训练帧和测试帧的信息来预测所有的权重。

We train the proposed tracker end-to-end and validate its performance by conducting comprehensive experiments on multiple tracking datasets. Our tracker sets a new state of the art on three benchmarks, achieving an AUC of 68.5% on the challenging LaSOT dataset.

第四部分介绍实验结果,作者以端到端的方式训练了跟踪器,并通过在多个跟踪数据集上的实验验证了他的性能。跟踪器性能在三个基准上达到了最高,并在LaSOT上达到68.5的精度。

The code and trained models are available at https://github.com/visionml/pytracking

Method

作者首先对基于优化的方法进行了简要的介绍,作者认为基于优化的方法有许多不足:1. 在计算目标模型的权重的时候不能利用当前的测试帧信息;2. 需要设置多个超参数,而这可能会导致模型在训练样本上过拟合;3. 提供给目标模型的特征只是从测试帧上简单提取的测试帧特征,而没有使用训练帧中的目标信息来增强特征。

模型的总体结构如下图所示:
在这里插入图片描述

简单流程如下
与基于优化的方法相似,本文中提出的方法也是分为train branch和test branch两个分支。先使用特征提取网络(图中是backbone)对训练帧和测试帧提取特征,然后在两组特征上分别添加embeding构成test frame encoding 和 target state encoding, 然后使用Transformer encoder同时处理这两个encoding,将输出的特征输入到Transformer decoder中预测目标模型(实际上就是一组卷积核)的权重,最后将目标模型应用在测试帧特征上得到target scores map进而可以定位目标的位置,接着使用回归网络回归目标的大小。除此之外,作者还扩展了Transformer decoder,其中除了输出目标模型的权重,还输出了一组用于回归目标大小的权重,详细的在下面介绍。

下面介绍详细流程
在这里插入图片描述

1. Target location encoding

先介绍train branch,在经过backbone得到 x i x_i xi后,作者在 x i x_i xi上加入了( ϕ ( d i ) \phi ({d_i}) ϕ(di)后面Box regression部分中会有介绍):

ψ ( y i , e f g ) = y i ⋅ e f g \psi ({y_i},{e_{fg}}) = {y_i} \cdot {e_{fg}} ψ(yi,efg)=yiefg

其中 y i ∈ R H × W × 1 {y_i} \in {{\rm{R}}^{H \times W \times 1}} yiRH×W×1是以目标位置为中心的高斯函数生成的一个分布图, e f g ∈ R 1 × C e_{fg} \in {{\rm{R}}^{1 \times C}} efgR1×C是一个embeding用来表示前景,这个是可学习的。将两者利用广播机制直接点乘,然后加到特征 x i x_i xi上:

v i = x i + ψ ( y i , e f g ) {v_i} = {x_i} + \psi ({y_i},{e_{fg}}) vi=xi+ψ(yi,efg)

x t e s t x_{test} xtest也是类似的操作,加入embeding e t e s t e_{test} etest 标记该帧为测试帧, μ ( e t e s t ) \mu ({e_{test}}) μ(etest)表示对每个特征块都重复标记。

2. Transformer econder

然后就是输入到Transformer encoder里面了,在输入之前还有一个拼接操作,先将 v i v_i vi v t e s t v_{test} vtest拉平,也就是由 H × W × C H \times W \times C H×W×C拉平为 ( H ⋅ W ) × C (H \cdot W) \times C (HW)×C,然后如图所示将他们拼接起来输入到encoder中得到输出 z i z_i zi。在这里 z i z_i zi有两个用途:一个是全部输入到后面的decoder中预测权重,另一个是将 z t e s t z_{test} ztest z i z_i zi中取出作为测试帧(经过encoder后此时已经融合了训练帧中的目标信息了)特征来预测目标位置和估计目标大小。

3. Transformer decoder

在decoder中,作者仍然使用可学习的 e f g e_{fg} efg作为query与 z i z_i zi一起输入到decoder中预测目标模型权重,这里得到的实际得到的权重有两组(后面会讲到):一组是目标模型的权重,用来对前背景进行分类进而定位目标位置;一组是用在回归网络中对输入的特征进行注意力集中以便更好的回归目标大小。

4. Target location

得到目标模型的权重 w c l s w_{cls} wcls后,直接在测试帧特征 z t e s t z_{test} ztest上进行卷积,即:\

h ( w , z t e s t ) = w ∗ z t e s t h(w,{z_{test}}) = w*{z_{test}} h(w,ztest)=wztest

这里 w ∈ R 1 × C w \in {R^{1 \times C}} wR1×C就是上述的 w c l s w_{cls} wcls,经过这一步后会得到一张target scores图,取其中最大值作为目标的中心位置。

5. Box regression

作者认为目标定位与目标大小回归是相近的任务,可以相互受益,因此作者扩展了一下模型:1. 将训练帧中目标的大小信息也加入到backbone后面的encoding中;2. 在decoder中多预测一组注意力权重用于边界框回归网络中。这多预测出来一组注意力权重 w b b r e g {w_{bbreg}} wbbreg用于调节即将输入到回归网络中的特征 z t e s t z_{test} ztest,使后面的CNN网络能够更加清晰的感知到目标。

作者估计目标大小的思想是使用回归网络预测中心点到边界框四条边的距离。作者使用“ltrb”表示图像中某一点与目标边界框之间的距离,在开始时先将特征图 x i x_i xi中的所有点根据下采样率都映射回原图中,并计算每个点到目标边界框四条边的距离,然后将其作为真实标签训练回归网络使回归网络能够根据特征图 z t e s t z_{test} ztest上的点预测其与真实目标边框四条边之间的距离。在根据target scores得到目标中心位置后,直接根据该位置查询其距离四条边界框的距离,完成目标大小的估计。

ltrb计算过程:
l i = ( k x − b i x ) / W i m , r i = ( k x − b i x − b i w ) / W i m t i = ( k y − b i y ) / H i m , b i = ( k y − b i y − b i h ) / H i m {l_i} = ({k^x} - b_i^x)/{W_{im}},{\rm{ }}{r_i} = ({k^x} - b_i^x - b_i^w)/{W_{im}}\\ {t_i} = ({k^y} - b_i^y)/{H_{im}},{\rm{ }}{b_i} = ({k^y} - b_i^y - b_i^h)/{H_{im}} li=(kxbix)/Wim,ri=(kxbixbiw)/Wimti=(kybiy)/Him,bi=(kybiybih)/Him
其中 b i = { b i x , b i y , b i w , b i h } b_{i}=\{b_{i}^{x},b_{i}^{y},b_{i}^{w},b_{i}^{h}\} bi={bix,biy,biw,bih}表示的是目标边界框

映射的计算方法:
( k x , k y ) = ( ⌊ s 2 ⌋ + s ⋅ j x , ⌊ s 2 ⌋ + s ⋅ j y ) ({k^x},{k^y}) = (\left\lfloor {\frac{s}{2}} \right\rfloor + s \cdot {j^x},\left\lfloor {\frac{s}{2}} \right\rfloor + s \cdot {j^y}) (kx,ky)=(2s+sjx,2s+sjy)
其中k表示原图像中的位置,j表示特征图中的位置,s表示下采样倍数

在开始时计算出 d = ( l , t , r , b ) d = (l,{\rm{ }}t,{\rm{ }}r,{\rm{ }}b) d=(l,t,r,b), d ∈ R H × W × 4 d \in {R^{H \times W \times 4}} dRH×W×4,注意这里H和W是特征图 x i x_i xi的高和宽,是将特征图上的所有点都映射回原图。然后使用多层感知机(MLP) ϕ ( ⋅ ) \phi (\cdot) ϕ()将其从4维映射到 C C C维,最后将其加入到 x i x_i xi中,即:

v i = x i + v ( y i , e f g ) + ϕ ( d i ) {v_i} = {x_i} + v({y_i},{e_{fg}}) + \phi ({d_i}) vi=xi+v(yi,efg)+ϕ(di)

6. Train Loss

损失函数一共分为两个部分:分类损失和尺度估计损失,其中分类损失采用的是DiMP的分类损失函数,回归损失使用GIOU损失函数,并为每个部分的损失都加上了一个贡献系数,这个是人为设定的。总损失表示如下:

L t o t = λ c l s L c l s ( y ^ , y ) + λ g i o u L g i o u ( d ^ , d ) {L_{tot}} = {\lambda _{cls}}{L_{cls}}(\widehat y,y) + {\lambda _{giou}}{L_{giou}}(\widehat d,d) Ltot=λclsLcls(y ,y)+λgiouLgiou(d ,d)

7. Online tracking

在线跟踪过程有一点不同,训练集中会有两张训练帧图像,一张是初始帧,一张是已跟踪的置信度比较高的跟踪结果。作者发现使用已跟踪的帧的特征后会提高定位的性能,但会降低回归的性能。因此作者在实际跟踪时会运行两次模型,一次是将训练集中两张图像都输入到transformer中得到目标模型的权重然后对目标进行定位;另一次是只输入初始帧图像得到回归网络的注意力权重对目标大小进行估计。不过这个过程是并行的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值