您的位置:首页 > 其它

mnist训练的cnn模型测试自己的手写数字

2017-10-27 14:21 525 查看
拿自己的手写数字试了下之前拿mnist训练的cnn模型;

代码和示例中用的cnn代码一样的,最后加了个保存模型和处理图像的部分;

saver = tf.train.Saver()  # defaults to saving all variables;记录;
saver.save(sess, '.../number_model.ckpt')  #保存模型参数;

#加了一个函数处理图像;
def imageprepare(infile):

im = Image.open(infile).convert('1')
im=im.resize((28,28))

plt.imshow(im)
plt.show()
data1 = np.asarray(im.getdata()) # 这个得到的矩阵里,255是白色,0是黑色;让它变成0是白,1是黑;
data1 = (255-data1)/255

return data1

infile=".../original_img.jpg"#在画图随手画了个,保存在路径下;
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
saver.restore(sess, "D:/coding/number_model.ckpt")#.restore()恢复之前保存的变量;

result1=imageprepare(infile)
prediction=tf.argmax(y_conv,1)
predint=prediction.eval(feed_dict={x: [result1],keep_prob: 1.0}, session=sess)
print(h_conv2)

print('recognize result:')
print(predint[0])




自己多试了几下,写的7有时候会误认成3,像素处理的比较小容易认错;其他数字识别没问题;回头再看下改进。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐