0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

SegRefiner:通过扩散模型实现高精度图像分割

CVer 来源:CVer 2023-12-28 11:24 次阅读

背景介绍

尽管图像分割在过去得到了广泛研究和快速发展,但获得细节上非常准确的分割 mask 始终十分具有挑战性。因为达成高精度的分割既需要高级语义信息,也需要细粒度的纹理信息,这将导致较大的计算复杂性和内存使用。而对于分辨率达到2K甚至更高的图像,这一挑战尤为突出。

由于直接预测高质量分割 mask 具有挑战性,因此一些研究开始集中于 refine 已有分割模型输出的粗糙 mask。为了实现高精度的图像分割,来自北京交大、南洋理工、字节跳动等的研究者们引入了一种基于扩散模型Diffusion去逐步提高mask质量的方法。

现有方法

Model-Specific

一类常见的 Refinement 方法是 Model-Specific 的,其通过在已有分割模型中引入一些新模块,从而为预测 Mask 补充了更多额外信息,从而增强了已有模型对于细节的感知能力。这一类方法中代表性的工作有 PointRend,RefineMask,MaskTransfiner等。然而,这些方法是基于特定模型的改进,因此不能直接用于 refine 其他分割模型输出的粗糙 mask。

Model-Agnostic

另一类 Refinement 方法是 Model-Agnostic 的,其只使用原始图像和粗糙mask作为输入信息,如 BPR,SegFix,CascadePSP,CRM 等。由于这类方法在 Refinement 过程中未使用已有模型的中间特征,因此不依赖于特定分割模型,可以用于不同分割模型的 Refinement。然而,尽管这类方法能够有效地提升分割准确度,但由于粗糙 mask 中存在多种多样的错误预测(如下图所示),导致模型无法稳定地修正粗糙 mask 中的全部预测错误。

5d17f98c-a3ad-11ee-8b88-92fbcf53809c.png

实现目标

相比于 Model-Specific 的方法,Model-Agnostic 的方法能够直接应用于不同分割模型的 Refinement,从而有着更高的实用价值。更进一步地,由于不同分割任务(语义分割,实例分割等)的结果都可以被表示为一系列 binary mask,具有相同的表征形式,在同一个模型中统一实现不同分割任务的 Refinement 同样是可能的。因此,我们希望实现能够应用于不同分割模型和分割任务的通用 Refinement 模型。

如前所述,已有分割模型产生的错误预测是多种多样的,而想要通过一个通用模型一次性地更正这些多样性的错误十分困难。面对这一问题,在图像生成任务中取得巨大成功的扩散概率模型给予了我们启发:扩散概率模型的迭代策略使得模型可以在每一个时间步中仅仅消除一部分噪声,并通过多步迭代来不断接近真实图像的分布。这大大降低了一次性拟合出目标数据分布的难度,从而赋予了扩散模型生成高质量图像的能力。

直观地,如果将扩散概率模型的策略迁移到 Refinement 任务中,可以使得模型在进行 Refinement 时每一步仅关注一些“最明显的错误”,这将降低一次性修正所有错误预测的难度,并可以通过不断迭代来逐渐接近精细分割结果,从而使得模型能够应对更具挑战性的实例并持续纠正错误,产生精确分割结果。

在这一想法下,我们提出了一个新的视角:将粗糙 mask 视作 ground truth 的带噪版本,并通过一个去噪扩散过程来实现粗糙 mask 的 Refinement,从而将 Refinement 任务表示为一个以图像为条件,目标为精细 mask 的数据生成过程。

算法方案

扩散概率模型是一种由前向和反向过程表示的生成模型,其中前向过程通过不断加入高斯噪声得到不同程度的带噪图像,并训练模型预测噪声;而反向过程则从纯高斯噪声开始逐步迭代去噪,最终采样出图像。而将扩散概率模型迁移到 Refinement 任务中,数据形式的不同带来了以下两个问题:

(1) 由于自然图像往往被视作高维高斯变量,将图像生成的过程建模为一系列高斯过程是十分自然的,因此已有的扩散概率模型大多基于高斯假设建立;而我们的目标数据是 binary mask,通过高斯过程拟合这样一个离散变量的分布并不合理。

(2) 作为一种分割 Refinement 方法,我们的核心思想是将粗糙 mask 视为带有噪声的 ground truth,并通过消除这种噪声来恢复高质量的分割结果。这意味着我们扩散过程的结尾应当收敛到确定性的粗糙 mask(而非纯噪声),这也与已有的扩散概率模型不同。

针对上述问题,我们建立了如下图所示的基于“随机状态转移”的离散扩散过程。其中,前向过程将 ground truth 转换为“不同粗糙程度”的 mask,并用于训练;而反向过程用于模型推理,SegRefiner 从给出的粗糙 mask 开始,通过逐步迭代修正粗糙 mask 中的错误预测区域。以下将详细介绍前向和反向过程。

5d1d19da-a3ad-11ee-8b88-92fbcf53809c.png

前向过程

前向过程的目标是将 ground truth 提供的精细 mask 逐步消融为粗糙的 mask,记前向过程每一步的变量为 5d344984-a3ad-11ee-8b88-92fbcf53809c.jpg,则前向过程应当满足:

(1) 5d37e6b6-a3ad-11ee-8b88-92fbcf53809c.jpg为 ground truth

(2) 5d42c806-a3ad-11ee-8b88-92fbcf53809c.jpg为粗糙 mask

(3) 5d462528-a3ad-11ee-8b88-92fbcf53809c.jpg介于5d37e6b6-a3ad-11ee-8b88-92fbcf53809c.jpg5d42c806-a3ad-11ee-8b88-92fbcf53809c.jpg之间,随 t 增大逐渐向粗糙 mask 演变    

基于这些限制条件,我们用随机状态转移来表述前向过程:假设变量5d462528-a3ad-11ee-8b88-92fbcf53809c.jpg中的每一个像素都有两种可能的状态:精细和粗糙,处于精细状态的像素值与5d37e6b6-a3ad-11ee-8b88-92fbcf53809c.jpg保持一致,处于粗糙状态的像素则取 5d42c806-a3ad-11ee-8b88-92fbcf53809c.jpg的值(即使二者一致)。我们提出了一个“转移采样”模块来进行这一过程,如上图右侧所示。在每一个时间步,其以当前 mask 5d462528-a3ad-11ee-8b88-92fbcf53809c.jpg,粗糙 mask 5d42c806-a3ad-11ee-8b88-92fbcf53809c.jpg以及状态转移概率作为输入。

在前向过程中,状态转移概率描述了当前 mask 5d462528-a3ad-11ee-8b88-92fbcf53809c.jpg中每个像素转移到5d42c806-a3ad-11ee-8b88-92fbcf53809c.jpg中的状态的概率。根据状态转移概率进行采样,可以得到后一个时间步 5d8a53ec-a3ad-11ee-8b88-92fbcf53809c.jpg 每个像素的状态,从而确定其取值。这一模块确定了一个“单向”过程,即只会发生“转移到目标状态”的情况。这一单向性质确保了前向过程会收敛到5d42c806-a3ad-11ee-8b88-92fbcf53809c.jpg(尽管每一步都是完全随机的),从而满足了上述限制 条件(2),(3)。

通过重参数技巧,我们引入了一个二元随机变量5d91e1f2-a3ad-11ee-8b88-92fbcf53809c.jpg来描述上述过程:我们将 5da324da-a3ad-11ee-8b88-92fbcf53809c.jpg表示为一个 one-hot 向量,用来表示中间掩模 5d462528-a3ad-11ee-8b88-92fbcf53809c.jpg中像素 5dab027c-a3ad-11ee-8b88-92fbcf53809c.jpg的状态,同时设置 5dae7812-a3ad-11ee-8b88-92fbcf53809c.jpg5db898f6-a3ad-11ee-8b88-92fbcf53809c.jpg来表示精细状态和粗糙状态。因此,前向过程可以被表示为:

5dbc6c56-a3ad-11ee-8b88-92fbcf53809c.png

其中 5dbfd530-a3ad-11ee-8b88-92fbcf53809c.jpg为超参数,而 5dc3620e-a3ad-11ee-8b88-92fbcf53809c.jpg对应了上述的状态转移概率,5dcdefbc-a3ad-11ee-8b88-92fbcf53809c.jpg是状态转移矩阵。则前向过程的边缘分布可以表示为:

5dd1ea36-a3ad-11ee-8b88-92fbcf53809c.png

其中 5dd5714c-a3ad-11ee-8b88-92fbcf53809c.jpg。从而我们可以直接获取任何中间时间步 5dd8c31a-a3ad-11ee-8b88-92fbcf53809c.jpg的 mask 5d462528-a3ad-11ee-8b88-92fbcf53809c.jpg并用于训练,而无需逐步采样 5de2dddc-a3ad-11ee-8b88-92fbcf53809c.jpg

反向过程

反向扩散过程用于模型推理,目标是将粗糙 mask 5d42c806-a3ad-11ee-8b88-92fbcf53809c.jpg逐渐修正为精细 mask 5d37e6b6-a3ad-11ee-8b88-92fbcf53809c.jpg。由于此时精细 mask 5d37e6b6-a3ad-11ee-8b88-92fbcf53809c.jpg和状态转移概率未知,类似 DDPM 的做法,我们训练一个神经网络 5df5bca4-a3ad-11ee-8b88-92fbcf53809c.jpg,来预测精细 mask 5df92e98-a3ad-11ee-8b88-92fbcf53809c.jpg,表示为:

5dfcab4a-a3ad-11ee-8b88-92fbcf53809c.png

其中 5e09b2b8-a3ad-11ee-8b88-92fbcf53809c.jpg是相应的图像。5e0cf810-a3ad-11ee-8b88-92fbcf53809c.jpg5e10a1cc-a3ad-11ee-8b88-92fbcf53809c.jpg分别表示预测的精细 mask 和其置信度分数。这里5e10a1cc-a3ad-11ee-8b88-92fbcf53809c.jpg表示了网络对于5df92e98-a3ad-11ee-8b88-92fbcf53809c.jpg预测准确与否的置信度,故同样可以被视作5df92e98-a3ad-11ee-8b88-92fbcf53809c.jpg中每个像素处于“精细状态”的概率。为了获得反向状态转移概率,根据前向过程的设定和贝叶斯定理,延续 DDPM 的做法,我们可以由前向过程的后验概率和预测的5e10a1cc-a3ad-11ee-8b88-92fbcf53809c.jpg得到反向过程的概率分布,为:   

5e2ee920-a3ad-11ee-8b88-92fbcf53809c.png

其中 5e419d0e-a3ad-11ee-8b88-92fbcf53809c.jpg为反向过程的状态转移概率。给定粗糙 mask 5d42c806-a3ad-11ee-8b88-92fbcf53809c.jpg以及相应的图像5e09b2b8-a3ad-11ee-8b88-92fbcf53809c.jpg,我们首先将所有像素初始化为粗糙状态 5e4bd31e-a3ad-11ee-8b88-92fbcf53809c.jpg,然后通过不断迭代地状态转移,逐渐修正 5d42c806-a3ad-11ee-8b88-92fbcf53809c.jpg中预测值。下图为一个推理过程的可视化展示。

5e5d6f70-a3ad-11ee-8b88-92fbcf53809c.png

模型结构

任意满足 5e624504-a3ad-11ee-8b88-92fbcf53809c.jpg形式的网络均可满足我们的要求,这里我们延续了之前工作的做法,采用 U-Net 作为我们的去噪网络,将其输入通道数修改为4(图像和 5d462528-a3ad-11ee-8b88-92fbcf53809c.jpg在通道维度上串联),并输出1通道的改进掩模。

算法评估

由于 Refinement 任务的核心是获取细节精确的分割结果,在实验中我们选取了三个代表性的高质量分割数据集,分别对应Semantic Segmentation,Instance Segmentation 和 Dichotomous Image Segmentation。

Semantic Segmentation

如表1所示,我们在 BIG 数据集上将提出的 SegRefiner 与四种已有方法:SegFix,CascadePSP,CRM 以及 MGMatting 进行了对比。其中前三个为语义分割的 Refinement 方法,而 MGMatting 使用图像和 mask 进行 Matting 任务,也可以用于 Refinement 任务。结果表明,我们提出的 SegRefiner 在 refine 四个不同语义分割模型的粗糙 mask 时,都在 IoU 和 mBA 两项指标上获得了明显提升,且超越了之前的方法。

5e70695e-a3ad-11ee-8b88-92fbcf53809c.png    

Instance Segmentation

实例分割中,我们选择了之前的工作广泛使用的 COCO 数据集进行测试,并使用了 LVIS 数据集的标注。与原始 COCO 标注相比,LVIS 标注提供了更高质量和更详细的结构,这使得 LVIS 标注更适合评估改进模型的性能。

首先,在表2中,我们将提出的SegRefiner与两种 Model-Agnostic 的实例分割 Refinement 方法 BPR 和 SegFix 进行了比较。结果表明我们的 SegRefiner 在性能上明显优于这两种方法。

5e743d40-a3ad-11ee-8b88-92fbcf53809c.png

然后在表3中,我们将 SegRefiner 应用于其他7种实例分割模型。我们的方法在不同准确度水平的模型上都取得了显著的增强效果。值得注意的是,当应用于三种 Model-Specific 的实例分割 Refinement 模型(包括PointRend、RefineMask 和 Mask TransFiner)时,SegRefiner 依然能稳定提升它们的性能,这说明 SegRefiner 具有更强大的细节感知能力。

5e780dc6-a3ad-11ee-8b88-92fbcf53809c.png

Dichotomous Image Segmentation

Dichotomous Image Segmentation 是一个较新提出的任务,如下图所示,其数据集包含大量具有复杂细节结构的对象,因此十分适合评估我们 SegRefiner 对细节的感知能力。

5e7c5b42-a3ad-11ee-8b88-92fbcf53809c.png

在本实验中,我们将 SegRefiner 应用于6种分割模型,结果如表4所示。可以看到,我们的SegRefiner在 IoU 和 mBA 两项指标上都明显提升了每个分割模型的准确度。

5e9880d8-a3ad-11ee-8b88-92fbcf53809c.png

可视化展示

5e9ce010-a3ad-11ee-8b88-92fbcf53809c.png

5ea1a910-a3ad-11ee-8b88-92fbcf53809c.png







审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4762

    浏览量

    100527
  • CRM
    CRM
    +关注

    关注

    1

    文章

    145

    浏览量

    21107
  • 图像分割
    +关注

    关注

    4

    文章

    182

    浏览量

    17971
  • 高斯噪声
    +关注

    关注

    0

    文章

    11

    浏览量

    8357

原文标题:NeruIPS 2023 | SegRefiner:通过扩散模型实现高精度图像分割

文章出处:【微信号:CVer,微信公众号:CVer】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于扩散模型图像生成过程

    近年来,扩散模型在文本到图像生成方面取得了巨大的成功,实现了更高图像生成质量,提高了推理性能,也可以激发扩展创作灵感。 不过仅凭文本来控制
    的头像 发表于 07-17 11:00 2647次阅读
    基于<b class='flag-5'>扩散</b><b class='flag-5'>模型</b>的<b class='flag-5'>图像</b>生成过程

    如何在PyTorch中使用扩散模型生成图像

    除了顶尖的图像质量,扩散模型还带来了许多其他好处,包括不需要对抗性训练。对抗训练的困难是有据可查的。在训练效率的话题上,扩散模型还具有可伸缩
    发表于 11-22 15:51 480次阅读
    如何在PyTorch中使用<b class='flag-5'>扩散</b><b class='flag-5'>模型</b>生成<b class='flag-5'>图像</b>

    基于GAC模型实现交互式图像分割的改进算法

    基于GAC模型实现交互式图像分割的改进算法提出了一种改进的交互式图像分割算法。采用全变分去噪
    发表于 09-19 09:19

    使用全卷积网络模型实现图像分割

    OpenCv-C++-深度神经网络(DNN)模块-使用FCN模型实现图像分割
    发表于 05-28 07:33

    基于多级混合模型图像分割方法

    本文研究了典型的基于区域的图像分割方法主动形状模型(Active Shape Model, ASM)和基于边缘的图像分割snake 算法,分
    发表于 07-08 09:58 20次下载

    图像分割—基于图的图像分割

    图像分割—基于图的图像分割图像分割—基于图的图像
    发表于 11-19 16:17 0次下载

    基于改进活动轮廓模型图像分割

    基于改进活动轮廓模型图像分割_王芳
    发表于 01-07 19:00 0次下载

    基于像素聚类进行图像分割的算法

    B型心脏超声图像分割是计算心功能参数前重要的一步。针对超声图像的低分辨率影响分割精度及基于模型
    发表于 12-06 16:44 0次下载
    基于像素聚类进行<b class='flag-5'>图像</b><b class='flag-5'>分割</b>的算法

    基于活动轮廓模型图像分割

    图像分割的活动轮廓模型中,保留拉普拉斯扩散项的切线方向分量;再引入两个权重参数控制切线方向和法线方向有偏的扩散,以提高
    发表于 12-22 14:25 1次下载

    基于图像局部灰度差异的噪声图像分割模型

    图像分割在计算机视觉处理技术中占据重要位置,是图像处理和分析的关键步骤。基于水平集方法的活动轮廓模型被成功应用于在图像
    发表于 04-17 11:41 3次下载

    基于SEGNET模型图像语义分割方法

    使用原始 SEGNET模型图像进行语义分割时,未对图像中相邻像素点间的关系进行考虑,导致同一目标中像素点类别预测结果不一致。通过在 SEG
    发表于 05-27 14:54 15次下载

    一种高精度的肝脏图像自动分割算法

    在利用卷积神经网络分割肝脏边界较模糊的影像数据时容易丢失位置信息,导致分割精度较低。针对该问题,提出一种基于分水岭修正与U-Net模型相结合的肝脏
    发表于 05-27 15:17 2次下载

    SAM分割模型是什么?

    SAM是一类处理图像分割任务的通用模型。与以往只能处理某种特定类型图片的图像分割模型不同,SAM
    的头像 发表于 05-20 09:30 2199次阅读

    近期分割模型发展情况

    SAM(Segment Anything Model)Meta 的 FAIR 实验室发布的一种最先进的图像分割模型,该模型将自然语言处理领域的prompt范式引入计算机视觉领域,可以
    的头像 发表于 05-22 16:26 836次阅读
    近期<b class='flag-5'>分割</b>大<b class='flag-5'>模型</b>发展情况

    图像分割与语义分割中的CNN模型综述

    图像分割与语义分割是计算机视觉领域的重要任务,旨在将图像划分为多个具有特定语义含义的区域或对象。卷积神经网络(CNN)作为深度学习的一种核心模型
    的头像 发表于 07-09 11:51 668次阅读