SCI 1区论文:Segment anything in medical images(MedSAM)[文献阅读]

基本信息

  • 标题:Segment anything in medical images
  • 中文标题:分割一切医学图像
  • 发表年份: 2024年1月
  • 期刊/会议: Nature Communications
  • 分区: SCI 1区
  • IF:16.6
  • 作者: Jun Ma; Bo Wang(一作;通讯)
  • 单位:加拿大多伦多大学 健康网络中心
  • DOI:https://doi.org/10.1038/s41467-024-44824-z
  • 开源代码:https://github.com/bowang-lab/MedSAM

摘要: 医学图像分割是临床实践中的一个关键组成部分,有助于准确诊断、治疗计划和疾病监测。然而,现有的方法通常针对特定的模式或疾病类型,在各种医学图像分割任务中缺乏可推广性。在这里,我们介绍了MedSAM,这是一个基础模型,旨在通过实现通用医学图像分割来弥合这一差距。该模型是在大型医学图像数据集上开发的,有1570263对图像-掩码对,涵盖10种成像模式和30多种癌症类型。我们对86个内部验证任务和60个外部验证任务进行了全面评估,证明了比模态专家模型更好的准确性和稳健性。通过在广泛的任务中提供准确高效的分段,MedSAM在加快诊断工具的发展和治疗计划的个性化方面具有巨大潜力。

章节速览

  • Introduction
    1. Results
    • 1.1 MedSAM:快速医学图像分割的基础模型
    • 1.2 定量和定性分析
    • 1.2 训练数据集大小的影响
    • 1.4 MedSAM提升标注效率
    1. Discussion
    1. Methods
    • 3.1 数据集管理和预处理
    • 3.2 网络架构
    • 3.3 训练方案及实验设置
    • 3.4 损失函数
    • 3.5 人类注释
    • 3.6 评估指标
    • 3.7 统计分析
    • 3.8 使用软件
    • 3.9 报告总结

Introduction

医学图像分割领域对通用模型的需求日益增长:即一次训练后能够应用于广泛分割任务的模型。这样的模型不仅在模型容量方面表现出更高的多功能性,还有可能在不同任务中产生更加一致的结果。

然而,由于自然图像与医学图像之间存在显著差异,因此分割基础模型(例如 SAM)在医学图像分割领域的适用性仍然有限。SAM本质上是一种可提示的分割方法,需要使用点或边界框来指定分割目标

许多研究已经将开箱即用的SAM模型应用于典型的医学图像分割任务和其他具有挑战性的场景。我们进一步介绍了MedSAM,这是一种改进的基础模型,可显着增强 SAM 在医学图像上的分割性能。MedSAM 通过在包含超过一百万对医学图像-掩模对的前所未有的数据集上微调 SAM 来实现这一目标

1. Results

1.1 MedSAM:快速医学图像分割的基础模型

MedSAM 旨在发挥通用医学图像分割基础模型的作用。构建此类模型的一个关键方面是能够适应成像条件、解剖结构和病理条件的各种变化。为了应对这一挑战,我们策划了一个多样化的大规模医学图像分割数据集,其中包含 1,570,263 个医学图像掩模对,涵盖 10 种成像模式、30 多种癌症类型和多种成像协议

图1 该数据集涵盖了各种解剖结构、病理状况和医学成像模式。洋红色轮廓和掩模叠加分别表示专家注释和 MedSAM 分割结果

图1 轮廓细节

图 2a概述了数据集中不同医学成像模式的图像分布,按总数排序。很明显,计算机断层扫描(CT)、磁共振成像(MRI)和内窥镜检查是主要的检查方式,反映出它们在临床实践中的普遍性。

图 2a 数据集中不同医学成像模式的图像分布

我们采用了SAM中的网络架构,包括图像编码器、提示编码器和掩模解码器(图2b)。图像编码器将输入图像映射到高维图像嵌入空间。提示编码器通过位置编码将用户绘制的边界框转换为特征表示。最后,掩模解码器使用交叉注意力(方法)将图像嵌入和提示特征融合在一起。

图 2b 网络架构

1.2 定量和定性分析

我们通过内部验证和外部验证评估了 MedSAM。内部验证包含 86 个分割任务。外部验证包括 60 个分割任务,所有这些任务要么来自新数据集,要么涉及看不见的分割目标

图3:内部验证集的定量和定性评估结果

1.3 训练数据集大小的影响

我们还研究了不同数据集大小对 MedSAM 性能的影响,因为训练数据集大小已被证明对模型性能至关重要。我们还在两种不同的数据集大小上训练了 MedSAM:10K 和 100K 图像,并将它们的性能与默认的 MedSAM 模型进行了比较

图 5a:训练数据集大小的影响

增加训练图像的数量显着提高了内部和外部验证集的性能

1.4 MedSAM提升标注效率

此外,我们进行了人工注释研究来评估两个管道的时间成本(方法)。对于第一个管道,两名人类专家以逐片方式手动注释 3D 肾上腺肿瘤。对于第二条流程,专家们首先每隔3-10片用线性标记(初始标记)绘制肿瘤长轴和短轴,这是肿瘤反应评估的常见做法。然后,使用 MedSAM 根据这些稀疏线性注释对肿瘤进行分割。结果表明,在 MedSAM 的帮助下,两位专家的注释时间分别大幅减少了 82.37% 和 82.95%

图5 b MedSAM 可用于大幅减少注释时间成本

2. Discussion

尽管 MedSAM 拥有强大的功能,但它也存在一定的局限性

  • 训练集中的模态不平衡,其中 CT、MRI 和内窥镜图像在数据集中占主导地位。这可能会影响模型在较少代表性的模式(例如乳房X光检查)上的性能。
  • 它在分割血管状分支结构方面存在困难,因为在此设置中边界框提示可能不明确。例如,在眼底图像中,动脉和静脉共享相同的边界框。

然而,这些限制并没有削弱 MedSAM 的实用性。由于 MedSAM 从大规模训练集中学习了丰富且有代表性的医学图像特征,因此可以对其进行微调,以有效地将新任务从代表性较低的模式或复杂的结构(如血管)中分割出来。

3. Methods

3.1 数据集管理和预处理

数据来源:这些数据集是从互联网上的各种来源获得的,包括TCIA、Kaggle、Grand-Challenge、Scientific Data、CodaLab 和MICCAI。

数据处理:所有3D 数据集(DICOM、nrrd 或 mhd 格式)都转换为广泛使用的 NifTI 格式。此外,灰度图像(例如 X 射线和超声)以及 RGB 图像(包括内窥镜检查、皮肤镜检查、眼底和病理图像)也被转换为 png 格式。

归一化方案

  • CT图像归一化:对 Hounsfield 单位进行归一化。软组织、肺和脑所采用的窗口宽度和水平值分别为(W:400,L:40)、(W:1500,L:-160)和(W:80,L:40)。随后,强度值被重新调整到 [0, 255] 的范围。
  • MR、X 射线、超声波、乳房 X 光检查和光学相干断层扫描 (OCT) 图像,我们将强度值剪裁到第 0.5 个百分位数和第 99.5 个百分位数之间的范围,然后将其重新缩放到 [0, 255] 范围。
  • RGB图像(例如内窥镜、皮肤镜、眼底和病理图像),如果它们已经在[0, 255]的预期强度范围内,则它们的强度保持不变。但是,如果它们超出此范围,我们会利用最大-最小归一化将强度值重新调整为 [0, 255]。

图像尺寸

最后,为了满足模型的输入要求,将所有图像调整为统一大小1024×1024×3。对于全幻灯片病理图像,使用滑动窗口方法提取无重叠的斑块。位于边界上的斑块用 0 填充到该大小。对于 3D CT 和 MR 图像,每个 2D 切片的大小调整为 1024 × 1024,并且通道重复 3 次以保持一致性。其余的 2D 图像直接调整为 1024 × 1024 × 3。

3.2 网络架构

本研究中使用的网络是基于Transformer架构,该架构在自然语言处理和图像识别等各个领域展现出了显著的有效性。具体而言,该网络包括一个基于Vision Transformer(ViT)的图像编码器,负责提取图像特征;一个提示编码器,用于整合用户的交互(边界框);以及一个掩模解码器,利用图像嵌入、提示嵌入和输出令牌生成分割结果和置信度分数。

3.3 训练方案及实验设置

模型使用预先训练的 SAM 模型和 ViT-Base 模型进行初始化。损失函数是Dice损失和交叉熵损失之间的未加权总和。AdamW 优化器(β 1 = 0.9,β 2 = 0.999)进行优化,初始学习率为 1e-4,权重衰减为 0.01。全局批量大小为 160,未使用数据增强。该模型在 20 个 A100 (80G) GPU 上进行了 150 个 epoch 的训练,并选择最后一个检查点作为最终模型。

看到最后,20 个 A100,我欣慰了,并不是我脑子不够用才发不了这么好的文章

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

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

相关文章

文件绕过-Unsafe Fileuoload

文件上传基础 什么是文件上传 将客户端数据以文件形式封装通过网络协议发送到服务器端,在服务器端解析数据,最终在服务端硬盘上作为真实的文件保存。 通常一个文件以HTTP协议进行上传时,将以POST请求发送至Web服务器,Web服务器…

【初中生讲机器学习】6. 分类算法中常用的模型评价指标有哪些?here!

创建时间:2024-02-07 最后编辑时间:2024-02-09 作者:Geeker_LStar 你好呀~这里是 Geeker_LStar 的人工智能学习专栏,很高兴遇见你~ 我是 Geeker_LStar,一名初三学生,热爱计算机和数学,我们一起加…

【原创 附源码】Flutter海外登录--Google登录最详细流程

最近接触了几个海外登录的平台,踩了很多坑,也总结了很多东西,决定记录下来给路过的兄弟坐个参考,也留着以后留着回顾。更新时间为2024年2月8日,后续集成方式可能会有变动,所以目前的集成流程仅供参考&#…

[UI5 常用控件] 08.Wizard,NavContainer

文章目录 前言1. Wizard1.1 基本结构1.2 属性1.2.1 Wizard:complete1.2.2 Wizard:finishButtonText1.2.3 Wizard:currentStep1.2.4 Wizard:backgroundDesign1.2.5 Wizard:enableBranching1.2.6 WizardStep:…

PKI - 03 密钥管理(如何进行安全的公钥交换)

文章目录 Pre密钥管理面临的挑战安全密钥管理的几种方式手动密钥交换与确认受信任的介绍 Pre PKI - 02 对称与非对称密钥算法 密钥管理面临的挑战 密钥管理面临的挑战主要包括以下几点: 安全的公钥交换:在使用基于非对称密钥算法的服务之前&#xff0c…

清理神器CleanMyMac X 空间透镜——可视化您的磁盘空间 空间透镜有什么用

不久前,CleanMyMac X 发布了一个新功能: 空间透镜 相信有非常多的小伙伴和小编一样, 对这个功能一脸问号 这啥玩意儿??? 今天就让我们深入了解一下, CleanMyMac X 的空间透镜功能。 - 更好…

嵌入式单片机中晶振的工作原理

晶振在单片机中是必不可少的元器件,只要用到CPU的地方就必定有晶振的存在,那么晶振是如何工作的呢? 什么是晶振 晶振一般指晶体振荡器,晶体振荡器是指从一块石英晶体上按一定方位角切下的薄片,简称为晶片。 石英晶体谐…

吉他学习:识谱,认识节奏,视唱节奏,节拍器的使用

第九课 识谱https://m.lizhiweike.com/lecture2/29362692 第十课 基础乐理(二)——节奏篇https://mp.csdn.net/mp_blog/creation/editor?spm=1011.2124.3001.6192

Redis核心技术与实战【学习笔记】 - 27.限制Redis Cluster规模的因素(通信开销)

简述 Redis Cluster 能保存的数据量以及支撑的吞吐量,跟集群实例规模相关。 Redis 官方给出了 Redis Cluster 的规模上线,就是一个集群运行 1000 个实例。 其实,限定 Redis Cluster 集群规模的一个关键因素就是,实例间的通信开销…

Vue源码系列讲解——虚拟DOM篇【三】(更新子节点)

1. 前言 在上一篇文章中,我们了解了Vue中的patch过程,即DOM-Diff算法。并且知道了在patch过程中基本会干三件事,分别是:创建节点,删除节点和更新节点。创建节点和删除节点都比较简单,而更新节点因为要处理…

12个最常用的matplotlib图例 !!

文章目录 1、折线图 2、散点图 3、直方图 4、柱状图 5、箱线图 6、热力图 7、饼图 8、面积图 9、等高线图 10、3D图 11、时间序列图 12、树状图 总结 1、折线图 折线图(Line Plot):用于显示数据随时间或其他连续变量的变化趋势。在实际项目中…

【Linux驱动】块设备驱动(三)—— 块设备读写(不使用请求队列)

并非每种块设备都会用到请求队列,从上节可以知道,请求队列的作用是管理和调用IO请求,那么反过来想,如果IO请求较少,那就可以无需使用请求队列。在以下情况中,可以不使用请求队列。 单任务环境: 当系统中只有…

VRRP配置

目录 网络拓扑图 配置要求 配置步骤 网络拓扑图 配置要求 按照图示配置 IP 地址和网关在 SW1,SW2,SW3 上创建 Vlan10 和 Vlan20,对应 IP 网段如图,交换机之间链路允许所有 VLAN 通过在 SW1 和 SW2 上配置 VRRP,要求…

在windows server2016部署域控服务器DC

1.正常配置vmware虚拟机基础环境 2.启动虚拟机,会先到efi network,等待几分钟 3.进入boot manager,选择启动方式,记得提示CD启动的时候需要按回车,不然又会回到这个界面 4.选择安装版本为桌面版(开始直接…

无题2024

念旧 阿悠悠 专辑:念旧 发行时间 2019-08-25 念旧 播报编辑讨论1上传视频 阿悠悠演唱歌曲 《念旧》是由一博作词,一博和张池作曲,阿悠悠演唱的歌曲,发行于2019年8月25日。 [1]收录于同名专辑《念旧》中。 相关星图 查…

(四)elasticsearch 源码之索引流程分析

https://www.cnblogs.com/darcy-yuan/p/17024341.html 1.概览 前面我们讨论了es是如何启动,本文研究下es是如何索引文档的。 下面是启动流程图,我们按照流程图的顺序依次描述。 其中主要类的关系如下: 2. 索引流程 (primary) 我们用postman发送请求&…

Windows Server 2025 Hyper-V 新变化

今天简单跟大家聊聊Windows Server 2025 Hyper-V一些新功能新变化,具体如下: 在 VM 之间共享 GPU 随着图形处理器的重要性日益增加,特别是由于它们在 AI 应用程序中的核心作用,Hyper-V 中对 GPU 的现有支持已不再足够。到目前为…

[Java][算法 哈希]Day 01---LeetCode 热题 100---01~03

LeetCode 热题 100---01~03 ------->哈希 第一题 两数之和 思路 最直接的理解就是 找出两个数的和等于目标数 这两个数可以相同 但是不能是同一个数字(从数组上理解就是内存上不是同一位置) 解法一:暴力法 暴力解万物 按照需求 …

报错ValueError: Unknown CUDA arch (8.6) or GPU not supported

文章目录 问题描述解决方案参考文献 问题描述 报错 ValueError: Unknown CUDA arch (8.6) or GPU not supported 本人显卡为 RTX 3060,CUDA 为 10.2,PyTorch 为 1.5 解决方案 修改 C:\Users\Administrator\Envs\test\Lib\site-packages\torch\utils\c…

【PyQt】08 - 编辑Tab顺序

文章目录 前言一、Tab顺序二、编辑Tab顺序总结 前言 介绍了什么是Tab顺序,以及如何修改Tab顺序。 一、Tab顺序 当你的界面设计好之后,在输入栏按住Tab按键,他会按照你摆放的顺序一次转跳 二、编辑Tab顺序 方法一 然后鼠标左击就可以改变…