mnist实例编译之model的使用-matlab
来源:互联网 发布:java jdk下载地址 编辑:程序博客网 时间:2024/06/05 07:22
前言
针对上一个caffe文章留下的matlab手写数字识别的问题,感谢caffe中文社区的 @ghgzh 的提示,原文请看:caffe中文社区
第一步
手写图片的制作方法我就不说了,直接把我自己画的几个数字放到云盘先:
三通道图像以及转换所需代码:链接:http://pan.baidu.com/s/1gfqeCAR 密码:88kk
转换后的灰度图像:链接:http://pan.baidu.com/s/1eSyohsY 密码:zwum
【注意】如果你的手写数字是黑字白底,最好反转成白字黑底,毕竟mnist的数据集就是白字黑底
第二步
创建标签,从零开始,synset_words.txt如下:
第三步
书写调用classfication demo的test文件:
【重点】上一篇文章所留问题就是在这里解决的,在图片输入网络之前也就是net.forwarad之前,必须经过转置,原理未知,目前是感觉跟matlab和opencv读取图片的方法有关,使用caffe.io.loadimage读取是按照BGR读取,并且进行了旋转,所以使用matlab时候必须进行同等处理,详细原因在后面分析代码再说~~~
第四步
修改classification_demo如下:
说明一下修改的部分,①模型文件:调用的模型依旧是要注意deploy.prototxt与train_test .prototxt的区别,在mnist实例中,deploy.prototxt就是lenet.prototxt,后者就是lenet_train_test.prototxt,它俩分别是前者在识别期间调用,一个是在训练及测试阶段调用。区别在于,deploy文件前两层并无指定输入数据和测试数据的层,最后一层中deploy使用的softmax的“pro”,输出的是可能标签的概率,而train_test使用的是softmax的“loss”,用于指示每次训练的损失。
②去掉了在cat 的那个classification_demo中的图片预处理中需要进行crops_data处理对图片进行分块的部分。在手写数字中的预处理,处理在第三步中比较重要的一步图像转置外,在classification_demo中需要进行零均值以及缩放两步骤。(注,按照上一篇的训练文件,我们已经更改了预处理步骤,添加了均值计算这一过程,在lenet_train_test1第一二层的 transform_param中可以看到)
这里附带一下我的deploy和train_test文件
deploy.prototxt文件:链接:http://pan.baidu.com/s/1pLPGf03 密码:cqjy
train_test.prototxt文件:链接:http://pan.baidu.com/s/1kVM03DP 密码:l83w
第五步
差不多结束了,运行程序吧。我的测试结果如下:
- 【caffe-Windows】mnist实例编译之model的使用-matlab
- mnist实例编译之model的使用-matlab
- 【caffe-Windows】mnist实例编译之model的使用-classification
- mnist实例编译之model的使用-classification
- 【caffe-Windows】mnist实例编译之model的使用-classification
- 【caffe-Windows】mnist实例编译之model的生成
- 【caffe-Windows】mnist实例编译之model的生成
- 接上篇 【caffe-Windows】mnist实例编译之model的使用-classification(2016-08-16)
- 【caffe-Windows】mnist实例编译之model的生成(2016-06-27)(原文评论可参考)
- 【caffe-Windows】cifar实例编译之model的使用
- 3【caffe-Windows】cifar实例编译之model的使用
- 【caffe-Windows】cifar实例编译之model的使用
- 【caffe-Windows】cifar实例编译之model的使用
- 【caffe-Windows】cifar实例编译之model的使用
- 【caffe-Windows_3】cifar实例编译之model的使用
- cifar实例编译之model的生成
- Microsoft caffe(caffe-windows) cifar实例编译之model的使用
- 【caffe-Windows】cifar实例编译之model的生成
- CSS 基础(015_Combinators)
- Day35: Get pass from Baidu
- SVN working copy locked解决方法
- PHP7 + Nginx 打开php页面显示空白
- 3. Longest Substring Without Repeating Characters
- mnist实例编译之model的使用-matlab
- 软件开发人员是一种很棒的职业选择的五大理由
- 快速上手一个项目
- 马塞洛·里皮 - 简介
- 一道二叉树的小题
- 如何不携带地址栏中url的参数进行刷新
- nodejs的升级
- Android 5.1-s5p6818平台刷机包文件
- FLV视频封装格式详解