ResNet:视觉跟踪中的应用

SiamFC跟踪方法取得了很大的成功,同时也促进了深度学习在跟踪领域的发展。我们知道SiamFC采用的骨干网络是AlexNet,使用该网络来提取图像特征。AlexNet最早实在图像识别任务中被提出,第一次证实了卷积网络在CV领域的有效性,取得了2012年ImageNet竞赛的第一名。自此以后,许多的深度卷积网络被提出,如VGG,GoogLeNet以及ResNet等,可以看出从AlexNet到ResNet,网络的层数越来越多,也即网络的深度越来越深,这也使得网络的性能越来越强大,取得的成绩也越来越好。由此我们自然的可以想到,使用更加强大的backbone是不是也能改进Siamese跟踪方法的性能呢?本文主要讨论SiamRPN++中的骨干网络ResNet。

1 ResNet

ResNet (Residual Neural Network) 由微软研究院的Kaiming He等提出,通过使用ResNet Unit成功训练出了152层的神经网络,并在ILSVRC2015比赛中取得冠军。ResNet的主要思想是在网络中增加了直连通道,即Highway Network的思想。此前的网络结构是性能输入做一个非线性变换,而Highway Network则允许保留之前网络层的一定比例的输出。ResNet的思想和Highway Network的思想也非常类似,允许原始输入信息直接传递到后面的层中。ResNet中提出的残差结构如下,

可以看到残差块中包含2种映射,一种是identity mapping,指的就是上图中的曲线,另一种residual mapping,指的就是除曲线外那部分,所以最后的输出是y = F(x) + x。identity mapping顾名思义,就是指本身,也就是公式中的x,而residual mapping指的是“差”,也就是y − x,所以残差指的就是F(x)部分。因此网络需要学习的F(x)为输入与目标的差值,故称为残差网络。

1.1 网络结构

在不同版本的ResNet中,主要有两种残差块,

左边的结构主要针对ResNet34,右边的主要应用于ResNet50/101/152。可以看到右图中有两个1x1的卷积层,主要做用是用来给数据降维和升维的作用,之所以如此是为了减少计算量和参数,这里就不再展开。常用的不同层数的残差网络结构如下,

从网络结构可以看出在不同卷积层之间过渡的时候,残差块的输入与输出维度不一致,这时需要对短路连结分支进行改进,对输入数据的维度进行调整。

2 视觉跟踪中的ResNet

原始的ResNet主要应用于图像分类和识别任务,对于空间信息不敏感,而在跟踪任务中,空间信息对于目标的准确定位至关重要,所以要在跟踪任务中使用,需要对ResNet进行改进。

上图为SiamRPN++的网络结构图,其采用的backbone为修改的ResNet-50。原始ResNet-50的stride为32,对跟踪不适合。作者对最后两个block的stride进行了修改,将总stride降低到8,并通过空洞卷积来增加感受野。从上图可以看到,采用了ResNet不同深度卷积层的特征,在每个block输出上添加额外的1×1卷积层来将特征通道降低为256。文章将所有层的padding保留了。

你可能感兴趣的:(ResNet:视觉跟踪中的应用)