1.注册kaggle2.把自己的项目打包成zip上传到Dataset3.在notebook中的input添加4.先把input中的数据复制到output中import torch import os import shutil # 1. 定义路径 src_dir /kaggle/input/nnunet/nnunet dst_dir /kaggle/working/nnunet # 2. 清理旧文件加ignore_errors跳过占用文件 if os.path.exists(dst_dir): shutil.rmtree(dst_dir, ignore_errorsTrue) # 3. 完整复制文件夹 shutil.copytree(src_dir, dst_dir) print(复制成功文件存入Output目录)5.设置路径# 定义路径 base /kaggle/working/nnunet/nnUNet/nnUNetFrame/DATASET os.environ[nnUNet_preprocessed] f{base}/nnUNet_preprocessed os.environ[nnUNet_raw] f{base}/nnUNet_raw os.environ[nnUNet_results] f{base}/nnUNet_results # 验证是否生效 print(os.environ[nnUNet_raw]) print(os.environ[nnUNet_preprocessed]) print(os.environ[nnUNet_results])切换目录并且安装nnUNet需要的python包向终端添加用于运行整个nnU-Net的命令%cd /kaggle/working/nnunet/nnUNet !pip install -e .进行2d模型训练--c可以保存断点下次运行时从中断的轮次开始!nnUNetv2_train 4 2d 0 -tr nnUNetTrainer_250epochs --c !nnUNetv2_train 4 2d 1 -tr nnUNetTrainer_250epochs --c !nnUNetv2_train 4 2d 2 -tr nnUNetTrainer_250epochs --c !nnUNetv2_train 4 2d 3 -tr nnUNetTrainer_250epochs --c !nnUNetv2_train 4 2d 4 -tr nnUNetTrainer_250epochs --c进行3d模型训练!nnUNetv2_train 4 3d_fullres 0 nnUNetTrainer_250epochs --c !nnUNetv2_train 4 3d_fullres 1 nnUNetTrainer_250epochs --c !nnUNetv2_train 4 3d_fullres 2 nnUNetTrainer_250epochs --c !nnUNetv2_train 4 3d_fullres 3 nnUNetTrainer_250epochs --c !nnUNetv2_train 4 3d_fullres 4 nnUNetTrainer_250epochs --cTask004_Hippocampus数据集较小没有级联假如需要级联看下面!nnUNetv2_train 1 3d_lowres 0 !nnUNetv2_train 1 3d_lowres 1 !nnUNetv2_train 1 3d_lowres 2 !nnUNetv2_train 1 3d_lowres 3 !nnUNetv2_train 1 3d_lowres 4 !nnUNetv2_train 1 3d_cascade_fullres 0 !nnUNetv2_train 1 3d_cascade_fullres 1 !nnUNetv2_train 1 3d_cascade_fullres 2 !nnUNetv2_train 1 3d_cascade_fullres 3 !nnUNetv2_train 1 3d_cascade_fullres 4验证!nnUNetv2_train 4 2d 0 --val --npz !nnUNetv2_train 4 2d 1 --val --npz !nnUNetv2_train 4 2d 2 --val --npz !nnUNetv2_train 4 2d 3 --val --npz !nnUNetv2_train 4 2d 4 --val --npz !nnUNetv2_train 4 3d_fullres 0 --val --npz !nnUNetv2_train 4 3d_fullres 1 --val --npz !nnUNetv2_train 4 3d_fullres 2 --val --npz !nnUNetv2_train 4 3d_fullres 3 --val --npz !nnUNetv2_train 4 3d_fullres 4 --val --npz自动找到最优配置!nnUNetv2_find_best_configuration 4 -c 2d 3d_fullres -f 0 1 2 3 4 -tr nnUNetTrainer_250epochs运行后会出现下面的结果复制run inference like this: 和run postprecessing like this后的代码运行分别是推理和预处理的代码由于kaggle上8小时跑一轮有点慢之后在阿里云上找到了dsw的试用推理!nnUNetv2_predict -d Dataset004_Hippocampus -i nnunet/nnUNet/nnUNetFrame/DATASET/nnUNet_raw/nnUNet_raw_data/Task04_Hippocampus/imagesTs -o nnunet/nnUNet/nnUNetFrame/DATASET/nnUNet_raw/nnUNet_raw_data/Task04_Hippocampus/inferTs -f 0 1 2 3 4 -tr nnUNetTrainer_250epochs -c 3d_fullres -p nnUNetPlans预处理!nnUNetv2_apply_postprocessing -i /mnt/workspace/nnunet/nnUNet/nnUNetFrame/DATASET/nnUNet_results/hippocampus_3d_fullres_predict -o nnunet/nnUNet/nnUNetFrame/DATASET/hippocampus_3d_fullres_predict_PP -pp_pkl_file /mnt/workspace/nnunet/nnUNet/nnUNetFrame/DATASET/nnUNet_results/Dataset004_Hippocampus/nnUNetTrainer_250epochs__nnUNetPlans__3d_fullres/crossval_results_folds_0_1_2_3_4/postprocessing.pkl -np 8 -plans_json mnt/workspace/nnunet/nnUNet/nnUNetFrame/DATASET/nnUNet_results/Dataset004_Hippocampus/nnUNetTrainer_250epochs__nnUNetPlans__3d_fullres/crossval_results_folds_0_1_2_3_4/plans.json