nnUnet使用
MedicalSeg/nnUnet组件介绍
- 组件结构

-
使用流程
-
- 准备工作:
#1.1获取PaddleSeg组件 #cd ~表示进入用户主目录 %cd ~/ !git clone https://gitee.com/PaddlePaddle/PaddleSeg.git !git pull %cd ~/PaddleSeg/ !git checkout develop%cd ~/进入用户根目录,该指令不论当前工作目录是什么,均会返回根目录
%cd ~/data/进入根目录下的data目录
%cd data进入当前文件夹下的data目录,注意与~/data区别
%cd …/返回上一根目录
#1.2解压数据集 %cd ~/ !mkdir ~/PaddleSeg/contrib/MedicalSeg/msd_lung !tar -xf ~/data/data125872/Task06_Lung.tar -C ~/PaddleSeg/contrib/MedicalSeg/msd_lung#1.3安装依赖 %cd ~/PaddleSeg/contrib/MedicalSeg !pip install -r requirements.txt !pip install medpy#1.4(可选)解压2D-UNet和Cascade UNet-lowres训练好的权重 %cd ~/ !mkdir ~/PaddleSeg/contrib/MedicalSeg/output !unzip -oq ~/data/data169512/2d_and_cascade_lowres.zip -d ~/PaddleSeg/contrib/MedicalSeg/output/ -
- 开始训练
# 2D-UNet 训练————5折训练 %cd ~/PaddleSeg/contrib/MedicalSeg/ !python train.py --config configs/nnunet/msd_lung/nnunet_2d_msd_lung_fold0.yml --log_iters 20 --precision fp16 --nnunet --save_dir output/2d_unet/fold0 --save_interval 1000 --use_vdl ''' 修改fold1/2/3/4分别训练即可 考虑到内存问题,可增大save_interval --precison fp16表示Use AMP (Auto mixed precision)自动混合精度训练 '''# 3D-UNet训练 %cd ~/PaddleSeg/contrib/MedicalSeg/ !python train.py --config configs/nnunet/msd_lung/nnunet_3d_fullres_msd_lung_fold0.yml --log_iters 20 --precision fp16 --nnunet --save_dir output/3d_unet/fold0 --save_interval 1000 --use_vdl ''' 同样分别修改fold1/2/3/4进行5折训练 '''train.py的可设置参数,具体查看train.py脚本
—— log_iters记录训练的loss、cost等参数的轮数
—— use_vdl记录训练参数,结束后可用于可视化
—— resume_model=‘path’中断训练和恢复重新训练
—— save_interval保存训练模型的轮数
-
- 验证——由于分为5折训练,故验证时5个模型分别在各自验证集验证,之后整合验证,即6次验证
# 2D UNet验证-提供权重 %cd
-

本文详细介绍了如何使用PaddleSeg的MedicalSeg组件进行nnUnet的训练和验证,包括2D-UNet、3D-UNet和CascadeUNet的5折训练与验证过程,以及模型的Ensemble和静态图导出。整个流程涵盖了数据准备、依赖安装、模型训练、验证、预测和部署等关键步骤。
8960

被折叠的 条评论
为什么被折叠?



