安装过程需要的程序包下载地址:
链接:http://pan.baidu.com/s/1nvmh4JR密码:d9p2
1、 安装ubuntu16.04系统
不建议安装wubi版,最开始装的ubuntu14.04wubi就出现许多无法解决的问题,最终无奈转战16.04。
2、 安装CUDA
CUDA7.5不支持getforce 10 系列以上的显卡,所以,那些安装有geforce 10 系列---GTX10以上的显卡的同学必须安装CUDA8.0,那些含有CUDA7.5以下的本教程将不再适用。
2.1 验证系统是否支持CUDA的安装
2.1.1 确定GPU支持CUDA,执行命令:
lspci | grep -i nvidia
在http://developer.nvidia.com/cuda-gpus验证
2.1.2 确定linux版本支持CUDA,执行命令:
uname -m && cat /etc/*release
2.1.3 确定系统已经安装了gcc,执行命令:
gcc ––version
2.2 安装CUDA 8.0
在https://developer.nvidia.com/cuda-downloads下载CUDA最新版,或者在附件中有CUDA8.0(适用于ubuntu16.04)。
将三个文件下载好后放入“主文件夹”,然后根据运行以下三条命令:
sudo dpkg -icuda-repo-ubuntu1404-8-0-local-ga2_8.0.61-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda
在执行第二条命令后可能会出现的问题:
E:无法解析或打开软件包的列表或是状态文件。
解决方法:
执行命令:
sudo rm /var/lib/apt/lists/* -vf
然后继续执行
sudo apt-get update
sudo apt-get update
sudo apt-getinstall cuda
2.3 安装cuDNN
可以在官网https://developer.nvidia.com/rdp/form/cudnn-download-survey下载相应的版本(建议下载cuDNN5.1,因为我在第一次用的cuDNN7.0,后期编译caffe时出现一些错误,最后才知道是cuDNN版本错误,5.1版本最后才通过),或者在附件中直接使用我下载好的cuDNN5.1。
安装过程:
下载后把文件放在主文件夹并解压:
tar -xvf cudnn-8.0-linux-x64-v5.1.tgz
开始安装:
cd cuda/include/
sudo cp cudnn.h /usr/local/cuda/include/
cd ../lib64/
sudo cp lib* /usr/local/cuda/lib64/
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.5
sudo ln -s libcudnn.so.5.1.5 libcudnn.so.5
sudo ln -s libcudnn.so.5 libcudnn.so
2.4 设置环境变量,执行命令:
sudo gedit /etc/profile
在文件的最后加上两行:
PATH=/usr/local/cuda/bin:$PATH
export PATH
保存后, 执行下列命令, 使环境变量立即生效
source /etc/profile
2.5 安装cuda samples,执行命令:
cd /usr/local/cuda/samples
sudo make all -j4
全部编译完成后,继续执行命令:
cd bin/x86_64/linux/release
运行deviceQuery,执行命令:
./deviceQuery
如果出现显卡信息,则驱动及显卡安装成功,结果如下:
CUDA安装完成!
1、 安装Atlas
3.1 下载,根据需要选择不同的版本,但是推荐选择Python2.7的64位版本。(附件中给出的是python2.7版本)
下载地址:https://www.continuum.io/downloads#linux
3.2 安装,执行命令:
sudo apt-get install libatlas-base-dev
安装完成:
4、安装openCV
之前装opencv3.1.0失败了,原因是OpenCV3.1.0对Cuda8.0兼容性不好。Cuda8.0出来的时间是2016年9月,而OpenCV3.1.0却是去年,OpenCV2.4.13是今年5月,兼容性比OpenCV3.1.0要好,所以选择OpenCV2.4.13。
4.1安装编译工具:
sudoapt-get install build-essential
安装依赖包:
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-devlibavformat-dev libswscale-dev
sudo apt-get install build-essential cmakelibgtk2.0-dev pkg-config python-dev python-numpy libavcodec-dev libavformat-devlibswscale-dev
安装可选包:
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-devlibpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
4.2 使用wget下载opencv源码(或者直接用附件给的):
sudo apt-get install wget
sudo wget https://github.com/Itseez/opencv/archive/2.4.13.zip
4.3 解压ZIP源码文件:
sudo apt-get install unzip
sudo unzip 2.4.13.zip
4.4 进入源码目录,创建release目录:
cd opencv-2.4.13
(sudo)mkdir release
(如果用mkdir release提示权限不够加上sudo试试)
4.5 开始编译:
(sudo)cmake .
(‘cmake+空格+.’ 先试试cmake .指令,如果有错误试试sudo cmake .)
sudo make
sudo make install
sudo /bin/bash –c
sudo ldconfig
4.6 配置环境:
4.6.1 将opencv的库加入到路径,从而让系统可以找到,执行命令:
sudo gedit /etc/ld.so.conf.d/opencv.conf
末尾加入
/usr/local/lib
保存退出
sudo ldconfig
使配置生效
4.6.2 设置opencv的环境变量,执行命令:
sudo gedit /etc/bash.bashrc
末尾加入
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
保存退出
sudo source /etc/bash.bashrc #使配置生效
sudo updatedb #更新database
4.7 验证安装是否成功:
对opencv的sample进行编译并运行,依次执行如下代码
cd opencv-2.4.13/samples/c
(sudo)./build_all.sh
(如果用./build_all.sh有错加上sudo试试)
./facedetect--cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml"--scale=1.5 lena.jpg
出现lena图片就表示成功!
4.8查看版本:
pkg-config--modversion opencv
安装若报以下错误(第一次在ubuntu14.04安装有这个错误,在16.04没有此错误):
CMakeError at cuda_compile_generated_matrix_operations.cu.o.cmake:206 (message):
Errorgenerating
/home/yy/opencv-2.4.9/build/modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/./cuda_compile_generated_matrix_operations.cu.o
make[2]:***[modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/./cuda_compile_generated_matrix_operations.cu.o]错误 1
make[1]:*** [modules/core/CMakeFiles/opencv_core.dir/all]错误 2
make: ***[all] 错误 2
解决办法:指明GPU的架构,一般的都为开普勒架构。也就是在cmake 命令添加:CUDA_GENERATION=Kepler
执行命令:
cmake-D CMAKE_BUILD_TYPE=bulid -D CMAKE_INSTALL_PREFIX=/usr/local -DCUDA_GENERATION=Kepler ..
即可解决!
OpenCV安装完成!
5、caffe安装配置
5.1 下载(或者直接用附件中给出的):
github下载地址:https://github.com/BVLC/caffe
网盘下载地址:https://pan.baidu.com/s/1bpqsnZD
5.2 Makefile.config配置:
Makefile.config.example.这个文件是官方给出了编译的“模板”,我们可以直接拿过来修改一下就行。
5.2.1 复制下面的命令把名字改为Makefile.config。执行命令:
sudo cp Makefile.config.example Makefile.config
你会发现下面多了一个Makefile.config的文件
5.2.2 编辑Makefile.config文件,执行命令:
sudo gedit Makefile.config
然后根据个人情况修改文件:
1、若使用cudnn,则将#USE_CUDNN := 1修改成: USE_CUDNN := 1 (就是去掉注释的‘#’号)
2、若使用的opencv版本是2的,则将#OPENCV_VERSION := 3 修改为:OPENCV_VERSION := 2
3、若要使用python来编写layer,则将#WITH_PYTHON_LAYER := 1修改为WITH_PYTHON_LAYER := 1
4、要是你是用的anaconda的话(这个教程用的是anaconda,直接修改吧),还需要改一些地方:
把之前的PYTHON_INCLUDE加上注释,如图,把ANACONDA_HOME以及下面的PYTHON_INCLUDE的注释都去掉并修改anaconda的版本,改为如图的样子。注意:ANACONDA_HOME后面是anaconda的安装位置,根据自己的情况不同而不同,按照我给的安装包应该是anaconda2。其中$(HOME)就是你的家目录。
5、重要 :
将# Whatever else you find you need goeshere.下面的
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
5.3 修改makefile文件:
5.3.1 打开makefile文件,执行命令:
sudo gedit Makefile
5.3.2 编辑makefile文件:
将(大概409行):
NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC$(COMMON_FLAGS)
改为:
NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX)-Xcompiler -fPIC $(COMMON_FLAGS)
在Makefile文件的第大概181行,将
LIBRARIES += glog gflags protobufboost_system boost_filesystem m hdf5_hl hdf5
改为:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
5.4 编辑/usr/local/cuda/include/host_config.h,执行命令:
sudo subl/usr/local/cuda/include/host_config.h
将其中的第115行注释掉,即:
#error-- unsupported GNU version! gccversions later than 5 are not supported!
改为:
//#error-- unsupported GNU version! gccversions later than 5 are not supported!
5.5 编译:
5.5.1 先安装编译需要的库(貌似都有,保险起见都装一遍吧),执行命令:
sudo apt-get install libatlas-base-dev
sudo apt-get install libprotobuf-dev
sudo apt-get install libprotobuf-dev
sudo apt-get install libsnappy-dev
sudo apt-get install libopencv-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libhdf5-serial-dev
sudo apt-get install libgflags-dev
sudo apt-get install libgoogle-glog-dev
sudo apt-get install liblmdb-dev
sudo apt-get install protobuf-compiler
sudo apt-get install cmake
5.5.2 开始编译,执行命令:
sudo make all -j8
编译完成,如图。
5.5.3 进行测试,执行命令:
sudo make test
sudo make runtest
sudo make pycaffe
cd python
sudo python
import caffe
如果不报错,就说明安装成功。
可能会有import skimage.io ImportError: Nomodule named skimage.io这样的报错。
解决方法是:
(1)
easy_install scikit-image
pip install scikit-image
sudo pip install scikit-image
我装的时候是第二种方法解决的。
Caffe安装完成!
参考网站:
http://blog.csdn.net/leijiezhang/article/details/53688157
http://blog.csdn.net/c406495762/article/details/62896035
http://blog.csdn.net/u011557212/article/details/54706966?utm_source=itdadao&utm_medium=referral
http://blog.csdn.net/xierhacker/article/details/53035989
http://blog.csdn.net/autocyz/article/details/52299889
http://www.linuxidc.com/Linux/2015-07/120449.htm
http://m.blog.csdn.net/zouyu1746430162/article/details/53393393