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. Hadoop MapReduce编程 API入门系列之多个Job迭代式MapReduce运行(十二)

    推荐 MapReduce分析明星微博数据 http://git.oschina.net/ljc520313/codeexample/tree/master/bigdata/hadoop/mapredu ...

  2. js原生_获取url键值对

    思路: 1.先对url进行处理,获取 ?后的字符串 postid=10457794&actiontip=保存修改成功') 2. 字符串通过&标识,不同参数转为数组 ["pos ...

  3. jQuery操作样式知识总结

    css操作 功能:设置或者修改样式,操作的是style属性. 设置单个样式 //name:需要设置的样式名称 //value:对应的样式值 css(name, value); //使用案例 $(&qu ...

  4. JavaEE学习记录

    软件152谭智馗 一.JavaEE开发环境配置 1.准备以下压缩包 (1)JDK1.7:jdk1.7.rar (2)开发工具:eclipse-jee-mars-2 (3)项目管理工具:maven-3. ...

  5. https://coderwall.com/p/7smjkq/multiple-ssh-keys-for-different-accounts-on-github-or-gitlab

    Multiple SSH keys for different accounts on Github or Gitlab SSH GIT GITLAB GITHUB Sometimes you nee ...

  6. Win8.1应用开发之适配器模式(C#实现)

    实际上适配器模式是用于解耦.设想一下我们的程序模块A在与模块B打交道时,需要在许多地方多次使用B中某个类的方法,而负责开发B的程序猿Tom还未完全实现该类,会随时更改该类中的方法,那么当Tom在修改时 ...

  7. 杭电 2095 find your present (2)【位运算 异或】

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2095 解题思路:因为只有我们要求的那个数出现的次数为奇数,所以可以用位运算来做,两次异或同一个数最后结 ...

  8. Java中 对象的创建于调用

    Main方法是程序的主入口,想要用某个方法必须在main方法中调用 创建对象: 类名 对象名 = new 类名(); 使用对象访问类中的成员: 对象名.成员变量: 对象名.成员方法(); 成员变量的默 ...

  9. 远程连接windows出现身份验证错误,提示"由于CredSSP加密Oracle修正"解决方案

    本机操作系统(OS版本:10.0.17134) 远程计算机操作系统(OS版本:6.3.9600) 远程连接的时候报错“出现身份验证错误,要求的函数不受支持.远程计算机:xxx 这可能是由于CredSS ...

  10. 洛谷 1119 灾后重建 Floyd

    比较有趣的Floyd,刚开始还真没看出来....(下午脑子不太清醒) 先考虑一下Floyd本身的实现原理, for(k=1;k<=n;k++) for(i=1;i<=n;i++) for( ...