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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容