原标题:python+flask搭建CNN在线识别手写中文网站

使用python+flask搭建的一个网站,然后从网页的写字板上获取鼠标手写的汉字经过转码后传回后台,并经过图片裁剪处理之后传入CNNPIL将识别结果生成图片,最后异步回传给web端进行识别结果展示。中文总共50,000多汉字,常用的有3,755个。这里主要对常见的3755个汉字进行识别。

代码获取:

一、数据集

目前国内有很多优秀的中文手写识别数据集。例如:北京邮电大学模式识别实验室发布的数据(HCL2000),它是目前最大的脱机手写汉字库,共有1,000个人书写,除了汉字样本库外,还有一个对应的书写者信息库,记录了书写者的年龄、职业、文化程度等信息,用于研究相关影响因素。目前此数据库免费向研究者公开。本文使用的是中科院自动研究所的分享的中文手写数据集CASIA-HWDB(下载地址http://www.nlpr.ia.ac.cn/databases/handwriting/Home.html ),由187个人通过Wacom笔在线输入的手写汉字。

二、CNN结构:

用tensorflow库来实现【三个卷积层+三个池化层+两个全连接层】的卷积神经网络,结构如下图所示:

训练图片都修整成64x64大小,这里我只训练常见的3755个汉字,在CNN识别数字的模型结构上再添加了一个卷积层和池化层,其他结构差不多。

将下载好的HWDB数据集解压处理好开始训练,这个训练过程比较长,我最终在GPU:GTX1050Ti上迭代了12,000次花费几个小时,最终取最可能的前三个预测值

三、加载模型

我训练模型迭代了12,000次之后,将训练参数保存在checkpoint文件夹中,不过因为单个文件大小的限制,训练好的模型文件从百度云上下载:

链接: https://pan.baidu.com/s/1eSWBIyI

密码: kv2r

下载之后直接覆盖checkpoint文件夹。

四、环境

python 3.6.1;

flask 0.12.2;

tensorflow 1.3.0;

pillow 4.2.1;

pickleshare 0.7.4;

numpy 1.13.1;五、运行

1、克隆项目,然后按照环境要求安装好相应的库(使用pip安装);

2、从百度云下载训练好的模型文件,放到相应的checkpoint文件夹下;

3、使用python run.py运行;

4、打开本地浏览器输入localhost:5000进行查看;

大神总结的机器学习的数学基础,掌握这些足够

xgboost模型实战案例:预测未来一段时间的路段交通流量返回搜狐,查看更多

责任编辑:

python识图 web_python+flask搭建CNN在线识别手写中文网站相关推荐

  1. tensorflow+python flask进行手写识别_python+flask搭建CNN在线识别手写中文网站!简直太屌了!...

    原标题:python+flask搭建CNN在线识别手写中文网站!简直太屌了! 使用python+flask搭建的一个网站,然后从网页的写字板上获取鼠标手写的汉字经过转码后传回后台,并经过图片裁剪处理之 ...

  2. 【项目10】python+flask搭建CNN在线识别手写中文网站

    使用python+flask搭建的一个网站,然后从网页的写字板上获取鼠标手写的汉字经过转码后传回后台,并经过图片裁剪处理之后传入CNN手写中文识别的模型中进行识别,最后通过PIL将识别结果生成图片,最 ...

  3. python+flask搭建CNN在线识别手写中文网站

    向AI转型的程序员都关注了这个号

  4. 怎么在线识别手写文字?好用软件讲解

    随着数字化时代的到来,越来越多的人开始使用数字设备来记录和传输信息.但是,有时候我们仍然需要手写笔记或签名.此时,如何将手写文字转化为电子文本就成为了一个问题.在线识别手写文字可以将手写内容快速转换为 ...

  5. C语言底层搭建CNN实现MNIST手写数字识别

    手写数字识别 手写数字识别是指使用计算机自动识别手写体阿拉伯数字的技术.作为光学字符识别OCR的一个分支,它可以被广泛应用到手写数据的自动录入场景中.传统的识别方法如最近邻算法k-NN.支持向量机SV ...

  6. Tensorflow搭建卷积神经网络识别手写英语字母

    更新记录: 2018年2月5日 初始文章版本 近几天需要进行英语手写体识别,查阅了很多资料,但是大多数资料都是针对MNIST数据集的,并且主要识别手写数字.为了满足实际的英文手写识别需求,需要从训练集 ...

  7. python识图 web_python如何调用百度识图api

    一.先去百度识别官网注册开通服务且获得ak和sk 链接:https://cloud.baidu.com/doc/Reference/s/9jwvz2egb 二.代码模板 import cv2 impo ...

  8. Educoder 机器学习 神经网络 第四关:使用pytorch搭建卷积神经网络识别手写数字

    任务描述 相关知识 卷积神经网络 为什么使用卷积神经网络 卷积 池化 全连接网络 卷积神经网络大致结构 pytorch构建卷积神经网络项目流程 数据集介绍与加载数据 构建模型 训练模型 保存模型 加载 ...

  9. python识图 web_Python图片识别——人工智能篇

    一.安装pytesseract和PIL PIL全称:Python Imaging Library,python图像处理库,这个库支持多种文件格式,并提供了强大的图像处理和图形处理能力. 由于PIL仅支 ...

  10. python识别手写文字_如何快速使用Python神经网络识别手写字符?(文末福利)

    原标题:如何快速使用Python神经网络识别手写字符?(文末福利) 点击标题下[异步社区]可快速关注 在本文中,我们将进一步探讨一些使用Python神经网络识别手写字符非常有趣的想法.如果只是想了解神 ...

最新文章

  1. 18个Java8日期处理的实践,太有用了!
  2. 笔记本电脑无线被禁用 是哪个服务器,无线网关,小编教你笔记本无线网络禁用后怎么开启...
  3. 【网寻】mui - 点击事件
  4. C++实现基数排序(附完整源码)
  5. kafka streams实战 pdf_spring框架实战口试材料
  6. mysql5.5编译安装参数_mysql-5.5源码编译安装(附参数对照表)
  7. 华为S5700交换机开启telnet远程登陆配置(推荐)
  8. HTML标签的书写和嵌套规范
  9. python如何收集数据_如何从另一个文件导入列表并从中“收集”数据?(Python)...
  10. 看不到图层怎么办_图层管理工具及相关问题
  11. Python使用颜色块覆盖视频中指定区域的内容
  12. MySQL 用gourp by分组后取某一字段最大值
  13. 轻量级的移动开发JavaScript框架-zepto.js
  14. zabbix item详解
  15. html5图像、图片处理【转】
  16. c# Quartz使用
  17. 白盒测试方法和黑盒测试方法
  18. 数论学习-初等数论基础总览
  19. DSP 程序远程升级 / Bootloader设计指南(五)—— FLASH擦写操作
  20. 微信小程序连接蓝牙打印机打印快递面单

热门文章

  1. Web服务器过载的情况
  2. 各公司用户画像技术案例分享
  3. PPT动画教程:修改幻灯片母板
  4. php 斗牛 牌型 和 比牌 规则
  5. 中国智慧消防产业需求现状及十四五发展趋向分析报告2021-2027年版
  6. 三阶金字塔魔方还原 - 3步无公式
  7. grpc流式传输心得
  8. 数据挖掘、数据分析以及大数据之间的区别有哪些?
  9. 2019年电赛之路——2015年电子设计竞赛A题任务设计
  10. Thymeleaf模板引擎使用详解