可变形卷积

目录:

Deformable Convolution v1

Deformable Convolution v2

-------------------------------------------------------

Deformable Convolutional Networks

ICCV2017

https://openaccess.thecvf.com/content_ICCV_2017/papers/Dai_Deformable_Convolutional_Networks_ICCV_2017_paper.pdf

https://arxiv.org/abs/1703.06211

摘要:卷积神经网络(CNN)由于其构建模块中的固定几何结构,固有地局限于模型几何变换。在这项工作中,我们引入了两个新的模块来增强CNN的变换建模能力,即可变形卷积和可变形RoI池化。这两种方法都是基于这样一种想法,即在模块中增加空间采样位置,增加额外的偏移量,并在没有额外监督的情况下学习目标任务的偏移量。新模块可以很容易地替换现有CNN中的普通模块,并且可以通过标准反向传播轻松地进行端到端训练,从而产生可变形卷积网络。大量的实验验证了我们方法的性能。我们首次证明,在深层CNN中学习密集空间变换对于复杂的视觉任务(如目标检测和语义分割)是有效的。该代码发布于:https://github.com/msracver/Deformable-ConvNets

1.引言

视觉识别中的一个关键挑战是如何适应对象比例、姿势、视点和部件变形中的几何变化或模型几何变换。一般来说,有两种方法。首先是建立具有足够期望变化的训练数据集。这通常通过增加现有数据样本来实现,例如,通过仿射变换。鲁棒表示可以从数据中学习,但通常要付出昂贵的训练和复杂的模型参数的代价。第二种是使用变换不变的特征和算法。这一类别包含许多众所周知的技术,如SIFT(尺度不变特征变换)[38]和基于滑动窗口的对象检测范式。

上述方法有两个缺点。首先,假设几何变换是固定且已知的。这些先验知识用于扩充数据、设计特征和算法。这种假设阻止了对具有未知几何变换的新任务的泛化,这些几何变换没有正确建模。第二,对于过于复杂的变换,手工设计不变特征和算法可能很困难或不可行,即使它们是已知的。

最近,卷积神经网络(CNN)[31]在视觉识别任务方面取得了重大成功,如图像分类[27]、语义分割[37]和目标检测[14]。然而,它们仍然有上述两个缺点。他们对几何变换建模的能力主要来自广泛的数据扩充、大的模型容量和一些简单的手工制作的模块(例如,用于小平移不变性的最大池化[1])。

简言之,CNN本质上仅限于对大型未知变换进行建模。该限制源于CNN模块的固定几何结构:卷积单元在固定位置对输入特征图进行采样;池化层以固定比率降低空间分辨率;RoI(感兴趣区域)池化层将RoI分离为固定的空间箱等。缺少处理几何变换的内部机制。这会引起明显的问题。例如,同一CNN层中所有激活单元的感受野大小相同。这对于在空间位置上编码语义的高级CNN层是不可取的。由于不同的位置可能对应于具有不同尺度或变形的对象,因此,尺度或感受野大小的自适应确定对于具有精细定位的视觉识别是可取的,例如,使用全卷积网络进行语义分割[37]。另一个例子是,尽管最近目标检测取得了重大而迅速的进展[14,47,13,42,41,36,6],但所有方法仍然依赖于基于原始边界框的特征提取。这是次优的,尤其是对于非刚性对象。

在这项工作中,我们引入了两个新模块,大大增强了CNN对几何变换建模的能力。第一种是可变形卷积。它将二维偏移添加到标准卷积中的常规网格采样位置。它可以使采样网格自由变形。如图1所示。偏移量通过附加的卷积层从前面的特征图中学习。因此,变形以局部、密集和自适应的方式取决于输入特征。

第二种是可变形RoI池化。它向上一个RoI池化的常规bin分区中的每个bin位置添加偏移量[13,6]。类似地,从前面的特征映射和ROI中学习偏移,从而为具有不同形状的对象实现自适应部件定位。

两个模块都很轻量。它们为偏移量学习增加了少量的参数和计算。它们可以很容易地取代深CNN中的普通对应物,并且可以很容易地通过标准反向传播进行端到端训练。由此产生的CNN称为可变形卷积网络,或可变形卷积网络。

我们的方法与空间变换网络(spatial transform networks)[23]和可变形部件模型(deformable part models)[10]具有相似的high level spirit。它们都有内部变换参数,并且纯粹从数据中学习这些参数。可变形卷积网络的关键区别在于,它们以简单、高效、深入和端到端的方式处理密集的空间变换。在第3.1节中,我们详细讨论了我们的工作与以前工作的关系,并分析了可变形网络的优越性。

2.可变形卷积网络

特征映射和卷积是三维的。可变形卷积和RoI池化模块都在2D空间域上运行。通道维度的操作保持不变。为简单起见,模块在2D中描述。对3D的扩展很简单。

2.1. 可变形卷积

2D卷积包括两个步骤:1)在输入特征映射x上使用规则网格R进行采样;2) 按w加权的采样值之和。网格R定义感受野的大小和扩张。例如

R=\left\{ (-1,-1),(-1,0),...(0,1),(1,1) \right\}

定义一个扩张率为1的3×3核。

对于输出特征图y上的每个位置p_0

y(p_0)=\sum_{{p_n}\in R}w(p_n)\cdot x(p_0+p_n)    (1)

其中p_n枚举R中的位置。

可变形卷积中,规则网格R增加了偏移量\left\{ {∆p_n | n=1…N} \right\} ,其中N=| R |。公式(1)现在变为:

y(p_0)=\sum_{{p_n}\in R}w(p_n)\cdot x(p_0+p_n+∆p_n )    (2)

现在,采样是在不规则、有偏移的位置上p_n+∆p_n。由于偏移∆p_n通常fractional,公式(2)通过双线性插值实现,如下所示:

x(p)=\sum_{q}G(q,p)\cdot x(q)    (3)

其中p表示任意的fractional的位置(对于公式(2),p=p_0+p_n+∆p_n),q枚举特征映射x中的所有整数空间位置,G(·,·)是双线性插值核。注意G是二维的。它被分成两个一维核,如下所示:

G(q,p)=g(q_x,p_x)\cdot g(q_y,p_y)    (4)

其中g(a,b)=max(0,1-\vert a-b \vert )。公式(3)的计算速度很快,因为G(q,p)仅对少数q是非零的。

如图2所示,偏移量是通过在同一输入特征映射上应用卷积层获得的。该卷积核与当前卷积层的卷积核的空间分辨率、扩展率相同(例如,图2中的3×3核大小,扩张率为1)。输出偏移域与输入特征映射具有相同的空间分辨率。通道尺寸为2N,对应于N个2D偏移。在训练过程中,同时学习用于生成输出特征的卷积核和用于生成偏移量的卷积核。为了学习偏移,梯度通过公式(3)和公式(4)反向传播。

2.2. 可变形RoI池化

RoI池化用于所有基于区域建议的对象检测方法[14,13,42,6]。它将任意大小的输入矩形区域变换为固定大小的特征。

RoI池化[13]

给定输入的特征映射x和大小为w×h、左上角为p0的RoI,RoI池化将RoI划分为k×k(k是一个自由参数)单元,并输出k×k特征映射y。对于(i,j)-th bin(0≤ i、 j<k),

其中nij是存储箱中的像素数。第(i,j)个宾跨

与等式(2)类似,在可变形RoI池化中,偏移{∆pij | 0≤ i、 j<k}被添加到空间装箱位置。式(5)变为

典型的∆pij是分数的。公式(6)通过公式(3)和(4)通过双线性插值实现。

图3说明了如何获得偏移量。首先,RoI池化(等式(5))生成池化特征映射。从贴图中,fc层生成标准化偏移∆然后将其变换为偏移量∆等式(6)中的pij,按RoI的宽度和高度按元素划分,如下所示∆pij=γ·∆pbij◦ (w,h)。这里γ是一个预定义的标量,用于调制偏移量的大小。根据经验将其设置为γ=0.1。为了使偏移量学习对RoI大小保持不变,偏移量归一化是必要的。

位置敏感(PS)RoI池化[6]

它是完全卷积的,不同于RoI池化。通过conv层,所有输入特征映射首先变换为每个对象类的K2分数映射(对于C对象类,总共是C+1),如图4底部分支所示。无需区分类别,此类得分图表示为{xi,j},其中(i,j)枚举所有BIN。在这些分数图上执行池化。(i,j)-bin的输出值是通过与对应于该bin的一个得分图席西,j求和得到的。简而言之,与等式(5)中的ROI池化的区别在于,一般特征图X被特定的正敏感得分图席Xi,j替换。

在可变形PS-ROI池化中,方程(6)的唯一变化是X也被修改为席,J。然而,偏移学习是不同的。它遵循了[6]中的“完全卷积”精神,如图4所示。在顶部分支中,conv层生成完整的空间分辨率偏移字段。对于每个RoI(也针对每个类别),PS RoI池化应用于这些字段以获得标准化偏移∆然后将其变换为实际偏移量∆pij的方式与上述可变形RoI池化中的方式相同。

2.3. 可变形网络

可变形卷积和RoI池化模块与普通模块具有相同的输入和输出。因此,它们可以很容易地取代现有CNN中的普通对应项。在训练中,这些用于偏移学习的添加conv和fc层用零权重初始化。它们的学习速率设置为现有层学习速率的β倍(默认情况下β=1,对于FasterR-CNN,fc层β=0.01)。通过等式(3)和等式(4)中的双线性插值操作,通过反向传播对它们进行训练。由此产生的CNN称为可变形网络。

为了将可变形网络和最先进的CNN体系结构集成在一起,我们注意到这些体系结构包括两个阶段。首先,深度全卷积网络在整个输入图像上生成特征映射。其次,与任务相关的浅层网络从特征图生成结果。我们将在下面详细阐述这两个步骤。

用于特征提取的可变形卷积

我们采用两种最先进的架构进行特征提取:ResNet-101[20]和InceptionResNet的改进版本[46]。两者都是在ImageNet[7]数据集上预先训练的。

最初的ResNet是为图像识别而设计的。它有一个特征错位(misalignment)的问题,对于密集的预测任务是有问题的。对其进行修改以修复对齐问题[18]。修改后的版本被称为“Aligned-Inception-ResNet”。请在本文的在线arxiv版本中查找详细信息。

两个模型都由几个卷积块、一个平均池化和一个用于ImageNet分类的1000路fc层组成。删除平均池化和fc层。最后加入一个随机初始化的1×1卷积,将通道维数降低到1024。与通常的实践[3,6]一样,最后一个卷积块中的有效跨距从32像素减少到16像素,以提高特征映射的分辨率。具体来说,在最后一个块的开始处,步幅从2更改为1(“conv5”用于ResNet-101和ResNet)。为了进行补偿,将该块中所有卷积滤波器(核大小>1)的扩张率从1更改为2。

可选地,可变形卷积应用于最后几个卷积层(核大小>1)。我们对不同数量的这样的层进行了实验,发现对于不同的任务,3层是一个很好的折衷方案,如表1所示。

分割与检测网络

基于上述特征提取网络的输出特征映射构建特定于任务的网络。

在下面的示例中,C表示对象类的数量。

DeepLab[4]是一种最先进的语义分割方法。它在特征映射上添加1×1卷积层,以生成表示每像素分类分数的(C+1)映射。随后的softmax层输出每像素概率。

Category-Aware RPN几乎与[42]中的区域建议网络相同,只是2类(对象或非对象)卷积分类器被(C+1)类卷积分类器取代。

Faster R-CNN[42]是最先进的探测器。在我们的实现中,RPN分支添加在conv4块的顶部,如下[42]。在先前的实践[20,22]中,RoI池化层插入ResNet-101中的conv4和conv5块之间,为每个RoI留下10层。该设计实现了良好的精度,但具有较高的每RoI计算。相反,我们采用了[34]中的简化设计。最后添加了RoI池化层1。在合并的RoI特征之上,添加了两个维度为1024的fc层,然后是边界框回归和分类分支。虽然这种简化(从10层conv5块到2层fc块)会略微降低精度,但它仍然是一个足够强的基线,因此本工作不关注这个修改带来的精度略微降低。

可选地,可以将RoI池化层更改为可变形RoI池化。

R-FCN[6]是另一种最先进的检测器。它的每RoI计算成本可以忽略不计。我们遵循最初的实现。可选地,可以将其RoI池化层更改为可变形的位置敏感RoI池化。

3.    理解可变形网络

这项工作是建立在增加卷积和RoI池化中的空间采样位置的思想之上的,使用额外的偏移量并从目标任务学习偏移量。

当可变形卷积被叠加时,复合变形的影响是深远的(profound)。如图5所示。标准卷积中的感受野和采样位置在顶部特征图(左图)上都是固定的。它们在可变形卷积(右)中根据对象的比例和形状进行自适应调整。更多示例如图6所示。表2提供了这种适应性变形的定量证据。

可变形RoI池化的效果类似,如图7所示。标准RoI池化中网格结构的规则性不再适用。取而代之的是,部件偏离RoI框并移动到附近的对象前景区域。增强了定位能力,特别是对于非刚体对象。

3.1 在相关工作的背景下

我们的工作在不同方面与以前的工作相关。我们详细讨论了它们之间的关系和区别。

空间变换网络(STN)[23]

这是第一个在深度学习框架中从数据中学习空间变换的工作。它通过全局参数变换(如仿射变换)warps特征映射。这种warping是昂贵的,学习变换参数是困难的。STN在小尺度图像分类问题上取得了成功。逆STN方法[33]通过有效的变换参数传播取代了昂贵的特征warping。

可变形卷积中的偏移学习可以被视为一种STN中极轻的空间变换器[23]。然而,可变形卷积不采用全局参数变换和特征扭曲。相反,它以局部和密集的方式对特征映射进行采样。为了生成新的特征映射,它有一个加权求和步骤,这在STN中是不存在的。

可变形卷积易于集成到任何CNN架构中。它的训练很容易。它对于需要密集(例如语义分割)或半密集(例如对象检测)预测的复杂视觉任务是有效的。这些任务对于STN来说是困难的(如果不是不可行的话)[23,33]。

主动卷积[24]

这部作品是本工作同时期。它也使用偏移量增加卷积中的采样位置,并通过反向传播端到端学习偏移量。在图像分类中是有效的。

与可变形卷积的两个关键区别使得这项工作不那么通用和适应性。首先,它在不同的空间位置共享偏移。其次,偏移量是在每个任务或每个训练中学习到的静态模型参数。相反,可变形卷积中的偏移量是动态模型输出,随图像位置而变化。它们对图像中密集的空间变换进行建模,并且对于(半)密集的预测任务(如目标检测和语义分割)是有效的。

有效感受野[39]

研究发现,并非感受野中的所有像素对输出响应的贡献都是相等的。靠近中心的像素有更大的影响。有效感受野只占理论感受野的一小部分,呈高斯分布。尽管理论上的感受野大小随着卷积层数的增加而线性增加,但令人惊讶的结果是,有效感受野大小随着卷积层数的平方根线性增加,因此,其速度比我们预期的慢得多。

这一发现表明,即使是深层CNN的顶层单元也可能没有足够大的感受野。这部分解释了为什么扩张卷积[21]被广泛用于视觉任务(见下文)。它表明了自适应感受野学习的需要。

可变形卷积能够自适应地学习感受野,如图5、6和表2所示。

扩张卷积[21] Atrous convolution

它将普通过滤器的步长增加到大于1,并将原始权重保持在稀疏采样位置。这增加了感受野的大小,并在参数和计算方面保持相同的复杂性。它已被广泛用于语义分割[37,4,49](在[49]中也称为扩张卷积dilated convolution)、目标检测[6]和图像分类[50]。

可变形卷积是扩张卷积的推广,如图1(c)所示。表3给出了与扩张卷积的广泛比较。

可变形部件模型(DPM)[10]

可变形RoI池化与DPM类似,因为这两种方法都学习对象部分的空间变形以最大化分类分数。由于不考虑部件之间的空间关系,因此可变形RoI池化更简单。

DPM是一个浅层模型,对变形的建模能力有限。虽然其推理算法可以通过将距离变换视为一种特殊的池化操作而变换为CNN[15],但其训练不是端到端的,而是涉及启发式选择,如选择组件和部件尺寸。相比之下,可变形卷积网络比较深,可以执行端到端的训练。当多个可变形模块堆叠时,建模变形的能力变得更强。

DeepID网络[40]

它引入了一个变形约束池化层,该层还考虑了用于目标检测的部件变形。因此,它与可变形RoI池化具有相似的精神,但要复杂得多。这项工作是高度工程化的,基于RCNN[14]。目前尚不清楚如何以端到端的方式使其适应最近最先进的目标检测方法[42,6]。

RoI池化中的空间操作

空间金字塔池化[30]在尺度上使用人工设计的池化区域。它是计算机视觉中的主要方法,也用于基于深度学习的目标检测[19,13]。

对池化区空间布局的研究很少。[25]中的工作从一个大的过完备集合中学习池化区域的稀疏子集。这一大套是手工设计的,学习不是端到端的。

可变形RoI池化是第一个在CNN中端到端学习池化区域的技术。虽然这些区域目前的大小相同,但扩展到空间金字塔池化[30]中的多个大小非常简单。

变换不变特征及其学习

在设计变换不变特征方面已经付出了巨大的努力。值得注意的例子包括尺度不变特征变换(SIFT)[38]和ORB[44](O表示方向)。在CNN的背景下,有大量这样的作品。文献[32]研究了CNN表示对图像变换的不变性和等变性。一些作品学习了关于不同类型变换的不变CNN表示,如[45]、散射网络[2]、卷积丛林[28]和TI池化[29]。一些作品致力于特定的变换,如对称[11,8]、比例[26]和旋转[48]。如第1节所分析的,在这些作品中,变换是先验的。这些知识(如参数化)用于手工制作特征提取算法的结构,或者固定在SIFT中,或者使用可学习的参数(如基于CNN的参数)。它们无法处理新任务中的未知变换。相反,我们的可变形模块概括了各种变换(参见图1)。从目标任务中学习变换不变性。

4    实验

语义分割

我们使用PASCAL VOC[9]和城市景观[5]。对于PASCAL VOC,有20个语义类别。按照[17,37,3]中的协议,我们使用VOC 2012数据集和[16]中的附加掩码注释。该训练集包括10582张图像。对验证集中的1449个图像执行评估。对于城市景观,按照[4]中的协议,分别对列车集中的2975张图像和验证集中的500张图像进行培训和评估。共有19个语义类别和一个背景类别。

为了进行评估,我们按照标准协议[9,5],使用在图像像素上定义的联合平均交集(mIoU)度量。我们使用mIoU@V和mIoU@C分别适用于帕斯卡VOC和城市景观。

在训练和推断过程中,图像的大小被调整为帕斯卡VOC的短边为360像素,城市景观的短边为1024像素。在SGD训练中,每个小批量随机抽取一幅图像。PASCAL VOC和Cityscapes分别总共执行30k和45k迭代,每个迭代有8个GPU和一个小批量。学习率为10%−3和10−在前23次和最后13次迭代中分别为4次。

目标检测

我们使用PASCAL VOC和COCO[35]数据集。对于PASCAL VOC,按照[13]中的协议,在VOC 2007 trainval和VOC 2012 trainval的联合体上进行培训。评估基于VOC 2007测试。对于COCO,按照标准协议[35],分别对trainval中的120k图像和测试开发中的20k图像执行培训和评估。对于评估,我们使用标准平均精度(mAP)分数[9,35]。对于PASCAL VOC,我们使用0.5和0.7的IoU阈值报告mAP分数。对于COCO,我们使用mAP@[0.5:0.95]的标准COCO度量,以及mAP@0.5.

在训练和推理中,图像的大小被调整为具有600像素的短边。在SGD训练中,每个小批量随机抽取一幅图像。对于类感知RPN,从图像中采样256个ROI。对于更快的RCNN和R-FCN,分别对区域建议和目标检测网络的256和128个ROI进行采样。投资回报率池化采用7×7箱。为了促进VOC的烧蚀实验,我们遵循[34],利用预先训练和固定的RPN方案来训练更快的R-CNN和R-FCN,而无需在区域方案和目标检测网络之间共享特征。与[42]中程序的第一阶段一样,对RPN网络进行单独培训。对于COCO,将执行[43]中所述的联合培训,并为培训启用功能共享。在8个GPU上,分别对PASCAL VOC和COCO执行总共30k和240k的迭代。学习率设置为10−3和10−在前23次和最后13次迭代中分别为4次。

可变形卷积的评估

表1使用ResNet101特征提取网络评估可变形卷积的效果。当使用更多可变形卷积层时,精度稳步提高,特别是对于DeepLab和类感知RPN。当DeepLab使用3个可变形层,其他使用6个时,改进达到饱和。在剩下的实验中,我们在特征提取网络中使用了3。

我们根据经验观察到,可变形卷积层中的学习偏移量对图像内容具有高度自适应性,如图5和图6所示。为了更好地理解可变形卷积的机理,我们定义了一个称为有效扩张的度量,用于可变形卷积滤波器。它是过滤器中所有相邻采样位置对之间距离的平均值。这是对过滤器感受野大小的粗略测量。

我们在VOC 2007测试图像上应用了具有3个可变形层的R-FCN网络(如表1所示)。根据真值边界框标注和滤波器中心位置,我们将可变形卷积滤波器分为四类:小、中、大和背景。表2报告了有效扩张值的统计数据(平均值和标准差)。它清楚地表明:1)可变形滤波器的感受野大小与对象大小相关,表明变形是从图像内容有效地学习的;2) 背景区域上的滤波器大小介于中型和大型物体上的滤波器大小之间,这表明识别背景区域需要相对较大的感受野。这些观察结果在不同层中是一致的。

默认的ResNet-101模型对最后三个3×3卷积层使用扩张率为2的扩张卷积(见第2.3节)。我们进一步尝试了扩张值4、6和8,并在表3中报告了结果。结果表明:1)当使用较大的扩张值时,所有任务的准确度都会提高,表明默认网络的感受野太小;2) 不同任务的最佳扩张值不同,例如,对于DeepLab为6,但对于Faster R-CNN为4;3) 可变形卷积具有最好的精度。这些观测结果验证了滤波器变形自适应学习的有效性和必要性。

可变形RoI池化的评价

它适用于Fatser R-CNN和R-FCN。如表3所示,单独使用它已经产生了显著的性能提升,尤其是在严格的mAP@0.7度量的当同时使用可变形卷积和RoI池化时,可获得显著的精度改进。

基于COCO的目标检测

在表4中,我们在COCO测试开发集上对用于对象检测的可变形CONVNET和普通CONVNET进行了广泛的比较。我们首先使用ResNet-101模型进行实验。类感知RPN、更快的R-CNN和R-FCN的可变形版本的mAP@[0.5:0.95]得分分别为25.8%、33.1%和34.5%,分别比普通的CONVNET版本高11%、13%和12%。在更快的R-CNN和R-FCN中,通过将ResNet-101替换为对齐接收ResNet,它们的普通ConvNet基线都得到了改进,这得益于更强大的功能表示。可变形网络带来的有效性能提升也同样有效。通过进一步测试多个图像比例(图像较短的一侧为[480、576、688、864、1200、1400]),并执行迭代边界框平均[12],可变形版本的R-FCN的mAP@[0.5:0.95]分数增加到37.5%。请注意,可变形CONVNET的性能增益是对这些铃声和哨声的补充。

模型复杂性和运行时

表5报告了提议的可变形CONVNET及其普通版本的模型复杂性和运行时间。可变形网络只会在模型参数和计算上增加少量开销。这表明,显著的性能改进来自于几何变换建模能力,而不是增加模型参数。

-------------------------------------------------------

Deformable Convolutional Networks

https://arxiv.org/abs/1811.11168v2

https://hub.fastgit.org/msracver/Deformable-ConvNets

https://hub.fastgit.org/open-mmlab/mmdetection/tree/v2.0.0/mmdet/ops/dcn

https://hub.fastgit.org/chengdazhi/Deformable-Convolution-V2-PyTorch

https://hub.fastgit.org/ruinmessi/ASFF/tree/master/utils/DCN

https://www.jianshu.com/p/23264e17d860    这位将几个开源做了测试

开源中的说明:我们更新了可变形卷积算子,使其与Deformale convents v2论文中使用的算子相同。解决了采样位置在图像边界之外时可能出现的问题。该问题可能会导致ImageNet分类性能下降。请注意,官方MXNet和PyTorch代码库中当前的可变形conv层仍然存在问题。因此,如果您想在可变形ConvNets v2中再现结果,请使用此处提供的更新层。在大图像批量的情况下,效率也得到了提高。请参阅DCNv2_op/README.md中的更多详细信息。

摘要:可变形卷积网络的优越性能来源于其适应对象几何变化的能力。通过对其适应性行为的研究,我们观察到,虽然其神经特征的空间支持比常规卷积网络更符合对象结构,但这种支持可能远远超出感兴趣的区域,导致特征受到无关图像内容的影响。为了解决这个问题,我们提出了一种可变形卷积网络的新格式,通过增强建模能力和更强的训练,提高了其聚焦相关图像区域的能力。通过在网络中更全面地集成可变形卷积,并通过引入扩展变形建模范围的调制机制,增强了建模能力。为了有效地利用这种丰富的建模能力,我们通过一种建议的特征模拟方案指导网络训练,该方案帮助网络学习反映R-CNN特征的对象焦点和分类能力的特征。利用所提出的贡献,与原始模型相比,这种新版本的可变形卷积网络产生了显著的性能提升,并在COCO目标检测和实例分割基准上产生了领先的结果。

1.引言

由尺度、姿态、视点和部件变形引起的几何变化是目标识别和检测的主要挑战。目前解决此问题的最先进方法是可变形卷积网络(DCNv1)[8],它引入了两个模块,帮助CNN对此类变化进行建模。其中一个模块是可变形卷积,其中标准卷积的网格采样位置通过相对于前面的特征映射学习的位移进行偏移。另一种是可变形RoIpooling,在RoIpooling中为存储单元位置学习偏移量[16]。将这些模块合并到神经网络中,使其能够使其特征表示适应对象的配置,特别是通过变形其采样和池化模式以适应对象的结构。通过这种方法,大大提高了目标检测精度。

为了理解可变形神经网络,作者通过PACAL VOC图像中偏移采样位置的排列,可视化了感受野的诱导变化[11]。研究发现,激活单元的样本倾向于聚集在其所在的对象周围。然而,对物体的覆盖是不精确的,表现出样本的扩散超出了感兴趣的区域。在使用来自更具挑战性的COCO数据集的图像对空间支持进行更深入的分析[29]中,我们观察到这种行为变得更加明显。这些发现表明,学习可变形卷积具有更大的潜力。

在本文中,我们提出了一种新版本的可变形卷积网络,称为可变形卷积网络v2(DCNv2),它增强了学习可变形卷积的建模能力。建模能力的增加有两种互补形式。第一个是在网络中使用更多的可变形卷积层。为更多卷积层配备偏移学习能力,使DCNv2能够在更大范围的功能级别上控制采样。第二种是可变形卷积模块中的调制机制,其中每个样本不仅经历学习的偏移,而且还通过可学习的特征振幅来进行调制。因此,网络模块能够改变其样本的空间分布和相对影响。

为了充分利用DCNv2增强的建模能力,需要进行有效的训练。受神经网络知识蒸馏工作的启发[2,22],我们利用教师网络实现这一目的,教师在训练期间提供指导。我们专门利用R-CNN[17]作为教师。由于R-CNN是一个训练用于分类裁剪图像内容的网络,因此它学习的特征不受感兴趣区域之外的无关信息的影响。为了模拟这一特性,DCNv2在训练中加入了一个模拟丢失的特性,这有利于学习与R-CNN一致的特性。通过这种方式,DCNv2为其增强的可变形采样提供了强大的训练信号。

通过所提出的更改,可变形模块仍然是轻量级的,并且可以很容易地集成到现有的网络架构中。具体而言,我们将DCNv2与各种主干网络结合到FasterRCNN[33]和Mak R-CNN[20]系统中。在COCO基准上的大量实验表明,DCNv2在目标检测和实例分割方面比DCNv1有显著的改进。DCNv2的代码将被发布。

2.变形网络行为分析

2.1. 空间支持可视化

为了更好地理解可变形网络的行为,我们通过网络节点的有效感受野[31]、有效采样位置和误差界显著区域(error-bounded saliency regions)来可视化网络节点的空间支持。这三种模式对有助于节点响应的基础图像区域提供了不同和互补的视角。(These three modalities provide different and complementary perspectives on the underlying image regions that contribute to a node’s response)

有效感受野

并非网络节点感受野内的所有像素对其响应的贡献相等。这些贡献的差异由有效感受野表示,其值计算为节点响应相对于每个图像像素的强度扰动的梯度[31]。我们利用有效感受野来检查单个像素对网络节点的相对影响,但注意,这种测量并不能反映完整图像区域的结构性影响。

有效采样/bin位置(Effective sampling / bin locations)

在[8]中,(堆叠的)卷积层的采样位置和混合层中的采样bin被可视化,以了解可变形网络的行为。然而,没有揭示这些采样位置对网络节点的相对贡献。相反,我们将包含此信息的有效采样位置可视化,计算为网络节点相对于采样/bin位置的梯度,以便了解其贡献强度。

误差有界显著区域(Error-bounded saliency regions )

如果我们移除不影响网络节点的图像区域,网络节点的响应将不会改变,正如最近关于图像显著性的研究[41,44,13,7]所示。基于这个特性,我们可以在一个小的误差范围内,将一个节点的支持区域确定为最小的图像区域,给出与完整图像相同的响应。我们将其称为error bounded显著性区域,该区域可通过逐步掩蔽图像部分并计算得到的节点响应来找到,详见附录。误差有界显著区域便于比较不同网络的支持区域。

2.2. 可变形网格的空间支持

我们分析了可变形网络在目标检测中的视觉支持区域。我们用作基线的常规卷积网络由FasterRCNN+ReNet-50[21]对象检测器和aligned RoIpooling1[20](注:即RoIAlign)组成。ReNet-50中的所有卷积层都应用于整个输入图像。conv5阶段的有效跨步从32像素减少到16像素,以提高特征映射分辨率。RPN[33]头添加在ReNet-101的conv4特征之上。在conv5特征之上,我们添加了Fast R-CNN头[16],它由aligned RoIpooling和两个完全连接(fc)层组成,然后是分类和边界框回归分支。我们按照[8]中的步骤将对象检测器转换为其可变形的对应对象。conv5阶段的三层3×3卷积被可变形卷积层取代。此外,对齐的RoIpooling层被可变形RoIpooling替换。这两个网络都在COCO基准上进行了训练和可视化。值得一提的是,当偏移学习速率设置为零时,可变形FasterRCNN检测器退化为具有 aligned RoIpooling的规则FasterRCNN。

使用这三种可视化模式,我们检查了conv5阶段最后一层中节点的空间支持,见图1(a)∼(b) 。还显示了[8]中分析的采样位置。通过这些可视化,我们进行了以下观察:

1.常规卷积网络可以在一定程度上模拟几何变化,这可以通过图像内容的空间支持变化来证明。由于深卷积网络强大的表示能力,网络权重被学习以适应一定程度的几何变换。

2.通过引入可变形卷积,即使在具有挑战性的COCO基准上,网络对几何变换建模的能力也大大增强。空间支持更多地适应图像内容,前景上的节点具有覆盖整个对象的支持,而背景上的节点具有包含更大上下文的扩展支持。然而,空间支持的范围可能是不精确的,前景节点的有效感受野和误差界显著区域包括与检测无关的背景区域。

3.与[8]中使用的采样位置相比,所呈现的三种类型的空间支持可视化信息更丰富。例如,这可以在常规卷积网络中看到,它沿网格具有固定的采样位置,但实际上通过网络权重调整其有效的空间支持。可变形网络也是如此,其预测受学习的偏移量和网络权重的共同影响。如[8]中所述,单独检查采样位置可能会导致关于可变形网络的误导性结论。

图2(a)∼(b) 在每RoI检测头中显示2fc节点的空间支持,紧接着是分类和边界框回归分支。有效bin位置的可视化表明,对象前景上的bin通常从分类分支接收更大的梯度,从而对预测产生更大的影响。这一观察结果适用于对齐ROI池化和可变形ROI池化。在可变形RoIpooling中,由于引入了可学习的bin偏移,bin覆盖对象前景的比例比对齐RoIpooling大得多。因此,下游Fat R-CNN头部可从相关bin子获得更多信息。同时,对齐RoI池化和可变形RoI池化中的误差有界显著性区域没有完全聚焦于对象前景,这表明RoI之外的图像内容会影响预测结果。根据最近的一项研究[6],这种特征干扰可能对检测有害。

虽然与常规卷积网络相比,可变形卷积网络明显提高了适应几何变化的能力,但也可以看出,它们的空间支持可能延伸到感兴趣的区域之外。因此,我们寻求升级可变形卷积网络,以便它们能够更好地关注相关的图像内容,并提供更高的检测精度。

3.更多可变形网络

为了提高网络适应几何变化的能力,我们提出了一些改进,以增强其建模能力,并帮助其利用这种增强的能力。

3.1. 堆叠更多可变形卷积层

受可变形卷积网络可以在具有挑战性的基准上有效地建模几何变换的观察结果的鼓舞,我们大胆地用可变形的conv层替换更规则的conv层。我们期望通过堆叠更多可变形conv层,可以进一步增强整个网络的几何变换建模能力。

在本文中,可变形卷积应用于ReNet-50中conv3、conv4和conv5阶段的所有3×3 conv层。因此,网络中有12层可变形卷积。相反,在[8]中只使用了三层可变形卷积,所有这些都在conv5阶段。[8]中观察到,对于相对简单和小规模的PACAL VOC基准,当堆叠超过三层时,性能会饱和。此外,COCO上误导性的偏移可视化可能阻碍了对更具挑战性基准的进一步探索。在实验中,我们观察到在conv3-conv5阶段使用可变形层可以在COCO上实现目标检测的精度和效率之间的最佳折衷。详见第5.2节。

3.2. 调制可变形模块

为了进一步增强可变形网络操纵空间支撑区域的能力,引入了一种调制机制。有了它,可变形卷积网络模块不仅可以调整感知输入特征的偏移量,还可以调制来自不同空间位置/bin的输入特征振幅。在极端情况下,模块可以通过将其特征振幅设置为零来决定不感知来自特定位置/bin的信号。因此,来自相应空间位置的图像内容将显著减少或不会对模块输出产生影响。因此,调制机制为网络模块提供另一维度的自由来调整其空间支持区域。

给定K个采样位置的卷积核,让wk和pk分别表示第K个位置的权重和预先指定的偏移量。例如,K=9和pk∈ {(−1.−1),(−1,0),…,(1,1)}定义了扩张1的3×3卷积核。设x(p)和y(p)分别表示来自输入特征映射x和输出特征映射y的位置p处的特征。然后,调制的可变形卷积可以表示为

哪里∆pk和∆mk分别是第k个位置的可学习偏移量和调制标量。调制标量∆mk在[0,1]范围内,而∆pk是一个范围不受限制的实数。作为p+pk+∆pk是分数,双线性插值在计算x(p+pk+∆pk)。二者都∆pk和∆mk通过应用于相同输入特征映射x上的单独卷积层获得。该卷积层与当前卷积层具有相同的空间分辨率和伸缩性。输出为3K通道,其中前2K通道对应于学习的偏移{∆pk}Kk=1,并且剩余的K个信道进一步馈送到igmoid层以获得调制标量{∆mk}Kk=1。这个单独的卷积层中的内核权重被初始化为零。因此,初始值∆pk和∆mk分别为0和0.5。用于偏移和调制学习的添加conv层的学习速率设置为现有层的0.1倍。

调制可变形ROI池化的设计类似。给定一个输入RoI,RoI池化将其划分为K个空间单元(例如7×7)。在每个bin子内,应用均匀空间间隔的采样网格(例如2×2)。网格上的采样值取平均值以计算bin子输出。允许∆pk和∆mk是第k个存储单元的可学习偏移量和调制标量。输出装bin特征y(k)的计算如下:

其中pkj是第k个bin子中第j个网格单元的采样位置,nk表示采样网格单元的数量。双线性插值用于获得特征x(pkj+∆pk)。价值观∆pk和∆mk由输入特征映射上的同级分支生成。在这个分支中,RoI池化在RoI上生成特征,然后是两个1024-D的fc层(用标准偏差的高斯分布0.01初始化)。最重要的是,额外的fc层产生3K通道的输出(权重初始化为零)。前2K个通道是标准化的可学习偏移量,其中计算RoI宽度和高度的元素乘法以获得{∆pk}Kk=1。剩余的K通道由igmoid层归一化以产生{∆mk}Kk=1。用于偏移学习的添加fc层的学习速率与现有层的学习速率相同。

3.3. R-CNN特征模拟

如图2所示,每个RoI分类节点的误差有界显著性区域可以延伸到常规卷积网络和可变形卷积网络的RoI之外。因此,RoI之外的图像内容可能会影响提取的特征,从而降低目标检测的最终结果。

在[6]中,作者发现冗余上下文是更快R-CNN检测错误的合理来源。结合其他动机(例如,在分类和包围盒回归分支之间共享较少的特征),作者建议结合FasterRCNN和R-CNN的分类分数,以获得最终检测分数。由于R-CNN分类分数集中在来自输入RoI的裁剪图像内容上,因此合并它们将有助于缓解冗余上下文问题并提高检测精度。然而,由于快速的RCNN和R-CNN分支都需要应用于训练和推理,因此组合系统的速度较慢。

同时,可变形网络在调整空间支撑区域方面具有强大的功能。特别是对于可变形卷积网络v2,调制的可变形RoIpooling模块可以简单地以排除冗余上下文的方式设置容器的调制标量。然而,我们在第5.3节中的实验表明,即使使用调制的可变形模块,也无法通过标准FasterRCNN训练程序很好地学习此类表示。我们怀疑

同时,可变形网络在调整空间支撑区域方面具有强大的功能。特别是对于可变形卷积网络v2,调制的可变形RoIpooling模块可以简单地以排除冗余上下文的方式设置容器的调制标量。然而,我们在第5.3节中的实验表明,即使使用调制的可变形模块,也无法通过标准FasterRCNN训练程序很好地学习此类表示。我们怀疑这是因为传统的更快的RCNN训练损失不能有效地驱动这种表示的学习。需要额外的指导来指导训练。

受最近关于特征模拟的工作[2,22,28]的推动,我们在可变形FasterRCNN的每RoI特征上加入了特征模拟损失,以迫使它们与从裁剪图像中提取的R-CNN特征相似。此辅助训练目标旨在驱动可变形FasterRCNN,以学习更“集中”的特征表示,如R-CNN。我们注意到,基于图2中可视化的空间支持区域,对于图像背景上的负ROI,聚焦特征表示可能不是最优的。对于背景区域,可能需要考虑更多的上下文信息,以避免产生误报检测。因此,特征模拟损失仅在与地面真实对象充分重叠的正ROI上实施。

图3给出了训练可变形FasterRCNN的网络架构。除了FasterRCNN网络外,还增加了一个R-CNN分支,用于功能模拟。给定一个用于特征模拟的RoI b,相应的图像块将被裁剪并调整为224×224像素。在R-CNN分支中,主干网络对调整大小的图像块进行操作,并生成14×14空间分辨率的特征图。在特征映射顶部应用(调制)可变形RoI池化层,其中输入RoI覆盖整个调整大小的图像块(左上角为(0,0),高度和宽度为224像素)。之后,应用2个1024-D的fc层,为输入图像面片生成R-CNN特征表示,由fRCNN(b)表示。一个(C+1)路oftmax分类器用于分类,其中C表示前景类别的数量,加上一个用于背景。特征模拟损失在R-CNN特征表示fRCNN(b)和Fast R-CNN中的对应物fFRCNN(b)之间强制执行,fFRCNN(b)也是1024-D,由Fast R-CNN头部中的2个fc层产生。特征模拟损失定义在fRCNN(b)和fFRCNN(b)之间的余弦相似性上,计算如下:

哪里Ω 表示为特征模拟训练而采样的ROI集。在GD训练中,给定一幅输入图像,将RPN生成的32个正区域建议随机抽样到每个区域Ω. 在R-CNN分类头上强制执行交叉熵分类损失,也在中计算ROIΩ. 网络训练由特征模拟损失和R-CNN分类损失以及FasterRCNN中的原始损失项驱动。两个新引入的损失项的损失权重是原来FasterRCNN损失项的0.1倍。R-CNN和FasterRCNN分支中的相应模块之间的网络参数是共享的,包括主干网络,(调制)可变形ROI池化和2个fc头(两个分支中的分类头是非共享的)。在推理中,只有FasterRCNN网络应用于测试图像,而没有辅助的R-CNN分支。因此,推理中的R-CNN特征模拟不会引入额外的计算。

4.相关工作

变形建模是计算机视觉中一个长期存在的问题,在设计平移不变特征方面付出了巨大的努力。在深度学习时代之前,著名的工作包括尺度不变特征变换(IFT)[30]、定向快速旋转模型(ORB)[34]和基于变形部件的模型(DPM)[12]。这些作品受到手工特征的低表示能力以及它们所处理的几何变换(例如仿射变换)的约束族的限制。空间变换网络(TN)[25]是第一个学习深层CNN平移不变特征的工作。它学习将全局仿射变换应用于扭曲特征映射,但这种变换不能充分模拟许多视觉任务中遇到的更复杂的几何变化。与执行全局参数变换和特征扭曲不同,可变形卷积网络通过所提出的可变形卷积和可变形RoIpooling模块中的可学习偏移量,以局部和密集的方式对特征映射进行采样。可变形卷积网络是第一个在具有挑战性的基准上对复杂视觉任务(例如,目标检测和语义分割)中的几何变换进行有效建模的工作。

我们的工作通过增强其建模能力和促进网络训练来扩展可变形网络。与原始模型相比,这种新版本的可变形卷积网络产生了显著的性能提升。

关系网络和注意模块是在自然语言处理[14,15,4,36]和物理系统建模[3,38,23,35,10,32]中首次提出的。注意/关系模块通过聚合一组元素(例如,句子中的所有单词)的特征来影响单个元素(例如,句子中的一个单词),其中聚合权重通常根据元素之间的特征相似性来定义。它们在捕获这些任务中的远程依赖关系和上下文信息方面非常强大。最近,[24]和[37]的并行工作成功地将关系网络和注意模块扩展到了图像领域,分别用于建模远程对象和像素关系。在[19]中,提出了一种可学习的区域特征提取器,从像素-对象关系的角度统一了先前的区域特征提取模块。此类方法的一个常见问题是,需要以成对方式对元素计算聚合权重和聚合操作,从而导致与元素数量(例如,图像中的所有像素)成二次方的繁重计算。我们开发的方法可以被视为一种特殊的注意机制,其中只有一组稀疏的元素具有非零聚合权重(例如,所有图像像素中的3×3像素)。参与元素由可学习偏移量指定,聚合权重由调制机制控制。计算开销仅与元素数量成线性关系,与整个网络的计算开销相比可以忽略不计(见表1)。

空间支持操作。

对于atru卷积,卷积层的空间支持已通过在卷积核中填充零来扩大[5]。填充参数是手工挑选和预先确定的。在主动卷积[26]中,它与可变形网络同步,卷积核偏移是通过反向传播学习的。但偏移量是训练后固定的静态模型参数,在不同的空间位置共享。在用于对象检测的多路径网络中[40],每个输入RoI采用多个RoI池化层,以更好地利用多尺度和上下文信息。多个RoI池化层以输入RoI为中心,具有不同的空间尺度。这些方法的一个常见问题是,空间支持由静态参数控制,不适合图像内容。

有效感受野和显著区。

为了更好地解释深层网络的功能,在理解哪些图像区域对网络预测贡献最大方面取得了重大进展。最近关于有效感受野[31]和显著区域[41,44,13,7]的研究表明,理论感受野中只有一小部分像素对最终网络预测有显著贡献。有效支撑区域由网络权重和采样位置的联合效应控制。在这里,我们利用开发的技术来更好地理解可变形网络的网络行为。由此产生的观察结果指导并激励我们改进原始模型。

网络模拟和蒸馏是最近引入的模型加速和压缩技术。给定一个大的教师模型,通过模仿教师模型输出或训练图像上的特征响应来训练一个紧凑的学生模型[2,22,28]。希望通过从大型模型中提取知识,可以更好地训练紧凑型模型。在这里,我们使用特征模拟损失来帮助网络学习反映R-CNN特征的对象焦点和分类能力的特征。提高了精度,可视化的空间支撑也证实了这种方法。

5.实验

5.1. 实验装置

我们的模型根据COCO 2017列车组的118k图像进行训练。在消融过程中,对COCO 2017验证集的5k图像进行评估。我们还评估了COCO 2017测试开发集的20k图像的性能。使用不同盒子和遮罩IOU下的标准平均精度分数分别测量对象检测和实例分割精度。

选择FasterRCNN和掩模R-CNN作为基线系统。ImageNet[9]预先训练的ReNet-50用作主干网。更快的RCNN的实现与第3.3节中的相同。对于Mak R-CNN,我们遵循[20]中的实现。为了将网络转化为可变形的对应网络,最后一组3×3规则conv层(接近自底向上计算中的输出)被(调制的)可变形conv层替换。对齐的RoIpooling被(调制的)可变形RoIpooling取代。特别是对于Mak R-CNN,两个具有7×7和14×14bin的对齐ROI池化层被具有相同bin号的两个(调制)可变形ROI池化层替换。在R-CNN特征模拟中,特征模拟损失仅用于分类(不包括掩模估计)。对于这两种系统,超参数的选择都遵循最新的Detectron[18]代码库,但图像分辨率除外,这里简要介绍了图像分辨率。在训练和推理中,图像都会调整大小,使较短的一侧为1000像素2。使用5个比例和3个长宽比的锚。在训练和推理时,分别以0.7的非最大抑制阈值生成2k和1k区域建议。在GD训练中,对256个锚bin(正负比为1:1)和512个区域建议(正负比为1:3)进行采样,以反向传播其梯度。在我们的实验中,网络在8个GPU上训练,每个GPU有2个图像,持续16个时代。学习率初始化为0.02,并在第10个和第14个阶段除以10。重量衰减和动量参数设置为10−分别为4和0.9。

5.2. 强化变形模拟

从表1所示的烧蚀中检查了强化变形建模的效果。使用常规CNN模块的基线测试中,FasterRCNN的APbbox得分为34.7%,Mak R-CNN的APbbox和APmak得分分别为36.6%和32.2%。为了获得DCNv1基线,我们遵循原始的可变形卷积网络文件,将conv5阶段的最后三层3×3卷积和对齐ROI池化层替换为其可变形对应层。对于FasterRCNN,DCNv1基线的APbbox得分为38.0%,对于Mak R-CNN,APbbox和APmak得分分别为40.4%和35.3%。如[8]所述,可变形模块显著提高了精度。

通过将更多3×3的常规conv层替换为其可变形对应层,更快的RCNN和掩模R-CNN的精度稳步提高,当替换conv3-conv5中的conv层时,APbbox和APmak分数的增益在2.0%到3.0%之间。通过在conv2阶段进一步替换常规conv层,在COCO基准上没有观察到任何额外的改进。通过将可变形模块升级为调制可变形模块,我们在APbbox和APmak分数方面获得了0.3%到0.7%的进一步增益。总的来说,丰富变形建模能力在FasterRCNN上产生41.7%的APbbox分数,比DCNv1基线高3.7%。在Mak R-CNN上,通过丰富变形建模获得43.1%的APbbox和37.3%的APmak分数,分别比DCNv1基线高2.7%和2.0%。请注意,与整个网络相比,用于丰富变形建模的附加参数和触发器较少。

如图1(b)所示∼(c) ,与DCNv1相比,丰富的可变形建模的空间支持对图像内容表现出更好的适应性。

表2显示了输入图像分辨率为800像素时的结果,该分辨率遵循Detectron代码库中的默认设置。同样的结论也成立。

5.3. R-CNN特征模拟

R-CNN特征模拟中设计选择的烧蚀如表3所示。通过丰富的变形建模,在FasterRCNN和Mak R-CNN系统中,R-CNN特征模拟进一步将APbbox和APmak分数提高约1%至1.4%。研究发现,在对象前景上模拟正框的特征特别有效,并且当模拟所有框或仅模拟负框时,结果要低得多。如图2(c)所示∼(d) ,特征模拟可以帮助网络特征更好地聚焦于对象前景,这有利于正面框。对于负面框,网络倾向于利用更多的上下文信息(参见图2),而功能模拟则没有帮助。

我们还将R-CNN特征模拟应用于无任何可变形层的常规卷积网络。几乎没有观察到精度增益。可视化的空间支撑区域如图2(e)所示,即使有辅助模拟损失,也不会聚焦在对象前景上。这可能是因为将特征聚焦在对象前景上超出了常规卷积网络的表示能力,因此无法了解这一点。

5.4. 强壮脊柱的应用

用ReNet-101和ReNext-101取代ReNet-50[39]后,在更坚固的主干上的结果如表4所示。对于DCNv1的条目,conv5阶段中的规则3×3 conv层被可变形对应物替换,对齐的ROI池化被可变形的ROI池化替换。对于DCNv2条目,conv3-conv5级中的所有3×3 conv层均为调制可变形卷积,并使用调制可变形ROI池化,由RCNN功能模拟损耗进行监督。发现DCNv2在所有网络主干上的性能都明显优于常规的卷积网络和DCNv1。

6.结论

尽管可变形卷积网络在建模几何变化方面具有优异的性能,但其空间支持远远超出了感兴趣的区域,导致特征受到无关图像内容的影响。在本文中,我们提出了一种改进的可变形卷积网络,通过增强建模能力和更强的训练,提高了其聚焦相关图像区域的能力。在COCO目标检测和实例分割基准上获得了显著的性能提升。

A1。误差有界图像显著性

在现有的图像显著性研究[41,44,13,7]中,广泛使用的公式如下。给定输入图像I和经过训练的网络N,让N(I)表示原始图像上的网络响应。与I具有相同空间维度的二元掩模M可以与I一样应用于图像⊙ M.对于其中M(p)=1的图像像素p,其内容保持在遮罩图像中。同时,如果M(p)=0,则在遮罩图像中将内容设置为0。通过优化损失函数L(M)=| | N(I)得到显著性图− N(I)⊙ M) | | 2+λ| | M | | 1作为M的函数,其中λ是平衡输出重建误差| | N(I)的超参数− N(I)⊙ M) | | 2和显著面积损失| | M | | 1。优化后的掩模M称为显著图。问题是很难在指定的重建误差下获得显著区域。因此,很难在相同的重建误差下比较两个网络的显著区域。

我们寻求在图像显著性公式中严格限制重建损失,以便在不同网络中得到的显著区域之间进行比较。因此,优化问题稍微修改为

式中,Lrec(N(I),N(I⊙ M) )表示任意形式的重建损失,其严格受i限制。我们将优化掩模中{p | M(p)=1}的图像像素集合称为视觉支持区域。

由于引入了硬重建误差约束,等式(4)中的公式难以优化。在这里,我们开发了一个启发式的两步程序,以减少在推导视觉支持区域时的搜索空间。在第一步中,视觉支持区域被约束为任意形状的矩形。矩形以要解释的节点为中心。矩形以面积大小0初始化,并逐渐放大(以均匀面积增量)。当满足重建误差约束时,放大停止。在第二步,在矩形区域内导出像素级视觉支持区域。利用文献[1]中的算法将图像分割成超像素,以限制解空间。初始时,矩形内的所有超级像素在视觉支持区域中计数(取掩码值1)。然后以贪婪的方式逐渐去除超级像素。在每次迭代中,导致重建误差上升最小的超级像素被移除。迭代停止,直到移除更多超级像素违反约束为止。

我们采用两步程序在FasterRCNN对象检测器中可视化网络节点[33]。我们可视化了整个图像上共享的特征映射节点,以及每RoI检测头中的2fc节点,该节点后面紧跟着分类和边界框回归分支。对于图像特征映射节点(在特定位置),在两步过程中应用方形矩形。对于RoI特征节点,矩形与输入RoI具有相同的纵横比。对于图像级和RoI级节点,重建损失为1减去从遮罩图像和原始图像得到的特征向量之间的余弦相似性。误差上限i设置为0.1。

A2。具有不同图像分辨率的DCNv2

图4显示了在不同分辨率的图像上应用常规卷积网络和DCNv2的结果。基线模型使用ReNet-50[21]和ReNet-101比R-CNN更快。模型分别在短边{400、600、800、1000、1200、1400}像素的图像上进行训练和应用。发现DCNv2在所有输入分辨率上都优于常规卷积网络。对于DCNv2,最高APbbox分数是在输入图像较短的1000像素处获得的。当短边大于1000像素时,常规卷积网络的APbbox分数显著降低,而DCNv2的APbbox分数几乎没有变化。这种现象在大中型物体中更为明显。如图5所示,常规卷积网络的空间支持仅能覆盖如此高分辨率的大对象的一小部分,并且精度受到影响。同时,DCNv2的空间支持可以有效地适应不同分辨率的目标。

表5给出了使用ReNet-101进行多尺度测试的结果。我们首先在多尺度测试图像上应用在最佳单尺度设置(1000像素的短边)上训练的DCNv2模型。根据最新的Detectron[18]代码库,测试图像的范围从400到1400像素,步长为200像素。与最佳单标度设置相比,DCNv2的多标度测试将APbbox分数提高了1.2%。

A3。ImageNet预训练DCNv2

众所周知,许多视觉任务受益于ImageNet预训练。本节研究在ImageNet[9]上对DCNv2的可学习偏移量和调制标量进行预训练,并对若干任务进行微调。

图像网预训练

DCNv2及其DCNv1[8]和常规卷积网络对应项在ImageNet-1K训练集上进行了预训练。在实验中,我们遵循[39]的训练和推理设置。在DCNv1中,conv5阶段的3×3 conv层被可变形conv层取代。在DCNv2中,conv3中的所有3×3 conv层∼conv5级由调制的可变形conv层代替。

表6显示了验证集上的前1名和前5名分类精度。与常规基线和DCNv1基线相比,DCNv2实现了显著的改进,只需少量额外的计算开销。DCNv2丰富的变形建模能力有利于ImageNet分类任务本身。

针对特定任务进行微调

我们研究了ImageNet预训练DCNv2模型在几个任务上的效果,包括Pacal VOC的目标检测、ImageNet VID和COCO,以及Pacal VOC3的语义分割。在实验中,分别采用FasterRCNN和DeepLab-v1[5]作为目标检测和语义分割的基线系统。对于COCO上的目标检测,我们遵循与第5.1节相同的设置。对于Pacal VOC的实验,我们主要遵循[8]的训练和推理设置。请注意,基线精度高于[8]中报告的精度,这主要是因为更好的ImageNet预训练模型和在目标检测中引入ROIALLIGN。对于ImageNet VID上的目标检测,我们主要遵循[27,43,42]中关于训练和推理设置的协议。详细情况见本节末尾。

表7比较了使用不同预训练模型的DCNv2在各种任务上的性能。通过在ImageNet上预先训练可学习的偏移量和调制标量,而不是在微调之前将其初始化为零,可以在PACAL VOC对象检测和语义分割方面观察到显著的精度改进。同时,预训练对COCO检测的影响较小。这可能是因为COCO更大、更具挑战性的基准足以从头学习偏移量和调制标量。

ImageNet视频设置。模型在ImageNet VID训练集和ImageNet DET训练集的并集上进行训练(仅使用相同的30个类别标签),并在ImageNet VID验证集上进行评估。在训练和推理中,输入图像的大小被调整为600像素的短边。在RPN中,锚定具有3个纵横比{1:2,1:1,2:1}和4个标度{642,1282,2562,5122}。在0.7 IoU的NM阈值下,为每个帧生成300个区域建议。执行GD训练,每个小批次有一个图像。在4个GPU上执行120k迭代,每个GPU持有一个小批量。学习率为10%−3和10−在rt 80k和最后40k迭代中分别为4。在每个小批量中,以1:1的比例从ImageNet DET和ImageNet VID中采集图像。权重衰减和动量参数分别设置为0.0001和0.9。在推理中,检测框以0.3 IoU的NM阈值生成。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,530评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,403评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,120评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,770评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,758评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,649评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,021评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,675评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,931评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,751评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,410评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,004评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,969评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,042评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,493评论 2 343

推荐阅读更多精彩内容