简介
paper:Target-Aware Deep Tracking
code:XinLi-zn/TADT
这篇论文的动机是:在跟踪时,提取到的深度特征发挥的作用并不大。作者认为主要是三方面的原因造成的:
- 首先,预训练的CNN特征与目标并不相关,后者很可能不会出现在正式的训练数据中;
- 其次,预训练的CNN专注于增加类间差异,而对类内差异不敏感(如下图所示);
- 在实际跟踪一个具体目标时,只有很少的
filter
处于活动状态;
针对上面提及的这些问题,作者提出了Target-aware
跟踪器。
主要内容
如上图所示是这篇论文中TADT
跟踪器的主要框架,TADT
主要是对特征提取网络输出的深度特征进行了两方面的处理:一是找到对当前目标感兴趣的filters
,二是对当前目标大小变化敏感的filters
.其中第一个通过Ridge loss
得到,而第二个通过Rank loss
得到。
Features of pre-trained CNNs
如果将预训练好的CNN特征提取器输出的特征空间定义为
χ
\chi
χ,那么TADT
就是要对该特征空间进行“过滤”得到
χ
′
\chi^{'}
χ′,用公式描述如下:
χ ′ = φ ( χ ; Δ ) \chi^{\prime}=\varphi(\chi ; \Delta) χ′=φ(χ;Δ)
上式中
Δ
\Delta
Δ代表通道重要性(channel importance
).且通过下面式子计算channel importance
:
Δ i = G A P ( ∂ L ∂ z i ) \Delta_{i}=G_{A P}\left(\frac{\partial L}{\partial z_{i}}\right) Δi=GAP(∂zi∂L)
where G A P ( ⋅ ) GAP(·) GAP(⋅) denotes the global average pooling function, L L L is the designed loss, and z i z_i zi indicates the output feature of the i i i-th filter.
如前面所说的,这篇论文从两个方面描述一个filter
的通道重要性,一是该filter
对当前目标的敏感程度,二是该filter
对当前目标大小变化的敏感程度,下面将详细说明这两个部分的计算。
Target-Active Features via Regression
需要知道的是,一个网络在识别特定目标时,不是所有filter
都起作用,而是只有一小部分filter
被激活起作用。鉴于这个原因,这篇论文通过识别对目标区域有效而对背景区域无效的过滤器来获得具有与目标有关的信息的filters
A trained network recognizes a specific object category mainly based on a subset of these filters. For the visual tracking task, we can obtain the filters with objectness information pertaining to the target by identifying those active to the target area while inactive to the backgrounds.
因此,作者提出下面的ridge regression loss
:
L r e g = ∥ Y ( i , j ) − W ∗ X i , j ∥ 2 + λ ∥ W ∥ 2 L_{r e g}=\left\|Y(i, j)-W * X_{i, j}\right\|^{2}+\lambda\|W\|^{2} Lreg=∥Y(i,j)−W∗Xi,j∥2+λ∥W∥2
where ∗ ∗ ∗ denotes the convolution operation and W W W is the regressor weight,and X i , j X_{i,j} Xi,j is the samples in an image patch , Y ( i , j ) Y(i,j) Y(i,j) is a Gaussian label map.
对上式求
X
i
n
X_{in}
Xin的偏导(对该偏导的结果经过global average pooling function
的处理后就可以表示filter
对当前目标的敏感程度)可得:
∂ L r e g ∂ X i n = ∑ i , j ∂ L r e g ∂ X o ( i , j ) × ∂ X o ( i , j ) ∂ X i n ( i , j ) = ∑ i , j 2 ( Y ( i , j ) − X o ( i , j ) ) × W \begin{aligned} \frac{\partial L_{r e g}}{\partial X_{i n}} &=\sum_{i, j} \frac{\partial L_{r e g}}{\partial X_{o}(i, j)} \times \frac{\partial X_{o}(i, j)}{\partial X_{i n}(i, j)} \\ &=\sum_{i, j} 2\left(Y(i, j)-X_{o}(i, j)\right) \times W \end{aligned} ∂Xin∂Lreg=i,j∑∂Xo(i,j)∂Lreg×∂Xin(i,j)∂Xo(i,j)=i,j∑2(Y(i,j)−Xo(i,j))×W
where X o X_o Xo is the output prediction
Scale-Sensitive Features via Ranking(这部分不太明白)
为了衡量filter
对当前目标的敏感程度,作者使用ranking loss
:
L rank = log ( 1 + ∑ ( x i , x j ) ∈ Ω exp ( f ( x i ) − f ( x j ) ) ) L_{\text {rank }}=\log \left(1+\sum_{\left(x_{i}, x_{j}\right) \in \Omega} \exp \left(f\left(x_{i}\right)-f\left(x_{j}\right)\right)\right) Lrank =log⎝⎛1+(xi,xj)∈Ω∑exp(f(xi)−f(xj))⎠⎞
where ( x i , x j ) (x_i, x_j) (xi,xj) is a pair-wise training sample and the size of x j x_j xj is closer to the target size comparing with x i x_i xi, and f ( x ; w ) f(x;w) f(x;w) is the prediction mode.
对上式求偏导(对该偏导的结果经过global average pooling function
的处理后就可以表示filter
对当前目标大小变化的敏感程度)
∂ L r a n k ∂ x i n = ∂ L r a n k ∂ x o × ∂ x o ∂ x i n = ∂ L r a n k ∂ f ( x i n ) × W \frac{\partial L_{r a n k}}{\partial x_{i n}}=\frac{\partial L_{r a n k}}{\partial x_{o}} \times \frac{\partial x_{o}}{\partial x_{i n}}=\frac{\partial L_{r a n k}}{\partial f\left(x_{i n}\right)} \times W ∂xin∂Lrank=∂xo∂Lrank×∂xin∂xo=∂f(xin)∂Lrank×W
where W is the filter weights of the convolutional layer.
使用Target-Aware
的对比图如上图所示。
Tracking Process
初始化:特征提取器是预先训练好的,而target-aware
部分只在首帧的时候进行训练。
In initial training, the regression loss and the ranking loss parts are trained separately and we compute the gradients from each loss once the networks are converged. With the gradients, the feature generation model selects a
fixed number of the filters with the highest importance scores from the pre-trained CNN.
跟踪:在跟踪时,给定初始目标 x 1 x_1 x1和当前帧的搜索区域 z t z_t zt,预测的目标位置通过下面式子计算得到:
p ^ = arg max p χ ′ ( x 1 ) ∗ χ ′ ( z t ) \hat{p}=\arg \max _{p} \chi^{\prime}\left(x_{1}\right) * \chi^{\prime}\left(z_{t}\right) p^=argpmaxχ′(x1)∗χ′(zt)
where ∗ * ∗ denotes the convolution operation
尺度评估:简单对搜索区域进行缩放、扩大来适应目标尺度的变化
实验结果
小结
这篇论文整体来说是一篇思路非常清晰,结构很完整的文章,论文书写得很规范值得学习,提出的模型效果不错且思想也较简洁,值得一看!