Pointnet2_pytorch代码复现

最近在安装了一些库之后,电脑系统崩溃,之前调通的代码几乎都不能正常运行,之前一直觉得是环境版本配置问题,故重装系统与环境多次,但都不起作用,摸索很久后,代码终于能正常运行,故做此记录。


本机配置:系统:Ubuntu 18.04;CUDA:11.2;cudnn:8.1.0

                   环境:python3:3.6.8;virtualenv环境,pytorch:1.8.0


注:编译在未安装ninja的情况下进行

运行以下命令:

> cd pointenet2

> python setup.py install 

会出现类似以下的页面,其中会有错误问题的显示:

Pointnet2_pytorch代码复现_第1张图片首先解决的第一个问题:

error: 'AT_CHECK' was not declaredin this scope

解决办法:pointnet2/_ext_src/src 中的所有.cpp文件以及pointnet2/_ext_src/include中的utils.h中所有的 ‘AT_CHECK’ 改为 'TORCH_CHECK',

同时,将所有的 '**.type().is_cuda()' 改为 ‘**.is_cuda()

error:Tensor.data is deprecated. Please use Tensor.data_ptr instead()

解决办法:将所有 .cpp 文件中,‘**.data()’ 修改为:‘**.data_ptr()’


修改完成后,再次运行:> python setup.py install

出现以下界面,即编译成功:

Pointnet2_pytorch代码复现_第2张图片

此时,在pointnet2文件夹下会出现以下文件:

Pointnet2_pytorch代码复现_第3张图片

随即可开始train

参考链接(如有侵权,必删):

https://github.com/erikwijmans/Pointnet2_PyTorch/commit/1d5dca2673ee2831b9b01efe597b2ba8d12726f1

你可能感兴趣的:(代码复现,ubuntu,pytorch,机器学习)