二十四章:SEgmentation TRansformer (SETR)——以Transformer的序列到序列的视角重新思考语义分割问题

0.摘要

        最近的语义分割方法采用了全卷积网络(FCN)和编码器解码器架构。编码器逐渐降低空间分辨率,并学习具有更大感受野的抽象/语义视觉概念。由于上下文建模对于分割是至关重要的,最新的研究工作将重点放在增加感受野上,通过空洞卷积或插入注意力模块来实现。然而,基于编码器-解码器的FCN架构保持不变。在本文中,我们旨在通过将语义分割视为序列到序列预测任务来提供另一种观点。具体而言,我们使用纯Transformer(即不使用卷积和分辨率降低)将图像编码为一系列补丁。通过在Transformer的每一层中建模全局上下文,这个编码器可以与简单的解码器结合,提供一个强大的分割模型,称为SEgmentation TRansformer(SETR)。大量实验证明,SETR在ADE20K(50.28% mIoU),Pascal Context(55.83% mIoU)和Cityscapes上取得了新的最佳结果。特别地,我们在高度竞争的ADE20K测试服务器排行榜上首次夺冠。

1.引言

        自从[36]的开创性工作以来,现有的语义分割模型主要基于全卷积网络(FCN)。标准的FCN语义分割模型采用编码器-解码器架构:编码器用于特征表示学习,解码器用于对编码器生成的特征表示进行像素级分类。在这两者中,特征表示学习(即编码器)被认为是最重要的模型组成部分[8,28,57,60]。编码器像大多数用于图像理解的CNN一样,由堆叠的卷积层组成。由于计算成本的考虑,特征图的分辨率会逐渐降低,因此编码器能够逐渐增大感受野来学习更抽象/语义的视觉概念。这种设计之所以受欢迎,有两个有利之处,即平移等变性和局部性。前者很好地尊重了图像处理的本质[58],从而支持模型对未见过的图像数据的泛化能力。而后者通过在空间上共享参数来控制模型的复杂性。然而,这也带来了一个基本限制,即学习长距离依赖信息,对于在非受限场景图像中进行语义分割是至关重要的[2,50],由于感受野仍然有限,这变得具有挑战性。

        为了克服上述的限制,最近引入了一些方法。其中一种方法是直接操作卷积操作。这包括使用大的卷积核大小[40],空洞卷积[8,22]和图像/特征金字塔[60]。另一种方法是将注意力模块整合到FCN架构中。这种模块旨在对特征图中的所有像素进行全局交互建模[48]。在应用于语义分割[25,29]时,常见的设计是将注意力模块与FCN架构相结合,将注意力层放在顶部无论采用哪种方法,标准的编码器-解码器FCN模型架构保持不变。最近,还尝试完全摒弃卷积,而是使用仅注意力模型[47]。然而,即使没有卷积,它们也不会改变FCN模型结构的本质:编码器对输入的空间分辨率进行下采样,生成用于区分语义类别的较低分辨率特征映射,解码器将特征表示上采样为全分辨率的分割图。

        在本文中,我们旨在重新思考语义分割模型的设计,并提出一种替代方案。具体而言,我们提出用纯Transformer [45]替代基于堆叠卷积层的编码器,该编码器逐渐降低空间分辨率,从而形成一种新的分割模型,称为SEgmentation TRansformer (SETR)。这个仅由Transformer构成的编码器将输入图像视为由学习到的patch嵌入表示的图像patch序列,并利用全局自注意力建模对序列进行转换,用于区分性特征表示学习。具体而言,我们首先将图像分解为固定大小的patch网格,形成一个patch序列。然后,对每个patch的扁平化像素向量应用线性嵌入层,得到一系列特征嵌入向量作为Transformer的输入。在编码器Transformer学习到特征之后,使用解码器恢复原始图像分辨率。关键在于,在编码器Transformer的每一层都没有降采样的空间分辨率,而是进行全局上下文建模,从而为语义分割问题提供了全新的视角。

        这种纯Transformer的设计灵感来自于它在自然语言处理(NLP)[15,45]中取得的巨大成功。最近,纯视觉Transformer或ViT [17]在图像分类任务中也显示出了有效性。这直接证明了传统的堆叠卷积层(即CNN)设计可以受到挑战,并且图像特征不一定需要通过降低空间分辨率逐渐从局部到全局上下文进行学习。然而,将纯Transformer从图像分类扩展到语义分割这样的空间位置敏感任务并不是一件简单的事情。我们通过实验证明,SETR不仅在模型设计上提供了新的视角,而且在许多基准测试中取得了新的最先进的结果。

        本文的贡献如下:

        (1) 从序列到序列学习的角度重新定义了图像语义分割问题,提供了一种替代主导的编码器-解码器FCN模型设计的方法。

        (2) 作为一种实例化方法,我们利用Transformer框架通过对图像进行序列化来实现完全的注意力特征表示编码器。

        (3) 为了广泛地研究自注意力特征表示,我们进一步引入了三种不同复杂性的解码器设计。

        大量实验证明,与具有和不具有注意力模块的不同FCN相比,我们的SETR模型能够学习到更优越的特征表示,在ADE20K(50.28%)、Pascal Context(55.83%)上取得了新的最先进的结果,并在Cityscapes上取得了竞争性的结果。特别是,在竞争激烈的ADE20K测试服务器排行榜上,我们的成绩排名第一。

2.相关工作

语义分割:随着深度神经网络的发展,语义图像分割得到了显著提升。通过去除全连接层,全卷积网络(FCN)[36]能够实现像素级预测。虽然FCN的预测相对粗糙,但是已经开发了几种基于CRF/MRF [6,35,62]的方法来帮助优化粗糙的预测结果。为了解决语义和位置之间的固有张力[36],需要对编码器和解码器进行粗细层的聚合。这导致了不同变种的编码器-解码器结构[2,38,42]用于多级特征融合。最近的许多工作都集中在解决FCN中有限的感受野/上下文建模问题。为了扩大感受野,DeepLab [7]和Dilation [53]引入了空洞卷积。另一方面,PSPNet [60]和DeepLabV2 [9]聚焦于上下文建模。前者提出了PPM模块来获取不同区域的上下文信息,而后者开发了采用不同膨胀率的金字塔空洞卷积的ASPP模块。还利用分解的大内核[40]进行上下文捕捉。最近,基于注意力的模型在捕捉长程上下文信息方面非常受欢迎。PSANet [61]开发了逐点空间注意力模块,动态捕捉长程上下文。DANet [18]嵌入了空间注意力和通道注意力。CCNet [26]则专注于节省由全空间注意力引入的大量计算开销。DGMN [57]构建了一个动态图消息传递网络用于场景建模,并且可以显著降低计算复杂性。需要注意的是,所有这些方法仍然基于FCN,其中特征编码和提取部分基于经典的ConvNets,如VGG [43]和ResNet [20]。在本文中,我们从不同的角度重新思考了语义分割任务。

Transformer和自注意力模型已经在机器翻译和自然语言处理领域产生了革命性的影响[14,15,45,51]。最近,也有一些探索将Transformer结构应用于图像识别领域。非局部网络[48]在卷积主干网络上添加了Transformer风格的注意力机制。AANet [3]将卷积和自注意力混合用于主干网络的训练。LRNet [24]和stand-alone网络 [41]探索了局部自注意力,以避免全局自注意力带来的重计算负担。SAN [59]探索了两种类型的自注意力模块。Axial-Attention [47]将全局空间注意力分解为两个独立的轴向注意力,大大减少了计算量。除了这些纯Transformer的模型之外,还有CNN-Transformer混合模型。DETR [5]及其后续的可变形版本在目标检测中使用Transformer,将Transformer附加在检测头部内。STTR [32]和LSTR [34]分别采用Transformer进行视差估计和车道形状预测。最近,ViT [17]是第一个展示纯Transformer模型在图像分类方面能够达到最先进性能的工作。它直接启发我们在语义分割模型中使用纯Transformer的编码器设计。

        最相关的工作是[47],它也利用注意力进行图像分割。然而,有几个关键的区别。首先,尽管在[47]中完全去除了卷积,就像我们的SETR一样,但他们的模型仍然遵循传统的FCN设计,即特征图的空间分辨率逐渐降低。相反,我们的序列到序列预测模型在整个过程中保持相同的空间分辨率,因此在模型设计上代表了一次性的改变。其次,为了最大限度地提高现代硬件加速器的可扩展性并便于使用,我们坚持使用标准的自注意力设计。而[47]则采用了一个特别设计的轴向注意力[21],它在标准计算设备上的可扩展性较差。我们的模型在分割准确性方面也更优越(请参见第4节)。

图1.所提出的SEgmentation TRansformer (SETR)的示意图(a)。我们首先将图像分割为固定大小的补丁,线性嵌入每个补丁,添加位置嵌入,并将得到的向量序列输入标准的Transformer编码器。为了进行像素级分割,我们引入了不同的解码器设计:(b)渐进上采样(结果是一种称为SETR PUP的变体);和(c)多级特征聚合(一种称为SETR-MLA的变体)。

3.方法

3.1.基于FCN的语义分割

        为了与我们的新模型设计进行对比,让我们首先回顾一下常规的FCN [36]图像语义分割方法。FCN编码器由一系列顺序连接的卷积层组成。第一层将图像作为输入,表示为H×W×3,其中H×W指定了像素级别的图像大小。后续层i的输入是一个三维张量,大小为h×w×d,其中h和w是特征图的空间维度,d是特征/通道维度。更高层的张量位置是基于所有较低层张量通过逐层卷积连接的位置计算的,这些位置是通过定义它们的感受野确定的。由于卷积操作的局部性质,感受野沿着层的深度线性增加,取决于卷积核的大小(通常为3×3)。因此,在这种FCN架构中,只有具有大感受野的较高层才能建模长程依赖关系。然而,研究表明,一旦达到一定的深度,增加更多的层次会很快失去益处。因此,对于上下文建模来说,有限的感受野是常规FCN架构的固有局限性。

        最近,一些最先进的方法[25,56,57]表明,将FCN与注意力机制结合起来是学习长程上下文信息的更有效策略。由于注意力机制的复杂度与特征张量的像素数量呈二次关系,这些方法只将注意力学习限制在较小输入尺寸的更高层次上。这意味着对较低级别的特征张量的依赖性学习不足,导致子优化的表示学习。为了克服这个限制,我们提出了一种纯自注意力编码器,名为SEgmentation TRansformers(SETR)。

3.2.分割Transformer

SETR的图像到序列的输入输出结构与自然语言处理(NLP)中的1D序列转换相同。因此,2D图像和1D序列之间存在不匹配。具体来说,如图1(a)所示的Transformer接受一个1D的特征嵌入序列Z,其中L是序列的长度,C是隐藏通道的大小。因此,需要对图像进行序列化,将输入图像x转换为Z。一种直接的图像序列化方法是将图像像素值展平为一个大小为3HW的1D向量。对于一个典型的480(H)×480(W)×3大小的图像,得到的向量长度将为691,200。由于Transformer的二次模型复杂度,无法同时处理这么高维的向量。因此,将每个像素作为Transformer的输入是不可行的。

        考虑到一个典型的用于语义分割的编码器会将一个2D图像x转化为一个特征图xf,尺寸为R16H×W16×C,我们决定将Transformer的输入序列长度L设置为H/16 × W/16 = HW/256。这样,Transformer的输出序列可以简单地重塑为目标特征图xf。为了获得长度为HW/256的输入序列,我们将图像x划分为一个16H×W/16的网格,并将该网格展平为一个序列。通过使用线性投影函数f:p → e∈RC,将每个向量化的patch p映射到一个C维的潜在空间,我们可以为图像x获得一个patch嵌入的1D序列。为了编码patch的空间信息,我们为每个位置i学习一个特定的嵌入pi,将其添加到ei形成最终的输入序列E = (e1+p1, e2+p2, ..., eL+pL)。通过这种方式,尽管Transformer具有无序的自注意力机制,但空间信息仍然保留下来。

        给定1D的嵌入序列E作为输入,采用纯Transformer编码器来学习特征表示。这意味着每个Transformer层都具有全局感受野,一劳永逸地解决了现有FCN编码器的有限感受野问题。Transformer编码器由Le个多头自注意力(MSA)和多层感知机(MLP)块组成[46](图1(a))。在每一层l,自注意力的输入是从输入Zl-1 2 RL×C计算得到的(query,key,value)三元组:

其中,WQ/WK/WV是三个线性投影层的可学习参数,维度为RC×d,d为(query,key,value)的维度。自注意力(SA)的形式化表示为:MSA是一个包含m个独立SA操作的扩展,并将它们的连接输出进行投影:MSA(Zl−1)=[SA1(Zl−1);SA2(Zl−1);···;SAm(Zl−1)]WO,其中WO∈Rmd×C,d通常设置为C=m。MSA的输出接下来通过一个带有残差跳跃连接的MLP块进行转换,作为该层的输出:

 请注意,在MSA和MLP块之前应用了层归一化,为了简单起见,这一步骤被省略了。我们用f(Z1,Z2,...,ZLe)表示Transformer层的特征。

3.3.解码器设计

        为了评估SETR的编码器特征表示Z的有效性,我们引入了三种不同的解码器设计来进行像素级别的分割。由于解码器的目标是在原始的2D图像空间(H×W)中生成分割结果,我们需要将编码器的特征(在解码器中使用)Z从HW/256×C的2D形状重新调整为标准的3D特征图HH/16×W16×C。接下来,我们简要描述一下这三种解码器。

        (1)简单上采样(Naive):这个简单的解码器首先将变换器特征ZLe投影到类别数量的维度上(例如,在Cityscapes数据集上的实验中为19)。为此,我们采用了一个简单的2层网络,其结构为:1×1卷积 + 同步批归一化(带ReLU) + 1×1卷积。然后,我们简单地对输出进行双线性上采样,使其达到完整图像的分辨率,并在之后添加一个像素级别的交叉熵损失的分类层。当使用这个解码器时,我们将我们的模型称为SETR-Naive。

        (2)渐进式上采样(PUP):为了避免一步上采样可能引入的噪声预测,我们考虑了一种渐进式上采样策略,它交替使用卷积层和上采样操作。为了最大程度地减轻对抗效应,我们将上采样限制为2倍。因此,从大小为H/16×H/16×W/16的ZLe达到完整分辨率需要总共4次操作。这个过程的更多细节在图1(b)中给出。当使用这个解码器时,我们将我们的模型称为SETR-PUP。

        (3)多级特征聚合(MLA):第三种设计特点是多级特征聚合(图1(c)),类似于特征金字塔网络[27,33]的思路。然而,我们的解码器在根本上是不同的,因为SETR的每一层的特征表示Zl具有相同的分辨率,而没有金字塔形状。具体而言,我们以f(Zm^g)(m∈[LMe,2LMe,...,M×LMe])作为输入,其中M个层均匀分布在解码器的步长为LMe的层上。然后,部署M个流,每个流专注于一个特定的选择层。在每个流中,我们首先将编码器的特征Zl从HW/256×C的2D形状重新调整为3D特征图HH/16×W16×C。然后,我们应用一个3层(内核大小分别为1×1、3×3和3×3)的网络,其中第一层和第三层的特征通道数量分别减半,并在第三层之后通过双线性操作将空间分辨率上采样4倍。为了增强不同流之间的交互作用,我们在第一层之后引入了一种自顶向下的聚合设计,通过元素级的加法进行。在元素级加法特征之后,还应用了一个额外的3×3卷积。在第三层之后,通过通道级的串联获得来自所有流的融合特征,然后再将其双线性上采样4倍至完整分辨率。当使用这个解码器时,我们将我们的模型称为SETR-MLA。

表1:Transformer主干变体的配置

表2:在不同的预训练策略和主干网络上比较SETR变体。所有实验均在Cityscapes训练集上以批量大小8进行训练,并使用Cityscapes验证集上的单尺度测试协议进行评估,评估指标为平均IoU(%)。"Pre"表示对Transformer部分进行预训练,"R"表示Transformer部分随机初始化。

4.实验

4.1.实验设置

        我们在三个广泛使用的语义分割基准数据集上进行了实验。

Cityscapes [13]是一个在城市场景图像中密集标注了19个对象类别的数据集。它包含了5000张经过精细标注的图像,分为2975张用于训练,500张用于验证,1525张用于测试。这些图像的分辨率都非常高,为2048×1024。此外,它还提供了19,998张粗略标注的图像用于模型训练。

ADE20K [63]是一个具有150种细粒度语义概念的挑战性场景解析基准数据集。它包含20210张图像用于训练,2000张用于验证,3352张用于测试。

PASCAL Context [37]提供了整个场景(包括“物体”和“物质”类别)的像素级语义标签,并包含4998张图像用于训练,5105张用于验证。与之前的工作一样,我们对最常见的59个类别和背景类别(总共60个类别)进行评估。

实现细节:遵循公共代码库mmsegmentation [39]的默认设置(例如数据增强和训练计划),我们在所有实验中采用以下策略:

        (i)在训练过程中,对所有实验应用随机调整大小(比例在0.5和2之间)、随机裁剪(Cityscapes、ADE20K和Pascal Context的尺寸分别为768、512和480)和随机水平翻转;

        (ii)对于ADE20K和Pascal Context的实验,我们将批量大小设置为16,总迭代次数分别为160,000和80,000。对于Cityscapes,我们根据表2、6和7中报告的训练计划,将批量大小设置为8,以进行公平比较。我们采用多项式学习率衰减策略[60],并使用SGD作为优化器。在这三个数据集的所有实验中,动量和权重衰减分别设置为0.9和0。在ADE20K和Pascal Context上,我们将初始学习率设置为0.001,在Cityscapes上设置为0.01。

辅助损失:和[60]类似,我们也发现辅助分割损失有助于模型训练。每个辅助损失头部都遵循一个2层网络。我们在不同的Transformer层上添加了辅助损失:SETR Na¨ıve (Z10;Z15;Z20),SETR-PUP (Z10;Z15;Z20;Z24),SETR-MLA (Z6;Z12;Z18;Z24)。辅助损失头部和主损失头部同时应用。

多尺度测试:我们使用mmsegmentation [39]的默认设置。具体而言,首先将输入图像缩放到统一的尺寸。然后对图像进行多尺度缩放和随机水平翻转,缩放因子为(0.5、0.75、1.0、1.25、1.5、1.75)。测试时采用滑动窗口(例如,Pascal Context为480×480)。如果较短的边小于滑动窗口的大小,则将图像的较短边缩放到滑动窗口的大小(例如,480),同时保持纵横比。解码器和辅助损失头部使用同步BN。为了训练简便起见,我们没有采用常用的技巧,如OHEM [55]损失。

基准模型:我们采用扩张型FCN [36]和语义FPN [27]作为基准模型,并从[39]中获取它们的结果。为了公平比较,我们的模型和基准模型都在相同的设置下进行训练和测试。此外,还与最先进的模型进行了比较。需要注意的是,扩张型FCN的输出步幅为8,由于GPU内存限制,我们在所有模型中使用输出步幅为16。

SETR变体:我们的模型有三个变体,具有不同的解码器设计(见第3.3节),分别是SETR-Na¨ıve、SETR-PUP和SETR-MLA。此外,我们使用了两个编码器的变体,“T-Base”和“T-Large”,分别具有12层和24层(表1)。除非另有说明,我们在SETR-Na¨ıve、SETR-PUP和SETR-MLA中使用“T-Large”作为编码器。我们将在SETR-Na¨ıve中使用“T-Base”的模型称为SETR-Na¨ıve-Base。虽然设计为纯Transformer编码器的模型,但我们还设置了一个混合基线Hybrid,使用基于ResNet-50的FCN编码器,并将其输出特征传递给SETR。为了应对GPU内存限制和公平比较,我们只考虑Hybrid中的“T-Base”,并将FCN的输出步幅设置为1/16。也就是说,Hybrid是ResNet-50和SETR-Na¨ıve-Base的组合。

预训练:我们使用ViT [17]或DeiT [44]提供的预训练权重来初始化我们模型中的所有Transformer层和输入线性投影层。我们将使用DeiT [44]预训练在SETR-Na¨ıve-Base中的模型称为SETR-Na¨ıve-DeiT。所有没有预训练的层都是随机初始化的。对于Hybrid的FCN编码器,我们使用在ImageNet-1k上预训练的初始权重。对于Transformer部分,我们使用ViT [17]、DeiT [44]或随机初始化的权重进行预训练。我们对预训练的位置嵌入进行2D插值,根据它们在原始图像中的位置进行不同输入尺寸的微调。在所有实验中,我们使用16×16的补丁大小。

评估指标:按照标准评估协议[13],报告所有类别平均交并比(mIoU)的度量。对于ADE20K,还根据现有的做法报告像素级准确性。

表3. 在ADE20K验证集和Cityscapes验证集上,使用不同预训练的FCN进行单尺度推断的比较。

 

图2. 在ADE20K上的定性结果:每对中,SETR(右列)与扩张型FCN基准模型(左列)进行比较。最好在彩色和放大的情况下查看。

表4. ADE20K数据集上的最新技术比较。报告了不同模型变种的性能。SS:单尺度推断。MS:多尺度推断。

图3. Pascal Context数据集上的定性结果:每对中,SETR(右列)与扩张型FCN基准模型(左列)进行比较。最好在彩色和放大的情况下查看。

表5. Pascal Context数据集上的最新技术比较。报告了不同模型变种的性能。SS:单尺度推断。MS:多尺度推断。

 

图4. Cityscapes数据集上的定性结果:每对中,SETR(右列)与扩张型FCN基准模型(左列)进行比较。最好在彩色和放大的情况下查看。

表6. Cityscapes验证集上的最新技术比较。报告了不同训练计划(例如40k和80k)的性能。SS:单尺度推断。MS:多尺度推断。

4.2.消融研究

        表2和表3展示了关于SETR不同变体、不同训练计划的割减研究,与FCN [39]和Semantic FPN [39]的比较,不同数据的预训练以及与Hybrid的比较,以及与不同预训练的FCN的比较。除非另有说明,所有在表2和表3中的实验都是在Cityscapes的train fine数据集上以批量大小8进行训练,并使用单尺度测试协议在Cityscapes的validation数据集上进行均值IoU(%)评估。ADE20K数据集上的实验也遵循单尺度测试协议。

        从表2中,我们可以得出以下观察结果: (i) 逐渐上采样特征图的SETR-PUP在Cityscapes数据集上的所有变种中表现最好。SETR-MLA表现稍好于SETR-PUP,远优于一次性将transformer输出特征上采样16倍的SETR-Naive变种,在ADE20K验证集上(见表3和4)。SETR-MLA性能较差的一个可能原因是不同transformer层的特征输出没有像特征金字塔网络(FPN)中那样的分辨率金字塔的优势(见图5)。 (ii) 使用“T-Large”(例如SETR-MLA和SETR-Naive)的变种优于其“T-Base”对应物,即SETR-MLA-Base和SETR-Naive-Base,符合预期。 (iii) 虽然我们的SETR-PUP-Base(76.71)性能不如Hybrid-Base(76.76),但当进行更多迭代训练(80k)时,其性能提升(78.02)。这表明在语义分割中可以替代FCN编码器设计,并进一步确认了我们模型的有效性。 (iv) 预训练对我们的模型至关重要。随机初始化的SETR-PUP在Cityscapes上只能达到42.27%的mIoU。在ImageNet-1K上用DeiT [44]进行预训练的模型在Cityscapes上表现最好,略优于在ImageNet-21K上用ViT [17]进行预训练的模型。 (v) 为了研究预训练的能力并进一步验证我们提出的方法的有效性,在表3中进行了关于预训练策略的割减研究。为了与FCN基准模型进行公平比较,我们首先在Imagenet-21k数据集上对ResNet-101进行分类任务的预训练,然后采用预训练权重在ADE20K或Cityscapes上进行扩张型FCN的语义分割训练。表3显示,在ImageNet-21k预训练的情况下,FCN基准模型相比于在ImageNet-1k上进行预训练的变种有明显的改进。然而,我们的方法在性能上大幅超过了FCN基准模型,验证了我们的方法的优势主要来自于提出的序列到序列建模策略,而不仅仅是更大的预训练数据。

表7. Cityscapes测试集上的比较。z:在细粒度和粗粒度标注数据上进行训练。 (注意:由于没有具体数据,以下是示例表格)

4.3.与当今主流方法的比较

ADE20K数据集上的结果表4展示了我们在更具挑战性的ADE20K数据集上的结果。我们的SETR-MLA在单尺度(SS)推断下实现了优秀的48.64%的mIoU。当采用多尺度推断时,我们的方法取得了新的最优结果,mIoU达到了50.28%。图2展示了我们的模型和扩张型FCN在ADE20K上的定性结果。当在train+validation数据集上使用默认的160,000次迭代训练单个模型时,我们的方法在竞争激烈的ADE20K测试服务器排行榜上排名第一。

Pascal Context数据集上的结果表5比较了在Pascal Context上的分割结果。使用ResNet-101骨干网络的扩张型FCN实现了45.74%的mIoU。在相同的训练计划下,我们提出的SETR明显优于这个基准,达到了54.40%(SETR-PUP)和54.87%(SETR-MLA)的mIoU。当采用多尺度(MS)推断时,SETR-MLA将性能进一步提升到55.83%,明显优于最接近的竞争对手APCNet。图3展示了SETR和扩张型FCN的一些定性结果。图6中对学习到的注意力图的进一步可视化显示,SETR可以关注语义上有意义的前景区域,展示了其学习判别性特征表示以用于分割的能力。

Cityscapes数据集上的结果表6和表7分别展示了在验证集和测试集上的比较结果。我们可以看到,我们的SETR-PUP模型优于FCN基线以及基于注意力的方法,如Non-local和CCNet;其性能与迄今为止报告的最佳结果相当。在这个数据集上,我们现在可以与密切相关的Axial-DeepLab进行比较,Axial-DeepLab旨在使用单独的注意力模型,但仍然遵循FCN的基本结构。需要注意的是,Axial-DeepLab设置了与我们相同的输出步幅16。然而,它的完整输入分辨率(1024×2048)比我们的裁剪尺寸768×768要大得多,并且它运行的迭代次数(60k次,批量大小32)比我们的设置(80k次,批量大小8)要多。尽管如此,当在Cityscapes验证集上采用多尺度推断时,我们的模型仍然优于Axial-DeepLab。仅使用精细数据集时,我们的模型(训练了100k次)在测试集上明显优于Axial-DeepLab-XL。图4展示了我们的模型和扩张型FCN在Cityscapes上的定性结果。

5.概括

        在这项工作中,我们通过引入一种序列到序列预测框架,提出了一种用于语义分割的替代视角。与现有的基于FCN的方法不同,这些方法通常通过在组件级别使用扩张卷积和注意力模块来扩大感受野,我们在架构层面上进行了重大改变,完全摆脱了对FCN的依赖,并优雅地解决了有限感受野的挑战。我们使用可以在特征学习的每个阶段建模全局上下文的Transformer实现了提出的思想。除了一组不同复杂性的解码器设计外,我们还建立了强大的分割模型,而不使用最近方法中的任何花哨的技巧。大量实验证明,我们的模型在ADE20K、Pascal Context上取得了最新的最优结果,并在Cityscapes上取得了竞争性的结果。令人鼓舞的是,我们的方法在ADE20K测试服务器的排行榜上位列第一。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/42541.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Upgrading kubeadm clusters from v1.27.3 to v1.27.4

文章目录 1. Before you begin2. Notes3. Master3.1 Login into the first node and upgrade the kubeadm tool only3.2 Verify the upgrade plan3.3 Drain the control plane node3.4 kubeadm upgrade3.5 Uncordon the control plane node3.6 Upgrade kubelet and kubectl3.7 …

自然语言处理: 第五章Attention注意力机制

自然语言处理: 第五章Attention注意力机制 理论基础 Attention(来自2017年google发表的[1706.03762] Attention Is All You Need (arxiv.org) ),顾名思义是注意力机制,字面意思就是你所关注的东西,比如我们看到一个非…

【计算机组成原理】24王道考研笔记——第二章 数据的表示和运算

第二章 数据的表示和运算 一、数值与编码 1.1 进制转换 任意进制->十进制&#xff1a; 二进制<->八进制、十六进制&#xff1a; 各种进制的常见书写方式&#xff1a; 十进制->任意进制&#xff1a;&#xff08;用拼凑法最快&#xff09; 真值&#xff1a;符合人…

嵌入式软件和硬件的安全性:保护连接世界的数字盾牌

引言&#xff1a; 随着嵌入式系统的广泛应用和物联网的快速发展&#xff0c;嵌入式软件和硬件的安全性问题越来越引起人们的关注。安全性是确保嵌入式系统能够抵御恶意攻击和数据泄露的关键。本文将深入探讨嵌入式软件和硬件的安全性问题&#xff0c;包括技术原理、应用场景、学…

Edge 中比较独特的调试技巧

背景 大家日常开发基本都会使用 Chrome&#xff0c;毕竟确实好用。但是基于 Chromium 的新版 Microsoft Edge 已于 2020 年 1 月 15 日发布。 Edge 目前的使用基本跟 Chrome 差不多了&#xff0c;但显然&#xff0c;Edge 团队不仅仅想当 Chrome 的备用。他们也提供了一些特有…

【C++】-模板进阶(让你更好的使用模板创建无限可能)

&#x1f496;作者&#xff1a;小树苗渴望变成参天大树&#x1f388; &#x1f389;作者宣言&#xff1a;认真写好每一篇博客&#x1f4a4; &#x1f38a;作者gitee:gitee✨ &#x1f49e;作者专栏&#xff1a;C语言,数据结构初阶,Linux,C 动态规划算法&#x1f384; 如 果 你 …

MySQL 8.0 OCP (1Z0-908) 考点精析-性能优化考点6:MySQL Enterprise Monitor之Query Analyzer

文章目录 MySQL 8.0 OCP (1Z0-908) 考点精析-性能优化考点6&#xff1a;MySQL Enterprise Monitor之Query AnalyzerMySQL Enterprise Monitor之Query AnalyzerQuery Response Time index (QRTi)例题例题1: Query Analyzer答案与解析1 参考 【免责声明】文章仅供学习交流&#x…

【本地电脑搭建Web服务器并用cpolar发布至公网

本地电脑搭建Web服务器并用cpolar发布至公网访问 随着互联网的快速发展&#xff0c;网络也成为我们生活中不可缺少的必要条件&#xff0c;为了能在互联网世界中有自己的一片天地&#xff0c;建立一个属于自己的网页就成为很多人的选择。但互联网行业作为资本密集的行业&#x…

一)Stable Diffusion使用教程:安装

目前AI绘画最火的当属Midjorney和Stable Diffusion&#xff0c;但是由于Midjourney没有开源&#xff0c;因此我们主要分享下Stable Diffusion&#xff0c;后面有望补上Midjourney教程。 本节主要讲解Stable Diffusion&#xff08;以下简述SD&#xff09;的下载和安装。 1&…

呼吸灯——FPGA

文章目录 前言一、呼吸灯是什么&#xff1f;1、介绍2、占空比调节示意图 二、系统设计1、系统框图2、RTL视图 三、源码四、效果五、总结六、参考资料 前言 环境&#xff1a; 1、Quartus18.0 2、vscode 3、板子型号&#xff1a;EP4CE6F17C8 要求&#xff1a; 将四个LED灯实现循环…

Redis源码篇 - Ziplist数据结构

Ziplist是一种内存优化的list存储结构&#xff0c;通过使用连续的内存空间存储&#xff0c;来减少内存碎片化&#xff0c;同时和链表的不同还有&#xff0c;它不存储前后指针&#xff0c;而是通过变长的字节存储前节点元素长度&#xff0c;通过计算长度来实现节点的查找。它是一…

Google 登录支付,Firebase 相关设置

登录sdk: https://developers.google.com/identity/sign-in/android/start?hlzh-cn 支付sdk: https://developers.google.com/pay/api/android/overview?hlzh-cn Firebase sdk: https://firebase.google.com/docs/android/setup?hlzh-cn 登录设置&#xff1a; 创建凭据&…

机器学习-线性代数-5-空间中的向量投影与最小二乘法

空间中的向量投影与最小二乘法 文章目录 空间中的向量投影与最小二乘法一、引入二、投影和投影的描述1、投影描述最近2、利用矩阵描述投影(1)向一维直线投影(2)向二维平面投影(3)向n维子空间投影的一般情况 三、最小二乘法1、重要的子空间(1)互补的子空间(2)正交的子空间(3)相互…

12.面板问题

面板问题 html部分 <h1>Lorem ipsum dolor sit, amet consectetur adipisicing.</h1><div class"container"><div class"faq"><div class"title-box"><h3 class"title">Lorem, ipsum dolor.<…

(转载)神经网络遗传算法函数极值寻优(matlab实现)

本博客的完整代码获取&#xff1a; https://www.mathworks.com/academia/books/book106283.html 1案例背景 对于未知的非线性函数,仅通过函数的输入输出数据难以准确寻找函数极值。这类问题可以通过神经网络结合遗传算法求解,利用神经网络的非线性拟合能力和遗传算法的非线性…

make/makefile的使用

make/makefile 文章目录 make/makefile初步认识makefile的工作流程依赖关系和依赖方法make的使用 总结 make是一个命令&#xff0c;是一个解释makefile中指令的命令工具&#xff0c;makefile是一个文件&#xff0c;当前目录下的文件&#xff0c;两者搭配使用&#xff0c;完成项…

数据预处理matlab

matlab数据的获取、预处理、统计、可视化、降维 数据的预处理 - MATLAB & Simulink - MathWorks 中国https://ww2.mathworks.cn/help/matlab/preprocessing-data.html 一、数据的获取 1.1 从Excel中获取 使用readtable() 例1&#xff1a; 使用spreadsheetImportOption…

【AutoSAR 架构介绍】

AutoSAR简介 AUTOSAR是Automotive Open System Architecture&#xff08;汽车开放系统架构&#xff09;的首字母缩写&#xff0c;是一家致力于制定汽车电子软件标准的联盟。 AUTOSAR是由全球汽车制造商、部件供应商及其他电子、半导体和软件系统公司联合建立&#xff0c;各成…

npm link 实现全局运行package.json中的指令

packages.json "name":"testcli","bin": {"itRun": "index.js"},执行命令 npm link如果要解绑定 npm unlink testcli 现在你可以输入 itRun试一下

MySQL高阶语句之二

目录 一、子查询 1.1语法 1.2select 1.3insert 1.3update 1.4delete 1.5 exists 1.6别名as 二、MySQL视图 2.1功能 2.2区别 2.3联系 2.4 创建视图(单表) 2.5 创建视图(多表) 2.6修改原表数据 2.7修改视图数据 三、NULL值 四、连接查询 4.1内连接 4.1.1语法 4.1.…