论文解读|ICCV2019|Gated-SCNN: Gated Shape CNNs for Semantic Segmentation

标题:Gate - SCNN:用于语义分割的门控形状CNN
来源:ICCV2019
论文地址:https://arxiv.org/abs/1907.05740
Github:https://github.com/nv-tlabs/GSCNN
项目地址:https://nv-tlabs.github.io/GSCNN/

文章目录

  • 摘要
  • 一、引入
  • 二、相关工作:
    • 1.多任务学习
    • 2.门控卷积
  • 三、Gated Shape CNN(GSCNN)
    • 1.Regular stream
    • 2.Shape stream
    • 3.Fusion Module
    • 4.Gated Convolutional Layer
  • 四、实验
  • 五、结论


摘要

目前最先进的图像分割方法将颜色、形状和纹理信息都在一个深度CNN中处理,然而,这可能并不理想,因为它们包含与识别相关的非常不同类型的信息。论文解读|ICCV2019|Gated-SCNN: Gated Shape CNNs for Semantic Segmentation_第1张图片
在这里,我们提出了一种新的用于语义分割的双流CNN体系结构,它明确地将形状信息连接为一个单独的处理分支,即形状流,它与经典流并行处理信息。该体系结构的关键是一种新型的门,它连接两个流的中间层。具体来说,我们使用经典流中的高级激活来屏蔽形状流中的低级激活,有效地去除噪声,帮助形状流只专注于处理相关的边界相关信息。这使我们能够使用一个非常浅的架构来处理在图像级分辨率上运行的形状流。我们的实验表明,这导致了一个高效的架构,产生更清晰的预测周围的对象边界,并显著提高性能在更薄和更小的对象。我们的方法在城市景观基准上实现了最先进的性能,在掩模(mIoU)和边界(F-score)质量方面,比强基线提高了2%和4%。

一、引入

我们认为在架构设计中也存在着一种内在的无效性,因为颜色、形状和纹理信息都是在一个深度CNN中一起处理的。但是实际上这些不同的信息,比如color或者shape,texture对于识别来说的话,应该是包含不同的数量的信息的。作者举了一个例子,一个人刚开始看一个物体的时候,需要看到完整地,细节地物体的边界,从而能够得到具有辨别性的shape编码。但是color和texture就相对包含一些low-level的信息,意思是,对于物体的识别就没有轮廓那么重要。这种思路实际上可以解释为什么resnet需要residual skip来提升网络的性能,或者是dense connection。以你为,通过添加这种additional connectivity能够帮助不同类型的信息通过不同scale的深度进行融合流通。

在这项工作中,作者提出了一种新的用于语义分割的双流CNN结构,它明确地将形状信息作为一个单独的处理分支连接起来。尤其是,我们将经典的CNN保存在一个流中,并添加一个所谓的形状流来并行处理信息。我们明确地不允许两个流之间的信息融合,直到最顶层。

我们架构的关键是一种新型的门,允许两个分支进行交互。特别地,我们利用经典流中包含的高级信息在形状流的早期处理阶段去噪激活。通过这样做,形状流只关注于处理相关信息。这允许形状流采用一个非常有效的浅层架构,在全图像分辨率上运作。

为了实现形状信息被定向到所需的流,我们用语义边界丢失来监督它。我们进一步开发了一个新的loss函数,鼓励预测的语义分割与groundtruth语义边界正确对齐,这进一步鼓励融合层利用来自形状流的信息。我们称我们的新架构为GSCNN。

我们对城市景观Cityscapes benchmark进行了广泛的评估。请注意,我们的GSCNN可以在任何经典的CNN骨干上作为即插即用。在我们的实验中,我们探索了ResNet-50, ResNet-101和WideResnet,并显示了显著的改进。

我们在mIoU和F-boundary分数上的表现超过了最先进的deeplab -v3的1.5%和4%。对于更薄、更小的物体(如电线杆、交通灯、交通标志),我们的收益尤其显著,在这些物体上,我们的借据增加了7%。我们进一步评估性能在不同的距离,从相机,使用先验作为距离的代理。实验表明,我们一贯优于最先进的基线,在最大距离(即更远的对象)mIoU方面实现了高达6%的改进。

二、相关工作:

1.多任务学习

一些著作也探讨了将网络结合在互补任务上的想法,以提高学习效率、预测准确性和跨计算机视觉任务的泛化。例如,一些著作提出了使用多任务丢失来学习共享表示的统一架构。我们的主要目标不是训练一个多任务网络,而是加强一个结构化的表示,利用分割和边界预测任务之间的对偶性。一些工作同时学习分割和边界检测网络,或者是学习边界作为中间表示来帮助分割。我们与这些工作不同的是,语义和边界信息只在loss函数上相互作用,我们明确地将边界信息注入到分割的CNN中,并提出了一种双任务loss函数来细化语义掩码和边界预测。

2.门控卷积

最近在语言建模方面的工作也提出了在卷积中使用门控机制的想法。例如,[14]建议用门控时间卷积来代替通常在递归网络中使用的递归连接。另一方面,[54]提出使用带有软门控机制的卷积来进行自由形式的图像修复,[47]提出了门控PixelCNN来进行条件图像生成。在我们的案例中,我们使用一个门控卷积算子来进行语义分割,并定义形状和规则流之间的信息流。

三、Gated Shape CNN(GSCNN)

论文解读|ICCV2019|Gated-SCNN: Gated Shape CNNs for Semantic Segmentation_第2张图片
我们的网络由两个网络流和一个融合模块组成。网络的第一个流(“规则流”)是一个标准的分割CNN,第二个流(“形状流”)以语义边界的形式处理形状信息。我们通过精心设计的门控卷积层(GCL)和局部监督使形状流只处理边界相关的信息。然后,我们融合来自规则流的语义区域特征和来自形状流的边界特征,以产生细化的分割结果,特别是在边界附近。

1.Regular stream

常规流可以是任何前馈的全卷积网络,如基于ResNet的或基于VGG的语义分割网络。由于resnet是最近最先进的语义分割技术,我们使用类似resnet的架构,如ResNet-101和WideResNet,用于常规流。

2.Shape stream

将常规流第一层卷积的输出作为输入,产生语义边界作为输出。网络架构是由一些残差块与门控卷积层(GCL)交错组成的。由于我们可以从GT语义分割掩模中获得ground-truth (GT)二值边缘,因此我们在输出边界上使用有监督的二值交叉熵损失来监督形状流。

3.Fusion Module

该算法将区域特征和边界特征结合起来,输出一个细化的语义分割输出。更正式地说,对于K个语义类的分割预测,输出一个分类分布
在这里插入图片描述

表示像素属于每一个K类的概率。具体来说,我们使用一个Atrous空间金字塔池合并边界图s(Shape stream生成的图)和r(Regular stream生成的图)。这使得我们能够保存多尺度的上下文信息,并被证明是最先进的语义分割网络的重要组成部分。

4.Gated Convolutional Layer

由于估计语义分割和语义边界的任务是密切相关的,我们设计了一个新的GCL层,以促进信息从规则流到形状流的流动。GCL是我们架构的核心组件,它通过过滤其他信息来帮助shape stream只处理相关信息。注意,形状流并不包含来自常规流的特性。相反,它使用GCL来停用自己的激活,这些激活被常规流中包含的高级信息认为是不相关的。你可以把这看作是两个流之间的协作,其中更强大的一个对场景形成了更高层次的语义理解,帮助另一个流从一开始就只关注相关的部分。这使得形状流能够采用一个有效的浅层架构,以非常高的分辨率处理图像。

四、实验

在这里插入图片描述
我们使用DeepLabV3+[11]作为我们的主要基线。这构成了最先进的语义分割和预训练模型。在我们的大多数实验中,我们使用我们自己的DeeplabV3+的PyTorch实现,它在骨干架构的选择上不同于[11]。具体来说,我们使用ResNet-50、ResNet-101和WideResNet作为我们的DeeplabV3+版本的骨干架构。为了进行公平的比较,在适用的情况下,我们在表中将其作为基线。此外,我们还比较了验证集和cityscape基准测试集(测试集)上发布的最新方法。论文解读|ICCV2019|Gated-SCNN: Gated Shape CNNs for Semantic Segmentation_第3张图片
在表6中,我们比较了在城市景观基准上发布的最先进的方法,并在测试集上进行了评估。需要强调的是,我们的模型不是在粗糙数据上进行训练的。令人印象深刻的是,我们可以看到我们的模型始终优于非常强的基线,其中一些基线也使用了额外的粗糙训练数据。在撰写本文时,我们的方法在不使用粗糙数据的已发表方法中排名第一。
论文解读|ICCV2019|Gated-SCNN: Gated Shape CNNs for Semantic Segmentation_第4张图片
图7中显示了我们的方法在城市景观测试集上的定性结果。

上图展示了在Cityscapes test set上预测的高质量边界。

五、结论

在本文中,我们提出了一种新的用于语义分割的双流CNN结构——门控scnn (GSCNN)。我们使用了一个新的门控机制来连接中间层和一个新的损失函数,该函数利用了语义分割和语义边界预测任务之间的二元性。我们的实验表明,这导致了一个高效的架构,产生更清晰的预测周围的对象边界,并显著提高性能在更薄和更小的对象。我们的架构在具有挑战性的城市景观数据集上获得了最先进的结果,在强大的基线上显著改进

你可能感兴趣的:(文献解析paper,python,计算机视觉,机器学习,人工智能)