本文经AI新媒体量子位授权转载,转载请联系出处。
正如大家所知,在进行图像语义分割时,图像被编码成一系列补丁后往往很模糊,需要借助上下文信息才能被正确分割。
因此上下文建模对图像语义分割的性能至关重要!
而与以往基于卷积网络的方法不同,来自法国的一个研究团队另辟蹊径,提出了一种只使用TRansfoRMeR的语义分割方法。
该方法可以很好地捕捉图像全局上下文信息!
要知道,就连取得了骄人成绩的FCN都有问题。
而这次这个方法在具有挑战性的ADE20K数据集上,性能都超过了最先进的卷积方法!
不得不说,TRansfoRMeR跨界计算机视觉领域真是越来越频繁了、效果也越来越成功了!
那这次表现优异的TRansfoRMeR语义分割,用了什么不一样的“配方&Rdquo;吗?
使用Vision TRansfoRMeR
VIT有多“秀&Rdquo;呢?
VIT采用纯TRansfoRMeR架构,将图像分成多个patches进行输入,在很多图像分类任务中表现都不输最先进的卷积网络。
缺点就是在训练数据集较小时,性能不是很好。
SegMenteR作为一个纯TRansfoRMeR的编码-解码架构,利用了模型每一层的全局图像上下文。
基于最新的VIT研究成果,将图像分割成块,并将它们映射为一个线性嵌入序列,用编码器进行编码。再由Mask TRansfoRMeR将编码器和类嵌入的输出进行解码,上采样后应用ARgMax给每个像素一一分好类,输出最终的像素分割图。
下面是该模型的架构示意图:
解码阶段采用了联合处理图像块和类嵌入的简单方法,解码器Mask TRansfoRMeR可以通过用对象嵌入代替类嵌入来直接进行全景分割。
效果如何
多说无益,看看实际效果如何?
首先他们在ADE20K数据集上比较不同TRansfoRMeR变体,研究不同参数,全方面比较SegMenteR与基于卷积的语义分割方法。
其中ADE20K数据集,包含具有挑战性的细粒度标签场景,是最具挑战性的语义分割数据集之一。
下表是不同正则化方案的比较结果:
他们发现随机深度方案可独立提高性能,而dRopout无论是单独还是与随机深度相结合,都会损耗性能。
不同图像块大小和不同tRansfoRMeR的性能比较发现:
增加图像块的大小会导致图像的表示更粗糙,但会产生处理速度更快的小序列。
减少图像块大小是一个强大的改进方式,不用引入任何参数!但需要在较长的序列上计算Attention,会增加计算时间和内存占用。
SegMenteR在使用大型tRansfoRMeR模型或小规模图像块的情况下更优:
下图也显示了SegMenteR的明显优势,其中Seg/16模型在性能与准确性方面表现最好。
最后,我们再来看看SegMenteR与SOTA的比较:
在最具挑战性的ADE20K数据集上,SegMenteR两项指标均高于所有SOTA模型!
在CITYscapes数据集上与大多数SOTA不相上下,只比性能最好的Panoptic-Deeplab低0.8。
在Pascal context数据集上的表现也是如此。
剩余参数比较,大家有兴趣的可按需查看论文细节。
论文地址: