Ubuntu下快速配置Caffe
Caffe安装
实际上在windows上安装过多次caffe了,无论是BLVC版本的还是Microsoft版本的,ubuntu的按照也进行过,这段时间在自己笔记本上
又折腾了下caffe安装,发现其实直接照着官方的是最方便快捷的。
具体可以参照 Installation instructions
具体步骤
根据系统的不同,ubuntu分为两种安装方式。Ubuntu17.04以即上的可以直接apt-get
sudo apt install caffe-cpu # cpu only
sudo apt install caffe-cuda # gpu
其他版本的ubuntu也可以分为两种方式安装,但是依赖项是必须的,本文仅介绍简易的软件源中快速安装。源码安装可以参考本人的另外一篇博客:
Nvidia显卡驱动
由于要使用GPU,所以先要查看自己显卡所匹配的显卡驱动,网址:nvidia ,下载run文件。
由于目前显卡和cuda更新迅速,容易造成笔记本循环登录,因此安装显卡驱动是关闭图形界面。
# ctrl +alt +F1 进入tty1,
sudo service lightdm stop
sudo ./Nvidia-.....run 执行安装
sudo reboot
Cuda和CuDnn
安装较为简单,官网下载,在安装cuda是需要注意显卡安装选项选择no即可。
sudo sh cuda_8.0.44_linux.run --override
# 安装结束后
sudo vim ~/.bashrc //末尾添加
export CUDA_HOME=/usr/local/cuda-8.0
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-8.0/bin:$PATH
source ~/.bashrc
# 测试
cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
make -j32
sudo ./deviceQuery
cudnn下载后接下的include lib拷贝到cuda的安装路径,并设置链接。
sudo ln -s libcudnn.so.xxx libcudnn
sudo ln -s libcudnn.so.xx libcudd.so
sudo ldconfig
其他依赖项
其他依赖项安装可以直接从软件源获取,当然也可以自己源码安装。
# protobuf,snappy,leveldb,opencv,hdf5,boost ,python-opencv,glog ,gflag,lmdb
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install python-dev python-opencv
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
关于blas可以选择atlas,openblas和MKL,由于后续cmake方式安装默认atlas,所以本人也用次
sudo apt-get install libatlas-base-dev
# openblas也很方便
sudo apt-get install libopenblas-dev
Matlab的接口可以自己先安装matlab ,此处省略,同时python可以安装anconda来管理库
安装
Caffe
下载BVLC的caffe
git clone --recursive https://github.com/BVLC/caffe
编译
1.Make方式
Make方式为官方的编译方式,但是在后续caffe的使用时会稍显麻烦,这里要注意根据安装的库以及自己是否使用gpu、cudnn以及bals的选择等作出修改
cp Makefile.config.example Makefile.config
# For CPU & GPU accelerated Caffe, no changes are needed.
#For cuDNN acceleration using NVIDIA’s proprietary cuDNN software, uncomment the USE_CUDNN := 1 switch in #Makefile.config. cuDNN is sometimes but not always faster than Caffe’s GPU acceleration.
#For CPU-only Caffe, uncomment CPU_ONLY := 1 in Makefile.config.
# Adjust Makefile.config (for example, if using Anaconda Python, or if cuDNN is desired)
make all -j8
make test
make runtest
2.Cmake方式
Cmake方式针对自己使用Caffe以及从软件源安装Caffe的用户来说简直不要更方便.
mkdir build
cd build
cmake ..
make all
make install
make runtest
由于自己使用Caffe不仅仅是停留在训练,可能很多都要具体的测试实际的项目,因此相比于Make方式,Cmake的优势就大大体现出来了。具体例子可以在我的github上看到https://github.com/zhanglaplace/MTCNN-Accelerate-Onet
编译自己的项目,仅仅需要写一个简单的CMakeLists.txt文件,并且文件内的内容可以保证百分之九十的不变,这使得验证算法和项目变得相当方便.(强烈推荐)
cmake_minimum_required(VERSION 2.9)
project(MTCNN_Accelerate-Onet) // 根据自己工程名字修改
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(CMAKE_CXX_STANDARD 11)
find_package(OpenCV)
find_package(Caffe REQUIRED)
#message(FATAL_ERROR ${Caffe_INCLUDE_DIRS})
include_directories(${Caffe_INCLUDE_DIRS})
set(SOURCE_FILES main.cpp mtcnn.cpp mtcnn.h) // 根据自己实际源码修改
add_executable(MTCNN_Accelerate-Onet ${SOURCE_FILES})
target_link_libraries(MTCNN_Accelerate-Onet ${OpenCV_LIBS} )
target_link_libraries(MTCNN_Accelerate-Onet ${Caffe_LIBRARIES})
本文作者: 张峰
本文链接:http://www.enjoyai.site/2017/11/21/InstallCaffe/
版权声明: 本博客所有文章,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!
Ubuntu下快速配置Caffe的更多相关文章
- caffe学习(1):多平台下安装配置caffe
如何在 centos 7.3 上安装 caffe 深度学习工具 有好多朋友在安装 caffe 时遇到不少问题.(看文章的朋友希望关心一下我的创业项目趣智思成) 今天测试并整理一下安装过程.我是在阿 ...
- Opencv 2.4.9在Ubuntu下的配置与安装
[原]Opencv 2.4.9在Ubuntu下的配置安装 Opencv 2.4.9在Ubuntu下的配置与安装 surgewong@gmail.com http://blog.csdn.net/su ...
- Ubuntu下MySql配置
Ubuntu下MySql配置 安装MySQL 命令: sudo apt-get install mysql-server MySQL初始配置及管理 启动MySQL mysql start : mysq ...
- Ubuntu下Maven配置与Maven项目创建教程
一. Ubuntu下Maven配置 windows下Maven配置参考http://www.cnblogs.com/LexMoon/p/JavaMaven.html ubuntu下Maven地址htt ...
- Windows 10下安装配置Caffe并支持GPU加速(修改版)
基本环境 建议严格按照版本来 - Windows 10 - Visual Studio 2013 - Matlab R2016b - Anaconda - CUDA 8.0.44 - cuDNN v4 ...
- Ubuntu下HTTPS配置
Ubuntu下HTTPS配置非常简单,对大部分用户而言,使用普通的自签名证书,只需按照步骤进行就可以了,无需了解密钥.证书的更多知识,更深的背景知识还有RSA算法.DES算法.X509规范.CA机构. ...
- Ubuntu下Linux配置内核各种常见错误和解决办法
镜像下载.域名解析.时间同步请点击阿里云开源镜像站 这篇把Ubuntu下Linux配置内核各种常见错误和解决办法给大家讲解一下,希望可以帮助到大家. 一.Ubuntu系统中缺少各种依赖包导致的问题 1 ...
- ubuntu下安装配置OpenCV
Cmake的安装 我用的是ubuntu-software自动下载安装的. Ubuntu 下安装 OpenCV 首先下载安装相关包,然后下载OpenCV 系统:ubuntu16.04 OpenCV:2. ...
- Ubuntu下快速安装LAMP server
Ubuntu下可快速安装LAMP server(Apache+MySQL+PHP5). 首先,打开Ubuntu虚拟机,Terminal打开root权限:“sudo -s”. 一.安装LAMP serv ...
随机推荐
- Python笔记9-----不等长列表转化成DataFrame
1.不同长度的列表合并成DataFrame. 法1: ntest=['a','b'] ltest=[[1,2],[4,5,6]] 先变成等长的列表:(a:1),(a:2),(b:4),(b:5),(b ...
- ubuntu重置root密码(转载自https://zhinan.sogou.com/guide/detail/?id=316512881651)
ubuntu忘记root密码怎么办?如果普通用户忘记了怎么办 ### 第一种方法:无论你是否申请了root帐号,或是普通账号密码忘记了都没有问题的! 1. 重启ubuntu,随即长按shift进入gr ...
- UVALive-8138 Number Generator 概率dp+优化
题目链接:https://cn.vjudge.net/problem/UVALive-8138 题意 有一个随机数生成器,输出1-n的整数. 现在已经输出了k个数,问再取几个数才能使取出的所有数的个数 ...
- 02.OOP面向对象-3.一些理解
对封装的理解? 封装,类本身就是一个封装,封装了属性和方法.方法也是封装,对一些业务逻辑的封装.私有也是封装,将一些方法和属性私有化,对外提供可访问的接口. 对继承的理解 将共性的内容放在父类中,子类 ...
- ndk,cygwin编译 .so动态库
注意: ndk .cygwin 安装路径尽量要和sdk放到一个磁盘里,设置环境变量. 例如D: 根目录 变量名:ndk 值:/cygdrive/d/android-ndk-r8e 打开cygwi ...
- 利用LoadRunner来进行文件下载的测试
小强创立的“三级火箭”学习方式 1.参加培训班,即报名缴纳学费后,拉入专属QQ群,由老师亲自上课进行讲解,课后仍提供视频 性能测试培训班招生中,报名与咨询QQ:2083503238 python自动化 ...
- String类常见的方法
类String public final class String extends Object implements Serializable, comparable<String>, ...
- BZOJ 3674 可持久化并查集加强版(按秩合并版本)
/* bzoj 3674: 可持久化并查集加强版 http://www.lydsy.com/JudgeOnline/problem.php?id=3674 用可持久化线段树维护可持久化数组从而实现可持 ...
- ajax短轮询+php与服务器交互制作简易即时聊天网站
主流的Web端即时通讯方案大致有4种:传统Ajax短轮询.Comet技术.WebSocket技术.SSE(Server-sent Events). 本文主要介绍ajax短轮询的简易实现方式. 看懂此文 ...
- C#中的LINQ 基础
1.LINQ的数据源 必须可枚举的,即必须是数组或者集合 (继承了IEnumerable<T>接口就可以,注意是IEnumerable<T>,不是IEnumerable接口,不 ...