Tensorflow与Flask结合打造手写体数字识别项目(MNIST数据集)

代码见:https://github.com/skyerhxx/Tensorflow-Flask

 

开发环境

  • Python:3.7
  • Tensorflow: 1.13.1
  • cuda 10.1
  • Flask: 1.1.2
  • IDE: Pycharm
  • OS:Win10

 

 

 

使用Flask调用模型步骤

①使用训练好的模型

②定义参数

③通过端进行传参

④进行数据验证并返回

 

整合步骤

①训练并生成模型

②暴露接口

③前端调用

④验证并返回结果

 

效果展示

Tensorflow与Flask结合打造手写体数字识别项目(MNIST数据集)_第1张图片

 

线性模型训练

主程序是regression.py,线性回归模型在model.py中

 

运行regression.py

保存ckpt会出现

 

卷积模型训练

主程序是convolutional.py,卷积模型在model.py中

 

运行convolutional.py

Tensorflow与Flask结合打造手写体数字识别项目(MNIST数据集)_第2张图片

 

当前目录结构

Tensorflow与Flask结合打造手写体数字识别项目(MNIST数据集)_第3张图片

 

使用前端界面调用flask发布的ckpt模型

将模型的接口暴露给前端界面

新建main.py

Tensorflow与Flask结合打造手写体数字识别项目(MNIST数据集)_第4张图片

 

编写好了之后,要调用还要编写前端界面

前端页面直接用现成的,这三个目录

Tensorflow与Flask结合打造手写体数字识别项目(MNIST数据集)_第5张图片

Tensorflow与Flask结合打造手写体数字识别项目(MNIST数据集)_第6张图片

index.html原始打开是这样

Tensorflow与Flask结合打造手写体数字识别项目(MNIST数据集)_第7张图片

 

最终结果

Tensorflow与Flask结合打造手写体数字识别项目(MNIST数据集)_第8张图片
 

 

数据是如何交互的

当前端得到index数据之后,首先会把数据传给main.js

main.js的ajax会和我们的main.py交互

会通过data传进来放到inputs里,inputs再进行一些转换,再放到data里来,再请求mnist接口,通过post方法,得到data数据,再做json解析,再放到网页中相应的位置显示

Tensorflow与Flask结合打造手写体数字识别项目(MNIST数据集)_第9张图片

 

参考:

https://www.imooc.com/learn/994

https://github.com/byerHu/mnist_web

你可能感兴趣的:(tensorflow,flask,神经网络,深度学习)