作者认为之前的semantic segmentation的工作将所有信息都放入到了CNN的网络之中(这其中包含了颜色、边界、纹理等信息),这不太理想,所以作者在regular stream的基础之上增加了一个shape stream的分支,通过利用门控卷积来控制使得shape stream这条分支中只包含边界的信息。
目前最先进的图像分割方法形成了一种密集的图像表示,其中的颜色、形状和纹理信息都是在深度 CNN 中一起处理的。然而,这可能不理想,因为它们包含与识别相关的非常不同类型的信息。
文章中提到,在图像分割领域,直接通过常规的卷积神经网络处理,会将颜色、纹理等信息一块处理,从这里面提取我们所需要的信息非常少。
我们提出了一种用于语义分割的新的双流CNN架构,其将形状信息显式地称为单独的处理分支,即形状流,其处理信息与经典流平行。
这种架构的关键是一种连接两个流中间层的新型门。具体来说,我们使用经典流中的高级激活对形状流中的低级激活进行门化,有效地去除噪声,帮助形状流只专注于处理与边界相关的信息。
作者提到,我们使用非常浅的结构(shape stream),在对象边界周围产生了更精确的预测,并显著提高了对较薄和较小目标的性能。在Cityscapes数据集上,相比于其他的模型,作者的模型取得了一流的性能。
语义图像分割是计算机视觉中最广泛研究的问题之一,卷积神经网络已经使所有的主要分割基准的精度显著提高。一种标准的做法是通过将完全连接的层转换为卷积层,使图像分类 CNN 架构适应于语义分割的任务。一个突出的缺点是由于池化层的使用导致输出的空间分辨率下降。一部分人已经提出专门的CNN模块,帮助恢复网络输出的空间分辨率。
作者认为,在结构设计中也存在内在的低效,因为颜色、形状和纹理信息都是在一个深层次的CNN中一起处理的。这些信息可能包含与识别相关的非常不同的信息量。例如,可能需要查看完整和详细的目标边界才能得到形状的区分编码,而颜色和纹理包含相当低级别的信息。
我们提出了一种新的用于语义分割的两流 CNN 结构,它将形状信息显式地连接为一个单独的处理分支。我们将经典的 CNN 保持在一个流中,并添加处理信息的所谓的并行形状流中。我们明确地不允许两个流之间的信息融合,直到最顶层。
目前最先进的语义分割方法主要是基于CNN的。
我们对边界映射进行了预测,以提高分割性能。与[6]使用边缘信息改进网络输出相反,我们将学习到的边界信息注入中间CNN层。此外,我们还提出了一个专门的网络体系结构和一个双任务正则化来获得高质量的边界。
介绍了一些前人做过的一些工作,在网络输出上使用结构化预测模块等。从而引出下面自己的创新点以及与其他人的区别。
PSPNet和DeepLab提出了一个特征金字塔池模块,该模块通过在倍数尺度上聚合特征来整合多尺度上下文。与我们相似的是,提出了两个流网络,但是,在它们的情况下,第二个流的主要目的是恢复与池层一起丢失的高分辨率特性。在这里,我们明确指定第二个流来处理与形状相关的信息。
其他人也提出了与作者相似的双流模型结构,但是作用不同。
一些工作还探讨了将网络结合到互补任务中的想法,以提高计算机视觉任务的学习效率、预测精度和泛化能力。例如,[45,39,27,26,28]的工作提出了使用多任务损失学习共享表示的统一架构。我们的主要目标不是训练多任务网络,而是实施一种利用分割和边界预测任务之间的二元性的结构化表示。同时学习分割和边界检测网络,而[31,40]学习边界作为辅助分割的中间表示。与这些工作相反,语义和边界信息只在损失函数时相互作用,我们将边界信息显式地注入到分割cnn中,并提出了一个双任务损失对语义掩码和边界预测进行细化的损失函数。
最近关于语言建模的工作也提出了在卷积中使用门机制的思想。例如,[14]建议用门控时间卷积替换递归网络中通常使用的递归连接。另一方面,提出了自由图像修复采用软选通机制的卷积,[46]提出了条件图像生成的门控像素cnn(门控像素cnn)。另一方面,提出了 Free-Form Image Inpainting采用 soft-gating 机制的卷积,[46]提出了条件图像生成的 Gated PixelCNN。在这种情况下,我们使用门控卷积算子进行语义分割,并定义形状和常规流之间的信息流。
如下图所示,我们的网络由两个网络流和一个融合模块组成。网络的第一个流 (“regular stream”) 是标准分割CNN,第二流 (“shape stream”) 以语义边界的形式处理形状信息。我们通过仔细设计的门卷积层(GCL)和局部监控,对形状流进行处理,只处理边界相关信息。然后,我们将常规流中的语义区域特征和形状流中的边界特征进行融合,以获得精确的分割结果,尤其是围绕边界的分割结果。
网络一共分三个模块:Regular Stream,Shape Stream,Fusion Module。
Regular Stream:作者选择用ResNet或WideResNet的预训练模型,输入为原图像 I,输出的结果相对输入图像尺寸下采样m倍。
Shape Stream: 输入为图像梯度和regular stream第一个卷积块的输出。通过门控卷积层来控制其只传输boundary相关的信息,定义shape stream的输出为 s∈R^H*W,对该模块的监督使用 binary cross entropy loss(ground truth 可以通过semantic segmentation masks来获得)。
ASPP(Atrous Spatial Pyramid Pooling),空洞空间卷积池化金字塔。简单理解就是个至尊版池化层,其目的与普通的池化层一致,尽可能地去提取特征。ASPP 的结构如下:
如图所示,ASPP 本质上由一个1×1的卷积(最左侧绿色) + 池化金字塔(中间三个蓝色) + ASPP Pooling(最右侧三层)组成。而池化金字塔各层的膨胀因子可自定义,从而实现自由的多尺度特征提取。
空洞卷积的rate到底是什么?
链接: 图片引用于
卷积过程示意见下,如图是依次经过普通卷积,空洞率为2和空洞率为4对应的感受野范围。
由于估计语义分割和语义边界的任务密切相关,我们设计了一种新的 GCL 层,以方便信息流从常规流流向形状流。GCL是我们体系结构的核心组件,帮助形状流只通过过滤其他信息来处理相关信息。请注意,形状流不包含常规流的特性。相反,它使用GCL 来禁用它自己的激活,这些激活被常规流中包含的更高级别的信息认为是无关的。人们可以认为这是两个流之间的协作,其中功能更强大的流已经形成了对场景的更高层次的语义理解,帮助另一个流只关注于 相关部分自开始。这使得形状流能够采用有效的浅层结构,以非常高的分辨率处理图像。
我们在两个流之间的多个位置使用 GCL 。 令 m 表示位置的数量, t ∈ 0 , 1 , m是一个运行索引, r t 和st表示我们使用 GCL 处理的相应常规流和形状流的中间表示。应用 GCL,我们首先通过连接 rt 和 st,然后是归一化的1×1卷积层 ,然后是Sigmoid函数σ,得到一个注意图 :
然后将 传递到形状流中的下一层以供进一步处理。注意,注意力映射计算和门控卷积都是可微的,因此反向传播可以执行端到端。直观地说,α也可以被看作是一种用重要的边界信息加权更重区域的注意图。在我们的实验中,我们使用三个 GCL 并将它们连接到常规流的第三层、第四层和最后一层。如果需要的话,使用双线性插值来对常规流中的特征映射进行上采样。
根据GCL公式得到的数据流图:
代码中的数据流:
我们以端到端的方式与融合模块一起学习规则流和形状流。我们在训练期间共同监督分割和边界图预测。这里,边界图是场景中对象和填充类的所有轮廓的二进制表示(图6)。
我们在预测的边界图 s上使用标准二进制交叉熵(BCE)损失,并且使用预测的语义分段 f 上的标准交叉熵(CE)损失:
如上所述,p ( y | r, s )∈
表示融合模块的分类分布输出。
表示特定像素是否属于输入图像 i 中的语义边界的潜力。它是通过在分割输出上取一个空间导数来计算的,如下所示:
包含ζ和ˆζ中所有非零像素坐标的集合.直观地,我们希望确保边界像素在与GT边界不匹配时受到惩罚,并避免非边界像素影响损失函数。指出上述正则化损失函数利用了边界空间中边界预测和语义分割之间的对偶性。同样,我们可以使用来自形状流
的边界预测,以确保二进制边界预测 s 和预测语义 p(y|r,s)之间的一致性:
p 和 k 分别在所有图像像素和语义类中运行,
对应于指示符函数, thrs 是置信阈值,我们在实验中使用0.8。总的双任务调整器丢失函数可以被写入为:
为了等式 7 反向传播,我们需要计算等式 4 的梯度。 g = || . ||,关于给定参数 η 的偏导数可以计算如下:
Qualitative Segmentation Results
图 7:我们的方法在 Cityscapes 测试集上的定性结果。图显示了预测的分割掩码。
Qualitative Semantic Boundary Results
图 9:Cityscapes 测试集上的定性结果显示了我们预测分割掩码的高质量边界。通过找到预测分割掩码的边缘来获得边界。
表 1:Cityscapes val 集上 IoU 与最先进的基线的比较。
表 2:在 Cityscapes val 集上的边界 F 分数方面,不同阈值的比较与基线。
Quantitative Results
Evaluation at different distances, measured by crop factor.
图 5:基于距离的评估:不同作物因素的 mIoU 比较。
本文提出了一种新的两流CNN语义分割结构–门控-SCNN(GSCNN)。我们采用了一种新的选通机制来连接中间层,并利用语义分割和语义边界预测任务之间的二重性,提出了一种新的损失函数。我们的实验表明,这导致了一种高效的体系结构,在对象边界周围产生了更精确的预测,并大大提高了对较薄和较小对象的性能。 我们的体系结构在具有挑战性的 Cityscapes 数据集上取得了最先进的结果,大大改善了强大的基线.
网络结构如上图所示,regular stream可以是任何前向全卷积网络,如Resnet-101,WideResNet等。Shape stream是一系列1 × 1卷积,残差块和GCL(Gated Conv Layer)的组合,该分支的输入包含两项,原始图像梯度和regular stream分支的第一个卷积层输出(应该指的是Resnet中的第一个stage输出)。门控卷积层实际上可以看成是一种注意力机制,可以根据regular stream的高层次信息去指导shape stream集中在边界部分(edge bce loss才是驱动力),然后ASPP在多尺度上融合两个分支输出的特征图,最后输出语义分割图。上图的edge bce loss是局部监督损失,监督的是shape stream还没送到ASPP前的边界概率图,segmentation loss是交叉熵损失(CE loss),监督最终输出语义分割图,更新包括ASPP的所有参数,dualtask loss是双任务的正则化损失,基于边界预测和边界区域语义分割的二元性和边界预测和语义预测的一致性思想设计。