ubuntu14.04-64位安装caffe+cuda7.5+opencv3.0完美教程2016.10.8

本文章是综合我多篇我参考的caffe安装教程,经过几天的尝试才安装成功。

因为我从头到尾安装了一次,所有的步骤都是遵循下面的步骤做的,

因此,对于电脑配置和我想当的用户可以按照我的步骤实现直接完美安装。

文章如有瑕疵,欢迎各位指正。


我现在的电脑配置是:ubuntu14.04系统,8G内存,GTX760显卡

下面开始安装:

1. 安装开发依赖包

<pre name="code" class="python"><span style="font-family: Arial, Helvetica, sans-serif;"></span>
 
sudo apt-get install build-essential
sudo apt-get install vim cmake git
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler #required by caffe




在安装之前最好查下你的gcc版本,版本最好在4.8+到4.9+(查询方法为:gcc -v),如果不是的话先将原版本卸载掉,再安装对应版本。

2.安装CUDA 7.5

首先到官网下载CUDA7.5:https://developer.nvidia.com/cuda-downloads
选择路径如下:
下载完成之后 切换到下载的deb所在目录,执行下边的命令:

<span style="font-family: "microsoft yahei";">sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb  </span>
sudo apt-get update  
sudo apt-get install cuda  

然后重启电脑:sudo reboot
NOTE:装不成功卸了多来几遍,总会成的

3.安装cuDNN

去百度下载cudnn-7.5-linux-x64-v5.0-ga.tgz

下载之后进入下载文件内输入:
tar -zxvf cudnn-7.5-linux-x64-v5.0-ga.tgz  
cd cuda  
sudo cp lib64/lib* /usr/local/cuda/lib64/  
sudo cp include/cudnn.h /usr/local/cuda/include/  

更新软连接

cd /usr/local/cuda/lib64/
sudo chmod +r libcudnn.so.5.0.5
sudo ln -sf libcudnn.so.5.0.5 libcudnn.so.5
sudo ln -sf libcudnn.so.5 libcudnn.so
sudo ldconfig

  4.设置环境变量
gedit /etc/profile

在打开的文件尾部加上

PATH=/usr/local/cuda/bin:$PATH
export PATH

保存后执行以下命令使之生效

source /etc/profile

同时创建以下文件

sudo vim /etc/ld.so.conf.d/cuda.conf

内容是

/usr/local/cuda/lib64

保存后,使之生效

sudo ldconfig

5. 安装CUDA Sample 及 ATLAS


5.1 Build sample

cd /usr/local/cuda/samples
sudo make all -j4

我电脑是4核的,所以make 时候用-j4参数

5.2 查看驱动是否安装成功

cd bin/x86_64/linux/release
./deviceQuery

出现以下信息则成功

    
    
[plain]  view plain  copy
 print ? 在CODE上查看代码片 派生到我的代码片
  1. ./deviceQuery Starting...  
  2.   
  3.  CUDA Device Query (Runtime API) version (CUDART static linking)  
  4.   
  5. Detected 1 CUDA Capable device(s)  
  6.   
  7. Device 0: "GeForce GTX 670"  
  8.   CUDA Driver Version / Runtime Version          7.5 / 7.5  
  9.   CUDA Capability Major/Minor version number:    3.0  
  10.   Total amount of global memory:                 4095 MBytes (4294246400 bytes)  
  11.   ( 7) Multiprocessors, (192) CUDA Cores/MP:     1344 CUDA Cores  
  12.   GPU Clock rate:                                1098 MHz (1.10 GHz)  
  13.   Memory Clock rate:                             3105 Mhz  
  14.   Memory Bus Width:                              256-bit  
  15.   L2 Cache Size:                                 524288 bytes  
  16.   Maximum Texture Dimension Size (x,y,z)         1D=(65536), 2D=(65536, 65536), 3D=(4096, 4096, 4096)  
  17.   Maximum Layered 1D Texture Size, (num) layers  1D=(16384), 2048 layers  
  18.   Maximum Layered 2D Texture Size, (num) layers  2D=(16384, 16384), 2048 layers  
  19.   Total amount of constant memory:               65536 bytes  
  20.   Total amount of shared memory per block:       49152 bytes  
  21.   Total number of registers available per block: 65536  
  22.   Warp size:                                     32  
  23.   Maximum number of threads per multiprocessor:  2048  
  24.   Maximum number of threads per block:           1024  
  25.   Max dimension size of a thread block (x,y,z): (1024, 1024, 64)  
  26.   Max dimension size of a grid size    (x,y,z): (2147483647, 65535, 65535)  
  27.   Maximum memory pitch:                          2147483647 bytes  
  28.   Texture alignment:                             512 bytes  
  29.   Concurrent copy and kernel execution:          Yes with 1 copy engine(s)  
  30.   Run time limit on kernels:                     Yes  
  31.   Integrated GPU sharing Host Memory:            No  
  32.   Support host page-locked memory mapping:       Yes  
  33.   Alignment requirement for Surfaces:            Yes  
  34.   Device has ECC support:                        Disabled  
  35.   Device supports Unified Addressing (UVA):      Yes  
  36.   Device PCI Bus ID / PCI location ID:           1 / 0  
  37.   Compute Mode:  
  38.      < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >  
  39.   
  40. deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 7.5, CUDA Runtime Version = 7.5, NumDevs = 1, Device0 = GeForce GTX 670  
  41. Result = PASS  

6.安装Intel MKL 或Atlas(我按的Atlas)

安装ATLAS

ATLAS是做线性代数运算的,还有俩可以选:一个是Intel 的 MKL,这个要收费,还有一个是OpenBLAS,这个比较麻烦;但是运行效率ATLAS < OpenBLAS < MKL

我就用ATLAS咯:

sudo apt-get install libatlas-base-dev
 
  
7.安装OpenCV

这是按部就班的安装方法,据说github上有大神编译好的安装包,一步傻瓜式安装,想练手的童鞋可以看看。
  • 搭建编译环境
<pre name="code" class="plain">sudo apt-get install build-essential


 
  
  • 安装依赖库
<pre name="code" class="plain">sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev


 
  
</pre><hr style="margin:2em 0px; border-right:0px; border-bottom:0px; border-left:0px; border-top-style:solid; color:rgb(51,51,51); font-family:"microsoft yahei"; font-size:14px" /><ul style="color:rgb(51,51,51); font-family:"microsoft yahei"; font-size:14px"><li style=""><span style="">下载OpenCV3.0</span>版本:(下载<span style="">上opencv官网下载</span><a target=_blank target="_blank" href="http://opencv.org/" rel="nofollow" style=""><span style="">http://opencv.org/</span></a>)</li></ul><pre class="prettyprint" name="code" style="white-space: nowrap; word-wrap: break-word; box-sizing: border-box; position: relative; overflow-y: hidden; overflow-x: auto; margin-top: 0px; margin-bottom: 1.1em; font-family: "Source Code Pro", monospace; padding: 5px 5px 5px 60px; font-size: 14px; line-height: 1.45; word-break: break-all; color: rgb(51, 51, 51); background-color: rgba(128, 128, 128, 0.0470588); border: 1px solid rgba(128, 128, 128, 0.0745098); border-radius: 0px;"><pre name="code" class="plain">mkdir ~/opencv
cd ~/opencv

将下载的zip文件复制到此opencv文件夹内,然后解压

unzip opencv-3.0.0.zip



 
  
 
  
 
  
  • 安装opencv
<pre name="code" class="plain">cmake .  # cmake+空格+"."
<pre name="code" class="plain">sudo make
<pre name="code" class="plain">sudo make install
<pre name="code" class="plain">sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig

 
  
 
  
 
  
 
  


  • 编译samples程序
<pre name="code" class="plain">cd ~/opencv/samples
sudo cmake .
sudo make -j $(nproc)

 
  
  • 运行测试程序 
    测试程序根据版本不同会有不同的数据路径等等,这个需要你根据自己的Opencv版本适当调整一下路径。
<span style="font-family: "microsoft yahei"; background-color: rgb(255, 255, 255);"></span><pre name="code" class="plain"># 注:使用alpha版本,images在opencv/cpp文件夹下
cd cpp/
./cpp-example-facedetect lena.jpg

 
  
<span style="font-family: "microsoft yahei"; background-color: rgb(255, 255, 255);">效果如下图: </span>

lena人脸识别

8. 安装Caffe所需要的Python环境

首先安装pip和python-dev (系统默认有python环境的, 不过我们需要的使python-dev)

sudo apt-get install python-dev python-pip

然后执行如下命令安装编译caffe python wrapper 所需要的额外包

for req in $(cat requirements.txt); do sudo pip install $req; done

在执行上述命令时, 会报错导致不能完全安装所有需要的包。 可以按照官方建议安装anaconda包。 在anaconda官网下载.sh文件,执行,最后添加bin目录到环境变量即可。

9. 下载Caffe安装包

下载caffe,我把caffe放在用户目录下

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

再转到caffe的python目录,安装scipy

cd caffe/python
sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

最后安装requirement里面的包,需要root权限

sudo su
for req in $(cat requirements.txt); do pip install $req; done

如果提示报错,一般是缺少必须的包引起的,直接根据提示 pip install <package-name>就行了。

安装完后退出root权限

exit 

10. 编译Caffe

首先修改配置文件,回到caffe目录

cd caffe
cp Makefile.config.example Makefile.config
gedit Makefile.config

这里仅需修改两处:

1))使用cuDNN

# USE_CUDNN := 1 

这里去掉#,取消注释为

 

USE_CUDNN := 1 

2) 修改python包目录,这句话

PYTHON_INCLUDE := /usr/include/python2.7 \
  /usr/lib/python2.7/dist-packages/numpy/core/include

改为

PYTHON_INCLUDE := /usr/include/python2.7 \
  /usr/local/lib/python2.7/dist-packages/numpy/core/include
3)将 OPENCV_VERSION := 3 前的#去掉

因为新安装的python包目录在这里: /usr/local/lib/python2.7/dist-packages/

接下来就好办了,直接make


make all -j4
make test
make runtest
make pycaffe

如果编译都通过了那就证明你安装成功了!










评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值