您的位置:首页 > 运维架构 > Linux

linux(ubuntu)下安装深度学习框架caffe

2018-04-01 21:12 866 查看


953

首先在Linux下安装OpenCV 3.0

 安装过程:

1. 安装依赖项

// 这里如果有版本或拼写问题,可以用tab去补全,查看要安装哪一个
// 建议不要一次安装这么多,这样可以看到哪里出错了
sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config
sudo apt-get install 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
查看是否安装成功:
// 查看cmake
yqtao@yqtao:~$ cmake --version
cmake version 3.5.1

// 查看python
yqtao@yqtao:~$ python
Python 2.7.12 (default, Nov 19 2016, 06:48:10)

// 查看numpy
>>> import numpy
>>> numpy.zeros((3,3))
array([[ 0.,  0.,  0.],
[ 0.,  0.,  0.],
[ 0.,  0.,  0.]])

2. 安装OpenCV 3

这里使用
opencv3.0.0-beta
版本,最好使用一样的,否则可能要折腾很久。这里直接网上搜索下载即可,下载后传到
linux
中,如果要在linux上下载可能会很慢。下载完成后解压
// 进入解压后的文件夹
yqtao@yqtao:~/opencv$ cd opencv-3.0.0-beta/

// 创建build
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=release -D CMAKE_INSTALL_PREFIX=/usr/local ..
注意了:这一步开始编译opencv,这里会出
4000
现要下载
ippicv_linux_20151201.tgz
这么个东西,这里是个坑啊,因此上面步骤应该会出现错误,因此到网上下载这个文件,将其复制到自己的目录 
opencv-3.0.0-beta/3rdparty/ippicv/downloads/linux-8b449a536a2157bcad08a2b9f266828b/
中,覆盖掉原来的tgz文件。然后重新编译cmake ,这是应该不会出错了。如果没提示错误:
make
make install
则完成安装。

3. 测试

到opencv自带的
samples
文件夹,选择
python2
文件夹,然后运行一个.py的文件,如果没有提示出错则正确.
python kmeans.py
则会出现kmeans的分类图形。

开始安装Caffe框架 

1. 安装依赖项

建议不要一次安装这么多,以免出错可以排除错误:
sudo apt-get install git
sudo apt-get install libprotobuf-dev libleveldb-dev
sudo apt-get install libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install python-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

2. 下载caffe源码

# 下载caffe源码
git clone https://github.com/BVLC/caffe.git cd caffe
cp Makefile.config.example Makefile.config
# caffe 源码 根据处理不同环境可以适当的进行修改

3. 配置Makefile文件

这里只是用CPU模式,打开
Makefile.config
文件 
1. 去掉CPU_ONLY:=1前面的#符号 
2. 去掉OPENCV_VERSION:=3编译:
sudo make -j4
sudo make test
sudo make runtest

4. 出错解决方法

如果出现fatal error: hdf5.h: 找不到的话:在Makefile.config文件的第85行,添加/usr/include/hdf5/serial/ 到 INCLUDE_DIRS,也就是把下面第一行代码改为第二行代码。
即将:
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
改为:
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
在Makefile文件的第173行,把 hdf5_hl 和hdf5修改为hdf5_serial_hl 和 hdf5_serial,也就是把下面第一行代码改为第二行代码
即将:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
改为:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
在进行重新编译:
sudo make -j4
sudo make test
sudo make runtest
则最后的运行截图可以看到安装成功了:

更正:
将# 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的位置,所以需要更改这一路径

cd /usr/lib/x86_64-linux-gnu

\\然后根据情况执行下面两句:
sudo ln -s libhdf5_serial.so.10.1.0 libhdf5.so
sudo ln -s libhdf5_serial_hl.so.10.0.2 libhdf5_hl.so
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: