针对该问题,我为您提供以下完整攻略:
准备工作
- 在源电脑上使用 Anaconda 安装好 mmdetection 环境,并且能够正常运行。
- 下载好对应的 mmdetection 环境的离线包,在 https://github.com/open-mmlab/mmdetection/releases 上下载对应版本的源码压缩包和编译好的 .whl 包(whl 的格式可以使用 pip install XXX.whl 方式安装)。
- 安装好 anaconda-clean,该工具可以用来卸载 Anaconda 软件包,并且保证删除的干净完整。
离线拷贝步骤
- 在源电脑上,将 mmdetection 环境的整个 conda 环境导出成一个 YAML 文件,使用以下命令:
conda env export > environment.yaml
-
然后将下载好的编译好的 .whl 包和源码压缩包复制到该文件夹中。
-
接下来,在这个文件夹中运行以下命令对当前的 conda 环境进行打包:
conda pack -n mmdetection-env --arcroot ./pkgs -o mmdetection-env.tar.gz
此时会生成一个名为 mmdetection-env.tar.gz
的文件,这个文件即为含有 mmdetection 环境的离线包。
-
将离线包传输到目标电脑。
-
在目标电脑上,在 Anaconda 中创建一个新的空的 conda 环境。
conda create -n mmdetection-env
- 将离线包解压到该空环境中。
tar -xzf mmdetection-env.tar.gz -C $CONDA_PREFIX
注:$CONDA_PREFIX 表示 Anaconda 的安装目录,具体位置根据每个环境的不同而略有不同。可以使用以下命令查看该值:
echo $CONDA_PREFIX
- 安装离线的 .whl 包。
pip install path/to/mmdetection-x.x.x-cp38-cp38-linux_x86_64.whl
- 进入源码文件夹中,执行以下命令,安装 mmdetection。
python setup.py install
- 检查安装是否成功。
python -c 'import mmdet;print(mmdet.__version__)'
如果输出了正确的版本号,说明安装成功;否则,可以按照报错信息进行排查和调试。
示例说明
以下是两个示例说明:
示例 1:Linux 平台
假设源电脑和目标电脑都运行 Ubuntu 20.04 LTS 系统。
将下载的 mmdetection 1.2.0 编译包(mmdetection-1.2.0-cp38-cp38-linux_x86_64.whl)和源码包(mmdetection-1.2.0.tar.gz)放在 ~/mmdetection 文件夹下。
- 在源电脑中执行以下命令,导出 conda 环境。生成的文件保存在 environment.yaml 中。
conda env export > ~/mmdetection/environment.yaml
- 打包 conda 环境。我们将整个 ~/mmdetection 文件夹打包,生成的 mmdetection-env.tar.gz 文件保存在该文件夹下。
conda pack -n mmdetection-env --arcroot ~/mmdetection/pkgs -o ~/mmdetection/mmdetection-env.tar.gz
-
将 mmdetection-env.tar.gz 文件复制到目标电脑的 ~/mmdetection 文件夹下。
-
在目标电脑上,安装 Anaconda,并在终端中创建一个空的 conda 环境。
conda create -n mmdetection-env
- 解压离线包。
tar -xzf ~/mmdetection/mmdetection-env.tar.gz -C $CONDA_PREFIX
- 安装编译好的轮子包
pip install ~/mmdetection/mmdetection-1.2.0-cp38-cp38-linux_x86_64.whl
- 进入源码文件夹中,安装源码包。
cd ~/mmdetection/mmdetection-1.2.0/
python setup.py install
- 检查 mmdetection 是否安装成功。
python -c 'import mmdet;print(mmdet.__version__)'
示例 2:Windows 平台
假设源电脑是 Windows 10 操作系统,目标电脑也是 Windows 10。
将下载的 mmdetection 1.2.0 编译包(mmdetection-1.2.0-cp38-cp38-win_amd64.whl)和源码包(mmdetection-1.2.0.tar.gz)放在 C:\mmdetection 文件夹下。
- 在源电脑中执行以下命令,导出 conda 环境。生成的文件保存在 environment.yaml 中。
conda env export > C:\mmdetection\environment.yaml
- 打包 conda 环境。我们将整个 C:\mmdetection 文件夹打包,生成的 mmdetection-env.tar.gz 文件保存在该文件夹下。
conda pack -n mmdetection-env --arcroot C:/mmdetection/pkgs -o C:/mmdetection/mmdetection-env.tar.gz
-
将 mmdetection-env.tar.gz 文件复制到目标电脑的 C:\mmdetection 文件夹下。
-
在目标电脑上,安装 Anaconda,并在 Anaconda Prompt 中创建一个空的 conda 环境。
conda create -n mmdetection-env
- 解压离线包。
tar -xzf C:\mmdetection\mmdetection-env.tar.gz -C %CONDA_PREFIX%
- 安装编译好的轮子包
pip install C:\mmdetection\mmdetection-1.2.0-cp38-cp38-win_amd64.whl
- 进入源码文件夹中,安装源码包。
cd C:\mmdetection\mmdetection-1.2.0\
python setup.py install
- 检查 mmdetection 是否安装成功。
python -c "import mmdet;print(mmdet.__version__)"
以上就是如何将 Anaconda 安装配置的 mmdetection 环境离线拷贝到另一台电脑的完整攻略,希望能够对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:如何将anaconda安装配置的mmdetection环境离线拷贝到另一台电脑 - Python技术站