MONAI 3D目标检测官方demo实践与理解(一)项目搭建,训练部分的运行

  • 写在前面
  • 硬件环境配置
  • 先把代码跑起来
  • 数据集下载与处理
  • 训练部分
  • 写在后面


写在前面

最近在学习医学图像相关的3D目标检测,刚好MONAI更新了3D目标检测相关的模块,就去找来官方的案例学习,下图来自MONAI目标检测。

大模型 目标检测 目标检测demo_计算机视觉


硬件环境配置

运行环境是Windows11系统,显卡为3090

先把代码跑起来

首先去官方的仓库看一下代码,根据readme文件来配置数据集和代码。

数据集下载与处理

官方使用的数据集是LUNA16,压缩包大概有50G,如果下载太慢可以用百度网盘下载:
链接: https://pan.baidu.com/s/1ZymBq4_LYLJd4Dxy1LFyhQ?pwd=mzlx 提取码: mzlx
下载好之后将subset0~9都解压到一个文件夹中,命名为orig_datasets。然后再解压LUNA16_datasplit。

训练部分

首先要运行的是训练部分。根据官方demo,要用到的文件主要为下面几个以及config文件中的config_train_luna16_16g.json,将其拷贝放入自己的项目中。

大模型 目标检测 目标检测demo_数据集_02

之后根据官方的引导,在 luna16_prepare_env_files.py中配置自己的数据集路径后,运行 luna16_prepare_env_files.pyluna16_prepare_images.py

下图为我的路径配置

大模型 目标检测 目标检测demo_3d_03


运行代码:

python3 luna16_prepare_env_files.py
python3 luna16_prepare_images.py -c ./config/config_train_luna16_16g.json

数据处理部分可能会比较耗时,我用了大概1个小时。

运行后会生成相应文件夹,并处理原始数据集,生成所需要的训练数据集。

至此,项目文件如图所示。

大模型 目标检测 目标检测demo_3d_04


然后就可以开始训练了,直接根据官方的引导进行训练。

python3 luna16_training.py \
    -e ./config/environment_luna16_fold0.json \
    -c ./config/config_train_luna16_16g.json

日志通过tensorboard查看

tensorboard --logdir tfevent_train/luna16_fold0

大模型 目标检测 目标检测demo_3d_05


大模型 目标检测 目标检测demo_计算机视觉_06


我总共训练了约43小时,结果如下。

大模型 目标检测 目标检测demo_数据集_07

写在后面

以上就是MONAI 3D目标检测的项目搭建与训练部分,之后还会更新其他部分以及源码的理解和分析