Ubuntu+GPU+Tensorflow运行Faster-RCNN_TF环境搭建

版权声明:本文为博主原创文章,未经允许,不得转载。 https://mp.csdn.net/mdeditor/91491428
本人近期在学习Faster R-CNN目标检测算法,用了两天时间从搭建环境到运行模型demo,因为环境搭建各插件之间版本的依赖性比较强,因此决定用博客记录一下从安装到运行,以及过程中出现的错误,以免下一次继续入坑。
本人是用自己的电脑远程访问实验室的服务器,在服务器上配置环境并运行代码。

1 环境准备

我所使用的环境总体来说为:

  1. Ubuntu 16.04
  2. cuda 9.0
  3. cudnn 7.6.0
  4. python 2.7
  5. tensorflow 1.8.0

2 安装NVIDIA驱动

安装GPU版本的tensorflow,需要有NVIDIA显卡。
我所使用的服务器已经安装好了驱动,需要安装的同学可以去官网 http://www.nvidia.com/Download/index.aspx?lang=en-us,
查看适合自己显卡的驱动并下载安装。
安装完成之后输入以下指令进行验证: nvidia-smi,若列出了GPU的信息列表则表示驱动安装成功。

3 安装CUDA 9.0

3.1 下载CUDA

CUDA是NVIDIA的编程语言平台,想使用GPU就必须要使用cuda。
进入CUDA官网 https://developer.nvidia.com/cuda-downloads 下载CUDA安装包,我选择的是CUDA 9.0,即 cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64.deb。

3.2 安装CUDA

进入CUDA安装包所在目录,执行如下命令进行安装:

1cd ~/tools/cuda/cuda9.0_for_ubuntu16.04/ 2sudo dpkg -i cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64.deb 3sudo apt-key add /var/cuda-repo-9-0-local/7fa2af80.pub 4sudo apt-get update 5sudo apt-get install cuda 6 7

3.3 配置CUDA

修改配置文件~/.bashrc,把与CUDA相关的配置内容写入到文件尾部:

1export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}} 2export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64:/usr/local/cuda-9.0/extras/CUPTI/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} 3 4

3.4 验证CUDA是否安装成功

首先使用命令:

1cat /proc/driver/nvidia/version 2 3

确认已加载了正确的显卡驱动程序,如下图:
然后使用命令:

1nvcc -V 2 3

或:

1cat /usr/local/cuda/version.txt 2 3

查看cuda版本,如图:
nvcc -V可确认CUDA程序是否正常运行。

3.5 测试CUDA的samples

将cuda示例程序复制到当前的用户目录:

1cuda-install-samples-9.0.sh ~ 2 3

执行如下命令:

1cd ~/NVIDIA_CUDA-9.0_Samples/ 2make 3cd bin/x86_64/linux/release/ 4./deviceQuery 5 6

执行结果如下图:

4 安装cudnn

4.1 下载cudnn

进入cudnn官网 https://developer.nvidia.com/cudnn 注册登录后,下载cudnn 7.6 for CUDA 9.0(三个文件),如下图:

4.2 安装cudnn

进入cudnn 7.6 for CUDA 9.0三个文件所在的目录,执行如下命令安装:

1cd ~/cudnn 2sudo dpkg -i libcudnn7_7.6.0.64-1+cuda9.0_amd64.deb 3sudo dpkg -i libcudnn7-dev_7.6.0.64-1+cuda9.0_amd64.deb 4sudo dpkg -i libcudnn7-doc_7.6.0.64-1+cuda9.0_amd64.deb 5 6

4.3 验证cudnn是否安装成功

使用命令:

1cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 2 3

查看cudnn版本,如图:

4.4 测试CUDA的samples

将cudnn示例程序复制到当前的用户目录:

1cp -r /usr/src/cudnn_samples_v7/ ~ 2 3

执行如下命令:

1cd ~/cudnn_samples_v7/mnistCUDNN 2make clean && make 3./mnistCUDNN 4 5

执行结果如下图:

5 安装python

ubuntu16.04中默认安装了python2.7,通过以下命令查看python版本:

1python -V 2 3

6 安装tensorflow

6.1 将pip服务器更换为国内的镜像服务器

本次使用pip进行安装tensorflow
修改 ~/.pip/pip.conf (没有就创建一个):

1# 如果不存在此文件夹,则创建之 2mkdir ~/.pip 3vi ~/.pip/pip.conf 4 5

添加内容如下:

1[global] 2index-url=http://mirrors.aliyun.com/pypi/simple/ 3[install] 4trusted-host=mirrors.aliyun.com 5 6

6.2 使用python 2.7安装tensorflow-gpu 1.8.0

1# 如果本机未安装python和pip,则安装之 2sudo apt-get install python-pip python-dev 3# 更新pip 4sudo pip install -U pip 5# 安装tensorflow-gpu 1.9.0 6sudo pip install tensorflow-gpu==1.9.0 7 8

6.3 验证tensorflow-gpu 1.8.0是否安装成功

执行如下命令:

1python -c "import tensorflow as tf; print(tf.__version__)" 2 3

输出结果:

11.8.0 2 3

表明安装成功。

7 安装依赖库

1apt-get install cython python-opencv python-tk python-scipy python-yaml 2pip install easydict 3pip install matplotlib 4 5

至此环境搭建完成,接下来就可以从github上下载源码,进行运行啦。
代码运行详见博客:https://blog.csdn.net/qq_29370449/article/details/91447781

代码交流 2021