Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源

论文链接 : http://xxx.itp.ac.cn/pdf/2003.06761v2.pdf
开源项目:https://github.com/hqucv/siamban

创新点:siamban框架
改进:准确估计目标的尺度和纵横比
由于RPN引入导致的参数复杂性
避免了很多超参数,更加灵活

Abstract

现有的跟踪器大多依赖于多尺度搜索方案或预定义的锚来精确估计目标的尺度和纵横比(the scale and aspect ratio of a target)。不幸的是,它们通常需要无脑的启发式配置。为了解决这个问题,我们提出了一个简单而有效的视觉跟踪框架(名为Siamese Box Adaptive Network, SiamBAN),它利用了全卷积网络(FCN)的表达能力。SiamBAN将视觉跟踪问题看作是一个并行分类和回归问题,从而在一个统一的FCN中直接对对象进行分类并回归它们的边界盒。无优先盒的设计避免了与候选盒相关的超参数,使SiamBAN更加灵活和通用。在视觉跟踪基准测试(包括VOT2018、VOT2019、OTB100、NFS、UAV123和LaSOT)上进行的大量实验表明,SiamBAN实现了最先进的hea性能,并以40帧/秒的速度运行,证实了它的有效性和效率。代码将在https://github.com/hqucv/siamban上发布。

1. Introduction

视觉跟踪是计算机视觉的一项基本而又具有挑战性的任务。给定序列初始帧中的目标状态,跟踪器需要预测后续帧中的目标状态。尽管近年来取得了很大的进展,但由于遮挡、尺度变化、背景杂波、快速运动、光照变化和外观变化,视觉跟踪仍然面临着挑战。在真实视频中,目标尺度和纵横比也会随着目标或摄像机的移动和目标外观的变化而变化。准确估计目标的尺度和纵横比成为视觉跟踪领域的一个难题。然而,许多现有的跟踪器忽略了这个问题,依赖于多尺度搜索来估计目标大小。例如,目前最先进的基于相关滤波器的跟踪器[6,3]依赖于它们的分类成分,而目标尺度只是通过多尺度搜索来估计。最近,基于Siamese网络的视觉跟踪器[21,52,20]引入了一种区域建议网络(RPN)来获得精确的目标边界盒。然而,为了处理不同的尺度和纵横比,他们需要基于启发式知识精心设计锚盒,这引入了许多超参数和计算复杂性。

Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
图1所示。(a)用于估计目标尺度或宽高比的方法:多尺度搜索(如SiamFC、ECO)、基于锚的搜索(如siamRPN、siamRPN ++)和无锚的搜索(如our)。
(b)我们的SiamBAN跟踪器和两个最先进的跟踪器的一些有代表性的实验结果。从可视化结果可以看出,我们的跟踪器在尺度和纵横比上都优于其他两个跟踪器.
相比之下,神经科学家已经证明,生物视觉初级视觉皮层可以快速有效地从复杂的环境中提取观察对象的轮廓或边界。也就是说,人类可以在没有候选框的情况下识别出物体的位置和边界。那么,我们是否可以设计一个准确而健壮的视觉跟踪框架,而不依赖于候选框呢?受无锚探测器的启发[14,47,31,51,37],答案是肯定的。利用全卷积网络(FCN)的表达能力,我们提出了一个简单而有效的视觉跟踪框架,称为Siamese box adaptive network (SiamBAN),以解决精确估计目标的规模和纵横比的挑战。该框架由一个暹罗网络和多个盒子自适应头组成,不需要预先定义的候选盒子,可以在训练过程中进行端到端的优化。SiamBAN将目标分类并直接回归到统一的FCN中,将跟踪问题转化为分类回归问题。直接预测相关特征图上各空间位置的前-背景类别得分和4D向量。四维向量描述了从包围框的四个边到搜索区域对应的特征位置中心点的相对偏移量。在推理过程中,我们使用以目标的前一位置为中心的搜索图像。通过最佳得分位置对应的边界框,可以得到目标在帧间的位移和大小变化。

这项工作的主要贡献有三方面

  • 我们设计了一个Siamese box adaptive network,它可以使用深度卷积神经网络[12]在经过良好注解的数据集上进行端到端的离线训练[34,30,25,15,9]。

  • SiamBAN中的无优先候选框设计避免了与候选框相关的超参数,使我们的跟踪器更加灵活和通用。

  • SiamBAN不仅实现了最先进的结果,而且还在跟踪基准上以40帧/秒的速度运行,包括VOT2018[17]、VOT2019[18]、OTB100[43]、NFS[16]、UAV123[27]和LaSOT[9]。

2. Related Works

视觉跟踪是近几十年来计算机视觉领域最活跃的研究课题之一。对相关跟踪器的全面研究超出了本文的范围,因此我们只简要回顾与我们的工作最相关的两个方面:基于Siamese网络的可视化跟踪器和无锚对象检测器

2.1. Siamese Network Based Visual Trackers

最近,基于Siamese网络的跟踪器由于其端到端训练能力和高效率,引起了视觉跟踪社区的极大关注[1,11,41,21,20,49]。SiamFC[1]采用Siamese网络作为特征提取器,首先引入相关层对特征图进行组合。由于其结构轻,不需要模型更新,SiamFC运行效率为86帧/秒。DSiam[11]学习一个特征变换来处理目标外观变化和抑制背景。RASNet[41]在Siamese网络中嵌入了多种注意机制,以使跟踪模型适应当前目标。然而,这些方法需要多尺度测试来应对尺度变化,不能处理由于目标外观变化而引起的长宽比变化。为了得到更精确的目标边界框,SiamRPN[21]将RPN[32]引入SiamFC中。SPM-Tracker[39]提出了一种串并联匹配框架,增强了SiamRPN的鲁棒性和分辨能力。SiamRPN++[20]、SiamMask[42]、SiamDW[49]以不同方式去除padding等影响因素,将ResNet[12]、ResNeXt[44]、MobileNet[13]等现代深层新网络引入到基于Siamese网络的视觉跟踪器中。虽然基于锚点的跟踪器[21,39,20]可以处理尺度和纵横比的变化,但仍有必要对锚点箱的参数进行仔细的设计和固定。设计参数通常需要启发式调整,并涉及许多技巧来实现良好的性能。与基于锚点的跟踪器相比,我们的跟踪器避免了与锚点盒相关的超参数,并且更加灵活和通用。

2.2. Anchor-free Object Detectors

近年来,无锚对象检测引起了对象检测界的关注。然而,无锚检测并不是一个新概念。DenseBox[14]首先引入了一个FCN框架来联合进行人脸检测和地标定位。UnitBox[47]通过精心设计优化损失,为性能改进提供了另一种选择。YOLOv1[31]提出将输入图像分割成一个网格,然后预测每个网格单元上的边界框和类概率。
最近,出现了许多新的无锚探测器。这些检测方法大致可以分为基于关键点的对象检测[19,50,46]和稠密检测[51,37]。具体来说,CornerNet[19]提出将一个对象边界框作为一对关键点来检测。极值集[50]用于检测四个极值点和一个中心对象点使用标准的关键点估计网络。RepPoints[46]引入了代表性点,这是一种新的对象表示,用于建模细粒度的本地化信息并识别对对象分类有重要意义的局部区域。FSAF[51]提出了特征选择无锚模块,解决了基于锚的单次发射探测器的特征金字塔启发式特征选择的局限性。fcos[37]提出直接预测物体存在的可能性和不需要锚点参考的边界盒坐标
与物体检测相比,视觉跟踪任务存在两个关键挑战,即未知类别和不同物体之间的区分。 无锚检测器通常假定要检测的对象的类别是预先定义的。 但是,在跟踪之前,目标的类别是未知的。 同时,无锚检测器通常专注于检测来自不同类别的对象,而在跟踪时,有必要确定两个对象是否相同因此,在我们的框架中需要一个可以对外观信息进行编码的模板分支,以识别目标和背景。

3. SiamBAN Framework

在本节中,我们描述了拟议的SiamBAN框架。 如图2所示,SiamBAN由一个暹罗网络主干和多个盒式自适应磁头组成。 暹罗网络骨干网负责计算模板补丁和搜索补丁的卷积特征图,后者使用现成的卷积网络。 盒式自适应头包括分类模块和回归模块。 具体地,分类模块对相关层的每个点进行前景-背景分类,回归模块对对应位置进行边界框预测。Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
图2.拟议的暹罗盒式自适应网络的框架。 左子图显示其主要结构,其中C3,C4和C5表示骨干网络的特征图,Cls映射和Reg映射表示SiamBAN磁头输出的特征图。 右子图显示了每个SiamBAN头,其中DW-Corr表示深度互相关运算。

3.1. Siamese Network Backbone

现代深度神经网络[12、44、13]在基于暹罗网络的跟踪器[20、42、49]中被证明是有效的,现在我们可以在基于暹罗网络的跟踪器中使用诸如ResNet,ResNeXt和MobileNet之类的它们。在我们的跟踪器中,我们采用ResNet-50 [12]作为骨干网。尽管具有连续卷积步幅的ResNet-50可以学习越来越多的抽象特征表示,**但是它降低了特征分辨率。**但是,基于暹罗网络的跟踪器需要详细的空间信息才能执行密集的预测。为了解决这个问题,我们从最后两个卷积块中删除了下采样操作。 同时,为了改善接收场,我们使用了无规则卷积[4],这被证明对于视觉跟踪是有效的[21,42]。此外,受多网格方法的启发[40],我们在模型中采用了不同的圆率。具体来说,我们在conv4和conv5块中将步幅设置为1,在conv4块中将原子率设置为2,在conv5块中将原子率设置为4。
暹罗网络骨干网由两个相同的分支机构组成。一个称为模板分支,它接收模板补丁作为输入(表示为z)。另一个称为搜索分支,该分支接收搜索补丁作为输入(表示为x)。两个分支在卷积神经网络*享参数,以确保将相同的变换应用于两个补丁。为了减轻计算负担,我们添加了1×1卷积以将输出特征通道减少到256,并且仅使用模板分支中心7×7区域的特征[38,20],该特征仍可以捕获整个目标区域。为方便起见,将暹罗网络的输出特征表示为ϕ(z)和ϕ(x)。

3.2. Box Adaptive Head

如图2(右)所示,盒式自适应磁头由分类模块和回归模块组成。 这两个模块都从模板分支和搜索分支接收功能。 因此,我们只需将ϕ(z)和ϕ(x)复制到[to(z)] cls,[,(z)] reg和[and(x)] cls,[ϕ(x)] reg到相应的模块 。 根据我们的设计,分类模块的相关层的每个点需要输出两个通道进行前景-背景分类,而回归模块的相关层的每个点则需要输出四个通道用于边界框的预测。 每个模块使用深度互相关层[20]组合特征图:Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
其中⋆表示以[ϕ(z)] cls或[ϕ(z)] reg为卷积核的卷积运算,P cls w×h×2表示分类图,P reg w×h×4表示回归图 。 值得注意的是,我们的跟踪器输出的变量比具有5个锚点框的基于锚的跟踪器[21、20]少5倍

对于每一个分类图P cls w×h×2或回归图P reg w×h×4上的每个位置,我们可以将其映射到输入搜索patch。例如,与搜索片上的位置相对应的位置(i,j)为[⌊wim2⌋+(i-⌊w 2⌋)×s,他2⌋+(j−h 2⌋)× s](表示为(pi,pj)。wim和他代表输入搜索补丁的宽度和高度,s代表网络的总跨度),它是位置(i,j )。对于回归,基于锚的跟踪器[21、52、20]将位置(pi,pj)作为锚框的中心,然后回归位置(pi,pj),宽度aw和高度ah。也就是说,对于位置(i,j),回归可以调整其所有偏移值,但是分类仍然在原始位置执行,这可能导致分类和回归中的不一致性。因此,我们不调整位置(pi,pj),仅计算其到边界框的偏移值。另外,由于我们的回归目标是正实数,因此我们在回归模块的最后一级应用exp(x)将任何实数映射到(0,+∞)。
~~:看不太懂,但是这一段很重要!

3.3. Multi-level Prediction

在利用ResNet-50进行free卷积后,我们可以使用多级特征进行预测。 尽管我们的骨干网络的conv3,conv4和conv5块的空间分辨率相同,但它们具有令人讨厌的卷积,且具有不同的扩展速率因此它们的接收场之间的差异很大,并且在构造中捕获的自然不同 。 正如CF2 [26]所指出的,来自较早层的要素可以捕获细粒度的信息,这对于精确定位很有用。 而后面几层的功能可以对抽象的语义信息进行编码,这对于目标外观的更改是可靠的。 为了充分利用多级特征的不同特征,我们使用多框自适应进行预测。 每个检测头获得的分类图和回归图是自适应融合的:
Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
其中α1和β1是与每个地图相对应的权重,并与网络一起进行了优化。 通过独立地组合分类图和回归图,分类模块和回归模块可以专注于它们所需的域。
Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
图3.分类标签和回归tar插图。 预测值和监控信号如图所示,其中E1代表椭圆E1,E2代表椭圆E2。 我们分别使用交叉熵和IoU损失进行分类和框回归。

3.4. Ground-truth and Loss(GT和损失)

分类标签和回归目标.如图3所示,每个搜索补丁上的目标都标有地面真实边界框。 groundtruth边界框的宽度,高度,左上角,中心点和右下角分别由gw,gh,(gx1,gy1),(gxc,gyc)和(gx2,gy2)表示。 以(gxc,gyc)为中心,以gw 2,gh 2为轴长,我们可以得到椭圆E1:Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
以(gxc,gyc)为中心,以gw 4,gh 4为轴长,我们可以得到椭圆E2:Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
如果位置(pi,pj)落在椭圆E2内,则用正号标记,如果它落在椭圆E1以外,则为其分配负号,并且落在椭圆之间。 E2和E1,请忽略它。 具有正标签的位置(pi,pj)用于使边界框回归,回归目标可以公式为:Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
其中dl,dt,dr,db是从位置到边界框四个边的距离,如图3所示。分类损失和回归损失。 我们定义多任务丢失功能如下:
Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
其中Lcls是交叉熵损失,Lreg是IoU(联合上的区间)损失。 我们不搜索方程式6的超参数,仅设置λ1=λ2=1。类似于GIoU [33],我们将IoU损耗定义为:
Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
其中IoU表示预测边界框和地面真相边界框的交点与并集的面积比。 具有正标记的位置(pi,pj)在椭圆E2内,并且回归值大于0,因此0 <IoU≤1,然后0≤LIoU <1。IoU损耗会使dl,dt,dr, db联合回归。

3.5. Training and Inference

训练
我们的整个网络可以在大规模数据集上进行端到端的培训。 我们使用在视频或静止图像上采样的图像对来训练SiamBAN。 训练集包括ImageNet VID [34],YouTube边界框[30],COCO [25],ImageNet DET [34],GOT10k [15]和LaSOT [9]。 模板补丁的大小为127×127像素,而搜索补丁的大小为255×255像素。 另外,尽管我们的阴性样本比基于锚的跟踪器要少得多[21,20],但阴性样本仍比阳性样本多得多。 因此,我们从一对图像中最多收集16个阳性样本和48个阴性样本。
Inference
在推断过程中,我们裁剪模板补丁
从第一帧开始并将其馈送到特征提取网络。 提取的模板特征将被缓存,因此我们不必在后续跟踪中计算它们。 对于后续帧,我们裁剪搜索补丁并根据前一帧的目标位置提取特征,然后在搜索区域中进行预测以获得总分类图P cls-all w×h×2和回归图P reg -全部w×h×2。之后,我们可以通过以下方法获得预测框方程:
Siamese Box Adaptive Network for Visual Tracking --Siamban,CVPR2020单目标跟踪开源
其中d reg l,d reg t d reg r和d reg b表示回归图的预测值,(px1,py1)和(px2,py2)是预测框的左上角和右下角。
生成预测框后,我们使用余弦窗口和尺度变化罚分来平滑目标运动和变化[21],然后选择得分最高的预测框,并通过线性插值更新其大小并保持先前状态 帧。

4. Experiments

4.1. Implementation Details

我们使用ImageNet [34]上预先训练的权重来初始化骨干网,并且冻结前两层的参数。 我们的网络经过随机梯度下降(SGD)训练,每批次28对。 我们使用前5个时期的0.001至0.005的预热学习率和后15个时期的0.005至0.00005的指数衰减,训练了总共20个时期。 在前10个阶段中,我们仅训练盒式自适应磁头,而在后10个阶段中,以当前学习速率的十分之一微调骨干网络。 重量衰减和动量分别设置为0.0001和0.9。 我们的方法是在具有Intel Xeon(R)4108 1.8GHz CPU,64G RAM,Nvidia GTX 1080Ti的PC上使用PyTorch在Python中实现的。

4.2. Comparison with State-of-the-art Trackers

我们将我们的SiamBAN跟踪器与最新的跟踪器在六个跟踪基准上进行了比较。我们的跟踪器可以达到最先进的结果,并以40 FPS的速度运行。 VOT2018 [17]。我们在由60个序列组成的Visual Object Tracking Challenge 2018(VOT2018)上对跟踪器进行评估。使用EAO(预期平均重叠)评估推杆的整体性能,该功能结合了准确性(成功跟踪期间的平均重叠)和鲁棒性(失败率)。表1显示了与VOT2018中几乎所有性能最佳的跟踪器的比较。在以前的方法中,DiMP [2]实现了最佳的EAO,而SiamRPN ++ [20]实现了最佳的精度,它们都使用ResNet-50提取特征。 DiMP具有与我们的跟踪器相同的准确性,尽管它的故障率比我们的跟踪器略低,但如果没有任何在线更新,我们的EAO会更好。与SiamRPN ++相比,我们的跟踪器达到了类似的精度,但是故障率降低了23.9%,EAO增加了8.4%。在这些跟踪器中,我们的跟踪器具有最高的EAO,并且在准确性方面排名第二。这表明我们的跟踪器不仅可以准确估算目标位置,而且还可以保持良好的鲁棒性。