目标跟踪《六》--- DaSiameseRPN论文笔记

目标跟踪《六》--- DaSiameseRPN论文笔记

介绍

  • 之前 trackers的缺点
  1. 之前siamese类的方法能够从non-semantic的背景中区分出前景,但是对于从semantic的背景中找出目标却经常出错,这些semantic的背景常作为干扰项.

  2. 很多的siamese似的网络并不能够更新模型,虽然这些model的速度很快,但是对于场景变化很大的情景这些trackers不是太好

  3. 最近的siamese似的网络采用的都是local search的策略,这种方法并不能够处理occlusion和out-of-view的情形.

  4. 作者在paper中提出siamFC和siamRPN训练的模型倾向于区别前景和背景,但是还没有到instance-level的水平,这是由于训练数据的 平衡导致的,这个不平衡指的是数据大部分都是里面一个目标,然后其它的基本上都不是物体而是可以作为背景的,而真实的环境中却比这复杂的多,有很多其他物体作为干扰项而存在,作者觉得应该这两种情况平衡.

  • 创新点

这个paper着重于学习到distractor-aware 的saimese networks 用于accurate 和long-term 的tracking.

  • 大致做法
  1. 分析之前siamese型的网络所用的训练数据,得到的结论是数据分布不平衡会导致学习到的特征缺乏区分性,所以在离线训练的时候,作者提出一种有效的采样的策略来控制数据分布,

  2. 一个具有distractor-aware的module来递归地学习,能够有效的将一般的任务转移到当前的video domain中.

  3. 提出一种local-to-global的tracking 策略.

  • 得出的结论
  1. non-semantic的背景和semantic的干扰项之间的不平衡是表示学习的主要的障碍

如下图所示 avator

可以看到各个网络的响应,实际要跟踪的是9号,但是穿白色的用siameseFc的时候响应依然很高.所以paper里面说高质量的训练集对于得到一个好的tracker至关重要.

Distractor-aware Training

作者在paper中提出几种策略有助于模型提升。

  • Diverse categories of positive pairs can promote the generalization ability.

作者指出在simeseFC上训练的时候,虽然数据集很大,有近4000的videos,但是positive pairs 是从同一段视频中不同的桢中取出来的,这样下来的话,有多少段视频就可以认为positive pairs的种类就有多少种,作者认为这对于一个好的跟踪器是远远不够的,作者在做的时候把coco的检测数据集也加进去了,看下图.

avator

图(a)相当于通过 augment来制作的一些正的pairs, 这些数据是来自于检测的数据集.这样做确实增加了pairs的种类(这样做感觉实际上就是让网络学习到的是一种找相似的能力),图(b)相当于是同一个类别,但是是negative pairs,这样会增加了同种类别的区分度,图(c)是不同种类别的区分.而在实际中确实对应着这三种情况.

最后作者指出这样做之后确实能够提升trackers的判别能力和回归的准确性.

  • Semantic negative pairs can improve the discriminative ability.

前面提到,作者把siamFC和siamRPN的区分能力不好的原因归于训练数据的不平衡,这个不平衡有两方面,

  1. siamFC和siamRPN用的数据中,大部分都是target与背景的区别,即图中除了target之外其它的几乎都是背景,很好分类,而这让网络学到的能力可能只是区分前景与背景的能力,而不是区别target与其它物体的能力.

  2. 来自于 intraclass distractors.

针对这些问题,作者在训练集中加入了同种类别的负pairs如上图的(b),和不同种类别的负pairs,如上图的(c),前者让网络学到的是区分同类别的,相当于是更细粒度的分类,后者是区分不同类别的,不至于当target被完全挡住或者看不见的时候随便抓一个物体认为是target.对比图如下

avator

可以看出,DaSiamRPN把背景的信息也给用上了,而之前的网络并没有考虑到这点。

  • customizing effective data augmentation for visual tracking

作者指出除了通常用到的平移,伸缩,模糊程度的变化这些aug的手段之外,还可以加上motion blur,依据是网络的shallow layers能够学习到motion pattern.

Distractor-aware Incremental Learning

上面提到的训练的策略虽然能够提高区分能力,但是对于像上面的图(a)中的依然还是很难的,因为他们太像了,siamFC和siamRPN使用csoine window去抑制干扰项,但是当物体的运动比较混乱的时候这种效果并不太好,实际上针对fast motion和background clutter的这些情况很多的trackers效果都不太好, 总而言之,主要就是由于general representation domain和 specifical target domains之间的misalignment而造成的.

回忙普通的siamese trackers的工作原理

avator

这个里面并没有干扰项的成分,作者觉得应该把干扰项的成分也给加进去,所以就有了本文提出的

avator

意思就是先有17*17*5个proposals,然后用NMS去重,分最高的那个proposal作为zt, 然后得分大于阈值h并且不是zt的都作为干扰项,然后从干扰项集D中选出top-k个作为proposals集合P,针对集合P中的每一个pk,按(2)中的方式计算其新的得分,然后在k个得分里面选取新得分最大的那个就作为选择的目标,

  • 理解式子(2)

直观上不严格的看,(2)中取最大的那个,第一项应该挺大,第二项应该较小,第一项大说明和目标zt比较相似,第二项小说明的是与其他的物体的相似度都比较低,可以分两种情况来理解,一种是不同类物体,这时候说明target的这个与其它的都不太像,另一种是同类物体,这也说明这一个和其它的区别有些大,从而说明这个就应该是目标.

然后式子(4)是一个递归的学习策略.说明把之前的桢的也利用了起来,直观上理解,之前桢中也是有许多信息供当前桢来使用的,比如之前一桢中目标还正有,也有干扰项,然后在这一桢中目标不见了,但是干扰项依然存在,那么这时候结合上一桢的情况,就会认为干扰项依然是干扰项,从而减少误跟踪的可能.

DaSiamRPN for long-term Tracking

这里作者提出了一种local-to-global的策略来做Long-term的tracking. 如图 avator

在用siameseRPN的时候发现即便是物体看不见了,但是得分依然很高,见左图的红线的700附近,但是这是不合理的,而在727桢中当目标重新出现的时候就导致了误跟踪.所以siamRPN不适合长时间的跟踪.一旦断片,跟踪就很可能失败.

而用DaSiamRPN的时候可以避免出现这种情况,至少得分是合理的,当IOU为0的时候,得分也跟着为0.然后当目标重新出现的时候,也能够继续跟踪,适合long-term.

可以看到,作者采用的方法是当跟踪失败的时候,就记下来失败了,然后在后面的桢中不断的扩大search 的region,如右图中的蓝色的框.这样当目标重新出现的时候又把它给跟踪到了,然后作者指出他们的trackers并没有用bbox 回归,这样的话速度上还是可以的.达到110fps on long-term tracking的benchmark上面.

Thoughts

  • 分析训练数据的方法值得借鉴

  • 构造新的数据来训练的方法应该能够用上,来增强泛化能力

  • local2global的方法也可以用在其他tracker上面来做long-term tracking.

  • 公式(2)中的函数或许可以改进(正在思考).

打赏,谢谢~~

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,多谢支持~

打开微信扫一扫,即可进行扫码打赏哦