caffe-face编译

来源:互联网 发布:淘宝二级域名开通 编辑:程序博客网 时间:2024/05/17 23:21

说明:

搭建环境及使用的软件版本:Ubuntu14.04+CUDA8.0+cuDNN5.1+opencv2.4.13+dlib19.4+matlab2016b+python2.7。
opencv推荐使用2.4.13版本,博主使用其他版本与CUDA8.0编译时出错,PC没有显卡可跳过步骤1,2,dlib可以不安装。安装过程中可能会出现问题百度谷歌都能解决。注:双显卡电脑可参考双显卡下编译caffe。


一.安装CUDA

1.卸载驱动

  • 删除旧NVIDIA 驱动,卸载命令:
sudo apt-get --purge remove nvidia-* 
sudo apt-get purge remove xserver-xorg-video-nouveau
  • 重启电脑,快捷键Ctrl+Alt+F1 切换到tty1 界面,关闭桌面管理。
sudo stop lightdm

2.安装CUDA

  • 下载CUDA:https://developer.nvidia.com/cuda-downloads
  • 将CUDA 安装到本地仓库,切换目录
sudo dpkg -i cuda-repo-ubuntu1404-8-0-local-ga2_8.0.61-1_amd64.deb
  • 更新本地仓库
sudo apt-get update
  • 安装CUDA 和显卡驱动(CUDA 默认路径:/usr/local/cuda)
sudo apt-get install cuda
  • 打开桌面管理后,重启电脑
sudo start lightdm

3.配置CUDA

  • 重启进入系统后,设置环境变量,在/etc/profile 文件末尾添加下列信息。
export PATH=/usr/local/cuda-8.0/bin:$PATHexport LD_LIBRARY_PATH=/usr/local/cuda8.0/lib64:$LD_LIBRARY_PATH
  • 查看CUDA 编译器版本
nvcc –V

返回类似以下信息
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Mon_Feb_16_22:59:02_CST_2016
Cuda compilation tools, release 8.0, V8.0.61

二.安装cuDNN安装

1.下载

  • 下载地址:https://developer.nvidia.com/cudnn

2.安装

  • 解压进入目录
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/lib64/libcudnn*

三.boost 库安装

1.下载boost 库

  • 下载地址:http://www.boost.org/,下载合适boost 版本。

2.安装依赖库

apt-get install mpi-default-dev libicu-dev python-dev libbz2-dev

3.编译boost库

  • 下载得到boost1_58_0.tar.gz 后,解压文件得到boost_1_58_0
  • 修改user-config.jam 文件
    (在/boost/tools 下搜索user-config.jam),在user-config.jam 文件最后添加一行using mpi ; #注意mpi 后面有一个空格
  • 下面开始编译boost 库,终端输入指令得到b2 和bjam.
sudo ./bootstrap.sh
sudo ./b2 -a -sHAVE_ICU=1

-a 参数,代表重新编译,-sHAVE_ICU=1 代表支持Unicode/ICU它需要大概半小时的时间。

4.安装boost 库

  • 安装boost 库,输入
sudo ./b2 install

如果以上几步都没有报错的话,boost 库就算安装完成,可以去/usr/local/include/目录下看是否有生成boost 文件夹验证一下。

四.编译安装opencv

1.下载

  • 下载地址:http://opencv.org/releases.html

2.安装依赖库

  • 安装必要的依赖,依次执行:
sudo apt-get updatesudo apt-get install -y --no-install-recommends build-essential cmake libavcodec-dev libavformat-dev libgtk2.0-dev libgtkglext1 libgtkglext1-dev libjpeg-dev  libpng-dev libswscale-dev libtbb2 libtbb-dev libtiff-dev pkg-config unzip wget

3.编译安装opencv

mkdir buildcd buildcmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_CUDA=ON -D ENABLE_FAST_MATH=ON -D CUDA_FAST_MATH=ON -D WITH_CUBLAS=1 -D WITH_NVCUVID=on -D CUDA_GENERATION=Auto ..(安装CUDA和cuDNN)cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..(没有安装CUDA和cuDNN)sudo make -j4sudo make install

五.安装dlib

1.下载

  • 下载地址:http://dlib.net/

2.编译

  • C++编译
mkdir buildcd buildcmake ..make release=1
  • python编译
wget https://bootstrap.pypa.io/ez_setup.py -O - | sudo pythonsudo python setup.py installsudo cp /zh/dlib/dlib.so  /usr/local/anaconda2/lib/python2.7/site-packages/(复制dlib.so到site-packages路径下))

六.安装matlab

1.下载安装

  • 参考:http://www.linuxdiyf.com/linux/27432.h
  • 在任何目录启动matlab
sudo ln -s /usr/local/MATLAB/R2016b/bin/matlab /usr/local/bin/matlab

2.python调用matlab

cd matlabroot/extern/engines/python python setup.py install

七.编译caffe-face

1.下载

  • 下载地址:https://github.com/ydwen/caffe-face

2.安装依赖库

sudo apt-get install freeglut3-dev libx11-dev libxmu-dev libxi-dev libglu1-mesa-devsudo apt-get install libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-devsudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-devsudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serisudo apt-get install libatlas-base-dev

3.编译

  • 进入根目录,修改配置文件
cp Makefile.config.example Makefile.config如果使用了cuDNN,则取消如下行注释:# USE_CUDNN := 1添加matlab路径MATLAB_DIR := matlabroot
  • 编译caffe-face
sudo make all -j4sudo make testsudo make runtest
  • 编译matcaffe和pycaffe
sudo make matcaffesudo make mattest -j4(测试)sudo make pycaffe
  • 运行minist demo
sh data/mnist/get_mnist.shsh examples/mnist/create_mnist.shsh examples/mnist/train_lenet.sh

如果运行正常,caffe-face就编译成功。

参考

[1]http://blog.csdn.net/tingyue_/article/details/45618413
[2]http://blog.csdn.net/lixintong1992/article/details/51141900
[3]http://blog.csdn.net/tingyue_/article/details/45619213
[4]http://www.linuxidc.com/Linux/2016-12/138865.htm
[5]http://blog.csdn.net/liuxiaoheng1992/article/details/54407589
[6]http://blog.csdn.net/hao529good/article/details/46831117
[7]http://www.linuxdiyf.com/linux/27432.html
[8]http://www.linuxidc.com/Linux/2016-09/135016.htm

注:特别感谢以上文章的作者,该文章也是在以上文章的基础上综合整理而来。

0 0
原创粉丝点击