使用自己的图片测试MNIST训练效果(TensorFlow1.5+CNN)

初学者在TensorFlow 1.5环境下利用CNN训练MNIST数据集,遇到旧教程不适用的问题。通过解决模型保存与加载,最终实现较准确的预测。本文分享了训练过程,强调28*28像素图片要求,并指出高精度下无需复杂图像预处理。实验结果显示,模型有时会将不同图像识别为“8”。
摘要由CSDN通过智能技术生成

作为初学者研究了两周的TensorFlow基础的东西。首先是MNIST数据集在CNN的训练。中间经历了很多问题。

现在TensorFlow的版本已经更新到1.5,出了很多高级API,所以很多博客都不再合适了。

基于TensorFlow+anaconda在CNN训练MNIST之后,关于保存模型以及重新载入先关模型参数又折腾了一阵。原来老版本的方法,就是中文社区的MNIST训练之后使用保存数据,预测结果很差。这次做出来比较靠谱的结果。

我使用的是已经训练好的模型。所以程序里没有训练和评估。这些相关的代码在官方给的例子里已经有了。所以我直接用已经得到的数据进行预测了。


 这是我的训练结果,其实1W次我感觉就够了。我不小心弄到了4w.

注意使用的图片,28*28像素。(直接在画图工具里设定好分辨率,比用CV PIL快多了。。。。)。MNIST数据集里是黑底白字。我用画图做的是白底黑字,需要取反。

另外,如果训练的精度够了,不需要进行额外的图像处理(什么滤波啦,倾斜啦)

---我的

---MNIST的

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
from PIL import Image
import numpy as np
import tensorflow as tf
def loaddata(filename):
    #转换成灰度图也就是单通道。
    img=Image.open(filename).convert('L')
    #取出数据
    array=np.asarray(img,dtype="float32")
   
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值