0

我看到更多的人似乎有同样的问题,但没有解决。我正在尝试使用 Anaconda 安装Pytorch3D并收到以下 PackageNotFound 错误。

Collecting package metadata (current_repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve. Collecting package metadata (repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve.
PackagesNotFoundError: The following packages are not available from current channels:
  - pytorch3d
Current channels:
  - https://conda.anaconda.org/pytorch3d/win-64
  - https://conda.anaconda.org/pytorch3d/noarch
  - https://repo.anaconda.com/pkgs/main/win-64
  - https://repo.anaconda.com/pkgs/main/noarch
  - https://repo.anaconda.com/pkgs/r/win-64
  - https://repo.anaconda.com/pkgs/r/noarch
  - https://repo.anaconda.com/pkgs/msys2/win-64
  - https://repo.anaconda.com/pkgs/msys2/noarch
To search for alternate channels that may provide the conda package you're looking for, navigate to
    https://anaconda.org
and use the search bar at the top of the page.

在此处输入图像描述 在此处输入图像描述

我也尝试过使用 pip install 'git+https://github.com/facebookresearch/pytorch3d.git' 并获得以下信息:

C:\Users\Alexandra>pip install 'git+https://github.com/facebookresearch/pytorch3d.git'
ERROR: Invalid requirement: "'git+https://github.com/facebookresearch/pytorch3d.git'"

C:\Users\Alexandra>pip install git+https://github.com/facebookresearch/pytorch3d.git
Collecting git+https://github.com/facebookresearch/pytorch3d.git
  Cloning https://github.com/facebookresearch/pytorch3d.git to c:\users\alexan~1\appdata\local\temp\pip-req-build-uspo7an4
  Running command git clone -q https://github.com/facebookresearch/pytorch3d.git 'C:\Users\ALEXAN~1\AppData\Local\Temp\pip-req-build-uspo7an4'
  ERROR: Error [WinError 2] The system cannot find the file specified while executing command git clone -q https://github.com/facebookresearch/pytorch3d.git 'C:\Users\ALEXAN~1\AppData\Local\Temp\pip-req-build-uspo7an4'
ERROR: Cannot find command 'git' - do you have 'git' installed and in your PATH?

我在 Windows 10 上,使用 python 3.8、PyTorch 1.5 和 CUDA 10.2。我对python很陌生,所以我不知道如何解决这个问题(你可以说,我以前从未从git安装过..)(请宽容!)谢谢!

编辑:谢谢你的回答。我确实安装了 Git,它让我更进一步,但仍然没有完成构建..

截图 3

另外,有趣的是,当我运行命令时

!pip install torch torchvision
!pip install 'git+https://github.com/facebookresearch/pytorch3d.git@stable'

在 Google Collab 中它似乎可以工作,但我无法在 jupyter 中运行它。还有什么想法吗?

4

3 回答 3

2

我还尝试在 Windows 10 上安装 pytorch3d。截至撰写本文时,https: //anaconda.org/pytorch3d/pytorch3d 中没有 Windows 包。

Pytorch3d 安装文档有详细说明,但缺少一些信息,只能在各种问题中找到。在遇到各种问题后,我可以通过从源代码编译安装 pytorch3dpytorch 1.8.11.10.0(官方文档中尚不支持此版本pytorch3d 0.6.0)。

我已经在带有 CUDA 10.2 的 pytorch 1.8.1 和带有 CUDA 11.3 的 pytorch 1.10.0 上进行了测试。我有 CUDA Toolkit 11.0,CuDNN 单独安装,环境变量设置为 tensorflow gpu 使用。对于这两种环境,都使用了新的 python 3.9。Visual Studio 16.11.5 与Desktop Development with C++启用的 CMake 3.21.3 一起使用。

拥有与 Pytorch GPU 版本相同的 CUDA Toolkit 版本可能会更好。有关于版本的警告,但就我而言,它已成功安装。

必须下载并解压 pytorch3d 源代码才能编译。从 pytorch3d 文件夹运行时python setup.py install,它会查找 CUDA_HOME。它可能基于其他标志找到正确的 CUDA 路径。

我最初遇到这些错误,

  • RuntimeError:为扩展编译对象时出错。
  • xutility(...): 错误: 期望一个 "("

安装在窗户上

  • 创建 conda 环境,安装 torch 和依赖项。
conda create -n pytorch3d python=3.9
conda activate pytorch3d
conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch
conda install -c fvcore -c iopath -c conda-forge fvcore iopath
  • 安装适当的 CUDA Toolkit、CuDNN 并设置环境变量。
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\extras\CUPTI\lib64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\include
  • 设置cl.exeVisual C++ 编译器的正确路径。这将允许在选择正确环境的情况下从 conda 提示符运行编译。主机 x64 被使用,x86 用于里面的文件夹,因为 x64 给我一个错误。在我的情况下,
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\Hostx64\x86
  • 此问题之后,PYTORCH3D_NO_NINJA系统环境变量的值设置为1.

  • FORCE_CUDA值为1(但如果 CUDA 在 pytorch 中可用,则不需要)并且CUB_HOME系统环境变量是通过从https://github.com/NVIDIA/cub/releases下载设置的。

PYTORCH3D_NO_NINJA 1
CUB_HOME C:\portable\cub-1.9.9
  • 以下环境变量可能是由 CUDA Toolkit 安装设置的。
CUDA_PATH_V11_0 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0
CUDA_PATH C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0
  • 关注这个问题-std=c++14而不是从extra_compile_argsin中删除setup.py,注释掉"-std=c++14"innvcc_args对我有用。我确实检查了问题中建议的方法是否有效。

  • 现在python setup.py install从 pytorch3d 源文件夹运行应该开始编译并安装它。

  • 在 conda env 中安装以下要求以运行演示和示例。

conda install jupyter
pip install scikit-image matplotlib imageio plotly opencv-python

可能不需要上面提到的某些步骤。无需修改任何头文件。这是对我有用的来源,https://github.com/facebookresearch/pytorch3d/tree/bfeb82efa38f29ed5b9cf8d8986fab744fe559ea

于 2021-10-31T23:30:01.677 回答
0

https://github.com/facebookresearch/pytorch3d/blob/master/INSTALL.md

在 Windows 上从本地克隆安装:

如果您使用的是预编译的 pytorch 1.4 和 torchvision 0.5,您应该对 pytorch 源代码进行以下更改,以使用 Visual Studio 2019 (MSVC 19.16.27034) 和 CUDA 10.1 成功编译。

更改 python/Lib/site-packages/torch/include/csrc/jit/script/module.h

L466、476、493、506、536

-static constexpr * +static const *

更改 python/Lib/site-packages/torch/include/csrc/jit/argument_spec.h

L190

-static constexpr size_t DEPTH_LIMIT = 128; +静态常量 size_t DEPTH_LIMIT = 128;

更改 python/Lib/site-packages/torch/include/pybind11/cast.h

L1449

-explicit operator type&() { return *(this->value); } +explicit operator type& () { return ((type )(this->value)); }

打补丁后可以到“x64 Native Tools Command Prompt for VS 2019”编译安装

cd pytorch3d python3 setup.py install

安装后,验证是否所有的单元测试都通过了

cd 测试 python3 -m unittest discover -p *.py

于 2020-06-24T00:36:51.237 回答
-1

因为 Pytorch3d 不适用于 Windows Conda 环境。我在安装时也遇到了问题。有人建议下载二进制文件,从 github 上的克隆下载。但我想通过 Anaconda 环境一键安装或 pip 安装。

解决方案:如果处理 Pytorch3D,请尝试使用 Ubuntu 或任何其他 linux 发行版,他们正在努力尽快为 conda 环境发布 Windows 二进制文件。

于 2021-04-26T07:47:56.310 回答