VM-UNet安装与配置完全指南
VM-UNet 项目地址: https://gitcode.com/gh_mirrors/vm/VM-UNet
项目基础介绍及编程语言
项目名称: VM-UNet
主要编程语言: Python
VM-UNet是“Vision Mamba UNet”用于医学图像分割的官方代码库。该模型结合了状态空间模型(如Mamba)的优势,设计成U形架构,特别适合于处理医疗图像中的长距离交互,并保持线性计算复杂度。通过引入视觉状态空间(VSS)块来捕捉广泛的上下文信息,并构建非对称编码器-解码器结构,该模型在ISIC17、ISIC18和Synapse数据集上进行了全面测试,展现出了出色的性能。
关键技术和框架
- 状态空间模型 (State Space Models): 利用以Mamba为代表的状态空间模型进行长期依赖建模。
- PyTorch: 主要深度学习框架,支持模型训练和推理。
- Transformers与CNN的混合: 虽提及但未直接应用于代码库中,而是借鉴其设计理念。
- 其他库: 包括
timm
,torchvision
,SimpleITK
,medpy
等,用于模型实现、数据处理与评估。
安装与配置步骤
环境准备
首先,确保你的系统已安装Python 3.8或更高版本。接下来,创建并激活一个名为vmunet
的虚拟环境:
conda create -n vmunet python=3.8
conda activate vmunet
安装依赖项
执行以下命令安装所有必要的Python包,包括PyTorch和其他依赖项。部分特定库需从特定源下载Whl文件,如causal_conv1d
和 mamba_ssm
。
pip install torch==1.13.0 torchvision==0.14.0 torchaudio==0.13.0 --extra-index-url https://download.pytorch.org/whl/cu117
pip install packaging timm==0.4.12 pytest chardet yacs termcolor submitit tensorboardX triton==2.0.0
pip install causal_conv1d==1.0.0 # 注意:根据实际提供的链接下载正确版本的.whl文件
pip install mamba_ssm==1.0.1 # 同样,可能需要手动查找对应平台的Whl
pip install scikit-learn matplotlib thop h5py SimpleITK scikit-image medpy yacs
数据集准备
ISIC Datasets (ISIC17, ISIC18)
- 下载数据集,遵循提供的百度网盘或Google Drive链接。
- 将数据按要求放置到
/data/isic17/
和/data/isic18/
目录下,保持正确的文件结构。
Synapse Dataset
- 参照Swin-UNet的说明获取数据或使用百度网盘链接下载。
- 解压并将数据组织至
/data/Synapse/
,遵循项目的文件格式指导。
预训练权重下载
- 获取VMamba的预训练权重文件,并保存到
/pretrained_weights/
目录下。
开始训练
进入项目根目录并根据目标数据集启动训练:
- 训练ISIC17或ISIC18上的VM-UNet:
cd VM-UNet python train.py
- 训练Synapse数据集上的VM-UNet:
python train_synapse.py
结果与验证
训练完成后,结果将保存在/results/
目录下,你可以查看和分析这些输出以评估模型性能。
至此,您已成功安装和配置了VM-UNet项目,可以开始探索和利用它进行医学图像的分割任务了。记得在实际应用中遵守相关数据保护法规和伦理标准。