PointNet++ pytorch版本中pointnet2_ops_lib的配置

Pointnet2_PyTorch Github代码链接: https://github.com/erikwijmans/Pointnet2_PyTorch【erikwijmans】

其中pointnet2_ops_lib需要单独配置。Point Cloud Transformer, SnowflakeNet, PointTr等点云深度学习相关的源码中都有出现。

在满足源码Requirements的环境后,在pytorch环境中CD到 pointnet2_ops_lib所在目录,然后运行 pip install pointnet2_ops_lib/.

可能会出现报错。错误信息很多,可能包括:

ninja: build stopped: subcommand failed.
Error checking compiler version for cl: [WinError 2] 系统找 不到指定的文件。
subprocess.CalledProcessError: Command ‘[‘ninja’, ‘-v’]’ returned non-zero exit status 1.
ValueError: underlying buffer has been detached
Building wheel for pointnet2-ops (setup.py) … error
error: subprocess-exited-with-error
Command errored out with exit status 1:

错误太多,就不一一列举了
原因很有可能是C++编译过程中出现的问题。

本人的解决方法:降低Visual Studio版本。在尝试安装各种.whl文件、安装包,更改环境变量,尝试不同pytorch版本依然配置失败后,将VS2019降至2017,居然成功了!整整搞了两天啊,居然是VS的问题。。。

本人的环境配置:pytorch=1.7.1,CUDA=10.1,python=3.7
(最低的pytorch版本至少为1.4或1.5,同时还要看你所参考的源码,这里我尝试1.5和1.6进行配置都没有成功,原因未知)

pointnet2_ops_lib配置成功提示: PointNet++ pytorch版本中pointnet2_ops_lib的配置_第1张图片

参考博客
【pytorch c++混编报错 Error checking compiler version for cl: [WinError 2] 系统找 不到指定的文件】
【Point Cloud Transformer(PCT)代码实现】

你可能感兴趣的:(pytorch)