最大规模评测!通用AI大模型Segment Anything在医学影像分割的性能究竟如何?

2023-05-16

关注公众号,发现CV技术之美

今天推荐一篇医学图像分析领域的最新研究成果:

b87a00853f6f6a362831c6ee449628df.png

深圳大学:倪东教授课题组   

论文作者:黄雨灏,杨鑫,刘恋,周涵,常澳,周心睿,陈汝锶,余俊轩,陈炯权,陈超宇,池昊哲,胡歆迪,刘思菁,范登平,董发进#,倪东#

研究成果链接:

https://arxiv.org/pdf/2304.14660.pdf

近半年来,ChatGPT、DALL·E等引发了大规模基础AI模型的狂潮。4月初,Meta AI 发布第一个用于图像分割的大规模基础模型Segment Anything Model (SAM)。SAM最大的亮点是它对未知的数据集和任务具有良好的零样本(zero-shot)分割性能。分割过程可全自动(Everything模式)或由不同的手工提示(Prompt模式)驱动,例如,文字、点和方框。

c5fd3632d3f66271a6e10ea6a0292790.gif

虽然SAM在各种自然图像分割任务上取得了令人印象深刻的结果,但医学图像分割由于多样的成像模式、精细的解剖结构、不明确且复杂的边界以及广泛的物体尺度等而具有极大的挑战性,其在大型医学影像数据集上的表现还有待验证。深圳大学生物医学工程学院倪东教授智能超声团队联合苏黎世联邦理工学院、深圳市人民医院、浙江大学和深圳度影医疗科技等单位整理了一个有55.3万张图像,包含16种影像模态、68种生物医学领域分割目标的超大规模医学影像分割数据集COSMOS 553K,并基于该数据集率先对SAM进行了全面、多角度、大规模的细致评估,旨在促进医学影像分析的发展,并回答一个重要问题:SAM对医学影像分割的性能究竟如何?

数据集展示

为了全面评估分析SAM在医学影像分割上的表现,团队收集并标准化了52个公共数据集,最终整理构建了一个包含16种影像模态和68种生物医学领域分割目标(表1)的大型医学影像分割数据集COSMOS 553K,数据集的展示见图1,统计信息见图2。

ff44d23c52bb51ba32e88c4d8d9104ef.png

表1 COSMOS 553K包含的分割目标。H:头颈部;C:胸部;A:腹部;P:盆部;B:骨头;O:其它。

7f7aac97ed67640d76b86ff2759512bf.png图1 COSMOS 553K涵盖了大多数医学影像模态和生物医学领域分割目标。例如,脑肿瘤、眼底血管、甲状腺结节、脊柱、肺、心脏、腹部器官或肿瘤、细胞、息肉和手术仪器等。人体图像来自Freepik,作者为brgfx(网址https://www.freepik.com/free-vector/anatomical-structure-human-body 27539420.htm)。

eaeef2edf87a6314a6bdb1b84f9aef3c.png图2 COSMOS 553K的统计信息。(a)收集到的公开数据集处理后的数据量;(b)目标类别的直方图分布;(c)影像模态的直方图分布;(d)图像分辨率的直方图分布。

方法展示

SAM提供不同类型的分割提示Prompt,包括点和方框等。点的提示包括表示前景的正样本和表示背景的负样本点。方框表示需要分割的物体的区域。我们的测试策略包括Everything模式:自动分割 (S1H, S1B)以及Prompt模式:单个正样本点 (S2)、五个正样本点 (S3)、五个正样本点和五个负样本点 (S4)、单个方框 (S5)、单个方框和单个正样本点(S6),图3展示了我们设计的SAM测试框架。

7fb6467ff5d878e83fa41a31ed37eb73.png图3 本研究设计的SAM详细测试框架。

结果分析

本研究全面地评估了SAM的各种模式在大规模、多样化的医学影像数据集上的分割性能,DICE指标评估结果如图4所示。

9dfc9440b2f002a5a6666bd570b87a20.png图4 不同测试策略的DICE箱线图。从上到下:S1H、S2、S3、S4、S5、S6。

基于实验分析,我们的主要结论如下:

  • Everything模式不适用于大多数医学影像分割任务。在这种模式下,SAM对医学分割目标的感知能力较差,会输出大量的假阳性预测掩膜(图5)。

  • 在Everything模式下,作为提示的网格采样点数量会在一定程度上影响分割性能,如图6所示。这是一个分割性能和测试效率的权衡。

  • 在Prompt模式下,加入更多前景点可显著提高SAM的分割结果。但医学影像中的前景和背景很容易混淆,随机加入负样本点可能会引起分割性能下降。此外,方框提示(S5)包含丰富的物体位置信息。因此,在我们的研究中,方框提示在大多数医学分割任务中比点提示表现好。在目前的研究中,混合策略(同时加入点提示和方框提示)的性能没有明显提升。这可能与SAM对混合提示的编码能力有关。图7和图8展示了SAM在各种测试策略下的可视化结果。

  • 分割目标的不同属性可能影响SAM对医学分割目标的感知能力。特别是,SAM可能会对具有复杂形状、小面积或低对比度的目标分割效果不好。图9展示了DICE与目标的不同属性之间的关系。

e8c90cd0bdd0011c533c40fb9e24d018.png图5 Everything模式的可视化结果。

588bda29410ff51de23e3f3ee9fce2ed.png图6 Everything模式下网格采样点数量对分割性能的影响。

09f96242849b044338b03225446405ed.png图7 典型的SAM良好案例。

dff1f0537ca22f6d6cd42d4145be57a6.png图8 典型的SAM失败案例。

8c0ffbf3f2302cc1e3b11096cac82295.png图9 DICE与目标不同属性的散点图。

总的来说,尽管SAM有可能成为一个通用的医学影像分割模型,但它在医学影像分割任务中的表现目前还不稳定。因此,未来的研究重点应该在如何有效地使用少量医学影像来微调SAM以提高模型的可靠性,搭建属于医学影像的Segment Anything模型。此外,拓展3D-SAM, 并探索其对三维容积数据的分割性能也是一个有趣的方向。我们希望这份报告能较为详尽地帮助读者和社区更好地了解SAM在医学影像分割中的性能优劣,并最终促进新一代医学影像分割基础大模型的发展。

真诚感谢所有公开数据集的组织者和所有者的开源贡献,我们也将筹备开源所整理的数据集,以促进领域和社区发展。同时,也非常感谢Meta AI公开发布了SAM的源代码。

源码链接:https://github.com/facebookresearch/segment-anything

来自深圳大学生物医学工程学院智能超声实验室(MUSIC Lab)的博士研究生黄雨灏、陈超宇,硕士研究生刘恋、周涵、常澳、周心睿、刘思菁和本科生陈汝锶、余俊轩、陈炯权深度参与了本次研究。

680013e39496e78ad97d8b90df606288.png

e2b3bc13c5bee8a401daa04ab3da05c9.jpeg

END

欢迎加入「医学影像分割交流群👇备注:Med

7def56e70a4deaa33e55e4b55ed7cf10.png

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

最大规模评测!通用AI大模型Segment Anything在医学影像分割的性能究竟如何? 的相关文章

  • arduino/Mixly心知天气

    一 准备 首先百度一下心知天气 xff0c 获取一下密钥 xff0c 具体的可以看这一篇Blynk中WebHook组件的使用方法 moshanghuaw的博客 CSDN博客 然后再准备一个esp8266或者esp32都可以 二 程序 mix
  • C For Linux之内存访问-内存简介

    1 内存 1 1 计算机为什么需要内存 存储器是计算机系统中非常重要的组成部分 计算机中的存储器分为两类 xff1a 内存储器的外存储器 xff08 也叫辅助存储器 xff09 所谓外存储器在PC机中一般指硬盘 U盘 光盘等 xff0c 而
  • 每天一分钟玩转golang:基础类型之字符串(四)

    大家好 xff0c 我是加摩斯 xff0c 觉得文章有帮助的小伙伴 xff0c 记得一键三连哟 xff5e 申明 xff1a 本系列两天更新一篇 xff0c 纯原创 xff0c 转载前请与我沟通 字符串类型也是一种基本类型 xff0c 底层
  • 项目二:电子骰子

    项目二 xff1a 电子骰子 文章目录 项目二 xff1a 电子骰子一 导入 5分钟 xff09 学习目的 二 新授 65分钟 1 预展示结果 5分钟 2 本节课所用的软硬件 5分钟 3 硬件介绍 1分钟 4 图形化块介绍 1分钟 5 单个
  • 项目三:双人骰子

    项目三 xff1a 双人骰子 文章目录 项目三 xff1a 双人骰子一 导入 5分钟 xff09 学习目的 二 新授 65分钟 1 预展示结果 5分钟 2 本节课所用的软硬件 5分钟 3 硬件介绍 1分钟 4 图形化块介绍 1分钟 5 单个
  • 项目四:无极调光台灯

    项目四 xff1a 无极调光台灯 文章目录 项目四 xff1a 无极调光台灯一 导入 5分钟 xff09 学习目的 二 新授 65分钟 1 预展示结果 5分钟 2 本节课所用的软硬件 5分钟 3 硬件介绍 5分钟 4 图形化块介绍 10分钟
  • Windows10安装anaconda之后pip3不能使用

    1 在命令行中切换到你自己的anaconda环境中 xff0c 2 在命令行中 xff0c 切换到你的anaconda环境中的Scripts目录中像我是在 xff1a D software anaconda3 az envs py3 pyt
  • UE4蓝图通信-蓝图接口

    蓝图接口 除了最常用的cast to蓝图节点可以实现通信以外 xff0c 进阶的通信方式就是蓝图接口 目的 xff1a 与多个对象中的特定几个对象进行通信方式 xff1a 对检测到的对象发送消息消息 xff1a 发出的消息是接口消息 xff
  • UE4蓝图通信-事件分发器(Event Dispatcher)

    事件分发器在蓝图编辑器的我的蓝图选项卡中创建 在我的蓝图 xff08 My Blueprint xff09 面板中的 进行创建输入事件分发器的名称 xff0c 该字段显示在 我的蓝图 xff08 My Blueprint xff09 选项卡
  • UE4项目优化(帧数优化)相关知识

    控制台命令 r screenpercentage 0 100 0是百分之百 如果改了这个 游戏运行超级流畅说明瓶颈在GPU上stat fps 显示帧率 Frame Per Second 或者快捷键Crlt 43 Shift 43 H 显示帧
  • 计算机图形学【GAMES-101】2、光栅化(反走样、傅里叶变换、卷积)

    快速跳转 xff1a 1 矩阵变换原理Transform 旋转 位移 缩放 正交投影 透视投影 2 光栅化 反走样 傅里叶变换 卷积 3 着色计算 深度缓存 着色模型 着色频率 4 纹理映射 重心坐标插值 透视投影矫正 双线性插值MipMa
  • 计算机图形学【GAMES-101】10、材质(BRDF)(折射、菲涅尔项、微表面模型、各向异性材质)

    快速跳转 xff1a 1 矩阵变换原理Transform 旋转 位移 缩放 正交投影 透视投影 2 光栅化 反走样 傅里叶变换 卷积 3 着色计算 深度缓存 着色模型 着色频率 4 纹理映射 重心坐标插值 透视投影矫正 双线性插值MipMa
  • 【重心坐标插值、透视矫正插值】原理以及用法见解(GAMES101深度测试部分讨论)

    文章目录 1 Barycentric Coordinates xff08 重心坐标 xff09 1 1 重心坐标概念1 2 重心坐标计算方式1 3 重心坐标插值 2 重心坐标计算公式推导3 透视投影插值矫正3 1 透视矫正后的 96 深度插
  • gcc之inline函数探究

    1 引子 xff1a 内联函数 xff08 以下称为inline函数 xff09 的行为类似于宏 xff0c 但是会像函数一样进行参数的静态类型检查 因此gcc中很多地方倾向于使用inline函数来替代宏 但是inline函数在gcc中应该
  • Visual Studio中多个源文件、多个main()函数如何分开运行

    对于跟网课的小伙伴 xff0c 有些初学者可能像我以前一样 xff0c 想记录每一课的代码 xff0c 会一节课一个 sln解决方案 xff0c 这样非常不方便 如果一个 cpp放一个main函数 xff0c 再F5运行肯定报错咯 xff0
  • C++中的变参宏 #define MyMacro(...)(__VA_ARGS__)

    span class token macro property span class token directive hash span span class token directive keyword define span span
  • 使用premake帮助生成Visual Studio解决方案

    Premake xff1a https github com premake premake core Premake 是一个基于 Lua 脚本语言的构建系统工具 xff0c 用于生成项目文件和构建脚本 xff0c 能够帮助开发者快速创建和
  • Vulkan中renderpass、subpass、dependency的见解

    在Vulkan中 xff0c 渲染通道 Render Pass 是一个描述渲染过程中使用的附件的对象 xff0c 可以包含多个 subpass 和附件依赖关系 假设我们需要创建一个render pass xff0c 它包含2个附件 1个子通
  • string和char*互转以及c_str()的陷阱

    string类型和char char 的转换 string转const char 1 使用string的成员函数c str 2 使用string的成员函数data 3 注意事项 xff1a c str 和data 的不同之处在于 data
  • 机器人视觉场景理解挑战赛

    这是澳大利亚机器人视觉中心发起的一项比赛 xff0c 刚刚开始 xff0c 欢迎做机器人 SLAM 场景理解的朋友参与 1 主要特点 BenchBot xff0c 用于运行语义场景理解算法的完整软件堆栈 仅需几行Python代码即可在逼真的

随机推荐