光学字符识别OCR-8 综合评估
尽管在测试环境下模型工作良好,但是实践是检验真理的唯一标准。在本节中,我们通过自己的模型,与京东的测试数据进行比较验证。
衡量OCR系统的好坏有两部分内容:(1)是否成功地圈出了文字;(2)对于圈出来的文字,有没有成功识别。我们采用评分的方法,对每一张图片的识别效果进行评分。
评分规则: 如果圈出的文字区域能够跟京东提供的检测样本的box文件中匹配,那么加1分,如果正确识别出文字来,另外加1分,最后每张图片的分数是前面总分除以文字总数。
按照这个规则,每张图片的评分最多是2分,最少是0分。如果评分超过1,说明识别效果比较好了。经过京东的测试数据比较,我们的模型平均评分大约是0.84,效果差强人意。
在本文中,我们的目标是建立一个完整的OCR系统,经过一系列的工作,我们也基本完成了这一目标。
在设计算法时,我们紧密地结合基本假设,从模拟人肉眼的识别思路出发,希望能够以最少的步骤来实现目标,这种想法在特征提取和文字定位这两部分得到充分体现。同样地,由于崇尚简洁和模拟人工,在光学字符识别方面,我们选择了卷积神经网络模型,得到了较高的正确率;最后结合语言模型,通过动态规划用较简单的思路提升了效果。
经过测试,我们的系统对印刷文字的识别有着不错的效果,可以作为电商、微信等平台的图片文字识别工具。其中明显的特点是,我们的系统可以将整张文字图片输入,并且在分辨率不高的情况下能够获得较好的效果。
在本文所涉及到的算法中,一个很大的不足之处就是有很多的“经验参数”,比如聚类时h参数的选择、低密度区定义中密度的阈值、卷积神经网络中的卷积核数据、隐藏层节点数目等。由于并没有足够多的标签样本进行研究,因此,这些参数都只能是凭借着经验和少量的样本推算得出。我们期待会有更多的标签数据来得到这些参数的最优值。
还有,在识别文字区域方面,还有很多值得改进的地方。虽然我们仅仅是经过几个步骤就去掉了大部分的文字区域,但是这些步骤还是欠直观,亟待简化。我们认为,一个良好的模型应该是基于简单的假设和步骤就能得到不错的效果,因此,值得努力的工作之一就是简化假设,缩减流程。
此外,在文本切割方面,事实上不存在一种能够应对任何情况的自动切割算法,因此这一步还有很大的提升空间。据相关文献,可以通过CNN+LSTM模型,直接对单行文本进行识别,但这需要大量的训练样本和高性能的训练机器,估计只有大型企业才能做到这一点。
显然,还有很多工作都需要更深入地研究。
光学字符识别OCR-8 综合评估的更多相关文章
- 光学字符识别OCR
1.功能: 光学字符识别(OCR,Optical Character Recognition)是指对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程 2.典型应用: 名片扫描 3 ...
- 6 个优秀的开源 OCR 光学字符识别工具
转自:http://sigvc.org/bbs/thread-870-1-1.html 纸张在许多地方已日益失宠,无纸化办公谈论40多年,办公环境正限制纸山的生成.而过去几年,无纸化办公的概念发生了显 ...
- 开源OCR光学字符识别
纸张在 许多地方已日益失宠,无纸化办公谈论40多年,办公环境正限制纸山的生成.而过去几年,无纸化办公的概念发生了显着的转变.在计算机软件的帮助 下,包含大量重要管理数据和资讯的文档可以更方便的以电子形 ...
- 字符识别OCR研究一(模板匹配&BP神经网络训练)
摘 要 在MATLAB环境下利用USB摄像头採集字符图像.读取一帧保存为图像.然后对读取保存的字符图像,灰度化.二值化,在此基础上做倾斜矫正.对矫正的图像进行滤波平滑处理,然后对字符区域进行提取切割出 ...
- OCR技术浅探: 语言模型和综合评估(4)
语言模型 由于图像质量等原因,性能再好的识别模型,都会有识别错误的可能性,为了减少识别错误率,可以将识别问题跟统计语言模型结合起来,通过动态规划的方法给出最优的识别结果.这是改进OCR识别效果的重要方 ...
- 【OCR技术系列一】光学字符识别技术介绍
注:此篇内容主要是综合整理了光学字符识别 和OCR技术系列之一]字符识别技术总览,详情见文末参考文献 什么是 OCR? OCR(Optical Character Recognition,光学字符识别 ...
- Ocrad.js – JS 实现 OCR 光学字符识别
Ocrad.js 相当于是 Ocrad 项目的纯 JavaScript 版本,使用 Emscripten 自动转换.这是一个简单的 OCR (光学字符识别)程序,可以扫描图像中的文字回文本. 不像 G ...
- IT行业新名词--透明手机/OCR(光学字符识别)/夹背电池
透明手机 机身设计的一大关键部分是可替换玻璃的使用,利用导电技术,在看不到线路的环境下,让LED发光. 这样的玻璃内含液晶分子,对于内容的显示则是通过电流对分子的刺激来实现.当手机断电后,分子位置会随 ...
- 非黑即白--谷歌OCR光学字符识别
# coding=utf-8 #非黑即白--谷歌OCR光学字符识别 # 颜色的世界里,非黑即白.computer表示深信不疑. # 今天研究一下OCR光学识别庞大领域中的众多分支里的一个开源项目的一个 ...
随机推荐
- 剑指tomcat之应用管理
tomcat服务启动之后,有tomcat自身提供的应用管理(App Manage)页面,默认的地址就是服务的IP地址+端口号(IP:port):页面如下所示 点击上图的按钮便可进入应用管理页面,需要账 ...
- Log4j输出格式log4j的PatternLayout参数含义
摘自:http://logging.apache.org/log4j/docs/api/org/apache/log4j/PatternLayout.html 参数 说明 例子 %c 列出logger ...
- linux debian 时间设置中无法选择“自动设定时间和日期”
没有安装ntpdate 执行:apt-get install ntpdate ntp.sjtu.edu.cn 202.120.2.101 (上海交通大学网络中心NTP服务器地址)s1a.time.ed ...
- 对于拼接进去的html原来绑定的jq事件失效
JQ拼接显示的页面中鼠标事件失效 由于是先加载html在用js层绑定的所有后来加进来的html内容就不再绑定js了 所以我们需要利用delegate绑定,但是同样道理也不能写在普通的方法层里,因为这样 ...
- require.js 模块化简单理解
组件化 基于UI 样式布局 没有过多 js 代码操作的 比如:一个导航栏 一个表单 一个搜索框 一个侧边栏 一个html 等等.... 模块化 基于功能模块 一个可以替换的js部分称之为模块(modu ...
- Vue的computed和methods区别
1,computed里面定义的方法是以属性的方式(当然也可以以函数调用的方式)出现在html里面,而methods里面定义的方法是以函数的方式: 2,computed依赖于data里面的数据,只有相关 ...
- ImageLoader常用方法注释
ImageLoader中的常用方法及相关作用注释 ImageLoader 的ImageLoaderConfiguration config 配置 ImageLoaderConfiguration co ...
- 【TensorFlow入门完全指南】模型篇·线性回归模型
首先呢,进行import,对于日常写代码来说,第二行经常写成:import numpy as np,这样会更加简洁.第三行import用于绘图. 定义了学习率.迭代数epoch,以及展示的学习步骤,三 ...
- GWT module 'xxx' may need to be (re)compiled解决办法
使用GWT Eclipse Plug-in开发GWT应用,启动程序,在浏览器地址栏中输入http://127.0.0.1:8888/HelloWorld.html,没有出现我所期望的结果,而是弹出如下 ...
- 从输入url到页面加载完成发生了什么详解
这是一道经典的面试题,这道题没有一个标准的答案,它涉及很多的知识点,面试官会通过这道题了解你对哪一方面的知识比较擅长,然后继续追问看看你的掌握程度.当然我写的这些也只是我的一些简单的理解,从前端的角度 ...