您现在的位置是:首页 >其他 >DeepLab v3网站首页其他
DeepLab v3
Rethinking Atrous Convolution for Semantic Image Segmentation
Chen L C, Papandreou G, Schroff F, et al. Rethinking atrous convolution for semantic image segmentation[J]. arXiv preprint arXiv:1706.05587, 2017.
重新思考空洞卷积用于语义图像分割
摘要
在本工作中,我们重新审视了空洞卷积这一强大的工具,它可以明确调整过滤器的视野,以及通过深度卷积神经网络计算特征响应的分辨率。我们设计了模块来处理多尺度分割对象的问题,这些模块采用多个空洞率级联或并行地使用空洞卷积来捕获多尺度上下文。此外,我们建议利用全局上下文编码图像级特征来进一步提高我们之前提出的" Atrous Spatial Pyramid Pooling" 模块对多尺度卷积特征的探究,并进一步提高性能。我们还详细说明了实现细节,并分享了我们在训练系统方面的经验。所提出的 “DeepLabv3” 系统在没有 DenseCRF 后处理的情况下显著优于我们先前的 DeepLab 版本,并达到与其他最先进模型相当的性能在 PASCAL VOC 2012 语义图像分割基准测试中。
1. 引言
对于语义分割任务[20, 63, 14, 97, 7],我们考虑应用深度卷积神经网络(DCNNs)[50]时遇到的两个挑战。第一个是由于连续池化操作或卷积步幅导致的功能分辨率降低,这使得DCNNs可以学习越来越抽象的特征表示。然而,在需要详细的空间信息的密集预测任务中,这种局部图像变换不变性可能会阻碍分类的准确性。为了解决这个问题,我们倡导使用空洞卷积[36, 26, 74, 66],已经被证明对于语义图像分割有效[10, 90, 11]。空洞卷积又称为膨胀卷积,它允许我们重新制定ImageNet [72]预先训练的网络,通过去除最后几层的降采样操作并上采样相应的过滤器核,即在过滤权重之间插入孔洞来提取更偏离的特征映射。通过空洞卷积,人们能够控制DCNNs中计算特征响应的分辨率,而不需要学习额外的参数。
另一个困难来自于存在多个尺度的对象。已经提出了几种方法来处理这个问题,本文主要考虑四类,如图2所示。首先,将DCNN应用于图像金字塔,以提取每个尺度输入的特征[22, 19, 69, 55, 12, 11],其中在不同的特征映射中,不同尺度的对象变得突出。第二,编码器-解码器结构 [3, 71, 25, 54, 70, 68, 39] 利用编码器部分的多尺度特征,并从解码器部分恢复空间分辨率。第三,级联附加额外模块以捕获远程信息。特别地,采用DenseCRF [45] 编码像素级配对相似性[10, 96, 55, 73],而[59, 90] 分别开发几个级联卷积层以逐步捕获长距离上下文。第四,空间金字塔池化[11, 95] 利用具有多个速率和多个有效视场的滤波器或池化操作来探测传入的特征映射,因此捕获多个尺度的对象。
在本工作中,我们重新审视了应用空洞卷积这一工具,它可以明确调整过滤器的视野,以及通过深层卷积神经网络计算特征响应的分辨率,来处理多尺度分割对象的问题。我们设计了模块来处理多尺度分割对象的问题,这些模块采用多个空洞率级联或并行地使用空洞卷积来捕获多尺度上下文。此外,我们建议利用全局上下文编码图像级特征来进一步提高我们之前提出的“Atrous Spatial Pyramid Pooling”模块对多尺度卷积特征的探究,并进一步提高性能。我们还详细说明了实现细节,并分享了我们在训练系统方面的经验。所提出的“DeepLabv3”系统在没有DenseCRF后处理的情况下显著优于我们先前的DeepLab版本,并达到与其他最先进模型相当的性能,在PASCAL VOC 2012语义图像分割基准测试中得到了85.7%的性能。
2. 相关工作
已经证明,在语义分割中,全局要素或上下文交互[33, 76, 43, 48, 27, 89]是有益的。本文讨论了四种利用上下文信息进行语义分割[30, 15, 62, 9, 96, 55, 65, 73, 87]的完全卷积网络(FCNs)[74, 60](见图2)。
图像金字塔:将相同模型应用于多尺度输入,通常带有共享权重。来自小尺度输入的特征响应编码长期上下文,而大尺度输入保留小对象细节。 典型的例子包括Farabet等人[22]通过Laplacian金字塔转换输入图像,将每个比例的输入馈送到一个DCNN中,并从所有比例的特征映射中合并特征映射。 [19, 69]将多尺度输入依次应用于粗到精细,而[55, 12, 11]直接调整几个尺度的输入,将所有尺度的特征融合起来。该模型的主要缺点是由于GPU内存有限,对于更大/更深的DCNN(例如像[32, 91, 86]这样的网络),它不会很好地扩展,并且因此通常在推理阶段应用[16]。
编码器-解码器:该模型由两部分组成:(a)编码器,其中特征图的空间尺寸逐渐减小,因此深度编码器输出更容易捕获远距离信息,以及(b)解码器,其中对象详细信息和空间尺寸逐渐恢复。例如,[60, 64]采用反卷积[92]学习低分辨率特征响应的上取样。SegNet [3]重用来自编码器的池化索引,并学习额外的卷积层以使特征响应更加密集,而U-Net [71]将编码器特征与相应的解码器激活之间添加跳过连接,[25]采用Laplacian金字塔重建网络。最近,RefineNet [54]和[70, 68, 39]在几个语义分割基准测试上展示了基于编码器-解码器结构的模型的有效性。这种模型也在对象检测[56, 77]方面进行了探索。
上下文模块:该模型包含额外的级联模块来编码长期上下文。一种有效的方法是将DenseCRF [45](具有高效的高维滤波算法[2])纳入DCNN中[10, 11]。此外,[96, 55, 73]建议共同训练CRF和DCNN组件,而[59, 90]则在DCNN的置信度图上(置信度图是包含预测类数量等于输出通道数的最终DCNN特征图)添加了几个额外的卷积层来捕获上下文信息。最近,[41]建议学习一种通用和稀疏的高维卷积(双边卷积),而[82, 8]结合高斯条件随机场和DCNN进行语义分割。
空间金字塔池化:该模型采用空间金字塔池化 [28, 49]来捕获多个范围的上下文信息。在 ParseNet [58] 中利用图像级特征获取全局上下文信息。DeepLabv2 [11] 提出空洞空间金字塔池化(ASPP),其中并行的空洞卷积层以不同的速率捕获多尺度信息。最近,金字塔场景分割网络(PSP)[95]在多个语义分割基准测试中执行多个网格比例的空间池化化,表现出优异的性能。还有基于LSTM [35]聚集全局上下文[53, 6, 88]的其他方法。空间金字塔池化还应用于对象检测[31]。
在本文中,我们主要探讨采用空洞卷积[36, 26, 74, 66, 10, 90, 11]作为上下文模块和空间金字塔池化的工具。我们提出的框架在任何网络上都是通用的。具体而言,我们在ResNet [32]的原始最后一个块中重复了几个副本并将它们级联排列,并重新审视ASPP模块[11],其中包含多个并行的空洞卷积。请注意,我们的级联模块直接应用于特征映射而不是置信度图。对于这些建议的模块,我们通过实验发现使用批量标准化[38]非常重要。为了进一步捕获全局上下文,我们建议类似于[58、95]的方法使用图像级特征增强我们的模型,这在多个语义分割基准测试中显示出非常好的性能和泛化能力。
扩张卷积:基于扩张卷积的模型已经被广泛应用于语义分割领域。例如,[85]尝试修改扩张速率来捕获长程信息,[84]采用了ResNet中最后两个块内的混合扩张速率,而[18]则进一步提出学习变形卷积,在采样输入特征的同时使用学习偏移量实现广义的扩张卷积。为了进一步提高分割模型的准确性,[83]利用图像标题,[40]利用视频动作,[44]则加入深度信息。除此之外,扩张卷积还被应用于目标检测,如[66、17、37]所示。
3. 方法
在本节中,我们将回顾利用扩张卷积进行密集特征提取的方法,并讨论采用串联或并联的扩张卷积模块。
3.1 扩张卷积实现密集特征提取
全卷积深度卷积神经网络(FCN DCNN)[50]已经被证明对语义分割任务非常有效。然而,在这些网络的连续层中重复使用最大池化和步幅降低显著降低了生成特征图的空间分辨率,近期DCNNs [47、78、32]通常会在每个方向上通过32次降低输入图像的空间分辨率。反卷积层(或转置卷积)[92、60、64、3、71、68]已被用于恢复空间分辨率。相反,我们主张采用“扩张卷积”技术,这最初是为了实现无损小波变换的高效计算而开发的,“算法a trou”的方案在[36]中提到过, 在DCNN环境中,它也被用于之前的文章中[26, 74, 66]。
考虑二维信号,在输出y上每个位置i和滤波器w上使用扩张卷积,应用于输入特征图x:
y [ i ] = ∑ k x [ i + r ⋅ k ] w [ k ] y[i] = sum_ k x[i + r · k]w[k] y[i]=k∑x[i+r⋅k]w[k]
扩张速率r对应于我们采样输入信号的步长,相当于在每个空间维度上将两个连续滤波器值之间插入r-1个零以产生上采样的滤波器,这样就得到了所谓的扩张卷积(trous)(法语单词trous用英文翻译为“洞”)。 r = 1时标准卷积是特殊情况,而扩张卷积允许我们通过改变速率值来自适应地修改滤波器的视场。请参阅图1以进行说明。
扩张卷积还使我们能够明确地控制如何在全卷积网络中密集计算特征响应。 在此, 我们称输出步幅 为输入图像空间分辨率与最终输出分辨率之比。 对于针对图像分类任务部署的 DCNNs [47、78、32],最终的特征响应(在全连接层或全局池化层之前)比输入图像尺寸小32倍,因此输出步幅= 32。 如果要将DCNN中计算特征响应的空间密度加倍(即输出步幅= 16),则将减小分辨率的最后一个池化或卷积层的步幅设置为1,以避免信号减采。然后,所有后续的卷积层都被扩张卷积层替换,速率为r = 2。这使我们能够提取更密集的特征响应,而无需学习任何额外的参数。请参阅[11]了解更多详细信息。
3.2 扩张卷积实现更深层次
首先,我们探索采用串联的扩张卷积设计模块。具体来说,在图3中复制了几个 ResNet块,标记为block4,并按照串联组织它们。 这些块中有三个3×3卷积,最后一个卷积除了最后一个块之外均包含步长2,类似于原始的ResNet。该模型背后的动机是引入步长,便于在深度块中捕获长距离信息。例如,整个图像特征可以在最后的小分辨率特征映射中合并,如图3(a)所示。然而,我们发现连续的步幅会对语义分割造成伤害(请参见第4节表1),因为详细信息会减少,因此我们采用扩张卷积,并根据所需的输出步幅值确定速率,如图3(b)中输出步幅= 16所示。
在提出的模型中,我们对串联的 ResNet块进行了实验,直至 block7 (即block4的复制品extra block5、block6、block7),如果不应用扩张卷积,则具有输出步幅= 256 。
3.2.1 多级网格方法
受多级网格方法(其中采用不同尺寸的网格层次结构)的启发[4、81、5、67],并且遵循了[84、18]的做法,在我们提出的模型中,在block4到block7内使用不同的扩张速率。具体地,我们将三个卷积层的单元速率定义为Multi Grid=(r1, r2, r3)。卷积层的最终扩张速率等于单元速率和对应速率的乘积。例如,当输出步幅=16且Multi Grid=(1, 2, 4)时,在block4中的三个卷积将分别具有速率=2·(1, 2, 4)=(2, 4, 8)。
3.3. 扩张空间金字塔池化
我们重新审视了[11]中提出的扩张空间金字塔池化,其中在特征图顶部应用了四个具有不同扩张速率的并行扩张卷积。ASPP受到空间金字塔池化的成功启发[28、49、31],它表明在不同尺度上对特征进行重新采样可以以高效准确地分类任意尺寸的区域。与[11]不同,我们在ASPP内包含了批规范化。
具有不同扩张速率的ASPP有效地捕获多尺度信息。然而,我们发现随着采样率越来越高,有效滤波器权重的数量(即应用于有效特征区域而不是填充零的权重)会变得更少。这种影响在将3×3过滤器应用于65×65特征图的不同扩张率时在图4中有所体现。在扩张率接近特征图大小时,3×3过滤器不再捕获整个图像背景,变成一个简单的1×1过滤器,只有中心过滤器权重可用。
为了克服这个问题,并将全局上下文信息引入模型,我们采用类似于[58、95]的图像级特征。具体来说,我们对模型最后一个特征图进行全局平均池化,将得到的图像级特征输入一个带有256个滤波器(和批规范化[38])的1×1卷积,然后使用双线性插值将特征上采样到所需的空间尺寸。最终,改进后的ASPP由以下两部分组成(a)包括一个1×1卷积和三个3×3卷积,速率为(6、12、18),输出步幅为16(所有都有256个滤波器和批规范化),以及(b)图像级特征,如图5所示。在输出步幅=8时,速率加倍。然后将所有分支的结果特征串联起来,并通过另一个1×1卷积(也具有256个滤波器和批规范化)传递到生成最终logits的最终1×1卷积中。
4. 实验
output stride | 8 | 16 | 32 | 64 | 128 | 256 |
---|---|---|---|---|---|---|
mIOU | 75.18 | 73.88 | 70.06 | 59.99 | 42.34 | 20.29 |
我们通过应用扩张卷积来将ImageNet预训练[72]的ResNet [32]适应语义分割。回想一下,输出步幅被定义为输入图像空间分辨率与最终输出分辨率之比。例如,当输出步幅=8时,在原始ResNet的最后两个块(我们的符号表示中的block3和block4)中包含速率分别为2和4的扩张卷积。我们的实现是基于TensorFlow [1]构建的。
我们在PASCAL VOC 2012语义分割基准测试集上评估所提出的模型[20],该数据集包含20个前景对象类别和一个背景类别。原始数据集包括1,464(训练)、1,449(验证)和1,456(测试)个像素级标记图像,用于训练、验证和测试。该数据集通过[29]提供的额外注释进行了增强,从而获得10,582个(trainaug)训练图像。性能以21个类别的平均像素交集联合熵(IOU)为指标。
4.1. 训练方案
在这个子部分中,我们讨论我们的训练方案的细节。
学习率策略:与[58,11]类似,我们采用了“poly”学习率策略,在这个策略中,初始学习率乘以(1- iter/max_iter)的power次方,其中power=0.9。
裁剪大小:在训练期间,从图像中裁剪补丁。为了使速率较大的扩张卷积有效,需要较大的裁剪大小;否则,具有高扩张率的滤波器权重大多数应用于零填充区域。因此,在PASCAL VOC 2012数据集的训练和测试期间,我们使用裁剪大小为513。
批量归一化:我们添加到ResNet之上的所有模块都包括批量归一化参数[38],我们发现这些参数也很重要。由于需要大批量训练批量归一化参数,我们采用输出步幅=16并使用批大小16计算批量归一化统计量。批量归一化参数的衰减值为0.9997。在trainaug数据集上进行30K次迭代的训练后,我们冻结批量归一化参数,采用输出步幅=8,并在官方的PASCAL VOC 2012 trainval数据集上再进行30K次迭代,初始学习率为0.001。需要注意的是,扩张卷积允许我们在不需要学习额外模型参数的情况下控制不同训练阶段的输出步幅值。同时,需要注意的是,使用输出步幅=16进行训练比输出步幅=8快几倍,因为中间特征图的空间尺寸要小四倍,但是牺牲了精度,因为输出步长16提供更粗糙的特征图。
Logits上采样:在我们之前的工作[10,11]中,在输出步幅=8时,目标groundtruths被下采样8倍。我们发现保持groundtruths完整并上采样最终的logits是很重要的,因为下采样会消除细节注释,导致无法反向传播细节。
数据增强:在训练期间,我们通过随机缩放输入图像(从0.5到2.0)和随机左右翻转来进行数据增强。
4.2. 使用扩张卷积加深模型
我们首先尝试将更多的块级别用于层叠式扩张卷积。
ResNet-50:在表1中,我们尝试了当使用ResNet-50及block7(即额外的block5、block6和block7)时输出步长的影响。如表中所示,在输出步长为256(即根本没有采用扩张卷积)的情况下,由于信号严重减小而性能要差得多。当输出步幅变大并相应地应用扩张卷积时,性能从20.29%提高到75.18%,这表明在语义分割中层叠构建更多块时扩张卷积至关重要。
ResNet-50 vs. ResNet-101:我们将ResNet-50替换为更深的网络ResNet-101,并改变层叠块的数量。如表2所示,随着添加了更多块,性能会提高,但是改善的幅度变小。值得注意的是,将block7应用于ResNet-50会稍微降低性能,而对于ResNet-101仍然可以提高性能。
Multi-grid: 我们将多级方法应用于ResNet101,将几个连续添加的块添加到表3中。单位速率Multi Grid = (r1,r2,r3)适用于block4和所有其他添加的块。如表中所示,我们观察到(a)应用多级方法通常优于基本版本,其中(r1,r2,r3)=(1,1,1),(b)仅将单位速率加倍(即(r1,r2,r3)=(2,2,2))并不有效,以及(c)使用多级更深层次可以提高性能。我们最好的模型是使用block7和(r1,r2,r3)=(1,2,1)的情况。
验证集推断策略:所提出的模型在输出步幅= 16的情况下进行训练,然后在推断过程中应用输出步幅= 8以获得更详细的特征图。如表4所示,有趣的是,在评估我们的最佳级联模型时,使用输出步幅= 8比使用输出步幅= 16时的性能提高了1.39%。通过对多尺度输入(比例= {0.5,0.75,1.0,1.25,1.5,1.75})和镜像图像进行推断,性能进一步提高。特别地,我们计算从每个比例和翻转的图像中得到的平均概率作为最终结果。
4.3 空洞空间金字塔池化
然后,我们尝试使用空洞空间金字塔池化(ASPP)模块,与 [11] 的主要区别是微调批量归一化参数 [38] 和包含图像级特征。
ASPP在表5中,我们研究了将多级应用于 block4 和图像级特征对改进的 ASPP 模块的影响。我们首先固定 ASP P =(6,12,18)(即为三个平行的 3×3 卷积分支采用 rates =(6,12,18)),并变化 multi-grid 值。采用 Multi Grid =(1,2,1)比 Multi Grid =(1,1,1)更好,而在 ASP P =(6,12,18)的情况下采用 Multi Grid =(1,2,4)可以进一步提高性能(参见 Tab. 3 中的 “block4” 列)。如果我们另外采用一个率为 24 的平行分支来获取更长范围的上下文,则性能会略微降低 0.12%。另一方面,增加 ASPP 模块的图像级特征是有效的,最终达到了 77.21% 的性能。
验证集推断策略:类似地,在训练模型后,我们在推断过程中使用输出步幅=8。如表6所示,采用输出步幅=8比使用输出步幅=16可以提高性能1.3%,采用多尺度输入并添加左右翻转的图像分别可以进一步提高性能0.94%和0.32%。最佳 ASPP 模型达到了 79.77% 的性能,优于级联空洞卷积模块的最佳模型(79.35%),因此被选为我们在测试集上评估的最终模型。
与 DeepLabv2 的比较:我们最好的级联模型(表4)和 ASPP 模型(表6)(两种情况都没有 DenseCRF 后处理或 MS-COCO 预训练)已经比 DeepLabv2 更好地执行了 PASCAL VOC 2012 验证集(Tab. 4 of [11] 中,使用 DenseCRF 和在 MS-COCO 上预训练时为 77.69%)。改进主要来自于在所提出的模型中包括和微调批量归一化参数 [38],以及更好地编码多尺度上下文的方法。
附录:我们在附录中展示了更多实验结果,例如超参数的影响和 Cityscapes [14] 的结果。
定性结果:我们在 Fig. 6 中提供了我们最佳 ASPP 模型的定性可视化结果。如图所示,我们的模型能够很好地对物体进行分割,无需任何 DenseCRF 后处理。
失败模式:如图 6 的底行所示,我们的模型在分割 (a) 沙发与椅子、(b) 餐桌和椅子以及 © 物品的罕见视图时有困难。
在 COCO 上预训练:为了与其他最先进的模型进行比较,我们在 MS-COCO 数据集 [57] 上进一步预训练了我们最好的 ASPP 模型。从 MS-COCO 的 trainval、minival 数据集中,我们仅选择具有注释区域大于1000像素并包含 PASCAL VOC 2012 中定义的类的图像,因此约有60k张图像用于训练。此外,PASCAL VOC 2012 中未定义的 MS-COCO 类别均作为背景类处理。在使用输出步幅=8、多尺度输入和推断期间添加左右翻转图像时,经过在 MS-COCO 数据集上进行预训练后,我们提出的模型在 val 集上达到了 82.7% 的性能。当在 PASCAL VOC 2012 数据集上进行微调时,采用 smaller initial learning rate = 0.0001 和与第 4.1 节相同的训练协议。
测试集结果和有效的引导方法:我们注意到,PASCAL VOC 2012 数据集提供的注释质量更高于扩充数据集[29],尤其是对自行车类别。因此,在评估测试集之前,我们在官方的 PASCAL VOC 2012 trainval 集上微调模型。具体而言,我们使用输出步幅 = 8 进行训练(以保留注释细节),并冻结批量归一化参数(详情请参见第4.1节)。此外,我们没有像[85、70]那样执行像素硬例子挖掘,而是采用硬图像引导方法。特别是,我们在训练集中复制包含难分类(即自行车、椅子、桌子、盆栽和沙发)的图像。如图7所示,简单的引导方法对于分割自行车类别是有效的。最终,我们的“DeepLabv3”在不使用任何 DenseCRF 后处理的情况下,在测试集上达到了 85.7% 的性能,如表7所示。
预训练于 JFT-300M 上的模型:受[79]的最新工作启发,我们进一步采用已经在 ImageNet 和 JFT300M 数据集上进行了预训练的 ResNet-101 模型[34, 13, 79],在 PASCAL VOC 2012 的测试集上获得了 86.9% 的性能。
5. 结论
我们的提出的模型“DeepLabv3”采用带有上采样滤波器的扩张卷积来提取密集的特征图,并捕获远程上下文信息。具体而言,为了编码多尺度信息,我们提出的级联模块逐步加倍增大扩张率,而我们提出的具有空洞空间金字塔池化模块则通过使用多个采样率和有效视场探测带有图像级别特征的特征。我们的实验结果表明,相对于之前的DeepLab版本,提出的模型显着改进,并在PASCAL VOC 2012语义图像分割基准测试上实现了与其他最新方法相当的性能。
致谢:我们要感谢Zbigniew Wojna的宝贵讨论,Chen Sun和Andrew Howard的支持以及Google Mobile Vision团队的支持。
A. 超参数影响
在本节中,我们按照主文中的相同训练方案,实验探究了一些超参数的影响效果。
新的训练协议:如主文所述,我们将[10、11]中的训练协议更改为三个主要差异:(1)更大的裁剪尺寸,(2)在训练期间上采样逻辑,(3)微调批量归一化。在这里,我们量化测量了这些变化的效果。如表8所示,当采用主文中的新训练协议设置时,DeepLabv3在PASCAL VOC 2012验证集[20]上获得了77.21%的性能。如果在训练时没有对批归一化进行微调,性能将下降至75.95%。如果我们在训练时不做逻辑上采样(而是对标签进行下采样),性能会降低到76.01%。此外,如果我们使用较小的裁剪尺寸(即321,如[10、11]中),性能极大地下降到67.22%,说明边界效应对于使用带有大扩张率的ASPP模块的DeepLabv3会影响其性能。
不同批处理大小:由于微调批量归一化对于训练DeepLabv3非常重要,我们进一步探索不同批处理大小的影响。如表9所示,采用较小的批处理大小无法高效地训练模型,而使用更大的批处理大小则可以获得更好的性能。
输出步幅:输出步幅的值确定了输出特征映射分辨率,进而影响了我们在训练期间可以使用的最大批处理大小。在表10中,我们量化测量了在PASCAL VOC 2012验证集上采用不同的输出步幅值进行训练和评估对性能的影响。我们首先固定评估结果的输出步幅=16,变化训练输出步幅,并适合所有设置的最大批量大小(分别对于训练输出步幅等于8、16和32,我们能够适合批量大小6、16和24)。如表10顶部所示,仅采用训练输出步幅=8只能获得74.45%的性能,因为我们在此设置中无法拟合大批量大小,从而降低了性能,同时在微调批量归一化参数时。当采用训练输出步幅=32时,我们可以适合大批量大小,但我们会失去特征映射的详细信息。另一方面,采用训练输出步幅=16是最佳的折衷方案,可以获得最佳性能。在表10底部,我们将评估输出步幅增加到8。所有设置均提高了性能,除了训练输出步幅=32的设置。我们猜测在训练期间失去了太多的特征图细节,因此即使在评估期间采用输出步幅=8时,模型也无法恢复这些细节。
B. 异步训练
在本节中,我们使用 TensorFlow 异步训练[1]探究了 DeepLabv3。我们在 PASCAL VOC 2012 语义分割数据集上测量多次复制来训练该模型的影响。我们的基线只采用一个副本,需要在 K80 GPU 上进行 3.65 天的培训时间。如表11所示,我们发现使用多个副本性能未下降。但是,在 32 个副本的情况下,训练时间显着缩短为 2.74 小时。
C. Cityscapes数据集上的DeepLabv3
Cityscapes [14]是一个大规模的数据集,包含5000张图像(2975张用于训练,500张用于验证,1525张用于测试)和约20000张粗略注释的图像。按照评估协议[14],使用19个语义标签进行评估,不考虑空标签。
我们首先在仅使用2975张图像进行训练的情况下(即train fine set),对DeepLabv3模型进行了验证集上的评估。除了采用90K次训练迭代、769大小的裁剪大小和整张图像运行推断(而不是如[11]中重叠区域上的推断)之外,我们采用了与之前相同的训练协议。如表12所示,在输出步幅为16时,DeepLabv3取得了77.23%的性能。将模型的输出步幅设置为8时,性能提高到了77.82%。当我们采用多尺度输入(在K40 GPU上可以适应尺度= {0.75、1、1.25})并添加左右翻转的输入时,该模型达到了79.30%的性能。
为了与其他最新模型竞争,我们进一步在trainval coarse集上训练DeepLabv3(即3475个精细注释图像和额外20000个粗略注释图像)。我们采用更多尺度和更高的输出步幅进行推断。特别地,我们使用scales= {0.75、1、1.25、1.5、1.75、2}和评估输出步幅= 4进行推断,使用CPU比只使用三个尺度和输出步幅为8时,在验证集上分别增加了0.8%和0.1%。最终,如表13所示,我们提出的DeepLabv3在测试集上达到了81.3%的性能。图8显示了一些验证集上的结果。
References
[1] M. Abadi, A. Agarwal, et al. Tensorflow: Large-scale
machine learning on heterogeneous distributed systems.
arXiv:1603.04467, 2016.
[2] A. Adams, J. Baek, and M. A. Davis. Fast high-dimensional
filtering using the permutohedral lattice. In Eurographics,
2010.
[3] V. Badrinarayanan, A. Kendall, and R. Cipolla. Segnet: A
deep convolutional encoder-decoder architecture for image
segmentation. arXiv:1511.00561, 2015.
[4] A. Brandt. Multi-level adaptive solutions to boundary-value
problems. Mathematics of computation, 31(138):333–390,
1977.
[5] W. L. Briggs, V. E. Henson, and S. F. McCormick. A multigrid
tutorial. SIAM, 2000.
[6] W. Byeon, T. M. Breuel, F. Raue, and M. Liwicki. Scene
labeling with lstm recurrent neural networks. In CVPR, 2015.
[7] H. Caesar, J. Uijlings, and V. Ferrari. COCO-Stuff: Thing
and stuff classes in context. arXiv:1612.03716, 2016.
[8] S. Chandra and I. Kokkinos. Fast, exact and multi-scale inference for semantic image segmentation with deep Gaussian
CRFs. arXiv:1603.08358, 2016.
[9] L.-C. Chen, J. T. Barron, G. Papandreou, K. Murphy, and A. L.
Yuille. Semantic image segmentation with task-specific edge
detection using cnns and a discriminatively trained domain
transform. In CVPR, 2016.
[10] L.-C. Chen, G. Papandreou, I. Kokkinos, K. Murphy, and A. L.
Yuille. Semantic image segmentation with deep convolutional
nets and fully connected crfs. In ICLR, 2015.
[11] L.-C. Chen, G. Papandreou, I. Kokkinos, K. Murphy, and A. L.
Yuille. Deeplab: Semantic image segmentation with deep
convolutional nets, atrous convolution, and fully connected
crfs. arXiv:1606.00915, 2016.
[12] L.-C. Chen, Y. Yang, J. Wang, W. Xu, and A. L. Yuille. Attention to scale: Scale-aware semantic image segmentation.
In CVPR, 2016.
[13] F. Chollet. Xception: Deep learning with depthwise separable
convolutions. arXiv:1610.02357, 2016.
[14] M. Cordts, M. Omran, S. Ramos, T. Rehfeld, M. Enzweiler,
R. Benenson, U. Franke, S. Roth, and B. Schiele. The
cityscapes dataset for semantic urban scene understanding. In
CVPR, 2016.
[15] J. Dai, K. He, and J. Sun. Convolutional feature masking for
joint object and stuff segmentation. arXiv:1412.1283, 2014.
[16] J. Dai, K. He, and J. Sun. Boxsup: Exploiting bounding boxes
to supervise convolutional networks for semantic segmentation. In ICCV, 2015.
[17] J. Dai, Y. Li, K. He, and J. Sun. R-fcn: Object
detection via region-based fully convolutional networks.
arXiv:1605.06409, 2016.
[18] J. Dai, H. Qi, Y. Xiong, Y. Li, G. Zhang, H. Hu, and Y. Wei.
Deformable convolutional networks. arXiv:1703.06211,
2017.
[19] D. Eigen and R. Fergus. Predicting depth, surface normals
and semantic labels with a common multi-scale convolutional
architecture. arXiv:1411.4734, 2014.
[20] M. Everingham, S. M. A. Eslami, L. V. Gool, C. K. I.
Williams, J. Winn, and A. Zisserma. The pascal visual object
classes challenge a retrospective. IJCV, 2014.
[21] H. Fan, X. Mei, D. Prokhorov, and H. Ling. Multi-level
contextual rnns with attention model for scene labeling.
arXiv:1607.02537, 2016.
[22] C. Farabet, C. Couprie, L. Najman, and Y. LeCun. Learning
hierarchical features for scene labeling. PAMI, 2013.
[23] J. Fu, J. Liu, Y. Wang, and H. Lu. Stacked deconvolutional
network for semantic segmentation. arXiv:1708.04943, 2017.
[24] R. Gadde, V. Jampani, and P. V. Gehler. Semantic video cnns
through representation warping. In ICCV, 2017.
[25] G. Ghiasi and C. C. Fowlkes. Laplacian reconstruction and
refinement for semantic segmentation. arXiv:1605.02264,
2016.
[26] A. Giusti, D. Ciresan, J. Masci, L. Gambardella, and
J. Schmidhuber. Fast image scanning with deep max-pooling
convolutional neural networks. In ICIP, 2013.
[27] S. Gould, R. Fulton, and D. Koller. Decomposing a scene
into geometric and semantically consistent regions. In ICCV.
IEEE, 2009.
[28] K. Grauman and T. Darrell. The pyramid match kernel: Discriminative classification with sets of image features. In ICCV,
2005.
[29] B. Hariharan, P. Arbelaez, L. Bourdev, S. Maji, and J. Malik. ´
Semantic contours from inverse detectors. In ICCV, 2011.
[30] B. Hariharan, P. Arbelaez, R. Girshick, and J. Malik. Hyper- ´
columns for object segmentation and fine-grained localization.
In CVPR, 2015.
[31] K. He, X. Zhang, S. Ren, and J. Sun. Spatial pyramid pooling
in deep convolutional networks for visual recognition. In
ECCV, 2014.
[32] K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning
for image recognition. arXiv:1512.03385, 2015.
[33] X. He, R. S. Zemel, and M. Carreira-Perpindn. Multiscale
conditional random fields for image labeling. In CVPR, 2004.
[34] G. Hinton, O. Vinyals, and J. Dean. Distilling the knowledge
in a neural network. In NIPS, 2014.
[35] S. Hochreiter and J. Schmidhuber. Long short-term memory.
Neural computation, 9(8):1735–1780, 1997.
[36] M. Holschneider, R. Kronland-Martinet, J. Morlet, and
P. Tchamitchian. A real-time algorithm for signal analysis
with the help of the wavelet transform. In Wavelets: TimeFrequency Methods and Phase Space, pages 289–297. 1989.
[37] J. Huang, V. Rathod, C. Sun, M. Zhu, A. Korattikara, A. Fathi,
I. Fischer, Z. Wojna, Y. Song, S. Guadarrama, and K. Murphy.
Speed/accuracy trade-offs for modern convolutional object
detectors. In CVPR, 2017.
[38] S. Ioffe and C. Szegedy. Batch normalization: Accelerating
deep network training by reducing internal covariate shift.
arXiv:1502.03167, 2015.
[39] M. A. Islam, M. Rochan, N. D. Bruce, and Y. Wang. Gated
feedback refinement network for dense image labeling. In
CVPR, 2017.
[40] S. D. Jain, B. Xiong, and K. Grauman. Fusionseg: Learning to combine motion and appearance for fully automatic
segmention of generic objects in videos. In CVPR, 2017.
[41] V. Jampani, M. Kiefel, and P. V. Gehler. Learning sparse high
dimensional filters: Image filtering, dense crfs and bilateral
neural networks. In CVPR, 2016.
[42] X. Jin, X. Li, H. Xiao, X. Shen, Z. Lin, J. Yang, Y. Chen,
J. Dong, L. Liu, Z. Jie, J. Feng, and S. Yan. Video scene
parsing with predictive feature learning. In ICCV, 2017.
[43] P. Kohli, P. H. Torr, et al. Robust higher order potentials for
enforcing label consistency. IJCV, 82(3):302–324, 2009.
[44] S. Kong and C. Fowlkes. Recurrent scene parsing with perspective understanding in the loop. arXiv:1705.07238, 2017.
[45] P. Krahenb ¨ uhl and V. Koltun. Efficient inference in fully ¨
connected crfs with gaussian edge potentials. In NIPS, 2011.
[46] I. Kreso, S. ˇ Segvi ˇ c, and J. Krapac. Ladder-style densenets ´
for semantic segmentation of large natural images. In ICCV
CVRSUAD workshop, 2017.
[47] A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet
classification with deep convolutional neural networks. In
NIPS, 2012.
[48] L. Ladicky, C. Russell, P. Kohli, and P. H. Torr. Associative
hierarchical crfs for object class image segmentation. In
ICCV, 2009.
[49] S. Lazebnik, C. Schmid, and J. Ponce. Beyond bags of features: Spatial pyramid matching for recognizing natural scene
categories. In CVPR, 2006.
[50] Y. LeCun, B. Boser, J. S. Denker, D. Henderson, R. E.
Howard, W. Hubbard, and L. D. Jackel. Backpropagation
applied to handwritten zip code recognition. Neural computation, 1(4):541–551, 1989.
[51] X. Li, Z. Jie, W. Wang, C. Liu, J. Yang, X. Shen, Z. Lin,
Q. Chen, S. Yan, and J. Feng. Foveanet: Perspective-aware
urban scene parsing. arXiv:1708.02421, 2017.
[52] X. Li, Z. Liu, P. Luo, C. C. Loy, and X. Tang. Not all pixels
are equal: Difficulty-aware semantic segmentation via deep
layer cascade. arXiv:1704.01344, 2017.
[53] X. Liang, X. Shen, D. Xiang, J. Feng, L. Lin, and S. Yan.
Semantic object parsing with local-global long short-term
memory. arXiv:1511.04510, 2015.
[54] G. Lin, A. Milan, C. Shen, and I. Reid. Refinenet: Multipath refinement networks with identity mappings for highresolution semantic segmentation. arXiv:1611.06612, 2016.
[55] G. Lin, C. Shen, I. Reid, et al. Efficient piecewise training of deep structured models for semantic segmentation.
arXiv:1504.01013, 2015.
[56] T.-Y. Lin, P. Dollar, R. Girshick, K. He, B. Hariharan, and ´
S. Belongie. Feature pyramid networks for object detection.
arXiv:1612.03144, 2016.
[57] T.-Y. Lin, M. Maire, S. Belongie, J. Hays, P. Perona, D. Ramanan, P. Dollar, and C. L. Zitnick. Microsoft COCO: Com- ´
mon objects in context. In ECCV, 2014.
[58] W. Liu, A. Rabinovich, and A. C. Berg. Parsenet: Looking
wider to see better. arXiv:1506.04579, 2015.
[59] Z. Liu, X. Li, P. Luo, C. C. Loy, and X. Tang. Semantic image
segmentation via deep parsing network. In ICCV, 2015.
[60] J. Long, E. Shelhamer, and T. Darrell. Fully convolutional
networks for semantic segmentation. In CVPR, 2015.
[61] P. Luo, G. Wang, L. Lin, and X. Wang. Deep dual learning
for semantic image segmentation. In ICCV, 2017.
[62] M. Mostajabi, P. Yadollahpour, and G. Shakhnarovich. Feedforward semantic segmentation with zoom-out features. In
CVPR, 2015.
[63] R. Mottaghi, X. Chen, X. Liu, N.-G. Cho, S.-W. Lee, S. Fidler,
R. Urtasun, and A. Yuille. The role of context for object
detection and semantic segmentation in the wild. In CVPR,
2014.
[64] H. Noh, S. Hong, and B. Han. Learning deconvolution network for semantic segmentation. In ICCV, 2015.
[65] G. Papandreou, L.-C. Chen, K. Murphy, and A. L. Yuille.
Weakly- and semi-supervised learning of a dcnn for semantic
image segmentation. In ICCV, 2015.
[66] G. Papandreou, I. Kokkinos, and P.-A. Savalle. Modeling
local and global deformations in deep learning: Epitomic
convolution, multiple instance learning, and sliding window
detection. In CVPR, 2015.
[67] G. Papandreou and P. Maragos. Multigrid geometric active
contour models. TIP, 16(1):229–240, 2007.
[68] C. Peng, X. Zhang, G. Yu, G. Luo, and J. Sun. Large kernel
matters–improve semantic segmentation by global convolutional network. arXiv:1703.02719, 2017.
[69] P. Pinheiro and R. Collobert. Recurrent convolutional neural
networks for scene labeling. In ICML, 2014.
[70] T. Pohlen, A. Hermans, M. Mathias, and B. Leibe. Fullresolution residual networks for semantic segmentation in
street scenes. arXiv:1611.08323, 2016.
[71] O. Ronneberger, P. Fischer, and T. Brox. U-net: Convolutional
networks for biomedical image segmentation. In MICCAI,
2015.
[72] O. Russakovsky, J. Deng, H. Su, J. Krause, S. Satheesh, S. Ma,
Z. Huang, A. Karpathy, A. Khosla, M. Bernstein, A. C. Berg,
and L. Fei-Fei. ImageNet Large Scale Visual Recognition
Challenge. IJCV, 2015.
[73] A. G. Schwing and R. Urtasun. Fully connected deep structured networks. arXiv:1503.02351, 2015.
[74] P. Sermanet, D. Eigen, X. Zhang, M. Mathieu, R. Fergus, and
Y. LeCun. Overfeat: Integrated recognition, localization and
detection using convolutional networks. arXiv:1312.6229,
2013.
[75] F. Shen, R. Gan, S. Yan, and G. Zeng. Semantic segmentation
via structured patch prediction, context crf and guidance crf.
In CVPR, 2017.
[76] J. Shotton, J. Winn, C. Rother, and A. Criminisi. Textonboost
for image understanding: Multi-class object recognition and
segmentation by jointly modeling texture, layout, and context.
IJCV, 2009.
[77] A. Shrivastava, R. Sukthankar, J. Malik, and A. Gupta. Beyond skip connections: Top-down modulation for object detection. arXiv:1612.06851, 2016.
[78] K. Simonyan and A. Zisserman. Very deep convolutional
networks for large-scale image recognition. In ICLR, 2015.
[79] C. Sun, A. Shrivastava, S. Singh, and A. Gupta. Revisiting
unreasonable effectiveness of data in deep learning era. In
ICCV, 2017.
[80] H. Sun, D. Xie, and S. Pu. Mixed context networks for
semantic segmentation. arXiv:1610.05854, 2016.
[81] D. Terzopoulos. Image analysis using multigrid relaxation
methods. TPAMI, (2):129–139, 1986.
[82] R. Vemulapalli, O. Tuzel, M.-Y. Liu, and R. Chellappa. Gaussian conditional random field network for semantic segmentation. In CVPR, 2016.
[83] G. Wang, P. Luo, L. Lin, and X. Wang. Learning object interactions and descriptions for semantic image segmentation. In
CVPR, 2017.
[84] P. Wang, P. Chen, Y. Yuan, D. Liu, Z. Huang, X. Hou, and
G. Cottrell. Understanding convolution for semantic segmentation. arXiv:1702.08502, 2017.
[85] Z. Wu, C. Shen, and A. van den Hengel. Bridging
category-level and instance-level semantic image segmentation. arXiv:1605.06885, 2016.
[86] Z. Wu, C. Shen, and A. van den Hengel. Wider or
deeper: Revisiting the resnet model for visual recognition.
arXiv:1611.10080, 2016.
[87] F. Xia, P. Wang, L.-C. Chen, and A. L. Yuille. Zoom better
to see clearer: Huamn part segmentation with auto zoom net.
arXiv:1511.06881, 2015.
[88] Z. Yan, H. Zhang, Y. Jia, T. Breuel, and Y. Yu. Combining the
best of convolutional layers and recurrent layers: A hybrid
network for semantic segmentation. arXiv:1603.04871, 2016.
[89] J. Yao, S. Fidler, and R. Urtasun. Describing the scene as a
whole: Joint object detection, scene classification and semantic segmentation. In CVPR, 2012.
[90] F. Yu and V. Koltun. Multi-scale context aggregation by
dilated convolutions. In ICLR, 2016.
[91] S. Zagoruyko and N. Komodakis. Wide residual networks.
arXiv:1605.07146, 2016.
[92] M. D. Zeiler, G. W. Taylor, and R. Fergus. Adaptive deconvolutional networks for mid and high level feature learning. In
ICCV, 2011.
[93] R. Zhang, S. Tang, M. Lin, J. Li, and S. Yan. Global-residual
and local-boundary refinement networks for rectifying scene
parsing predictions. IJCAI, 2017.
[94] R. Zhang, S. Tang, Y. Zhang, J. Li, and S. Yan. Scale-adaptive
convolutions for scene parsing. In ICCV, 2017.
[95] H. Zhao, J. Shi, X. Qi, X. Wang, and J. Jia. Pyramid scene
parsing network. arXiv:1612.01105, 2016.
[96] S. Zheng, S. Jayasumana, B. Romera-Paredes, V. Vineet,
Z. Su, D. Du, C. Huang, and P. Torr. Conditional random
fields as recurrent neural networks. In ICCV, 2015.
[97] B. Zhou, H. Zhao, X. Puig, S. Fidler, A. Barriuso, and A. Torralba. Scene parsing through ade20k dataset. In CVPR, 2017.