ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Siamese目标跟踪:PG-Net(ECCV2020)

2021-05-28 11:00:42  阅读:233  来源: 互联网

标签:right 匹配 Siamese ECCV2020 特征 PG 模板 left


论文 PG-Net: Pixel to Global Matching Network for Visual Tracking
参考文章 [Note24] PG-Net 超越互相关的Pixel to Global Matching

1.Motivation

跟踪任务中给定的模板通常较大,无法提取稳健的目标特征。直观看上去将这个模板特征区域映射回原图刚好对应目标大小(图3(a)中绿色方框),但是如果考虑感受野,实际映射在原图的区域更大(图3(a)红色方框),网络越深对应区域越大。这样就会在匹配区域中引入大量背景信息。

如图3(b),当搜索目标时会产生一系列匹配区域(即模板在搜索区域滑动时与模板大小相同的那一块搜索区域)。匹配区域太大,包含目标的匹配区域可能就不止一个,红色框应该是最佳匹配位置,但是因为匹配区域过大,周围的两个黄色框同样包含了目标,从而产生多个响应点,不管对分类还是回归都不友好。
图3

图3 较大的匹配区域对跟踪结果的影响

2.Contribution

为了解决上述问题,关键是减小匹配区域。因此,只要减小模板大小,匹配区域就会变小。最简单的方法是直接对模板进行采样,但是这样会丢失很多特征导致性能大幅下降。

作者提出PG-Net,将模板特征分解为大小为1*1的空间核和通道来减少匹配区域,同时实现了抑制背景干扰和准确采集目标区域上的响应点,即图2。

3.Method

3.1 Pixel to Global matching Module

图2

图2 模板特征分解和相似度匹配的过程。
(a)表示模板特征分别在空间维度和通道维度上进行分解。(b)解释分解核的匹配过程。

首先将模板特征按空间维度分成大小 1 ∗ 1 ∗ c 1*1*c 1∗1∗c的kernels,共 n z n_z nz​个, n z = w z ∗ h z n_z=w_z*h_z nz​=wz​∗hz​(1), w z w_z wz​、 h z h_z hz​表示模板特征的宽和高。这组kernels用 Z f S = { z f S 1 , z f S 2 , … , z f S n z } {Z_{{f_S}}} = \left\{ {z_{{f_S}}^1,z_{{f_S}}^2, \ldots ,z_{{f_S}}^{{n_z}}} \right\} ZfS​​={zfS​1​,zfS​2​,…,zfS​nz​​}, Z f s ∈ Z n z ∗ 1 ∗ 1 ∗ c {Z_{fs}} \in {\Bbb Z^{{n_z}*1*1*c}} Zfs​∈Znz​∗1∗1∗c表示,对应图2(a)中蓝色部分。另外将模板特征按通道分成 1 ∗ 1 ∗ n z 1*1*n_z 1∗1∗nz​的kernels,共c个,用 Z f C = { z f C 1 , z f C 2 , … , z f C c } {Z_{{f_C}}} = \left\{ {z_{{f_C}}^1,z_{{f_C}}^2, \ldots ,z_{{f_C}}^c} \right\} ZfC​​={zfC​1​,zfC​2​,…,zfC​c​}, Z f c ∈ Z c ∗ 1 ∗ 1 ∗ n z {Z_{fc}} \in {{\Bbb Z}^{c*1*1*{n_z}}} Zfc​∈Zc∗1∗1∗nz​表示,对应图2(a)中绿色部分。

图2 (b)中 w x {w_x} wx​、 h z {h_z} hz​表示搜索特征 X f X_f Xf​的宽和高, X f ( i , j ) {X_f}\left( {i,j} \right) Xf​(i,j)表示第j行i列的位置。首先计算其与空间核 Z f s Z_{fs} Zfs​的相似度,得到相似度图 S 1 S_1 S1​,即计算搜索特征每个像素点与空间维度模板特征的相似度。

响应值 S 1 ( i , j ) S_1^{(i,j)} S1(i,j)​中的第m个值表示 X f ( i , j ) {X_f}\left( {i,j} \right) Xf​(i,j)与 Z f Z_f Zf​的空间维度中的第m个位置之间的相似度: S 1 ( i , j ) [ m ] = x f ( i , j ) ⋅ z f S m m = 1 , 2 , … , n z , ( 2 ) S_1^{(i,j)}[m] = x_f^{(i,j)} \cdot z_{{f_S}}^m\quad m = 1,2, \ldots ,{n_z}{,(2)} S1(i,j)​[m]=xf(i,j)​⋅zfS​m​m=1,2,…,nz​,(2)然后计算与通道核 Z f c Z_{fc} Zfc​之间的相似度,相似度图 S 2 S_2 S2​由下式表示: S 2 ( i , j ) [ n ] = S 1 ( i , j ) ⋅ z f C n n = 1 , 2 , … , c , ( 3 ) S_2^{(i,j)}[n] = S_1^{(i,j)} \cdot z_{{f_C}}^n\quad n = 1,2, \ldots ,c{,(3)} S2(i,j)​[n]=S1(i,j)​⋅zfC​n​n=1,2,…,c,(3)为方便计算,将PG-Corr运算 S 2 = P G ( X f , Z f ) {S_2} = PG\left( {{X_f},{Z_f}} \right) S2​=PG(Xf​,Zf​)定义为: S 2 [ i , j , n ] = ∑ p , q , k X f [ i , j , k ] Z f [ p , q , k ] Z f [ p , q , n ] , ( 4 ) {S_2}[i,j,n] = \sum\limits_{p,q,k} {{X_f}} [i,j,k]{Z_f}[p,q,k]{Z_f}[p,q,n]{,(4)} S2​[i,j,n]=p,q,k∑​Xf​[i,j,k]Zf​[p,q,k]Zf​[p,q,n],(4)其中, S 2 S_2 S2​是PG-Corr的输出特征,大小与 X f X_f Xf​相同。

图5

图5 不同序列PGM(上面一行)和DW-Corr(下面一行)分类响应图。
a、b展示出了在复杂背景下PG-corr可以只关注目标本身而不受背景干扰,c、d展示了其对相似物的鲁棒性。

3.2 Architecture of proposed network

作者使用PG模块在SiamRPN++的基础上构建了一个跟踪器
图2

图2 跟踪器结构 ResNet50作为特征提取网络,3个PGM组成定位子网络,每个PGM输出一组分类和回归结果。PGM由PG-Corr和用于生成bbox的检测头组成。

3.3 Shared correlation architecture

图6

图6 互相关层和两个预测分支之间的不同连接方式

(a)显示了现有跟踪网络中使用的连接方法,回归和分类分支具有单独的互相关。(b)是PGM中使用的共享连接方法。回归分支和分类分支共享相同的PG-Corr,分类和回归分别从相似度图中得出。首先通过 1 ∗ 1 1*1 1∗1卷积降维,然后将搜索特征 X f X_f Xf​和模板特征 Z f Z_f Zf​输入PG-Corr,之后使用相似度特征图预测目标框。

有博主实验[Note24] PG-Net 超越互相关的Pixel to Global Matching,这样做能大幅提高速度并且精度几乎没有损失,有些模型甚至能更高。

我的理解 :
SiamCAR操作和本文类似,模板图像和搜索图像经过主干网络提取特征,提取的特征先进行DW-Corr,再进入分类回归子网。我认为分类分支、回归分支不分别进行互相关(如上图b),是因为互相关这一步骤只是利用模板特征和搜索特征,没有引入额外的参数,前面的adj层主要作用是降维,同时也不影响后续分类回归子网的参数,所以只进行一次互相关对精度影响不大。SiamRPN++互相关操作就是上图a的情况。

3.4 Multiple losses mechanism

现有的大多数方法只用相应的损失函数来约束最终特征。然而,通过融合多层特征,只有一种优化的特征很难得到完美的表现。本文提出了多重损失机制来提高跟踪性能。

如图2所示,作者将损失函数应用于骨干网络的不同阶段。每个损失函数使相应特征更加稳健,并输出更准确的回归边界框和分类分数。每个stage i的损失函数定义为: L stag e i = L c l s ( P i , P ∗ ) + λ L r e g ( B i , B ∗ ) , ( 5 ) {{\mathcal L}_{{\text{stag}}{{\text{e}}_i}}} = {{\mathcal L}_{cls}}\left( {{P_i},{P^*}} \right) + \lambda {{\mathcal L}_{reg}}\left( {{B_i},{B^*}} \right){,(5)} Lstagei​​=Lcls​(Pi​,P∗)+λLreg​(Bi​,B∗),(5)其中, P i P_i Pi​、 B i B_i Bi​分别表示对应stage i的分类可能性和预测框。 P ∗ P^* P∗and B ∗ B^* B∗ are the ground truth of classification and bounding box.
将初步跟踪结果作为最终输出并进行优化: L f u s i o n = L cls  ( P f u s i o n , P ∗ ) + λ L reg  ( B f u s i o n , B ∗ ) , ( 6 ) {\mathcal{L}_{fusion}} = {\mathcal{L}_{{\text{cls }}}}\left( {{P_{fusion}},{P^*}} \right) + \lambda {\mathcal{L}_{{\text{reg }}}}\left( {{B_{fusion}},{B^*}} \right){,(6)} Lfusion​=Lcls ​(Pfusion​,P∗)+λLreg ​(Bfusion​,B∗),(6) P f u s i o n = ∑ i δ i P i , ( 7 ) {P_{fusion}} = \sum\limits_i {{\delta _i}{P_i}}{,(7)} Pfusion​=i∑​δi​Pi​,(7) B f u s i o n = ∑ i γ i B i , ( 8 ) {B_{fusion}} = \sum\limits_i {{\gamma _i}{B_i}}{,(8)} Bfusion​=i∑​γi​Bi​,(8)其中, δ i {\delta _i} δi​、 γ i \gamma_i γi​是训练阶段自动优化的超参数。
最终损失函数如下: l o s s = L f u s i o n + ∑ i L stag e i , ( 9 ) loss = {\mathcal{L}_{fusion}} + \sum\limits_i {{\mathcal{L}_{{\text{stag}}{{\text{e}}_i}}}},(9) loss=Lfusion​+i∑​Lstagei​​,(9)

4.Experiments

消融实验

表1 不同相似度计算方法在VOT2108上的EAO

表1
实验结果表明,PG-Net更有效。多损失训练表明,在对每一阶段stage进行约束后,每一阶段的跟踪结果都有明显的提高,进一步提高了最终跟踪结果的准确性。Output指使用融合特征进行目标跟踪。

对比实验

表2 VOT2018

表2

表3 VOT2018-LT

表3

图8 LaSOT

图8

图9 OTB2015

图9

5.Conclusion

PG-corr之所以有效就是因为把模板特征变成了 1 ∗ 1 1*1 1∗1的核,这样匹配区域也就只有一个 1 ∗ 1 1*1 1∗1大小,包含的背景信息大大减少。空间核关注模板每个区域的信息,而通道核更关注模板整体的信息。

标签:right,匹配,Siamese,ECCV2020,特征,PG,模板,left
来源: https://blog.csdn.net/cheetah_buyu/article/details/117078815

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有