Segment Anything Model(SAM)如何促进医学图像分割

news2024/11/26 13:48:32

文章目录

  • How Segment Anything Model (SAM) Boost Medical Image Segmentation?
    • 摘要
    • segment anything model
    • How SAM performs on Medical Image Segmentation?
      • Pathology Image Segmentation
      • Liver Tumor Segmentation from CECT
      • Polyps Segmentation from Colonoscopy Images
      • Brain MRI Segmentation
      • Abdominal CT Organ Segmentation
      • Endoscopic Surgical Instrument Segmentation
      • Other Multi-dataset Evaluations
      • Summary
    • How to better adapt SAM to Medical Image Segmentation?
      • Extending the Usability of SAM to Medical Images
      • Fine-tuning SAM on Medical Datasets
      • Input Augmentation with SAM
    • 总结

How Segment Anything Model (SAM) Boost Medical Image Segmentation?

摘要

由于prompt的灵活性,基础模型已经成为自然语言处理和图像生成领域的主导力量。随着最近Segment Anything Model(SAM)的引入,prompt驱动范式已经进入图像分割领域,带来了一系列以前未探索的功能。然而,由于自然图像和医学图像之间的显著差异,它是否适用于医学图像分割仍不清楚。在这项工作中,我们总结了最近将SAM的成功扩展到医学图像分割任务的努力,包括经验基准和方法调整,并讨论了SAM在医学图像分割中的潜在未来方向
代码地址

segment anything model

在这里插入图片描述
图像编码器:图像编码器中的ViT使用MAE进行预训练,该编码器至少适用于处理高分辨率(即1024×1024)图像。在图像编码器之后,获得的图像嵌入被16×缩小到64×64
Prompt Encoder:包括稀疏提示(点、框、文本)和密集提示(mask)。SAM采用位置编码与学习嵌入相结合来表示点和框。具体而言,点由两个可学习的标记编码,用于指定前景和背景,边界框由其左上角和右下角的点编码编码。自由格式文本由CLIP中经过预训练的文本编码器进行编码。使用卷积嵌入与输入图像具有相同空间分辨率的密集掩码提示,并与图像嵌入逐元素求和。
Mask Decoder:mask解码器的特点是其轻量级设计,它由两个转换器层组成,具有动态掩码预测头和并集交集(IoU)分数回归头。mask预测头能够生成三个4×下采样的掩模,分别对应于整个对象、部分对象和子对象

在训练过程中,通过focal loss和Dice loss 的线性组合来监督输出预测。建立了一个数据引擎,用于标签的有效训练。具体来说,专业的注释者首先通过交互式分割来标记mask。然后,在SAM的预测中被忽略的不太突出的对象将被手动标记。最后,进行了一个全自动阶段,其中选择自信和稳定的伪标签作为注释

How SAM performs on Medical Image Segmentation?

尽管SAM在自然图像上有着令人印象深刻的性能,但由于结构复杂性、低对比度和观察者之间的可变性,它是否适用于更具挑战性的医学图像分割仍不清楚。为了解决这个问题,几项研究已经回答了SAM如何在医学图像分割中执行的问题

Pathology Image Segmentation

评价SAM在肿瘤分割、非肿瘤组织分割和细胞核分割中的应用。通过进行几个不同的场景,包括具有单个正点提示的SAM,具有10个正点和10个负点的20个点提示,以及每个实例对象上的所有点/框,结果表明SAM对大型连接对象实现了显著的分割性能。然而,SAM在密集实例对象分割方面并没有达到令人满意的性能,即使在每个图像上有20个提示(点击/框)。可能的原因包括与SAM的训练图像分辨率相比,WSI的图像分辨率显著更高,以及数字病理学的不同组织类型的多个尺度。

Liver Tumor Segmentation from CECT

从对比增强计算机断层扫描(CECT)体积中进行多期肝肿瘤分割的实验。从结果中可以观察到,用于分割的提示点越多,SAM就可以获得更好的性能。
与经典U-Net相比,提示点较少的SAM仍有较大差距。

Polyps Segmentation from Colonoscopy Images

在五个基准数据集上评估非主动设置的SAM在从结肠镜图像中分割息肉方面的性能。从实验结果来看,与最先进的方法相比,SAM表现出较低的性能,平均dice相似系数(DSC)下降了14.4%-36.9%。当直接应用息肉分割任务时,由于息肉及其周围粘膜之间的边界模糊,SAM无法对这些看不见的医学图像实现令人满意的性能

Brain MRI Segmentation

将SAM与脑提取工具(BET)进行比较,BET是一种广泛使用的当前磁共振成像脑提取和分割的金标准技术。实验结果表明,与BET相比,SAM可以获得相当甚至更好的性能,显示出作为大脑提取和分割应用的有效工具的显著额外潜力

Abdominal CT Organ Segmentation

目的通过对腹部CT器官分割进行实验,评估SAM的开箱即用零样本能力,实验场景包括从分割掩模和分割掩模边界框中随机选取1、3和10个点,抖动分别为0.01、0.05、0.1、0.25和0.5,以模拟不同程度的用户不准确性。尽管带有点提示的SAM表现不佳,骰子相似系数(DSC)的平均下降幅度在20.3%至40.9%之间,但即使在中等(0.1)抖动的情况下,使用方框提示也可以获得极具竞争力的性能

Endoscopic Surgical Instrument Segmentation

评估SAM在两个经典数据集上的内窥镜手术器械分割性能。实验结果表明,SAM在使用基于点的提示和未经提示的设置分割整个仪器方面存在不足。
具体而言,当存在重叠的仪器或仅使用基于点的提示时,SAM无法预测仪器的某些部分。此外,SAM也无法识别复杂手术场景中的仪器,如血液、反射、模糊和阴影

Other Multi-dataset Evaluations

在12个公共医学图像分割数据集上进行大规模实证研究,评估SAM的准确性,这些数据集涵盖不同的器官,包括大脑、乳房、胸部、肺部、皮肤、肝脏、肠道、胰腺和前列腺,不同的图像模式,包括2D X射线、组织学、内窥镜检查、3D MRI和CT,以及不同的健康状况,包括正常、病变。SAM和现有分割网络之间的视觉比较可以在图2中找到。通过使用标准方法模拟交互式分割生成点提示,对来自不同模态(包括X射线、超声、MRI、CT和PET/CT)以及各种解剖结构的11个医学图像分割数据集的集合进行SAM的广泛评估

对于具有明确提示的边界清晰的对象,性能似乎很高,而在肿瘤分割等其他场景中,性能较差。在包括自动提示模式、框提示模式和点提示模式在内的三种提示模式下,评估SAM在覆盖各种器官和模态的12个公共医学图像数据集上的性能。

实验结果表明,SAM的性能在不同的数据集之间有所不同,与其他提示模式相比,没有抖动的框提示模式是将SAM模型用于医学图像任务的最佳方式。总的来说,SAM的分割结果通常低于现有技术的方法,但仍有几个数据集超过了现有技术。
在这里插入图片描述
此外,收集并排序了52个开源数据集,构建了一个名为COSMOS 553K的大规模医学分割数据集,该数据集包含16种模态、68个对象和553K切片。在不同的SAM测试策略上进行了综合实验,包括一切模式、基于点和基于框的提示模式。实验结果验证,与一切模式相比,SAM在医学图像中使用手动提示(如点和框)进行物体感知时表现更好。具体而言,通过在正面提示中添加额外的负面提示,理论上应该会提高性能,可以观察到,当背景点与前景点相似时,添加负面提示会略微降低某些任务的性能。这一发现表明,为了实现稳定的性能改进,应该根据领域知识仔细选择点提示

Summary

在本节中,我们回顾了最近在不同医学图像分割任务上对SAM进行基准测试的研究,并与现有的特定领域分割方法进行了比较。通常,SAM需要大量的人工信息,以仅使用很少的点或边界框提示来获得总体中等的分割性能。总体而言,这些在不同数据集上的评估结果表明,SAM在直接应用于医学图像分割时具有有限的泛化能力,这在不同的数据集和任务中差异很大。SAM在一些特定的对象和模式中显示出与现有技术方法相当的显著性能。然而,在其他更具挑战性的情况下,当分割目标具有低对比度的弱边界和较小且不规则的形状时,SAM是不完美的,甚至完全失败,这与其他研究一致

由于SAM是在SA1B数据集上预先训练的,数据集由自然图像组成,其中对象通常具有较强的边缘信息,这与医学图像显著不同。因此,将SAM直接应用于这些看不见且具有挑战性的医学图像分割任务可能具有有限的性能。

How to better adapt SAM to Medical Image Segmentation?

研究表明,SAM可能在医学图像分割任务中失败,尤其是当分割目标具有弱边界时。为了更好地将SAM应用于医学图像分割任务,另一系列研究围绕以下主题展开

Extending the Usability of SAM to Medical Images

与传统的自然图像不同,医学图像大多采用特定的格式,如NII和DICOM。为了简化SAM在医学图像中的使用并帮助其利用,使用3D切片器将SAM扩展到常用的医学图像查看器中,这使研究人员能够在仅0.6秒的延迟内对医学图像进行分割。当一个切片的分割完成时,通过提示的分割过程可以自动应用于下一个切片

Fine-tuning SAM on Medical Datasets

由于直接将SAM应用于医学图像分割的性能不令人满意,一些研究研究了如何对医学图像进行SAM微调以提高其可靠性。由于更新SAM的所有参数耗时、计算密集且难以部署,大多数研究都集中在微调SAM的一小部分参数上,例如SAM的一个子部分(图像编码器、提示编码器和掩码解码器)或它们的组合。
评估除图像编码器外直接应用和微调SAM进行皮肤癌症分割任务的性能。通过在目标数据集上微调SAM,该模型可以在Dice中获得从81.25%到88.79%的显著性能提升。
通过管理一个包含11种模式的200000多个掩模的多样化和全面的医学图像数据集,将MedSAM引入通用图像分割,并开发微调方法以使SAM适应医学图像分割。所提出的MedSAM进一步提高了SAM的性能,在21个3D分割任务上的平均骰子相似系数(DSC)为22.51%,在9个2D分割任务上为17.61%,证明了在医学图像上微调掩模编码器的有效性。然而,整体性能仍然落后于医学图像分割的专家模型。引入医学SAM适配器(MSA),使用自适应模块通过参数高效微调范式微调预训练的SAM,因为它能够通过更快的更新实现高效学习,并避免灾难性遗忘。具体来说,在SAM编码器中,每个ViT块有两个适配器,嵌入是按比例缩放的,而在SAM解码器中,有三个ViT块的适配器。此外,除了经典的2D图像分割之外,为了利用切片之间的空间相关性进行3D医学图像分割,MSA将注意力操作拆分为空间分支和深度分支,以进一步利用深度相关性,然后将深度分支的结果转置回原始形状,并添加到空间分支的结果中。

在CT、MRI、超声、眼底图像和皮肤镜图像等5种不同模式下对19个医学图像分割任务进行的综合实验表明,与最先进的方法相比,通过微调,MSA可以获得相当的性能。类似地,在标记的医学图像分割数据集上,将基于低秩(LoRA)的微调策略与提示编码器和掩码解码器一起应用于SAM图像编码器。通过对多器官分割数据集进行微调,与现有技术相比,SAM可以实现极具竞争力的分割性能。

Input Augmentation with SAM

由于SAM在直接应用于需要特定领域知识的医学图像分割任务时的不完美性能,[37]的目标不是直接应用SAM进行分割,而是直接利用SAM生成的分割掩码来增强原始输入医学图像。输入增强由融合函数SAMAug执行,以生成分割先验图和边界先验图。具体而言,SAM使用网格提示生成图像中所有可能位置的分割掩码。
然后绘制Mask以形成具有SAM生成的掩模的相应稳定性分数的分割先验图。除了分割先验图之外,还根据SAM提供的掩模生成边界先验图。生成先验图后,通过将先验图添加到具有多个通道的原始图像中来增强输入图像。
在两个数据集上的实验表明,使用相同的U-Net进行分割,在细胞分割任务中,采用SAMAug进行输入增强可以将聚合Jaccard指数(AJI)从58.36%提高到64.30%,在腺体分割任务中可以将对象dice从86.35%提高到87.44%。这些结果证明,尽管SAM可能无法为医学图像生成高质量的分割,但这些生成的掩码和特征仍然有助于增强分割模型

总结

SAM的成功证明了建立细分基础模型的可行性。尽管目前SAM的性能与特定领域的模型相比并不稳定,但我们相信它具有强大的潜力,可以作为一种高效而强大的工具来进一步构建细分模型,从而帮助临床应用。我们概述了一些现有的挑战和潜在的未来方向如下。
Adapt SAM from 2D to 3D Medical Images:将SAM应用于医学图像分割的主要挑战是图像维度的差异。与经典的2D自然图像不同,许多医学扫描都是3D体积,如MRI和CT。对于这些3D医学图像,医生需要利用相邻切片之间的相关性来做出决定。尽管SAM可以通过分割体积的每个切片来生成最终分割结果,从而应用于3D医学图像,但忽略了相邻切片之间的切片间信息。先前的许多研究已经表明,切片间相关性对于识别某些对象以确保准确分割的重要性
Reduce the Annotation Cost for Medical Image Segmentation:医学图像的高昂注释成本是开发分割模型的主要挑战之一,因为它通常需要专家的特定领域知识来提供可靠和准确的注释,SAM生成的分割结果并不总是完美的,这些分割掩模仍然可以考虑降低注释成本。专家可以利用SAM进行粗略分割,然后手动修改分割,从而实现快速的交互式分割,而不是从头开始标记目标。
Beyond Point and Box Prompts:几项实证研究表明,与点提示相比,使用框提示可以获得更好的结果,因为可以获得相对更准确的位置信息。然而,如果分割目标周围有多个类似的实例,则大的边界框可能会混淆模型并导致不正确的分割结果。除了点和框提示之外,涂鸦提示是另一种广泛用于医学图像分割的交互,它对于一些形状不规则的非紧凑目标是有用和有效的,并且当结合到SAM中时可能会进一步提高性能

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Win10 hyper-v与vmware不兼容解决方案

Win10 hyper-v与vmware不兼容怎么办 一、异常1.1 异常描述 - V M w a r e W o r k s t a t i o n 与 H y p e r − V 不兼容 \color{red}{VMware Workstation 与 Hyper-V 不兼容} VMwareWorkstation与Hyper−V不兼容1.2 异常原因 二、解决办法2.1 关闭Hyper-V启动2.2 关闭内核…

【面试题】6月 vue核心面试题汇总

大厂面试题分享 面试题库 前后端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 web前端面试题库 VS java后端面试题库大全 一、MVVM原理 在Vue2官方文档中没有找到Vue是MVVM的直接证据,但文档有提到&am…

判断数组中的每个元素是否为NaN numpy.isnan()

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 判断数组中的每个元素是否为NaN numpy.isnan() [太阳]选择题 请问关于以下代码的最后输出正确的是? import numpy as np a np.array([1, np.nan, np.inf, float(nan)]) print(&…

PSD矢量处理:Graphics Mill 11.1.18 Crack

光栅和矢量处理 .NET SDK 图形铣床 11 图PSD矢量处理:Graphics Mill 11.1.18可供 .NET 和 ASP.NET 开发人员使用的最可靠的映像工具集。它允许用户轻松地向 .NET 应用添加复杂的光栅和矢量图像处理功能。 光栅图形 加载并保存 JPEG、PNG 和另外 8 种图像格式 调整大小&#xff…

SignalR服务主动发送消息给客户端

文章目录 背景尝试方案使用IHubContext上下文进行处理第一步 创建一个类用于处理上下文(WarningBroadcast)第二步:如何实例化这个对象呢下面是我实现的方式 第三步:使用扩展类 调用通知关于MessageBus的使用demo发布消息订阅消息 …

java 心理教育网站系统Myeclipse开发mysql数据库web结构jsp编程计算机网页项目

一、源码特点 java 心理教育网站系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0&…

使用 Flask 的g对象和 MySQL 实现用户登录和注销功能

在Flask中,g对象是一个特殊类型的对象,被称为"上下文全局变量"。它在一次请求的生命周期内存储信息,并且可以在整个请求过程中访问和共享。 g对象对于存储用户登录信息非常有用。例如,当用户通过验证登录时&#xff0c…

编译程序的任务

编译程序是一种翻译程序,编译程序是将一种语言形式翻译成另一种语言形式。它将高级语言所写的源程序翻译成等价的机器语言或汇编语言的目标程序。 整个编译过程一般可以划分为 5 个阶段:词法分析、语法分析、语义分析及中间代码生成、中间代码优化和目标…

UOS系统VMware安装教程

官网链接 https://home.uniontech.com/ 从这里下镜像文件 内存最好4以上 选择ISO文件地址 选择自定义安装 手动分区 4个g给交换分区,剩下的全挂在根目录下

长视频自动化摘要笔记完整工作流;腾讯云发布AIGC全链路内容安全解决方案

🦉 AI新闻 🚀 腾讯云发布AIGC全链路内容安全解决方案,助力企业护航生成式人工智能健康发展 摘要:腾讯云公布MaaS能力全景图,提供AIGC全链路内容安全解决方案,覆盖从模型训练到内容生成再到事后运营全过程…

【工程应用八】终极的基于形状匹配方案解决(小模型+预生成模型+无效边缘去除+多尺度+各项异性+最小组件尺寸)

我估摸着这个应该是关于形状匹配或者模版匹配的最后一篇文章了,其实大概是2个多月前这些东西都已经弄完了,只是一直静不下来心整理文章,提醒一点,这篇文章后续可能会有多次修改(但不会重新发文章,而是在后台…

搭建GPU环境的TensorFlow并将单块GPU划分逻辑为分区的实践

1、搭建环境 1.1、查看GPU版本 在安装tensorflow的GPU版本之前可以先看下自己的显卡情况 命令:nvidia-smi 或者桌面右下角,NVIDIA图标,进入到NVIDIA的控制面板: 点击左下角的系统信息,组件中查看NVCUDA64.dll的版本…

英特尔淡化混合 CPU-GPU 引擎,将 NNP 合并到 GPU 中

早在 2022 年 2 月,当英特尔宣布其“Falcon Shores”项目以构建混合 CPU-GPU 计算引擎时,该项目允许在单个插槽中独立扩展 CPU 和 GPU 容量,看起来这家芯片制造商正准备与竞争对手 Nvidia 较量AMD 开始使用混合计算电机,Intel 称之…

基于Flask框架和Vue框架搭建一个Web端的深度学习检测系统(从模型训练,界面设计到服务器部署实现一个完整项目实战)

从Pytorch框架下YOLOv5的模型训练,到Flask框架的模型加载,再到Vue框架的界面设计到最后的服务器部署。 实验环境 1.Windows10系统 2.编辑器pycharm 3.GPU 1080Ti 4.anaconda虚拟环境安装相应的安装包 5.pytorch版本1.7.1 6.Python3.7.15 实验数据集 …

C++初阶—stackqueue

目录 1. stack的介绍和使用 1.1 stack的介绍 1.2 stack使用及OJ 1.2.1 最小栈 1.2.2 栈的弹出压入顺序 1.2.3 逆波兰表达式求值 1.2.4 用两个栈实现一个队列 2. queue的介绍和使用 2.1 queue的介绍 2.2 queue的使用及OJ 2.2.1 用队列实现栈 2.3 queue的模拟实现 3…

用户测试:确保产品质量的关键一环

用户测试:确保产品质量的关键一环 在当今竞争激烈的市场中,产品的质量是企业脱颖而出的关键因素之一。为了确保产品的质量,用户测试成为了开发过程中不可或缺的一环。用户测试是通过让真实用户使用产品并提供反馈意见来验证产品的功能、易用性…

【系统开发】尚硅谷 - 谷粒商城项目笔记(四):JSR303数据校验

文章目录 JSR303数据校验引入依赖和简介配置验证规则开启验证BindResult校验的统一异常处理JSR303分组校验自定义校验注解 JSR303数据校验 引入依赖和简介 引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-bo…

Python和c语言爬虫如何选择?

Python是最受欢迎的爬虫语言之一&#xff0c;因为它易于学习和使用&#xff0c;有大量的库和框架可供选择。JavaScript通常用于Web爬虫&#xff0c;因为它可以直接在浏览器中运行&#xff0c;可以轻松地从动态网站中提取数据。java是一种广泛使用的语言&#xff0c;它有很多强大…

提高电商平台精准营销效果的IP定位离线库应用场景

随着电子商务的快速发展&#xff0c;越来越多的人们选择在线购物。随之而来的是消费者数量的增加和商品竞争的激烈。如何精准地找到目标客户&#xff0c;并进行有效的营销&#xff0c;成为了电商平台需要攻克的难题。在这种情况下&#xff0c;IP定位离线库技术的应用成为了电商…

Python基础语法第一章、认识Python

一、计算机基础概念 1.1什么是计算机? 很多老一辈的人, 管下面这个叫做计算机. 然鹅, 它只是 "计算器", 和计算机是有很大区别的. 现在我们所说的计算机, 不光能进行算术运算, 还能进行逻辑判断, 数据存储, 网络通信等等功能, 以至于可以自动的完成非常复杂的工作…