为3D医疗数据创建标注既耗时又需要高度专业技能。已经实现了许多工具来协助这一过程。Segment Anything Model 2(SAM 2)是一种通用提示基础分割算法,旨在为视频标注。 在本论文中,作者将这个模型应用于3D医学图像标注,并将其作为3D Slicer流行标注软件的一个扩展提供。作者的扩展允许用户在2D切片上放置点提示以生成标注 Mask ,并以单向或双向方式在整个体积中传播这些标注。 作者的代码已在https://github.com/mazurowski-lab/SlicerSegmentWithSAM上公开供人下载,也可以直接从3D Slicer扩展管理器中轻松安装。
1 Introduction
医学影像分割是医学影像的重要组成部分,涉及使用各种影像模式(如计算机断层扫描(CT)、磁共振成像(MRI)、正电子发射计算机断层扫描(PET)、超声[5]和X射线)准确界定解剖结构和病理区域。精确分割对提高诊断准确性、优化治疗计划,以及最终改善患者预后至关重要[9, 10]。当前的深度学习方法在自动化分割过程中表现出色[7, 12, 18]。然而,训练这些自动模型仍然严重依赖手动专家标注,这既昂贵又耗时。为了加快标注过程,一种策略是利用已训练好的模型辅助标注[16, 22]。
由于医学影像模式多种多样,因此微调模型非常困难,通常需要对每个模式进行重新训练[23]。切片 Anything 模型(SAM)[6]作为一种分割基础模型,解决了这个问题,提供了一种零样本分割解决方案,以处理不同模式的医学图像。此外,SAM 实现了一种基于提示的交互式分割模式。为了提高标注医疗图像的准确性和效率,研究行人已在医学图像数据[4, 14]上对 SAM 进行了微调,并将其自动模型集成到3D切片器中,这是一个用于分析和可视化医学图像的开放式软件平台[3]。
医学影像数据通常为 3D 格式,如 CT 或 MRI。为了有效地捕捉 3D 医学影像体积数据中切片之间的空间关系以及医学视频中 2D 帧的关系,研究行人已将 SAM 调整为处理 3D 分割任务,例如 SAM3D [1],SAM-Geo3D [21] 和 SAM-Med3D [17]。最近,SAM 2 发布,通过结合记忆库保留了自过去预测的信息,增强了在视频中(3D)的分割过程[11]。与基于 SAM 的其他 3D 模型不同,SAM 2 基本上通过扩展 SAM Backbone 到 3D 解决了这个问题。某些研究表明了 SAM 2 在处理医学影像数据方面的能力。
在这篇论文中,作者描述了一个将 SAM 和 SAM 2 集成到 3D 切片中,允许用户使用熟悉的软件环境中的混合提示模式交互式创建标注的插件。作者的贡献可以总结如下:
- 作者将 SAM 2 集成到 3D 切片中,使用户可以将标注在 3D 体积中的任何切片处双向传播。
- 作者保留了作者在[20]中描述的 2D 可提示分割特征,这对 SAM 和 SAM 2 都适用。
- 作者的扩展涉及 SAM 和 SAM 2 提供的所有预训练权重。
2 Methodology
在本研究中,作者旨在通过在3D Slicer中添加SAM 2模型,将SAM集成到该软件中,实现对医学数据的2D分割。3D Slicer的用户界面作为用户和SAM模型之间的通信渠道。用户需要将他们的医学数据在3D Slicer中打开,并为他们想要分割的任何切片提供所需的提示。用户可以任意使用任何SAM或SAM 2模型的2D图像预测器进行切片分割。SAM 2除2D图像分割外,还提供视频分割功能。当给定适当的提示输入时,它可以让用户跟踪视频帧中的单个或多个行人。因此,这种功能使其成为在3D数据样本中分割感兴趣物体的可能工具。
作者特别关注如何利用SAM和SAM 2的分割能力,在3D Slicer用户界面中对2D和3D医学数据进行分割。为实现这一目标,作者为用户提供2种选择:2D和3D分割。
2D Segmentation
当用户在3D Slicer中输入提示信息时,他们可以对3D医疗图像的2D切片进行分割。在此选项中,用户可以利用SAM(ViT-H, ViT-L, ViT-B)和SAM 2(Tiny, Small, Base Plus, Large)的所有预训练权重。用户可以根据自
3D Segmentation
为了将3D医疗成像数据(如CT或MRI)作为视频进行处理,作者将每一层视图都视为视频中的一帧。这样,用户可以在放置在条件切片中(即由用户输入提示的切片)的SAM 2模型的视频预测器的帮助下,对3D医疗数据的全部切片进行分割。如果他们想要将依赖于条件切片的多个切片进行分割,他们可以将从条件切片传播的分割扩展到其他切片。作者在作者的扩展中提供了两种不同的传播模式,即通过所有切片传播和向左或右传播:
2.2.1 Propagation through all slices:
在这种模式下,用户可以在放置任意切片上的提示点后,以双向的方式在该切片和其他切片之间传播产生的分割 Mask 。如果传播后的结果不满意,他们可以在分割表现较差的切片上继续添加提示点。在这种模式下,SAM 2 会将新的提示点纳入考虑范围,同时也会记住旧提示。这种模式可能对于想要从中间切片开始分割 3D 医学数据的使用者有益。
2.2.2 Propagation to left or right:
在这种模式下,用户可以将生成的 Mask 传递到左边或右边。当用户想要在某一端切割一定数量的组织结构时,这种模式更为实用。与第一种模式不同,SAM 2在这种模式下被重置,不考虑之前的提示点,类似于使用第一种模式的场景。除了第一种模式,这种模式还可以与其他模式结合使用。例如,在使用第一种模式的设置下,如果右边几层切割的效果不佳,用户可以选择在 poor segmentation mask 的第一层放置提示并进行正向传播以获取更好的整体切割效果。
Refinement
SAM和SAM 2提供了医疗图像分割的 Mask ,即使用户给它们更多的提示,可能 still 存在错误或噪声。在这种情况下,手动分割工具仍然需要以获得最终分割结果。得益于SAM预训练权重和3D Slicer之间的强连接,用户仍然可以通过使用3D Slicer的自动标注工具来优化生成的 Mask 。作为未来的工作,作者还计划在扩展的后续版本中添加支持 Box 和 Mask 输入,以便在SAM 2的视频预测器中使用。
3 Results
作者使用公开的医学数据样本,跨不同的模态来评估SAM 2的性能。在评估过程中,作者使用了来自[3, 19]的样本数据。作者的评估重点放在了肝分割上,在CT扫描的中切片上提供了三个提示(两个正样本和一个负样本),如图2(a)所示。对于MRI数据,作者的目标是分割肿瘤。作者在感兴趣区域的切片中心放置一个点提示,如图2(e)所示。
对于每个样本,在放置提示后,作者以双向方式生成分割。作者展示了在不同体积切片上的分割结果:四分之一切片(图2(b)和2(f)),中间切片(图2(c)和2(g)),三分之四处切片(图2(d)和2(h)),以及最终的3D口罩猜测。分割的口罩显示出SAM 2扩展的SegmentWithSAM性能有价值。
4 Conclusion
综上所述,作者开发了适用于SAM 2的3D Slicer扩展,从而简化了医学成像数据上的标注过程。与作者之前仅基于SAM的扩展[20]不同,这个新扩展包含了3D分割功能,这是由SAM 2提供的。详细的安装说明可在GitHub上找到,使用该扩展无需具备编码或深度学习的先验知识。
参考
[1].SAM & SAM 2 in 3D Slicer: SegmentWithSAM Extension for Annotating Medical Images.