dan&dran

作者: Valar_Morghulis | 来源:发表于2020-10-13 18:06 被阅读0次

    dran

    作者:JunFu,JingLiu,Jie Jiang,Yong Li,Yongjun Bao,Hanqing Lu

    摘要:我们提出双关系感知的注意力网络(DRAN)来解决场景分割的任务。关键问题是高效地利用上下文信息。为了解决该问题,我们基于关系感知的注意力机制来自适应地捕捉上下文信息。具体是,我们在扩张FCN的头部增加了两类注意力块,分别从空间和通道两个维度对上下文依赖进行建模。注意力模块中,我们用自注意力机制来建模任意两个像素或两个通道之间的语义关联。每个像素(或通道)可根据相关性自适应地聚合来自所有像素(或通道)的上下文。为了减少上述模块的计算量,我们进一步设计了两种类型的轻量注意力模块。在轻量注意力块中,每个像素(或通道)只与几个聚集中心(gathering centers)建立关联。同时,我们增加了一个跨级的门控编码器(a cross-level gating decoder),以有选择性地增强空间细节,从而提高网络性能。大量实验证明网络有效性,并在4个基准数据集上达到最先进水平。特别的,在Cityscapes上不使用额外的粗标注数据在测试集上达到82.9%mIoU。

    关键词:轻量注意力模块,跨级门控解码器,关系感知注意力网络,场景分割

    1 引言

    FCNs的结构特点是捕获有限的感受野和连续的下采样,导致了在大面积区域上的预测不一致和空间细节的丢失。图1所示是该问题的一些样例。

    图1 场景分割的目的是识别每一个像素,包括stuff和不同的物体

    最近的一些工作解决以上问题。一种方法是多尺度上下文信息融合。例如[6-8]是组合来自不同的扩张卷积和池化操作输出的特征图。[9,10]是使用大卷积核,采用分解的结构,或者使用计算量小的解码层,包含image-level的信息。还有就是编码-解码结构[11-14]将低级特征和高级特征融合起来以增强空间上的细节信息。虽然多尺度上下文融合有助于识别不同尺寸的物体,但没考虑物体之间的关系,而这种关系可以用来更好地上下文建模。另一类方法[15,16]使用递归网络来捕获长程相关性,然而这类方法的效果严重受限于长期记忆的学习输出。

    为解决该问题,本文提出双关系感知注意力网络(DRAN)。通过建立一个关系感知的注意力机制,我们可以用显著性图来引导地、自适应地选择要融合的特征。该方法有效且高效。自注意力机制[17]是加权聚合所有位置的特征来更新序列中某个位置的特征,受其启发,我们对任意两个像素或通道(一个特征张量在通道维度上的特征图)之间的上下文依赖进行建模并更新特征。使用位置注意力模块(PAM)和通道注意力模块(CAM),分别对像素之间和通道之间进行自适应的上下文融合。PAM中,每个位置的特征通过加权聚合所有位置的特征来更新,权重取决于位置特征之间的相似度。举个例子,当我们识别一辆车的某个像素时,我们会收集一些与该像素相关联的上下文信息,从而使该像素能获得更多的关于车的信息。CAM也是用类似的机制来捕捉任意两个通道之间的依赖关系,并自适应地更新每个通道特征。

    直接建模两两像素之间或两两通道之间的关系可能是冗余的,而且计算量会很大。为解决这个问题,我们进一步提出在空间维度和通道维度上的两类轻量/紧凑注意力模块(紧凑是指模型的关系是紧凑的/非稀疏的)。具体是,提出了紧凑PAM(CPAM)和紧凑CAM(CCAM)。CPAM是用不同大小的池化核来获取空间聚集中心,然后根据语义关联自适应地将它们融合给每个像素。例如,当我们识别一辆车的某个像素时,我们会收集与该像素相关的区域的信息。CCAM是使用降维卷积层来获得通道聚合中心,然后用它们来更新每个通道。两种轻量的注意力模块是建立像素/通道与少量的像素/通道聚合中心之间的关系,而不是建立两两像素之间或两两通道之间的关系,减少了计算量。另外,我们增加了一个解码结构来融合高级特征和低级特征,从而增强空间细节。解码结构设计为一个跨级的门控单元,选择性地从主干网络中refine低级特征。

    通过上述设计,我们提出的DRANet有效地捕捉了丰富的上下文,并在四个流行的基准测试中取得了优异的性能,包括Cityscapes数据集[18]、ADE20K数据集[19]、PASCAL context数据集[20]和COCO Stuff数据集[21]。我们还开源了我们的代码和训练好的模型:https://github.com/junfu1115/DRAN

    我们主要贡献概括如下:

    1)  提出DRAN来建模空间上和通道维度上的上下文依赖关系;

    2)  设计了两类轻量级的注意力模块来减少计算量;

    3)  提出一种简单有效的解码器结构,带有一个跨级的门控单元来refine低级特征,以增强空间细节信息,以提升性能;

    4)  大量实验证明DRAN在4个基准数据集上达到最先进水平。

    本文的其余部分是,在第2节里简要回顾了分割和注意力机制相关工作;第3节介绍所提的DRANet,包括两种类型的注意力模块的设计细节,相应的紧凑型注意力模块,两个注意力模块的集成,以及一个跨级门控解码器;第4节是实验及实验分析;第5节是结论。

    2. 相关工作

    A. 语义/场景分割

    尽管基于FCN的方法在分割领域很成功,但仍存在边缘分割粗糙、区域预测不一致的问题。近年来有许多研究解决这些问题。

    许多研究通过减少下采样操作来保留空间信息,并致力于利用全局或多尺度上下文来提高语义识别。例如,ParseNet[22]通过将全局特征连接到每个像素来利用图像级信息。PSPNet[8]设计了一个金字塔池模块来收集有效的上下文先验信息,包含不同尺度的信息。EncNet[10]提出了一个上下文编码模块来捕获场景的语义上下文,并有选择地突出与物体类别相关的特征图。GCN[9]使用大尺寸卷积核、分解结构来获得全局接收场。Deeplabv2[6]和Deeplabv3[7]采用atrous空间金字塔池化来嵌入上下文信息,这些信息由不同扩张率的并行扩张卷积组成。虽然这些方法能带来提升,但是多尺度上下文融合的计算量很大。本文采用一种关系感知的注意力机制来克服这一不足并带来性能的提升。

    此外,还有一些研究注意到上下文依赖的重要性并使用递归网络来捕获长程依赖。例如,[15]提出2D-LSTM来捕获标签上的复杂空间依赖关系。DAG-RNN[16]采用一种推广的RNN结构,基于有向无环图显式传递局部上下文,从而在图像区域上捕捉到丰富的上下文依赖关系。MSCI[23]利用LSTM的链式结构来融合相邻层的特征,以获强大的特征。这些基于RNN的方法会受限于长期记忆的限制,我们的方法不同,我们的方法是直接在空间和通道维度上建立语义关联来有效地建模上下文依赖。

    B. 注意力建模

    视觉注意力建模是近年来的一个重要研究课题。[24]采用自下而上注意的显式计算模型来开发注意力特征。代表性的工作[25],[26]关注的是从生物学角度是合理的计算模型,其强调的是注意力部署的自底向上控制。这些努力激发了注意力建模的许多探索[27]。不同于早期的这些工作研究计算的机制,我们的工作的目的是应用注意力机制,用来引导地更新特征,从而自适应地增强相关特征并抑制不相关特征。

    一些方法使用可学习的权重来更新特征,例如SENet[5]使用全局池化特征来生成通道权重,再用这些权重来选择性地凸出通道特征图。CBAM[28]将squeeze-excitation模块扩展到空间维度,以凸出有意义区域。[29]采用空间注意力机制来扩大网络的感受野。[30]和[31]采用了具有空间金字塔结构的注意力机制,在多个空间尺度上凸出重要的patchs。[32]采用无参数空间注意力机制来捕捉不同的动作的重要细节信息。和这些方法不同,我们使用关系感知的加权特征来更新特征。

    自注意力机制被广泛地用于很多任务中。[17]首次提出用自注意力机制来提取输入的全局依赖关系,并用于机器翻译中。[33]将自注意力机制用到图像生成中。[34]在视频与图像任务中研究了时间-空间维度上的non local的有效性。[35]在物体检测任务中使用了自适应的注意力模块来建模物体间的相对几何关系。DANet[36]和OCNet[37]已经证明了自注意力机制在语义分割领域的成功。近年来出现很多降低自注意力机制计算量的工作。A^2Net[38]采用加权的全局池化和加权的broadcasting来收集和分发上下文信息。CCNet[39]以递归的方式堆叠两个交叉的注意力模块。EMANet[40]采用EM算法得到一个紧凑的基集,并以迭代的方式进行分配。与这些方法不同的是,我们提出了一个空间和通道维度的关系感知的注意力模块,在DANet的基础上,进一步设计了两个紧凑的注意力模块,对每个像素/通道和聚集中心之间的关系进行了建模,其中聚集中心是在空间维度上用空间金字塔池化、在通道维度上用降维卷积操作来产生的。

    C. 我们先前的工作

    我们这项工作的先前版本DANet[36]是发表在CVPR2019,使用自注意力机制来捕获两两像素之间和两两通道之间的上下文依赖关系,能有效地改善上下文融合,带来性能的显著提升。但是,计算量很大。本文以DANet为基础,会介绍DANet中的注意力模块,会介绍本文的DRAN对DANet的改进,在以下3个方面本文和会议版本有所不同。首先进一步设计了两个紧凑的注意力模块,建模像素/通道与像素/通道聚集中心的关系,而不是两两像素之间或两两通道之间的关系。每个像素/通道都可以从紧凑的注意力模块中获益,并且计算和内存成本更低。其次,我们添加了一个简单有效的解码器网络,带有跨层的门控机制,它利用低层和高层特征之间的关系来选择性地增强空间细节。第三,实验证明我们方法有效,并在4个基准测试集上取得最先进水平。

    3. 我们的方法

    A.概述

    如图2所示,设计了两类注意力模块,在扩展的残差网络生成的局部特征上提取全局上下文信息,并加上一个简单的解码器网络用于语义分割的预测。具体的是,我们采用[7,8,10]的方法,采用[6]所提的扩张策略,将一个预训练的残差网络(也就是ResNet-50和ResNet-101)作为主干网络。

    图2 概览图

    请注意,我们删除了下采样操作,并在最后两个ResNet块中使用扩展卷积,使得最终输出的特征图为原始尺寸的1/8。它保留了更多的细节信息并且没有添加额外的参数。然后,将扩张的残差网络的特征图输入给两个并行的注意力模块中,分别从空间/通道两个维度捕获全局的上下文依赖。注意力模块中,建立两两像素之间(PAM)、像素和像素聚集中心之间(CPAM)、通道两两之间(CAM)、通道和通道聚集中心之间(CCAM)的关系,然后利用它们选择性地融合上下文信息。接下来,将两个注意力模块的输出进行聚合,以获得更好的特征表示。最后,用一个简单有效的解码网络来逐步恢复原始尺寸。这样,DRANet不仅能更好地聚合上下文信息,还refine了粗分割结果,以产生更准确的语义分割结果。

    B. 位置注意力模块

    正如许多工作[8,9]指出,传统FCNs生成的局部特征不能捕捉到丰富的上下文,这可能导致objects和stuff的错分。为了在局部特征上建立丰富的上下文关系模型,我们引入PAM。PAM根据语义关联关系有选择地将更大范围的上下文信息编码到每个像素中,从而增强识别能力。

    图3 (a)是PAM,(b)是CPAM,灰色矩形表示1×1卷积层,青色矩形表示全连接层,黄色矩形代表一个多尺度池化层接着一个1×1的卷积层

    具体来说,我们直接构造任意两个像素之间的语义关联。每个像素从整张图像的语义相关的像素中中收集有效的上下文信息。如图3(a)所示,给定一个局部特征A[C×H×W],首先将其输入给两个降维卷积层,以生成两个新的特征B[C×H×W]和C[C×H×W]。然后,将它们变形成[C×N],其中N=H×W是像素个数。接着,对CB的转置进行矩阵相乘,并使用softmax层以计算空间注意力图S[N×N]。

    s_{ji} =\frac{exp({B_{j}}\cdot {C_{i }} )}{\sum\nolimits_{i=1}^N  exp({B_{j}}\cdot {C_{i }} ) }     (1)

    其中,s_{ij} 表示的是第i个像素对第j个像素的影响。两个像素的特征越相似,它们之间的相关性就越大。

    同时,将特征A输入给一个卷积层,以生成一个新的特征D[C×H×W],并变形为[C×N]。然后将DS的转置进行矩阵相乘,并将结果变形为[C×H×W]。最后,将其乘以一个标量参数\alpha ,并与特征A执行元素求和操作,获得最终的输出E[C×H×W]:

    E_{j} =\alpha \sum_{i=1}^N(s_{ji}\cdot D_{i}  )+A_{j}    (2)

    其中,\alpha 被初始化为0,并逐渐学会分配更多的权重[33]。由(2)可知,特征E的每个位置是所有位置特征与原始特征的加权和。因此。它有选择地以一个全局的视野根据空间注意力图来聚合上下文信息。每个像素的信息会传递给语义相关的像素,从而提高语义一致性。

    C. 紧凑的位置注意力模块

    由于需要通过向量内积来计算像素两两之间的关系,这会导致在GPU上很大的内存占用以及很大的计算量。为了解决该问题,我们提出CPAM,其构造像素和少量的聚合中心的关系。聚合中心定义为一个紧凑的特征向量,其是通过从输入张量的像素子集中聚合的特征向量。其由空间金字塔实现,空间金字塔提供来自不同空间尺度的上下文信息。

    如图3(b)所示,首先将特征A[C×H×W]输入给多尺度池化层,接着是1×1卷积层,这样就获得几个池化后的特征,尺寸分别为1×1、2×2、3×3和6×6。为了简便,图3(b)没有画出6×6的特征。然后,将池化过的特征的每个位置(bin,格点)当作聚合中心,并将特征变形为[C×L×L]。最终的聚合中心F[C×M]是所有池化过的特征的所有位置(bin)的级联。M是所有池化过的特征的格点数的总和。

    接下来,根据语义相关性自适应地将聚合中心合并到每个像素上去。特别的,将特征AF输入给1×1卷积层和全连接层,以获得特征B[C×H×W]和C[C×M]。和图3(a)类似,使用矩阵相乘和softmax层来获得空间注意力图S[N×M]:

    s_{ji} =\frac{exp({B_{j}}\cdot {C_{i }} )}{\sum\nolimits_{i=1}^M  exp({B_{j}}\cdot {C_{i }} ) }   (3)

    其中,s_{ji} 衡量的是第i个中心到第j个像素的关系。然后,将聚集中心F输入给全连接层,得到特征D[C×M]。输出特征E计算为:

    E_{j} =\alpha \sum_{i=1}^M(s_{ji}\cdot D_{i}  )+A_{j}   (4)

    不同于[40,41]通过参数可学习的矩阵来捕获全局表示,再通过逆矩阵将全局特征投影回原始像素,我们的方法是简单的池化来捕获多个具有不同上下文的聚合中心,并对聚合中心的关系感知的加权求和来增强每个位置的像素。

    D. 通道注意力模块

    高级特征的每个通道可以视为某个特定类别的响应,不同的语义响应是相互关联的。通过利用通道两两之间的依赖关系,我们改进了相关语义的特征表示。因此,我们构建CAM模块来显示建模通道两两之间的依赖关系。

    图4 (a)是CAM,(b)是CCAM。灰色矩形表示1×1卷积层

    CAM的结构如图4(a)所示。不同于PAM,我们直接从原始特征A[C×H×W]来计算通道注意力图X[C×C]。特别的,我们将A变形为[C×N],然后计算AA的转置的矩阵相乘,最后再输入给softmax层以获得通道注意力图X[C×C]:

    x_{ji } =\frac{exp({A_{j}}\cdot {A_{i }} )}{\sum\nolimits_{i=1}^C  exp({A_{j}}\cdot {A_{i }} ) }  (5)

    其中,x_{ji} 度量的是特征A的第j个通道对第i个通道的影响。然后,将X的转置和A进行矩阵相乘,并将结果变形为[C×H×W]。然后,将结果乘以一个标量参数\beta ,并和A按位加权求和,以获得最终的输出E[C×H×W]:

    E_{j} =\beta  \sum_{i=1}^C(x_{ji}\cdot A_{i}  )+A_{j}   (6)

    其中,\beta 从初始值0逐步地习得一个权重。公式(6)表明,每个通道的最终特征是所有通道和原始特征的加权和,它建模了通道之间的长程语义相关性。

    E. 紧凑的通道注意力模块

    如果通道数过多,则CAM计算量过大。为了解决该问题,我们提出CCAM来建立每个通道和每个通道聚合中心之间的关系。

    如图4(b)所示,我们是对输入张量的通道进行聚合来获取通道聚合中心。特别的,我们使用1×1卷积层来减小输入特征A的通道维度,结果是特征F[K×H×W]。F的每个通道被视为是一个通道聚合中心。然后,计算通道注意力图X[C×K]:

    x_{ji } =\frac{exp({A_{j}}\cdot {F_{i }} )}{\sum\nolimits_{i=1}^K  exp({A_{j}}\cdot {F_{i }} ) }   (7)

    其中,x_{ji} 度量的是第i个通道聚合中心对特征A的第j个通道的影响。然后,有选择地将通道聚合中心合并到特征A的每个通道上,以获得最终的输出E

    E_{j} =\beta  \sum_{i=1}^K(x_{ji}\cdot F_{i}  )+A_{j}  (8)

    请注意,在计算通道维度的关系之前,我们不使用卷积层来变换特征,这样就可以保持不同通道间的关系。最近的工作[10,42]使用全局池化和编码层来计算通道间关系,我们的方法不同,我们是利用所有相应位置的空间信息来建模通道相关性。

    F. 将注意力模块嵌入到网络中

    为了充分利用远程上下文信息,我们通过一个拼接融合模块对两个注意力模块的特征进行聚合。特别地,我们通过卷积层对两个注意模块的输出进行变换,并将它们拼接在一起,然后应用降维卷积层来获得融合特征。此外,我们还在实验中讨论了不同的融合方法(sum or concat,cascade or parallel),最终选择了parallel和concat。请注意,我们的注意力模块很简单,可以直接插用到现有的FCN类框架中,没带来太多参数,但是可以有效地增强特征表示。

    G. 跨级的门控解码器

    [12,43,44]很多工作指出低级特征可以提高对边缘和细节的预测,但是其局部感受野太小导致在其它区域的错分。与[12]和[45]直接融合低级特征和高级特征不同,我们采用一种跨级的选通机制来指导选择性地增强空间细节和抑制其他区域,从而获得更好的跨级特征融合。因此我们提出一个简单有效的解码器结构,带有一个跨级的选通单元,如图5所示。

    图5 跨级选通编码器

    特别地,来自融合模块的输出进行双线性上采样,以产生特征H。同时,我们在ResNet block1的输出端应用了一个3×3的32核卷积层(Conv+BN+ReLU)来获得低层特征L,为了有效地融合低层特征L和特征H,我们将它们送入一个跨级的选通单元来细化低级特征。特别的,我们将两个特征拼接起来并输入一个1×1的卷积层,再加上一个sigmoid层,以获得空间选通图。然后,根据选通图重新加权低层特征L。两个特征图的边界或细节是不同的,可以得到空间选通图来增强边界和细节的区域。然后,我们根据选通图重新加权低层特征L,使边界区域和细节区域更具响应性。在获得精细的低层特征M后,我们将其与H拼接在一起,接着是2层核数为256的3×3卷积层(Conv+BN+ReLU)。最后是一个卷积层用于语义分割预测,以及双线性上采样将尺寸放大4倍至高分辨率输出。

    4. 实验

    在4个基准数据集上达到最先进水平;介绍实现细节;在Cityscapes上做消冗研究;在4个基准数据集上与最先进方法比较。

    A 实验设置    略

    B 消冗研究

    在Cityscapes上消冗研究,主干都是ResNet50:

    1) 位置/通道注意力模块:

    见表1和表2。

    表1 表2 括号里的数字表示特征F的通道数

    2)紧凑型位置/通道注意力模块:

    见表1和表2。

    另外,还报告了PAM和CPAM(1236)(1236是指金字塔池化的尺度)在每一个类别上的IoU。见表3。尽管两种方法在总体上表现是差不多的,但是在一些类别上表现有差异。在一些包含很多空间细节的类别上(例如栅栏、灯柱、交通灯)PAM表现得更好,在一些大块物体的类别上(例如卡车、公交、墙)CPAM(1236)表现得具有竞争力甚至更好。这可能是因为PAM的特征D相比CPAM的池化过的特征D有更丰富的局部表示,因而能更好地表示细节。图6是一些例子。

    表3 在Cityscapes验证集上每个类别结果 图6

    我们还探讨了CCAM中聚合中心的数量(特征F的通道)。如表2所示,当聚合中心为32时,可以用较少的GFLOPs(0.90)的情况下获得74.63%的性能。结果表明,建立紧凑的通道间关系可以提升性能,但是通道数如果太少可能不能完全捕获通道间的相互依赖性。有趣的是,我们发现CCAM(32)的GPU内存略高于CAM,因此我们详细比较了CCAM(32)和CAM的GPU内存。尽管CCAM(32)将特征X的内存从2.94MB减少到0.19MB,但其额外的特征F和其他卷积层占用了3.38MB的内存。

    在我们的注意力模块中,输入特征的分辨率对GFLOPs和GPU内存有很大的影响。我们比较了PAM、CPAM(1236)、CAM、CCAM(32)在不同的输入特征分辨率下的GFLOPs和GPU内存。结果见图7。

    图7

    3) 与多尺度和注意力方法的比较:

    我们还对比了多尺度方法(如PPM[8]和ASPP[7])以及其他自注意力方法(如OCNet[37]、Aˆ2Net[40]、EMANet[38]和CCNet[39])。为了公平,我们采用ResNet-50作为主干,采用与CPAM(1236)相同的训练和测试环境来评估这些方法。

    结果如表4所示。与常用的多尺度方法(如PPM和ASPP)相比,CPAM(1236)可以根据像素间的相关性自适应地融合每个像素的多尺度特征,并以较少的内存占用获得更高的性能。同时,OCNet由于结合了自注意力和ASPP模块,在GLOPs和内存上获得了更高的性能和更高的内存开销。

    表4

    通过减少与每个像素的连接,这些方法(Aˆ2Net、EMANet和CCNet)比自注意力模块(PAM和OCNet)的计算成本更少。而我们的方法采用简单的池化操作来获得多尺度聚集中心,可以将GFLOPs和内存降低到更少。

    4) 注意力模块可视化:

    PAM的整个的自注意力图的尺寸是(H×W)×(H×W),这意味着图像中每个位置都有相应的子注意力图,子注意力图尺寸为(H×W)。CPAM的整个的自注意力图的尺寸是(H×W)×(M),每个位置的子注意力图尺寸为(1)×(M),其还可拆分为多个带有不同scale bins(格点数)的图。不同格点数的图表示的是不同尺度在该位置的影响。如图8所示,对于每个输入图像,我们选择一个点,并在PAM中显示其对应的子注意力图,以及CPAM(1236)的多个子注意力图,其池化过的特征的尺寸(bin size)分别为1×1、2×2、3×3和6×6。第1行,在道路上标记了个红点,在第1行第2列,PAM中的注意力图凸出了道路所在的大部分区域。第2行中,是在骑手上标记了个红点,即使这个骑手的区域较小(像素较少),情况也还是如此。这意味着PAM可以捕获明确的语义相似性的关联。第3-6列是图像红点在CPAM(1236)的多个注意力图,我们可以看到1×1、2×2、3×3的注意力图在大物体(道路)上的相似度更高,而6×6的注意力图在小物体(骑手)上的响应更高,这说明多尺度池化过的特征能处理不同尺度的对象。

    图8

    对于通道注意力,很难将注意力图直接可视化。我们展示CAM和CCAM(32)的一些注意力通道,看它们能否凸显明确的语义区域。左边3张是CAM和CCAM(32)输出中对应“道路”的通道的图,和真值。右边3张是CAM和CCAM(32)输出中对应“树木”的通道的图,和真值。总之,这些可视化进一步证明了我们的模块能够捕获长程依赖关系,以改进场景分割中的特征表示。

    5)嵌入注意模块:

    我们探讨了两个注意力模块的不同融合实现。特别是两个紧凑注意模块可以级联或并联布置。结果见表5。

    表5 在Cityscapes验证集上实验。CP-CC表示级联的时候CPAM在前,CCAM在后。CC-CP反过来。

    6) 跨级选通解码器:

    比较了是否使用这个解码器,以及是否有选通单元下的结果,结果见表6。

    表6 

    此外,我们还通过trimap实验[59]、[60]对该解码器的分割精度进行了评估,以量化解码器结构的准确性。特别是计算了靠近物体边界的像素的平均IoU(沿边界的扩张带也称为trimap)。如图9所示,我们的解码器可以改善分割的边缘。当扩张带(dilated band)大时,跨级选通单元会带来更多的改善。此外,我们还提供了一个选通图可视化的示例。我们发现,包含空间细节的物体(灯柱、交通标志)被凸显了,大块的物体(建筑)被抑制了。这表示选通单元可以作为网络的一种指导用以关注细节。

    图9

    表7还报告了不同部分的耗时比较。

    表7 耗时比较。推理尺寸是1×3×768×768

    7) 一些常见的改进策略:

    为了和最先进模型比较,我们遵循[7,8,39,47]采用一些常见的改进策略。结果见表8。首先使用更深的预训练网络作为主干(ResNet-101)。在最后一个ResNet块中应用不同大小(4,8,16)的网格层次结构。使用随机缩放(从0.5到2.2)的数据增强。使用OHEM和多尺度测试数据增强。图10所示是我们的最佳模型在验证集上的一些结果。

    表8

    C 与最先进水平比较

    1)Cityscapes    在Cityscapes上,只用精细标注数据训练的DRANet-101,提交给官方评估服务器,结果见表9。单个模型82.9%。和[57]相比,我们使用多级特征获得选通图,从而性能更高。此外,我们还比用图卷积[52]或strip pooling[54]来建模长期依赖关系的工作表现得更好。此外,我们方法还比依赖于更强大预训练模型DenseASPP[49]要好。

    表9 在Cityscapes测试集上实验

    2) ADE20K    在前人的工作[8]、[10]、[38]和[62]之后,我们在训练阶段使用随机缩放,在测试阶段使用多尺度测试数据增强(0.5,0.75,1.0,1.25,1.5,1.75)。结果见表10。图10是一些示例。

    表10 ADE20K验证集 图10 从上到下依次是(a)输入图像,(b)PSPNet[8],(c)DANet[36],(d)DRANet,(e)真值

    此外,我们还遵循[10]并使用train+val数据微调我们的最佳DRANet-101模型。我们将初始学习率设为0.0001,训练迭代次数设为40个周期,并用上述多尺度测试方案得到测试结果。结果见表11。我们的结果被提交到官方评估服务器,DRANet-101以56.72%的最终得分,单个模型排名第一。

    表11 ADE20K测试集

    3) PASCAL Context    结果见表12。其中DANet[36]和CFNet[63]用自注意力来捕获长程依赖关系,计算量大。

    表12 PASCAL Context测试集

    4) COCO Stuff    我们还对COCO-Stuff数据集进行了实验,以验证我们提出的网络的泛化能力。结果见表13。其中DAG-RNN[16]利用链式RNN对二维图像建立丰富的空间相关性模型,Dinget [11] 在解码阶段采用了选通机制,提高了对不明显目标和背景的分割。

    表13 COCO Stuff测试集

    5. 结论

    在本文中,我们提出了一个场景分割的DRANet,它通过注意力机制自适应地整合上下文信息。特别地,我们采用PAM和CAM分别在空间和通道维度上捕获全局依赖关系。PAM为每个像素计算一个语义相似度图,并根据相似度图对所有像素的特征进行加权求和来更新像素的特征。这种自适应特征融合使得每个像素都能获得语义相关的上下文。与PAM类似,CAM通过用加权和聚合所有通道图来更新每个通道图。它显式地为任何两个通道之间的依赖关系建模。此外,我们设计了两种类型的紧凑型注意力模块,以减少巨大的计算开销和内存占用。通过将所有像素/通道压缩为几个空间/通道聚集中心,我们可以在聚集中心和像素/通道之间建立紧密的关系。由于聚集中心的数目远小于像素数,因此可以显著降低相似度图的计算成本和内存占用。同时,为了增强空间细节,提出了一种跨级选通解码器。我们利用低层和高层特征得到一个空间选通图,然后根据选通图对低层特征重新加权来强调边界和细节区域。消冗实验表明,与扩展的FCN相比,我们的方法能够有效地捕捉上下文信息,并给出更精确的分割结果。我们提出的DRANet在四个场景分割数据集(Cityscapes、ADE20K、PASCAL Context和COCO-Stuff)上都取得了优异的性能。

    https://github.com/junfu1115/DANet/blob/56a612ec1ed5c2573ebc8df04ad08475fbf13a52/encoding/models/sseg/dran.py#L132

    相关文章

      网友评论

          本文标题:dan&dran

          本文链接:https://www.haomeiwen.com/subject/gqzmpktx.html