RfDNet 在Ubuntu16下的配置与运行——(一)运行Demo
1.源码下载
github下载地址:https://github.com/yinyunie/RfDNet
2.环境配置
主要是按照官方的readme一步步来,但其中会出现一些问题
该步骤中pip安装requirements.txt时会报错
打开requirement.txt会发现,里面存在一些本地路径,把这些本地路径删掉,但是要注意
这个整行删除,不然后面会报错,终端运行
pip install -r requirements.txt
然后就是继续跟着readme文档,完成环境配置,期间没啥问题。
2.运行demo
首先下载预训练模型,放在指定目录下;
然后开始测试,结果有报错
显示说cuda版本低,查了一下,其实不是cuda版本的问题,是torth与cuda版本不匹配,于是在官网重新下载安装torch,这里可以找到对应的版本,因为我cuda是10.1,我还是安装了torch1.7.1,使用命令:
conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 cudatoolkit=10.1 -c pytorch
完了之后重新编译一下pointnet2,然后再次运行demo,出现了另一个错误
有一些博客说将torch/utils/cpp_extension.py中的[‘ninja’,‘-v’]改成[‘ninja’,‘–version’],这个方法或许可行,但修改系统文件是很危险的,不建议这么做。继续看报错信息,发现后面还有一个信息
看了这个博客,在终端运行
export CUDA_HOME=/usr/local/cuda-10.1
很神奇,错误解决了,能够正常运行出结果
可视化结果如下图:
3. load cpp_extension时卡死
隔了两天再次运行demo时发现终端没有任何反应,以为是环境出了问题,又重新搭了一遍,还是没反应,于是在代码里一步步定位,最终发现是在下面这一步的时候卡死了
参考了这个博客
发现是有一个lock文件导致运行锁住了,把这个lock文件删掉,重新运行,就解决了!