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 等也是可以的 ...
随机推荐
- uva 11732 (trie树)
题意:求N个字符串两两比较,共比较了多少次? #include<iostream> #include<cstring> #include<cstdio> using ...
- 13深入理解C指针之---内存管理
该系列文章源于<深入理解C指针>的阅读与理解,由于本人的见识和知识的欠缺可能有误,还望大家批评指教. 内存管理对所有程序都很重要,主要包括显式内存管理和隐式内存管理.其中隐式内存管理主要是 ...
- unity3d自动寻路教程
U3D的自动寻路插件是不少,但是其实U3D的PRO版本就提供了相当实用的自动寻路组件了,以下教程分别讲解自动寻路的路径选择优先,上楼梯跳下的条件判断等等实用方法,教程分三编,但这个教程没有讲到Navm ...
- https的简单学习
HTTPS介绍: (全称:Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext Transfer Protocol Sec ...
- poj 3308(二分图的点权最小覆盖)
Paratroopers Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8325 Accepted: 2502 Desc ...
- LeetCode OJ--Set Matrix Zeroes **
http://oj.leetcode.com/problems/set-matrix-zeroes/ 因为空间要求原地,所以一些信息就得原地存储.使用第一行第一列来存本行本列中是否有0.另外对于第一个 ...
- 本地测试IIS,Post调用接口
最近在学习三种调用接口方式,POST,Socket,Webserivce,今天刚写完POST方式所以就分享下,欢迎高手指点. public string strResult = "" ...
- AC日记——小行星 洛谷 P2711
题目背景 pid=3437 题目描述 星云中有n颗行星,每颗行星的位置是(x,y,z).每次可以消除一个面(即x,y或z坐标相等)的行星,但是由于时间有限,求消除这些行星的最少次数. 输入输出格式 输 ...
- R语言实战读书笔记(七)基本统计分析
summary() sapply(x,fun,options):对数据框或矩阵中的每一个向量进行统计 mean sd:标准差 var:方差 min: max: median: length: rang ...
- ssm框架 spring的主配置文件 spring-mvc主配置文件 web.xml配置文件(基础的配置文件)
1.spring主配置文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=" ...