1. 安装依赖项 

1 sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
2 sudo apt-get install --no-install-recommends libboost-all-dev
3 sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
4 sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

2.  下载解压OpenCV3.1

①   OpenCV 下载链接: http://opencv.org/releases.html

下载3.1.0 Sources源码:

②   下载的OpenCV源码的压缩包 opencv-3.1.0.zip 的保存路径默认是在 home/用户名/下载 下,进入到该目录。

解压并拷贝到home目录后重命名:

cd ~/下载
unzip opencv-3.1.0.zip
sudo mv ./opencv-3.1.0 ~/OpenCV

③  进入OpenCV目录,创建build文件夹:

cd ~/opencv
mkdir build
cd build

3. 使用CMake编译OpenCV

sudo apt install cmake
sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
sduo make -j4

之后编译成功,输入以下指令完成安装:

sudo make install

4. 验证OpenCV是否正确安装

切换到OpenCV下的samples目录,并编译samples程序:

cd ~/OpenCV/samples
sudo cmake .
sudo make -j $(nproc)

继续切换到cpp目录下,运行测试程序

cd cpp/
./cpp-example-facedetect lena.jpg

这是一个人脸检测的测试程序,运行结果:

5.  下载caffe

caffe源代码下载地址:  https://github.com/BVLC/caffe

将下载的caffe源码压缩包解压并移动到home目录下:

cd ~/下载
unzip caffe-master.zip
sudo mv ./caffe-master ~/caffe-master

6. 修改Makefile.config配置文件

复制一份Makefile.config文件并使用gedit打开修改配置:

cd ~/caffe-master
sudo cp Makefile.config.example Makefile.config
sudo gedit Makefile.config

修改如下节点:

  • #USE_CUDNN:=1 改为 USE_CUDNN:=0   (不使用CUDN,注意去掉前边的#符号)
  • #OPENCV_VERSION := 3  OPENCV_VERSION := 3
  • #WITH_PYTHON_LAYER :=1 改为  WITH_PYTHON_LAYER :=1(python接口)

ubuntu16.04版本相比14.04版本,文件包含位置有变化,所以以下两处一定要做更改:

INCLUDE_DIRS := $(PYTHON_INCLUDE)
/usr/local/include 改为:

INCLUDE_DIRS := $(PYTHON_INCLUDE)
/usr/local/include /usr/include/hdf5/serial

LIBRARY_DIRS := $(PYTHON_LIB)
/usr/local/lib /usr/lib  改为:

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

7. 修改makefile文件

打开caffe-master目录下的makefile文件,做如下修改:

NVCCFLAGS +=-ccbin=$(CXX)
-Xcompiler-fPIC $(COMMON_FLAGS)  修改为:

NVCCFLAGS += -D_FORCE_INLINES
-ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)

8. 编译caffe

在caffe-master目录运行终端,输入:

sudo make all -j4

9. 测试caffe是否安装成功

运行以下指令:

sudo make runtest

运行之后有以下结果,说明caffe配置成功:

ubuntu16.04下配置caffe无GPU的更多相关文章

  1. Ubuntu16.04安装配置Caffe教程(GPU版)

    推荐博客:https://www.linuxidc.com/Linux/2017-11/148629.htmhttps://blog.csdn.net/yggaoeecs/article/detail ...

  2. Ubuntu16.04下配置ssh免密登录

    Ubuntu16.04下配置ssh免密登录 环境准备:新建两台虚拟机,而且两台虚拟机上都装有Ubuntu16.04的系统,使两台虚拟机之间保持互通状态.分别为两台虚拟机命名为A,B.假设我们要使A虚拟 ...

  3. Linux入门(16)——Ubuntu16.04下配置sublime text 3使用markdown

    sublime text 3安装两个插件: MarkDown Editing OmniMarkupPreviewer 有的人使用 MarkDown Editing markdownpreviewer ...

  4. Windows下VS2013+Caffe无GPU配置

    Windows版本的caffe工具包下载地址: 点击打开链接 1. 将下载的caffe-master.zip解压到 D:\Software\Caffe 文件夹下,把 D:\Software\Caffe ...

  5. Ubuntu16.04 安装配置Caffe

    Caffe已经是第三次安装配置了,为什么是第三次呢?因为我实在是低估了深度学习对于硬件的要求.第一次我在自己笔记本上配置的单核,CPU only ...  结果是,样例数据跑了4小时,这还怎么玩?第二 ...

  6. ubuntu16.04下配置JDK 1.8+安装Java EE,并实现最大子数组算法

    软工第二次作业: 1.在个人电脑中安装一个集成开发环境(Microsoft Visual Studio.Eclipse或其它工具均可),要求该环境能够提供单元自动测试功能: 2.记录安装过程,并将全部 ...

  7. ubuntu16.04下配置apache2与php

    系统版本:ubuntu16.04 命令均在终端中输入,用浏览器测试 //安装apache2命令 sudo apt install apache2 //测试是否安装成功 浏览器地址栏输入“localho ...

  8. Ubuntu16.04下安装tensorflow(GPU加速)【转】

    本文转载自:https://blog.csdn.net/qq_30520759/article/details/78947034 版权声明:本文为博主原创文章,未经博主允许不得转载. https:// ...

  9. 转:Ubuntu16.04下配置php+vscode+xdebug开发环境

    转:https://blog.csdn.net/its_my_dream/article/details/78549619 操作系统是Ubuntu16.04,首先要安装和配置php运行环境,我这里用的 ...

随机推荐

  1. NOIP 2010 关押罪犯 并查集 二分+二分图染色

    题目描述: S 城现有两座监狱,一共关押着N 名罪犯,编号分别为1~N.他们之间的关系自然也极不和谐.很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突.我们用"怨气值" ...

  2. JUC集合-BlockingQueue

    BlockingQueue 阻塞队列,支持两个附加操作. 1,在队列为空时,获取元素的线程会等待对列变为非空. 2,在队列为满时,存储元素的线程会等待对列可用. 使用场景: 生产者往对列里添加元素 消 ...

  3. url 域名 主机名

    1. url = 协议//主机名(包括服务器的计算机名+域名)/路径 https:// i. cnblogs.com /index.html .com是顶级域名,从右向左,每碰到一个".&q ...

  4. readonly and const variable

    共同点:都是常量: 不同点:const的值必须在编译前确定,通常在声明的同时赋值:而readonly可在运行时确定:

  5. Algorithms算法题<1.1>

    1.1.27 二项分布.估计用一下代码计算binomial(100,50,0.25)将会产生的递归调用次数: public static double binomial(int N,int k,dou ...

  6. C# 解析 j s 三元运算符

    private void button1_Click(object sender, EventArgs e) { //转换 string str1 = "表达式1?表达式2:表达式3&quo ...

  7. JS 垃圾回收机制

    [转自]:https://segmentfault.com/a/1190000018605776 垃圾回收 JavaScript 中的内存管理是自动执行的,而且是不可见的.我们创建基本类型.对象.函数 ...

  8. Javaee 方法的构建和调用

    主类: package Szy02; public class Person { String name; int age; String sex; public Person(){ } public ...

  9. 洛谷P1941飞扬的小鸟 完全背包

    思维难度不大,就是有许多细节要注意. 1.不能开滚动数组. 2.要特判飞过天花板的情况. Code: #include<cstdio> #include<algorithm> ...

  10. When you hit a wall, just kick it in.

    Teach Yourself Programming in Ten Years. ----- Peter Norvig Teach Yourself Programming in Ten Years  ...