点云数据处理 环境安装 Pytorch3D(windows + Python 3.6)
(文末给出了网盘链接,里面包含Pytorch3D安装时所需的所有文件,如有需要,请自取。)
1. 安装Pytorch
(1)选择Pytorch版本
根据python版本在blog(https://blog.csdn.net/m0_59118857/article/details/132379012)
中寻找对应的版本,有些pytorch新版本不持支持老版Python。由于使用的是Python3.6,Pytorch1.0-1.10都可以选择,本人选择Pytorch 1.10。(pytorch2.x需要python3.9及更高要求)
(2)安装Pytorch1.10
在官方网页中找到v1.10.0,安装方式有conda和wheel两种
https://pytorch.org/get-started/previous-versions/#linux-and-windows-1
Conda安装的方法可以参考网上的做法,添加镜像源,在anaconda prompt里输入相应的代码即可。由于本机没有使用conda,所以采用wheel安装。(可以直接按照官网代码进行在线安装,但我配置的时候报错了,所以就下载下来安装)
本机为windows10系统,配置有GTX1060显卡,选择cuda版(cpu版就选前缀是cpu),进入后面的网站
https://download.pytorch.org/whl/torch_stable.html
Ctrl+F搜索torch1.10.0,由于使用的是cuda版,所以torch前面目录应该是cuxxx(cpu为cpu版,rocm为linux系统用)cp3x表示python3.x;cu113表示cuda版本为11.3.
选择并下载对应的.whl文件
随后,下载对应的torchversion和torchaudio(按照刚刚的方法在网页里继续搜索就行)
打开终端,pip安装
pip install XX:\torch-1.10.0+cu113-cp36-cp36m-win_amd64.whl
pip install XX:\torchvision-0.11.0+cu113-cp36-cp36m-win_amd64.whl
pip install XX:\torchaudio-0.10.0+cu113-cp36-cp36m-win_amd64.whl
查看安装结果,能在目录里看到这三个库就算成功
pip list
(3)安装cuda和cudnn(cpu版pytorch可以忽略)
安装过程主要参考blog:https://blog.csdn.net/m0_58656510/article/details/135716198
https://blog.csdn.net/m0_58656510/article/details/135716198打开终端,查询gpu型号
nvidia-smi
在nvidia官网查找满足要求的toolkit版本 https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
根据上节安装版本(cu113),下载CUDA11.3,并安装。 https://developer.nvidia.com/cuda-toolkit-archive
安装过程可以参考其他blog(选好目录以后一直下一步即可)
打开终端,查询cuda版本
nvcc –V
根据cuda版本下载cudnn,并且解压缩。https://developer.nvidia.com/rdp/cudnn-archive
将解压缩后的cudnn文件夹中的bin、include、lib文件夹复制到cuda的文件夹中(cuda文件夹的地址通常是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3)。
配置环境变量
CUDA_SDK_PATH =C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3
CUDA_LIB_PATH = %CUDA_PATH%\lib\x64
CUDA_BIN_PATH = %CUDA_PATH%\bin
CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%\bin\win64
CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%\common\lib\x64
在Path里添加变量
%CUDA_LIB_PATH%
%CUDA_BIN_PATH%
%CUDA_SDK_LIB_PATH%
%CUDA_SDK_BIN_PATH%
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\lib\x64;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\bin;
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.3\common\lib\x64;
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.3\bin\win64;
验证cuda与cudnn
进入cuda的demo_suite
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\extras\demo_suite
在地址栏输入cmd,在终端输入bandwidthTest.exe和deviceQuery.exe
(4)验证Pytorch
打卡终端,查看pytorch版本
python
import torch
torch.cuda.is_available()
print(torch.__version__)
出现ture和版本号即可
2. 安装Pytorch3D(windows平台上需要进行编译,linux平台可以直接conda安装)
(1)选择合适的Pytorch3D版本
最新版仅支持Pytorch2.1及以上,所以选择其他版本。本人选择0.7.1版本
https://github.com/facebookresearch/pytorch3d
Pytorch3D 0.7.1 要求Pytorch版本在1.9.0到1.12.1之间
下载zip文件并解压,并打开INSTALL.md
根据要求,还需要安装gcc&g++编译器(>=4.9),fvcore,iopath,CUB.
(2)安装gcc&g++
MinGW官方网站首页(http://www.mingw.org/)(很慢)
或者https://github.com/niXman/mingw-builds-binaries/releases
选择x86_64-8.5.0-release-posix-sjlj-rt_v10-rev0.7z
i686:Pentium Pro及以后Intel IA32 CPU,即P6系列处理器
x86_64:X86架构的64位CPU
poxis:启用C/C++ 11多线程功能,使用std::thread类创建线程
win32:禁用C/C++ 11多线程功能,使用 Win32 API创建线程
seh:只支持64位,不支持32位,性能比较好
sjlj:支持32位和64位,兼容比较好
(参考blog:https://blog.csdn.net/m0_55765808/article/details/141873620)
解压安装包,并配置环境变量
D:\MinGW\bin
(3)安装fvcore和iopath
如果conda可用,可以直接安装
conda install -c fvcore -c iopath -c conda-forge fvcore iopath
如果不可用,可以使用git工具(git工具的安装方法参考blog:https://blog.csdn.net/qq_45281589/article/details/134650456)
fvcore安装(https://github.com/facebookresearch/fvcore)
①从github上安装
pip install -U 'git+https://github.com/facebookresearch/fvcore'
②本地克隆安装
git clone https://github.com/facebookresearch/fvcore
pip install -e fvcore
iopath安装(https://github.com/facebookresearch/iopath)
①从github上安装
pip install -U 'git+https://github.com/facebookresearch/iopath'
②本地克隆安装
git clone https://github.com/facebookresearch/iopath
pip install -e iopath
安装完成后,通过pip list查看
(4)安装CUB
下载地址:https://github.com/NVIDIA/cub/releases
本人选择CUB1.11
解压以后,配置环境变量
CUB_HOME=D:\pytorch3D\cub-1.11.0
(5)编译pytorch3D
根据INSTALL.md,需要使用x64 Native Tools Command Prompt for VS 2019
因此需要安装Visual Studio 2019,并勾选安装“C++的桌面开发”
安装完成后, 用管理员身份打开x64 Native Tools Command Prompt for VS 2019,输入
set DISTUTILS_USE_SDK=1
set PYTORCH3D_NO_NINJA=1
随后cd到pytorch3d的文件夹
activate 虚拟环境(我没使用虚拟环境,所以直接activate base)
python setup.py install
如果编译正常,会在最后出现下图,并且可以查到版本号
然而,可能会出现一些问题,解决方法参考:https://www.bilibili.com/opus/903477294519025683
4. 结束
文中的结果皆为本人实践操作结果,确认可行。然而,由于计算机环境不同,可能出现无法完全复现的情况,请自行查阅其他博主教程。本人参考了众多博文和官方教程,收益良多,在此表示感谢,欢迎各位批评指正。
另外,本人将文中使用到的各种包都上传到云盘中,如果有需要,可以自取(包括pytorch相关的库、cuda、cudnn、vs2019、以及pytorch3D对应的包)
链接:https://pan.baidu.com/s/1HSUEAPd0nhf91FNYKo3WSQ 提取码: 3be4
作者:天上掉下一只狗