最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

OCR技术及其发展

IT圈 admin 32浏览 0评论

2024年1月9日发(作者:抗贞芳)

OCR技术及其发展

汉字其数量之大,构思之精,为世界文明史所仅有。由于汉字为非字母化、非拼音化的文字,所以在信息技术及计算机技术日益普及的今天,如何将汉字方便、快速地输入到计算机中已成为关系到计算机技术能否在我国真正普及的关键问题。采用光学的方式将文档资料转换成原始黑白点阵的图像文件,然后通过识别软件将图像中的文字转换成文本格式,以便文字处理软件的进一步加工。因此,字符识别一般是指光学字符识别技术(Optical Character Recognition,简称OCR)。

一. OCR技术的发展历程

OCR的概念是在1929年由德国科学家Tausheck最先提出来的,后来美国科学家Handel也提出了利用技术对文字进行识别的想法。自20世纪60年代初期出现第一代OCR产品开始,经过30多年的不断发展改进,包括手写体的各种OCR技术的研究取得了令人瞩目的成果,人们对OCR产品的功能要求也从原来的单纯注重识别率,发展到对整个OCR系统的识别速度、用户界面的友好性、操作的简便性、产品的稳定性、适应性、可靠性和易升级性、售前售后服务质量等各方面提出更高的要求。

IBM公司最早开发了OCR产品,1965年在纽约世界博览会上展出了IBM公司的OCR产品——IBMl287。当时的这款产品只能识别印刷体的数字、英文字母及部分符号,并且必须是指定的字体。20世纪60年代末,日立公司和富士通公司也分别研制出各自的OCR产品。全世界第一个实现手写体邮政编码识别的信函自动分拣系统是由日本东芝公司研制的,两年后NEC公司也推出了同样的系统。到了1974年,信函的自动分拣率达到92%左右,并且广泛地应用在邮政系统中,发挥着较好的作用。1983年日本东芝公司发布了其识别印刷体日文汉字的OCR系统OCRV595,其识别速度为每秒70~100个汉字,识别率为99.5%。其后东芝公司又开始了手写体日文汉字识别的研究工作。

中国在OCR技术方面的研究工作相对起步较晚,在20世纪70年代才开始对数字、英文字母及符号的识别技术进行研究,20世纪70年代末开始进行汉字识别的研究。1986年,国家863计划信息领域课题组织了清华大学、北京信息工程学院、沈阳自动化所三家单位联合进行中文OCR软件的开发工作。至1989年,清华大学率先推出了国内第一套中文OCR软件--清华文通TH-OCR1.0版,至此中文OCR正式从实验室走向了市场。清华OCR印刷体汉字识别软件其后又推出了TH-OCR 92高性能实用简/繁体、多字体、多功能印刷汉字识别系统,使印刷体汉字识别技术又取得重大进展。到1994年推出的TH-OCR 94高性能汉英混排印刷文本识别系统,则被专家鉴定为“是国内外首次推出的汉英混排印刷文本识别系统,总体上居国际领先水平”。上个世纪90年代中后期,清华大学电子工程系提出并进行了汉字识别综合研究,使汉字识别技术在印刷体文本、联机手写汉字识别、脱机手写汉字识别和脱机手写数字符号识别等领域全面地取得了重要成果。具有代表性的成果是TH-OCR 97综合集成汉字识别系统,它可以完成多文种(汉、英、日)印刷文本、联机手写汉字、脱机手写汉字和手写数字的识别输入。几年来,除清华文通TH-OCR外,其它如尚书SH-OCR等各具风格的OCR软件也相继问世,中文OCR市场稳步扩大,用户遍布世界各地。

可以说目前印刷体OCR的识别技术已经达到较高水平。OCR产品已由早期的只能识别指定的印刷体数字、英文字母和部分符号,发展成为可以自动进行版面分析、表格识别,实现混合文字、多字体、多字号、横竖混排识别的强大的计算机信息快速录入工具。对印刷体汉字的识别率达到98%以上,即使对印刷质量较差的文字其识别率也达到95%以上。可识别宋体、黑体、楷体、仿宋体等多种字体的简、繁体,并且可以对多种字体、不同字号混合排版进行识别,对手写体汉字的识别率达到70%以上。特别是我国的汉字OCR技术经过十几年的努力,克服了起步晚、汉字字符集异常庞大等困难,单字的识别速度(指在单位时间内所完成的从特征提取到识别结果输出的字数)可以达到70字/秒以上。由于印刷体OCR汉字识别技术已经比较成熟,所以OCR产品被广泛地应用在新闻、印刷、出版、图书馆、办公自动化等各个行业。

专业型OCR产品多是面向特定的行业,即适用于每天需处理大量表格信息录入的部门,如邮政、税务、海关、统计等等。这种面向特定行业的专业型OCR系统,格式较为固定,识别的字符集相对较小,经常与专用的输入设备结合使用,因此具有速度快、效率高等特点,比如邮件自动分拣系统等。

手写文稿的识别直到1996、1997年才开始有产品问世,而且是作为印刷文稿识别产品的一项附加功能提供

1

的。由于人写字的习惯千差万别,实现自由手写体识别相当困难,所以手写体OCR技术的使用领域是联机手写体识别,即人一边写,计算机一边识别,是一种实时识别方式。

目前,比较流行的OCR软件很多,英文OCR主要有OmniPage,中文OCR主要清华紫光OCR、清华文通OCR、汉王OCR、中晶尚书OCR、丹青OCR、蒙恬OCR等。尽管汉字字量大、字形复杂,但OCR技术已经走向成熟。许多OCR软件不仅能识别黑白印刷体汉字,还能识别灰度和彩色印刷体汉字,识别速度很快,识别正确率达到了99%以上;可识别宋体、黑体、楷体等多种字体和简、繁体;可对多种字体、不同字号的混排进行识别;有些OCR软件还能识别图像、表格。与此同时,对于手写体汉字识别的研究也取得了很大进展,正确识别率已达到了70%以上。

(印刷体文字的识别可以说很早就成为人们的梦想,早在1929年,Taushek就在德国获得了一项有关OCR的专利。欧美国家为了将浩如烟海、与日俱增的大量报刊杂志、文件资料和单据报表等文字材料输入计算机进行信息处理,从50年代就开始了西文OCR(Optical Character Recognition,光学字符识别)技术的研究,以便代替人工键盘输入。

印刷体汉字的识别最早可以追溯到60年代。1966年,IBM公司的Casey和Nagy发表了第一篇关于印刷体汉字识别的论文,在这篇论文中他们利用简单的模板匹配法识别了1,000个印刷体汉字。70年代以来,日本学者做了许多工作,其中有代表性的系统有1977年东芝综合研究所研制的可以识别2000汉字的单体印刷汉字识别系统;80年代初期,日本武藏野电气研究所研制的可以识别2300个多体汉字的印刷体汉字识别系统,代表了当时汉字识别的最高水平。此外,日本的三洋、松下、理光和富士等公司也有其研制的印刷汉字识别系统。这些系统在方法上,大都采用基于K-L数字变换的匹配方案,使用了大量专用硬件,其设备有的相当于小型机甚至大型机,价格极其昂贵,没有得到广泛应用。

我国对印刷汉字识别的研究始于70年代末、80年代初,大致可以分为三大阶段:

(1) 第一阶段从70年代末期到80年代末期,主要是算法和方案探索。

(2) 第二阶段是90年代初期,中文OCR由实验室走向市场,初步实用。

(3) 第三阶段也就是目前,主要是印刷汉字识别技术和系统性能的提高,包括汉英双语混排识别率的提高和稳健性的增强。

同国外相比,我国的印刷体汉字识别研究起步较晚。但由于我国政府对汉字自动识别输入的研究从80年代开始给予了充分的重视和支持,经过科研人员十多年的辛勤努力,印刷体汉字识别技术的发展和应用,有了长足进步:从简单的单体识别发展到多种字体混排的多体识别,从中文印刷材料的识别发展到中英混排印刷材料的双语识别。各个系统可以支持简、繁体汉字的识别,解决了多体多字号混排文本的识别问题,对于简单的版面可以进行有效的定量分析,同时汉字识别率已达到了98%以上。

清华大学电子工程系、中国科学院计算所智能中心、北京信息工程学院、沈阳自动化研究所等单位分别研制开发出实用化的印刷体汉字识别系统。尤其是由清华大学电子工程系研制的清华TH-OCR产品,始终处于技术与产品发展的最前沿,并占据着最大的市场份额,代表着中文OCR技术发展的潮流。

这一成就,是对中华文化宝贵遗产的继承和发扬,在世界电脑发展史上,必将留下光辉的一页,同时,这也是造福子孙千秋万代的大事。国家高技术研究发展“863”计划、国家重点科技攻关计划、国家自然科学基金和军事基础研究基金都对这一研究课题予以极大的重视和大力的支持。)

二. OCR软件的应用

在中国OCR技术的推广,并且已经形成了国内的数据加工产业。大到电子图书馆建设、报刊电子版发行、网络信息建设、银行金融系统数字化、教育信息化建设等大型数据库的建设,小到单位电子办公、个人文字编辑等工作OCR技术都已经占有了举足轻重的作用。无论是在国际还是国内OCR都已经渗透到了社会的数字化、信息化建设当中。 OCR形成产业,是大势所趋。它的发展从过去简单的一门技术,已经逐步渗透到了社会信息化建设的各个领域当中。

(在扫描仪市场上,许多类型的办公和家用扫描仪均配有OCR软件,如紫光的扫描仪配备了紫光OCR,中晶的扫描仪配备了尚书OCR,Mustek的扫描仪配备了丹青OCR等。扫描仪与OCR软件共同承担着从文稿的输入到文字识别的全过程。文稿扫描在办公领域中经常用到,即将报纸、杂志等媒体上刊载的有关文稿通过

2

扫描仪进行扫描,随后进行OCR识别,或存储成图像文件,留待以后进行OCR识别,将图像文件转换成文本文件或Word文件进行存储。

此外,数字化信息的存储、传输,不仅成本低、效率高,而且能够适应排版、网络传输等不断不发展的需要。目前我国有很多历史遗留下来的大量图书、报刊、杂志等纸质珍品,急需将其转换成电子信息。如电子图书馆的建立,就需要将图书逐页扫描,加上OCR软件的识别,更替代了人工键入文字的工作,大大缩短了录入时间,减轻了劳动强度,节省了人力且降低了费用,提高了录入正确率,工作效率和现代办公自动化程度。

目前OCR软件与扫描仪的搭配已应用到信息化时代的多个领域,如数字化图书馆,各种报表的识别,以及银行、税务系统标据的识别等。随着网络化、信息化的发展与普及,其应用范围将越来越广泛。)

三. OCR的困难

脱机汉字识别的工作原理大体上和收款机的条码识别器相同,都是先把印在纸上或货物上的符号变换为电图像信号,再进行处理、识别。但是汉字识别的识别对象种类(字量)更多,结构也更复杂,因而识别系统必须考虑的问题更多,困难更大,曾经被认为是模式识别领域最为困难的问题之一。经过国内外科技工作者30多年的艰苦努力,近几年来才得到较好的解决。

首要的问题是:汉字识别的对象是几千个(种)方块汉字。从模式识别的观点上说,这是一种超多类的模式集合,已有的适用于模式类别较少的识别方法和理论已不完全适用。具体地说,计算机认某汉字时应把这个汉字跟字典中每个标准汉字逐个比较,找出其中最相似的字作为识别结果,汉字字量越多,认字的速度越慢。如果识别速度过低,不能满足实际应用的要求,使用价值就不大。这是超多类模式识别的重要问题之一。通常这个问题可以采用多级分类的办法来解决:先按某种准则把所有汉字分成若干个子类(叫做候选类),再把待识汉字跟它所属子类中的每个标准汉字匹配比较,求得最相似的标准汉字。由于各个子类中的汉字字数较少,识别速度可以提高。这种方法和通常查字典相似:先按部首分类,再找所需的单字,而不必从头到尾把整个字典查一遍。

但是,上述先粗分类的办法在汉字识别中也有困难。原因是:如果粗分类发生错误,就一定得不到正确的结果。这和查字典的道理也是一样的。通常汉字的部首也很难找,部首找不到或者找错了,要查的字就难以找到。识别速度和识别率(质量)是一对天生的矛盾,速度提高了,质量很容易受到影响。在类别很多的汉字识别系统中这个问题尤为突出.

汉字识别中遇到的另一个困难是字体多。其实对于人来说,字体不同,特别是印刷字体不同,对认字似乎并没有什么影响。因为不同字体的同一个印刷汉字,其拓扑结构绝大多数是相同的,只是笔画粗细、形态、长短及位置略有差异而已。但是,现代计算机的智能并不高,还没有“去粗存精、去伪存真”的能力,往往把不同字体的同一个汉字看做是不同的字。在汉字识别系统中为了解决这个问题,不得不在字典中采用多模板的方法,把不同字体的同一个汉字用几种标准模板来代表;对某个汉字进行识别时,只要其中一种标准模板和待识字最相似,就判决为所需的汉字。显然这是一种比较笨拙的办法,其影响是增加了字典中的模板数量,这相当于增加了识别系统的字数。既增加了系统的复杂性,又降低了识别速度。汉字识别系统所应识别的字数本来就很多,由于字体不同使实际的识别字典容量成倍地增加,困难很大。显然解决这个问题的较好方法是努力提高计算机的“智能”,精心选择用于识别的特征,使其适用于多字体的汉字识别。这是本书将要讨论的主要问题之一。

汉字识别的另一个突出困难是:结构复杂,相似字又很多,这也是一对矛盾,已有的结构识别法和统计识别法都难以很好地解决所有汉字的识别问题。采用结构法可以照顾到汉字字形中的细微结构,有利于相似字的识别,但它却容易受干扰的影响,即抗干扰性能差。统计法的特点与此相反。

手写字的字形问题更多,本书第2章“笔输入”对此已有.所论述。但脱机手写汉字识别的问题跟联机识别不完全一样,后者在输入汉字字形时已由书写板在书写过程中将各笔画逐一分开,脱机手写汉字识别的识别对象仍是方块汉字的二维图形,同一个字不但字形不尽相同,拓扑结构也可能不一样(参看图2.2),因而困难更大。为了区分手写汉字的工整程度,目前我们把它分为两种类型,一种叫做“限制性手写汉字”,要求用户书写工整,尽量做到笔画横平竖直,不连笔。另一种是“非限制性手写汉字”,用户可以按自己的

3

习惯书写,不受限制或少受限制。这种字体大体上相当于行书和草书。日常生活中有的人书写相当潦草,有的字甚至很有文化素养的人也不一定能看懂,让计算机识别就更是难之又难。因此当前联机手写汉字识别研究,还限于对“限制性手写汉字”的研究。此外,所谓“限制性”的提法过于笼统。为了研究工作的需要,国内外有关单位编制了一些“手写汉字库”,这一问题在第4章“脱机手写汉字识别”中再作讨论。

汉字识别还有一些其他的问题。第一,我国的出版物虽然以汉字为主,但经常也有西文、日文和各种数码符号。不同文字符号混排在同一页面上,必定会使识别难度大大增加。其次,印刷质量对识别结果也有直接影响。实践证明,好纸铅印的书刊,其识别率大都可以在99%以上,印刷质量差的文件识别率显著下降。目前由于传真机广泛使用,对识别传真材料的要求越来越迫切,但传真文件的质量较低,识别率很难提高。这是我们进一步扩大脱机印刷汉字识别的应用领域所必须解决的另一课题。

汉字识别的研究范围及其困难程度可以用图3.1的三维空间来表示。图中三个坐标分别是文字数量、文字类型和版面质量。三维空间上的每一点代表该处的识别难度。显然离开原点越远,研究难度越大。例如版面质量差的脱机手写汉字识别难度最大,因此我们将专辟一章来讨论这个问题。

四. OCR分类

图1 文字识别的分类

五. 印刷体文字识别研究方法简介

4

识别方法是整个系统的核心。用于汉字识别的模式识别方法可以大致分为结构模式识别、统计模式识别及两者的结合。下面分别进行介绍。

4.1 结构模式识别

汉字是一种特殊的模式,其结构虽然比较复杂,但具有相当严格的规律性。换言之,汉字图形含有丰富的结构信息,可以设法提取含有这种信息的结构特征及其组字规律,作为识别汉字的依据,这就是结构模式识别。

结构模式识别是早期汉字识别研究的主要方法。其主要出发点是汉字的组成结构。从汉字的构成上讲,汉字是由笔划(点横竖撇捺等)、偏旁部首构成的;还可以认为汉字是由更小的结构基元构成的。由这些结构基元及其相互关系完全可以精确地对汉字加以描述,就像一篇文章由单字、词、短语和句子按语法规律所组成一样。所以这种方法也叫句法模式识别。识别时,利用上述结构信息及句法分析的方法进行识别,类似一个逻辑推理器。

用这种方法来描述汉字字形结构在理论上是比较恰当的,其主要优点在于对字体变化的适应性强,区分相似字能力强;但是,在实际应用中,面临的主要问题是抗干扰能力差,因为在实际得到的文本图象中存在着各种干扰,如倾斜,扭曲,断裂,粘连,纸张上的污点,对比度差等等。这些因素直接影响到结构基元的提取,假如结构基元不能准确地得到,后面的推理过程就成了无源之水。此外结构模式识别的描述比较复杂,匹配过程的复杂度因而也较高。所以在印刷体汉字识别领域中,纯结构模式识别方法已经逐渐衰落,句法识别的方法正日益受到挑战。

4.2 统计模式识别

统计决策论发展较早,理论也较成熟。其要点是提取待识别模式的的一组统计特征,然后按照一定准则所确定的决策函数进行分类判决。

汉字的统计模式识别是将字符点阵看作一个整体,其所用的特征是从这个整体上经过大量的统计而得到的。统计特征的特点是抗干扰性强,匹配与分类的算法简单,易于实现。不足之处在于细分能力较弱,区分相似字的能力差一些。常见的统计模式识别方法有:

(1) 模板匹配。模板匹配并不需要特征提取过程。字符的图象直接作为特征,与字典中的模板相比,相似度最高的模板类即为识别结果。这种方法简单易行,可以并行处理;但是一个模板只能识别同样大小、同种字体的字符,对于倾斜、笔划变粗变细均无良好的适应能力。

(2)利用变换特征的方法。对字符图象进行二进制变换(如Walsh, Hardama变换)或更复杂的变换(如Karhunen-Loeve, Fourier,Cosine,Slant变换等),变换后的特征的维数大大降低。但是这些变换不是旋转不变的,因此对于倾斜变形的字符的识别会有较大的偏差。二进制变换的计算虽然简单,但变换后的特征没有明显的物理意义。K-L变换虽然从最小均方误差角度来说是最佳的,但是运算量太大,难以实用。总之,变换特征的运算复杂度较高。

(3)投影直方图法。利用字符图象在水平及垂直方向的投影作为特征。该方法对倾斜旋转非常敏感,细分能力差。

(4)几何矩(Geometric Moment)特征。M. K. Hu提出利用矩不变量作为特征的想法,引起了研究矩的热潮。研究人员又确定了数十个移不变、比例不变的矩。我们都希望找到稳定可靠的、对各种干扰适应能力很强的特征,在几何矩方面的研究正反映了这一愿望。以上所涉及到的几何矩均在线性变换下保持不变。但在实际环境中,很难保证线性变换这一前提条件。

(5)Spline曲线近似与傅立叶描绘子(Fourier Descriptor)。两种方法都是针对字符图象轮廓的。Spline曲线近似是在轮廓上找到曲率大的折点,利用Spline曲线来近似相邻折点之间的轮廓线。而傅立叶描绘子则是利用傅立叶函数模拟封闭的轮廓线,将傅立叶函数的各个系数作为特征的。前者对于旋转很敏感。后者对于轮廓线不封闭的字符图象不适用,因此很难用于笔划断裂的字符的识别。

(6)笔划密度特征。笔划密度的描述有许多种,这里采用如下定义:字符图象某一特定范围的笔划密度是在该范围内,以固定扫描次数沿水平、垂直或对角线方向扫描时的穿透次数。这种特征描述了汉字的各部分笔划的疏密程度,提供了比较完整的信息。在图象质量可以保证的情况下,这种特征相当稳定。在脱

5

机手写体的识别中也经常用到这种特征。但是在字符内部笔划粘连时误差较大。

(7)外围特征。汉字的轮廓包含了丰富的特征,即使在字符内部笔划粘连的情况下,轮廓部分的信息也还是比较完整的。这种特征非常适合于作为粗分类的特征。

(8)基于微结构特征的方法。这种方法的出发点在于,汉字是由笔划组成的,而笔划是由一定方向,一定位置关系与长宽比的矩形段组成的。这些矩形段则称为微结构。利用微结构及微结构之间的关系组成的特征对汉字进行识别,尤其是对于多体汉字的识别,获得了良好的效果。其不足之处是,在内部笔划粘连时,微结构的提取会遇到困难。

(9)特征点特征。早在1957年,Solatron Electronics Group公司发布了第一个利用窥视孔(peephole)方法的OCR系统。其主要思想是利用字符点阵中一些有代表性的黑点(笔划),白点(背景)作为特征来区分不同的字符。后有人又将这种方法运用到汉字识别中,对其中的黑点又增加了属性的描述,如端点、折点、交叉点等。也获得了比较好的效果。其特点是对于内部笔划粘连的字符的识别的适应性较强,直观性好,但是不易表示为矢量形式,不适合作为粗分类的特征,匹配难度大。

当然还有许多种不同的统计特征,诸如图描述法、包含配选法、脱壳透视法、差笔划法等,这里就不一一介绍了。

4.3 统计识别与结构识别的结合

结构模式识别与统计模式识别各有优缺点,随着我们对于两种方法认识的深入,这两种方法正在逐渐融合。网格化特征就是这种结合的产物。字符图象被均匀地或非均匀地划分为若干区域,称之为“网格”。在每一个网格内寻找各种特征,如笔划点与背景点的比例,交叉点、笔划端点的个数,细化后的笔划的长度、网格部分的笔划密度等等。特征的统计以网格为单位,即使个别点的统计有误差也不会造成大的影响,增强了特征的抗干扰性。这种方法正得到日益广泛的应用。

4.4 人工神经网络

人工神经网络(Artificial Neural Network,以下称ANN)是一种模拟人脑神经元细胞的网络结构,它是由大量简单的基本元件-神经元相互连接成的自适应非线性动态系统。虽然目前对于人脑神经元的研究还很不完善,我们无法确定ANN的工作方式是否与人脑神经元的运作方式相同,但是ANN正在吸引着越来越多的注意力。

ANN中的各个神经元的结构与功能较为简单,但大量的简单神经元的组合却可以非常复杂,我们从而可以通过调整神经元间的连接系数完成分类、识别等复杂的功能。ANN还具有一定的自适应的学习与组织能力,组成网络的各个“细胞”可以并行工作,并可以通过调整“细胞”间的连接系数完成分类、识别等复杂的功能。这是冯·诺依曼的计算机无法做到的。

ANN可以作为单纯的分类器(不包含特征提取,选择),也可以用作功能完善的分类器。在英文字母与数字的识别等类别数目较少的分类问题中,常常将字符的图象点阵直接作为神经网络的输入。不同于传统的模式识别方法,在这种情况下,神经网络所“提取”的特征并无明显的物理含义,而是储存在神经物理中各个神经元的连接之中,省去了由人来决定特征提取的方法与实现过程。从这个意义上来说,ANN提供了一种“字符自动识别”的可能性。此外,ANN分类器是一种非线性的分类器,它可以提供我们很难想象到的复杂的类间分界面,这也为复杂分类问题的解决提供了一种可能的解决方式。

目前,在对于象汉字识别这样超多类的分类问题,ANN的规模会很大,结构也很复杂,现在还远未达到实用的程度。其中的原因很多,主要的原因还在于我们对人脑的工作方式以及ANN本身的许多问题还没有找到完美的答案。

六.印刷体文字识别流程简介

印刷体文字识别的过程如图2所示。原始图象是通过光电扫描仪,CCD器件或电子传真机等获得的二维图象信号,可以是灰度(Grayscale)或二值(Binary) 图象。为简单计,在本文以后的论述中,除非特别提及,图象输入的方式均指由扫描仪输入。

6

图2 印刷体文字识别的简单流程图

预处理包括对原始图象的去噪、倾斜校正或各种滤波处理。版面分析完成对于文本图象的总体分析,区分出文本段落及排版顺序,图象、表格的区域;对于文本区域将进行识别处理,对于表格区域进行专用的表格分析及识别处理,对于图象区域进行压缩或简单存储。行字切分是将大幅的图象先切割为行,再从图象行中分离出单个字符的过程。特征提取是整个环节中最重要的一环,它是从单个字符图象上提取统计特征或结构特征的过程,包括为此而做的细化(Thinning)、归一化(Normalization)等步骤。提取的特征的稳定性及有效性,直接决定了识别的性能。文字识别即从学习得到的特征库中找到与待识字符相似度最高的字符类的过程。后处理则是利用词义、词频、语法规则或语料库等语言先验知识对识别结果进行校正的过程。

由此可见,印刷汉字识别技术主要包括:

(1) 扫描输入文本图象。

(2) 图象的预处理,包括倾斜校正和滤除干扰噪声等。

(3) 图象版面的分析和理解。

(4) 图象的行切分和字切分。

(5) 基于单字图象的特征选择和提取。

(6) 基于单字图象特征的模式分类。

(7) 将被分类的模式赋予识别结果。

(8) 识别结果的编辑修改后处理。

其中(4)、(5)和(6),也就是图2中的阴影部分,是印刷汉字识别中最为核心的技术。近几年来,印刷汉字识别系统的单字识别正确率已经超过95%,为了进一步提高系统的总体识别率,扫描图象、图象的预处理以及识别后处理等方面的技术,也都得到了深入的研究,并取得了长足的进展,有效地提高了印刷汉字识别系统的总体性能。

(整个系统的工作过程主要包括下列诸项:①原始文本的扫描光电转换输入。一般采用图像扫描仪将文本按页面逐页扫描输入,再选择合适的阈值二值化,得到二值的文本图像。

②文本版面分析。将输入后版面的原始文本图像数据按页面中的间隔分割成一些方块,再将这些方块按不同篇章的标题、摘要、作者、正文、图像和表格等,对其属性和相互连接关系加以理解和标注。

③字符的切割。将各文字块中每一文字行逐一切割出来(称为行切割),然后再将每个文字行的字符一个个地顺序切割(称为字切割)。

7

④归一化处理。单个字符图像在特征提取以前,一般要进行归一化处理,包括位置归一化和大小归一化,以便对各种大小的字符都能正确识别。

⑤特征提取。对归一化后的各个字符图像进行特征提取,得到每个字符的特征描述。

⑥字符的单字识别。通常先根据每一个字符的特征进行预分类,得到待识字符较少的候选字符集合;然后再从候选字符集合中将待识字符识别出来。

⑦后处理。通常利用词条或上下文关系对单字识别结果进行后处理纠错。

⑧输出识别结果。识别的结果可以显示在计算机屏幕上,可以打印输出,可以利用语音合成设备转变为声音读出,也可以作为文件存入计算机文档系统或直接写入有关数据库中,作为可供查询的文本文件。)

七. OCR的发展前景:

OCR技术是文字电子化历程中的里程碑,与传统的手工录入方式相比,OCR技术大大提高人们资料录入存储、检索、加工的效率。所以,该项技术目前大受专业人士的欢迎,且以行业应用居多。

但是,即使是再尖端的技术,终将揭开它神秘的面纱而走向大众,或许,OCR的未来应用会伴随信息技术的大众化而变得多姿多彩。

颠覆传统读书方式

高尔基说过,书籍是人类进步的阶梯。什么会是未来倍受推崇的阅读方式?信息化及网络不仅改变了我们的生活,还改变了我们的阅读习惯,阅读纸质书籍已经被新生代书虫所诟病,取而代之的,将是电子化阅读。

而目前,有效整合了现代化阅读工具及网络的“刷书”一族,或许会带给我们更大的惊奇:他们用内嵌了汉王OCR技术的资料笔笔头扫过书页上的文字,将文字保存下来后,再将其导入电脑进行阅读,其实这也是一个选择性阅读——天下文章取精华。

骨灰级的电子化阅读专家,会借助这种资料笔收集书籍精华并上传于网络,搭建起属于自己的“随身书房”;在浩瀚的数字书海中徜徉,这将是多么惬意的事啊!

著名未来学家阿尔温·托夫勒这样预言:“一个高技术的社会,必然是一个高情感的社会。”事实上,科技不仅仅会为健康人服务,而是更会人性、更体贴。在未来,OCR会发展到与语音技术结合,通过OCR技术,可以将报纸或书本中的文字转化为机器可辨识的文档,伴随即时发音,盲人也可以轻松“读书”了。

其实不只是盲人,未来社会,成熟的“文字识别+发音”智能技术会方便所有人。在语音系统的配合下,人们可以不再“读书”而是“听书”,这就是科技带来的颠覆性阅读方式。

方便安全的手机支付

在商场、超市购物时,你是否有过因为收银台前长长的队伍而心烦、甚至放弃购物的经历?如果有,那么你一定在期盼一种新的支付方式。

幸运的是,也许随着现代化技术的发展,现金支付、银行卡支付,都会被OCR手机支付所代替。所谓OCR手机,就是将OCR技术应用于移动终端,能够实现文字、图片等信息元素识别的手机。

由于OCR手机具有直接识别文字的功能,因此,必须依靠商品条码这种二维码进行商品信息识别、到收银台付款的时代,终会成为历史。

在未来世界,如果中意于某件商品,只需用手机拍下商品名称,手机就可以自动记录下商品的种类、型号及价格,再发送短信到银行、商场的联合支付中心,就可以即时付款并提货了。

OCR手机支付货款省去了排队支付的麻烦,你更可以边支付边继续购物;更能有效避免因购物时提取现金、或使用银行卡被盗用密码的危险。

八. 结论与展望

总体来说,近几年来国内对印刷体汉字识别的研究还是相当深入的,也取得了很大成绩,使系统的识别率不断上升。目前印刷体汉字识别系统的应用已经相当成熟。例如,刚刚通过国家教委组织的鉴定的清华TH-OCR97综合集成汉字识别系统,对中等质量的样本,识别率已经可以达到99%左右或更高。不过,这些系统还存在着一些可改进之处:

从识别角度

8

(1) 汉字识别率总是汉字识别中最重要的指标,应该达到更新的高度,从而最大程度地减少用户校对、修改的工作量。

(2) 印刷体汉字识别的鲁棒性(Robustness)还不够强。Robust在英文中是“健壮的”或“强的”之意。鲁棒性可以理解为识别系统对于不同质量、不同字号、不同字体的文本图象表示出来的适应性。在文字识别中,识别系统的鲁棒性尤其反应在随着印刷质量的下降,系统误识率的上升趋势上。

目前的OCR系统都对扫描图象的质量有一定要求,扫描亮度不能太暗也不能太亮,保证文字的图象即不会暗成一个黑块也不会亮得笔画发生很多断裂。这就对用户的使用提出了较高要求。

印刷文本的质量可能千差万别,一般用户对扫描仪的操作也可能不够合适,这往往造成识别图象的质量不佳,为使任何未经训练的用户都能用好OCR系统,系统的鲁棒性必须不断提高。

(3) 汉英混排文本的切分仍不够成熟。与识别技术相比,对切分的理论和方法还缺乏系统的研究和理论。随着汉字识别率的上升以及汉英混排文本的增多,切分错误在所有错误中所占的比重不断上升,怎样使文字正确分割变成了另一个还未很好解决的问题。

用户界面和自动化程度方面

(1) 扫描仪自动亮度调节,无须用户选择门限,自动随文本种类、印刷质量不同选择合适的扫描仪亮度门限,以保证识别率。

(2) 版面的自动分析,无需人工干预,可以将印刷文本材料,如报纸、杂志等,上面有各种插图、表格、花边,且同时存在横、竖版面等加以区分和作相应的标记,以便分别处理。

(3) 中文印刷表格的自动录入,对于中文印刷表格,可以进行框线的自动检测、栏目自动切分,直至将各栏目中的内容识别出来,并且可以和数据库直接相连,完成印刷表格自动录入至数据库的任务。

(4) 版面自动恢复,仅有文字识别往往不能满足实际需要。能够保持原来的排版形式、字体信息、表格和插入的图形图象,以便在Word、北大方正等排版软件中直接修改,一直是许多用户的梦想。

(5) 系统提供用户自学习功能,使用户自由地扩大专业识别字符集;以及适用于各种应用环境的汉字识别系统。例如:MS-DOS环境、Windows环境和UNIX环境下中文OCR版本,满足不同用户的需求。

其它方面

(1) 系统总体性能的进一步提高。解决象报纸这种栏目多而位置排列复杂的印刷文本材料的版面自动理解;利用自然语言理解知识进行识别后处理;进一步提高英文的识别率和适应性,降低系统的误识率,等等。

(2) Internet/Intranet上的网络版本。充分利用网络上的资源及计算能力,提高系统的性能,使用户能够更方便地协同工作。

(3) 系统固化以及系统各部分的质量和性能的稳定提高。

(4) 扩大OCR核心技术的应用范围,开发更多的应用系统,并将研究成果迅速转化为产品,提高软件的商品化水平,使之能大量地走出国门,走向全世界。

这些都是汉字识别系统急待解决的问题,也是汉字识别技术今后努力发展的重要方向。

补充:

(1) 实用印刷汉字识别系统的总体技术指标

实用印刷汉字识别系统的总体技术指标主要有如下各项:

1)识别的字符类总数

系统识别的字符类总数决定整个系统的识别容量。

我国1980年公布的国家标准GB 2312-80《信息交换用汉字编码字符集——基本集》(简称国标)中第一级常用汉字共有3755个,第二级有3008个,两级共有6763个汉字。目前常用的汉字操作系统一般也只包含这两级汉字。根据汉字综合频率表的统计结果,一级汉字使用频度已大于99.7%,二级汉字除约500汉字较经常使用外,其余的二级汉字和二级以外的汉字主要用于人名和地名,约有一两千字,这些字的使用频度比较均匀。我国台湾目前常用汉字为5401个汉字(繁体汉字)。

目前我国汉字识别系统所识别的汉字字符集,一般分为三级:第一级包括国标第一级汉字,即3755个

9

汉字;第二级包括国标一、二级两级汉字,共6763个,或包括用于我国台湾的5401个汉字;第三级扩大至近万个汉字,识别汉字字符集的确定应根据需要和可能综合考虑。由于一级汉字的使用频度已达99.7%,因此,受系统资源的限制,扩大字符集对识别率的提高可能好处不大,但对计算机内存的要求会大大加重,识别速度也会显著下降。目前国内研制的系统主要以国标一级汉字为主,也可以适当增加一些较常用的二级汉字和专用汉字。

由于实际文本、杂志中,除汉字字符外,还包括标点符号、阿拉伯数字、英文字母等,尤其近来的报纸、科技书籍经常混有不少英文或其他外文字符,因此实用汉字识别系统的识别字符集内还应当包含这些字符集。具体字符集的规模和内容,可根据实际应用的需要仔细选用。

综上所述,实用汉字识别系统的识别字符集应由汉字、标点、符号、数字、英(其他外文)文字母等部分组成,字符总数在4000~8000之间。

2)识别的字体

我国常用的印刷字体大致分为宋、仿宋、黑、楷四大字体,各种字体还有许多较小的子类,如宋体字就有报宋、书宋、大标(题)宋、小标(题)宋、扁宋、长宋等字体;仿宋字体有老仿宋、新仿宋;黑体还有扁黑、长黑、粗黑、细黑之分;楷体又分正楷、长楷和扁楷;等等,因此常用字体总计有16种以上。只有对所有这些常见的多种印刷字体都能识别,才能真正解决印刷文本的自动输入问题。在设计多种字体印刷体汉字识别系统时,往往选用最常见的书宋、黑、仿宋和楷四种最主要字体,这些字体也是结构差别最大的四种字体。保证了这四大字体的高识别率,其他变化较小字体的识别问题也就基本上迎刃而解了。

通常把只能适应单一种字体的印刷汉字识别系统称为单字体印刷汉字识别系统。这种系统采用切换特征字典的方法来识别不同字体的印刷汉字。能用同一特征字典识别多种字体(如同时识别宋、仿宋、黑、楷四种主要字体)的识别系统称为多字体印刷汉字识别系统。目前我国的印刷汉字自动输入大都是多字体汉字识别系统。这是因为:第一,我国的印刷资料大都采用各种字体和各种字号的汉字混合编排的,识别不同字体时要求人或系统自动切换相应的特征库是十分困难的、甚至是不可能的,出路只能是采用同一特征库来识别它们。第二,实践证明,采用单一特征库的多字体汉字识别系统不仅对字体的变化有很高的适应能力,而且对于字号的变化,以及印刷质量、扫描输入噪声也具有很高的应变能力。因此,真正解决印刷汉字识别系统的实用化,就必须解决多字体印刷汉字的识别问题,实现具有高度鲁棒性的,能适应实际印刷文本复杂变化的实用系统。

3)识别的字号

我国铅字的字号约有16种,从特大号直到7号字的大小比例相差约9.3倍。不同大小的汉字经常同时出现在同一文本中。不同字号的汉字,其大小差别较大,识别时必须对大小进行归一化。实践表明,能识别多种字体的汉字识别系统,具有较强的适应汉字字形结构变化的能力,从而也具有适应字号变化的能力。因此只要对不同字号汉字进行一定比例的归一化处理,原则上就可以解决所有字号汉字的识别问题。唯一还需要考虑的是,要有足够清晰度的扫描输入设备,保证提供足够清晰度的汉字图像点阵,以供识别之用。

4)识别率

这是系统最重要的指标。识别率分两种,一种是指被正确切分的汉字图像被正确识别的概率,称单字识别率,另一种是识别结果相对原始文本而言的正确识别的概率,称为系统识别率。从原始文本到识别结果输出,中间要经过扫描输入、行切割、字切割,然后才进行单字识别,中间各步都有可能影响识别率,尤其是字“切割”这一步往往容易发生切分错误,造成字符的误识。因此,系统误识概率主要包括切分错误和单字识别错误。实验表明,由于文本印刷的复杂性,切分错误造成的误识有时甚至会超过单字识别产生的错误。这告诉我们,除了努力提高单字识别率外,还要花大力气提高文本字切割的质量,保证最终系统识别率的提高。

汉字识别系统的识别率是和印刷文字的质量密切相关的,而且好坏差别较大。也就是说,没有统一的印刷文字质量标准是难以进行系统识别率比较的。

影响印刷文字质量的主要因素有:

①印刷文字产生方式的不同造成汉字的质量差异。我国常用的印刷方式有铅印、胶印、激光打印、油印和

10

计算机点阵式打印机打印等。不同方式的汉字不仅形状有较大差异,而且印字质量相差也很悬殊。铅印、激光打印的印刷文字质量较好,边缘轮廓清晰、笔画完整;胶印次之;最差的是油印和传真机打印输出的文字,笔画边缘模糊,笔画往往有残缺或粘连。这两种文字目前很难用一般印刷汉字识别系统来识别。因此,在论及汉字识别系统的识别率时,一定要对被识别印刷文字的印刷方式加以明确限定,因为它是影响识别率的重要因素之一。

②印刷文本纸张质量的影响。纸张质量和纸张的密质程度(紧度)、白净程度(白度)、光洁度和不透明度等有关。纸张的质量直接影响到印刷体文字的识别率。对汉字识别来说,对印刷纸张应有一定的要求,以保证汉字识别的质量。

为了对汉字识别系统的识别率进行比较,一般应选定一定印刷方式、一定纸张质量、同样印刷文字质量的文字进行识别测试,或采用统一的文字数据文件进行识别测量,所得识别率才有进行比较的意义。另一方面,这也说明了,为了推广汉字识别系统的应用,也应对上述两方面内容制定相应的标准和规范,使汉字识别系统的设计和应用都有所依据。这项工作需要各方面的配合,也是十分重要的工作。

实用汉字识别系统在正常识别条件下的单字识别率应达到98%~99%以上,系统识别率也应在95%~96%以上,才有实际使用价值。

5)识别速度

汉字识别速度分单字识别速度和系统识别速度两种。

单字识别速度可以是从汉字特征提取到识别结果输出所需的单位时间内识别的字数,也可以是从行切割到识别结果输出的单位时间内识别的字数,这两种一般都称为单字识别速度。另一种是以从文本扫描输入开始,直到识别结果输出所需的时间为标准,这样计算出的单位时间内平均识别的字数,称为系统识别速度。作为系统真正的效益是由系统识别速度最终体现出来的,它应作为系统真正追求的目标。

识别速度和正确识别率是一对矛盾。这是因为,要获得高的正确识别率,一般必须采取较复杂的特征和匹配算法,并花费较多的计算代价,因而会使识别速度有所下降。因此系统设计时必须综合考虑两者:一般是把高正确识别率的要求放在首位,在缺乏高识别率的前提下提高速度的意义是不大的。这是因为,由于错识字符的纠错要花费时间,也会将系统识别速度降下来。

目前单字体印刷汉字识别系统的单字识别速度在386微机上可达到10~20字/秒,多字体印刷汉字识别系统可达5~10字/秒,利用部分专用硬件,识别速度可达30~70字/秒以上。

6)系统配置的代价

作为实用系统,除了性能指标以外,还必须有经济指标。要尽量降低系统价格,才能易于推广使用。目前国内研制的汉字识别系统都是建立在微型计算机的基础上,用软件实现的。系统配置代价较低,性能受到一定的限制。随着汉字OCR的不断推广,今后对其性能(特别是识别率和识别速度)将会更高的要求,如何妥善做好系统配置,使其具有较高的性能/价格比是一个应该研究的问题。

(2) 文本的版面分析和理解

报刊、杂志、书籍和表报等各种印刷文本的内容除了正文和插图之外,还有大小标题、注释、公式、表格以及作者姓名及地址等项目。这些内容在版面上的安排有一定的、但不是固定不变的顺序和规则。例如:在期刊杂志中标题大多放在正文之前,并用较大的字号排印;其后是作者姓名、单位名称与地址;在大块正文之间往往穿插有小标题、公式和图片;正文的编排可以是单栏、双栏甚至是3~4栏。总的说来,书籍和一般刊物的版面编排比较简单,花样不多,报纸和某些大型刊物的版面编排较为复杂、多变,例如同一篇文章的正文分为若干小块,交叉排印,有的甚至穿插一些“花边”,其目的或许是使整个版面更有“艺术”特色,不会过于呆板,更能吸引读者的注意和兴趣。我国20世纪30年代的上海报纸就有一种缀有“花边”的小文章,被冠以“花边”新闻的“雅号”。这种“花边新闻”大都是一些短小精悍、针砭时弊,施加鞭贬的文章,当时曾经吸引众多读者的注意,还形成为一种很有特色的流派,叫做“花边文学”,在社会上

特别是文化界中影响极大。由此可见报刊杂志版面加以精心地艺术性地编排是有道理和必要的。

对于这样丰富多彩的印刷版面,人们在阅读时大都能一目了然,理解其中的含义及相互连接的关系,从而能够正确阅看每一篇章及其相关的图片与表格。然而,如果我们不赋予电脑必要的功能,它将无法处

11

理这样的复杂的排列组合,也难于对其中的文字进行识别。这种特殊功能就是对文本版面的分析与理解。

版面分析是把印刷文本同一版面中的图像分割成一些图像块,每一图像块大小不等,但都含有相对独立、完整的内容。如标题、正文段落、标注、图、表和公式等等。

版面理解是在版面分析的基础上进行的。其作用是判定各图像块的属性及相互之间的逻辑关系。文本各图像块的属性主要包括:标题、摘要、小标题、作者姓名及其单位、图表、标注、表格等等;它们之间的逻辑关系则包括:是否是同一篇文章的图像块、同一篇章各图像块的连接关系(如大标题、作者、摘要、正文、小标题),以及同一篇章但不在同一栏目的图像块的连接关系等等。显然,一个完整的识别系统必须具有对每一版面的图像进行正确分析、理解的能力,才能把经过识别的文字及相关插图、表格等,按顺序自动地连接成完整的篇章,供后续各种处理之用。

把印刷文本版面分割成图像块的方法原则上比较简单。同一版面中的图像块往往是被空白的背景区分隔开的。寻找出背景区的位置,就可以把各图像块分割开来。这种方法和第1章所介绍的行分割和字分割相同,利用文本图像的水平投影和垂直投影就能够确定背景区的位置,实现各图像块的分割。图5.5是版面分割示意。这个版面的编排比较复杂;正文分三栏排印,标题及图片的宽度则都是两栏,而且在垂直方向上互相重叠。显然,如果将整个版面图像分别进行水平和垂直投影,则难以求得能够将它分割为若干图像块的空白间隔。对于这样比较复杂的版面,一般可采用局部投影方法,先将能够分离的图像块分割开,再处理其他部分的问题。

版面理解目前还没有较好的通用的方法,看来也很难有“放之四海而皆准”的方法。其原因是版面的安排已不是一门科学,而是一种艺术。目前解决这个问题的方法之一是根据图像块的投影来确定该图像块的属性。例如:正文的投影有周期性的行空白间隔,而插图的投影则是连续的;又例如,标题的空白间隔宽于正文各行间隔,其投影高度也比正文大。此外在一般情况下,横排文本的标题在正文之上,竖排文本的标题则大多在正文右侧,等等。

(3) 汉字的行切割和字切割

汉字文本经光电扫描输入计算机,再经过对文本的二值图像进行版面分析。将文字图像分割出来以后,为了识别单个汉字,还需要将每个汉字的图像从整块文字图像中分割出来,才能送到识别装置进行识别。

我国现在的汉字文本有横排版和竖排版两种。横排版的文字从左向右编排成行,然后再从上往下逐行排列。竖排版的文字则是从上往下按列编排,然后将各列文字再从右往左排列。对于横排版面要先按水平方向进行行切割,然后再按垂直进行字切割。竖排版的行、字切割方法与此相似。下面以横排版面为例说明行切割、字切割的方法和所遇到的问题。

1)行切割

行切割的方法是:对二值图像从上到下逐行扫描,同时计算每扫描行的像素,以获取图像的水平投影。利用文字行间空白间隔造成的水平投影空隙,即可以将各行文字分割开来,如图5.6所示。

在图像输入时,有时会出现纸张倾斜,造成文字行的倾斜。少量的倾斜对行切割以及后面的字切割和识别影响都不大。但倾斜严重时,相邻两行文字图像的水平投影可能互相重叠,使它们之间的空白间隙被填满而无法实现行切割(见图5.7)。这种问题原则上可设计一套软件,将文字图像旋转适当的角度来解决;但用软件的办法运算量很大,实际上难于采用。最直接的方法是尽量把纸张的位置放正,再进行扫描和识别,因为一般目测纸张放正就满足要求了。当行空白间距过小且每行的长度又很长时,纸张倾斜的影响较大,一般也采用人工矫正方法较为便捷。

12

2)字切割

字切割的作用是从行切割后得到的文字图像行中将单个汉字的图像分割出来。字切割的正确与否直接影响识别结果,是汉字识别系统中较重要也较困难的环节,特别是汉字与其他文字混排时,字切割就更为困难。

字切割的基本方法是,利用字与字之间的空白间隔在图像行垂直投影上形成的空白间隙,将单个汉字的图像切割出来的,如图5.8所示。

但是汉字中有相当数量的由左、右两部分构成的二根字和由左、中、右三部分组成的三根字。据对3755个宋体汉字的统计,其中二根字有约250个,如“八、北、非”等;三根字也不少,如“川、排、衍”等。这些字的图像垂直投影在一个单字内部也会出现空白间隙,因而单纯使用垂直投影空白间隙切分单字的切割算法会产生误分。

字切割中遇到的更为困难的问题是目前报刊、杂志中的阿拉伯数字是按半角宽度(半个汉字宽度)排版的,即两个阿拉伯数字占据了一个全角汉字的宽度,它们之间的间隔也往往小于两个汉字之间的空白间隔,这和二根字的情况极为相似,如图5.9(a)所示。这些情况在标点符号非常靠近时也会出现,如图5.9(b)所示。

目前解决这些问题有如下几种办法。

①根据方块汉字、拼音字母、阿拉伯数字和标点符号的图形高度、宽度和间隔不同,综合利用投影的空白间隙宽度、黑像素投影值,以及投影宽度和高度等信息来进行切割。在以汉字为主的版面中,这种方法较

13

为简单可行,个别切分错误对总体识别率影响较小,可再进行人工校对加以纠正。

②把两个半角的阿拉伯数字图像当做一个新的字符来识别。也就是说,在字切割时,是把两个阿拉伯数字的图像当做是一个新的字符图像切割下来,加以识别的。这样在识别字符集内至少需要增加100个字符。

随着我国科学技术的发展,在各种印刷资料中,汉字、数码和拼音字母混排的情况日益增多,目前我国印刷文字排版又缺乏一定规则可供遵循,因而在识别系统中如何正确分割不同类型的字符,并采用相应的字典进行识别,这是一个必须重视的问题。这个问题的解决不但要充分依靠切分技术的改进,也需要出版界对印刷字符的排版方法制订适当的规则。只有各方面相互配合才能得到更好的效果。

(4) 汉字图像的归一化

行切割和字切割后所得到的单个汉字图像还必须进行归一化处理,以消除因排版及字号、字体不同而带来的汉字图像在位置和大小上的变化。归一化处理主要包括“位置归一化”和“大小归一化”两种。汉字识别主要是以汉字的图形为基础的,如果不对汉字点阵图像在位置和大小上进行归一化处理,使待识字跟字典中的标准字按相同的准则一致起来,那么根据汉字点阵图形抽取的识别特征就无法相互比较,进行判别。

位置归一化和大小规一化的方法有好几种,本文不能详述。图5.10(a)是待识别的一篇短文,包括标题、日期和正文三部分。其中标题是4号字、日期是6号字,正文是小5号字。它们的大小差别很大,经字、行切割后,各个单字图像的位置也有所变化。因此在提取特征进行识别之前,必须先对它们的位置和大小做归一化处理。图5.10(b)是经归一化处理后的图像。

14

(5) 怎样建立识别系统中的字典

在前面的章节中我们着重讨论了识别特征的问题。在确定系统所采用的识别特征和提取方法之后,还有很多重要的问题要解决。例如:如何对系统进行训练,建立所需要的字典?如何利用字典对输入的待识字符进行匹配、判决,给出单字识别结果?对于单字识别器输出中错误能否校正,如何校正等等。这些问题也都十分重要,是一个完整的汉字识别系统必不可少的环节。在下面各节就来讨论这些问题。

为了讨论上述这些问题,我们把单字识别模块和后处理模块的框图再画在图5.11中。其中,单字识别模块包括字典和匹配判决器两种部件;后处理则包括词条库和词匹配器两部分。本节先讨论怎样建立识别系统中的字典。

我们知道,计算机必须先有一个“字典”才能“识字”。在计算机中建立字典(特征库)的过程,叫做训练过程或学习过程,用它来认字的过程叫做识别过程或匹配判决过程。这跟人们读书识字的过程相似。小学生到学校读书,要先在老师的教导下进行学习,然后自己才能读书识字。

对计算机进行训练、建立字典的方法,从原理上说是比较简单的。假设识别系统应能识别的字数为N个。训练时抽取每一个汉字的特征,把它们存储起来,原则上就建成了一个特征库,可以用来识字了。但是实际上同一个汉字的不同样本(例如不同字体、不同字号等)彼此之间是有差异的,从不同样本抽取的特征也有所不同,因此,只采用某一个汉字样本的特征来建立特征库是不妥当的。解决这个问题的办法是每个汉字都采用若干个样本的“平均”特征来代表这个汉字。换句话说,计算机必须先学习如何适应各种使用条件的变化,才能具有较高的“智能”,适应复杂多变的情况。

用于训练的汉字样本集合叫做训练样本集合。通常汉字OCR训练样本集合的字数应为系统容量的10倍或几十倍。如果系统容量为3755个汉字,那么训练样本集合至少应有37550个字。训练时,依次抽取集合中各个汉字样本的特征,把它跟已存储在特征库中的特征相比较,同时适当调节有关参数使系统能正确识别这个字。然后,按照这一方法再输入另一个样本并进行识别。这样反复迭代,直到系统能正确识别训练样本集合中的所有样本为止。经过训练后的特征库用于识别训练样本集内的样本时,识别率一般可达到100%,但用于识别训练样本集以外的其他汉字样本集(叫做测试样本集)时,识别率将有所降低。但性能好的识别系统在实际应用时,其识别率仍应不低于98%~99%。实践证明,训练样本集合的样本越多,效果越好。这和人们的学习规律是一致的。我们常说:“见得多,识得广”就是这个道理。当然训练样本集合也不宜太大,否则所需的训练时间太长,花费太大。

(6) 单字识别中的匹配判决

单字识别模块中“匹配判决”的作用,是把待识汉字的特征和字典中的标准特征逐一比较,按照一定的准则把某一个标准特征所代表的汉字判定为识别后输出的汉字。

汉字OCR中通常用两个特征之间的“距离”作为准则来判定它们的相似度。当字典中某个标准特征和待识汉字特征之间的距离为最小时,该标准特征所代表的汉字就判决为待识的汉字。

下面举一个例子来说明单字识别模块是怎样对输入的待识汉字进行判决的。

图5.12 (a)是待识汉字样本——一篇文件的“标题”,共有38个汉字和一条“间隔符号”(长横)。图5.12(b)是识别模块判决器给出的候选字及其“距离”,其中第一列的汉字(第一候选字)和该“标题”中对应的待识汉字距离最近;第二,三……各列的字则依次是距离较大的字,这些汉字右边的数字是字典中

15

该汉字的标准特征与待识汉字特征的“距离”。如果采用“距离最小”的判决准则,则该标题经识别后的输出结果是

从上述单字识别结果可以看出,在被识别的38个字的“标题”中,34个字是正确识别,有4个字(贫、赘、L、蔡)识别错误。正确识别率为89.5%,而错识率达10.5%,这样的识别结果是不能令人满意的。这里我们用这个例子只是为了说明单字识别模块中的匹配判决器是怎样工作而已,下面还将讨论如何改变判决准则来减小错误率。

上面的例子中判决器采用“最小距离”的准则来判定识别结果。可以看出:这种判决器的输出中,有的字和对应的待识汉字距离较近,这些字绝大多数是正确识别的字;但也有一些字虽然跟对应的待识字的距离最小,但绝对值却很大,发生错识的可能性也较大。为了使错识字减少,在某些识别系统中引入“拒识字”这一概念。其方法是采用两种判决准则:其一:若特征距离最小,且其绝对值小于一定数值的标准特征所对应的汉字,判决为正确识别的字。其二,若特征距离虽然是最小、但其绝对值大于规定值的标准特征对应的汉字,则判决为“拒识字”。根据这种判决准则,在上述例子中,如果规定距离大于48的特征所对应的汉字判为拒识字,那么匹配判决器的输出将变成如下的结果:

16

其中符号@代表拒识字。在这38个字中,拒识字有3个;占7.9%;错识字还有1个,占2.6%,正确识别的字34个,占89.5%。由此可见,引入了拒识字后,错识字的比例显著减少。下面我们还将看到,引入拒识字还有利于进行人工校正或自动纠错,这对于提高系统识别率是有好处的。

顺便指出,拒识字这一概念在很多识别系统中时常被采用。例如在自动信函分拣系统中,由于手写的邮政编码的识别率很低,如果编码识别错误,把信函寄到错误的地址,损失很大。如果把可能发生错识的编码作为拒识处理,然后再用人工纠正,就可以大大减少错误投递的损失。对某些用户,例如银行的支票识别,这个问题尤为重要。

(7) 后处理纠错

在识别系统中,利用上下文关系、组词规律或其他语法规则,对单字识别输出的文件进行处理以纠正错识字的方法,叫做后处理纠错,简称为“后处理”。这种方法用于处理拼音文字的文件十分有效。目前各种英文文字处理系统几乎都有“拼写校对"(Spelling Check)软件,它能够自动地显示每个词语中少量的拼写错误,并给出可能的改正方案。在各种办公室自动化设备中,这是一种十分得力的方法,对发现、改正文稿中的错误,提高文件质量很有帮助。

在汉字识别系统中利用“词条匹配”的方法也可以在一定程度上自动地纠正单字识别输出中的个别错误。这里再以图5.12(b)为例具体介绍这种后处理的方法。为了简单起见,这里只讨论双字词的匹配方法。

所谓双字词是指每个词语由两个汉字组成。汉语中双字词的数量最多,也最为常用。采用双字词匹配实现后处理纠错时,识别系统中必须有一个“双字词库”,用来检查单字识别器输出的文字序列中是否有某种双字词存在,在某些条件下可以纠正输出文字序列中的错识字。下面利用上节单字识别器的识别结果来说明用词条匹配纠正拒识字的方法。

在上节的例子中,单字识别器输出汉字序列的第三个字是拒识字。判决器同时也给出了“贫、贯、贯,觅、贪”五个候选字,它们和相应的待识字的距离都比较近,其中某个字可能就是正确的待识字。“词条匹配法”就是根据拒识字的某个候选字能否和与它相邻的字组成有意义的词条来选择候选字的。可以看出:这五个候选字跟与它相邻的字可能有8种组合,如:“决贫、决贯、决觅、决贪”和“贫彻、贯彻、觅彻、贪彻”,但其中只有“贯彻”两个字是有意义的双字词,由此可以认为:单字识别器输出汉字序列的第三个字应该是“贯”字。

同理,第6和第12个拒识字应该分别是“整”字和“第”字,因为它们可以分别同跟在它们后面的字组成“整顿”和“第五”两个有意义的词条。

利用词匹配的方法可以在一定程度上纠正单字识别器输出的拒识字,但是这种办法有一定的限制:如果单字识别器的性能不好,错识字和拒识字太多,这种方法就不适用。通常要求单字识别器的识别率应该足够高,而且拒识字不应该是连续出现的。还应该指出,词条匹配法不能纠正单字识别器中属于单字词的错识字,例如:在上述例子中“1989”的“1”错识为“L",这个错字是无法用词条匹配来纠正的。此外用于词条匹配的“词条库”必须有足够数量的词条。据统计,汉字的双字词约有65891条,很难全部选用,否则系统的开销太大,存储器数量和搜索时间都将大大增加。但选用的词条也不宜太少,一般以1万~2万条较为合适。

词条匹配法属于利用汉语上下文关系来校验字符串是否合乎语法的方法之一。除双字词外,还可以利用三字词、四字词等,但词条字数越多,搜索匹配越复杂,目前已有的汉字OCR很少采用。

后处理的方法很多,上面介绍的方法是在词法分析的层次上进行的,这种方法比较简单,但功能有限。更高层次的后处理是基于语义和语用关系上进行的,它利用上下文关系所蕴涵的更多的信息,其功能更强,但算法复杂,开销也更大。这些后处理方法目前还处于探索研究阶段,如何进一步提高整个识别系统的性能仍是一个必须继续研究的课题。

17

2024年1月9日发(作者:抗贞芳)

OCR技术及其发展

汉字其数量之大,构思之精,为世界文明史所仅有。由于汉字为非字母化、非拼音化的文字,所以在信息技术及计算机技术日益普及的今天,如何将汉字方便、快速地输入到计算机中已成为关系到计算机技术能否在我国真正普及的关键问题。采用光学的方式将文档资料转换成原始黑白点阵的图像文件,然后通过识别软件将图像中的文字转换成文本格式,以便文字处理软件的进一步加工。因此,字符识别一般是指光学字符识别技术(Optical Character Recognition,简称OCR)。

一. OCR技术的发展历程

OCR的概念是在1929年由德国科学家Tausheck最先提出来的,后来美国科学家Handel也提出了利用技术对文字进行识别的想法。自20世纪60年代初期出现第一代OCR产品开始,经过30多年的不断发展改进,包括手写体的各种OCR技术的研究取得了令人瞩目的成果,人们对OCR产品的功能要求也从原来的单纯注重识别率,发展到对整个OCR系统的识别速度、用户界面的友好性、操作的简便性、产品的稳定性、适应性、可靠性和易升级性、售前售后服务质量等各方面提出更高的要求。

IBM公司最早开发了OCR产品,1965年在纽约世界博览会上展出了IBM公司的OCR产品——IBMl287。当时的这款产品只能识别印刷体的数字、英文字母及部分符号,并且必须是指定的字体。20世纪60年代末,日立公司和富士通公司也分别研制出各自的OCR产品。全世界第一个实现手写体邮政编码识别的信函自动分拣系统是由日本东芝公司研制的,两年后NEC公司也推出了同样的系统。到了1974年,信函的自动分拣率达到92%左右,并且广泛地应用在邮政系统中,发挥着较好的作用。1983年日本东芝公司发布了其识别印刷体日文汉字的OCR系统OCRV595,其识别速度为每秒70~100个汉字,识别率为99.5%。其后东芝公司又开始了手写体日文汉字识别的研究工作。

中国在OCR技术方面的研究工作相对起步较晚,在20世纪70年代才开始对数字、英文字母及符号的识别技术进行研究,20世纪70年代末开始进行汉字识别的研究。1986年,国家863计划信息领域课题组织了清华大学、北京信息工程学院、沈阳自动化所三家单位联合进行中文OCR软件的开发工作。至1989年,清华大学率先推出了国内第一套中文OCR软件--清华文通TH-OCR1.0版,至此中文OCR正式从实验室走向了市场。清华OCR印刷体汉字识别软件其后又推出了TH-OCR 92高性能实用简/繁体、多字体、多功能印刷汉字识别系统,使印刷体汉字识别技术又取得重大进展。到1994年推出的TH-OCR 94高性能汉英混排印刷文本识别系统,则被专家鉴定为“是国内外首次推出的汉英混排印刷文本识别系统,总体上居国际领先水平”。上个世纪90年代中后期,清华大学电子工程系提出并进行了汉字识别综合研究,使汉字识别技术在印刷体文本、联机手写汉字识别、脱机手写汉字识别和脱机手写数字符号识别等领域全面地取得了重要成果。具有代表性的成果是TH-OCR 97综合集成汉字识别系统,它可以完成多文种(汉、英、日)印刷文本、联机手写汉字、脱机手写汉字和手写数字的识别输入。几年来,除清华文通TH-OCR外,其它如尚书SH-OCR等各具风格的OCR软件也相继问世,中文OCR市场稳步扩大,用户遍布世界各地。

可以说目前印刷体OCR的识别技术已经达到较高水平。OCR产品已由早期的只能识别指定的印刷体数字、英文字母和部分符号,发展成为可以自动进行版面分析、表格识别,实现混合文字、多字体、多字号、横竖混排识别的强大的计算机信息快速录入工具。对印刷体汉字的识别率达到98%以上,即使对印刷质量较差的文字其识别率也达到95%以上。可识别宋体、黑体、楷体、仿宋体等多种字体的简、繁体,并且可以对多种字体、不同字号混合排版进行识别,对手写体汉字的识别率达到70%以上。特别是我国的汉字OCR技术经过十几年的努力,克服了起步晚、汉字字符集异常庞大等困难,单字的识别速度(指在单位时间内所完成的从特征提取到识别结果输出的字数)可以达到70字/秒以上。由于印刷体OCR汉字识别技术已经比较成熟,所以OCR产品被广泛地应用在新闻、印刷、出版、图书馆、办公自动化等各个行业。

专业型OCR产品多是面向特定的行业,即适用于每天需处理大量表格信息录入的部门,如邮政、税务、海关、统计等等。这种面向特定行业的专业型OCR系统,格式较为固定,识别的字符集相对较小,经常与专用的输入设备结合使用,因此具有速度快、效率高等特点,比如邮件自动分拣系统等。

手写文稿的识别直到1996、1997年才开始有产品问世,而且是作为印刷文稿识别产品的一项附加功能提供

1

的。由于人写字的习惯千差万别,实现自由手写体识别相当困难,所以手写体OCR技术的使用领域是联机手写体识别,即人一边写,计算机一边识别,是一种实时识别方式。

目前,比较流行的OCR软件很多,英文OCR主要有OmniPage,中文OCR主要清华紫光OCR、清华文通OCR、汉王OCR、中晶尚书OCR、丹青OCR、蒙恬OCR等。尽管汉字字量大、字形复杂,但OCR技术已经走向成熟。许多OCR软件不仅能识别黑白印刷体汉字,还能识别灰度和彩色印刷体汉字,识别速度很快,识别正确率达到了99%以上;可识别宋体、黑体、楷体等多种字体和简、繁体;可对多种字体、不同字号的混排进行识别;有些OCR软件还能识别图像、表格。与此同时,对于手写体汉字识别的研究也取得了很大进展,正确识别率已达到了70%以上。

(印刷体文字的识别可以说很早就成为人们的梦想,早在1929年,Taushek就在德国获得了一项有关OCR的专利。欧美国家为了将浩如烟海、与日俱增的大量报刊杂志、文件资料和单据报表等文字材料输入计算机进行信息处理,从50年代就开始了西文OCR(Optical Character Recognition,光学字符识别)技术的研究,以便代替人工键盘输入。

印刷体汉字的识别最早可以追溯到60年代。1966年,IBM公司的Casey和Nagy发表了第一篇关于印刷体汉字识别的论文,在这篇论文中他们利用简单的模板匹配法识别了1,000个印刷体汉字。70年代以来,日本学者做了许多工作,其中有代表性的系统有1977年东芝综合研究所研制的可以识别2000汉字的单体印刷汉字识别系统;80年代初期,日本武藏野电气研究所研制的可以识别2300个多体汉字的印刷体汉字识别系统,代表了当时汉字识别的最高水平。此外,日本的三洋、松下、理光和富士等公司也有其研制的印刷汉字识别系统。这些系统在方法上,大都采用基于K-L数字变换的匹配方案,使用了大量专用硬件,其设备有的相当于小型机甚至大型机,价格极其昂贵,没有得到广泛应用。

我国对印刷汉字识别的研究始于70年代末、80年代初,大致可以分为三大阶段:

(1) 第一阶段从70年代末期到80年代末期,主要是算法和方案探索。

(2) 第二阶段是90年代初期,中文OCR由实验室走向市场,初步实用。

(3) 第三阶段也就是目前,主要是印刷汉字识别技术和系统性能的提高,包括汉英双语混排识别率的提高和稳健性的增强。

同国外相比,我国的印刷体汉字识别研究起步较晚。但由于我国政府对汉字自动识别输入的研究从80年代开始给予了充分的重视和支持,经过科研人员十多年的辛勤努力,印刷体汉字识别技术的发展和应用,有了长足进步:从简单的单体识别发展到多种字体混排的多体识别,从中文印刷材料的识别发展到中英混排印刷材料的双语识别。各个系统可以支持简、繁体汉字的识别,解决了多体多字号混排文本的识别问题,对于简单的版面可以进行有效的定量分析,同时汉字识别率已达到了98%以上。

清华大学电子工程系、中国科学院计算所智能中心、北京信息工程学院、沈阳自动化研究所等单位分别研制开发出实用化的印刷体汉字识别系统。尤其是由清华大学电子工程系研制的清华TH-OCR产品,始终处于技术与产品发展的最前沿,并占据着最大的市场份额,代表着中文OCR技术发展的潮流。

这一成就,是对中华文化宝贵遗产的继承和发扬,在世界电脑发展史上,必将留下光辉的一页,同时,这也是造福子孙千秋万代的大事。国家高技术研究发展“863”计划、国家重点科技攻关计划、国家自然科学基金和军事基础研究基金都对这一研究课题予以极大的重视和大力的支持。)

二. OCR软件的应用

在中国OCR技术的推广,并且已经形成了国内的数据加工产业。大到电子图书馆建设、报刊电子版发行、网络信息建设、银行金融系统数字化、教育信息化建设等大型数据库的建设,小到单位电子办公、个人文字编辑等工作OCR技术都已经占有了举足轻重的作用。无论是在国际还是国内OCR都已经渗透到了社会的数字化、信息化建设当中。 OCR形成产业,是大势所趋。它的发展从过去简单的一门技术,已经逐步渗透到了社会信息化建设的各个领域当中。

(在扫描仪市场上,许多类型的办公和家用扫描仪均配有OCR软件,如紫光的扫描仪配备了紫光OCR,中晶的扫描仪配备了尚书OCR,Mustek的扫描仪配备了丹青OCR等。扫描仪与OCR软件共同承担着从文稿的输入到文字识别的全过程。文稿扫描在办公领域中经常用到,即将报纸、杂志等媒体上刊载的有关文稿通过

2

扫描仪进行扫描,随后进行OCR识别,或存储成图像文件,留待以后进行OCR识别,将图像文件转换成文本文件或Word文件进行存储。

此外,数字化信息的存储、传输,不仅成本低、效率高,而且能够适应排版、网络传输等不断不发展的需要。目前我国有很多历史遗留下来的大量图书、报刊、杂志等纸质珍品,急需将其转换成电子信息。如电子图书馆的建立,就需要将图书逐页扫描,加上OCR软件的识别,更替代了人工键入文字的工作,大大缩短了录入时间,减轻了劳动强度,节省了人力且降低了费用,提高了录入正确率,工作效率和现代办公自动化程度。

目前OCR软件与扫描仪的搭配已应用到信息化时代的多个领域,如数字化图书馆,各种报表的识别,以及银行、税务系统标据的识别等。随着网络化、信息化的发展与普及,其应用范围将越来越广泛。)

三. OCR的困难

脱机汉字识别的工作原理大体上和收款机的条码识别器相同,都是先把印在纸上或货物上的符号变换为电图像信号,再进行处理、识别。但是汉字识别的识别对象种类(字量)更多,结构也更复杂,因而识别系统必须考虑的问题更多,困难更大,曾经被认为是模式识别领域最为困难的问题之一。经过国内外科技工作者30多年的艰苦努力,近几年来才得到较好的解决。

首要的问题是:汉字识别的对象是几千个(种)方块汉字。从模式识别的观点上说,这是一种超多类的模式集合,已有的适用于模式类别较少的识别方法和理论已不完全适用。具体地说,计算机认某汉字时应把这个汉字跟字典中每个标准汉字逐个比较,找出其中最相似的字作为识别结果,汉字字量越多,认字的速度越慢。如果识别速度过低,不能满足实际应用的要求,使用价值就不大。这是超多类模式识别的重要问题之一。通常这个问题可以采用多级分类的办法来解决:先按某种准则把所有汉字分成若干个子类(叫做候选类),再把待识汉字跟它所属子类中的每个标准汉字匹配比较,求得最相似的标准汉字。由于各个子类中的汉字字数较少,识别速度可以提高。这种方法和通常查字典相似:先按部首分类,再找所需的单字,而不必从头到尾把整个字典查一遍。

但是,上述先粗分类的办法在汉字识别中也有困难。原因是:如果粗分类发生错误,就一定得不到正确的结果。这和查字典的道理也是一样的。通常汉字的部首也很难找,部首找不到或者找错了,要查的字就难以找到。识别速度和识别率(质量)是一对天生的矛盾,速度提高了,质量很容易受到影响。在类别很多的汉字识别系统中这个问题尤为突出.

汉字识别中遇到的另一个困难是字体多。其实对于人来说,字体不同,特别是印刷字体不同,对认字似乎并没有什么影响。因为不同字体的同一个印刷汉字,其拓扑结构绝大多数是相同的,只是笔画粗细、形态、长短及位置略有差异而已。但是,现代计算机的智能并不高,还没有“去粗存精、去伪存真”的能力,往往把不同字体的同一个汉字看做是不同的字。在汉字识别系统中为了解决这个问题,不得不在字典中采用多模板的方法,把不同字体的同一个汉字用几种标准模板来代表;对某个汉字进行识别时,只要其中一种标准模板和待识字最相似,就判决为所需的汉字。显然这是一种比较笨拙的办法,其影响是增加了字典中的模板数量,这相当于增加了识别系统的字数。既增加了系统的复杂性,又降低了识别速度。汉字识别系统所应识别的字数本来就很多,由于字体不同使实际的识别字典容量成倍地增加,困难很大。显然解决这个问题的较好方法是努力提高计算机的“智能”,精心选择用于识别的特征,使其适用于多字体的汉字识别。这是本书将要讨论的主要问题之一。

汉字识别的另一个突出困难是:结构复杂,相似字又很多,这也是一对矛盾,已有的结构识别法和统计识别法都难以很好地解决所有汉字的识别问题。采用结构法可以照顾到汉字字形中的细微结构,有利于相似字的识别,但它却容易受干扰的影响,即抗干扰性能差。统计法的特点与此相反。

手写字的字形问题更多,本书第2章“笔输入”对此已有.所论述。但脱机手写汉字识别的问题跟联机识别不完全一样,后者在输入汉字字形时已由书写板在书写过程中将各笔画逐一分开,脱机手写汉字识别的识别对象仍是方块汉字的二维图形,同一个字不但字形不尽相同,拓扑结构也可能不一样(参看图2.2),因而困难更大。为了区分手写汉字的工整程度,目前我们把它分为两种类型,一种叫做“限制性手写汉字”,要求用户书写工整,尽量做到笔画横平竖直,不连笔。另一种是“非限制性手写汉字”,用户可以按自己的

3

习惯书写,不受限制或少受限制。这种字体大体上相当于行书和草书。日常生活中有的人书写相当潦草,有的字甚至很有文化素养的人也不一定能看懂,让计算机识别就更是难之又难。因此当前联机手写汉字识别研究,还限于对“限制性手写汉字”的研究。此外,所谓“限制性”的提法过于笼统。为了研究工作的需要,国内外有关单位编制了一些“手写汉字库”,这一问题在第4章“脱机手写汉字识别”中再作讨论。

汉字识别还有一些其他的问题。第一,我国的出版物虽然以汉字为主,但经常也有西文、日文和各种数码符号。不同文字符号混排在同一页面上,必定会使识别难度大大增加。其次,印刷质量对识别结果也有直接影响。实践证明,好纸铅印的书刊,其识别率大都可以在99%以上,印刷质量差的文件识别率显著下降。目前由于传真机广泛使用,对识别传真材料的要求越来越迫切,但传真文件的质量较低,识别率很难提高。这是我们进一步扩大脱机印刷汉字识别的应用领域所必须解决的另一课题。

汉字识别的研究范围及其困难程度可以用图3.1的三维空间来表示。图中三个坐标分别是文字数量、文字类型和版面质量。三维空间上的每一点代表该处的识别难度。显然离开原点越远,研究难度越大。例如版面质量差的脱机手写汉字识别难度最大,因此我们将专辟一章来讨论这个问题。

四. OCR分类

图1 文字识别的分类

五. 印刷体文字识别研究方法简介

4

识别方法是整个系统的核心。用于汉字识别的模式识别方法可以大致分为结构模式识别、统计模式识别及两者的结合。下面分别进行介绍。

4.1 结构模式识别

汉字是一种特殊的模式,其结构虽然比较复杂,但具有相当严格的规律性。换言之,汉字图形含有丰富的结构信息,可以设法提取含有这种信息的结构特征及其组字规律,作为识别汉字的依据,这就是结构模式识别。

结构模式识别是早期汉字识别研究的主要方法。其主要出发点是汉字的组成结构。从汉字的构成上讲,汉字是由笔划(点横竖撇捺等)、偏旁部首构成的;还可以认为汉字是由更小的结构基元构成的。由这些结构基元及其相互关系完全可以精确地对汉字加以描述,就像一篇文章由单字、词、短语和句子按语法规律所组成一样。所以这种方法也叫句法模式识别。识别时,利用上述结构信息及句法分析的方法进行识别,类似一个逻辑推理器。

用这种方法来描述汉字字形结构在理论上是比较恰当的,其主要优点在于对字体变化的适应性强,区分相似字能力强;但是,在实际应用中,面临的主要问题是抗干扰能力差,因为在实际得到的文本图象中存在着各种干扰,如倾斜,扭曲,断裂,粘连,纸张上的污点,对比度差等等。这些因素直接影响到结构基元的提取,假如结构基元不能准确地得到,后面的推理过程就成了无源之水。此外结构模式识别的描述比较复杂,匹配过程的复杂度因而也较高。所以在印刷体汉字识别领域中,纯结构模式识别方法已经逐渐衰落,句法识别的方法正日益受到挑战。

4.2 统计模式识别

统计决策论发展较早,理论也较成熟。其要点是提取待识别模式的的一组统计特征,然后按照一定准则所确定的决策函数进行分类判决。

汉字的统计模式识别是将字符点阵看作一个整体,其所用的特征是从这个整体上经过大量的统计而得到的。统计特征的特点是抗干扰性强,匹配与分类的算法简单,易于实现。不足之处在于细分能力较弱,区分相似字的能力差一些。常见的统计模式识别方法有:

(1) 模板匹配。模板匹配并不需要特征提取过程。字符的图象直接作为特征,与字典中的模板相比,相似度最高的模板类即为识别结果。这种方法简单易行,可以并行处理;但是一个模板只能识别同样大小、同种字体的字符,对于倾斜、笔划变粗变细均无良好的适应能力。

(2)利用变换特征的方法。对字符图象进行二进制变换(如Walsh, Hardama变换)或更复杂的变换(如Karhunen-Loeve, Fourier,Cosine,Slant变换等),变换后的特征的维数大大降低。但是这些变换不是旋转不变的,因此对于倾斜变形的字符的识别会有较大的偏差。二进制变换的计算虽然简单,但变换后的特征没有明显的物理意义。K-L变换虽然从最小均方误差角度来说是最佳的,但是运算量太大,难以实用。总之,变换特征的运算复杂度较高。

(3)投影直方图法。利用字符图象在水平及垂直方向的投影作为特征。该方法对倾斜旋转非常敏感,细分能力差。

(4)几何矩(Geometric Moment)特征。M. K. Hu提出利用矩不变量作为特征的想法,引起了研究矩的热潮。研究人员又确定了数十个移不变、比例不变的矩。我们都希望找到稳定可靠的、对各种干扰适应能力很强的特征,在几何矩方面的研究正反映了这一愿望。以上所涉及到的几何矩均在线性变换下保持不变。但在实际环境中,很难保证线性变换这一前提条件。

(5)Spline曲线近似与傅立叶描绘子(Fourier Descriptor)。两种方法都是针对字符图象轮廓的。Spline曲线近似是在轮廓上找到曲率大的折点,利用Spline曲线来近似相邻折点之间的轮廓线。而傅立叶描绘子则是利用傅立叶函数模拟封闭的轮廓线,将傅立叶函数的各个系数作为特征的。前者对于旋转很敏感。后者对于轮廓线不封闭的字符图象不适用,因此很难用于笔划断裂的字符的识别。

(6)笔划密度特征。笔划密度的描述有许多种,这里采用如下定义:字符图象某一特定范围的笔划密度是在该范围内,以固定扫描次数沿水平、垂直或对角线方向扫描时的穿透次数。这种特征描述了汉字的各部分笔划的疏密程度,提供了比较完整的信息。在图象质量可以保证的情况下,这种特征相当稳定。在脱

5

机手写体的识别中也经常用到这种特征。但是在字符内部笔划粘连时误差较大。

(7)外围特征。汉字的轮廓包含了丰富的特征,即使在字符内部笔划粘连的情况下,轮廓部分的信息也还是比较完整的。这种特征非常适合于作为粗分类的特征。

(8)基于微结构特征的方法。这种方法的出发点在于,汉字是由笔划组成的,而笔划是由一定方向,一定位置关系与长宽比的矩形段组成的。这些矩形段则称为微结构。利用微结构及微结构之间的关系组成的特征对汉字进行识别,尤其是对于多体汉字的识别,获得了良好的效果。其不足之处是,在内部笔划粘连时,微结构的提取会遇到困难。

(9)特征点特征。早在1957年,Solatron Electronics Group公司发布了第一个利用窥视孔(peephole)方法的OCR系统。其主要思想是利用字符点阵中一些有代表性的黑点(笔划),白点(背景)作为特征来区分不同的字符。后有人又将这种方法运用到汉字识别中,对其中的黑点又增加了属性的描述,如端点、折点、交叉点等。也获得了比较好的效果。其特点是对于内部笔划粘连的字符的识别的适应性较强,直观性好,但是不易表示为矢量形式,不适合作为粗分类的特征,匹配难度大。

当然还有许多种不同的统计特征,诸如图描述法、包含配选法、脱壳透视法、差笔划法等,这里就不一一介绍了。

4.3 统计识别与结构识别的结合

结构模式识别与统计模式识别各有优缺点,随着我们对于两种方法认识的深入,这两种方法正在逐渐融合。网格化特征就是这种结合的产物。字符图象被均匀地或非均匀地划分为若干区域,称之为“网格”。在每一个网格内寻找各种特征,如笔划点与背景点的比例,交叉点、笔划端点的个数,细化后的笔划的长度、网格部分的笔划密度等等。特征的统计以网格为单位,即使个别点的统计有误差也不会造成大的影响,增强了特征的抗干扰性。这种方法正得到日益广泛的应用。

4.4 人工神经网络

人工神经网络(Artificial Neural Network,以下称ANN)是一种模拟人脑神经元细胞的网络结构,它是由大量简单的基本元件-神经元相互连接成的自适应非线性动态系统。虽然目前对于人脑神经元的研究还很不完善,我们无法确定ANN的工作方式是否与人脑神经元的运作方式相同,但是ANN正在吸引着越来越多的注意力。

ANN中的各个神经元的结构与功能较为简单,但大量的简单神经元的组合却可以非常复杂,我们从而可以通过调整神经元间的连接系数完成分类、识别等复杂的功能。ANN还具有一定的自适应的学习与组织能力,组成网络的各个“细胞”可以并行工作,并可以通过调整“细胞”间的连接系数完成分类、识别等复杂的功能。这是冯·诺依曼的计算机无法做到的。

ANN可以作为单纯的分类器(不包含特征提取,选择),也可以用作功能完善的分类器。在英文字母与数字的识别等类别数目较少的分类问题中,常常将字符的图象点阵直接作为神经网络的输入。不同于传统的模式识别方法,在这种情况下,神经网络所“提取”的特征并无明显的物理含义,而是储存在神经物理中各个神经元的连接之中,省去了由人来决定特征提取的方法与实现过程。从这个意义上来说,ANN提供了一种“字符自动识别”的可能性。此外,ANN分类器是一种非线性的分类器,它可以提供我们很难想象到的复杂的类间分界面,这也为复杂分类问题的解决提供了一种可能的解决方式。

目前,在对于象汉字识别这样超多类的分类问题,ANN的规模会很大,结构也很复杂,现在还远未达到实用的程度。其中的原因很多,主要的原因还在于我们对人脑的工作方式以及ANN本身的许多问题还没有找到完美的答案。

六.印刷体文字识别流程简介

印刷体文字识别的过程如图2所示。原始图象是通过光电扫描仪,CCD器件或电子传真机等获得的二维图象信号,可以是灰度(Grayscale)或二值(Binary) 图象。为简单计,在本文以后的论述中,除非特别提及,图象输入的方式均指由扫描仪输入。

6

图2 印刷体文字识别的简单流程图

预处理包括对原始图象的去噪、倾斜校正或各种滤波处理。版面分析完成对于文本图象的总体分析,区分出文本段落及排版顺序,图象、表格的区域;对于文本区域将进行识别处理,对于表格区域进行专用的表格分析及识别处理,对于图象区域进行压缩或简单存储。行字切分是将大幅的图象先切割为行,再从图象行中分离出单个字符的过程。特征提取是整个环节中最重要的一环,它是从单个字符图象上提取统计特征或结构特征的过程,包括为此而做的细化(Thinning)、归一化(Normalization)等步骤。提取的特征的稳定性及有效性,直接决定了识别的性能。文字识别即从学习得到的特征库中找到与待识字符相似度最高的字符类的过程。后处理则是利用词义、词频、语法规则或语料库等语言先验知识对识别结果进行校正的过程。

由此可见,印刷汉字识别技术主要包括:

(1) 扫描输入文本图象。

(2) 图象的预处理,包括倾斜校正和滤除干扰噪声等。

(3) 图象版面的分析和理解。

(4) 图象的行切分和字切分。

(5) 基于单字图象的特征选择和提取。

(6) 基于单字图象特征的模式分类。

(7) 将被分类的模式赋予识别结果。

(8) 识别结果的编辑修改后处理。

其中(4)、(5)和(6),也就是图2中的阴影部分,是印刷汉字识别中最为核心的技术。近几年来,印刷汉字识别系统的单字识别正确率已经超过95%,为了进一步提高系统的总体识别率,扫描图象、图象的预处理以及识别后处理等方面的技术,也都得到了深入的研究,并取得了长足的进展,有效地提高了印刷汉字识别系统的总体性能。

(整个系统的工作过程主要包括下列诸项:①原始文本的扫描光电转换输入。一般采用图像扫描仪将文本按页面逐页扫描输入,再选择合适的阈值二值化,得到二值的文本图像。

②文本版面分析。将输入后版面的原始文本图像数据按页面中的间隔分割成一些方块,再将这些方块按不同篇章的标题、摘要、作者、正文、图像和表格等,对其属性和相互连接关系加以理解和标注。

③字符的切割。将各文字块中每一文字行逐一切割出来(称为行切割),然后再将每个文字行的字符一个个地顺序切割(称为字切割)。

7

④归一化处理。单个字符图像在特征提取以前,一般要进行归一化处理,包括位置归一化和大小归一化,以便对各种大小的字符都能正确识别。

⑤特征提取。对归一化后的各个字符图像进行特征提取,得到每个字符的特征描述。

⑥字符的单字识别。通常先根据每一个字符的特征进行预分类,得到待识字符较少的候选字符集合;然后再从候选字符集合中将待识字符识别出来。

⑦后处理。通常利用词条或上下文关系对单字识别结果进行后处理纠错。

⑧输出识别结果。识别的结果可以显示在计算机屏幕上,可以打印输出,可以利用语音合成设备转变为声音读出,也可以作为文件存入计算机文档系统或直接写入有关数据库中,作为可供查询的文本文件。)

七. OCR的发展前景:

OCR技术是文字电子化历程中的里程碑,与传统的手工录入方式相比,OCR技术大大提高人们资料录入存储、检索、加工的效率。所以,该项技术目前大受专业人士的欢迎,且以行业应用居多。

但是,即使是再尖端的技术,终将揭开它神秘的面纱而走向大众,或许,OCR的未来应用会伴随信息技术的大众化而变得多姿多彩。

颠覆传统读书方式

高尔基说过,书籍是人类进步的阶梯。什么会是未来倍受推崇的阅读方式?信息化及网络不仅改变了我们的生活,还改变了我们的阅读习惯,阅读纸质书籍已经被新生代书虫所诟病,取而代之的,将是电子化阅读。

而目前,有效整合了现代化阅读工具及网络的“刷书”一族,或许会带给我们更大的惊奇:他们用内嵌了汉王OCR技术的资料笔笔头扫过书页上的文字,将文字保存下来后,再将其导入电脑进行阅读,其实这也是一个选择性阅读——天下文章取精华。

骨灰级的电子化阅读专家,会借助这种资料笔收集书籍精华并上传于网络,搭建起属于自己的“随身书房”;在浩瀚的数字书海中徜徉,这将是多么惬意的事啊!

著名未来学家阿尔温·托夫勒这样预言:“一个高技术的社会,必然是一个高情感的社会。”事实上,科技不仅仅会为健康人服务,而是更会人性、更体贴。在未来,OCR会发展到与语音技术结合,通过OCR技术,可以将报纸或书本中的文字转化为机器可辨识的文档,伴随即时发音,盲人也可以轻松“读书”了。

其实不只是盲人,未来社会,成熟的“文字识别+发音”智能技术会方便所有人。在语音系统的配合下,人们可以不再“读书”而是“听书”,这就是科技带来的颠覆性阅读方式。

方便安全的手机支付

在商场、超市购物时,你是否有过因为收银台前长长的队伍而心烦、甚至放弃购物的经历?如果有,那么你一定在期盼一种新的支付方式。

幸运的是,也许随着现代化技术的发展,现金支付、银行卡支付,都会被OCR手机支付所代替。所谓OCR手机,就是将OCR技术应用于移动终端,能够实现文字、图片等信息元素识别的手机。

由于OCR手机具有直接识别文字的功能,因此,必须依靠商品条码这种二维码进行商品信息识别、到收银台付款的时代,终会成为历史。

在未来世界,如果中意于某件商品,只需用手机拍下商品名称,手机就可以自动记录下商品的种类、型号及价格,再发送短信到银行、商场的联合支付中心,就可以即时付款并提货了。

OCR手机支付货款省去了排队支付的麻烦,你更可以边支付边继续购物;更能有效避免因购物时提取现金、或使用银行卡被盗用密码的危险。

八. 结论与展望

总体来说,近几年来国内对印刷体汉字识别的研究还是相当深入的,也取得了很大成绩,使系统的识别率不断上升。目前印刷体汉字识别系统的应用已经相当成熟。例如,刚刚通过国家教委组织的鉴定的清华TH-OCR97综合集成汉字识别系统,对中等质量的样本,识别率已经可以达到99%左右或更高。不过,这些系统还存在着一些可改进之处:

从识别角度

8

(1) 汉字识别率总是汉字识别中最重要的指标,应该达到更新的高度,从而最大程度地减少用户校对、修改的工作量。

(2) 印刷体汉字识别的鲁棒性(Robustness)还不够强。Robust在英文中是“健壮的”或“强的”之意。鲁棒性可以理解为识别系统对于不同质量、不同字号、不同字体的文本图象表示出来的适应性。在文字识别中,识别系统的鲁棒性尤其反应在随着印刷质量的下降,系统误识率的上升趋势上。

目前的OCR系统都对扫描图象的质量有一定要求,扫描亮度不能太暗也不能太亮,保证文字的图象即不会暗成一个黑块也不会亮得笔画发生很多断裂。这就对用户的使用提出了较高要求。

印刷文本的质量可能千差万别,一般用户对扫描仪的操作也可能不够合适,这往往造成识别图象的质量不佳,为使任何未经训练的用户都能用好OCR系统,系统的鲁棒性必须不断提高。

(3) 汉英混排文本的切分仍不够成熟。与识别技术相比,对切分的理论和方法还缺乏系统的研究和理论。随着汉字识别率的上升以及汉英混排文本的增多,切分错误在所有错误中所占的比重不断上升,怎样使文字正确分割变成了另一个还未很好解决的问题。

用户界面和自动化程度方面

(1) 扫描仪自动亮度调节,无须用户选择门限,自动随文本种类、印刷质量不同选择合适的扫描仪亮度门限,以保证识别率。

(2) 版面的自动分析,无需人工干预,可以将印刷文本材料,如报纸、杂志等,上面有各种插图、表格、花边,且同时存在横、竖版面等加以区分和作相应的标记,以便分别处理。

(3) 中文印刷表格的自动录入,对于中文印刷表格,可以进行框线的自动检测、栏目自动切分,直至将各栏目中的内容识别出来,并且可以和数据库直接相连,完成印刷表格自动录入至数据库的任务。

(4) 版面自动恢复,仅有文字识别往往不能满足实际需要。能够保持原来的排版形式、字体信息、表格和插入的图形图象,以便在Word、北大方正等排版软件中直接修改,一直是许多用户的梦想。

(5) 系统提供用户自学习功能,使用户自由地扩大专业识别字符集;以及适用于各种应用环境的汉字识别系统。例如:MS-DOS环境、Windows环境和UNIX环境下中文OCR版本,满足不同用户的需求。

其它方面

(1) 系统总体性能的进一步提高。解决象报纸这种栏目多而位置排列复杂的印刷文本材料的版面自动理解;利用自然语言理解知识进行识别后处理;进一步提高英文的识别率和适应性,降低系统的误识率,等等。

(2) Internet/Intranet上的网络版本。充分利用网络上的资源及计算能力,提高系统的性能,使用户能够更方便地协同工作。

(3) 系统固化以及系统各部分的质量和性能的稳定提高。

(4) 扩大OCR核心技术的应用范围,开发更多的应用系统,并将研究成果迅速转化为产品,提高软件的商品化水平,使之能大量地走出国门,走向全世界。

这些都是汉字识别系统急待解决的问题,也是汉字识别技术今后努力发展的重要方向。

补充:

(1) 实用印刷汉字识别系统的总体技术指标

实用印刷汉字识别系统的总体技术指标主要有如下各项:

1)识别的字符类总数

系统识别的字符类总数决定整个系统的识别容量。

我国1980年公布的国家标准GB 2312-80《信息交换用汉字编码字符集——基本集》(简称国标)中第一级常用汉字共有3755个,第二级有3008个,两级共有6763个汉字。目前常用的汉字操作系统一般也只包含这两级汉字。根据汉字综合频率表的统计结果,一级汉字使用频度已大于99.7%,二级汉字除约500汉字较经常使用外,其余的二级汉字和二级以外的汉字主要用于人名和地名,约有一两千字,这些字的使用频度比较均匀。我国台湾目前常用汉字为5401个汉字(繁体汉字)。

目前我国汉字识别系统所识别的汉字字符集,一般分为三级:第一级包括国标第一级汉字,即3755个

9

汉字;第二级包括国标一、二级两级汉字,共6763个,或包括用于我国台湾的5401个汉字;第三级扩大至近万个汉字,识别汉字字符集的确定应根据需要和可能综合考虑。由于一级汉字的使用频度已达99.7%,因此,受系统资源的限制,扩大字符集对识别率的提高可能好处不大,但对计算机内存的要求会大大加重,识别速度也会显著下降。目前国内研制的系统主要以国标一级汉字为主,也可以适当增加一些较常用的二级汉字和专用汉字。

由于实际文本、杂志中,除汉字字符外,还包括标点符号、阿拉伯数字、英文字母等,尤其近来的报纸、科技书籍经常混有不少英文或其他外文字符,因此实用汉字识别系统的识别字符集内还应当包含这些字符集。具体字符集的规模和内容,可根据实际应用的需要仔细选用。

综上所述,实用汉字识别系统的识别字符集应由汉字、标点、符号、数字、英(其他外文)文字母等部分组成,字符总数在4000~8000之间。

2)识别的字体

我国常用的印刷字体大致分为宋、仿宋、黑、楷四大字体,各种字体还有许多较小的子类,如宋体字就有报宋、书宋、大标(题)宋、小标(题)宋、扁宋、长宋等字体;仿宋字体有老仿宋、新仿宋;黑体还有扁黑、长黑、粗黑、细黑之分;楷体又分正楷、长楷和扁楷;等等,因此常用字体总计有16种以上。只有对所有这些常见的多种印刷字体都能识别,才能真正解决印刷文本的自动输入问题。在设计多种字体印刷体汉字识别系统时,往往选用最常见的书宋、黑、仿宋和楷四种最主要字体,这些字体也是结构差别最大的四种字体。保证了这四大字体的高识别率,其他变化较小字体的识别问题也就基本上迎刃而解了。

通常把只能适应单一种字体的印刷汉字识别系统称为单字体印刷汉字识别系统。这种系统采用切换特征字典的方法来识别不同字体的印刷汉字。能用同一特征字典识别多种字体(如同时识别宋、仿宋、黑、楷四种主要字体)的识别系统称为多字体印刷汉字识别系统。目前我国的印刷汉字自动输入大都是多字体汉字识别系统。这是因为:第一,我国的印刷资料大都采用各种字体和各种字号的汉字混合编排的,识别不同字体时要求人或系统自动切换相应的特征库是十分困难的、甚至是不可能的,出路只能是采用同一特征库来识别它们。第二,实践证明,采用单一特征库的多字体汉字识别系统不仅对字体的变化有很高的适应能力,而且对于字号的变化,以及印刷质量、扫描输入噪声也具有很高的应变能力。因此,真正解决印刷汉字识别系统的实用化,就必须解决多字体印刷汉字的识别问题,实现具有高度鲁棒性的,能适应实际印刷文本复杂变化的实用系统。

3)识别的字号

我国铅字的字号约有16种,从特大号直到7号字的大小比例相差约9.3倍。不同大小的汉字经常同时出现在同一文本中。不同字号的汉字,其大小差别较大,识别时必须对大小进行归一化。实践表明,能识别多种字体的汉字识别系统,具有较强的适应汉字字形结构变化的能力,从而也具有适应字号变化的能力。因此只要对不同字号汉字进行一定比例的归一化处理,原则上就可以解决所有字号汉字的识别问题。唯一还需要考虑的是,要有足够清晰度的扫描输入设备,保证提供足够清晰度的汉字图像点阵,以供识别之用。

4)识别率

这是系统最重要的指标。识别率分两种,一种是指被正确切分的汉字图像被正确识别的概率,称单字识别率,另一种是识别结果相对原始文本而言的正确识别的概率,称为系统识别率。从原始文本到识别结果输出,中间要经过扫描输入、行切割、字切割,然后才进行单字识别,中间各步都有可能影响识别率,尤其是字“切割”这一步往往容易发生切分错误,造成字符的误识。因此,系统误识概率主要包括切分错误和单字识别错误。实验表明,由于文本印刷的复杂性,切分错误造成的误识有时甚至会超过单字识别产生的错误。这告诉我们,除了努力提高单字识别率外,还要花大力气提高文本字切割的质量,保证最终系统识别率的提高。

汉字识别系统的识别率是和印刷文字的质量密切相关的,而且好坏差别较大。也就是说,没有统一的印刷文字质量标准是难以进行系统识别率比较的。

影响印刷文字质量的主要因素有:

①印刷文字产生方式的不同造成汉字的质量差异。我国常用的印刷方式有铅印、胶印、激光打印、油印和

10

计算机点阵式打印机打印等。不同方式的汉字不仅形状有较大差异,而且印字质量相差也很悬殊。铅印、激光打印的印刷文字质量较好,边缘轮廓清晰、笔画完整;胶印次之;最差的是油印和传真机打印输出的文字,笔画边缘模糊,笔画往往有残缺或粘连。这两种文字目前很难用一般印刷汉字识别系统来识别。因此,在论及汉字识别系统的识别率时,一定要对被识别印刷文字的印刷方式加以明确限定,因为它是影响识别率的重要因素之一。

②印刷文本纸张质量的影响。纸张质量和纸张的密质程度(紧度)、白净程度(白度)、光洁度和不透明度等有关。纸张的质量直接影响到印刷体文字的识别率。对汉字识别来说,对印刷纸张应有一定的要求,以保证汉字识别的质量。

为了对汉字识别系统的识别率进行比较,一般应选定一定印刷方式、一定纸张质量、同样印刷文字质量的文字进行识别测试,或采用统一的文字数据文件进行识别测量,所得识别率才有进行比较的意义。另一方面,这也说明了,为了推广汉字识别系统的应用,也应对上述两方面内容制定相应的标准和规范,使汉字识别系统的设计和应用都有所依据。这项工作需要各方面的配合,也是十分重要的工作。

实用汉字识别系统在正常识别条件下的单字识别率应达到98%~99%以上,系统识别率也应在95%~96%以上,才有实际使用价值。

5)识别速度

汉字识别速度分单字识别速度和系统识别速度两种。

单字识别速度可以是从汉字特征提取到识别结果输出所需的单位时间内识别的字数,也可以是从行切割到识别结果输出的单位时间内识别的字数,这两种一般都称为单字识别速度。另一种是以从文本扫描输入开始,直到识别结果输出所需的时间为标准,这样计算出的单位时间内平均识别的字数,称为系统识别速度。作为系统真正的效益是由系统识别速度最终体现出来的,它应作为系统真正追求的目标。

识别速度和正确识别率是一对矛盾。这是因为,要获得高的正确识别率,一般必须采取较复杂的特征和匹配算法,并花费较多的计算代价,因而会使识别速度有所下降。因此系统设计时必须综合考虑两者:一般是把高正确识别率的要求放在首位,在缺乏高识别率的前提下提高速度的意义是不大的。这是因为,由于错识字符的纠错要花费时间,也会将系统识别速度降下来。

目前单字体印刷汉字识别系统的单字识别速度在386微机上可达到10~20字/秒,多字体印刷汉字识别系统可达5~10字/秒,利用部分专用硬件,识别速度可达30~70字/秒以上。

6)系统配置的代价

作为实用系统,除了性能指标以外,还必须有经济指标。要尽量降低系统价格,才能易于推广使用。目前国内研制的汉字识别系统都是建立在微型计算机的基础上,用软件实现的。系统配置代价较低,性能受到一定的限制。随着汉字OCR的不断推广,今后对其性能(特别是识别率和识别速度)将会更高的要求,如何妥善做好系统配置,使其具有较高的性能/价格比是一个应该研究的问题。

(2) 文本的版面分析和理解

报刊、杂志、书籍和表报等各种印刷文本的内容除了正文和插图之外,还有大小标题、注释、公式、表格以及作者姓名及地址等项目。这些内容在版面上的安排有一定的、但不是固定不变的顺序和规则。例如:在期刊杂志中标题大多放在正文之前,并用较大的字号排印;其后是作者姓名、单位名称与地址;在大块正文之间往往穿插有小标题、公式和图片;正文的编排可以是单栏、双栏甚至是3~4栏。总的说来,书籍和一般刊物的版面编排比较简单,花样不多,报纸和某些大型刊物的版面编排较为复杂、多变,例如同一篇文章的正文分为若干小块,交叉排印,有的甚至穿插一些“花边”,其目的或许是使整个版面更有“艺术”特色,不会过于呆板,更能吸引读者的注意和兴趣。我国20世纪30年代的上海报纸就有一种缀有“花边”的小文章,被冠以“花边”新闻的“雅号”。这种“花边新闻”大都是一些短小精悍、针砭时弊,施加鞭贬的文章,当时曾经吸引众多读者的注意,还形成为一种很有特色的流派,叫做“花边文学”,在社会上

特别是文化界中影响极大。由此可见报刊杂志版面加以精心地艺术性地编排是有道理和必要的。

对于这样丰富多彩的印刷版面,人们在阅读时大都能一目了然,理解其中的含义及相互连接的关系,从而能够正确阅看每一篇章及其相关的图片与表格。然而,如果我们不赋予电脑必要的功能,它将无法处

11

理这样的复杂的排列组合,也难于对其中的文字进行识别。这种特殊功能就是对文本版面的分析与理解。

版面分析是把印刷文本同一版面中的图像分割成一些图像块,每一图像块大小不等,但都含有相对独立、完整的内容。如标题、正文段落、标注、图、表和公式等等。

版面理解是在版面分析的基础上进行的。其作用是判定各图像块的属性及相互之间的逻辑关系。文本各图像块的属性主要包括:标题、摘要、小标题、作者姓名及其单位、图表、标注、表格等等;它们之间的逻辑关系则包括:是否是同一篇文章的图像块、同一篇章各图像块的连接关系(如大标题、作者、摘要、正文、小标题),以及同一篇章但不在同一栏目的图像块的连接关系等等。显然,一个完整的识别系统必须具有对每一版面的图像进行正确分析、理解的能力,才能把经过识别的文字及相关插图、表格等,按顺序自动地连接成完整的篇章,供后续各种处理之用。

把印刷文本版面分割成图像块的方法原则上比较简单。同一版面中的图像块往往是被空白的背景区分隔开的。寻找出背景区的位置,就可以把各图像块分割开来。这种方法和第1章所介绍的行分割和字分割相同,利用文本图像的水平投影和垂直投影就能够确定背景区的位置,实现各图像块的分割。图5.5是版面分割示意。这个版面的编排比较复杂;正文分三栏排印,标题及图片的宽度则都是两栏,而且在垂直方向上互相重叠。显然,如果将整个版面图像分别进行水平和垂直投影,则难以求得能够将它分割为若干图像块的空白间隔。对于这样比较复杂的版面,一般可采用局部投影方法,先将能够分离的图像块分割开,再处理其他部分的问题。

版面理解目前还没有较好的通用的方法,看来也很难有“放之四海而皆准”的方法。其原因是版面的安排已不是一门科学,而是一种艺术。目前解决这个问题的方法之一是根据图像块的投影来确定该图像块的属性。例如:正文的投影有周期性的行空白间隔,而插图的投影则是连续的;又例如,标题的空白间隔宽于正文各行间隔,其投影高度也比正文大。此外在一般情况下,横排文本的标题在正文之上,竖排文本的标题则大多在正文右侧,等等。

(3) 汉字的行切割和字切割

汉字文本经光电扫描输入计算机,再经过对文本的二值图像进行版面分析。将文字图像分割出来以后,为了识别单个汉字,还需要将每个汉字的图像从整块文字图像中分割出来,才能送到识别装置进行识别。

我国现在的汉字文本有横排版和竖排版两种。横排版的文字从左向右编排成行,然后再从上往下逐行排列。竖排版的文字则是从上往下按列编排,然后将各列文字再从右往左排列。对于横排版面要先按水平方向进行行切割,然后再按垂直进行字切割。竖排版的行、字切割方法与此相似。下面以横排版面为例说明行切割、字切割的方法和所遇到的问题。

1)行切割

行切割的方法是:对二值图像从上到下逐行扫描,同时计算每扫描行的像素,以获取图像的水平投影。利用文字行间空白间隔造成的水平投影空隙,即可以将各行文字分割开来,如图5.6所示。

在图像输入时,有时会出现纸张倾斜,造成文字行的倾斜。少量的倾斜对行切割以及后面的字切割和识别影响都不大。但倾斜严重时,相邻两行文字图像的水平投影可能互相重叠,使它们之间的空白间隙被填满而无法实现行切割(见图5.7)。这种问题原则上可设计一套软件,将文字图像旋转适当的角度来解决;但用软件的办法运算量很大,实际上难于采用。最直接的方法是尽量把纸张的位置放正,再进行扫描和识别,因为一般目测纸张放正就满足要求了。当行空白间距过小且每行的长度又很长时,纸张倾斜的影响较大,一般也采用人工矫正方法较为便捷。

12

2)字切割

字切割的作用是从行切割后得到的文字图像行中将单个汉字的图像分割出来。字切割的正确与否直接影响识别结果,是汉字识别系统中较重要也较困难的环节,特别是汉字与其他文字混排时,字切割就更为困难。

字切割的基本方法是,利用字与字之间的空白间隔在图像行垂直投影上形成的空白间隙,将单个汉字的图像切割出来的,如图5.8所示。

但是汉字中有相当数量的由左、右两部分构成的二根字和由左、中、右三部分组成的三根字。据对3755个宋体汉字的统计,其中二根字有约250个,如“八、北、非”等;三根字也不少,如“川、排、衍”等。这些字的图像垂直投影在一个单字内部也会出现空白间隙,因而单纯使用垂直投影空白间隙切分单字的切割算法会产生误分。

字切割中遇到的更为困难的问题是目前报刊、杂志中的阿拉伯数字是按半角宽度(半个汉字宽度)排版的,即两个阿拉伯数字占据了一个全角汉字的宽度,它们之间的间隔也往往小于两个汉字之间的空白间隔,这和二根字的情况极为相似,如图5.9(a)所示。这些情况在标点符号非常靠近时也会出现,如图5.9(b)所示。

目前解决这些问题有如下几种办法。

①根据方块汉字、拼音字母、阿拉伯数字和标点符号的图形高度、宽度和间隔不同,综合利用投影的空白间隙宽度、黑像素投影值,以及投影宽度和高度等信息来进行切割。在以汉字为主的版面中,这种方法较

13

为简单可行,个别切分错误对总体识别率影响较小,可再进行人工校对加以纠正。

②把两个半角的阿拉伯数字图像当做一个新的字符来识别。也就是说,在字切割时,是把两个阿拉伯数字的图像当做是一个新的字符图像切割下来,加以识别的。这样在识别字符集内至少需要增加100个字符。

随着我国科学技术的发展,在各种印刷资料中,汉字、数码和拼音字母混排的情况日益增多,目前我国印刷文字排版又缺乏一定规则可供遵循,因而在识别系统中如何正确分割不同类型的字符,并采用相应的字典进行识别,这是一个必须重视的问题。这个问题的解决不但要充分依靠切分技术的改进,也需要出版界对印刷字符的排版方法制订适当的规则。只有各方面相互配合才能得到更好的效果。

(4) 汉字图像的归一化

行切割和字切割后所得到的单个汉字图像还必须进行归一化处理,以消除因排版及字号、字体不同而带来的汉字图像在位置和大小上的变化。归一化处理主要包括“位置归一化”和“大小归一化”两种。汉字识别主要是以汉字的图形为基础的,如果不对汉字点阵图像在位置和大小上进行归一化处理,使待识字跟字典中的标准字按相同的准则一致起来,那么根据汉字点阵图形抽取的识别特征就无法相互比较,进行判别。

位置归一化和大小规一化的方法有好几种,本文不能详述。图5.10(a)是待识别的一篇短文,包括标题、日期和正文三部分。其中标题是4号字、日期是6号字,正文是小5号字。它们的大小差别很大,经字、行切割后,各个单字图像的位置也有所变化。因此在提取特征进行识别之前,必须先对它们的位置和大小做归一化处理。图5.10(b)是经归一化处理后的图像。

14

(5) 怎样建立识别系统中的字典

在前面的章节中我们着重讨论了识别特征的问题。在确定系统所采用的识别特征和提取方法之后,还有很多重要的问题要解决。例如:如何对系统进行训练,建立所需要的字典?如何利用字典对输入的待识字符进行匹配、判决,给出单字识别结果?对于单字识别器输出中错误能否校正,如何校正等等。这些问题也都十分重要,是一个完整的汉字识别系统必不可少的环节。在下面各节就来讨论这些问题。

为了讨论上述这些问题,我们把单字识别模块和后处理模块的框图再画在图5.11中。其中,单字识别模块包括字典和匹配判决器两种部件;后处理则包括词条库和词匹配器两部分。本节先讨论怎样建立识别系统中的字典。

我们知道,计算机必须先有一个“字典”才能“识字”。在计算机中建立字典(特征库)的过程,叫做训练过程或学习过程,用它来认字的过程叫做识别过程或匹配判决过程。这跟人们读书识字的过程相似。小学生到学校读书,要先在老师的教导下进行学习,然后自己才能读书识字。

对计算机进行训练、建立字典的方法,从原理上说是比较简单的。假设识别系统应能识别的字数为N个。训练时抽取每一个汉字的特征,把它们存储起来,原则上就建成了一个特征库,可以用来识字了。但是实际上同一个汉字的不同样本(例如不同字体、不同字号等)彼此之间是有差异的,从不同样本抽取的特征也有所不同,因此,只采用某一个汉字样本的特征来建立特征库是不妥当的。解决这个问题的办法是每个汉字都采用若干个样本的“平均”特征来代表这个汉字。换句话说,计算机必须先学习如何适应各种使用条件的变化,才能具有较高的“智能”,适应复杂多变的情况。

用于训练的汉字样本集合叫做训练样本集合。通常汉字OCR训练样本集合的字数应为系统容量的10倍或几十倍。如果系统容量为3755个汉字,那么训练样本集合至少应有37550个字。训练时,依次抽取集合中各个汉字样本的特征,把它跟已存储在特征库中的特征相比较,同时适当调节有关参数使系统能正确识别这个字。然后,按照这一方法再输入另一个样本并进行识别。这样反复迭代,直到系统能正确识别训练样本集合中的所有样本为止。经过训练后的特征库用于识别训练样本集内的样本时,识别率一般可达到100%,但用于识别训练样本集以外的其他汉字样本集(叫做测试样本集)时,识别率将有所降低。但性能好的识别系统在实际应用时,其识别率仍应不低于98%~99%。实践证明,训练样本集合的样本越多,效果越好。这和人们的学习规律是一致的。我们常说:“见得多,识得广”就是这个道理。当然训练样本集合也不宜太大,否则所需的训练时间太长,花费太大。

(6) 单字识别中的匹配判决

单字识别模块中“匹配判决”的作用,是把待识汉字的特征和字典中的标准特征逐一比较,按照一定的准则把某一个标准特征所代表的汉字判定为识别后输出的汉字。

汉字OCR中通常用两个特征之间的“距离”作为准则来判定它们的相似度。当字典中某个标准特征和待识汉字特征之间的距离为最小时,该标准特征所代表的汉字就判决为待识的汉字。

下面举一个例子来说明单字识别模块是怎样对输入的待识汉字进行判决的。

图5.12 (a)是待识汉字样本——一篇文件的“标题”,共有38个汉字和一条“间隔符号”(长横)。图5.12(b)是识别模块判决器给出的候选字及其“距离”,其中第一列的汉字(第一候选字)和该“标题”中对应的待识汉字距离最近;第二,三……各列的字则依次是距离较大的字,这些汉字右边的数字是字典中

15

该汉字的标准特征与待识汉字特征的“距离”。如果采用“距离最小”的判决准则,则该标题经识别后的输出结果是

从上述单字识别结果可以看出,在被识别的38个字的“标题”中,34个字是正确识别,有4个字(贫、赘、L、蔡)识别错误。正确识别率为89.5%,而错识率达10.5%,这样的识别结果是不能令人满意的。这里我们用这个例子只是为了说明单字识别模块中的匹配判决器是怎样工作而已,下面还将讨论如何改变判决准则来减小错误率。

上面的例子中判决器采用“最小距离”的准则来判定识别结果。可以看出:这种判决器的输出中,有的字和对应的待识汉字距离较近,这些字绝大多数是正确识别的字;但也有一些字虽然跟对应的待识字的距离最小,但绝对值却很大,发生错识的可能性也较大。为了使错识字减少,在某些识别系统中引入“拒识字”这一概念。其方法是采用两种判决准则:其一:若特征距离最小,且其绝对值小于一定数值的标准特征所对应的汉字,判决为正确识别的字。其二,若特征距离虽然是最小、但其绝对值大于规定值的标准特征对应的汉字,则判决为“拒识字”。根据这种判决准则,在上述例子中,如果规定距离大于48的特征所对应的汉字判为拒识字,那么匹配判决器的输出将变成如下的结果:

16

其中符号@代表拒识字。在这38个字中,拒识字有3个;占7.9%;错识字还有1个,占2.6%,正确识别的字34个,占89.5%。由此可见,引入了拒识字后,错识字的比例显著减少。下面我们还将看到,引入拒识字还有利于进行人工校正或自动纠错,这对于提高系统识别率是有好处的。

顺便指出,拒识字这一概念在很多识别系统中时常被采用。例如在自动信函分拣系统中,由于手写的邮政编码的识别率很低,如果编码识别错误,把信函寄到错误的地址,损失很大。如果把可能发生错识的编码作为拒识处理,然后再用人工纠正,就可以大大减少错误投递的损失。对某些用户,例如银行的支票识别,这个问题尤为重要。

(7) 后处理纠错

在识别系统中,利用上下文关系、组词规律或其他语法规则,对单字识别输出的文件进行处理以纠正错识字的方法,叫做后处理纠错,简称为“后处理”。这种方法用于处理拼音文字的文件十分有效。目前各种英文文字处理系统几乎都有“拼写校对"(Spelling Check)软件,它能够自动地显示每个词语中少量的拼写错误,并给出可能的改正方案。在各种办公室自动化设备中,这是一种十分得力的方法,对发现、改正文稿中的错误,提高文件质量很有帮助。

在汉字识别系统中利用“词条匹配”的方法也可以在一定程度上自动地纠正单字识别输出中的个别错误。这里再以图5.12(b)为例具体介绍这种后处理的方法。为了简单起见,这里只讨论双字词的匹配方法。

所谓双字词是指每个词语由两个汉字组成。汉语中双字词的数量最多,也最为常用。采用双字词匹配实现后处理纠错时,识别系统中必须有一个“双字词库”,用来检查单字识别器输出的文字序列中是否有某种双字词存在,在某些条件下可以纠正输出文字序列中的错识字。下面利用上节单字识别器的识别结果来说明用词条匹配纠正拒识字的方法。

在上节的例子中,单字识别器输出汉字序列的第三个字是拒识字。判决器同时也给出了“贫、贯、贯,觅、贪”五个候选字,它们和相应的待识字的距离都比较近,其中某个字可能就是正确的待识字。“词条匹配法”就是根据拒识字的某个候选字能否和与它相邻的字组成有意义的词条来选择候选字的。可以看出:这五个候选字跟与它相邻的字可能有8种组合,如:“决贫、决贯、决觅、决贪”和“贫彻、贯彻、觅彻、贪彻”,但其中只有“贯彻”两个字是有意义的双字词,由此可以认为:单字识别器输出汉字序列的第三个字应该是“贯”字。

同理,第6和第12个拒识字应该分别是“整”字和“第”字,因为它们可以分别同跟在它们后面的字组成“整顿”和“第五”两个有意义的词条。

利用词匹配的方法可以在一定程度上纠正单字识别器输出的拒识字,但是这种办法有一定的限制:如果单字识别器的性能不好,错识字和拒识字太多,这种方法就不适用。通常要求单字识别器的识别率应该足够高,而且拒识字不应该是连续出现的。还应该指出,词条匹配法不能纠正单字识别器中属于单字词的错识字,例如:在上述例子中“1989”的“1”错识为“L",这个错字是无法用词条匹配来纠正的。此外用于词条匹配的“词条库”必须有足够数量的词条。据统计,汉字的双字词约有65891条,很难全部选用,否则系统的开销太大,存储器数量和搜索时间都将大大增加。但选用的词条也不宜太少,一般以1万~2万条较为合适。

词条匹配法属于利用汉语上下文关系来校验字符串是否合乎语法的方法之一。除双字词外,还可以利用三字词、四字词等,但词条字数越多,搜索匹配越复杂,目前已有的汉字OCR很少采用。

后处理的方法很多,上面介绍的方法是在词法分析的层次上进行的,这种方法比较简单,但功能有限。更高层次的后处理是基于语义和语用关系上进行的,它利用上下文关系所蕴涵的更多的信息,其功能更强,但算法复杂,开销也更大。这些后处理方法目前还处于探索研究阶段,如何进一步提高整个识别系统的性能仍是一个必须继续研究的课题。

17

发布评论

评论列表 (0)

  1. 暂无评论