稍微得空,简单记录下之前看到的一个号称可以分割一切显微图像micro-SAM工具。
micro-SAM是在Facebook于2023年推出的SAM(Segment Anything Model)模型上针对显微成像数据进行微调得到的一个图像分割模型。该项工作已经于2025年2月发表在 Nature Methods杂志。
SAM刚出来的时候我尝试过网页版的,效果惊为天人。通过在图像上进行简单的标注提示,就能够非常准确地分割你想要分割的任何物体。但是当时我觉得这个还是需要人工提示(类似使用大语言模型的prompt),想要做自动化还得结合其他一些方法。后来看到有一些工作结合了 YOLO 和 SAM 来实现,这个对于普通用户来讲还是挺「笨重」的。再后来 napari 上出来了一个napari-sam插件,总算是给普通用户提供了一个相对简单易用的入口。但这个napari-sam插件只能解决用户成像数据分析中的一个环节,就是快速地选取目标,避免了像素级的ROI圈选过程,从而提高分析速度。但这个还是不够自动,所以当时我认为这个对于我来说,只是一个不错的数据标注辅助工具。
micro-SAM相对来说服务更加到位,算是给成像数据分析提供了一个更加实用且友好的工具,将SAM这类模型出色的图像分割能力更好地提供给大量普通用户。
首先为了更好地适应显微成像数据,他们对SAM模型做了微调。事实上SAM出来之后很快就有一些做医学影像的工作在各种尝试应用SAM然后就发现这个模型多少有点吹牛。所以到了特定的领域,为了实现更好的效果,还是得对SAM进行微调。但不同于U-Net这些早年的卷积神经网络,SAM的网络结构更加复杂,参数量也大得多,所以对SAM的微调,还是需要点技术实力和算力数据支持的。而捣鼓了这个micro-SAM的团队来自哥廷根大学计算机科学研究所,显然是具备上述能力和条件的。
但微调SAM这件事情说句实在话,就像是从80多分提升到90分。在实际应用场景中如果仅此而已的话,作为用户我并不会有足够的动力从 napari-sam 插件切换到 micro-sam。但文章发Nature Methods总归是要展现一点技术实力。
所以关键还是这个工具的易用性。根据文章介绍,他们提供了一个统一的分割框架,可适用于:2D 显微图像3D 体积数据时间序列(time-lapse)成像多种成像技术(如共聚焦显微镜、透射电子显微镜等)。然后结合了交互式和自动化分割,使研究人员能够交互式调整分割结果,提高准确性。自动化分割,使其更鲁棒(robust)且适用于大规模数据处理。加速数据标注与修正流程,减少人工操作的时间成本。其实上述这些功能的实现相对就属于业务代码了,抄抄改改的都能搞定,而且他们还是以napari的插件形式构建,省去了大量用户界面以及数据IO相关代码的工作量。
除了功能上充分照顾实际用户的需求,而且这个工具同时还发布了详细且规范的软件使用文档说明以及操作视频。所以这里我就不再赘述这个软件怎么使用了。
microSAM因为模型比较大,所以对电脑配置要求还是有点高的。GPU起码是NVIDIA RTX A5000以上,内存32GB以上吧,CPU的话建议主频比较高,核数比较多的。
最后再谈谈感想。两年的时间,五个人的开发团队,做了这么一个工具,工作量不能说很大,但是完成度真是太高了。无论是论文还是说明文档都能感受到他们的精心准备。说实话在2023年决定做这个事情风险还是很大的,因为那个时候ilastik或者cellpose正是当红之时,某种意义上用户分析显微成像数据已经不太缺工具了。就像我在博客里多次提到的,很多需求可以通过多个工具的组合运用来完成。现在看来,这种想法多少有点技术虚荣心。对于普通用户而言,数据分析这个事情就是要越简单傻瓜操作越好。而事实也充分证明,能够充分考虑用户需求的工具就是好卖。
PS:由于某些原因,安装micro-SAM可能需要科学上网,另外视频教程也是在Youtube上的,为了方便学习,我已经源代码和视频教程打包搬运到百度网盘,下载链接如下:
通过网盘分享的文件:micro-sam-1.4.0.7z
链接: https://pan.baidu.com/s/1309FLh51X4WXsLZ4kIiUAQ 提取码:
此处评论已关闭