Packing Machinery

 

 

 

 

 

Optical Character Recognition (OCR)


基本概念

OCR是英文 Optical Character Recognition 的简写,中文译为“光学字符识别”。

OCR是指电子设备(譬如:扫描仪)或传感器 (譬如:视觉传感器) 先通过检测印刷字符明、暗确定字符形状,然后再用字符识别方法将字符形状翻译成计算机文字的过程。即:针对印刷字符,采用光学方式将纸质文档文字转换成黑白点阵图像文件,再通过自动识别软件将图像中的文字转换成文本格式,供文字处理软件进一步编辑、处理的技术。

OCR识别文本时,图片质量一般建议150dpi以上。

OCR对彩色图片识别较差,黑白图片识别较好;因此,建议采用黑白图片。OCR对印刷字体识别较好,手写识别较差。

如何除错或利用辅助信息提高识别正确率,是OCR最重要的课题,ICR(Intelligent Character Recognition)名词也因此而产生。

衡量一个OCR系统性能好坏的主要指标,包括:

拒识率、误识率、识别速度、用户界面友好性、产品稳定性、易用性及可行性等。


发展历程

OCR概念由德国科学家 Tausheck 于1929年最先提出,之后,美国科学家 Handel 也提出了利用技术对文字进行识别的想法。

而最早对印刷汉字识别进行研究的是 IBM 的 Casey 和 Nagy,1966 年他们发表了第一篇关于汉字识别的文章,采用模板匹配法识别了 1000 个印刷体汉字。

60、70 年代世界各国开始对 OCR 进行研究;初期,多以研究文字识别方法为主,且识别文字仅为 0 至 9 的数字。

以同样拥有方块文字的日本为例,1960年左右开始研究OCR基本识别理论,初期以数字为研究对象,直至 1965 至 1970 年才开始有一些简单产品。譬如:印刷文字邮政编码识别系统,能识别邮件上的邮政编码,帮助邮局进行区域分信作业。因此,邮政编码至今一直是各国所倡导的地址书写方式。

20 世纪 70 年代初,日本学者开始研究汉字识别,并做了大量工作。


OCR 中国

中国在OCR技术方面的研究工作起步较晚,70 年代开始对数字、英文字母及符号的识别进行研究,70 年代末才开始进行汉字识别的研究,到 1986 年我国提出 “863” 高新科技研究计划,汉字识别研究进入一个实质性阶段。

此时,清华大学的丁晓青教授和中科院分别开发研究,相继推出了中文OCR产品,现为中国最领先汉字OCR技术。

早期的OCR软件,由于识别率及产品化等多方面的因素,未能达到实际要求。同时,由于硬件设备成本高,运行速度慢,也没有达到实用程度。只有个别部门,譬如:信息部门、新闻出版单位等使用OCR软件。进入 20 世纪 90 年代后,随着平台式扫描仪的广泛应用,及我国信息自动化和办公自动化的普及,大大推动了OCR技术的进一步发展,OCR识别正确率、识别速度满足了广大用户的要求。



OCR 软件

由于扫描仪的普及与广泛应用,OCR 软件只需提供与扫描仪的连通接口,利用扫描仪驱动软件即可。因此,OCR软件主要由以下几个部分构成:


01、图像输入、预处理

图像输入时,不同图像格式有着不同的存储、压缩方式;目前有OpenCV、CxImage等自由、开源项目。

预处理功能主要包括:二值化、消除噪波、倾斜校正等。

二值化

摄像头拍摄的图片,大多数是彩色图像。彩色图像所含信息量巨大,图片内容可简单的分为前景与背景。

为让计算机更快、更好识别文字,我们需对彩色图进行处理,使图片只有前景与背景信息,可简单的定义前景信息为黑色,背景信息为白色,这就是二值化图。

消除噪波

由于待识别图像的品质受限于输入设备、环境、及文档印刷质量,在对图像印刷字符进行识别处理前,需根据噪波的特征对识别图像进行去噪处理,提升识别处理精确度。

不同文档噪波的定义是不同,可根据噪波的不同特征进行去噪。

倾斜校正

由于在文档拍照时,都比较随意,因此拍出来的图片不可避免的会产生倾斜,这就需要文字识别软件对图片进行校正。


02、版面分析

把文档图片分行、分段落。

由于实际文档的多样性、复杂性,因此,目前还没有一个固定、最优的切割模式。

03、字符切割

由于拍照条件的限制,经常会造成字符粘连、断笔;因此,极大限制了识别系统的性能,这就需要文字识别软件有字符切割功能。

04、字符识别

最先有采用模板匹配,后来以特征提取为主。

由于文字会偏移、笔画有粗细、断笔、粘连、旋转等因素的影响,极大增加了特征提取的难度。

05、版面恢复

人们希望识别后的文字,仍然能像原文档图片那样排列,包括:段落不变、位置不变、顺序不变的输出到 word 或 pdf 文档等。

06、后期处理、校对

根据特定语言上下文关系,对识别结果进行校正。



工作流程

OCR识别系统目的很简单,就是先把影像作一个转换,使影像内的图形继续保存、有表格则表格内资料及影像内的文字,一律变成计算机文字,以达到影像资料的储存量减少、识别出的文字可再用及可分析、可编辑,当然也可节省因键盘输入的人力与时间。

从影像到结果输出,工作须经过:

影像输入、影像预处理、文字特征抽取、比对识别、最后经人工校正将认错的文字更正、输出结果。


01、影像输入

要经过 OCR 处理的标的物须先透过光学仪器 (譬如:影像扫描仪、传真机、视觉传感器) 将影像输入计算机。

02、影像预处理

影像预处理是 OCR 系统中,须解决问题最多的一块。

须先分离图片、表格、文字区域,甚至要将文章的编排方向、文章提纲及内容主体区分开;文字大小及文字字体可如原文件一样被判断出来。具体工作包括:二值化、消除噪波、倾斜校正等。


03、文字特征抽取

单以识别率而言,特征抽取是 OCR 核心,用什么特征、怎么抽取,直接影响识别的好坏;所以,在 OCR 研究初期,特征抽取研究报告特别多。

而特征可说是识别的筹码,简易区分为 2 类:

1)统计特征

譬如:文字区域内的 黑/白 点数比。当把文字区分成好几个区域时,这一个个区域的黑/白点数比的联合,就成了空间中的一个数值向量。

在比对时,基本数学理论就足以应付。

2)结构特征

譬如:文字影像细线化后,取得文字的笔划端点、交叉点之数量及位置,或以笔划段为特征,配合特殊比对方法,进行比对。

市面上的线上手写输入软件的识别方法,多以此种结构的方法为主。


04、比对识别

1)提取数据库

当输入文字算完特征后,不管是用统计或结构特征抽取法,都须有一比对数据库或特征数据库来进行比对。

数据库的内容应包含所有要识别的字符集文字,根据与输入文字一样的特征抽取法所得的特征群组。

2)方法函数

根据不同的特征特性,可选用不同的数学距离函数,较有名的比对方法有:欧式空间比对法、松弛比对法(Relaxation)、动态程序比对法(Dynamic Programming,DP)、类神经网络数据库建立及比对、HMM(Hidden Markov Mode)、l等著名方法。

为使识别结果更稳定,也有所谓的专家系统(Experts System),利用各种特征比对法的相异互补性,提高识别结果信心度。

3)字词后处理

由于 OCR 识别无法达到百分之百。若想加强比对的正确性及信心值,一些除错或辅帮更正功能是 OCR 系统中必要的。

字词后处理就是一例,利用比对后的识别文字与其可能的相似候选字群,根据前后识别文字找出最合乎逻辑的词,做相应更正。

4)字词数据库

为字词后处理功能建立的词库。


05、人工校正

OCR 识别的最后关卡,在此之前,使用者可能只是拿着鼠标,跟着软件工作流程操作或仅是观看;而在此,有可能须特别花使用者的精神与时间,去更正甚至寻找可能是 OCR 识别出错的地方。

一个好的 OCR 软件,除有一个稳定的影像处理、识别核心,以降低错误率外,人工校正操作流程及功能,亦影响 OCR 的处理效率。

因此,文字影像与识别文字的对照,及其屏幕信息摆放的位置、还有每一识别文字的候选字功能、拒认字的功能、及字词后处理后特意标示出可能有问题的字词,都是为使用者尽量少使用键盘的一种功能设计。

当然,不是说系统没显示出的文字就一定正确,就像完全由键盘输入的工作人员也会有出错的时候,这时需重新校正一次或允许出现少许错误,但要看使用单位的具体要求。


06、输出结果

有时,只要文本文件能部分重用即可;但是,一般的文本文件有人要漂漂亮亮的和输入文件一模一样,所以需原文重现。

有人注重表格文字,所以要和 Excel 等软件结合。无论怎么变化,都只是输出档案格式的变化而已。

如需还原成原文一样的格式,则在识别后,需人工排版,耗时耗力。