OCR——光学字符识别

OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程。

最近对人工智能很有兴趣,OCR应该是大家开始接触最多的一个应用场景,我希望通过开源的OCR项目去实现一个小应用,使用的是Tesseract OCR,遵循the Apache License, Version 2.0 。我仅以此文总结回忆一下这一个星期来的学习与领悟,也希望对感兴趣的朋友起到入门作用,更希望有大师斧正与引导。

1. OCR原理

本着知其然知其所以然的教诲,在开始具体操作之前,我们先了解一下OCR原理。光学字符识别,字面上理解就分为先后两个步骤,图像处理和文字识别。

1.1 图像处理

为什么要先进行图像处理?我们可以从人类的角度来倒推分析这一技术过程,人类大脑的发育是从后部向前部开始的,顺序依次枕叶、顶叶、颞叶、额叶,枕叶作为最先发育的大脑区域负责的就是视觉,也就是图像处理。婴儿视觉的训练过程就是图像处理的过程,开始我们可以接收到视觉信号范围很小,重点在色彩对比很大的黑白图像上,通过训练我们逐渐可以接收更大范围的视觉信号,处理更复杂的色彩图像。

GLENN DOMAN 博士,一位早在1940年就开始进行人类研究的先驱,他在幼儿成长教育方面提出了很多系统的训练方法,其中最早期的视觉训练方法——杜曼闪卡,影响最大,世界上很多幼儿早教机构都采用这套训练方法对刚出生的婴幼儿进行训练。
doman闪卡简单示意图上图是简单的杜曼闪卡训练过程,根据本文的目的,我省略了很多步骤。首先是从黑白强烈对比的单个简单结构的字开始,例如“门”;其次暗一些的黑底白字,但依然是单个简单结构的字;然后变为对比相对较弱的白底红字且结构复杂的字,例如“舅”;再是颜色丰富结构复杂的单一内容的百科图像;最后发展成内容多行、字体多变、字号较小的故事。

总结,我们可以看到人类视觉发育成长的过程,是先从对比鲜明、结构简单、内容单一的图像开始,慢慢成长到色彩丰富、结构复杂、多行信息的图像。我们首先掌握了处理简单图像的方法,记录了图像的特征,然后无论这个图像如何变换或组合,我们只需要通过关注图像的特征就可以准确的识别图像信息。

这个过程就是我们要教会人工智能的图像处理技术,即当接收到图像信息时,可以抽取其中关键信息。当然,人类的视觉往往处理的图像都是多层次的,这更加复杂,对于OCR我们先暂且理解到这一层。

图像识别技术是属于人工智能的一项重要能力,因此为了实现程序模拟人类视觉的能力,人类设计了很多图像识别模型帮助程序实现这一能力,最初的“模板匹配模型”,直接将图像作为模板记忆,识别过程就是图像与模板的匹配过程;后来出现以记录图像的相似点进行匹配的“原型匹配模型”;再就是更加复杂的“泛魔识别模型”,通过多层次的特征分析去识别图像。我们可以结合前面杜曼博士对婴幼儿视觉训练的过程来分析下图像识别模型所做的事情。
泛魔识别模型基于这些理论,我们就明白了为什么先进行图像处理,目的就是将原始图片的特征提取出来。而这个提取的过程也是相当繁琐的,包含了灰度化、二值化、降噪、倾斜矫正、文字切分等等。
以下为模拟图片:
原图原图:存在色彩等多种元素。
灰度化灰度化:将图像黑白化。
二值化二值化:图像只存在黑白,没有灰色。
降噪降噪:将干扰项去除。

这里只是一个图像处理的模拟过程,每一项处理都包含复杂的算法,后面还要对文字进行切分,切分前先要将文字进行矫正以保证切分时直线标记,切分过程又分为多行与字符等等。

1.2 文字识别

图像处理后就要进行文字识别了,这个阶段就是图像识别模型中提到的认知层,将从

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值