SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers
摘要:
我们介绍的 SegFormer 是一个简单、高效但功能强大的语义分割框架,它将 Transformers 与轻量级多层感知器 (MLP) 解码器结合在一起。SegFormer 有两个吸引人的特点:
1) SegFormer包含一个可以输出多尺度信息的transformer编码器(没有使用position embedding,避免了position插值);当测试分辨率与训练分辨率不同时,插值会导致性能下降。
2) SegFormer 避免了复杂的解码器。所提出的 MLP 解码器汇聚了来自不同层的信息,从而将局部注意力和全局注意力结合起来,呈现出强大的表征。
我们的研究表明,这种简单轻便的设计是在 Transformers 上实现高效分割的关键。我们通过扩展我们的方法,获得了从 SegFormer-B0 到 SegFormer-B5 的一系列模型,其性能和效率明显优于之前的同类产品。例如,SegFormer-B4 在 64M 参数的 ADE20K 上实现了 50.3% 的 mIoU,比之前的最佳方法小 5 倍,好 2.2%。我们的最佳模型 SegFormer-B5 在 Cityscapes 验证集上实现了 84.0% 的 mIoU,并在 Cityscapes-C 上显示了出色的零点稳健性。
1 引言
语义分割是计算机视觉中的一项基本任务,可用于许多下游应用。它与图像分类相关,因为它产生的是每个像素的类别预测,而不是图像级预测。在一项开创性工作[1]中,作者指出并系统地研究了这种关系,并将全卷积网络(FCN)用于语义分割任务。此后,FCN 激发了许多后续工作,并成为密集预测的主要设计选择。
“Since there is a strong relation between classification and semantic segmentation, many stateof-the-art semantic segmentation frameworks are variants of popular architectures for image classification on ImageNet.”
在计算机视觉领域,图像分类和语义分割任务之间有着密切的关系。许多最先进的语义分割框架都是基于在ImageNet上进行图像分类的流行架构的变体。
这样做的原因在于图像分类和语义分割任务都需要从图像中提取有意义的特征以进行预测。卷积神经网络(CNN)在从图像中捕获分层特征方面非常有效,因此适用于各种计算机视觉任务。
在语义分割任务中,关键挑战是为图像中的每个像素分配一个类别标签,表示该像素所属的对象或区域的类别。为了解决这个问题,语义分割框架修改现有的图像分类架构,以处理像素级别的密集预测。
例如,全卷积网络(FCN)是一种用于语义分割的流行架构。FCN基于用于图像分类的VGG16架构,但将VGG16的全连接层替换为1x1卷积层,以实现对每个像素的密集预测。
类似地,其他流行的架构,如U-Net、DeepLab和SegNet,都是基于知名的图像分类架构,并经过修改以适应语义分割任务的需求。
这种将图像分类架构的知识转移和调整应用于语义分割,已经成功地实现了计算机视觉领域的最先进结果。通过利用ImageNet上预训练的权重,这些分割框架可以从图像中学习有意义的特征,并且即使在语义分割的有限标注数据情况下,也能很好地泛化到新的数据集。
“Therefore, designing backbone architectures has remained an active area in semantic segmentation. Indeed, starting from early methods using VGGs [1, 2], to the latest methods with significantly deeper and more powerful backbones [3], the evolution of backbones has dramatically pushed the performance boundary of semantic segmentation.” (Xie 等, 2021, p. 2)
因此,设计骨干网络架构一直是语义分割领域中的一个活跃领域。事实上,从最早使用VGG网络[1, 2]的方法,到现在使用更深、更强大的骨干网络[3]的最新方法,骨干网络的演进极大地推动了语义分割性能的界限。 在语义分割任务中,骨干网络负责从图像中提取高级特征,这些特征在后续的分割任务中发挥着关键作用。通过设计更强大的骨干网络,可以获得更丰富的图像特征,并且在语义分割任务中取得更好的性能。 随着计算机视觉领域的不断发展,研究人员提出了许多不同的骨干网络架构,如ResNet、ResNeXt、Dilated ResNet、HRNet等。这些骨干网络在图像分类任务中已经得到验证,并且可以通过迁移学习应用于语义分割任务。 使用更深、更复杂的骨干网络,可以提高模型的表示能力和感受野,使其能够更好地捕捉图像中的语义信息。这些进展使得语义分割方法在处理复杂场景和具有细粒度结构的图像时取得了显著的性能提升。因此,骨干网络的演进对于推动语义分割技术的发展具有重要意义。
“Besides backbone architectures, another line of work formulates semantic segmentation as a structured prediction problem, and focuses on designing modules and operators, which can effectively capture contextual information. A representative example in this area is dilated convolution [4, 5], which increases the receptive field by “inflating” the kernel with holes.” (Xie 等, 2021, p. 2)
除了骨干网络架构,另一种方法将语义分割看作是一种结构化预测问题,并专注于设计模块和运算符,以有效地捕捉上下文信息。在这个领域中,一个代表性的例子是空洞卷积(dilated convolution)[4, 5],通过在卷积核中添加“空洞”来增加感受野。 在语义分割任务中,上下文信息对于准确地区分不同的语义类别非常重要。然而,标准的卷积操作在捕捉全局上下文信息时存在一定的限制,特别是对于大尺寸的感受野。为了解决这个问题,空洞卷积被引入。 空洞卷积通过在卷积核中引入空洞或者称为膨胀率(dilation rate),使得卷积核的有效感受野变大。这种方式可以在保持参数量不变的情况下,增加卷积核对远处像素的感知范围,从而捕捉更广阔的上下文信息。 通过使用空洞卷积,语义分割模型能够更好地理解图像中的全局结构和语义信息,从而提高分割结果的准确性。空洞卷积已经成为许多最先进的语义分割方法中的重要组件,为解决复杂场景下的分割问题提供了有效的解决方案。同时,还有其他一些设计模块和操作符的方法,用于捕捉上下文信息,进一步推动了语义分割技术的发展。
在语义分割中,低级特征和高级特征是指在神经网络中不同层次的特征表示。 1. 低级特征(Low-level features): 低级特征是指在神经网络较早的层次中提取的特征表示。这些特征通常包含局部的、细节性的信息,比如边缘、纹理和颜色等低级信息。在卷积神经网络(CNN)中,低级特征通常由浅层的卷积层提取,因为这些层主要负责对输入图像的局部信息进行特征提取。低级特征的感受野较小,只能感知图像的局部信息,而不具备全局的上下文理解能力。因此,低级特征更适合用于处理图像的细节信息。 2. 高级特征(High-level features): 高级特征是指在神经网络较深的层次中提取的特征表示。这些特征通常包含更加抽象和语义化的信息,比如物体的形状、类别和位置等高级语义信息。在卷积神经网络中,高级特征通常由深层的卷积层或全连接层提取,因为这些层具有更大的感受野和更强的表达能力,能够理解图像的全局结构和语义信息。高级特征适合用于对图像中的整体语义信息进行建模和分析。 在语义分割任务中,通常会采用多尺度的特征融合策略,将低级特征和高级特征进行合并,以获得更加全面和丰富的特征表示。低级特征可以帮助提取图像的细节信息,而高级特征可以帮助理解图像的整体语义结构,从而在分割过程中获得更准确的结果。因此,在设计语义分割模型时,合理地利用低级特征和高级特征是非常重要的。
在语义分割和计算机视觉领域中,"上下文"(Context)是指图像中像素或区域的周围环境和背景信息。具体来说,上下文是指与特定像素或区域相关的邻近像素的信息,包括它们的值、位置和语义等。在图像中,每个像素的含义和类别通常受到其周围像素的影响,因为图像中的像素往往在语义上具有一定的连续性和相关性。 上下文信息在语义分割中具有重要作用,特别是对于像素级别的分类任务。通过考虑像素的上下文信息,可以更好地理解图像的语义结构,提高对像素的正确分类和分割准确性。例如,在一个物体的边界区域,单独考虑一个像素的信息可能无法确定其属于哪个类别,但通过分析周围像素的上下文信息,可以更准确地判断其所属类别。 为了有效利用上下文信息,常用的方法包括使用卷积神经网络(CNN)的较大感受野、使用空洞卷积(Dilated Convolution)来扩展感受野,以及采用多尺度或金字塔结构来融合不同尺度的上下文信息。这些方法能够帮助模型更好地理解图像的语义信息,从而提高语义分割任务的性能。
Witnessing the great success in natural language processing

本文介绍了SegFormer,一个用于语义分割的Transformer框架。它结合Transformer编码器与轻量级MLP解码器,避免复杂设计与高计算开销。编码器可输出多尺度信息,解码器汇聚不同层信息。实验表明,SegFormer系列模型性能和效率优于同类产品。
最低0.47元/天 解锁文章
2007





