门控-SCNN:用于语义分割的门控形状CNN
Project Website: https://nv-tlabs.github.io/GSCNN/
Abstract
目前最先进的图像分割方法形成了一种密集的图像表示,其中的颜色、形状和纹理信息都是在深度 CNN 中一起处理的。然而,这可能不理想,因为它们包含与识别相关的非常不同类型的信息。在此,我们提出了一种用于语义分割的新的双流CNN架构,其将形状信息显式地称为单独的处理分支,即形状流,其处理信息与经典流平行。这种架构的关键是一种连接两个流中间层的新型门。具体地,我们使用经典流中的更高级**来选通形状流中的低级**,有效地去除噪声并帮助形状流只专注于处理相关的边界相关信息。这使得我们能够对在图像级分辨率上操作的形状流使用非常浅的结构。我们的实验表明,这导致了一种高效的体系结构,在对象边界周围产生了更精确的预测,并显著提高了对较薄和较小目标的性能。 我们的方法在Cityscapes基准上取得了一流的性能,在掩模(MIOU)和边界(F-Score)质量方面,在强基线上提高2%和4%。
1. Introduction
语义图像分割是计算机视觉中最广泛研究的问题之一[42,17,57],3D重建[38,30]和图像生成[22,47] ]举例子。近年来,卷积神经网络已经导致几乎所有主要分割基准的精度显著提高。一种标准的做法是通过将完全连接的层转换为卷积层,使图像分类 CNN 架构适应于语义分割的任务。然而,使用用于密集像素预测的分类结构具有几个缺点[51, 37, 58, 11]。一个突出的缺点是由于池化层的使用导致输出的空间分辨率下降。这促使一些工作者[51,58,15,35,21]提出专门的CNN模块,帮助恢复网络输出的空间分辨率。我们认为,在结构设计中也存在内在的低效,因为颜色、形状和纹理信息都是在一个深层次的CNN中一起处理的。注意,这些信息可能包含与识别相关的非常不同的信息量。例如,可能需要查看完整和详细的目标边界才能得到形状的区分编码,而颜色和纹理包含相当低级别的信息。这也可能提供一个观点,为什么残差[19],层间跳跃[19,52]甚至密集连接[21]导致最显著的性能改善。合并额外连接有助于不同类型的信息在不同的网络深度范围内流动。然而,通过设计分开这些代表信息可能会导致一个更自然和更有效的识别渠道。
在本文中,我们提出了一种新的用于语义分割的两流 CNN 结构,它将形状信息显式地连接为一个单独的处理分支。特别是,我们将经典的 CNN 保持在一个流中,并添加处理信息的所谓的并行形状流中。我们明确地不允许两个流之间的信息融合,直到最顶层。
我们体系结构的关键是一种允许两个分支交互的新型门。特别是,我们利用包含在经典流中的更高层次的信息,在形状流的早期的处理阶段对其**进行去噪。通过这样做,形状流只关注处理相关信息。采用一种非常有效的浅层结构,这允许形状流操作在完整的图像分辨率上。为了实现形状信息被引导到期望的流,我们用语义边界损失来监督。我们进一步开发了一种新的损失函数,该函数促使预测的语义分割与真值语义边界正确地对齐,这进一步促使融合层利用来自形状流的信息。我们称之为新架构GSCNN。
我们在 Cityscapes 的基准上进行了广泛的评估。注意,我们的GSCNN可以即插即用的用于任何传统 CNN 主干的起点。在我们的实验中,我们应用 Resnet-50[19]、Resnet-101[19]和WideResnet[56],并都显示出显著的改进。我们的表现超过了最先进的DeepLab-v3[11],在 mIoU 超过1.5% 和 在 F-boundary score 超过4%。我们的提高对于更薄和更小的物体尤其重要。在 IoU 我们提高了7%。
2. Related Work
Semantic Segmentation. 目前最先进的语义分割方法主要是基于CNN的.早期的方法[37,8]将分类网络转换为完全卷积网络(FCNs),以有效地进行端到端的语义分割训练。一些工作[9,32,59,43,20,3,36,23,5]建议在网络输出上使用结构化预测模块,如条件随机场(Crfs),以提高分割性能, 尤其是关于目标边界。为避免损失DenseRF[29],[6]的工作使用快速域变换[16]对网络输出进行滤波,同时也预测来自中间CNN层的边缘图。我们还对边界映射进行了预测,以提高分割性能。与[6]使用边缘信息改进网络输出相反,我们将学习到的边界信息注入中间CNN层。此外,我们还提出了一个专门的网络体系结构和一个双任务正则化来获得高质量的边界.最近,性能有了很大的提高,推理速度被新结构的设计所驱动。例如,PSPNet[58]和DeepLab[9,11]提出了一个特征金字塔池模块,该模块通过在倍数尺度上聚合特征来整合多尺度上下文。与我们相似的是,[42]提出了两个流网络,但是,在它们的情况下,第二个流的主要目的是恢复与池层一起丢失的高分辨率特性。一些工作[15,35,48]提出的模块,使用学习像素的亲缘关系,以结构化的信息传播跨中间CNN表示。在这里,我们显式地专门化第二个流来处理与形状相关的信息。一些工作[15,35,48]提出了使用学习到的像素关联来进行结构化信息传播的模块跨越CNN中间表示。我们建议通过精心设计的网络和损失函数来学习高质量的形状信息,而不是学习专门的信息传播模块。由于我们简单地将形状信息与分段CNN特征连接起来,我们的方法可以很容易地结合到现有的网络中,以提高性能。
Multitask Learning. 一些工作还探讨了将网络结合到互补任务中的想法,以提高计算机视觉任务的学习效率、预测精度和泛化能力。例如,[45,39,27,26,28]的工作提出了使用多任务损失学习共享表示的统一架构。我们的主要目标不是训练多任务网络,而是实施一种利用分割和边界预测任务之间的二元性的结构化表示。同时学习分割和边界检测网络,而[31,40]学习边界作为辅助分割的中间表示。与这些工作相反,语义和边界信息只在损失函数时相互作用,我们将边界信息显式地注入到分割cnn中,并提出了一个双任务损失对语义掩码和边界预测进行细化的损失函数。
Gated Convolutions.最近关于语言建模的工作也提出了在卷积中使用门机制的思想。例如,[14]建议用门控时间卷积替换递归网络中通常使用的递归连接。另一方面,提出了自由图像修复采用软选通机制的卷积,[46]提出了条件图像生成的门控像素cnn(门控像素cnn)。另一方面,提出了Free-Form Image Inpainting采用 soft-gating 机制的卷积,[46]提出了条件图像生成的 Gated PixelCNN。在这种情况下,我们使用门控卷积算子进行语义分割,并定义形状和规则流之间的信息流。
3. Gated Shape CNN
在这一部分中,我们提出了我们的门式cnn结构的语义分割.如图2所示,我们的网络由两个网络流和一个融合模块组成。网络的第一个流(“regular stream”) 是标准分割CNN,第二流 (“shape stream”) 以语义边界的形式处理形状信息。我们通过仔细设计的门卷积层(GCL)和局部监控,对形状流进行处理,只处理边界相关信息。然后,我们将规则流中的语义区域特征和形状流中的边界特征进行融合,以获得精确的分割结果,尤其是围绕边界的分割结果。接下来,我们将详细描述我们框架中的每个模块,然后是我们新颖的GCL。
Regular Stream. 该流用
表示,参数为θ,图像
,输入高度H和宽度W,产生密集的像素特征。规则流可以是任何前馈、完全对流的网络,如基于ResNet[19]的或基于VGG[44]的语义分割网络。由于 Resnet 是最新的语义分割技术,因此我们利用 Resnet-like 架构,例如 Resnet-101[19] 和 WideResnet[56] 作为常规流。我们将正则流的输出特征表示表示为
R或RC或WM,其中m是正则流的跨距。
Shape Stream. 该流表示为
,具有参数的θ,以图像梯度为
,并将常规流的第一卷积层的输出作为输入,并产生作为输出的语义边界。