Paper : Distractor-aware Siamese Networks for Visual Object Tracking
Code : official
摘要
作者在做完SiamRPN之后,发现虽然跟踪的框已经回归地比较好了,但是响应的分数仍然相当不可靠,具体表现为在丢失目标的时候,分类的分数仍然比较高。作者认为这主要是由于以下两点造成的
- 正样本种类不够多,导致模型的泛化性能不够强
- 在之前的孪生网络训练中, 负样本过于简单,很多是没有语义信息的,只是单纯的背景
因此,作者针对这两个问题提出了DaSiamRPN,做出了以下三点贡献
- 作者发现SiamRPN学习的主要问题在于无语义信息的背景和有语义信息的干扰物体(非追踪物体的背景物体)之间的不平衡,简单来说就是负例样本对大多数太简单了
- 提出DaSiamRPN支持在训练过程中感知干扰物体,并在推断过程中抑制
- 通过引入一种简单而有效的局部到全局搜索区域策略来扩展DaSiamRPN以执行长期跟踪,该策略可以显着提高我们的跟踪器在视野外和完全遮挡挑战中的性能。
解决方案
针对正例样本对多样性不足的问题,作者将Object Detection数据集引入进来训练SiamRPN,作者通过对静态图片进行增广,包括translation, resize, grayscale 等方式生成训练正例样本对。
针对负例样本对过于简单的问题,作者引入两种负例样本对
- 有语义信息的负例样本对
- 类内干扰
作者还特别强调了数据增广的多样性,作者采用了如下数据增广方式:平移,放缩,亮度变化,运动模糊。
感知干扰的增量学习
Siam 跟踪器形式化表示为
f ( z , x ) = φ ( z ) ⊗ φ ( x ) + b ⋅ 1 f(z,x) = \varphi(z)\otimes \varphi(x)+b\cdot \mathbb 1 f(z,x)=φ(z)⊗φ(x)+b⋅1
其中, ⊗ \otimes ⊗ 表示相关操作。作者使用增量学习的方式,对DaSiamRPN给出的score map进行NMS算法,得到若干个候选框,选择其中分数最高的作为目标,其他的就是distractor了。形式化的表述为
D = { ∀ d i ∈ D , f ( z , d i ) > h ∩ d i ≠ z t } D = \{\forall d_i\in D,f(z,d_i)>h \cap d_i\not = z_t \} D={∀di∈D,f(z,di)>h∩di=zt}
其中 z t z_t zt 就是得分最高的区域。注意 D D D 表示每一帧中distractor的集合。对于之后求出的得分 top k个备选框proposal 的集合 P \mathcal P P,需要对得分进行重排,最终结果定位框为
q = arg max p k ∈ P f ( z , p k ) − α ^ ∑ i = 1 n α i f ( d i , p k ) ∑ i = 1 n α i q = \arg\max_{p_k\in \mathcal P} f(z,p_k) - \frac{\widehat \alpha \sum_{i=1}^n\alpha_i f(d_i,p_k)}{\sum_{i=1}^n\alpha_i} q=argpk∈Pmaxf(z,pk)−∑i=1nαiα ∑i=1nαif(di,pk)
直观上看,我们不止需要score map给出的得分高,而且需要和distractor不相似。因为该变换是线性变换,因此可以等价于
q = arg max p k ∈ P ( φ ( z ) − α ^ ∑ i = 1 n α i φ ( d i ) ∑ i = 1 n α i ) ⊗ φ ( p k ) q = \arg\max_{p_k\in \mathcal P} (\varphi(z) - \frac{\widehat \alpha \sum_{i=1}^n\alpha_i \varphi(d_i)}{\sum_{i=1}^n\alpha_i})\otimes \varphi(p_k) q=argpk∈Pmax(φ(z)−∑i=1nαiα ∑i=1nαiφ(di))⊗φ(pk)
使用增量学习的方式来学习目标模板和干扰模板,学习率为 β t \beta_t βt
q T + 1 = arg max p k ∈ P ( ∑ t = 1 T β t φ ( z t ) ∑ t = 1 T β t − ∑ t = 1 T β t α ^ ∑ i = 1 n α i φ ( d i , t ) ∑ t = 1 T β t ∑ i = 1 n α i ) ⊗ φ ( p k ) q_{T+1} = \arg\max_{p_k\in \mathcal P} (\frac{\sum_{t=1}^T\beta_t \varphi(z_t)}{\sum_{t=1}^T\beta_t} - \frac{\sum_{t=1}^T\beta_t \widehat \alpha \sum_{i=1}^n\alpha_i \varphi(d_{i,t})}{\sum_{t=1}^T\beta_t\sum_{i=1}^n\alpha_i})\otimes \varphi(p_k) qT+1=argpk∈Pmax(∑t=1Tβt∑t=1Tβtφ(zt)−∑t=1Tβt∑i=1nαi∑t=1Tβtα ∑i=1nαiφ(di,t))⊗φ(pk)
为了解决长时间追踪中的全遮挡和出视野问题,作者通过实验证明了DaSiamRPN的得分更能反应物体是否出现在画面中
在追踪失败时,作者采用逐渐扩大搜索区域的方式从局部到全局,当再次找到物体后就重置搜索区域范围。
实验结果
总结
这篇文章通过引入distractor的概念,极大的提高了SiamRPN的表现和性能。作者采用的解决方法并不复杂,但是切入点非常有意思,最后引用作者的一张图来描述这一算法