Mask R-CNN 翻译

摘要

我们提出了一个概念上简单,灵活和通用的对象实例分割框架。我们的方法可以高效地检测图像中的物体,同时为每个物体生成高质量的分割蒙版。这种称为Mask R-CNN的方法通过添加一个用于预测对象掩码的分支来扩展更快的R-CNN,该分支与现有分支进行边界框识别并行。掩码R-CNN训练简单,只增加了一小部分开销,以更快的R-CNN,以5fps运行。此外,Mask R-CNN很容易推广到其他任务,例如允许我们在相同的框架中估计人的姿势。我们在COCO全套挑战的所有三个轨道中展示了最佳结果,包括实例分割,边界框对象检测和人员关键点检测。没有任何技巧,Mask R-CNN在每个任务中胜过所有现有的单模型作品,包括COCO 2016挑战获胜者。我们希望我们简单有效的方法将成为一个坚实的基线,并有助于缓解未来实例级别识别的研究。代码已在:https://github.com/ facebookresearch / Detectron上提供。

引言

视觉社区在短时间内迅速改进了对象检测和语义分割结果。在很大程度上,这些进步是由强大的基线系统驱动的,例如分别用于对象检测和语义分割的快速/快速R-CNN [12,36]和完全卷积网络(FCN)[30]框架。这些方法在概念上是直观的,并提供了灵活性和鲁棒性,以及快速的训练和推理时间。我们在这项工作中的目标是为实例分割开发一个相对有利的框架。
实例分割是具有挑战性的,因为它要求正确检测图像中的所有对象,同时精确地分割每个实例。因此,它结合了来自对象检测的经典计算机视觉任务的元素,其目标是对各个对象进行分类,并使用边界框对每个对象进行本地化,以及语义分割,其目的是将每个像素分类为固定集没有区分对象实例.鉴于此,可能需要一个复杂的方法才能取得好的结果。然而,我们表明,一个令人惊讶的简单,灵活,快速的系统可以超越先前的先进实例分割结果。
我们的方法称为掩模R-CNN,通过在每个感兴趣区域(RoI)上添加一个分支来预测分割掩模,并与现有分支并行进行分类和边界框回归,从而扩展更快的R-CNN [36] (图1)。掩模分支是应用于每个RoI的小FCN,以像素到像素的方式预测分割掩模。由于R-CNN框架更为快速,mask R-CNN的实施和训练非常简单,这有助于实现各种灵活的架构设计。另外,掩码分支只会增加一个小的计算开销,从而实现快速系统和快速实验。

原则上,Mask R-CNN是Faster R-CNN直观扩展,但正确构建 mask 分支对于获得良好效果至关重要。最重要的是,更快的R-CNN并非针对网络输入和输出之间的像素对像素对齐而设计的。

RoIPool [18,12]这个事实上的核心操作是如何针对实例进行特征提取的粗空间量化,这一点最为明显。为了修正偏差,我们提供了一个简单的,无量化的图层,称为RoIAlign,忠实地保留了确切的空间位置。尽管是一个看似微小的变化,但RoIAlign具有很大的影响力:它将掩模精确度提高了10%到50%,在更严格的本地化指标下显示出更大的收益。其次,我们发现将掩码和类别预测分离是非常重要的:我们预测每个类别的独立二进制掩码,而不需要在类别间进行竞争,并依靠网络的RoI分类分支来预测类别。

相比之下,FCN通常执行每像素多类别分类,其将分割和分类结合起来,并且基于我们的实验在分割的情况下效果不佳。
没有花里胡哨之力,Mask R-CNN在COCO实例分割任务[28]上超越了以前所有先进的单模式结果,其中包括2016年竞赛冠军的大量工程设计。作为副产品,我们的方法也擅长COCO物体检测任务。在消融实验中,我们评估了多个基本实例,这使我们能够展示它的稳健性并分析核心因素的影响。

我们的模型可以在GPU上以每帧200毫秒的速度运行,并且在单个8 GPU计算机上进行COCO训练需要一到两天。我们相信,快速训练和测试速度以及框架的灵活性和准确性将有益于并简化对实例细分的未来研究。

最后,我们通过COCO关键点数据集上的人体姿态估计任务展示了我们框架的一般性[28]。通过将每个关键点视为一个热门的二进制掩码,并进行最小限度的修改Mask R-CNN可用于检测特定于实例的姿势。 Mask R-CNN超越2016年COCO关键竞争优胜者,同时以5 fps的速度运行。因此,Mask R-CNN可以更广泛地视为实例级识别的灵活框架,并且可以很容易地扩展到更复杂的任务。

我们已发布代码以促进未来的研究。

这里写图片描述

3.掩码R-CNN

掩码R-CNN在概念上是简单的:更快的R-CNN对于每个候选对象具有两个输出,一个类别标签和一个边界框偏移;为此,我们添加一个输出对象掩码的第三个分支。

面具R-CNN因此是一个自然而且富有创意的想法。但额外的蒙板输出不同于类和箱子的输出,需要提取更精细的物体空间布局。

接下来,我们介绍Mask R-CNN的关键元素,包括像素对像素对齐,这是Fast / Faster R-CNN的主要缺失部分。

更快的R-CNN:我们首先简要回顾一下更快的R-CNN探测器[36]。更快的R-CNN由两个阶段组成。第一阶段称为区域提议网络(RPN),提出候选对象边界框。

第二阶段本质上是Fast R-CNN [12],使用每个候选框中的RoIPool提取特征,并执行分类和边界框回归。两个阶段使用的功能可以共享以加快推断速度。我们引用读者[21]对Faster R-CNN和其他框架进行最新,全面的比较。

掩码R-CNN:掩码R-CNN采用相同的两阶段过程,具有相同的第一阶段(即RPN)。在第二阶段,与预测类和盒子偏移并行,Mask R-CNN还为每个RoI输出一个二进制掩码。这与最近的系统形成对比,其中分类取决于掩模预测(例如[33,10,26])。我们的方法遵循快速R-CNN [12]的精神,它并行应用了边界框分类和回归(这实际上极大地简化了原始R-CNN的多级流水线[13])。

形式上,在训练期间,我们将每个抽样的RoI的多任务丢失定义为L = Lcls + Lbox + Lmask。分类损失Lcls和边界盒丢失Lbox与[12]中定义的一样。掩模分支对于每个RoI具有Km2维输出,其编码分辨率为m×m的K个二进制掩码,每个K类一个掩码。

为此,我们应用每像素S形,并将Lmask定义为平均二叉交叉熵损失。对于与地面真值等级k相关的RoI,Lmask仅在第k个掩模上定义(其他掩模输出不会造成损失)。

我们对Lmask的定义允许网络为每个类生成mask,而不需要在class间进行竞争。

我们依靠专用分类分支来预测用于选择输出掩码的类别标签。这样可以将掩码和类别预测分开。这与将FCN [30]应用于语义分割时的常见做法不同,后者通常使用每像素softmax和多重交叉熵损失。

在这种情况下,跨类的mask竞争;在我们的例子中,每像素S形和二进制丢失,他们不。我们通过实验表明,这种构造是良好实例分割结果的关键。

掩码表示法:掩码编码输入对象的空间布局。因此,与通过完全连接(fc)层不可避免地折叠成短输出矢量的类标签或框偏移不同,提取掩模的空间结构可以通过卷积提供的像素到像素对应自然地解决。

具体而言,我们使用FCN预测来自每个RoI的m×m掩模[30]。这允许掩码分支中的每个层保持显式的m×m对象空间布局,而不会将其折叠为缺少空间维度的向量表示。

与以前用于掩模预测的fc层的方法不同[33,34,10],我们的完全卷积表示需要的参数更少,并且如实验所证明的那样更精确。

这种像素到像素的行为要求我们的RoI特征(它们本身就是小特征图)能够很好地对齐,以忠实地保留显式的每像素空间相关性。这促使我们开发了以下RoAlign图层,该图层在遮罩预测中发挥关键作用。

RoIlign:RoIPool [12]是从每个RoI提取小特征映射(例如7×7)的标准操作。

RoIPool首先将浮点数RoI量化为特征映射的离散粒度,然后将该量化的RoI细分为自身量化的空间仓,最后聚合每个仓所涵盖的特征值(通常通过最大池)。

通过计算[x / 16]在例如连续坐标x上执行量化,其中16是特征映射步长且[·]舍入;同样地,当分成分箱时执行量化(例如,7×7)。

这些量化引入了RoI和提取的特征之间的错位。

虽然这可能不会影响分类,这对于小型翻译很有用,但它对预测像素精确的mask有很大的负面影响。

为了解决这个问题,我们提出了一个RoIlign层,它可以消除RoIPool的严格量化,正确对齐提取的特征和输入。

我们提出的改变很简单:我们避免任何RoI边界或分组的量化(即,我们使用x / 16而不是[x / 16])。

我们使用双线性插值[22]来计算每个RoI bin中四个有规律采样位置处输入特征的精确值,并汇总结果(使用最大值或平均值),详细信息请参见图3。

我们注意到,只要没有执行量化,结果对于确切的采样位置,或者采样点有多少都不敏感。

正如我们在§4.2中所展示的,RoIAlign带来了巨大的改进。我们也比较了[10]中提出的RoIWarp操作。

与RoIlign不同,RoIWarp忽略了对齐问题,并在[10]中将RoI与RoIPool一样量化为RoI。

因此,即使RoIWarp也采用[22]激励的双线性重采样,它可以像RoIPool一样实验(表2c中的更多细节),证明了对齐的关键作用。

网络体系结构:为了演示我们方法的一般性,我们实例化具有多种体系结构的Mask R-CNN。为了清楚起见,我们区分:(i)用于在整个图像上进行特征提取的卷积骨架体系结构,以及(ii)用于边界框识别(分类和回归)的网络头部和分别应用于每个RoI的掩码预测。
我们使用命名网络深度特征来表示骨干架构。我们评估深度为50或101层的ResNet [19]和ResNeXt [45]网络。带有ResNets [19]的Faster R-CNN的最初实现从第四阶段的最后卷积层提取特征,我们称之为C4。例如,ResNet-50的骨干用ResNet-50-C4表示。这是[19,10,21,39]中常用的选择。
我们还探索了Lin等人最近提出的另一种更有效的骨干。 [27],称为特征金字塔网络(FPN)。

FPN使用具有横向连接的自顶向下架构从单一比例输入构建网络内特征金字塔。更快的R-CNN与FPN骨骼根据其规模从不同层次的特征金字塔中提取RoI特征,但其他方法与香草ResNet相似。使用ResNet-FPN主干进行Mask R-CNN特征提取,可以提高精度和速度。有关FPN的更多详细信息,请参阅[27]。

对于网络头,我们密切关注以前工作中提出的体系结构,我们在其中添加了一个完全卷积的掩码预测分支。具体来说,我们使用ResNet [19]和FPN [27]论文中的更快的R-CNN盒头。细节如图4所示。ResNet-C4骨干网的头部包含ResNet的第5级(即9层’res5’[19]),这是计算密集型的。对于FPN,骨干已经包含res5,因此允许使用更少滤波器的更高效的头部。

我们注意到我们的掩码分支有一个简单的结构。 更复杂的设计有可能提高性能,但并不是这项工作的重点。

3.1 实现细节

我们在现有的快速/更快的R-CNN工作之后设置超参数[12,36,27]。 尽管这些决策是在原始文件中进行对象检测的[12,36,27],但我们发现我们的实例分割系统对它们是健壮的。

训练:如Fast R-CNN,如果IoU具有至少为0.5的ground truth框,则ROI被认为是正的,否则认为是负。掩模损失Lmask仅在正向RoI上定义。掩码目标是RoI与其关联的ground truth 掩码之间的交集。

我们采用图像中心训练[12]。调整图像的大小以使其比例(较短的边缘)为800像素[27]。每个微型批次每个GPU有2个图像,每个图像具有N个采样的RoI,比例为1:3的正负比[12]。 C4骨架的N为64(如[12,36]),FPN为512(如[27])。我们在8个GPU上进行训练(如此有效的最小批量大小为16),进行160k次迭代,学习率为0.02,在120k迭代时减少10。我们使用0.0001的权重衰减和0.9的动量。使用ResNeXt [45],我们每个GPU训练1个图像,迭代次数相同,初始学习率为0.01。

RPN锚定器跨越5个尺度和3个纵横比,如下[27]。为了方便消融,RPN被单独训练,并且没有与Mask R-CNN共享特征,没有详细说明。对于本文中的每个条目,RPN和Mask R-CNN都有相同的骨干,因此它们可以共享。

推论:在测试时,C4主干的提案编号为300(如[36]),FPN的提案编号为1000(如[27])。 我们对这些提议运行盒子预测分支,然后是非最大抑制[14]。 然后将掩码分支应用于得分最高的100个检测框。 虽然这与训练中使用的并行计算不同,但它加快了推理速度并提高了准确性(由于使用更少,更准确的RoI)。

掩码分支可以预测每个RoI的K个掩码,但我们只使用第k个掩码,其中k是分类分支预测的类。 然后将m×m浮点数掩码输出调整为RoI大小,并在阈值0.5下进行二进制化。
请注意,由于我们仅计算前100个检测框中的掩码,Mask R-CNN为其较快的R-CNN对象(例如典型模型上的约20%)增加了一个小的开销。

这里写图片描述

这里写图片描述

这里写图片描述

4.实验:实例分割
我们对Mask R-CNN进行了彻底的比较,并对COCO数据集进行了全面的消融[28]。我们报告了包括AP(平均在IoU阈值上),AP50,AP75,APS,APM,APL(不同规模的AP)在内的标准COCO度量。除此之外,AP正在使用掩模IoU进行评估。和以前的工作[5,27]一样,我们使用80k的训练图像和35k验证集图像(trainval35k)进行训练,并且报告其余5k val图像(微型)上的消融。我们还在测试开发中报告结果[28]。

4.1。主要结果
我们将Mask R-CNN与表1中实例分割的最新方法进行了比较。我们模型的所有简单性均胜过先前最先进的模型的基准变体。其中包括MNC [10]和FCIS [26],分别是2015年和2016年分类挑战的获胜者。 ResNet-101-FPN骨干网的Mask R-CNN无需花哨,其性能优于FCIS +++ [26],其中包括多尺度训练/测试,水平翻转测试和在线硬示例分析(OHEM)[38]。虽然超出了本工作的范围,但我们预计许多此类改进将适用于我们的工作。

在图2和图5中可以看到掩膜R-CNN输出。掩膜R-CNN即使在挑战性条件下也能取得良好效果。在图6中,我们比较了我们的Mask R-CNN基线和FCIS +++ [26]。 FCIS +++在重叠的实例中展现出系统性的人为因素,这表明它受实例分割的根本困难所挑战。掩码R-CNN没有显示这样的人为因素。

这里写图片描述

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值