勉强算升2级吧----用mnist训练好的model对自己手写的数字进行分类识别

        这个命题感觉接近《21天实战caffe》这本书里第6天的课后作业,但又有一点区别。小新是打算将其分类识别,这样可以更直观的看出LeNet-5对于数字识别的效果。现在来记录一下这个过程。

        1.先写下几个数字。这个嘛,自己写,然后拍照。手机拍成的照片肯定比较大,这时候我们需要对图片做一些剪裁、压缩工作。这个嘛。。小新作为理工眼镜女并没有美图秀秀这种属性软妹的软件,所以我用的是windows自带的画图,是不是很高端哈哈。由于mnist数据集里图片大小都是28x28像素的,所以我们也应该把图片大小改为28x28的。还有一点,尽量在剪裁的时候把数字放在中间,因为mnist数据集里的数字图片都是经过尺寸归一化以及数字居中处理的。处理了几个数字如下:

                                                                                                                          

        前面的6和9是单纯剪裁并压缩过的,这个9有点不乖没有待在正中间。后面的数字是用malab二值化后的图像。

        2.新建文件夹,把相关的东西都放进去。如小新新建的文件夹为F:\caffe\caffe-master\data\handwriting,这些图片小新在此文件夹下再建了一个放了进去,然后把之前训练好的模型,classification.exe等感觉能用上的东西一股脑放了进去。以后的脚本啊什么的都在这个文件夹下写。

        3.给出均差文件。这是由于用classification.exe分类的时候程序所要求的。均差文件可以用脚本给出,脚本的内容如下:

compute_image_mean.exe F:\caffe\caffe-master\Build\x64\Debug\example2\mnist_train_lmdb mean.binaryproto 

pause 

依旧是注意空格,还有中间的地址是自己放mnist_rain_lmdb文件夹的地址。

                                         

最后生成这个

                                   

这个文件生成的时候没有指定文件夹,所以之前的脚本在哪里,这个就会生成在哪里。像小新的就在自己建的F:\caffe\caffe-master\data\handwriting文件夹里找到的。

4.给出标签。这个很好给,用文本文档就行了,标签文件的作用是告诉我们分的类每个类名字叫什么,数字识别本质上也是分类,这个也同样是调用classification.exe所需要的。里面长这样:

                                                   

CNN是有监督学习,所以在之前训练的时候数据也是打了标签的,所以给出标签文件就不难理解了。

5.写运行脚本。基本的是这样

classification.exe F:\caffe\caffe-master\data\handwriting\lenet.prototxt F:\caffe\caffe-master\data\handwriting\lenet_iter_10000.caffemodel F:\caffe\caffe-master\data\handwriting\mean.binaryproto F:\caffe\caffe-master\data\handwriting\mine.txt F:\caffe\caffe-master\data\handwriting\handwriting\6.jpg

pause

分别是:exe文件地址,网络,训练出的模型,均差文件,标签文件,图的地址和名字。

可以吧脚本堆起来写,一次把这些识别完。

         

保存为.bat文件,双击运行。

6.结果

                     

剩下的:

                  


                  


                 

明明的时候写成2222.bmp纯粹是因为为了matlab处理后保存好区分。

这里可以看到9的效果明显不好,分类成了8,而其余的都正确。

据小新猜想,这是因为原本训练的数据都是居中的,而这个9不乖,没有待在中间,所以导致分类层层提取特征的时候出了问题,所以错误吧。并且3通道的RGB不如二值图像准确率高。



  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值