一、cuda9.0安装
cuda9.0下载地址:
CUDA Toolkit 9.0 Downloads | NVIDIA Developer
下载完成后进行cuda9.0的安装
cuda官方安装教程:
输入:
lspci | grep -i nvidia
输出显卡型号,说明支持cuda
出现在这个列表 CUDA GPUs - Compute Capability | NVIDIA Developer 中的显卡支出cuda
If your graphics card is from NVIDIA and it is listed in CUDA GPUs - Compute Capability | NVIDIA Developer your GPU is CUDA-capable.
确定版本号
uname -m && cat /etc/*release
安装前需禁用英伟达驱动:
https://docs.nvidia.com/cuda/archive/9.0/cuda-installation-guide-linux/index.html#runfile-nouveau禁用教程:
https://docs.nvidia.com/cuda/archive/9.0/cuda-installation-guide-linux/index.html#runfile-nouveau
装vim
sudo apt install vim
执行命令:
sudo vim /etc/modprobe.d/blacklist-nouveau.conf
然后点击 i 进入编辑模式,输入以下下内容
blacklist nouveau
options nouveau modeset=0
按esc 再输入 :wq! 即可保存退出
然后进入cuda9.0所在文件目录,执行安装命令 注意文件名的一致
sudo sh cuda_9.0.176_384.81_linux.run
很多,慢慢往下看
accept
接下来如图,基本都是默认y,然后继续,然后出现:驱动安装失败
解决方法:
目前无更好的解决经验,只能先安装要求的版本的驱动,再安装cuda(安装时跳过驱动的安装)
继续
sudo gedit ~/.bashrc
用 sudo gedit ~/.bashrc 命令打开~/.bashrc文件,在文件末尾添加如下:(注意路径对应自己的)
export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
终端输入:nvcc -V 【V是大写】
验证是否安装成功
编译并执行CUDA样例程序,出现pass代表CUDA和GPU运行正常。
cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
提示:pass 则安装成功
二、安装cudnn7.0
访问:https://developer.nvidia.com/rdp/cudnn-archive
下载 这三个文件;
终端cd到下载的deb安装包目录下;
sudo dpkg -i 名字
安装顺序:(注意名字和自己下载一致)
#1.Install the runtime library, for example:
sudo dpkg -i libcudnn7_7.0.3.11-1+cuda9.0_amd64.deb
#2.Install the developer library, for example:
sudo dpkg -i libcudnn7-dev_7.0.3.11-1+cuda9.0_amd64.deb
#3.Install the code samples and the cuDNN Library User Guide, for example:
sudo dpkg -i libcudnn7-doc_7.0.3.11-1+cuda9.0_amd64.deb
验证:(第一步的/home/ubuntu/文件夹 其中ubuntu是用户名,也可以自己新建一个文件夹使用)
#复制cudnn_samples到 /home/ubuntu/文件夹下
sudo cp -r /usr/src/cudnn_samples_v7/ /home/ubuntu/
#进入root
su
#进入/home/ubuntu/cudnn_samples_v7/mnistCUDNN文件夹
cd /home/ubuntu/cudnn_samples_v7/mnistCUDNN
#清除编译内容,第一次安装的话可以跳过
make clean
#编译
make
新打开终端,进入/home/ubuntu/cudnn_samples_v7/mnistCUDNN文件夹
cd /home/ubuntu/cudnn_samples_v7/mnistCUDNN
#运行
./mnistCUDNN
出现:
Test passed!
安装成功。
三、安装tensorflow1.4.0
#先更新一下pip
pip install --upgrade pip
#进入conda虚拟环境
source ~/anaconda3/bin/activate
#创建虚拟环境
conda create -n 3dssd python=3.6 #3dssd 为环境名称
#查看虚拟环境列表
cond env list
#进入需要安装Tensorflow的虚拟环境
conda activate python_env #python_env为虚拟环境的名称
#安装对应tensorflow软件包
#对于1.x版本的tensorflow,cpu、gpu软件包分开的
pip install tensorflow==1.15 #仅支持 CPU 的版本
pip install tensorflow-gpu==1.15 #支持gpu的版本(适用于 Ubuntu 和 Windows)
#2.x版本的软件包
pip install tensorflow #支持CPU和GPU的最新稳定版(适用于 Ubuntu 和 Windows)
我安装的是1.4.0
pip install tensorflow-gpu==1.4.0
pip list 查看已安装的包
如果要卸载tensorflow
pip unimstall tensorflow-gpu==1.4.0
四、3DSSD复现
1.Clone this repository.
git clone https://github.com/tomztyang/3DSSD
cd 3DSSD
2.Setup Python environment
conda create -n 3dssd python=3.6
source activate 3dssd
pip install -r requirements.txt
2.2Download and install tensorflow-1.4.0 here which is compiled with CUDA-9.0 and CuDNN-7.0.0.
pip install tensorflow-1.4.0-cp36-cp36m-linux_x86_64.whl
3.Compile and install 3DSSD library. Note that only GCC no later than version 5.0 can compile CUDA-9.0 code, make sure you install gcc-5.
bash compile_all.sh /path/to/tensorflow /path/to/cuda
出错:
打开compile_all.sh 修改其内容:
修改tf和cuda的路径:
修改后提示:
evaluate.cpp:12:42: fatal error: boost/numeric/ublas/matrix.hpp: 没有那个文件或目录
compilation terminated.
gcc-5: error: tf_points_pooling_g.cu: 没有那个文件或目录
gcc-5: warning: ‘-x c++’ after last input file has no effect
gcc-5: fatal error: no input files
compilation terminated.
修改后
错误:fatal error: boost/numeric/ublas/matrix.hpp: 没有那个文件或目录
有效!
再次运行命令,完成!
4.Add 3DSSD/lib to PYTHONPATH.
export PYTHONPATH=$PYTHONPATH:/path/to/3DSSD/lib:/path/to/3DSSD/mayavi
五、下载KITTI数据集
calib、image_2、label_2、velodne、下载地址:
KITTI数据集下载链接_alex1801的博客-CSDN博客_kitti数据集国内下载地址
planes下载地址:https://drive.google.com/file/d/1d5mq0RXRnvHPVeKx6Q612z0YRO1t2wAp/view
train.txt、val.txt、test.txt、trainval.txt 下载地址
why val imgs count is 3381 · Issue #36 · dvlab-research/3DSSD · GitHub
或
https://raw.githubusercontent.com/traveller59/second.pytorch/master/second/data/ImageSets/test.txt
https://raw.githubusercontent.com/traveller59/second.pytorch/master/second/data/ImageSets/train.txt
https://raw.githubusercontent.com/traveller59/second.pytorch/master/second/data/ImageSets/val.txt
下载后按照如下所示安排文件列表
. (root directory)
|-- lib (3DSSD library file)
|-- configs (model configurations folder)
|-- ...
|-- dataset
|-- KITTI (dataset directory)
| |-- object
| |-- train.txt (KITTI train images list (3712 samples))
| |-- val.txt (KITTI val images list (3769 samples))
| |-- test.txt (KITTI test images list (7518 samples))
| |-- trainval.txt (KITTI images list (7481 samples))
| |-- training
| | |-- calib
| | |-- image_2
| | |-- label_2
| | |-- planes
| | |-- velodyne
| |-- testing
|-- NuScenes
| |-- ...
|-- ...
进入3dssd环境,进入3DSSD-master文件夹
输入:
python lib/core/data_preprocessor.py --cfg configs/kitti/3dssd/3dssd.yaml --split training --img_list train
提示 没有core.config