自己动手做一个识别手写数字的web应用02

继续上文。

自己动手做一个识别手写数字的web应用01

01

再次进入docker容器

接着上一篇文章,我们继续使用上次新建好的容器,可以终端输入 :

docker ps -a

如上图,找到上次run的容器,我这边是容器名(NAMES)为suspicious_cori,启动它,可以终端输入:

docker start suspicious_cori

然后,终端再输入:

docker exec -i -t suspicious_cori bash

即可在容器中开启一个交互模式的终端。

终端输入

jupyter notebook

新建一个notebook

02

加载训练好的模型

加载上一篇训练好的模型,在新建的notebook里输入:

from keras.models import model_from_json

model=model_from_json(open('my_model_architecture.json').read())

model.load_weights('my_model_weights.h5')

03

读取需要识别的手写字图片

引入用于读取图片的库:

import matplotlib.image as mpimg

读取位于kerasStudy目录下的图片:

img = mpimg.imread('test.png')

'''

matplotlib只支持PNG图像,读取和代码处于同一目录下的 test.png ,注意,读取后的img 就已经是一个 np.array 了,并且已经归一化处理。

'''

'''

上文的png图片是单通道图片(灰度),如果test.png是rgb通道的图片,可以rgb2gray进行转化,代码如下:

def rgb2gray(rgb):

return np.dot(rgb[...,:3], [0.299, 0.587, 0.114])

img = rgb2gray(img)

'''

关于图片的通道,我们可以在photoshop里直观的查看:

先查看下读取的图片数组维度:

print(img.shape)

输出是(28, 28)

转化成正确的输入格式:

img = img.reshape(1, 784)

打印出来看看:

print(img.shape)

输出是(1, 784)

04

识别的手写字图片

输入:

pre=model.predict_classes(img)

打印出来即可:

print(pre)

识别出来是6:

1/1 [==============================] - 0s
[6]

至此,你已经学会了从训练模型到使用模型进行识别任务的全过程啦。

有兴趣可以试着替换其他的手写字图片进行识别看看。

当然也可以写个后端服务,部署成web应用。

关于第2部分Keras加载训练好的模型及预测的源代码文件,可以在后台留言,索取。

原文发布于微信公众号 - 科技Mix设计Lab(Design-AI-Lab)

原文发表时间:2017-11-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏瓜大三哥

图像分割(四)

图像分割(四) 之基于FPGA的局部自适应分割 子模块设计 窗口缓存模块win_buf 本模块不做任何算法上的处理,只是负责将当前输入像素的二维窗口元素缓存并组...

25080
来自专栏人工智能LeadAI

TensorFlow从0到1 | 第十七章 Step By Step上手TensorBoard

上一篇 16 L2正则化对抗“过拟合 ”提到,为了检测训练过程中发生的过拟合,需要记录每次迭代(甚至每次step)模型在训练集和验证集上的识别精度。其实,为了能...

55870
来自专栏TensorFlow从0到N

TensorFlow从0到1 - 17 - Step By Step上手TensorBoard

上一篇16 L2正则化对抗“过拟合”提到,为了检测训练过程中发生的过拟合,需要记录每次迭代(甚至每次step)模型在训练集和验证集上的识别精度。其实,为了能更...

36880
来自专栏人工智能LeadAI

TensorFlow分布式全套(原理,部署,实例)

TF的实现分为了单机实现和分布式实现,在分布式实现中,需要实现的是对client,master,worker process不在同一台机器上时的支持。数据量很大...

1.1K60
来自专栏用户2442861的专栏

决策树python sklearn 示例

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/d...

71140
来自专栏木子昭的博客

Python为图片加水印

Pillow是python的一个功能强大的图像处理的库,可对图像进行高质量的压缩变换等操作,前几天看到一些公众号,提供了为用户头像加装饰的操作,于是自己试了一...

39070
来自专栏君赏技术博客

【已解决】mas_updateConstraints更新约束引起的约束冲突

79DF33F7-1626-4FFD-9B01-1B115617F764

40320
来自专栏cs

python数据分析画图体验

37270
来自专栏AI研习社

一个应用于物体识别的迁移学习工具链

迁移学习指的是,通过对预训练模型的参数进行微调,将训练好的模型应用到相似或者只有细微差异的不同任务中。通过这个方法,我们可以基于一些性能顶尖的深度学习模型得到别...

14220
来自专栏深度学习思考者

Caffe for windows 训练minst和cifar-10

前言 今天刚看了看Theano,本来打算试着改改,再深入学习学习(这就是所谓的深度学习啊,亲们!哈哈)。由于扣扣好友在训练CIFAR-10数据集,所以就在昨天配...

27560

扫码关注云+社区

领取腾讯云代金券