SAM 新用法,无需训练,利用高质量负提示提升分割性能~


论文:SynPo: Boosting Training-Free Few-Shot Medical Segmentation via High-Quality Negative Prompts
代码:https://liu-yufei.github.io/synpo-project-page/


0、摘要

  大型视觉模型(Large Vision Models,LVMs)为小样本医学图像分割带来了新机遇。然而,现有基于 LVMs 的无训练方法未能有效利用负提示,在低对比度医学图像上表现不佳。(研究背景

  为此,本文提出 SynPo,一种基于 LVMs(如 SAM)的无训练小样本分割方法,核心思想是提升负提示的质量。

  本文设计了置信图协同模块,融合 DINOv2 与 SAM 的优势,生成更可靠的置信图。基于该置信图,选取前 k 个像素作为正提示点集,并基于高斯分布选取负提示点集,随后分别对两者进行 K-means 聚类。最终,这些高质量提示点被输入 SAM 进行分割。大量实验表明,SynPo 的性能可与当前最优的有训练小样本方法相媲美。


1、引言

1.1、研究意义与当前挑战

  (1)利用 SAM 进行无训练小样本分割的流程可概括如 图 1(1) 所示。该方法以支持-查询图像对及支持掩膜为输入,首先通过强预训练视觉编码器(如 DINO)提取支持-查询图像对的特征图,随后利用余弦距离计算查询特征与目标特征之间的二维置信图,并将置信图中的最大值作为点提示,引导 SAM 在查询图像上完成交互式分割;

  (2)置信图的利用仍有改进余地: DINOv2 作为该范式中常用的特征提取器,在语义特征提取方面表现出色,但其采用相对位置编码,削弱了对绝对空间位置的感知,可能导致正提示点选择错误,如 图 1(2) 左下 所示,这会影响解剖先验的利用,进而导致分割结果在解剖结构上不一致;而同样广泛使用的 SAM-ViT 采用绝对位置编码,具备更强的空间定位能力,能够有效避免该问题,如 图 1(2) 右上 绿框所示;

  (3)负提示的选择策略较为粗糙: 导致分割性能下降。现有方法将置信图中与目标区域相似度最低的像素作为负提示,使得大多数负提示集中在背景区域,而非解剖区域内,图 1(3) 中的先导实验表明,该方式违背直觉,效果不佳;
  
Figure 1 | 无训练少样本分割面临的挑战:(1) 无训练小样本点提示分割模型的通用流程;(2) 不同置信图(C. Map)与真实标签对比,DINOv2 特征生成的置信图误将右侧无关区域识别为“相似”;SAM-ViT 特征的置信图数值区分度较低,本文提出的协同置信图融合两者优势,弥补各自不足;(3) 先导实验:在解剖区域外设置负提示,即使正提示位置相同,分割性能仍低于在区域内设置负提示;

在这里插入图片描述

1.2、本文贡献

  (1)提出了一种新颖的无训练方法 SynPo,包含置信图协同模块点提示选择模块

  (2)借助 SAM 在低层空间信息捕捉方面的优势,弥补 DINOv2 特征的不足,设计了置信图协同模块,该模块融合 DINOv2 的高层语义特征与 SAM-ViT 的绝对空间信息,提升解剖结构的识别能力并优化分割边界;

  (3)点提示策略模块通过在解剖区域内启发式地选择负提示,提升了负提示的信息量,增强了提示引导效果,减少了冗余信息;

  (4)引入噪声感知优化模块,结合标准形态学操作与 SAM 对粗分割结果进行细化;


2、方法

2.1、总览

  SynPo方法,如 图 2 (1) 所示,由三个核心部分组成:置信图协同模块(CMSM)点选择模块(PSM)噪声感知优化模块(NRM)。给定一个支持-查询对,首先使用预训练的视觉模型(SAM-ViT 和 DINOv2)提取零样本视觉特征。

  在 CMSM 中,特征图与支持掩码 MS∈RH×W\mathcal M_S∈\mathbb R^{H×W}MSRH×W 共同用于计算协同映射 SynMap∈RH×WSynMap∈\mathbb R^{H×W}SynMapRH×W,并建模负置信度分布 PnegP_{neg}Pneg,这些要素共同支撑提示信息的生成。

  在 PSM 中,协同映射中的像素按其置信度得分排序形成一个分级列表,该列表与置信度分布共同构成点提示选择的关键决定因素。

  最后,生成的点提示和查询图像 IQI_QIQ 被输入到 SAM 中,以预测粗略掩码 Mcoarse∈RH×W\mathcal M_{coarse} ∈\mathbb R^{H×W}McoarseRH×W,此外,设计了额外的 NRM 来对 Mcoarse\mathcal M_{coarse}Mcoarse 进行细化。

  
Figure 2 | :(1)SynPo 架构概述;(2)置信图协同作用示意图;(3)点选择模块图示;

在这里插入图片描述

2.2、置信图协同模块(CMSM)

  如 图 2 (2) 所示,CMSM 是一种创新方法,它包含两个分支来生成协同图,并附带生成负置信度分布。对于上分支,使用 Ms\mathcal M_sMsFs\mathcal F_sFs 中提取与视觉概念中前景像素对应的支持特征:
在这里插入图片描述
  其中 TSi∈R1×c\mathcal T_S^i ∈ \mathbb R^{1×c}TSiR1×c◦◦ 表示空间维度乘法运算。随后,通过计算 TSi\mathcal T_S^iTSi 与查询特征 FQ\mathcal F_QFQ 之间的余弦相似度,为每个前景像素 iii 生成 nnn 个置信度图:
在这里插入图片描述
  接下来,采用平均池化方法来聚合所有 nnn 个局部特征图,从而获得目标器官的整体置信度图 S∈RH×W\mathcal S ∈ \mathbb R^{H×W}SRH×W

  在生成负置信度图的下分支中,通过 Mˉs\bar{\mathcal M}_sMˉsFs\mathcal F_sFs 中裁剪出视觉概念内背景像素的支持特征,其中 Mˉs\bar{\mathcal M}_sMˉs 表示 Ms{\mathcal M}_sMs 的逆矩阵:
在这里插入图片描述
  其中 BSi∈R1×c\mathcal B_S^i ∈ \mathbb R^{1×c}BSiR1×c◦◦ 表示空间维度乘法运算。随后,将 BS\mathcal B_SBS 视为 Fq\mathcal F_qFq,并以相同方式计算负置信度图 Sneg\mathcal S_{neg}Sneg

  随后,将 SSAM\mathcal S_{SAM}SSAMSDINO\mathcal S_{DINO}SDINO 结合生成 SynMapSynMapSynMap

在这里插入图片描述
  其中 ⊙⊙ 表示哈达玛积,且 δS−D+δS+δD=1δ_{S-D} + δ_S + δ_D = 1δSD+δS+δD=1。第一项捕捉了两个矩阵之间的非线性相互作用,有效地放大了结果矩阵中的极端值。这增强了对两个置信度图中显著偏差的敏感性,同时降低了中性或中等数值的影响。此外,后续项为每个矩阵的贡献提供了受控权重。接下来,对 SnegSAM\mathcal S^{SAM}_{neg}SnegSAMSnegDINO\mathcal S^{DINO}_{neg}SnegDINO 应用相同流程,生成融合表征,随后将其展平以获得 SynMapneg∈R(H×W−1)×1SynMap_{neg}∈ \mathbb R^{(H×W-1)×1}SynMapnegR(H×W1)×1

在这里插入图片描述
  对于 SynMapnegSynMap_{neg}SynMapneg,采用高斯概率密度函数对其中的每个像素值 pip_ipi 进行建模:

在这里插入图片描述
  其中 μμμσσσ 通过最大似然估计得出。

2.3、点选择模块(PSM)

  将协同图中的每个像素点 pi=(xi,yi,ci)p_i = (x_i, y_i, c_i)pi=(xi,yi,ci) 按照该像素置信度分数 cic_ici 进行降序排列,其中 xix_ixiyiy_iyi 表示该像素的坐标位置。

  对于正样本点,选取概率值 pip_ipi 的前 γ1⋅Kpγ_1·K_pγ1Kp 个点,其中 γ1γ_1γ1 是聚类比例因子,KpK_pKp 代表期望的正样本点数量。所选点的坐标集合可表示为:
在这里插入图片描述
  其中 pi∈R2p_i∈\mathbb R^2piR2。接下来,对这些坐标进行 K 均值聚类并选取 KpK_pKp 个中心点,从而得到 Ppos\mathcal P_{pos}Ppos
在这里插入图片描述
  其中 Ppos∈RKp×2\mathcal P_{pos}∈ \mathbb R^{K_p×2}PposRKp×2代表坐标集合。

  对于负样本点,最多从置信区域选取 γ2⋅Knγ_2·K_nγ2Kn 个与感兴趣区域更相关的像素点,其定义如下列方程所示:
在这里插入图片描述
  其中 µµµσσσ 源自 SynMapnegSynMap_{neg}SynMapnegαααβββ 是用户定义的用于控制置信区间边界的常数。随后随机选取 γ2⋅Knγ_2·K_nγ2Kn 个像素点:
在这里插入图片描述
  随后,将类似的聚类方法应用于正样本点,得到 Pneg\mathcal P_{neg}Pneg

在这里插入图片描述
  最终,取两个集合的交集并为这些点分配标签,从而得到该集合:
在这里插入图片描述
  其被输入至 SAM 模型以生成粗分割结果 Mcoarse\mathcal M_{coarse}Mcoarse

2.4、噪声感知优化模块(NRM)

  该模块首先通过初始腐蚀操作来优化由 PSM 生成的原始粗糙掩膜 Mcoarse\mathcal M_{coarse}Mcoarse,以去除细小噪声,随后进行膨胀步骤以恢复主要结构区域。设 Mj\mathcal M_jMj 表示针对 Mcoarse\mathcal M_{coarse}Mcoarsejjj 个连通区域 CjC_jCj 所获得的掩膜,通过 Mj\mathcal M_jMj 对查询特征进行分割:
在这里插入图片描述
  其中 ∣Cj∣|Cj|Cj 表示 CjC_jCj 区域内的总像素数。随后,将 TQ,CjT_{Q,Cj}TQ,Cj 视作 FqF_qFq,并采用相同方式计算 CjC_jCj 区域的置信度得分,得到 SCj\mathcal S_{C_j}SCj。接着在每个连通域内计算均值:

在这里插入图片描述
  选择得分最高的连通区域作为 Mrefine\mathcal M_{refine}Mrefine,并将其作为掩码提示输入 PSM 模型。结合点提示,这有助于进一步细化分割结果。随后再次通过相同步骤处理输出,最终生成分割结果 Mfinal\mathcal M_{final}Mfinal


3、实验与结果

3.1、实验设置

  (1)数据集与评价指标:Synapse-CT 数据集:30 例腹部 CT 三维扫描;CHAOSMRI 数据集:20 例 T2-SPIR 磁共振三维扫描;五折交叉验证报告 Dice 系数的标准差;

  (2)实施细节:将图像转换为 256×256 大小的感兴趣区域,使用 DINOv2 模型(Sinder)提取特征,得到一个空间尺寸为 64×64 的特征图。接着应用 SAM 模型(Sam2.1 Hiera 大图预测)获取相同空间尺寸 64×64 的特征图,分别对应高度和宽度。所有实验都在 NVIDIA RTX-3090 上进行。至于超参数,对于 Synapse-CT 和CHAOS-MRI,δS−Dδ_{S-D}δSDδSδ_SδSδDδ_DδD 均设定为 0.8、0.1 和 0.1;

3.2、与最先进方法的比较

  
Table 1 | 与最先进方法的比较:除 PerSAM 和 SynPo 外,数据均来自其原始论文;

在这里插入图片描述

  
Figure 3 | 不同方法的质量结果:

在这里插入图片描述

3.3、消融实验

  
Table 2 | 消融模块研究:
Table 3 | CHAOS 任务中负提示策略的消融研究:

在这里插入图片描述

  
Figure 4 | 参数 αααβββ 的实验,β=α−1.5β = α − 1.5β=α1.5

在这里插入图片描述


  prompt 也很值得研究呀( •̀ ω •́ )✧

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/88260.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/88260.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/88260.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入理解机器学习

一.前言本章节开始来讲解一下机器学习的知识,本期作为一个了解就大概介绍一下,我们不会从机器学习基础开始介绍,但是后面会来补充,随着ai的不断发展,机器学习在ai的领域里面的占比越来约少,我们还是以应用为…

数据结构 顺序表(1)

目录 1.线性表 2.顺序表 1.线性表 线性表(linear list)是n个具有相同特性的数据元素的有限序列。线性表是一种在实际中广泛使用 的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串… 线性表在逻辑上是线性结构&#…

openssl 生成国密证书

openssl生成证书生成CA私钥 openssl ecparam -genkey -name SM2 -out ca.key.pem -noout证书请求 openssl req -new -key ca.key.pem -out ca.cert.req -subj “/CNrtems-strongswan-CA”生成证书 openssl x509 -req -days 3650 -in ca.cert.req -signkey ca.key.pem -out ca.c…

系统架构设计师论文分享-论分布式事务技术及其应用

我的软考历程 摘要 2023年9月,我所在的公司通过了研发纱线MES系统的立项,该系统为国内纱线工厂提供SAAS服务,旨在提高纱线工厂的数字化和智能化水平。我在该项目中担任系统架构设计师一职,负责该项目的架构设计工作。本文结合我…

东土科技智能塔机系统亮相南京,助力智能建造高质量发展

近日,由南京市城乡建设委员会、江苏省土木建筑学会主办的“无人驾驶智能塔机观摩会”,在中建三局一公司南京扬子江智慧中心项目现场成功举办。作为全国首批智能建造试点城市,南京市已出台20余项支持政策,落地93个试点项目&#xf…

3D Surface Reconstruction with Enhanced High-Frequency Details

3D Surface Reconstruction with Enhanced High-Frequency Details核心问题:当前基于神经隐式表示(如 NeuS)的 3D 表面重建方法,通常采用随机采样策略。这种随机采样难以充分捕捉图像中的高频细节区域(如纹理、边缘、光…

Science Robotics 耶鲁大学开源视触觉新范式,看出机器人柔性手的力感知

摘要:在机器人视触觉传感领域,如何兼顾成本与性能始终是一大挑战。耶鲁大学在《Science Robotics》上发表最新研究,提出了一种“Forces for Free”(F3)新范式。该研究通过观测一个经过特殊优化的开源柔性手&#xff08…

关于java项目中maven的理解

我的理解:maven是java项目的依赖管理工具,通过pom.xml文件配置要下载的依赖,settings.xml配置maven下载的镜像没有就默认在maven中央仓库下载依赖,本地仓库是存储下载好的依赖ai:1. 功能定位局限Maven 不只是依赖管理工具&#xf…

缓存三大问题详解与工业级解决方案

文章目录缓存三大问题详解与工业级解决方案概念总览问题详解1. 缓存穿透 (Cache Penetration)问题描述典型场景危害2. 缓存击穿 (Cache Breakdown)问题描述典型场景危害3. 缓存雪崩 (Cache Avalanche)问题描述典型场景危害工业级解决方案缓存穿透解决方案方案1: 布隆过滤器方案…

FreeRTOS 中主函数 while 循环与任务创建的紧密联系

FreeRTOS 中主函数 while 循环与任务创建的紧密联系 在嵌入式开发领域,FreeRTOS 是一款被广泛应用的轻量级实时操作系统,为开发者提供了高效的多任务调度机制。对于初学者来说,理解主函数中的 while 循环与通过 xTaskCreate 创建的任务之间的…

Flutter基础(前端教程⑦-Http和卡片)

1. 假设后端返回的数据格式{"code": 200,"data": [{"name": "张三","age": 25,"email": "zhangsanexample.com","avatar": "https://picsum.photos/200/200?random1","statu…

pytorch chunk 切块

目录 chunk切块 chunk​​​​​​​切块 import torch# 创建一个形状为 [2, 3, 4] 的张量 x torch.arange(6).reshape(2, 3) print("原始张量形状:", x.shape) print("x:", x) # 输出: 原始张量形状: torch.Size([2, 3, 4])# 沿着最后一个维度分割成 2 …

PCIe基础知识之Linux内核中PCIe子系统的架构

5.1 先验知识 驱动模型:Linux建立了一个统一的设备模型,分别采用总线、设备、驱动三者进行抽象,其中设备和驱动均挂载在总线上面,当有新的设备注册或者新的驱动注册的时候,总线会进行匹配操作(match函数),…

2.2 TF-A在ARM生态系统中的角色

目录2.2.1 作为ARM安全架构的参考实现2.2.2 与ARM处理器内核的协同关系2.2.3 在启动链中的核心地位2.2.4 与上下游软件的关系与底层固件的协作与上层软件的接口2.2.5 在ARM生态系统中的标准化作用2.2.6 典型应用场景2.2.1 作为ARM安全架构的参考实现 TF-A(Trusted …

Chrome 开发者警告:`DELETE err_empty_response` 是什么?jQuery AJAX 如何应对?

在Web开发的世界里,我们时常会遇到各种各样的错误信息,它们像一个个谜语,等待我们去破解。今天我们要聊的这个错误——DELETE err_empty_response,尤其是在使用 jQuery 的 $.ajax 发送 DELETE 请求时遇到,确实让人头疼。它意味着浏览器尝试删除某个资源,却收到了一个空荡…

python作业 1

1.技术面试题 (1)TCP与UDP的区别是什么? 答: TCP建立通信前有三次握手,结束通信后有四次挥手,数据传输的可靠性高但效率较低;UDP不需要三次握手就可传输数据,数据传输完成后也不需要…

centos7 java多版本切换

文章目录前言一、卸载原来的jdk二、下载jdk三、解压jdk三、配置环境变量四、切换JAVA环境变量前言 本来是为了安装jenkins,安装了对应的java,node,maven,git等环境,然后运行jenkins时候下载插件总是报错,我下载的jenkins是 2.346.1 版本&…

用Python和OpenCV从零搭建一个完整的双目视觉系统(四)

本系列文章旨在系统性地阐述如何利用 Python 与 OpenCV 库,从零开始构建一个完整的双目立体视觉系统。 本项目github地址:https://github.com/present-cjn/stereo-vision-python.git 在上一篇文章中,我们完成了相机标定这一最关键的基础步骤…

STM32-中断

中断分为两路:12345用于产生中断;678产生事件外设为NVIC设计流程:使能外设中断设置中断优先级分组初始化结构体编写中断服务函数初始化结构体:typedef struct {uint8_t NVIC_IRQChannel; 指定要使能或禁用的中断通道例如: TIM3_I…

Shader面试题100道之(61-80)

Shader面试题(第61-80题) 以下是第61到第80道Shader相关的面试题及答案: 61. 什么是UV展开?它在Shader中有什么作用? UV展开是将3D模型表面映射到2D纹理空间的过程,用于定义纹理如何贴合模型。在Shader中&a…