PANet:基于原型对齐的Few Shot图像语义分割(ICCV19)

论文地址
开源代码

摘要

本文从度量学习的角度来解决Few Shot Segmentation问题,提出一种新的原型对齐网络来更好地利用支持集信息。PANet从嵌入空间内的一些支持图像中学习特定类的原型表示,然后通过将每个像素与学习到的原型进行匹配,对查询图像进行分割。 通过非参数度量学习,PANet提供了代表每个语义类的高质量原型,这些原型同时还存在对不同类的判别信息。此外,PANet还引入了一种支持和查询之间的原型对齐正则化。在此基础上,PANet充分利用了来自支持的知识,在少镜头分割中提供了更好的泛化。

目前存在的问题和方案

现有的少镜头分割方法通常从少量的支持图像中学习,然后将学习到的知识输入到参数化模块中进行查询分割。然而,这类方案存在两个缺点,推广效果不理想。首先,它们没有区分知识提取和分割过程,这可能会有问题,因为分割模型的表示与支持集的语义特征混合。因此,我们建议将这部分分为原型提取和非参数度量学习两部分。原型被优化为每个语义类的紧凑和鲁棒表示,非参数度量学习通过嵌入空间中的像素级匹配进行分割。此外,我们不像以前的方法一样使只使用支持图像的标注做masking,我们将这些标注加入了小样本学习的监督过程。

为此,我们引入了一种新的原型对齐正则化方法,这是一种反向分割方法。即将查询图像及其预测掩码作为一种新的支持集,用于对之前的支持图像进行分割。通过这种方式,鼓励模型在支持和查询之间生成更一致的原型,从而提供更好的泛化性能


PANet首先通过共享的特征提取器将不同的前景对象和背景嵌入到不同的原型中。这样,每一个学习到的原型都是对应类的代表,同时也有足够区别于其它类。然后,将查询图像中的每个像素标记为这个像素的嵌入表示离它最近的类特定原型。

所提出的PANet结构设计有几个优点。首先,它不引入额外的可学习参数,因此不容易过度拟合。其次,在PANet中,原型嵌入和预测在计算的特征图上执行,因此分割不需要额外通过网络。此外,由于正则化仅用于训练,因此不会增加推理的计算成本。

方法

现有的少镜头分割方法将提取的支持特征与查询特征融合,以参数化的方式生成分割结果,我们提出的模型旨在在嵌入空间中学习并对齐每个语义类的紧凑和健壮的原型表示,然后通过非参数度量学习在嵌入空间内进行分割。

原型学习(Prototype learning)

我们的模型基于度量网络,能够有效地学习每个语义类易于分离的原型表示。PANet不是对整个输入图像进行平均,而是利用支持图像上的掩码注释来分别学习前景和背景原型。有两种方法来利用分割掩码,前期融合和后期融合,本文采取的是后期融合,也就是将mask盖在特征图上以产生前景和背景特征(而不是在输入特征提取器前进行融合),这样做有利于保持共享特征提取器的输入一致性。

具体来说,给定一个支持集 S i = { ( I c , k , M c , k ) } S_i=\left\{ \left( I_{c,k},M_{c,k} \right) \right\} Si​={(Ic,k​,Mc,k​)}, F c , k F_{c,k} Fc,k​表示图像 I c , k I_{c,k} Ic,k​经过特征提取后得到的特征图。 c c c表示类别, k k k则表示支持图像序号。类 c c c的原型通过掩码平均池化得到:

背景类的原型则可表示为:

( x , y ) (x,y) (x,y)表示位置, 1 \mathbb{1} 1表示框内式子为真则值为1,假为0

非参数度量学习(Non-parametric metric learning)

我们采用非参数度量学习方法来学习最优的原型并进行相应的分割。由于分割可以看作是在每个空间位置的分类,我们计算查询图像在每个空间位置上的特征向量与支持图像原型之间的距离。然后在距离上使用softmax得到语义类(包括背景)的概率映射 M q ^ \hat{M_q} Mq​^​

具体来说,给定一个距离函数 d d d,让 P = { p c ∣ c ∈ C i } ∪ { p b g } \mathcal{P}=\left\{ p_c|c\in \mathcal{C}_i \right\} \cup \left\{ p_{bg} \right\} P={pc​∣c∈Ci​}∪{pbg​}, F q F_q Fq​查询图像特征映射。对于每个 p j ∈ P p_j\in\mathcal{P} pj​∈P,我们有:

然后给出了预测的分割掩码:

距离函数 d d d一般采用余弦距离或平方欧几里得距离,根据经验,我们发现使用余弦距离更稳定,性能更好,可能是因为它是有界的,因此更容易优化。

分割损失的表达如下:

M q M_q Mq​表示查询图像的ground-truth分割掩码,N表示所有空间位置数量,对上述损失进行优化将为每个类派生出合适的原型。

原型对齐正则化(Prototype alignment regularization)

直觉上来说,如果模型能够使用从支持集中提取的原型来预测出一个好的查询分割掩码,那么这个预测出的查询图像分割掩码应该能够很好地分割支持图像。因此PAR鼓励最终的分割模型反向进行few-shot learning,即以查询和预测的掩码作为新的支持样本来学习分割原始支持图像(也就是这里的查询图像和预测得到的查询图像掩码作为新的支持图像–掩码对)。这将在支持原型和查询图像之间形成对齐,并从支持集中学习到更丰富的知识。

使用查询图像和其掩码预测支持图像掩码的损失函数如下:

在没有PAR的情况下,信息只能单向地从支持集流向查询集。通过将信息流回支持集,我们迫使模型学习一个一致的内嵌空间,以对齐查询和支持原型。

那么PANet的总损失可以表示为:

实验结果




结论

提出了一种新的基于度量学习的多镜头网络分割算法。PANet能够从支持集中提取鲁棒原型,并使用非参数距离计算进行分割。在此基础上,我们的模型可以进一步利用支持信息来辅助训练。在没有任何解码器结构或后处理步骤的情况下,我们的PANet大大优于之前的工作。

[小样本图像分割]PANet: Few-Shot Image Semantic Segmentation with Prototype Alignment相关推荐

  1. 【Few-Shot Segmentation论文阅读笔记】PANet: Few-Shot Image Semantic Segmentation with Prototype , ICCV, 2019

    Abstract Target Question: Few-shot Segmentation 本文主要工作: 基于metric-learning的思想,本文提出了PANet(Prototype Al ...

  2. 深度图像分割 -- Fully Convolutional Networks for Semantic Segmentation

    CVPR2015 PAMI 2016 Fully Convolutional Networks for Semantic Segmentation Code: https://github.com/s ...

  3. [小样本图像分割]SG-One: Similarity Guidance Network for One-Shot Semantic Segmentation

    论文地址:SG-One: Similarity Guidance Network for One-Shot Semantic Segmentation Code地址:SG-One Abstract 小 ...

  4. 【图像分割论文阅读】The One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic Segmentation

    本文出自加拿大蒙特利尔学习算法研究院.蒙特尔理工学院.蒙特利尔伊玛吉亚公司.巴塞罗那计算机视觉中心联合出品.注意到Bengio也在其中.文章最终发表于CVPR2017.[Tiramisu译作提拉米苏] ...

  5. Semantic Segmentation: A thorough Review

    语义分割可以划分到目标检测领域,不同的是,一般意义上目标检测只需要输出被检测物体的bounding box,而语义分割则需要输出一个mask,所以要求更高了. 从技术上说,语义分割归根结底就是对con ...

  6. Deep Projective 3D Semantic Segmentation

    Deep Projective 3D Semantic Segmentation 原文:https://arxiv.org/abs/1705.03428 深度投影3D语义分割 摘要 三维点云的语义分割 ...

  7. 论文阅读:SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers

    论文地址:https://arxiv.org/abs/2105.15203 发表年份:2021 我们提出了SegFormer,一个简单,高效但强大的语义分割框架,它将Transformers与轻量级多 ...

  8. 【ICNet】ICNet for Real-Time Semantic Segmentation on High-Resolution Images

    基本情况 2017年4月份的文章,所属领域是Semantic Segmentation. Abstract 本文主要是针对realtime semantic segmentation问题.本文提出的方 ...

  9. 语义分割--Mix-and-Match Tuning for Self-Supervised Semantic Segmentation

    Mix-and-Match Tuning for Self-Supervised Semantic Segmentation AAAI Conference on Artificial Intelli ...

最新文章

  1. 8086实时时钟实验(二)——《x86汇编语言:从实模式到保护模式》读书笔记06
  2. oraclek导出表_全兼容Oracle?扒一扒浪潮K-DB是咋做的?
  3. 一文详解pytorch的“动态图”与“自动微分”技术
  4. php 魔术方法 多继承,PHP通过魔术方法实现多继承与重载
  5. 前端开发中的调试技巧
  6. 2月第三周各国家.NET域名排名Top10:中国第三
  7. 电商后台、手机端、小程序、H5、电商原型、需求池、产品结构图、接口流程、高保真交互、PRD、布局说明、数据统计、店铺管理、商品管理、财务管理、售后、订单、会员、客服、标签、Axure原型、产品原型
  8. 程序性能分析php,php代码的性能分析
  9. 用python制作贺卡_Python:通过邮箱发送贺卡或明信片
  10. python趣味编程100例-达人迷 Python趣味编程10例
  11. Redis 6.0 源码阅读笔记(12) -- Redis 集群建立流程
  12. You don’t have permission to access / on this server
  13. 软件设计原则之单一职责原则
  14. CS188-Project 4
  15. 2022年山东省安全员B证考试练习题及在线模拟考试
  16. 【概率论与数理统计 Probability and Statistics 3】—— (important)全概率公式和贝叶斯公式
  17. 计算机网络(第7版) - 第七章 网络安全 - 习题
  18. Tensorflow版本更新命令
  19. 考研英语 - word-list-41
  20. mysql消息已读未读_Redis实现信息已读未读状态提示

热门文章

  1. mysql练习(1)
  2. 微信小程序扫码 ( wx.scanCode)的使用方法
  3. 5. 统计学基础2:协方差、相关系数、协方差矩阵
  4. EduCoder_web实训作业--JavaScript学习手册四:JS对象
  5. 智能电话机器人介绍(AI语音机器人)
  6. ip地址位置提供商查询 cip.cc/ip
  7. Python特征分析- 相关性分析
  8. 程序员如何轻松又愉快的学好英语
  9. SMTP与ESMTP区别
  10. java移位运算符详解