为什么计算机能识到文字
你要寄一封信,一定要写清楚收信人所在地区的邮政编码。我国邮政编码是由0,1,…,9这十个数字组成的六位数。邮局可以通过计算机来自动识别手写数字,然后实现自动分拣信函。
数字是一种简单的文字,较复杂一点的是26个英文字母。计算机自动识别数字和字母现在已经实现,并且已有了广泛的应用。但是汉字的自动识别却困难得多。这是因为汉字构形复杂,数量又大,《辞海》中就收集有14872个汉字。汉字自动识别有的已经实现,有的尚处于试验阶段,特别是手写体汉宇,变化多端,更不易识别。
文字识别,目前主要是指光学文字识别(OCR)。文字识别机器由检测、预处理、特征抽取和识别判决四部分组成。当一个文字图形输入到机器中时,机器首先进行检测,把纸面上文字进行光电转换,将光信号转化为电信号。预处理的功能是除去信号中的“噪声”,并把文字大小和笔划粗细等规范化,以减少识别中的复杂性。经过这些技术性处理以后,再进行特征抽取,即按一定的方法抽取能反映文字本质的有用信息。最后按一定的识别原理进行识别判决,以确定文字的属性。特征抽取和识别判决是文字识别的核心部分。下面我们通过印刷体汉字的一种自动识别方法来作些介绍。
在图论中,一个图G是由点集V和边集E组成的。一条边e总有两个端点u和v,称为e与u、v“关联”。对于点v来说,与v关联的边的数目称为点v的“度”,记作d(v)。如果d(v)=k则称v为“k度点”。一个图G如果可以画在平面上使所有的边都互不交叉,此时称G为“可平面图”。可平面图在平面上的一个具体实现,称为“平面图”。
![]() |
我们把一个汉字看成是一个平面图。例如,对于汉字“估”,相应地可得到右面的平面图:这个图称为汉字“估”的“伴随图”。它有12条边和13个点,其中有6个1度点,4个2度点,2个3度点和1个4度点。我们还看到这个图有2个连通分支(左右两部分)和1个圈(右下部分)。
一个手写体汉字可以有不止一个的伴随图。但是印刷体汉字由于写法固定,一个汉字只对应一个伴随图。
对于一个印刷体汉字的伴随图G,可用5维向量(a1,a2,a3,a4,a5)来特征该汉字,其中:
a1表示图G的k(k>5)度点的个数;
a2表示图G的4度点的个数;
a3表示图G的3度点的个数;
a4表示图G的连通分支的个数;
a5表示图G的圈的个数。
(a1,a2,a3,a4,a5)称为该汉字的“码”。例如,汉字“估”的码是(0,1,2,2,1)。
下面列出若干汉字及其码:
![]() |
对于印刷体汉字来说,一个汉字有一个码。在多数情况下,不同的汉字的码也不同。但是,同码汉字还是有的,例如,“甲,由”,“土,士”,“估,呈”都是同码汉字。为了区分同码汉字,可以用图形匹配的方法进行识别判决。也就是说,对同码汉字类中的每个汉字各准备一个标准图形,将输入的未知图形和各标淮图形之间作匹配比较,计算各自的类似度,以最大类似度作为识别结果输出。
计算机首先要建立一个汉字库,它是按码分类存放的。当一个未知汉字输入时,先对它进行编码,然后按码找出字库中的汉字。如果只有一个,就输出;否则,按图形匹配方法作识别判决,输出有最大类似度的汉字。
上面介绍的汉字编码方法,不但可用于自动识别,在编字典、邮电通信等方面也有应用的前景。