python怎么导入caffe windows python

安装Caffe的Python wrapper时出现问题的解决方法
安装Caffe的Python wrapper时出现问题的解决方法
[摘要:Caffe的装置能够参考我之前的文章caffe装置指北(Ubuntu13.04 x86) 那篇文章是之前文章中前置硬件装置中python的拓展,若是已依照之前的装置好了,能够先正在caffe-master目次下履行 $make py]
Caffe的安装可以参考我之前的文章caffe安装指南(Ubuntu13.04 x86)
这篇文章是之前文章中前置软件安装中python的拓展,如果已经按照之前的安装好了,可以先在caffe-master目录下执行
$make pycaffe如果提示不能make pycaffe
可以先执行
$make clean(以上步骤也可以放在最后进行)
安装其他的库需要的只是执行
$ sudo pip install -r /path/to/caffe/python/requirements.txt
Cython&=0.19.2
h5py&=2.2.0
ipython&=1.1.0
leveldb&=0.191
matplotlib&=1.3.1
networkx&=1.8.1
nose&=1.3.0
numpy&=1.7.1
pandas&=0.12.0
protobuf&=2.5.0
python-gflags&=2.0
scikit-image&=0.9.3
scikit-learn&=0.14.1
scipy&=0.13.2
但是我在安装中碰到了一些问题,导致无法正确安装,因此,我是在后续的程序运行中遇到了需要的库再独立安装,主要问题出现在Cython,scikit-image和scipy上
1.Cython需要在scikit-image之前安装
$ sudo pip install cython(python缺少的库都可以用pip install安装)
这里出现了第一个问题:
File &/usr/local/lib/python2.7/dist-packages/setuptools/command/install_egg_info.py&,
line 5, in
from setuptools.archive_util import unpack_archive
File &/usr/local/lib/python2.7/dist-packages/setuptools/archive_util.py&, line 15, in
from pkg_resources import ensure_directory, ContextualZipFile
ImportError: cannot import name ContextualZipFile
经过了千辛万苦翻墙搜索后得到了解决方法
这个问题实际上是处在setuptools上,从上面的traceback中也可以发现,一位友好的国际友人提供了修改过的setuptools安装包&setuptools-5.4.1.zip
(https://bitbucket.org/pypa/setuptools/issue/234/setuptools-import-error-of-class)
解压之后在目录中执行
$ sudo python setup.py install即可安装。
安装完后,上述问题顺利解决,遇到第二个错误提示:
File &/usr/lib/python2.7/dist-packages/pkg_resources.py&, line 594, in resolve&&
raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: distribute
解决方法是:安装distribute包
$ wget http://python-distribute.org/distribute_setup.py $ python distribute_setup.py(/questions//easy-install-and-pip-broke-pkg-resources-distributionnotfound-distribute-0-6)
2.安装scikit-image
$sudo pip install scikit-image提示的错误是:
ImportError: You need `six` version 1.3 or later.
$sudo pip install six
发现已经安装了,那么问题就是版本没到1.3以上
解决方法:
$sudo pip install six==1.3
3.安装scipy
$sudo pip install scipy
错误提示:
building 'dfftpack' library
error: library dfftpack has Fortran sources but no Fortran compiler found
也就是没有安装gfortran编译器
解决方法:
$sudo apt-get install gfortran一般来说这里是可以直接解决的,但是由于网络原因,提示404 not found,在尝试了多种方法后都没有解决。
观察运行过程,发现需要安装的包括:
gfortran-4.7_4.7.3-1ubuntu1_amd64.deb
gfortran_4.7.3-1ubuntu10_amd64.deb
libgfortran-4.7-dev_4.7.3-1ubuntu1_amd64.deb
从Google上搜索可以很容易找到下载,下载后
$sudo dpkg -i *.deb即可安装,这三个包有前置关系,安装时注意看提示即可。
感谢关注 Ithao123Python频道,是专门为互联网人打造的学习交流平台,全面满足互联网人工作与学习需求,更多互联网资讯尽在 IThao123!
Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。
随着国内互联网的发展,产品经理岗位需求大幅增加,在国内,从事产品工作的大部分岗位为产品经理,其实现实中,很多从事产品工作的岗位是不能称为产品经理,主要原因是对产品经理的职责不明确,那产品经理的职责有哪些,本专题将详细介绍产品经理的主要职责
Swift是Apple在WWDC2014所发布的一门编程语言,用来撰写OS X和iOS应用程序[1]。在设计Swift时.就有意和Objective-C共存,Objective-C是Apple操作系统在导入Swift前使用的编程语言
Swift是供iOS和OS X应用编程的新编程语言,基于C和Objective-C,而却没有C的一些兼容约束。Swift采用了安全的编程模式和添加现代的功能来使得编程更加简单、灵活和有趣。界面则基于广受人民群众爱戴的Cocoa和Cocoa Touch框架,展示了软件开发的新方向。
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
IThao123周刊你可能喜欢
12345678910
12345678910
关于本站 本站以分享运维技术为主,欢迎大家参与技术分享,同时也欢迎大家吐槽,本站提供以下交流圈:QQ群①:*****(满)QQ群②:6690706 QQ群③: QQ群④:(新) 微信公众号:ttlsacom 商务合作QQ:您所在的位置: &
【泡咖啡1】linux下caffe编译以及python环境配置手记
时间: 编辑:77695 来源:本站整理
caffe是一个深度学习的库,相信搞深度学习的话,不是用这个库就是用theano吧。要想使用caffe首先第一步就是要配置好caffe的环境。在这里,我主要说的是在debian的linux环境下如何配置好caffe的库。因为python编写程序比较方便,在文章最后,我还会具体说明如何配置python环境。本文章为本人原创。非盈利性质网站转载请在文章开头处著名作者:77695,来源/cj695/。盈利性质网站转载请与作者联系,联系方式在文章后面。如未联系,本人将通过一切可能且合法的途径追缴相应稿酬。请在转载时保留此声明。 1、前期准备 首先从github上下载好caffe库:/BVLC/caffe,解压,得到这些东西
使用这一句话创建一个makefile.config的副本
接下来就是修改makefile.config,在这个文件里面对应的注释讲的很清楚,需要哪一项,吧对应那一项前面“#”去掉就好了
先拿make all测试,提示错误如下:
make: protoc:命令未找到make: *** [.build_release/src/caffe/proto/caffe.pb.h] 错误 127 2、编译以及安装protoc 那就下载protobuf吧,在github下载,解压/google/protobuf:
运行$ ./autogen.sh
原来先要安装curl:额,貌似curl安装不成功那就跳过吧。因为curl祈祷的作用就是下载文件,但/files/gtest-1.7.0.zip这个东西还是要下,那就直接下载吧,可能需要科学上网,这个方法那就八仙过海各显省通,我就不赘述。
下载好以后把压缩包移动过去。
找到对应位置注释掉curl
再次运行,提示错误
./autogen.sh: 40: ./autogen.sh: autoreconf: not found
原因是没安装 automake 工具
运行命令安装:sudo apt-get install autoconf automake libtool
再一次./autogen.sh,成功!然后依次运行以下命令$ ./configure
$ make check
$ make install执行完make check以后出现:就说明没什么问题了,就可以继续执行make install
执行完以后切换到caffe目录,先make clean一下,接着make all
还是提示找不到库,
3、安装一系列依赖库
再执行安装一些库:sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev,稍等
再执行make clean,接着make all,提示:
./include/caffe/common.hpp:5:27: fatal error: gflags/gflags.h: 没有那个文件或目录。说明protobuf的库已经差不多了。
4、安装gflags
这里继续安装gflags:/schuhschuh/gflags/archive/master.zip 下载。解压cd gflags-master
mkdir build && cd build
export CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1
sudo make install在执行第三句话的时候可能会提示版本较低,直接在这里http://www.cmake.org/install/下载最新版本的cmake就好了(下载.sh的文件直接运行就可以了)。要配置一下环境变量
然后接着执行下面两条命令,就好了。弄完之后继续切换到caffe目录,先make clean一下,接着make all
./include/caffe/util/mkl_alternate.hpp:11:19: fatal error: cblas.h: 没有那个文件或目录compilation terminated.
说明gflag安装成功了,
5、编译安装ATLAS
接下来开始搞定cblas的问题。BLAS(Basic Linear Algebra Subprograms,基础线性代数程序集)是一个应用程序接口(API)标准。他的实现有很多,caffe用的是其中的三种实现ATLAS, MKL, or OpenBLAS.这里我准备使用ATLAS:http://sourceforge.net/projects/math-atlas/files/ 先下载,解压。按照官方文档写的,依次执行如下命令
首先选择高性能cpu模式:/usr/bin/cpufreq-selector -g performance然后在ATLAS目录下建立文件夹
mkdir Linux_C2D64SSE3
# create BLDdir
cd Linux_C2D64SSE3
# enter BLDdir
../configure -b 64 -D c -DPentiumCPS=2800 -Fa alg -fPIC --with-netlib-lapack-tarfile=/home/haiyu/Programs_Install/lapack-3.5.0.tgz --prefix=/usr/local/atlas粗体参数需要根据个人系统修改:-b 指定编译出库的类型(32位库还是64位库)&&&&&& -D c -DPentiumCPS 是指定你的CPU的时钟频率,可以通过 grep MHz /proc/cpuinfo 得到&&&&&& -Fa alg -fPIC 得到与位置无关的代码,生成动态的共享库&&&&&& --prefix 为安装路径&&&&&& --with-netlib-lapack-tarfile 则是lapack压缩包路径
make build
# tune & build lib
make check
# sanity check correct answer
make ptcheck
# sanity check parallel
# check if lib is fast
make install
# copy libs to install dir
这里还需要一个lapack的库,在这里下载http://www.netlib.org/lapack/,下载之后直接把/home/whaley/dload/lapack-3.4.1.tgz替换成对应的路径就好了
在执行../configure的时候,会提示gfortran:命令未找到,直接用apt-get安装即可。然后make build之后就可以休息去了。等一个小时再过来看吧。
ok。。现在是第二天。昨天晚上凌晨3点的时候终于看到它提示DONE了。这速度。太!“快”!了!继续执行接下来的命令几个可以忽略的就忽略了,然后再切换到CAFFE目录make clean/all,依旧提示
但这个时候在atla的prefix指定的安装路径下已经有include/cblas.h
执行这两条,添加目录到include环境变量
6、安装lmdb
接着make,提示错误lmdb没装
git clone git://gitorious.org/mdb/mdb.git&
cd mdb/libraries/liblmdb&
make && make install&
运行完,再回到caffe目录编译
AR -o .build_release/lib/libcaffe.aLD -o .build_release/lib/libcaffe.so/usr/bin/ld: cannot find -lcblas/usr/bin/ld: cannot find -latlascollect2: error: ld returned 1 exit status
7、安装其他依赖包
解决办法:安装这些包
apt-get install libatlas-devapt-get install liblapack-devapt-get install& libatlas-base-dev
又提示这个错误.build_release/lib/libcaffe.so: undefined reference to `google::protobuf,重新编译protobuf
make uninstallmake clean./configure --prefix=/usrmakemake check
make install搞定,返回caffe,编译成功!!!!!!!!!!!!!此处有掌声!!!!!
然后把目录添加到PYTHON环境变量就行了
export PYTHONPATH=$PYTHONPATH:/home/cj695/protobuf/python/最后还要找到protobuf的Python目录python setup.py build
python setup.py test
python setup.py install安装一下激动人心的一颗来了!!!!!!!!!!!打开python,import caffe。。这一刻,我哭了!!!!!!!!!!!!!
8、总结一下耗费两天时间,卡时间比较多的主要有两个地方,首先查错一定要从上往下查。基本上最上面的错误才是最根本的错误;其次,在安装过程中对配置做过的修改一定要记清楚,别自己把安装路径改了结果还不知道是怎么回事。
另外,如果在安装gflags的时候出现问题,可以实验一下用apt-get安装gflag,命令如下:
sudo apt-get install python-gflags
caffe的配置大概也就这些内容,希望这篇文章能够对你有所帮助
热门关键字温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
然后执行如下命令安装编译caffe python wrapper 所需要的额外包sudo pip install -r /path/to/caffe/python/requirements.txt在执行上述命令时, 会报错导致不能完全安装所有需要的包。 可以按照官方建议安装anaconda包。 在anaconda官网下载.sh文件,执行,最后添加bin目录到环境变量即可。2.&/Linux/34p5.htm如果之前没有用python接口直接编译的sudo make pycaffe
编译失败(.build_release/src/caffe/proto/caffe.pb.h:17:2: error: #error This file was old )则需要重新编译
sudo make clean
sudo make all
sudo make test
sudo make runtest
然后再执行
sudo make pycaffe 由于要使用caffe的python接口,然而import caffe 总是出错。这里我使用的是anaconda包。首先要保证make pycaffe 能通过,然后要安装&qtconsole(显示图片,绘制曲线等需要)现在我们可以安装Qt了:sudo apt-get install libqt4-core libqt4-gui libqt4-dev qtconsole有一些附加的包,即ZMQ和Pygments库:sudo apt-get install libzmq-dev sudo pip install pyzmq sudo pip install pygments 具体参考/Linux/34p6.htm安装成功后使用下面命令测试下:ipython qtconsole --pylab=inline
在这里编写代码测试,写完一行后ctrl+Enter键可以写多行。写完后按回车键如果没有报错,那么恭喜你,你就可以使用python的接口了。如果import caffe 出错,出错的可能如下。1...../libm.so.6:version 'GLIBC_2.15'not find ......找到这个文件所在位置:find& /& -name libm.so*&&&&&& (这个命令表示从/ 目录下开始查找)找到后切换到文件所在目录使用sudo mv libm.so& libm.so_backsudo mv libm.so.6& libm.so.6_back2.No module named google.protobuf.internal这说明你没有添加google.protobuf.的位置sys.path.append('/usr/lib/python2.7/dist-packages/')3.添加了还是出错can’t import&symbol_database 等类似错误TypeError: __init__() got an unexpected keyword argument ‘oneofs’ 等错错误这些错误是google.protobuf 版本问题所导致的。解决办法:下载protobuf-2.6.0切换到/usr/lib/python2.7/dist-packages/ 目录下& 先将google 文件夹备份sudo mv google google_back将其protobuf-2.6.0/python 目录下的google文件拷贝到/usr/lib/python2.7/dist-packages/目录下即可。这里需要将你刚备份的文件google_back/protobuf/ 目录 descriptor_pb2.py& 拷贝到google/protobuf/的目录下。
阅读(1229)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
在LOFTER的更多文章
loftPermalink:'',
id:'fks_',
blogTitle:'安装Caffe所需要的Python环境及常见错误处理',
blogAbstract:'.参考以下方法安装1首先安装pip和python-dev (系统默认有python环境的, 不过我们需要的使python-dev)sudo apt-get install python-dev python-pip然后执行如下命令安装编译caffe python wrapper 所需要的额外包',
blogTag:'caffe',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:3,
publishTime:4,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'1',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}更新:caffe有了官方windows版本配置更方便==========================谢邀。推荐一个repo 按照readme来就好了。。亲测可用。建议安装anaconda python。
已有帐号?
无法登录?
社交帐号登录
手势识别/物体检测

我要回帖

更多关于 caffe python layer 的文章

 

随机推荐