nnDetection简明安装和训练流程(Windows环境)

安装

首先,官方不建议Windows安装,推荐Linux + Docker
在这里插入图片描述

我的环境:

● 操作系统平台: Windows 10
● Python: 3.8
● Torch/TorchVision: 1.10.1+cu102/ 0.11.1
● GPU: Nvidia RTX 2080 Ti 11G

安装步骤

  1. 安装torch和torchvision(亲测torch2.x不能用)
  2. 进nnDetection目录,pip install -e.

可能出现的问题

problem1

nnDetection简明安装和训练流程(Windows环境)_第1张图片
TypeError: endswith first arg must be bytes or a tuple of bytes, not str

解决方案:

nnDetection简明安装和训练流程(Windows环境)_第2张图片
定位到库文件,添加.encode(‘utf-8’)

problem2

nnDetection简明安装和训练流程(Windows环境)_第3张图片
具体是说 pip install sklearn不能这么写,要写pip install scikit-learn
但是pip install -e.命令是自动化执行,定位点很麻烦

解决方案,pip降级

python -m pip install pip==21.2.1

验证环境

python -c "import torch; import nndet._C; import nndet"

没有报错即安装成功。

使用

  1. 下载并准备数据
    以胰腺CT数据为例,首先按它的要求下载,并定义好环境变量和目录。
    nnDetection简明安装和训练流程(Windows环境)_第4张图片
    使用十项全能数据的prepare.py预处理数据,最后下载标签文件覆盖。这里的文档写的还是比较清楚。

  2. 预处理
    nnDetection简明安装和训练流程(Windows环境)_第5张图片
    根据setup.py可以看到主程序的入口,这样可以进代码调试,而不是直接终端命令运行(出错无法定位)

设置好环境变量
nnDetection简明安装和训练流程(Windows环境)_第6张图片

给默认参数,然后直接运行
nnDetection简明安装和训练流程(Windows环境)_第7张图片
预处理后的目录是这样的
nnDetection简明安装和训练流程(Windows环境)_第8张图片
nnDetection简明安装和训练流程(Windows环境)_第9张图片
nnDetection简明安装和训练流程(Windows环境)_第10张图片
3. 解压npy文件(Unpack)
同样,运行nndet_unpack C:/DB/det_data/Task007_Pancreas/preprocessed/D3V001_3d/imagesTr 6(替换自己的路径)
nnDetection简明安装和训练流程(Windows环境)_第11张图片
这样,npy文件会解压出来。

  1. 训练
    预处理完成后,定义默认参数,运行train.py
    nnDetection简明安装和训练流程(Windows环境)_第12张图片
    然后开始训练,默认的网络结构和模块参数可以通过调试模式在config中查看,在终端也会打印,这里不赘述。
    nnDetection简明安装和训练流程(Windows环境)_第13张图片
    训练开始的界面如下:
    nnDetection简明安装和训练流程(Windows环境)_第14张图片
    nnDetection简明安装和训练流程(Windows环境)_第15张图片
    nnDetection简明安装和训练流程(Windows环境)_第16张图片

训练结果和推理流程

待训练结束后更新

结语

由于无人维护加版本不兼容,该代码在不使用Docker的情况下运行起来相当麻烦。如果后期接着这个框架做的话我会尝试分享代码运行的流程,不过大概率会弃坑,在nnUNet上自己写heads,loss和anchor了…555

你可能感兴趣的:(放疗和医学影像,深度学习,目标检测,计算机视觉,图像处理,pytorch,python)