caffe pytho接口
一:搭建Caffe
1.下载happynear的Caffe源码https://www.github.com/happynear/caffe-windows,第三方库3rdparty文件http://pan.baidu.com/s/1bSzvKa。
2.将3rdparty文件(bin,include,lib)解压至caffe-windows(假设Caffe源码解压后的文件夹名为caffe-windows)中的3rdparty文件夹中,并将3rdparty/bin文件夹所在路径添加到环境变量中,使程序可以找到这些第三方库
3.双击.src/caffe/proto/extract_proto.bat批处理文件来生成caffe.pb.h和caffe.pb.cc两个c++文件,和caffe_pb2.py这个Python使用的文件。
4.打开./build_cpu_only/Mainbuilder.sln,点击上方工具栏中的绿色三角编译。
二:测试Caffe
1.到http://pan.baidu.com/s/1mgl9ndu下载已经转换好的MINIST的leveldb文件,解压至./examples/mnist文件夹中。
2.将./examples/mnist/lenet_solver.prototxt文件中的最后一行solver_mode改为CPU。
3.运行caffe-windows目录下run_mnist.bat即可开始训练,训练日志会保存在./log文件夹中,以INFO开头。
三:编译Python接口
1.在Mainbuilder.sln中选择pycaffe项目,右键选择属性修改两个地方。
2.把C/C++的附加包含目录中python默认路径(默认是D:\Python27)修改为你自己Python所在的路径。我的Anaconda安装在D:\Anaconda2,所以将附加依赖项中的路径改为include与Lib在Anaconda2中的路径即可。
3.将链接-常规-附加库目录中libs的默认路径改为在Anaconda2中的路径。
4.右键选择pycaffe项目,点击build编译。编译成功会在caffe-windows\python\caffe中生成_caffe.pyd文件。
5.安装google的protobuf,直接在cmd中使用pip install protobuf安装。
6.将这个caffe文件夹复制到D:\Anaconda2\Lib\site-packages中,然后尝试使用import caffe。import可能会出现typeerror:__init__()got an unexpected keyword argument ‘syntax'这样的错误,解决的办法是在D:\Anaconda2\Lib\site-packages\caffe\proto中选择caffe_pb2.py文件,将文件中所有含有syntax的语句注释掉即可。
windows下 运行 python脚本方法:
linux是这样 : ./plot_training_log.py.example 4 save.png caffe.log
windows是这样 :首先把脚本变成python后缀的,然后切换到当前目录下
D:\caffe\caffe-master\finetune_myself\log>python plot_training_log.py 4 save.png caffe.log
caffe pytho接口的更多相关文章
- Windows7 64下搭建Caffe+python接口环境
参考链接: http://www.cnblogs.com/yixuan-xu/p/5858595.html http://www.cnblogs.com/zf-blog/p/6139044.html ...
- ubuntu16.04+caffe+python接口配置
在Windows上用了一个学期的caffe了.深感各种不便,于是乎这几天在ubuntu上配置了caffe和它的python接口,现在记录配置过程,亲测可用: 环境:ubuntu16.04 , caff ...
- caffe matlab接口编译遇到的问题记录
今天编译的过程中遇到的问题以及查阅到的资料,记录在这里,希望可以帮到其他人. BVLC的caffe源码,如果要编译matlab的接口时,首先需要将makefile.config文件中的matlab的安 ...
- caffe python 接口设置
安装编译完成后, 运行 cd sudogedit ~/.bashrc 在打开的文件末尾加入 export PYTHONPATH=/home/caffe-master/python:$PYTHONPA ...
- caffe matlab 借口怎么提取灰度图的 feature ? What happened if I mixed the color images with gray images together for training ?
1. caffe matlab 接口提供了提取feature的脚本,但是由于中间要对这些图像进行RGB ---> BGR 的变换,卧槽,灰度图没有三通道啊?怎么破?从上午就在纠结怎么会跑着跑着程 ...
- Ubuntu16.04 14.04 配置caffe(CPU only)
1.安装依赖 sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-seria ...
- Caffe搭建:常见问题解决办法和ubuntu使用中遇到问题(持续更新)
严正声明: 在linux下面使用命令行操作时,一定要懂得命令行的意思,然后再执行,要不然在不知道接下来会发生什么的情况下输入一通命令,linux很有可能崩掉. 因为在linux下面,使用sudo以及r ...
- [环境配置]Ubuntu 16.04+CUDA 9.0+OpenCV 3.2.0下编译基于Caffe的MobileNet-SSD踩过的一些坑
SSD是Caffe的一个分支,源码在github上:https://github.com/weiliu89/caffe/tree/ssd $ git clone https://github.com/ ...
- Caffe使用step by step:r-cnn目标检测代码
深度学习算法火起来之后,基于深度学习各种模型都如雨后春笋一般在各个领域广泛应用. 由于想把深度学习算法应用在在视频目标检测方向,得到一个较好的结果.由于视频数据的复杂性,因此使用深度学习算法在视频中的 ...
随机推荐
- Windows Phone 8.1上的开发人员请看
1)SDK选择:如果你是在Windows Phone 8.1上做一个新App, 或者想把7.x/8.0的App移植到8.1上,请使用WinRT SDK,而不是Silverlight.当然Silverl ...
- 招聘:有兴趣做一个与Android对等的操作系统么?
招聘:有兴趣做一个与Android对等的操作系统么? 前不久我发了一篇<八一八招聘的那些事儿>讲了我自己作为求职者对招聘的一些看法.那个时候我还在求职,对求职的结果还是挺满意的,五家公司面 ...
- cxf restful
Restful 服务端 1 创建好pojo.dao.service, dao进行数据库操作,service提供服务 @Path("/roomservice") @Produces( ...
- Linux内核TCP/IP参数分析与调优
转载于:http://www.itxuexiwang.com/a/liunxjishu/2016/0225/167.html?1456482565 如下图展示的是TCP的三个阶段.1,TCP三次握手. ...
- 爱上MVC3系列~开发一个站点地图(俗称面包屑)
回到目录 原来早在webform控件时代就有了SiteMap这个东西,而进行MVC时代后,我们也希望有这样一个东西,它为我们提供了不少方便,如很方便的实现页面导航的内容修改,页面导航的样式换肤等. 我 ...
- 05- Shell脚本学习--函数
函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰,代码重复利用率更高.像其他编程语言一样,Shell 也支持函数.Shell 函数必须先定义后使用. 函数定义 Shell 函数的定义格式 ...
- Mysql 函数分类
比较重要的 1 REVERSE(s) 将字符串s的顺序反过来 2 TRIM(s) 去掉字符串s开始和结尾处的空格 一.数学函数 数学函数主要用于处理数字,包括整型.浮点数等. ...
- Liferay7 BPM门户开发之42: Liferay核心JSP定制扩展
Liferay最大的好处是不仅接口强大,利于扩展,就连JSP定制扩展都提供了3种方式. 修改核心jsp代码,有3种修改方式:1.暴力修改直接修改(位于portal-web/docroot/html), ...
- SAP Business One系统功能介绍
SAP Business One(简称SAP B One)是一套价格合理.易于实施的综合业务管理解决方案.该解决方案专为中小型企业量身打造,可确保实现公司发展.提高可盈利性和控制力度以及实现业务流程的 ...
- VS报错:_CRT_SECURE_NO_WARNINGS
常见报错:warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead ...