caffe 安装方法(python)
前言:
在一台系统环境较好的linux机器上可以很容易的安装caffe,但是如果系统本身很旧,又没有GPU的话,安装就太麻烦了,所有都得从头做起,本文档旨在尽可能覆盖安装所要采的坑。
步骤:
一、caffe是主要是C/C++和python编写的。首先,得需要将gcc,g++安装好,通过yum安装就可以。
二、cuda的安装,如果机器上配置了NVIDIA系列GPU,则需要安装该驱动,推荐安装该驱动至7.0版本,推荐同时安装cuDNN。安装可以参考http://blog.csdn.net/xuanyuansen/article/details/43152311,centos系统下类似。
三、caffe的layer开发以google的protobuf为格式,需要安装该依赖,推荐安装2.6.1版本(gcc版本推荐4.4.7),下载地址为https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz,按照README文件里的步骤安装即可。
四、python安装,caffe提供了python的接口,可以用python进行相关开发,而且可以在ipython-notebook里面画出网络结构,非常方便。为了使用这些功能,推荐在目标机器上编译安装python2.7.10,源码下载地址见python官网,为了多用户环境考虑,强烈建议安装目标用户自己的python,可以在自己用户的home下建立usr文件夹,解压源码后加如下配置命令:
./configure --enable-shared \
--prefix=${HOME}/usr/local \
LDFLAGS=“-Wl,—rpath=${HOME}/usr/local/lib”
make && make install
即需要python的lib文件可以被其他程序共享,rpath后面就是自已的路径。
安装好后需要配置目标用户下的bashrc文件,加入如下行:
PATH=/home/lianhua/usr/local/bin:$PATH
然后source bashrc文件,如果进入python版本正确则安装成功,否则检查路径重新编译。
python安装好后需要安装pip,在官网上下载get-pip.py执行即可,然后安装相应版本的protobuf,同时安装caffe的官方说明安装其他的依赖:
for req in $(cat requirements.txt); do pip install $req; done
五、安装openblas
从openblas官网下下载安装安装包,安装README文件安装就好,make&&make install,可能需要sudo权限。
六、yum依赖安装
参加官方文档http://caffe.berkeleyvision.org/install_yum.html,需要安装上述所有依赖,首先需要安装和系统相应的最新的repository文件,然后执行sudo yum install epel-release,更新站点从而安装最最新的依赖。
七、opencv安装
前置需要安装较新版本的cmake,去官网下载安装即可。
opencv安装有两种方式:
1、下载源码包安装,请参考:
http://www.javieriparraguirre.net/installing-opencv-debian/(依赖的安装,centos类似)
http://www.jianshu.com/p/a41da779f763(opencv安装)
2、利用自动脚本安装:
地址:https://github.com/jayrambhia/Install-OpenCV
八、caffe安装配置
到此处终于可以进入正题,进行caffe的安装,如果上述安装过程顺利的话,caffe的安装也就没有太大问题了。关键在于正确配置Makefile.config文件,需要修改如下配置至相应的路径(参照配置文件的注释,疑惑的地方google即可):
1、CUDA_DIR
2、BLAS := open,BLAS_INCLUDE :=,BLAS_LIB :
3、PYTHON_INCLUDE :=
注意此处需要添加python下numpy的路径
4、PYTHON_LIB :=
5、WITH_PYTHON_LAYER := 1
注意此处需要将python的hdf5安装路径添加到:INCLUDE_DIRS := $(PYTHON_INCLUDE)和LIBRARY_DIRS := $(PYTHON_LIB)
上述配置文件修改好后,回到caffe的根目录,执行make all -j4,注意此处进程不要过多,否则会出现诡异的错误;
make test -j4
make runtest -j4
至此caffe主程序编译完毕。
下面编译pycaffe,至执行
make pycaffe
make distribute
执行完后修改bashrc文件,添加
PYTHONPATH=${HOME}/caffe/distribute/python:$PYTHONPATH
LD_LIBRARY_PATH=${HOME}/caffe/build/lib:$LD_LIBRARY_PATH
使得python能够找到caffe的依赖。
进入python,import caffe,如果成功则说明一切ok,否则检查路径从头再来,甚至需要重新编译python。
caffe 安装方法(python)相关推荐
- caffe 安装方法和记录
1: 环境配置.I7-6700,显卡微星1060-3G,8G内存 centos7 虚拟机. 2: 依赖包:atlas3.10.3.tar.bz2 gflags-master.zip glog-0.3 ...
- python第三方库安装方法-Python第三方库安装
Python有一个全球社区:https://pypi.org/,在这里我们可以搜索任何主题的Python第三方库.PyPI全称是Python Package Index,指的是Python包的索引,它 ...
- LightGBM——提升机器算法(图解+理论+安装方法+python代码)
原文地址:https://blog.csdn.net/huacha__/article/details/81057150 前言 LightGBM是个快速的,分布式的,高性能的基于决策树算法的梯度提升框 ...
- python 分类 投票_LightGBM——提升机器算法(图解+理论+安装方法+python代码)
前言 LightGBM是个快速的,分布式的,高性能的基于决策树算法的梯度提升框架.可用于排序,分类,回归以及很多其他的机器学习任务中. 在竞赛题中,我们知道XGBoost算法非常热门,它是一种优秀的拉 ...
- LightGBM图解理论+视频+安装方法+python代码
向AI转型的程序员都关注了这个号
- python库的安装方法_Python库的安装方法
Python库的安装方法 Python的解释器CPython是开源的,我们可以下载查看其源代码,同时,Python语言的各种库也都是开源的.利用Python语言编程,可用的库有很多,在Python官方 ...
- win10 64位下Python中NLTK,pip,numpy等安装方法
win64下Python中NLTK的安装方法 Python已经更新至3.6版本,但是2.7.3的版本也足以使用.但是win64版本之下却没有Python中NLTK的安装包,网络之上的NLTK安装方法也 ...
- 海思Hi3519AV100深度学习方案(一)darknet转caffmodel之caffe安装(基于Ubuntu16.04+python3.5+opencv3.4.0+cuda10.0)
系列文章目录 海思Hi3519AV100深度学习方案(二)darknet转caffmodel之模型转换(yolov3+caffe+python3.5) 文章目录 系列文章目录 前言 一.系统已有环境检 ...
- python软件下载安装教程,python详细安装教程视频
python安装教程 python安装教程具体如下:1.确定电脑的系统类型. 在安装python之前,你要先确定一下你的电脑的系统类型及详细配置,具体方法如下:点击桌面上的快捷图标"此电脑& ...
- ubuntu16.04+caffe+GTX1060+DIGITS安装方法
鉴于本人安装caffe-gpu版的过程中遇到很多坑,从自己探索开始装一次要半个多月,然后一个星期,再到两三天,现在从系统开始到digits装好一个多小时就可以搞定,故而写下这份心得教程,供有缘人享用, ...
最新文章
- python爬虫实战,requests模块,Python实现抓取头条街拍美图
- ACM学习历程—UESTC 1226 Huatuo's Medicine(数学)(2015CCPC L)
- Windows定时删除某天前文件的批处理脚本
- 如何在freemarker寻找元素_如何让你的网站ui设计更加优秀
- return view前端怎么获取_前端判断上传图片格式
- c#endread怎么打印出来_c# – Socket.EndRead 0字节意味着断开连接?
- 表空间检测异常的问题诊断
- FaceBook机器学习开源DL模块
- 【简便解法】1091 N-自守数 (15分)
- 数据结构--链表--判断一个字符串是否为回文串(单向链表,双向链表)
- Arrays类中的binarysearch
- STM32系列单片机在进入main函数前都在干些什么?
- 使用HttpClient 发送 GET、POST、PUT、Delete请求及文件上传
- Java设计模式--单例模式(代码详解懒汉、饿汉模式)
- 在 Linux 下执行 bin 文件
- Lotus notes问题与处理
- 没错,这就是九大爷平台1225车品狂欢节预告!
- 高通 Hexagon V65 HVX 编程参考手册(1)
- 小米屡次违反GPL协议,疑成“惯犯”
- 提高抗打击能力_如何提高心理承受能力或者抗打击能力?