OCR ── Optical Character Recognition 电子设备传感器光学字符识别 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 技术方面的研究工作起步较晚,70 年代开始对数字、英文字母及符号的识别进行研究,70 年代末才开始进行汉字识别的研究,到 1986 年我国提出 “863” 高新科技研究计划,汉字识别研究进入一个实质性阶段。此时,清华大学的丁晓青教授和中科院分别开发研究,相继推出了中文 OCR 产品,现为中国最领先汉字 OCR 技术。早期的 OCR 软件,由于识别率及产品化等多方面的因素,未能达到实际要求。同时,由于硬件设备成本高,运行速度慢,也没有达到实用程度。只有个别部门,譬如:信息部门、新闻出版单位等使用 OCR 软件。进入 20 世纪 90 年代后,随着平台式扫描仪的广泛应用,及我国信息自动化和办公自动化的普及,大大推动了 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 等软件结合。无论怎么变化,都只是输出档案格式的变化而已。如需还原成原文一样的格式,则在识别后,需人工排版,耗时耗力。 版权声明: 本文由 德云社区 整理,原文来自网络,未经许可不得转载。 |