caffe搭建--WINDOWS+VS2013下生成caffe并进行cifar10分类测试
http://blog.csdn.net/naaaa/article/details/52118437
版权声明:本文为博主原创文章,未经博主允许不得转载。
1.下载vs2013,安装
2.下载caffe源代码,解压
https://github.com/Microsoft/caffe
将caffe-master/windows下CommonSettings.props.example后面的.example去掉。
3.gpu配置
带gpu的配置:
下载cuda:
https://developer.nvidia.com/cuda-downloads
根据自己的显卡选择下载的版本
双击exe进行安装
下载cudnn:
https://developer.nvidia.com/cudnn
下载v4或v5版本
解压后分别将lib、include、bin文件夹下的文件复制到cuda安装目录下的lib、include、bin文件夹下
(默认为:c:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vx.x)
无gpu的配置:
记事本打开caffe-master/windows下的CommonSettings.prop修改:
<CpuOnlyBuild>false</CpuOnlyBuild>为<CpuOnlyBuild>true</CpuOnlyBuild>
<UseCuDNN>true</UseCuDNN>为<UseCuDNN>false</UseCuDNN>
编译每个项目前设置:
项目->属性->配置属性->c/c++->预处理器->预处理器定义,添加一项CPU_ONLY
4.生成libcaffe
打开caffe-mastetr/windows下的Caffe.sln
所有项目都要用到libcaffe.lib,所以第一个要编译这个项目。
libcaffe有很多相关的库,工程里已经配置好了可以用NuGet进行下载。
我们需要安装NuGet包管理器并启动它。
下载Nuget:
工具->扩展和更新->联机,搜索NuGet,下载Nuget 包管理
(也可以网站直接下载http://docs.nuget.org/consume/installing-nuget,双击安装)
启动Nuget:
右键工程->启用NuGet程序包还原。
接着生成libcaffe会在caffe-master\Build\x64\Debug下生成libcaffe.lib
(后续所有的exe文件也都是生成在这个目录)
5.cifar10训练数据
http://www.cs.toronto.edu/~kriz/cifar-10-binary.tar.gz
下载数据到caffe-master\data\cifar10,解压。
下载的数据为binary格式,需要转换为leveldb。
编译convert_cifar_data项目,生成convert_cifar_data.exe。
打开cmd,cd到caffe-master\Build\x64\Debug,输入命令(后续所有命令都是在这个路径下):
convert_cifar_data.exe ../../../data/cifar10/cifar-10-batches-bin ../../../data/cifar10 leveldb
在caffe-master\data\cifar10文件夹下生成cifar10_test_leveldb和cifar10_train_leveldb文件夹
6.求数据图像均值
编译compute_image_mean项目,生成compute_image_mean.exe
cmd输入命令:
compute_image_mean.exe ../../../data/cifar10/cifar10_train_leveldb ../../../data/cifar10/mean.binaryproto --backend=leveldb
7.训练cifar10模型
打开caffe-master\examples\cifar10\cifar10_quick_solver.prototxt文件:
修改路径:examples/cifar10 为 ../../../examples/cifar10(两处)
修改最后一行为:solver_mode: CPU(用gpu就不用改这一项)
打开caffe-master\examples\cifar10\ cifar10_quick_train_test.prototxt文件:
修改backend: LMDB 为 backend: LEVELDB(两处)
修改mean_file: "examples/cifar10/mean.binaryproto" 为 mean_file:"../../../data/cifar10/mean.binaryproto"(两处)
修改source: "examples/cifar10/cifar10_train_lmdb" 为 source:"../../../data/cifar10/cifar10_train_leveldb"
修改source: "examples/cifar10/cifar10_test_lmdb" 为 source:"../../../data/cifar10/cifar10_test_leveldb"
编译caffe项目,生成caffe.exe
cmd输入命令:caffe.exe train --solver=../../../examples/cifar10/cifar10_quick_solver.prototxt 训练网络
CPU训练会训练好久,训练完成后caffe-master/examples/cifar10文件夹下生成
cifar10_quick_iter_4000.caffemodel.h5
cifar10_quick_iter_4000.solverstate.h5
8.对图像进行分类
在caffe-master\data\cifar10下新建文本文件synset_words.txt。
文件内容是cifar10里面包含的分类种类,如下:
- airplane
- automobile
- bird
- cat
- deer
- dog
- frog
- horse
- ship
- truck
编译classification项目,生成classification.exe
命令行输入:
classification.exe ../../../examples/cifar10/cifar10_quick.prototxt ../../../examples/cifar10/cifar10_quick_iter_4000.caffemodel.h5 ../../../data/cifar10/mean.binaryproto ../../../data/cifar10/synset_words.txt ../../../examples/images/cat.jpg
就会出来分类结果,我的结果:
- ---------- Prediction for ../../../examples/images/cat.jpg ----------
- 0.9784 - "deer"
- 0.0100 - "cat"
- 0.0094 - "bird"
- 0.0017 - "frog"
- 0.0004 - "dog"
参考博文:http://blog.csdn.net/zb1165048017/article/details/51476516
caffe搭建--WINDOWS+VS2013下生成caffe并进行cifar10分类测试的更多相关文章
- windows环境下 生成git公钥和私钥
windows环境下 生成公钥和私钥 上传代码到远程仓库的时候需要秘钥进行验证是否本人上传的.打开Git目录下的Git Bash 输入ssh-keygen,回车 可直接不输入路径,使用默认路径(c/U ...
- 搭建windows环境下(nginx+mysql+php)开发环境
搭建windows环境下(nginx+mysql+php)开发环境 1. 所需准备应用程序包 1.1 nginx 程序包nginx-1.0.4.zip或其他版本(下载地址: http ...
- 番外篇:搭建Windows环境下的RabbitMQ环境
搭建Windows环境下的Rabbitmq环境 下载erlang语言包OTP.官网地址: https://www.erlang.org/downloads 如果下载不了,可以选择百度网盘下载,里面的版 ...
- CAFFE学习笔记(三)在VS2013下生成需要的exe文件
如我们所知,CAFFE_ROOT下有一个文件夹叫tools,里面中有许多cpp文件,它们各自有其不同的功能.但是很显然,当我们要完成某样工作时,我们是不能直接用cpp文件的,只能用exe文件.如何利用 ...
- 转 Windows+VS2013爆详细Caffe编译安装教程
1. 安装cuda Cuda是英伟达推出的GPU加速运算平台 我这里安装的是cuda7.5,已经安装过的忽略,还没有安装过的这里有安装教程.windows下面安装还是非常简单的. 点击打开链接 ...
- 基于chyh1990/caffe-compact在windows vs2013上编译caffe步骤
1. 从https://github.com/chyh1990/caffe-compact下载caffe-compact代码: 2. 通过CMake(cmake-gui)生成vs2 ...
- [经验分享]Windows系统下生成IOS证书
我使用ApiCloud开发APP,开发后需要生成IOS的证书才能在项目开发控制台中进行编译,于是我在网上大海捞针似的寻找办法. 官方文档提供了使用苹果系统下生成IOS证书的步骤,对于我这个没有imac ...
- PHP环境搭建-Windows系统下PHP环境搭建
1.PHP环境搭建的前提是 Apache HTTP Server (Apache 服务器)已经安装部署成功,并可以正常访问到服务器的主页面.Apache HTTP Server 的安装部署已经在上一篇 ...
- Spring 5.2.x 源码环境搭建(Windows 系统环境下)
前期准备 1.确保本机已经安装好了 Git 2.Jdk 版本至少为 1.8 3.安装好 IntelliJ IDEA (其他开发工具,如 eclipse.Spring Tool Suite 等也是可以的 ...
随机推荐
- POJ——3264Balanced Lineup(RMQ模版水题)
Balanced Lineup Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 44112 Accepted: 20713 ...
- HDU-2768 Cat vs. Dog
题意一开始是理解错的...结果就各种WA啦~ 对于两个观众,假如有某只宠物,一个人讨厌另一个人却喜欢,这两个人就是有矛盾的,连边. 最后求最小顶点覆盖.因为把这个覆盖点集去掉的话剩下的图中没有两个点是 ...
- Eclipse + Apache Axis2 发布RESTful WebService(一)基础知识
1.什么是WebService 学习 WebService 第一步:体系结构.三元素SOAP/WSDL/UDDI 2.什么是Axis2 Axis2是Apache一套崭新的WebService引擎(框架 ...
- 使用Matlab实现对图片的缩放
在做图像处理的时候,有时需要对图片的像素进行放大或则缩小. 使用Matlab很容易实现对图像的放大和缩小.这里只讲缩放到固定像素的方法. clear; clc; %清除以前的数据 folderName ...
- 【bzoj5110】Yazid的新生舞会
这里是 $THUWC$ 选拔时间 模拟赛的时候犯 $SB$ 了,写了所有的部分分,然后直接跑过了 $4$ 个大样例(一个大样例是一个特殊情况)…… 我还以为我非常叼,部分分都写对了,于是就不管了…… ...
- Python Base Five
// 8 day(2016/8/11) 38. In python , it is oop. class Baskball: def setName(self, name): ...
- jdk1.7升级到1.8遇到的问题
1.修改project structure 里面的Project , Modules , SDKs jdk的版本 2.修改Java Compiler 里面java的jdk版本 3.tomcat 里面j ...
- TroubleShoot: SharePoint 2013: ExecuteOrDelayUntilScriptLoaded 页面发布后不执行的问题
SharePoint 2010 中的ExecuteOrDelayUntilScriptLoaded,在2013 中使用时没有效果的问题. Example: SharePoint 2013 Code: ...
- struts中json机制与普通页面跳转机制混用(全局结果集配置返回json)
package继承json-default与struts-default 返回结果是add的话将addResult属性转换为json返回(addResult属性有getter,setter方法),返回 ...
- 湖南集训day2
难度:☆☆ /*显然可以前缀和*/ #include<iostream> #include<cstdio> #include<cstring> #define N ...