医站点医维基

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 96|回复: 0

MedSAM

[复制链接]

1

主题

0

回帖

20

积分

新手上路

积分
20
发表于 2024-2-20 21:59:39 | 显示全部楼层 |阅读模式
本帖最后由 会飞的鱼 于 2024-2-20 22:07 编辑

安装
创建虚拟环境conda create -n medsam python=3.10 -y并激活conda activate medsam
安装Pytorch 2.0
  1. git clone https://github.com/bowang-lab/MedSAM
复制代码


进入MedSAM文件夹cd MedSAM并运行pip install -e .
开始使用
下载模型检查点并将其放置在例如,work_dir/MedSAM/medsam_vit_b


我们提供三种方法在您的图像上快速测试模型


命令行
  1. python MedSAM_Inference.py # segment the demo image
复制代码


使用以下标志分割其他图像


-i input_img
-o output path
--box bounding box of the segmentation target

Jupyter笔记本
我们提供有关CoLab的分步教程


您还可以使用 本地运行它tutorial_quickstart.ipynb。


图形用户界面
PyQt5使用pip :pip install PyQt5 或conda安装:conda install -c anaconda pyqt


  1. python gui.py
复制代码


将图像加载到 GUI 并通过绘制边界框指定分割目标。
模型训练
数据预处理
下载SAM 检查点并将其放置在work_dir/SAM/sam_vit_b_01ec64.pth.


下载演示数据集并将其解压缩为data/FLARE22Train/.


该数据集包含 50 个腹部 CT 扫描,每个扫描包含一个包含 13 个器官的注释掩模。风琴标签的名称可在MICCAI FLARE2022上找到。


运行预处理


安装cc3d:pip install connected-components-3d


python pre_CT_MR.py
分割数据集:80% 用于训练,20% 用于测试
将 CT 扫描调整至软组织窗口水平 (40) 和宽度 (400)
最大最小标准化
将图像大小重新采样为1024x2014
将预处理的图像和标签保存为npy文件
在多个 GPU 上进行训练(推荐)
该模型在 5 个 A100 节点上进行训练,每个节点有 4 个 GPU(80G)(总共 20 个 A100 GPU)。请使用 slurm 脚本开始训练过程。


sbatch train_multi_gpus.sh
训练过程完成后,请将检查点转换为SAM的格式,以便于推理。


  1. python utils/ckpt_convert.py # Please set the corresponding checkpoint path first
复制代码


在一个 GPU 上训练
  1. python train_one_gpu.py
复制代码


如果您只想训练掩码解码器,请查看0.1 分支上的教程。


致谢
我们非常感谢所有挑战组织者和数据集所有者向社区提供公共数据集。
我们感谢 Meta AI 公开提供任何分段的源代码。
我们还感谢 Alexandre Bonnet 分享这个精彩的博客
参考
  1. <blockquote>@article{MedSAM,
复制代码

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|关于我们|医维基|网站地图|Archiver|手机版|医疗之家 ( 沪ICP备2023001278号-1 )  

GMT+8, 2024-5-8 12:26 , Processed in 0.096300 second(s), 23 queries .

Designed by Medical BBS

快速回复 返回顶部 返回列表