Mask RCNN环境配置(Ubuntu16.04+Anaconda3+Nvidia驱动+CUDA9.0+CUDNN7.0.5+tensorflow-gpu1.5.0)

博主的笔记本配置:Ubuntu16.04LTS + i7-7700hq+GXT1050 4G


一、安装Anaconda3

1、下载
下载地址:https://www.continuum.io/downloads
2、安装
在文件目录下执行:bash Anaconda3-4.2.0-Linux-x86_64.sh
回车键继续
阅读完注册信息后,这里输入“yes”
选择加入环境变量,这里输入“yes”
看到信息“For this change to become active, you have to open a new terminal.”(要使这个更改生效,必须打开一个新的终端。)这句话提示,需要在新的终端窗口使用anaconda,打开新的终端,查看相应的版本信息
3、创建tensorflow所需要的环境
conda create -n tensorflow python=3.6
4、激活(相当于进入到tensorflow的环境中)
source activate tensorflow
激活以后命令行前面会增加 (tensorflow)


二、安装Nvidia驱动

安装NVIDIA驱动有几种方法,网上大多建议进入tty终端手动运行run驱动文件,但是博主按照这种方法装不成功,提示以下错误,供大家参考:
1、在安装run驱动文件时会报make -j8 NV_EXCLUDE_BUILD_MODULES错误

ERROR: Failed to run `/usr/sbin/dkms build -m nvidia -v 367.57 -k 4.15.0-36-generic`:   
Kernel preparation unnecessary for this kernel.  Skipping...                                                                                                                                                                               
Building module:                                                                                                                                                                                                                                                                                                                                                                                                                                                                   
cleaning build area....                                                                                                                                                                                                                'make' -j8 NV_EXCLUDE_BUILD_MODULES='' KERNEL_UNAME=4.15.0-36-generic modules.....(bad exit status: 2)                                                                                                                                
ERROR (dkms apport): binary package for nvidia: 367.57 not found                                                                                                                                                                       
Error! Bad return status for module build on kernel: 4.15.0-36-generic (x86_64)                                                                                                                                                        
Consult /var/lib/dkms/nvidia/367.57/build/make.log for more information. 

这个错误可以通过安装时多添加一个选项-no-cc-version-check来解决
2、成功安装后nvidia-smi能正常显示信息,但nvidia-settings报错:

Error:unable to load info from any available system

这个错误通过sudo apt-get install nvidia-settings来解决,但打开驱动settings界面后依旧报错,所以还是不可行。

我推荐的方法:通过使用标准Ubuntu仓库和ppa源进行自动安装

1、先禁用Nouveau,方法为:

sudo gedit /etc/modprobe.d/blacklist.conf
或者
sudo vim /etc/modprobe.d/blacklist.conf
 
在最后两行添加:
 
blacklist nouveau
options nouveau modeset=0     // 禁用nouveau第三方驱动,之后也不需要改回来
 
执行
 
sudo update -initramfs -u   // 更新内核

2、使用标准Ubuntu 仓库和ppa进行自动安装

sudo add-apt-repository ppa:graphics-drivers/ppa      //添加ppa库到系统中
sudo apt update         //  更新
sudo ubuntu-drivers autoinstall //自动下载,由于仓库在国外所以下载很慢,可以考虑科学上网的方法
sudo reboot //重启

3、验证安装成功:
输入:nvidia-smi
显示:


image.png

输入:nvidia-settings
显示:


image.png

三、安装CUDA9.0(博主的笔记本GXT1050是支持CUDA的)

1、首先去英伟达官网下载cuda9.0安装包
(ubuntu) https://developer.nvidia.com/cuda-90-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1604&target_type=runfilelocal(下载Base Installer)

image.png

2、安装相关依赖库:(缺少相关依赖库等会安装时会报错误Missing recommended library: libGLU.so;Missing recommended library: libXmu.so)
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
如果提示依赖无法解决,则尝试sudo aptitude install 安装,选择一个合适的依赖解决方案。ps:如果没有apttitude则aptitude需要另外安装。

3、安装:(安装之前要禁用nouveau,方法参考上面对应部分)
给runfile文件赋权限:chmod a+x cuda_9.0.176_384.81_linux2.run
执行安装:sudo ./cuda_9.0.176_384.81_linux2.run
安装过程中一直按着确定键直到100%,然后按accept、n(不要安装driver)、y、y、y
4、设置环境变量

sudo gedit ~/.bashrc

在文本的末尾加上:

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

5、验证:

nvcc --version

显示如下则代表安装成功:


image.png

四、安装cuDNN v7.0.5 (Dec 5, 2017), for CUDA 9.0(注意是安装cuDNN7.0.5版本,如果安装到7.6版本运行tensorflow1.5.0可能会报版本不符错误)

1、(官网) https://developer.nvidia.com/rdp/cudnn-archive
需要先注册然后选择上面的版本要求下载。Cuda和Cudnn可能打开网页很慢,但是下载的时候速度还可以,有些用梯子的人可以考虑还是国内下载的好。
找到如图所示的地方,下载 cuDNN v7.05 Library for Linux

image.png

2、解压:tar -xzvf cudnn-9.0-linux-x64-v7.tgz
3、执行安装和赋予权限:
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
4、验证:
输入:

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

显示如下图片则为安装成功


image.png

五、安装tensorflow

1、安装依赖包:(pip安装很慢,可以用清华源进行下载例如:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xxx)xxx就是我们要下载的软件

source activate tensorflow 
pip install --upgrade pip
pip install numpy
pip install scipy
pip install cython
pip install h5py
pip install Pillow
pip install scikit-image
pip install keras
pip install theano
pip install jupyter
pip install six

2、安装pycocotools
直接输入

git clone https://github.com/waleedka/coco.git
pip install git+https://github.com/waleedka/coco.git#subdirectory=PythonAPI

3、安装tensorflow cpu版和gpu版

pip install tensorflow==1.5.0      //cpu版本
pip install tensorflow-gpu==1.5.0  //gpu版本

4、安装opencv
在上一基础上,在命令行输入:

pip install opencv-python

5、安装imagaug

pip install imgaug

6、验证tensorflow:

source activate tensorflow
python
import tensorflow as tf
print(tf.__version__)

输入版本号即为成功

到这里MaskRCNN所需要的基本环境就配置成功了


六、配置Mask RCNN

1、下载Mask-RCNN
git clone https://github.com/matterport/Mask_RCNN.git
2、下载coco权重文件
https://github.com/matterport/Mask_RCNN/releases
在页面上下载 mask_rcnn_coco.h5 (246MB)(直接点击mask_rcnn_coco.h5链接即可下载,下载速度很慢,建议用科学上网的形式来加速)
将下载好的mask_rcnn_coco.h5文件放到Mask_RCNN文件夹下。
3、运行Mask_RCNN案例
在前面步骤的基础上进入 Mask_RCNN目录
在命令行输入:

source activate tensorflow
jupyter notebook 

稍等片刻,会在浏览器打开页面,点击进入 samples目录,点击demo.ipynp进入代码运行页面
选择 Cell 菜单,在 Cell下拉菜单选择 Run All(运行所有),稍等片刻,在该页面底部会输出运行结果


image.png

你可能感兴趣的:(Mask RCNN环境配置(Ubuntu16.04+Anaconda3+Nvidia驱动+CUDA9.0+CUDNN7.0.5+tensorflow-gpu1.5.0))