深度学习框架Caffe学习笔记(6)-测试自己的手写数字图片
来源:互联网 发布:缺少mysql.sock 编辑:程序博客网 时间:2024/05/21 12:41
在之前的实验中我们使用过 $ ./build/tools/caffe.bin test \
-model examples/mnist/lenet_train_test.prototxt \
-weights examples/mnist/lenet_iter_10000.caffemodel \
-iterations 100
命令来测试训练好的网络。这主要用于测试网络的准确率。
但如想用自己的手写数字,通过训练好的模型来识别这个数字,怎么做呢?
可以使用Caffe中build/examples/cpp_classification/classification.bin这个程序来实现。
$ ./build/examples/cpp_classification/classification.binUsage: ./build/examples/cpp_classification/classification.bin deploy.prototxt // 模型描述文件network.caffemodel // 模型权值文件mean.binaryproto // 图像均值文件labels.txt // 图像类别标签信息img.jpg // 输入待分类图像
接下来开始准备这几个文件
模型描述文件
将lenet_train_test.prototxt复制一份修改如下
// 将训练和测试用的mnist层删除,添加以下层name: "LeNet"layer { name: "data" type: "Input" top: "data" input_param { shape: { dim: 1 dim: 1 dim: 28 dim: 28 } }}......// 中间的模型不改动,省略......// 将accuracy层和loss层删除,添加以下层layer { name: "prob" type: "Softmax" bottom: "ip2" top: "prob"}
权值描述文件
训练好网络后examples/mnist/目录下就会会有lenet_iter_10000.caffemodel这个文件。
图像均值文件
Caffe框架为我们提供了一个计算均值的文件compute_image_mean.cpp,放在caffe根目录下的tools文件夹里面。编译后的可执行体放在 build/tools/ 下面,我们直接调用就可以了
$ sudo build/tools/compute_image_mean examples/mnist/mnist_train_lmdb examples/mnist/mean.binaryproto
带两个参数:
第一个参数:examples/mnist/mnist_train_lmdb, 表示需要计算均值的数据,格式为lmdb的训练数据。
第二个参数:examples/mnist/mean.binaryproto, 计算出来的结果保存文件。
标签文件
新建label.txt,每行一个数字,0到9。
0123456789
输入待分类图像
这个自己拿画图工具画一个就好。由于训练集中的数据都是黑底白字的,所以如果自己写是是白底黑字的图片可能识别不准确。
开始测试
$ ./build/examples/cpp_classification/classification.bin \examples/mnist/classificat_net.prototxt \examples/mnist/lenet_iter_10000.caffemodel \examples/mnist/mean.binaryproto examples/mnist/label.txt \examples/mnist/0.png---------- Prediction for examples/mnist/0.png ----------1.0000 - "0"0.0000 - "1"0.0000 - "3"0.0000 - "4"0.0000 - "2"
结果显示图片中的数字为0。
- 深度学习框架Caffe学习笔记(6)-测试自己的手写数字图片
- 深度学习框架Caffe学习笔记(2)-MNIST手写数字识别例程
- caffe学习笔记12:训练和测试自己的图片
- Windows Caffe 学习笔记(四)搭建自己的网络,训练和测试MNIST手写字体库
- caffe---利用自己的手写数字进行测试
- Caffe学习-手写数字识别
- Caffe学习-手写数字识别
- Caffe学习-手写数字识别
- Caffe学习-手写数字识别
- 02:一文全解:利用谷歌深度学习框架Tensorflow识别手写数字图片(初学者篇)
- 深度学习框架 caffe 学习笔记 Day1
- 深度学习二:自己写java代码,识别手写数字
- Tensorflow深度学习笔记(五)--手写数字识别-MNIST数据测试
- 深度学习框架Caffe图片分类教程
- caffe学习笔记4-- 手写数字mnist训练过程
- Caffe学习笔记(六):mnist手写数字识别训练实例
- Caffe学习系列(12):训练和测试自己的图片
- Caffe学习系列(12):训练和测试自己的图片
- 如何将逻辑中后面算出的数据提前输出-- 计数的范围素数
- 正则化的意义
- java script 初识
- JVM 垃圾回收器工作原理及使用实例介绍
- 百度语音识别,显示权限不够的问题
- 深度学习框架Caffe学习笔记(6)-测试自己的手写数字图片
- Mybatis复习(1)
- Oracle 删除或筛选出重复数据
- iOS-文字转语音
- uC/OS III 移植到LPC1778
- 使用Babel独立版编译ES6代码时报错误:Unexpected token <
- Eclipse新导入项目出错
- mvc框架思想
- JAVA printStream乱码问题