Segmenter Transformer for Semantic Segmentation

Segmenter: Transformer for Semantic Segmentation

2021 ICCV

Robin Strudel, Ricardo Garcia, Ivan Laptev, Cordelia Schmid

Segmenter Transformer for Semantic Segmentation_第1张图片

Abstract

​ 图像分割往往在单个图像块的层次上是模糊的,需要上下文信息才能达到与标记的一致性。本文介绍了一种语义分割transformer模型Segmenter。与基于卷积的方法不同,我们的方法允许对已经在第一层和整个网络中的全局上下文进行建模。我们建立在最近的Vision Transformer(ViT)的基础上,并将其扩展到语义分割。为此,我们依赖于与图像块对应的输出嵌入,并使用逐点线性解码器或掩码transformer解码器从这些嵌入中获得类别标签。我们利用为图像分类预先训练的模型,并表明我们可以在可用于语义分割的中等大小的数据集上对它们进行微调。线性解码器可以获得很好的解码效果,但通过mask transformer产生类掩码可以进一步提高性能。我们进行了广泛的消融研究,以显示不同参数的影响,特别是对于较大的模型和较小的图块尺寸的性能更好。Segmenter取得了很好的语义分割效果。它在ADE20K和Pascal上下文数据集上的性能都优于最先进的模型,以及在Cityscapes数据集上具有竞争力。

Method

Segmenter完全基于transformer的编解码器体系结构,将编码(embedding)嵌入序列映射到像素级类注释中。

Segmenter Transformer for Semantic Segmentation_第2张图片

使用纯transformer体系结构并利用patch级别的embedding,我们提出了一种在decoder阶段联合处理patch和class embedding的简单方法。

指先添加patch embedding 跑一次transformer,再添加class embedding 跑一次transformer;

从后面的实验中看到,作者还实验了ViT或DeiT作为backbone时的性能表现,发现 class embedding的方式是有增益的。

Conclusion

​ 本文介绍了一种纯transformer的语义分割方法。编码部分基于Vision Transformer(ViT)建立,但是不同之处在于我们是依赖于所有图像块的编码。我们观察到transformer很好地捕捉到了全局上下文。将一种简单的逐点线性decoder应用于patch embedding,已经取得了很好的效果。使用mask transformer进行解码则更进一步提高了性能。我们相信,我们的端到端编解码器是迈向统一的语义分割、实例分割和全景分割的第一步。

你可能感兴趣的:(transformer,深度学习,计算机视觉)