Per-Pixel Classification is Not All You Need for Semantic Segmentation
论文地址:https://arxiv.org/abs/2107.06278
代码地址:https://github.com/facebookresearch/MaskFormer
任务背景
mask prediction通过一系列二值mask来对像素进行预测分类,不仅可以解决实例分割任务还可以解决语义分割任务,实现了语义分割和实例分割任务的统一。因此本文尝试提出一种统一的框架来同时解决语义分割和实例分割任务。
方法介绍
提出了一个maskformer框架,将语义分割任务划分成proposal segmentation和proposal classification子任务,通过一个backbone生成高维特征向量,接上两个分支,一个分支就是常见的分割decoder,得到输入图像的每个像素的特征表示。另一个分支接上一个transformer decoder,根据输入的N个query得到得到N个mask的特征表示,利用gt的类别进行监督生成N个mask的类别表示,实现proposal classification子任务,通过N个mask的特征表示和第一个分支生成的逐像素特征表示进行内积得到逐像素的mask表示,实现proposal segmentation子任务。通过这两个子任务得到的结果进行内积得到逐像素的分类,实现语义分割任务。由于同一种类别可能存在在不同的proposal中,所以可以转化为实例分割任务。
实验结果
实验数据集包括ADE20K和COCO,在两个数据集上都达到了SOTA(55.6 mIoU on ADE20K,52.7 PQ on COCO)。
PerPixelBaseline使用了MaskFormer的逐像素分类部分,直接输出逐像素的score。
PerPixelBaseline+在PerPixelBaseline基础上加上了transformer模块和mask embedding的MLP模块。
MaskFormer和PerPixelBaseline+的区别就是一个是采用逐像素分类的方式,另一个是采用mask classification分类的方式。
- Post title:paper-reading02
- Post author:calcium_oxide
- Create time:2022-11-26 15:55:50
- Post link:https://yhg1010.github.io/2022/11/26/paper-reading02/
- Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.