点击我爱计算机视觉标星,更快获取CVML新技术


本文为52CV群友Mr.Chen投稿,深入解读了CVPR 2019 跟踪方向的论文Deeper and Wider Siamese Networks for Real-Time Visual Tracking,谷歌学术显示该文公开一年来已有47个引用,值得做相关方向的同学参考。

论文:

Deeper and Wider Siamese Networks for Real-Time Visual Tracking

paper:https://arxiv.org/pdf/1901.01660.pdf

代码:https://github.com/researchmm/SiamDW

作者从机理上解释了为什么Siamese系列的跟踪网络用的最多的仍然是AlexNet,而没有用如今更强的backbone,诸如ResNet、Inception等深层网络。

通过大量的试验对比,作者发现了几个因素对深层网络的跟踪性能影响很大:感受野 the receptive field、网络步长network stride、有无padding 以及最后输出层的尺寸 output feature size。

作者进一步分析实验结果,从网络结构的角度总结了Siamese 网路设计时应该遵循的原则。依据设计原则,在传统深层网络的基础上引入了CIR模块以及CIR-D模块,提高了模型跟踪的鲁棒性和精度,在VOT-15、VOT-16上取得了SOTA的效果。

背景&动机

在目标跟踪中Siamese networks 以其均衡的精度和速度受到了广泛的关注。然而,Siamese trackers中的backbone networks使用了相对较浅的网络模型,例如AlexNet。

为此,作者尝试了使用深层的如ResNet和Inception直接替换原有的backbone networks,但奇怪的是并没有带来任何改进,如图1的蓝线所示(红线是作者提出的方法)。

这是为什么?这与我们认知的深层网络有着更强大的拟合以及抽象能力,背道而驰。

出于这样的动机作者进行了深入的数据分析,发现其主要原因是:

1)随着层数的增加,最后一层神经元感受野的尺寸会增加,这导致了特征的可识别性和定位精度降低;

2)卷积网络padding操作可能会导致目标位置发生偏差(当目标处于图像边缘时候会出现)。

为了解决这些问题,作者提出了新的残差模块,以消除padding操作所带来的负面影响,同时应用这些模块,重新设计了更深、更宽的网络结构,调整了感受野的大小以及stride,提高了模型跟踪的鲁棒性以及准确性。

将改进后的backbone network应用于诸如SiamFC和SiamRPN这种轻量级的网络模型(表示为SiamFC+、SiamRPN+),最终在OTB-15、VOT-16、VOT-17数据集上都取得了不错的实验效果。

开展的工作

  • 作者对影响backbone network跟踪精度的因素做了系统的研究,并提出了Siamese 系列跟踪器设计原则。

  • 基于 no-padding残差单元,作者实现了深度更深、分支更多的Siamese trackers,并在实验中取得了不错的效果。

理论&方法

作者通过消融试验进行对比,找到了影响网络性能最可能的因素。其中网络结构是造成性能下降的直接原因,如图1以及表2所示。除了网络的结构(深度和宽度外)还包括了 步长(STR), padding(PAD), 最后一层的感受野 (RF) 以及输出特征图的尺寸(OFS)。

作者修改了 AlexNet, VGG,Inception 和ResNet的网络模型,通过对比找到了影响网络性能的相关因子。如下表1所示,其中0表示原始的RF尺寸,+和-代表在原始尺寸(87)基础上增加或者减少对应的value,Max(127)表示最大的effective RF尺寸为127。对于Inception来说RF size是一个动态范围。

对于一个包含padding操作的network原始图像的特征是从原始图像加上额外零填充区域中提取的。不同的是,对于搜索图像的特征,有些特征可能只从图像本身提取,而有些特征则是图像本身加上额外零填充的区域(例如目标在图像的边缘,则会提取到边界附近填充区域的特征)。

因此,在搜索图像中,目标对象在不同的位置上存在不一致性,使得匹配的相似度会有下降。如图2所示,当目标对象移动到图像边界时,其峰值并不能精确地指明目标所在的位置。

Guidelines

作者总结了backbone networks设计应该遵循的几个原则:

  • 最适合的stride是4或者8。

  • 最后一层感受野size应该参考exemplar image大小,effective ratio 应该是exemplar image 尺寸的60%~80%最合适。尤其是要注意最大的RF不能大于exemplar image 本身的尺寸,否则性能会有所下降。

  • 对于输出特征尺寸(OFS),可以观察到较小的尺寸(OFS 3)不利于跟踪。这是因为小的特征图缺乏对目标的空间结构描述,因此在图像相似度计算中鲁棒性较差。

  • 在设计网络体系结构时,应将网络步长、感受野和输出特征图尺寸当作为一个整体来考虑,如果一个因素改变了其他的因素也应该有相应的变化。

  • 在backbone networks上移除掉padding操作,或者扩大 exemplar and search images尺寸,然后裁剪掉受padding操作影响的那部分。

Deeper and Wider Siamese Networks

作者设计了新的 cropping Inside residual (CIR)模块,来减少潜在的位置估计偏差。通过堆叠残差模块建立一个更深更宽的网络,关于步长以及感受野的大小按照上文提到的准则来设计。

Cropping-Inside Residual (CIR) Units

残差单元是该网络结构优化的关键部分,它由3个堆叠的卷积层以及一个绕过它们的 shortcut connection连接组成,如图3所示:

(a)和(b)是原始的残差单元以及下采样单元,(a')和(b')是作者提出的CIR和CIR-D单元。(c)和(d)是加宽的CIR unit,值得注意的是CIR-Inception用1*1的卷积代替addition操作融合了两个分支的特征。

而CIR-Next中将瓶颈层划分成了32个分支,并通过addition操作将他们融合。图3中蓝色模块是不同于original部分。字母'p'和's'表示padding和stride的尺寸。

Network Architectures

通过叠加图3的CIR单元,可以构建一个深度更深,分支更多的新型网络结构。设计网络模型需要遵循相关的原则,以保证性能的改善。

首先,确定网络stride,可以以8为步长构建三级网络,或者以4为步长构建二级网络(如表3的CIResNet-22以及CIResNet-43 )。

然后堆叠CIR unit。作者提出需要控制每一级的CIR unit数量以及下采样unit的位置。目的是确保最后一层感受野的大小在可接受范围内,即原始图像的60%-80%。

另外,随着网络深度增加,感受野的尺寸可能会超过这个范围,我们需要进一步缩小步长来控制RF在合理的范围内。

其中Deeper networks结构类似于ResNet,但具有不同的网络步长、感受野以及building blocks数量。在表3中,作者提出了四个deep cropping-inside残差网络。

包括 CIResNet-16,19, 22(stride=8) 和43,除了CIResNet-43(stride=4)外,其他都是 3 stages网络。

同时,作者使用 CIR-Inception和CIR-NeXt units构建了两种不同类型的wider network,表示为CIResInception-22 和CIResNeXt-22。

实验

作者将设计的backbone networks应用于SiamFC以及SiamRPN 两个有代表性的模型中。

Training:

作者通过ImageNet的预训练模型来初始化网络参数。在训练期间首先固定前7*7卷积层的网络权值,从后到前逐步微调其他层的网络参数。5个训练回合后,开始unfreeze每个block中固定的权重,

Testing:  

在训练后的SiamFC和SiamRPN模型上开展测试。计算第一帧目标的编码,对后续的视频序列 进行匹配。针对跟踪目标的scales变换,SiamFC在每个候选目标位置处设置了三个不同的scales 的矩形框,分别是 {1/1.0482 ,  1,  1.0482}。

Comparison with Baselines:

作者在 OTB-13, OTB-15 和VOT-17数据集上,对不同的backbone network 的SiamFC和SiamRPN做了对比,如表4所示:

可以看出作者提出的基于CIR模块改进的backbone network在跟踪精度上都要优于原始的浅层AlexNet,特别的以CIResNet-22为backbone的SiamFC模型比AlexNet在OTB-2015及VOT-17上分别提高了9.8%(AUC)以及24.4%的(EAO)。同时基于CIResNet-22的 SiamRPN也分别取得了4.4%和23.3%的性能提高。

值得注意的是当CIResNets深度从16层增加到22层时,跟踪精度得到了改进,但是当深度增加到43层时,却没有取得期望的性能。这主要有以下两方面的因素:

  • 为了控制感受野size在合理的范围内,对于层数更深的网络(43层),stride调整为4然而,步长缩小会使得相邻两个两个特征区域的感受野有较大部分重叠。因此,在目标定位方面并不如stride为8的网络精确。

  • 由于CIResNet-43只采用了2阶的网络结构,在模型总体的参数数量以及特征通道数都比CIResNet-22的更少。如上表3所示。

另一个值得一提的是虽然CIResNeXt-22模型更宽,但是相比CIRResIncep-22,和CIResNet-22来说模型的规模更小,如表3所示,效果并不占优。

Comparison to State-of-the-Art Trackers

作者进一步将设计的模型与state-of-the-art的跟踪算法进行了对比,如表5所示(其中SiamFC+以及SiamRPN+代表以CIResNet-22 作为backbone network的跟踪模型)

作者将SiamFC+ 和 SiamRPN+在VOT-15、VOT-16、VOT-17数据集上分别与State-of-the-Art Trackers进行了对比,如图4所示:

其中SiamRPN+在VOT-15与VOT-16都取得了SOTA的成绩,在VOT-17上SiamRPN+的EAO为3.01,略低于表现最好的LSART跟踪器,但是在速度上150fps要好于 LSART。与实时跟踪器相比,SiamRPN+在准确性和鲁棒性方面排名第一。

总结

Siamese系列 trackers是基于相似度匹配策略来实现目标跟踪。其开创性的工作有SINT和SiamFC,它们都是使用Siamese网络来学习一个matching Function,用于匹配目标和候选图像patch之间的相似性。

随着目标跟踪技术的发展,已经有大量的改进工作被提出,它们主要分为两个阵营,其中一个是通过抽取高层语义信息以及利用本地化模型提高了匹配定位的精度。

另一种是通过在线更新匹配模板来增强Siamese networks的匹配精度。最近有一项工作也在研究如何利用深层网络来进行跟踪。但其主要是从数据扩充和特征融合的方向来解决这一问题。

不同的是,作者的工作从研究如何设计网络架构做起,从机理上分析了影响网络性能的因素,并依据原则成功设计了更深更宽的backbone Siamese 跟踪器。

paper:https://arxiv.org/pdf/1901.01660.pdf

代码:https://github.com/researchmm/SiamDW


目标跟踪交流群

关注最新最前沿的目标跟踪技术,扫码添加CV君拉你入群,(如已为CV君其他账号好友请直接私信)

(请务必注明:跟踪):

喜欢在QQ交流的童鞋可以加52CV官方QQ群:805388940。

(不会时时在线,如果没能及时通过还请见谅)


长按关注我爱计算机视觉

更深更宽的孪生网络,有效提升目标跟踪精度,代码开源相关推荐

  1. Fully-Convolutional Siamese Networks for Object Tracking基于全卷积孪生网络的目标跟踪算法SiameseFC

    1.论文相关 Bertinetto, Luca, et al. "Fully-convolutional siamese networks for object tracking." ...

  2. 你真的了解爬虫吗?看完你会对网络爬虫有更深更全面的认识

    前言 爬虫是门很有意思的技术,可以通过爬虫技术获取一些别人拿不到或者需要付费才能拿到的东西,也可以对大量数据进行自动爬取和保存,减少时间和精力去手动做一些累活. 可以说很多人学编程,不玩点爬虫确实少了 ...

  3. 多传感器分布式融合算法——多传感器网络协同目标跟踪和定位

    多传感器分布式融合算法 应用: 多传感器网络协同目标跟踪及定位 原创不易,路过的各位大佬请点个赞 主要讲解算法:          多传感器集中式融合算法/分布式融合算法/序贯融合算法         ...

  4. 2021年中国科技的脚步依旧不停 我们将走得更广更深更远

    央视网消息:2020年,我国在科技探索领域真的是很拼. 我们的征途是星辰大海,2021年中国科技的脚步依旧不停.截至今天(1月3日)6时,我国首次火星探测任务"天问一号"火星探测器 ...

  5. (八)JS异步进阶,更深更广搞定JS异步【想要进大厂,更多异步的问题等着你】

    JS异步进阶 提问 event loop JS如何执行 示例 总结event loop的过程 DOM事件和event loop promise进阶 三种状态 状态的表现和变化 then和catch对状 ...

  6. SiamNet: 全卷积孪生网络用于视频跟踪

    参考论文:Fully-Convolutional Siamese Networks for Object Tracking 算法主页:http://www.robots.ox.ac.uk/~luca/ ...

  7. 向更深更远处迈进 | 数据计算解密神秘宇宙

    从1970年第一颗人造卫星"东方红一号"发射成功,到"神舟"飞天."嫦娥"奔月."天问"探火."北斗" ...

  8. 腾讯AI Lab开放文本理解系统TexSmart,让AI想得更深更广

    感谢阅读腾讯AI Lab微信号第93篇文章.本文将介绍我们最新开放的自然语言理解系统TexSmart. 腾讯AI Lab今天宣布开放自然语言理解系统TexSmart,用以对中文和英文两种语言的文本进行 ...

  9. SiamFC:利用全卷积孪生网络进行视频跟踪

    目录

最新文章

  1. 作业帮、猿题库们烧了千亿争市场,家长陷入选择焦虑
  2. CSP认证201312-5 I’m stuck![C++题解]:dfs、两次dfs
  3. 戴尔集群监控与管理系统_监控与管理
  4. tesseract 提升 速度_2020斗式提升机料斗呼伦贝尔厂家定制哪家好
  5. oracle转换指定类型,PL/SQL 类型格式转换
  6. 如何为curl命令添加数据?
  7. python写脚本的优势_python写脚本的优势玩被叫
  8. mysql自带的管理工具_mysql几个管理工具推荐
  9. chrome官网下载离线安装包
  10. 怎样将PDF转成表格?超赞的两种PDF转Excel方法
  11. python怎么循环播放_如何用pyaudio循环播放音频?
  12. 某图书管理系统的类图
  13. 计算机输入设备的作用,认识计算机输入设备—键盘
  14. DWcs4右下角没有html文件,dreamweaver cs4 (dwcs4)安装图文教程
  15. Linux系统之CentOS和Ubuntu的对比
  16. linux 进程hang,GoldenGate Extract进程hang问题解决一例
  17. 处理Java连接不上hdfs
  18. 3.2 回溯法—N皇后问题
  19. 【HHHOJ】ZJOI2019模拟赛(十五)03.17 解题报告
  20. 相机下载_坚果pro3拍照不给力,那你可以看看这篇:老虎相机安装教程

热门文章

  1. 方法重载与重写,返回类型
  2. CSU 1114 平方根大搜索
  3. Linux学习笔记5
  4. 从0开始详解 Johnson 全源最短路(P5905 【模板】Johnson 全源最短路)
  5. java 多线程合并结果集_多线程计算数据,然后合并数据
  6. android欢迎页圆形倒计时,android 欢迎页圆形进度条倒计时功能
  7. linux配置php项目路径,linux下如何修改php.ini路径
  8. html5双波浪线怎么添加,在WPS中如何给段落添加双波浪线边框
  9. oracle10g自带的公共同义词,Oracle10g实战教程第07讲视图、同义词、序列
  10. python 数列第几项开始,数值超过1200