pointnet代码问题:ImportError: libcublas.so.10.0(在不同终端中使用不同cuda版本)

我使用的是python3.6

需要改一些东西,运行的时候就会发现一些print()的修改,还有modelnet_dataset.py文件中:

#import provider
import utils.provider as provider

这里不是install安装的provider,而是utils中的

还有注释main.py中的

#import provider

这个并没有用上,反而容易误导

我使用的是cuda8.0 cudnn6.0

安装的tensorflow版本是:

tensorflow-1.4.1-cp36-cp36m-manylinux1_x86_64.whl

tensorflow_gpu-1.4.1-cp36-cp36m-manylinux1_x86_64.whl

还有那三个cuda_op设置为你自己的目录:

举个例子,3d_interpolation,这是我的环境配置

# TF1.2
#g++ -std=c++11 tf_interpolate.cpp -o tf_interpolate_so.so -shared -fPIC -I /usr/local/lib/python2.7/dist-packages/tensorflow/include -I /usr/local/cuda-8.0/include -lcudart -L /usr/local/cuda-8.0/lib64/ -O2 -D_GLIBCXX_USE_CXX11_ABI=0

# TF1.4
g++ -std=c++11 tf_interpolate.cpp -o tf_interpolate_so.so -shared -fPIC -I /home/boyun/.conda/envs/py3_6--pytorch1_1_0/lib/python3.6/site-packages/tensorflow/include -I /usr/local/cuda-8.0/include -I /home/boyun/.conda/envs/py3_6--pytorch1_1_0/lib/python3.6/site-packages/tensorflow/include/external/nsync/public -lcudart -L /usr/local/cuda-8.0/lib64/ -L/home/boyun/.conda/envs/py3_6--pytorch1_1_0/lib/python3.6/site-packages/tensorflow -ltensorflow_framework -O2 -D_GLIBCXX_USE_CXX11_ABI=0

如果你的数据集不是三维xyz还有法线,参考这个:

https://github.com/charlesq34/pointnet2/issues/41

对于

pointnet2/part_seg/train.py

--model pointnet2_part_seg_msg_one_hot

需要修改

pointclouds_pl, labels_pl = MODEL.placeholder_inputs(BATCH_SIZE, NUM_POINT)

为:

pointclouds_pl, labels_pl, cls_labels_pl = MODEL.placeholder_inputs(BATCH_SIZE, NUM_POINT)

https://github.com/charlesq34/pointnet2

https://github.com/charlesq34/pointnet

对于pointnet2

tensorflow-1.4.0 使用cuda8.0  cudnn6

如果出现:

ImportError: libcublas.so.10.0: cannot open shared object file: No such file or directory

使用命令:

sudo ldconfig /usr/local/cuda/lib64

题外话(在不同终端中使用不同cuda版本):

参考:

https://www.cnblogs.com/yhjoker/p/10972795.html

文中说道:

以笔者的服务器账户为例,笔者在 /home/test/cuda-10.1 目录中安装了 cuda-10.1 ,而服务器上的 /usr/local/cuda 目录指向的是之前安装的老版本的 cuda-8.0,直接运行 Pytorch 时,其会基于上面的确认流程直接使用老版本的 cuda .若想要临时设置 Pytorch 使用新安装的 cuda ,则可以通过 export 命令修改全局变量。这种设置方式在当前终端退出后即失效

#设置全局变量 CUDA_HOME
export CUDA_HOME=/home/test/cuda-10.1/
#在 PATH 变量中加入需要使用的 cuda 版本的路径,使得系统可以使用 cuda 提供的可执行文件,包括 nvcc
export PATH=$PATH:/home/test/cuda-10.1/bin/

我们使用如下:

export CUDA_HOME=/usr/local/cuda
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

安装 numpy 报错 RuntimeError: Python version >= 3.6 required

参考:

https://blog.csdn.net/ykd2017/article/details/107982211 解决

猜你喜欢

转载自blog.csdn.net/baidu_40840693/article/details/108215069