0


在 AutoDL 平台配置 U-Mamba 环境并训练医学图像分割

在 AutoDL 平台配置 U-Mamba 环境并训练医学图像分割

相关数据和离线依赖包,网盘下载链接
链接:https://pan.baidu.com/s/1DNjtsDJOlN_4l4Vr0y9tNg?pwd=bz95
提取码:bz95

视频版

环境配置教程来源
https://blog.csdn.net/weixin_45231460/article/details/138862816
U-Mamba项目地址
https://wanglab.ai/u-mamba.html

1.U-Mamba

在这里插入图片描述

最近,处理长序列任务的 Mamba 模型较为火爆。U-Mamba 的作者设计了一个混合的 CNN-SSM(卷积神经网络 - 状态空间序列模型)块,它结合了 CNN 的局部特征提取能力以及 SSM 捕捉长距离依赖的能力,还充分利用了 UNet 的 U 型结构的优势,从而提出了 U-Mamba 网络。并且,结合 nnUnetV2 框架,该网络能够自适应各种医学分割数据。

在腹部 CT 和腹部 MRI 数据上,其效果优于 nnUNet。作者还解释,U - Mamba 分割结果中的异常值更少。例如,在腹部 CT 扫描中能生成更准确的肝脏和胃的分割 mask;在 MRI 扫描中能更好地描绘胆囊的边界。同时,在面对异质外观时,它表现得更为稳健,比如在腹部 MRI 扫描中能更好地区分脾脏的外观。
在这里插入图片描述
在这里插入图片描述

2.在AutoDL配置环境

配置这个环境,一方面是想跑通U-Mamba,一方面U-Mamba是结合了nnUnetV2,即使不跑U-Mamba,也可以在本地没有足够显卡的情况下,在AutoDL平台跑通nnUnetV2来分割自己的数据。

配置环境,最烦就是安装Mamba的causal-conv1d和mamba_ssm,根据U-Mamba官网指示来安装会报错(我),根据这个博主来安装Mamba,可以顺利跑通U-Mamba

https://blog.csdn.net/weixin_45231460/article/details/138862816

3.数据

这次分割的数据是论文中展示的腹部MRI数据,分割13个器官

4.安装环境

1.登录autoDL,开一个3090的卡。

在这里插入图片描述

2.安装依赖包
  1. #切换目录
  2. cd autodl-tmp
  3. #创建环境变量
  4. conda create -n umamba python=3.10-y
  5. #刷新环境变量
  6. conda init bash && source /root/.bashrc
  7. #激活环境
  8. conda activate umamba
  9. #安装pytorch库
  10. pip install torch==2.1.1 torchvision==0.16.1 torchaudio==2.1.1-i https://mirrors.aliyun.com/pypi/simple/#安装causal_conv1d 和 mamba,这里选择离线安装#下载离线包(已经下载)
  11. wget https://github.com/Dao-AILab/causal-conv1d/releases/download/v1.1.3.post1/causal_conv1d-1.1.3.post1+cu118torch2.1cxx11abiFALSE-cp310-cp310-linux_x86_64.whl
  12. wget https://github.com/state-spaces/mamba/releases/download/v1.1.1/mamba_ssm-1.1.1+cu118torch2.1cxx11abiFALSE-cp310-cp310-linux_x86_64.whl
  13. #上传并安装离线包
  14. pip install causal_conv1d-1.1.3.post1+cu118torch2.1cxx11abiFALSE-cp310-cp310-linux_x86_64.whl
  15. pip install mamba_ssm-1.1.1+cu118torch2.1cxx11abiFALSE-cp310-cp310-linux_x86_64.whl
  16. #验证import torch
  17. import mamba_ssm
  18. #克隆U-Mamba项目
  19. git clone https://github.com/bowang-lab/U-Mamba.git
  20. #安装umamba 所需要的其他依赖包
  21. cd U-Mamba/umamba
  22. pip install -e .

5.上传和处理数据

1.数据结构
  1. data/
  2. └─dataset.json <u>#包含数据类别,数量和模态等信息</u>
  3. └─nnUNet_preprocessed <u>#存放预处理数据</u>
  4. └─nnUNet_results <u>#存放训练模型结果 </u>
  5. └─nnUNet_raw <u>#存放原始数据</u>
  6. └─Dataset702_AbdomenMR <u>#数据集命名,Dataset三位数_数据名(Dataset703_ABC)</u>
  7. ├─imagesTr #训练用的原始数据,每个名字补_0000
  8. ├─amos_0507_0000.nii.gz
  9. ├─amos_0608_0000.nii.gz
  10. ├─imagesTs <u>#测试用的原始数据(非必需)</u>
  11. ├─amos_0901_0000.nii.gz
  12. ├─amos_0902_0000.nii.gz
  13. ├─labelsTr <u>#训练用的原始数据对应的mask</u>
  14. ├─amos_0507.nii.gz
  15. ├─amos_0608.nii.gz
  16. ├─labelsTs <u>#测试用的原始数据对应的mask(非必需)</u>
  17. ├─amos_0901.nii.gz
  18. ├─amos_0902.nii.gz
  19. ├─predictTs <u>#存放推理mask结果(非必需)</u>
2.上传data.zip到U-mamba目录下,并解压数据
  1. cd .. unzip -d ./data data.zip
3.配置环境变量(换成你的真实路径)。终端输入⬇️
  1. export nnUNet_raw="autodl-tmp/U-Mamba/data/nnUNet_raw"
  2. export nnUNet_preprocessed="autodl-tmp/U-Mamba/data/nnUNet_preprocessed"
  3. export nnUNet_results="autodl-tmp/U-Mamba/data/nnUNet_results"
4.预处理数据

702是“Dataset702_AbdomenMR”中的702

  1. nnUNetv2_plan_and_preprocess -d 702--verify_dataset_integrity
5.训练

all代表训练5折。0~4代表单独训练其中某一折

  1. #使用UMamba模型训练
  2. nnUNetv2_train 702 3d_fullres all-tr nnUNetTrainerUMambaBot
  3. #不使用U-Mamba,用nnUNet 的 3D全分辨率U-Net训练
  4. nnUNetv2_train 702 3d_fullres 0#训练过程保存的目录路径#autodl-tmp/U-Mamba/data/nnUNet_results/Dataset702_AbdomenMR/nnUNetTrainerUMambaBot__nnUNetPlans__3d_fullres/fold_all/checkpoint_best.pth
6.推理

-i 接数据输入目录

-o 接预测输出目录

-f 接推理用第几折,或者全用

-chk 接推理所需模型,默认checkpoint_final.pth(因为我没有完全训练完,没有生成checkpoint_final.pth,因此我指定读取checkpoint_best.pth)

  1. #使用UMamba模型推理
  2. nnUNetv2_predict -i ~/autodl-tmp/U-Mamba/data/nnUNet_raw/Dataset702_AbdomenMR/imagesTs -o ~/autodl-tmp/U-Mamba/data/nnUNet_raw/Dataset702_AbdomenMR/predictTs -d 702-c 3d_fullres -f all-tr nnUNetTrainerUMambaBot -chk checkpoint_best.pth
  3. #使用nnUNet 的 3D全分辨率U-Net模型推理
  4. nnUNetv2_predict -i ~/autodl-tmp/U-Mamba/data/nnUNet_raw/Dataset702_AbdomenMR/imagesTs -o ~/autodl-tmp/U-Mamba/data/nnUNet_raw/Dataset702_AbdomenMR/predictTs -d 702-c 3d_fullres -f 0-chk checkpoint_best.pth

本文转载自: https://blog.csdn.net/weixin_42990106/article/details/140236897
版权归原作者 吖查 所有, 如有侵权,请联系我们删除。

“在 AutoDL 平台配置 U-Mamba 环境并训练医学图像分割”的评论:

还没有评论