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 ...
随机推荐
- C# 递归产生树
//递归产生树 private void CreateTwo(TreeNode node, int id) { #region --根据指定ID查找数据到 dt string strSql = &qu ...
- Django 了解
Django是一个开放源代码的Web应用框架 Django也是一个基于 MVC 构造的框架. 但是在Django中,控制器接受用户输入的部分由框架自行处理,所以 Django 里更关注的是模型(Mod ...
- Final 用法
可修饰:类及类的成员.成员变量.局部变量,不能修饰构造方法 final修饰的类不能被继承但可以继承其他的类 final修饰的类不能被重写和继承,子类修改的方法可以加继承 final修饰的局部变量和成员 ...
- SQL SEVER 递归查询
with ts as ( --首先要查询出最原始父级的信息 union all --全连接 select a.fitemclassid,a.fitemid, a.fnumber,a.Fparentid ...
- jmeter图片的上传
首先添加一个线程组,然后在线程组里面添加一个http请求,因为是发送数据,所有是post请求,写好上传的地址,然后写好文件路径 1.添加线程组 :右键测试计划,添加-Threads(Users)-线程 ...
- /proc/vmstat 详解
参考 #cat /proc/vmstat nr_free_pages 20223354 nr_alloc_batch 899 nr_inactive_anon 393025 nr_active_ano ...
- 在小程序中实现全局混入,以混入的形式扩展小程序的api
GitHub: https://github.com/WozHuang/mp-extend 相关文章: 小程序全局状态管理,在页面中获取globalData和使用globalSetData 通过页面预 ...
- [luogu4151 WC2011] 最大XOR和路径 (线性基)
传送门 输入输出样例 输入样例#1: 5 7 1 2 2 1 3 2 2 4 1 2 5 1 4 5 3 5 3 4 4 3 2 输出样例#1: 6 说明 [样例说明] 根据异或的性质,将一个数异或两 ...
- 第n个质数
//注:for循环之后第三个式子总会操作一遍. #include <iostream> using namespace std; int main() { int n; while (ci ...
- 如何让 Laravel API 永远返回 JSON 格式响应?
当你在编写完全为 API 服务的 Laravel 应用时,你希望所有响应都是 JSON 格式的,而不是例如说授权错误会重定向到 /home 或 /login,最终重定向会变成 InvalidArgum ...