ubuntu16.04 + cuda8.0 + cudnn6.0 + opencv3.2安装caffe

step1 安装NVIDIA显卡驱动

因为我是重装了系统所以之前没有安过nvidia驱动,如果之前有装得话,可以自行删除,先 通过快捷键Ctrl+Alt+T打开终端

sudo apt-get remove --purge nvidia-*

下面开始安装 首先添加官方源

sudo add-apt-repository ppa:graphics-drivers/ppa

然后刷新软件库并安装(首先先去NVIDIA官网查询自己适合的驱动)

sudo apt-get update
sudo apt-get install nvidia-375 nvidia-settings nvidia-prime

上面的nvidia-375根据你查询的结果自行更改
Ps:这方法适用于Ubuntu16.04其他版本可能有问题 安装完成之后重启电脑 然后在命令行输入

nvidia-smi

出现显卡信息说明安装成功

step2 安裝CUDA8.0

先下载cuda8.0
然后cd进下载目录执行

sudo sh cuda_8.0.61_375.26_linux.run --override

看到这么一步时,选择n

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 *?
(y)es/(n)o/(q)uit: n

step3 修改~/.bashrc

sudo gedit ~/.bashrc

在最后加入

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

step4 安裝cuDNN 6.0

先下载cuDNN 6.0
然后执行

sudo tar xvf cudnn-8.0-linux-x64-v6.0.tgz
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*

step5 安装依赖及opencv 3.2.0

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential cmake git pkg-config libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler libatlas-base-dev libgflags-dev libgoogle-glog-dev liblmdb-dev python-pip python-dev python-numpy python-scipy
sudo apt-get install --no-install-recommends libboost-all-dev
pip install --upgrade pip
sudo pip install Cython

cd ~/
wget https://raw.githubusercontent.com/milq/milq/master/scripts/bash/install-opencv.sh
bash install-opencv.sh#这一步我执行了两次才成功

step6 安装Caffe

下载caffe并进入目录

git clone https://github.com/BVLC/caffe.git
cd caffe

复制配置文件

cp Makefile.config.example Makefile.config

修改配置文件

sudo gedit Makefile.config #打开Makefile.config文件 根据个人情况修改文件:

a.若使用cudnn,则将

#USE_CUDNN := 1

修改成:

USE_CUDNN := 1

b.若使用的opencv版本是3的,则

#OPENCV_VERSION := 3 

修改为:

OPENCV_VERSION := 3

c.若要使用python来编写layer,则

#WITH_PYTHON_LAYER := 1  

修改为

 WITH_PYTHON_LAYER := 1 

d.重要的一项 :

# Whatever else you find you need goes here. 下面的
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib 

修改为:

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial       

这是因为ubuntu16.04的文件包含位置发生了变化,尤其是需要用到的hdf5的位置,所以需要更改这一路径.

step7 编译caffe

make all
make pycaffe
make test
make runtest

在任意位置import caffe

sudo gedit ~/.bashrc   
export PYTHONPATH=~/caffe/python:$PYTHONPATH  
#上述语句中 “~” 号表示caffe 所在的根目录。

关闭文件,在终端输入下面命令,使环境变量生效

source ~/.bashrc  

编译python3版本

移除下面语句前面的注释

# Uncomment to use Python 3 (default is Python 2)
PYTHON_LIBRARIES := boost_python3 python3.5m
PYTHON_INCLUDE := /usr/include/python3.5m \
                 /usr/lib/python3.5/dist-packages/numpy/core/include

可能会遇到如下问题

CXX .build_release/src/caffe/proto/caffe.pb.cc
PROTOC (python) src/caffe/proto/caffe.proto
LD -o .build_release/lib/libcaffe.so.1.0.0-rc3
CXX/LD -o python/caffe/_caffe.so python/caffe/_caffe.cpp
/usr/bin/ld: cannot find -lboost_python3
collect2: error: ld returned 1 exit status
make: *** [python/caffe/_caffe.so] 错误 1

这时候,检查是否有如下文件:
!!! 这里的py35根据你的python版本来,我的是python3.5,这里就是py35

ls /usr/lib/x86_64-linux-gnu/libboost_python-py35.so

如果有,说明我们的系统中已经有了这种库文件,只是文件名不同。接下来执行下面语句

cd /usr/lib/x86_64-linux-gnu/
sudo ln -s libboost_python-py35.so libboost_python3.so

重新编译即可。
finish

reference

http://blog.csdn.net/Tang_DH/article/details/52556636
http://bleuren.me/106/install-caffe/

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

推荐阅读更多精彩内容