标签: caffe预测
2017-03-08 21:17 273人阅读 评论(0) 收藏 举报
 分类:
caffe之旅(4) 

版权声明:本文为博主原创文章,未经博主允许不得转载。

搭建好caffe环境后,就需要用自己的图片进行分类预测,主要步骤如下,主要参照http://www.cnblogs.com/denny402/p/5083300.html,感谢博主: 
1、数据准备,下载待训练的图片集,共5类400张,测试集100张,目录分别为data\re\train,data\re\val,新建test.txt、val.txt。

2、转换数据为lmdb,复制create_imagenet.sh文件,修改参数为 

3、计算均值文件,复制make_imagenet_mean.sh文件,修改参数为 

4、制作网络模型,caffe中提供了很多成熟的模型,我们先直接拿过来用,主要用bvlc_reference_caffenet下的模型,复制.\models\bvlc_reference_caffenet\目录下的deploy.prototxt、solver.prototxt、train_val.prototxt三个文件,首先打开train_val.prototxt文件,修改mean、train_lmdb、val_lmdb文件路径,然后修改全连接层fc8的输出num,即分类数, 
 
同样打开deploy.prototxt文件,修改num_output为5(5个类别),然后打开solver.prototxt,修改如下,具体参数意义在此不做说明 

5、开始训练模型,新建.sh文件,输入 
set -e 
.D:/caffe/caffe-windows/Build/x64/Release/caffe train \ 
–solver=D:/caffe/caffe-windows/data/re/solver.prototxt $@ 
pause 
cpu情况下需要训练好几个小时。

6、查看训练结果,待训练完成后,会在相应的路径下生成.caffemodel文件,即我们训练的模型,新建.sh文件,输入 
D:\caffe\caffe-windows\Build\x64\Release\caffe.exe test –model=D:\caffe\caffe-windows\data\re\train_val.prototxt –weights=D:\caffe\caffe-windows\data\re\caffenet_train_iter_2000.caffemodel 
pause 
可以查看模型的训练结果,模型准确度比较低,说明网络模型没有设计好,这里只讲流程,网络模型需要进一步的研究 

7、分类预测,模型训练完成后,就可以输入图片进行分类预测,在根目录下新建.sh文件,输入 
Build\x64\Release\classification.exe data\re\deploy.prototxt data\re\caffenet_train_iter_2000.caffemodel data\re\imagenet_mean.binaryproto data\re\test.txt data\re\val\401.jpg 
pause 
主要有6个参数,第一个是Release下生成的classification.exe文件,第二个是预测文件,deploy.prototxt相对于train_val.prototxt少了data层,第三个是生成的网络模型,第四个是均值文件,第五个是类别文件,第六个是待预测分类的图片 
 
识别率不是很高,需要进一步优化网络模型。

caffe训练自己的图片进行分类预测--windows平台的更多相关文章

  1. python+caffe训练自己的图片数据流程

    1. 准备自己的图片数据 选用部分的Caltech数据库作为训练和测试样本.Caltech是加州理工学院的图像数据库,包含Caltech101和Caltech256两个数据集.该数据集是由Fei-Fe ...

  2. 实践详细篇-Windows下使用Caffe训练自己的Caffemodel数据集并进行图像分类

    三:使用Caffe训练Caffemodel并进行图像分类 上一篇记录的是如何使用别人训练好的MNIST数据做训练测试.上手操作一边后大致了解了配置文件属性.这一篇记录如何使用自己准备的图片素材做图像分 ...

  3. 用训练好的caffemodel对单个/批量图片进行分类

    一.单个图片进行分类 这个比较简单,在*.bat文件中输入以下代码: @echo off set BIN_DIR=D:\caffe\caffe-windows\Build\x64\Release se ...

  4. caffe︱深度学习参数调优杂记+caffe训练时的问题+dropout/batch Normalization

    一.深度学习中常用的调节参数 本节为笔者上课笔记(CDA深度学习实战课程第一期) 1.学习率 步长的选择:你走的距离长短,越短当然不会错过,但是耗时间.步长的选择比较麻烦.步长越小,越容易得到局部最优 ...

  5. 基于Caffe训练AlexNet模型

    数据集 1.准备数据集 1)下载训练和验证图片 ImageNet官网地址:http://www.image-net.org/signup.php?next=download-images (需用邮箱注 ...

  6. 使用caffe训练mnist数据集 - caffe教程实战(一)

    个人认为学习一个陌生的框架,最好从例子开始,所以我们也从一个例子开始. 学习本教程之前,你需要首先对卷积神经网络算法原理有些了解,而且安装好了caffe 卷积神经网络原理参考:http://cs231 ...

  7. Caffe训练AlexNet网络,精度不高或者为0的问题结果

    当我们使用Caffe训练AlexNet网络时,会遇到精度一值在低精度(30%左右)升不上去,或者精度总是为0,如下图所示: 出现这种情况,可以尝试使用以下几个方法解决: 1.数据样本量是否太少,最起码 ...

  8. VS2013配置Caffe卷积神经网络工具(64位Windows 7)——准备依赖库

    VS2013配置Caffe卷积神经网络工具(64位Windows 7)--准备依赖库 2014年4月的时候自己在公司就将Caffe移植到Windows系统了,今年自己换了台电脑,想在家里也随便跑跑,本 ...

  9. Windows平台网站图片服务器架构的演进[转]

    构建在Windows平台之上的网站,往往会被业内众多架构师认为很“保守”.很大部分原因,是由于微软技术体系的封闭和部分技术人员的短视造成 的.由于长期缺乏开源支持,所以只能“闭门造车”,这样很容易形成 ...

随机推荐

  1. 微软2014实习生及秋令营技术类职位在线测试(题目1 : String reorder)

    题目1 : String reorder 时间限制:10000ms 单点时限:1000ms 内存限制:256MB Description For this question, your program ...

  2. nginx日志打印请求响应时间

    log_format  timed_combined  '$remote_addr - $remote_user [$time_local] "$request" ' '$stat ...

  3. gulpfile.js备份

    var gulp = require('gulp'); var uglify = require('gulp-uglify'); // var rename = require('gulp-renam ...

  4. Mysql常用语句记录

    建表语句,带自增字段 create table test ( id int auto_increment primary key, name ) not null, password ) not nu ...

  5. css3 容器内容垂直居中

    .item{ top: 50%; position: absolute; transform: translateY(-50%); /* 这里我们使用css3的transform来达到类似效果 */ ...

  6. andriod多线程

    用ThreadHandle可以实现多线程,然后再主线程更新UI 第二种就是用 AsyncTask 具体看代码 public void onClick(View v) { new DownloadIma ...

  7. LeetCode OJ--Single Number

    https://oj.leetcode.com/problems/single-number/ 给一个数列,其中只有一个数不是两两相同的,在O(n)时间内求出来,并且不使用额外空间. 使用异或操作,如 ...

  8. LeetCode OJ--Regular Expression Matching

    http://oj.leetcode.com/problems/regular-expression-matching/ 问题给想复杂了,只有p中可以含有. *,s中的字符都是确定的.想了好久,最终还 ...

  9. Lucene.net站内搜索-最简单搜索引擎代码

    Lucene.Net核心类简介 先运行写好的索引的代码,再向下讲解各个类的作用,不用背代码. (*)Directory表示索引文件(Lucene.net用来保存用户扔过来的数据的地方)保存的地方,是抽 ...

  10. AC日记——最大子树和 洛谷 P1122

    题目描述 小明对数学饱有兴趣,并且是个勤奋好学的学生,总是在课后留在教室向老师请教一些问题.一天他早晨骑车去上课,路上见到一个老伯正在修剪花花草草,顿时想到了一个有关修剪花卉的问题.于是当日课后,小明 ...