nnU-Net 如何安装--傻瓜式安装教程

Posted Tina姐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nnU-Net 如何安装--傻瓜式安装教程相关的知识,希望对你有一定的参考价值。

这是nnU-Net系列第二篇–安装教程
上一篇:nnU-Net介绍篇

nnU-Net只在Linux上测试(ubuntu16、18和20;centOS, RHEL)。它也可以在其他操作系统上工作,但我们不能保证它会工作。

因此,最好安装在Linux上

安装nnU-Net的硬件条件

nnU-Net需要一个GPU!为了进行推断,GPU应该有4gb的VRAM。为了训练nnU-Net模型,GPU应该至少有11gb(例如rtx2080ti)。

由于使用混合精度,使用Volta架构(Titan V,V100 gpu)或使用cuDNN 8.0.2从源代码(参见此处)编译pytorch时,可以实现最快的训练时间。

请注意,pytorch的未来版本将默认包括cudnn8.0.2或更新版本,并且不需要从源代码处编译。

对于training,我们建议一个强大的CPU。建议至少使用6个CPU内核(12个线程)。CPU需求主要与数据扩充和随输入通道数量的扩展有关,因此对于使用4种图像模式的数据集(如BraTS 4个模态),CPU需求较高,而对于仅使用CT图像的数据集(如LiTS),CPU需求较低。

我们强烈建议您在虚拟环境中安装nnU-Net。请不要使用conda环境, 这在过去引起了多个问题。

Python2已弃用,不受支持。请确保您使用的是Python 3

快速的创建 Ubuntu 虚拟环境

参考链接

1 安装venv模块

该模块是标准Python 3库的一部分,以便我们可以创建虚拟环境(virtualenv)。让我们通过输入以下内容来安装venv:

sudo apt-get install -y python3-venv

在这里插入图片描述
这里需要输入你的密码

2 创建虚拟环境存放目录

让我们选择要将Python编程环境放入哪个目录,或者我们可以使用来创建一个新目录mkdir,如下所示:

mkdir environments
cd environments

注意:因为我是第二次安装,所以我演示是存放在文件夹env2中,你们就放在environments中,和官网统一

3 创建虚拟环境

一旦进入您希望环境存在的目录,就可以通过运行以下命令来创建环境:

python3 -m venv project_env

project_env是虚拟环境的名字,建议命为nnunet, 方便记忆

本质上,这将建立一个新目录,其中包含一些项目,我们可以使用以下ls命令查看该目录

这些文件一起使用,以确保您的项目与本地计算机的更广泛的上下文隔离开,从而避免系统文件和项目文件混在一起。这是进行版本控制并确保您的每个项目都可以访问其所需的特定程序包的良好做法。
在这里插入图片描述

因为我是第二次安装, 所以名字换了。

4 激活该环境

要使用此环境,您需要激活它,您可以通过键入以下调用激活脚本的命令来激活它。这和激活conda环境略有不同

source nnunet2/bin/activate

这里激活要先切换到nnunet2的上一级文件夹
在这里插入图片描述
激活后会在最左边显示该环境的名称

5 退出该环境

要离开环境,只需键入命令deactivate,您将返回到原始目录。

创建虚拟环境的完整过程如下:
在这里插入图片描述

安装nnunet

再次进入虚拟环境后

pip install nnunet

安装好后可以查看下安装了的包

 pip list

设置环境变量

这一步对于nnUNet来讲很重要,nnU-Net需要知道您打算将原始数据,预处理数据和训练好的的模型保存在何处。

参考链接

必须设置以下三个环境变量:
1 nnUNet_raw_data_base:原始文件存放地址。位于nnUNet_raw_data_base的文件夹必须至少具有子文件夹nnUNet_raw_data,该子文件夹又为每个任务包含一个子文件夹。用户有责任将原始数据转换为一下格式
在这里插入图片描述
2 nnUNet_preprocessed:这是将保存预处理数据的文件夹。训练期间还将从此文件夹中读取数据。因此,重要的是将其放置在访问延迟低且吞吐量高的驱动器上(常规sata或nvme SSD足够)。

3 RESULTS_FOLDER:这指定nnU-Net将在其中保存模型权重的位置。如果下载了预训练的模型,则将在此处保存它们。

这一步很重要,理清楚各个文件夹里面存放的是什么数据,不要存错地方

如何设置环境变量

有几种方法可以做到这一点。最常见的一种方法是在主目录中的.bashrc文件中设置路径。对我来说,该文件位于/home/fabian/.bashrc。您可以使用任何文本编辑器打开它。

如果看不到该文件,则可能是因为默认情况下该文件是隐藏的。您可以运行ls -al /home/fabian以确保看到它。在极少数情况下,它可能不存在,您可以使用创建它touch /home/fabian/.bashrc
在这里插入图片描述
在文本编辑器中打开文件后,将以下行添加到底部:

export nnUNet_raw_data_base="/media/fabian/nnUNet_raw"
export nnUNet_preprocessed="/media/fabian/nnUNet_preprocessed"
export RESULTS_FOLDER="/media/fabian/nnUNet_trained_models"

/media/fabian/改为你想存放的地方

如果没有文本编辑器,可以直接在终端修改:
修改方法

  • vim ~/.bashrc 进入到文件;

  • 直接按 i 键可以对文件进行修改, Esc + :+ wq 退出并保存修改之后的文件

  • 命令 :source ~/.bashrc 更新 .bashrc
    在这里插入图片描述
    成功设置后,您可以通过键入echo $RESULTS_FOLDER etc来验证路径设置正确,并且应该打印出正确的文件夹。
    在这里插入图片描述

设置路径的另一种方法

上面的方法在系统上永久设置路径(直到从.bashrc中删除行)。如果只希望临时设置它们,则可以在终端中运行导出命令:

export nnUNet_raw_data_base="/media/fabian/nnUNet_raw"
export nnUNet_preprocessed="/media/fabian/nnUNet_preprocessed"
export RESULTS_FOLDER="/media/fabian/nnUNet_trained_models"

注意 这将仅设置当前终端会话的路径(如果关闭终端,并且每次都需要重置,则变量将丢失)。

恭喜 : 到这里,就算安装成功了~~

在这里插入图片描述

注意

安装nnU-Net将向您的终端添加几个新命令。这些命令用于运行整个nnU-Net管道。您可以从系统上的任何位置执行它们。所有nnU-Net命令的前缀都有 nnUNet_ 这样易于识别。如训练命令nnUNet_train

请注意,这些命令仅执行python脚本。如果在虚拟环境中安装了nnU-Net,则在执行命令时必须激活该环境

所有nnU-Net命令都有一个-h选项,该选项提供有关如何使用它们的信息
在这里插入图片描述
在这里可以查看参数的使用

好不容易安装好了,总的练练兵吧。下一博客,我们就来实战吧~~

在这里插入图片描述

以上是关于nnU-Net 如何安装--傻瓜式安装教程的主要内容,如果未能解决你的问题,请参考以下文章

如何傻瓜式截取视频某一片段?

网络爬虫学习软件篇-Python下载安装(超详细教程,傻瓜式说明)

Vue安装环境最全教程,傻瓜式安装

Dev-C++安装和使用教程(手把手傻瓜式教学)

傻瓜式教程Windows下安装Hive MySQL版附安装Hadoop教程全网最详细的图文教程

阿里云 Centos7安装ssh+nginx+mysql 傻瓜式教程