先简单写一些步骤,后面有时间再补充。我是root用户,否则请在shell命令前加sudo。
1.安装nvida GPU驱动
CUDA9.0要求至少390版本。
安装完了用nvidia-smi试一下。
2.安装CUDA9.0
下载Ubuntu16.04适用的CUDA9.0和四个补丁的安装包,使用bash安装。下载地址:CUDA Toolkit 9.0 Downloads | NVIDIA Developer
# 修改软链接
cd /usr/local
ln -s cuda-9.0 cuda
在~/.bashrc中加入环境变量
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64
export CUDA_ROOT=/usr/local/cuda
3.安装CuDNN7.6
https://blog.csdn.net/sinat_40938280/article/details/121401335
解压后把相应文件夹移到usr/local/cuda-9.0下就行。
4.安装gcc/g++ 5
系统自带的gcc/g++ 7,版本太高了需要降到5,然后修改软链接就行了,原来的7不用删。不降低版本无法编译DCNv2。
# 安装
apt install gcc-5
apt install g++-5
# 修改软链接
cd /usr/bin
rm gcc
rm g++
ln -s gcc-5 gcc
ln -s g++-5 g++
5.pytorch+工具包
到这里cuda就没问题了,接下来按照官方文档装环境就行了,大概如下:
conda create --name KM3D python=3.6
conda activate KM3D
conda install pytorch=1.0.0 torchvision -c pytorch
pip install -r requirements.txt
cd $KM3D_ROOT/src/lib/models/networks/DCNv2
./make.sh
#iou3d不用装。
坑1:gcc可能需要反复升级降级...
坑2:报错:
修改软链接即可,暴力使用libcudart.so.9.0代替libcudart.so.8.0。
ln -s /usr/local/cuda-9.0/lib64/libcudart.so.9.0 /usr/lib
ln -s /usr/local/cuda-9.0/lib64/libcudart.so.9.0 /usr/lib/libcudart.so.8.0
坑3:报错什么opencv.line还是什么玩意记不清了
pip install opencv-python==3.3.1.11
坑4:需要安装ipykernel
pip install ipykernel
坑5:colab的话不支持cv2.imshow,改为保存图片就行
#打开/RTM3D/src/lib/utils/debugger.py文件
#在第十一行添加:a = 1
#第363行(show_all_imgs函数内)添加:global a
#将cv2.imshow('{}'.format(i), v)改为cv2.imwrite('/content/RTM3D/src/exp/{}{}.jpg'.format(i,a),v)
#将cv2.imshow('{}BEV'.format(i), v)改为cv2.imwrite('/content/RTM3D/src/exp/{}{}BEV.jpg'.format(i,a),v)
#在sys.exit(0)下方添加a+=1(注意此行与上方的\"for i, v in self.imgs.items():\"缩进相同格)