字符信息识别装置和方法

文档序号:6461212阅读:177来源:国知局
专利名称:字符信息识别装置和方法
技术领域
本发明涉及字符信息识别装置和方法,即由字符图像识别出字符串 的装置和方法。更具体地,本发明涉及对由分隔符分隔成多个字段、且 至少一部分的字段具有固定模式的字符串进行识别的装置和方法。
背景技术
当今,通过OCR技术识别各种字符信息是很普遍的事情。例如,用 户在纸上或触摸屏上写下一串字符,通过扫描、拍照或感应等转换为字 符串图像,将该字符串图像输入识别系统,从而识别并输出该字^:串值。
存在这样一种分段的或层级的信息,如Email地址、网络地址等。 这样的字符串由分隔符分隔成两个以上的字段,而且其中的一些字段具
有一定的固定性。
以Email地址为例说明。
一个有效的Email地址,例如, "jzhang2001@studentdlut.edu.cn",由3个部分组成用户名 "jzhang2001"、中间的、@、字符、以及域名"student.dlut.edu.cn"。其中域 名属于层级结构,可分为顶级域名和用户域名。顶级域名广泛而通用, 如"edu"和"cn",用户域名代表拥有该域名的组织或群体,如"student" 和"dlut"。点Y字符,通常用作用户名和域名中多个字段之间的^^隔符。 对于这样的信息,特别是这些信息的手写体的识别,目前并没有特 别高效的方法。具体而言,在现有的方法中,没有利用到这些信息的上 述特征。
专利文献l中提出了一种内置于数码摄像机的信用卡读卡器,用来 提取信用卡上的签名模板和email地址。其中通过一个光学字符识别程 序,该读卡器能够识别一串有打印email地址的标签。但是,该读卡器仅 限于识别印刷体的email地址,而且识别程序并未利用email地址中包含的上述先验知识。
对于这种字符串的识别,可以采用传统的手写体字符识别方法。例
如,可先将手写体Email地址串分割成单个字符,然后通过识别方法对 分割字符逐一识别,最后验证和修改字符串,使之成为一个有效的Email 地址。但是这种方法很难实用,手写体英文字符串的笔划经常禾占连,很 难准确地将字符串分割成若干单个的字符。
再如,可先将手写体Email地址串分割成很多的小片段,而单个字 符可由1 3个相邻的小片段组成,结合识别算、法,动态规划搜索到一种 较佳的字符分割路径,并按此分割路径识别字符串,最后验证和修改字 符串。这种方法通常被称为基于识别的分割,但是它非常依赖于分类器 的性能,要求分类器对完整的字符输出置信度高,而对残缺笔划或多余 笔划的字符输出置信度低。与机器打印体字符不同,手写体字符往往变 形差异很大,分类器很难满足上述的性能要求,因此这种方法对Email 地址整串的识别率不高。
专利文献1:美国专利6873715号,发明人为Y.T. Kuo和S. Kuo,名 禾尔为 "System of central signature verifications and electronic receipt transmissions "。

发明内容
本发明就是鉴于上述现有技术的缺点和不足而提出的,其目的在于 提供能够高效、准确地识别Email地址、网络地址等字符串信息、特别 是手写字符串的设备、方法和程序等。
如上所述,网络地址、Email地址等信息具有如下特点-
1. 由分隔符划分为多个字段;
2. 这多个字段中至少一部分具有固定的模式;
3. 各个字段之间具有层级关系。
本发明考虑到了网络地址、Email地址等信息的上述特点,预先针对 各个字段建立词典数据库,在字符串图像的识别中,先识别出字符串中 的分隔符,从而将字符串图像分割为多个段,然后基于该词典数据库对
5每个段进行识别。
在此基础上,本发明提供了如下的技术方案
发明l. 一种字符信息识别装置,其输入包含字符串的字符串图像, 由该字符串图像识别出所述字符串,其中该字符串被分隔符划分为两个 以上的字段,其特征在于,该字符信息识别装置包括
切分单元,其将所述字符串图像切分成多个独立的片段; 分隔符识别单元,其基于所述切分单元切分后的所述片段,识别出 分隔符,从而将所述多个片段分成多个片段集;
词典数据库,其中存储了多个预定的字符组;以及
识别单元,其对于各个所述的片段集,将该片段集的至少一部分识
别为所述词典数据库中的字符组,从而识别出各个所述的字段。 发明2.发明1的字符信息识别装置,其进一步包括 矫正单元,其矫正所述字符串图像的行倾斜和/或字体倾斜。 发明3.发明1或2的字符信息识别装置,其中
所述识别单元将所述片段集作为一个整体,识别为所述词典数据库 中的字符组。
发明4.发明1或2的字符信息识别装置,其中
所述切分单元进一步判断所述片段是否包含单个的字符,并按照多 个切分方式对判定为可能不是单个字符的片段进行进一步切分;
所述识别单元对于每个所述的片段集,在各个切分方式下,基于所 述词典数据库将每个片段识别为一个字符,将所得到的最优识别结果作 为与该片段集相对应的字段。
发明5.发明1的字符信息识别装置,其中
所述词典数据库包含分别针对各个所述字段的两个以上的词典,并

所述词典具有层级关系,上层的词典确定了下层的词典。
发明6. —种从包含字符串的字符串图像中识别出所述字符串的字
符信息识别方法,其中所述字符串被分隔符划分为两个以上的字段,其
特征在于,该字符信息识别方法包括以下步骤-
6将所述字符串图像切分成多个独立的片段;
基于所述切分单元切分后的所述片段,识别出分隔符,从而将所述
多个片段分成多个片段集;
对于各个所述的片段集,将该片段集的至少一部分识别为预先准备
的词典数据库中的字符组,从而识别出各个戶万述的字段, 其中所述词典数据库中存储了多个预定的字符组。 发明7.发明6的字符信息识别方法,该方法进一步包括 在将所述字符串图像切分成多个独立的片段之前,矫正所述字符串
图像的行倾斜和/或字体倾斜。
发明8.发明6或7的字符信息识别方法,其中
在对所述片段集进行识别的步骤中,将所述片段集作为一个整体, 识别为所述词典数据库中的字符组。
发明9.发明6或7的字符信息识别方法,其中
在将所述字符串图像切分成多个片段的步骤中,判断切分所得的片 段是否包含单个的字符,并按照多个切分方式对判定为可能不是单个字
符的片段进行进一步切分;
在对所述片段集进行识别的步骤中,对于每个所述的片段集,在各 个切分方式下,基于所述词典数据库将每个片段识别为一个字符,将所 得到的最优识别结果作为与该片段集相对应的字段。
发明10.发明6的字符信息识别方法,其中
所述词典数据库包含分别针对各个所述字段的两个以上的词典,并

所述词典具有层级关系,上层的词典确定了下层的词典。 发明11. 一种用于使信息处理设备从包含字符串的字符串图像中识 别出所述字符串的程序,其中所述字符串被分隔符划分为两个以上的字
段,其特征在于,程序使信息处理设备执行以下步骤
将所述字符串图像切分成多个独立的片段;
基于所述切分单元切分后的所述片段,识别出分隔符,从而将所述
多个片段分成多个片段集;对于各个所述的片段集,将该片段集的至少一部分识别为预先准备 的词典数据库中的字符组,从而识别出各个所述的字段,
其中所述词典数据库中存储了多个预定的字符组。
发明12.发明11的程序,其特征在于,该程序使信息处理设备进一 步执行以下步骤
在将所述字符串图像切分成多个独立的片段之前,矫正所述字符串 图像的行倾斜和/或字体倾斜。
发明13.发明11或12的程序,其中,该程序使信息处理设备
在对所述片段集进行识别的步骤中,将所述片段集作为一个整体,
识别为所述词典数据库中的字符组。
发明14.发明11或12的程序,其中,该程序使信息处理设备-在将所述字符串图像切分成多个片段的步骤中,判断切分所得的片
段是否包含单个的字符,并按照多个切分方式对判定为可能不是单个字
符的片段进行进一步切分;
在对所述片段集进行识别的步骤中,对于每个所述的片段集,在各 个切分方式下,基于所述词典数据库将每个片段识别为一个字符,将所 得到的最优识别结果作为与该片段集相对应的字段。
发明15.存储了发明11 14中任意一项的程序的计算机可读介质。 根据上述的技术方案,本发明在进行字符串的识别时,首先识别出 字符串中的分隔符,从而将字符串图像分割为多个段,对于每个段,基 于预先建立的词典数据库进行识别。这样可以充分利用字符串中包含的 先验知识。根据本发明,可以大大提高手写体的Email地址、网络地址 等信息的识别精度,即使在存在笔画粘接的情况下,也可以在满意的精 度下进行识别。


所包含的附图用于提供对本发明的进一步理解,其被并入说明书并 构成其一部分,

了本发明的实施例,并与说明书一起用于解释 本发明的原理。图1为本发明的第一实施例的字符信息识别装置的示意框图; 图2为字符信息识别装置中的切分单元中的连通部件分析单元所执 行的处理的概要流程图3示出了连通部件分析单元将字符串图像分离成一些独立部件的
示例;
图4为字符信息识别装置中的切分单元中的部件切分单元所执行的
处理的概要流程图5为切分宽部件的双链弹性匹配方法的流程图6a c示出了将较宽部件切分成若干个小片段的示例;
图7为第一实施例的字符信息识别装置中的分隔符识别单元所执行
的处理的概要流程图8示出了将Email地址分割成为若干个词的示例;
图9为第一实施例的字符信息识别装置中的字符识别单元所执行的
处理的概要流程图10a b示出了字符识别单元建立分割假设图和选择最优路径上的
最优词作为识别结果的示例;
图11示出了最优路径上的字符切分结果、识别候选结果和Email地
址整串识别结果的示例;
图12为第二实施例的字符信息识别装置中的字符识别单元所执行
的处理的概要流程图13本发明的第三实施例的字符信息识别装置的示意框图14为第三实施例的字符信息识别装置中的矫正单元所进行的矫
正处理的概略流程图15为矫正单元所进行的行倾斜矫正处理的流程图; 图16为矫正单元所进行的字体倾斜矫正处理的流程图; 图17a d示出了矫正单元的矫正结果的示例。
具体实施例方式
以下参考附图对本发明的具体实施例进行说明。在附图中,相同的
9附图标记代表相同或虚应的要素。 第一实施方式
以下以Email地址的识别为例,对本发明的第一实施方式进行详细 的说明。
图1为本发明的第一实施方式的字符识别装置1的示意性结构框图。 该字符识别装置1的输入为手写体字符串的图像数据,输入所识别的字
符串。如图1所示,该字符识别装置l包括切分单元IO、分隔符识别
单元20,字符识别单元30,以及词典数据库40。该字符识别装置l可以 外接数码相机、扫描仪、PDA、手机等设备,输入扫描得到的或用户手 写的Email地址字符串图像。切分单元10将该字符串图像切分成多个独 立的片段。分隔符识别单元20基于该切分单元10切分所得的片段,识 别出分隔符,从而将所述多个片段分成多个片段集。词典数据库40中存 储了多个预定的字符组。识别单元对于各个所述的片段集,将该片段集 的至少一部分识别为所述词典数据库40中的字符组,从而识别出各个所
述的字段。
下面对字符识别装置1的各个单元的结构以及操作进行说明。 如图1所示,切分单元IO进一步包括连通部件分析单元11和部件 切分单元12。连通部件分析单元11根据连通性分析,搜索所有的连通部 件,删除噪声部件,合并某些邻近部件,最后把字符串图像分离成一些 部件的集合。部件切分单元12搜索部件集合中所有的宽部件,进一步把 它们切分成若干个小片段,输出一个由剩余的部件和切分的片段组成的
龟厶
图2为第一实施方式的字符识别装置1中的连通部件分析单元11所 执行的处理的概要流程。
如图2所示,首先,在Sll中,连通部件分析单元11搜索连通部件。 连通部件是指图像处理中的连通域,指由前景像素连成的一片图像区域, 在该区域内任意两像素间存在一条由区域内的像素构成的路径。在此, 可以通过各种公知的方法来搜索连通部件,例如通过八邻域连通性分析, 搜索二值字符图像中所有的连通部件。
10中,首先找到一个前景点,并以它为种子,然 后在该种子的八邻域内搜索没有被访问过的前景点,并以它们为新的种 子点,递归继续上面的搜索过程,直到找不到新的种子点,结束搜索, 输出所有被访问过的前景点,作为一块连通部件;寻找新的没有被访问 过的前景点,并以它为种子,可以找到另一块连通部件。如此,直到所
有的点都被访问过。关于八邻域连通性分析,例如可参见Digital Image Processing (4th Edition), W.K. Pratt, John Wiley & Sons, Inc. 2007。
在S12中,进行噪声去除,即如果部件含有的笔划像素数目很少(少 于分隔符'.'),或者部件所处位置远离字符行,则部件应为噪声,删除该 部件。
在si3中,恢复、r和丁字符,即如果部件的外接矩形的长宽都较小, 而且部件位置处在字符行的上部,则部件应为'r或丁字符头上的点,根 据它离前后部件的距离和前后部件的外接矩形宽度判断它是属于前一个 部件还是后一个部件,合并这两个部件,并寻找一条较短的路径连接它 们,两个独立部件成为一个连通部件。
在S14中,进行部件的合并分析,即判断前一个部件的外接矩形是 否完全包含后一个部件的外接矩形,例如、@、字符可能被分为内外两个部 件,若是,则合并这两个部件,并寻找一条较短的路径连接它们,使之 成为一个连通部件。
在S15中,处理断笔,即有时由于书写的速度太快或者书写字符的
习惯,导致字符笔划的断裂或分离,通过部件的外接矩形的宽高和它同 邻近部件的间隔距离,判断部件是否可能为断笔。例如,若一个部件的 宽度小于预定阈值、或高度小于预定阈值,且该部件与相邻部件的距离 小于预定的阈值,则判定为该部件是断笔。若判定为一个部件是断笔, 则进一步判断该部件应属于哪一个邻近部件。例如,如果两个相邻部件
都被判定为是断笔,则该两个部件属于彼此,如断开的、n';如果一个部 件被判定为断笔,且该部件与右部件的距离小于一预定的阈值,则判定
为它属于右部件,如断开的y;如果一个部件被判定为断笔,且该部件
与左部件的距离小于预定的阈值,则判定为它属于左部件,如断开的、h、。
11根据上述判定结果确定需要合并的部件,并通过最短的路径连接它们。
经过上述的一系列处理,字符串被分离成为一系列相互独立的部件,
有些部件是单个字符,有些部件是若干个粘连的字符。
图3示出了第一实施方式中的连通部件分析单元11将字符串图像分
离成一些独立部件的示例。如图3所示,每个部件用细实线的外接矩形
框标出,共有20个独立部件,其中有13个部件包含单个的字符,其余7个部件包含多个粘连的字符。
图4为本发明实施例的字符识别装置1中的部件切分单元12所执行的处理的概要流程。
如图4所示,在步骤S121中,判断部件的宽度是否小于预先确定的与字符行的x-高度(字符'x'在字符行中的高度)相关的阈值Wt。
若是,则部件仅包含单个的字符,否则,部件有可能包含多个粘连的字符。
在步骤S122中,对于粘连的字符,采用双链弹性匹配算法,搜索所有可能的切分点,将连通部件切分成若干个相邻的片段,而1 3个相邻片段可能组成单个完整的字符。
图5为切分宽部件的双链弹性匹配方法的流程图。
在步骤S1221中,输入是一个较宽的连通部件,釆用八方向内边界跟踪算法搜索部件笔划像素的边界链。
在八方向内边界跟踪算法中,首先按从上到下,从左到右的顺序搜索,找到的第一个前景点一定是最左上方的边界点,记为A。它的右,右下,下,左下四个邻点中至少有一个是边界点,记为B。从幵始B找起,按右,右下,下,左下,左,左上,上,右上的顺序找相邻点中的边界点C。如果C就是A点,则表明已经转了一圈,过程结束;否则从C点继续找,直到找到A为止。判断是不是边界点很容易如果它的上下左右四个邻居都是黑点则不是边界点,否则是边界点。关于八方向内边界跟踪算法,可参见Digital Image Processing (4th Edition), W.K. Pratt,John Wiley & Sons, Inc. 2007。
在步骤S1222中,搜索边界链中一个最左的像素和一个最右的像素,边界链被这两个像素分离成了.上下两条独立的链。从左至右,上链上的
像素依次记为s,…,^,下链上的像素依次记为Q,…,a。
在步骤S1223中,通过以下操作对上下链进行匹配。对从左至右的每列,求上链中的最低点S-(,,yf)和下链中的最高点^-(x,,对),其中
(;c,力表示点的列和行坐标,如果它们满足o^少f-;f (其中r为一个
同字符笔划粗细程度相关的阈值),则匹配上下链中的这两点。 一般,上下链的长度不等,它们中大部分的点不被匹配,而仅有小部分的点被匹配上。显然,沿着一对匹配点的连线切分部件,部件必定增加一个连通域,即增加一个片段。
在步骤S1224中,通过以下操作从匹配对中选择切分点。对于匹配对序列中的每相邻两个匹配对(《,&)和d , ),其中下标索引1^H^OT, K厶,入+,",如果它们的索引间隔d满足
其中D是与字符行x-高度相关的阈值,则在匹配对(^,仏)附近存在一个切分点,可以简单地选择匹配对,仏)作为切分点。
可以检验第一个切分点和最后一个切分点的合理性,即如果片段包含的像素很少,则可以取消该切分点。
最后,在步骤S1225中,按照选择的切分点切分部件,得到的片段个数为切分点的个数加一。这样,独立部件集合中的某些较宽部件都被进一步分解成一些独立片段系列。
图6示出了第一实施例中的部件切分单元12将较宽部件切分成若干个片段的示例。
在图6 (a)中,左侧给出了一个包含4个粘连字符"hang"的宽部件,右侧给出了从它边界链分离出来的上下链,分别用粗线和细线表示。在图6 (b)中,上部给出了双链弹性匹配的结果,在图6 (b)的上部,有两条水平线,上面一条线上的点表示上链中的点,下面一条线上的点表示下链中的点,中间短连线表示上下链中的点被匹配上。图6 (b)的下部给出了相邻匹配对的下标索引之间的间隔曲线,间隔定义见式(1),其中水平虚线代表阈值D,只有在阈值之上的间隔,其前才可能存在一个切分点,简单地选择前面的匹配对作为切分点,图中已用空心圆点标出,注意第一个切分点被取消。在图6 (C)中,部件被5个切分点切分
成6个片段,此处1 2个片段可以组成单个字符。
通过切分单元10的上述操作,把字符串图像切分成一个片段的集合。该片段集合被输入到分隔符识别单元20。需要注意的是,在以上的说明中,使用了 "部件"和"片段"这两个术语,其中"片段"是指为了处理连笔而对"部件"进行进一步分割而得的产物。但是,它们都是指代通过对字符串图像进行分割而得的产物。另外,根据应用场合,有时(例如,在用于识别书写工整、没有连笔或断笔的字符串图像的情况下)并不需要将"部件"进一步分割成"片段"。因此,在以下的说明中,根据情况有时将"部件"和"片段"统称为"片段"。
分隔符识别单元20识别出集合中的唯一、@'和若干个分隔符'.',将片段的集合分隔成一些子集,每个子集对应Email地址串中的一个字段。
图7为第一实施例的手写体Email识别装置中的分隔符识别单元20所执行的处理的概要流程。
如图7所示,在步骤S21.中,搜索可能为、@、的片段,因'@'尺寸较大,且不会被双链匹配算法切分成碎片段,故先通过尺寸滤过一些不可能成为、@'的片段,具体而言,判断片段的宽度和高度是否分别大于预定的阈值,若判定为宽度或高度不大于预定的阈值,则认为该片段不可能是、@、。然后对于通过的片段,测试它们在、@'的改进二次判别函数(modified quadratic discriminant flmction, MQDF)上的输出值,并转换成置信度(类条件概率)。当然,在此之前需要预先通过、@、的训练样本集训练出一个改进二次判别函数。关于此处理可参见F.Kimura, K. Takashina,S. Tsumoka and Y. Miyake. Modified Quadratic Discriminant Functions andthe Application to Chinese Character Recognition. IEEE Trans. PatternAnalysis and Machine Intelligence, vol, 9, no. 1, Jan. 1987, pp. 149-153。
在步骤S22中,选择、@、所在的片段,因Email地址含有一个且仅一个'@'字符,故在所有置信度中,选择最大者对应的片段,作为'@、字符。
在步骤S23中,搜索所有分隔符点Y,分隔符Y—般不与其它笔划粘连,只会出现在部件中,如果部件外接矩形宽高较小,部件所处位置在字符行的下部,部件与前后部件之间存在一定间隔,则它应为一个分隔符。注意,分隔符'.'不可能连续出现,顶级域名中的字段长度应为2 3个字符,这些先验知识可以用来验证分隔符、.、的多余或遗失。
在步骤S24中,通过分隔符、@'和、.、把所有其它的片段隔离成若干个片段集,分别对应于Email地址中的若干个字段。
图8示出了第一实施例中的分隔符识别单元20将Email地址串分割成为若干个词的示例。如图8所示,细线框表示部件外接矩形,圆点表示宽部件的切分点,下划线表示词分割的结果、@、前的用户名包含1个词"jzhang2001", 、@、后的域名被3个分隔符V隔离成了 4个词"student","dlut" , "edu"和"cn"。
在通过分隔符把字符串图像隔离成了若干个片段集后,由字符识别单元30针对每个片段集进行识别。
在对字符识别单元30进行说明之前,先对词典数据库40进行详细的说明。
字段的识别顺序是从后往前进行的,因为顶级域名的信息决定了用户域名的所属范围。顶级域名包括,国家或地区的简写,如au,cn,jp,uk等,功能的简写,如ac/edu, eo/com, go/gov, net, org等。用户域名可以分为两类,教育类(ac/edu),如学校bnu, pku, dlut, scut, sjtu, tsinghua等,公共类(其它),如263, msn,eyou, mail等。因此,在本实施例中,可为域名中的词汇建立三个词典,顶级域名词典(top lexicon),教育域名词典(edulexicon)和公共域名词典(pub lexicon)。用户名的识别可以用到地区的姓氏信息和年份,如中国的百家姓,由于用户名比较复杂,采用三元组表示,如199, 200, ang, cao, che, dan, eng等。因此,可为用户名建立三元词典(trigram lexicon)。
因为Email地址中的域名具有层级结构,因此,在第一实施例中,词典数据库40中的多个词典具有层级结构。其中,顶级域名词典为最上层的词典。从右往左访问Email地址,首先遇到的是顶级域名词典(top—lexicon)中的词,如果识别出来的字段包含ac或edu,那么接下来会遇到教育网域名词典(edujexicon)中的字段,否则,接下来会遇到公共域名词典(pub—lexicon)中的字段,然后会遇到@字符,最后剩下用户名,其中每相邻的三个字符,可能是三元词典(trigram lexicon)中的
三元组。
图9为第一实施例的字符识别装置中的字符识别单元30所执行的处理的概要流程。
在步骤S31中,为词建立分割假设图。在本说明书中,分割假设图是指把所有可能的分割方式组合在一个具有唯一起点和唯一终点的有向图中,图中的结点代表分割出的"字符",即一个部件,或1 3个片段,结点上的多个权值代表该"字符"的多个识别候选的置信度,图中的有向边代表两个结点"字符"是左右相邻的,图中任何一条从起点至终点的路径代表一种分割方式。 一个词可以有很多种切法,每一种切法称之为一条从起点至终点的路径。
在步骤S32中,识别所有的部件对应的字符和所有1 3个相邻片段组成的"字符",给出1 3个候选识别结果及其识别后验概率。可采用常见的改进二次分类器MQDF,或者支持向量机分类器SVM,来进行该识别。因为该识别过程的细节不是本发明的要点,在此不进行详细的叙述。
在步骤S33中,列举所有可能的路径,对于每条路径,因为路径每个结点对应的"字符"可以有1 3个候选识别结果,所以该路径上可以组合出若干个等长的识别词。
在步骤S34中,处理用户名中的路径和识别词,对于每条路径,分析每个词的得分。在三元词库trigram lexicon中搜索词的相邻字符组成的三元组,如果没找到,则该字符的得分为其概率,否则三元组中字符得分为其概率加l;每条路径上可组合出多个等长的词,词的得分定义为其字符的得分平均,而得分最高的词称为该路径上的最优词,路径的得分取最优词的得分。
在步骤S35中,处理域名中的路径和识别词,对于每条路径,分析每个词的得分。对于顶级域名中的词,在top lexicon中搜索,对于教育用户域名中的词,在edu lexicon中搜索,对于公共用户域名中的词,在pub lexicon中搜索,如果没找到,则该词的得分为其字符识别概率的平均,否则该词的得分再加h每条路径上可组合出多个等长的词,而得分最高的词称为该路径上的最优词,路经的得分取最优词的得分。
在步骤S36中,从图的起点至终点,有很多条不同的路径,而得分最高的路径为最优路径。
在步骤S37中,最优路径上的最优词是分割假设图中得分最高的词,作为识别的结果输出该词。
图10示出了本实施例中的字符识别单元30为词建立分割假设图和选择最优路径上的最优词作为识别结果的示例。
在图10 (a)中,给出了为域名中词"dlut"建立的分割假设图和最优的分割路径。两个黑色的大圆点表示图的起点和终点,红色的箭头表示图的有向边,而每个部件或1 3片段组成的字符图像表示图的结点,每个结点下的字符和数字表示识别候选字符和对应的识别概率。分类器MQDF设置了拒识装置(若第二或第三候选者的输出大于第一候选者的减去某阈值,则保留它,否则删除它),仅为每个候选者提供了 1 3个候选。此外,若3个相邻片段组成"字符"的识别结果不是字符'm、和'w、,则拒识该"字符",即标记"'?'0.000"。被拒识的"字符"与其它字符用虚线箭头连接,表示这条路径的得分必定小于最优路径。最优的分割路径已用粗实线箭头标出,因在edu lexicon中搜索到词"dlut",故路径的得分计算如下,score = (0.945+0.167+0.753+0.886)/4 + 1.000 - 1.688。
在图10 (b)中,给出了为用户名中词"jzhang2001"建立的分割假设图和最优的分割路径。同样,在识别1个片段组成的"字符"时,如果片断所含笔划数目太少,则它仅是残缺笔划,被拒识;在识别3个片段组成的"字符"时,如果识别结果不是'm、和、w',则它是包含多余笔划的字符,被拒识。最优的分割路径已经粗实线箭头标出,因在trigmmlexicon中,"zha", "han", "ang", "200"和"001"都被搜索到,故路径的得分计算如下,score = (0.882+1.315+1.682+1.696+1.862+1.522+1.755+1.119+1.509+1.754)/10 = 1.410。
17图11示出了最优路径上的字符切分结果、识别候选结果和Email地址整串识别结果的示例。图中第一行给出了最优分割路径上的字符,字符的连笔尾被自动修剪;第二行给出了对应的识别候选者,最有词对应的候选者用红色椭圆标出;第三行给出了手写体Email地址的最终识别结果。
根据上面所述的第一实施例,由于充分利用了 Email地址等中的字符串中包含的先验知识,首先将字符串图像切分成片段,识别出分隔符,
从而把字符串图像分割为多个段,针对每个段,基于预先建立的词典进行识别。因此,即使对于包含连笔或断笔的手写字符串,也能够高精度地进行识别。
第二实施例
下面对本发明的示例性的第二实施例进行说明。
第二实施例的字符识别装置1的基本结构与上述第一实施例相同,包括切分单元10、分隔符识别单元20、字符识别单元30和词典数据库40,不同之处在于字符识别单元30所进行的处理。下面对第二实施例中字符识别单元30所进行的处理进行详细说明。在下面的说明中,对与第一实施例相同或相应的部分赋予相同的标号,并省略重复的说明。
在上述的第一实施例中,如图9所示,字符识别单元30对于由分隔符分隔开的每个段,沿着不同的切分路径进行识别,即以切分的片段为单位进行识别。不同于此,在第二实施例中,对域名中的词,如jzhang2001@student.dlut.edu.cn中的"student" , "dlut" , "edu" and "cn"等,进行整体识别。
图12是示出了第二实施例的字符识别单元30所进行的识别处理的大致流程图。
以"jzhang2001@student.dlut.edu.cn"为例,从右往左,字符识别单元30首先识别顶级域名中的词,即"cn"和"edii"。当判断顶级域名词中出现了 "edu"时,则接下来的词应该属于教育网客户域名。字符识别单元30进入左支流程,识别教育网客户域名中的词,即"dlut"和"student"。当判断遇到@字符时,则接下来的词应该属于用户名。由于用户名是用户申请email地址时填写的,无法事先为它们建立整体识别的词库。跟第 一实施例一样,字符识别单元30采用基于分割的识别方法,利用三元组 词库信息,识别用户名中的词,即"jzhang2001"。最后,完整输出识别 出的email地址串"jzhang2001 @studentdlut.edu.cn "。
对于词的整体识别,其过程与单个字符的识别类似,即预先训练若 干分类器,识别时先提取模式的特征,然后将特征输入各个分类器,最 后得到一些识别候选及对应置信度。因为识别处理的细节不是本发明的 要点,因此在此不作详细的说明。
根据上面所述的第二实施例,除了与上述第一实施例同样的优点之 外,由于利用预先建立的词典对域名中的字段进行整体识别,更加充分 地利用了 Email地址等中包含的先验知识,更够更加准确地对手写体的 字符串进行识别。
第三实施例
下面对本发明的示例性的第三实施例进行说明。
第三实施例的字符识别装置13是上述第一或第二实施例的改进。第 三实施例的字符识别装置13包括与上述第一或第二实施例同样的切分单 元10、分隔符识别单元20、字符识别单元30和词典数据库40,不同之 处在于还包括矫正单元50和后处理单元60。下面对第三实施例的字符识 别装置13进行详细说明。在下面的说明中,对与第一和第二实施例相同 或相应的部分赋予相同的标号,并省略重复的说明。
在第三实施例中,在进行识别处理之前,首先由矫正单元50对所输 入的字符串图像进行矫正,然后切分单元10、分隔符识别单元20、字符 识别单元30对矫正后的字符串图像进行与上述第一和第二实施例相同的 处理。另外,可以通过后处理单元60对所识别的Email地址字符串进行 有无错误的检査。
图14为第三实施例的字符识别装置3中的矫正单元50所执行的处 理的概要流程。该流程主体上包含两个处理行倾斜矫正51和字体倾斜 矫正52。对于手写体字符串,先执行行倾斜矫正51,矫正手写体字符串 行的倾斜,然后再执行字体倾斜矫正52,矫正手写字符串字体的倾斜。
19图15为手写体字符串行倾斜矫正51的流程图。
如图15所示,在步骤S511中,先把输入的手写体Email地址的灰 度图像转化为二值图像,然后以笔划像素构造训练数据集。设像素^是 一个笔划像素,如果采用线性脊回归y-w。 + Mvc,则构造如下的训练样本
点、
(x,力,其中x-(l,心—
如果采用p次多项式脊回归;^w。+w,x + Mvc2+…+ ^ ,则构造如下 的训练样本点 .
m和n分别表示图像的行数和列数。所有的笔划像素构成了一个大 的训练数据集((x,,W,…,(x,,;^,用于拟合出一个超平面"/(x)1、。
在步骤S512中,给定训练样本数据集或训练样本集的子集,求解该 线性或多项式脊回归问题。设系数向量w-(w。,w,,…,,)、训练样本集输
入排列成矩阵X:^K,x2,…,x,]"(一',输出排列成向量y-(",h,…,少,)、 则多项式脊回归的解为
w = (XrX + ;i/I)-'Xry (2)
其中I是单位矩阵,义是一个小的正常数,例如;i-o.ooi,线性脊回 归是/7 = 1时的特例。
在步骤S513中,判断当前的迭代次数是否满足预设值(如4次),
或迭代结果是否满足要求(如迭代前后系数变化量很小)。若不满足要求, 则转到步骤S514,从训练数据样本集(",30,…,",y,M中,选择训练数据 子集,即当样本点",h)位于带子区域之内
ct"j/(xa) + ct (3)
时,则把它加入到子集中,其中a = -/(x,))2是所有训练点在回归
曲线上下分布的标准差。这样所有界外的点在下一次迭代步骤S512之前
被删除了,使得下一次的迭代结果更加地贴近字符串行的中线。若满足 要求,则转到步骤S515,矫正字符的行倾斜,即每个笔划像素&按照如
下公式调整行坐标
"0.5m + (!' — /(x|x = +)) (4)
20新的行坐标/'为实数,可以通过线性插值将笔划像素分到相邻上下两 点,得到矫正后的字符串灰度图像。
图16为手写体字符串字伴倾斜矫正52的流程图。
如图16中所示,方法是要在{-iVA,…,0,…,+iV/^这2N+l个角度中,选
择出一个最优者作为字体的倾斜角度,其中A是角度间隔,在本实施例中,
例如可取A^, W限制了角度范围,可取^ = 30。
在步骤S521中,初始循环变量/1 = -^。在步骤S522中,假定字符 串按照斜体角A--M矫正,即对每个笔划像素^,按照如下公式求解其
矫正后的列坐标
/ = _/ + 0' — 0.5w) tan(a4) ( 5 )
然后统计矫正后图像各列的"笔划像素的数目"或者"背景亮度减
去笔划像素灰度之和",得到笔划像素在列上的分布曲线,归一化曲线, 得到各列上的概率P,。
步骤S523 ,采用信息论中的Shannon熵
.£A=-^>;log(P;) (6)
来衡量倾斜矫正的好坏,熵值越大,说明倾斜矫正的效果越好。
其中,&代表按照斜体角^=-丛矫正图像后,计算得到的Shannon熵。
步骤S524,判断循环变量是否满足终止条件,即是否所有的候选角
度测试完毕。若不满足,则转步骤S525,继续测试。若满足,则转步骤 S526,从2iV+l个熵值中,选择一个最小熵&,它对应的斜体角 .^rA
为最优的斜体角。在步骤S527中,按照最优斜体角^-A'A矫正字符串
的斜体倾斜,具体矫正方法仍按照公式(5)进行计算。 最后得到了经过行倾斜和字体倾斜矫正后的图像。 图17示出了本发明预处理单元矫正行倾斜和字体倾斜的示例。 在图17 (a)中,给出了一个手写体Email地址字符串样本,可见手 写体字符行是弯曲的。采用^ = 5次多项式脊回归,经过4次的递归训练 之后,得到拟合结果^^/(x)如图中红色实线所示,而两条虚线对应了子 带边界3^/(x)icr。可见绝大部分的字符像素位于虚线带子区域之内,而中间实线代表了字符串行的弯曲走向。在图17 (b)中,给出了经过行倾 斜矫正后的上述字符串样本,可见所有的字符位于图像的中间水平直线。
在图17 (c)中,给出了 Shannon熵随着斜体角(单位弧度)变化而 变化的曲线,其中斜体角度变化范围为[-30',+3(T],角度采样间隔为A-3、 共有2iV + l-21中角度。如图所示,熵先随着角度单调地减小,当"=9。时, 熵到达最低点,然后随着角度单调地增大。在图17(d)中,给出了按"-9。 经过斜体倾斜矫正后的上述字符串样本,可见手写斜体变成了正常字体。
在对输入的字符串图像经过上述的矫正处理后,由切分单元IO、分 隔符识别单元20、字符识别单元30对矫正后的字符串图像进行与上述第 一和第二实施例相同的处理。在此省略重复的说明。
在经过切分单元10、分隔符识别单元20、字符识别单元30的处理 之后,通过后处理单元60对所识别的字符串进行检查和修正。
在后处理单元60中,预先设置了 Email地址的合法性规则,根据这 些合法性规则判断所识别出的Email地址字符串是否正确。
在本实施例中,后处理单元60进行两个类型的判断。第一,基于域 名组合规则的判断。域名中的字段的组合具有一定的规则,例如,在域 名中识别出了 "sina"和"com"两个词,经过检查"sina.com"是一个 合法的完整域名;如果识别出了 "sina", "edu"和"cn",经过检査 "shm.edu.cn"不是一个合法的完整域名。第二,用户名中相似字符的正 确识别判断,如<0,禾卩'o,, <1,和T, '2,和'z,, '9,和'g,,
等。通过经验规则来进行这个判断,例如,如果字符的左边和右边 都是数字,则当前字符可能为数字,如果字符的左边和右边都是字母, 则当前字符可能为字母。在判断为识别错误的情况下,后处理单元60提 示用户进行人工改正,并将改正后的字符串输出为最终的识别结果。
根据上面所述的第三实施例,由于在进行识别之前对手写字符串的 行倾斜和字体倾斜进行矫正,对矫正后的字符串图像进行识别,另外, 在识别后通过后处理单元进行检查和修正。因此,可以在上述第一和第 二实施例的基础上,更加精确地对手写体的字符串信息进行识别。
以上以手写Email地址的识别为例对本发明的示例性的第一至第三
22实施例进行了详细说明。需要说明的是,虽然在上面以Email地址的识
别为例对本发明进行了说明,但如上所述,本发明不限于Email地址的
识别,而可以应用于网络地址、人名等任何由分隔符划分为一个以上的
字段、且至少一个字段具有固定模式的字符串信息的识别。
另外,本发明也不限于手写体字符串的识别,而同样可以应用于印 刷体字符串的识别。
另外,上面根据本发明的字符识别装置对本发明进行了说明, <旦是 本发明同样可以实施为该字符识别装置所实现的字符识别方法,另外, 还可以实施为使计算机执行该字符识别方法的程序,以及记录了该程序 的计算机可读存储介质。
产业上的可应用性
本发明可以应用于由分割副分隔开的、由多个字段组成的、各个字 段具有一定的固定性的字符串的识别,特别适合于手写体的上述信息的 识别。
权利要求
1. 一种字符信息识别装置,其输入包含字符串的字符串图像,由该字符串图像识别出所述字符串,其中该字符串被分隔符划分为两个以上的字段,其特征在于,该字符信息识别装置包括切分单元,其将所述字符串图像切分成多个片段;分隔符识别单元,其基于所述切分单元切分后的所述片段,识别出分隔符,从而将所述多个片段分成多个片段集;词典数据库,其中存储了多个预定的字符组;以及识别单元,其对于各个所述的片段集,将该片段集的至少一部分识别为所述词典数据库中的字符组,从而识别出各个所述的字段。
2. 根据权利要求1所述的字符信息识别装置,其进一步包括 矫正单元,其矫正所述字符串图像的行倾斜和/或字体倾斜。
3. 根据权利要求1或2所述的字符信息识别装置,其中所述识别单元将所述片段集作为一个整体,识别为所述词典数据库 中的字符组。
4. 根据权利要求1或2所述的字符信息识别装置,其中 所述切分单元进一步判断所述片段是否包含单个的字符,并按照多个切分方式对判定为可能不是单个字符的片段进行进一步切分;所述识别单元对于每个所述的片段集,在各个切分方式下,基于所 述词典数据库将每个片段识别为一个字符,将所得到的最优识别结果作 为与该片段集相对应的字段。
5. 根据权利要求1所述的字符信息识别装置,其中 '所述词典数据库包含分别针对各个所述字段的两个以上的词典,并且所述词典具有层级关系,上层的词典确定了下层的词典。
6. —种从包含字符串的字符串图像中识别出所述字符串的字符信息识别方法,其中所述字符串被分隔符划分为两个以上的字段,其特征在于,该字符信息识别方法包括以下步骤将所述字符串图像切分成多个独立的片段;基于所述切分步骤中切分得到的所述片段,识别出分隔符,从而将 所述多个片段分成多个片段集;对于各个所述的片段集,将该片段集的至少一部分识别为预先准备 的词典数据库中的字符组,从而识别出各个所述的字段,其中所述词典数据库中存储了多个预定的字符组。
7. 根据权利要求6所述的字符信息识别方法,该方法进一步包括 在将所述字符串图像切分成多个独立的片段之前,矫正所述字符串图像的行倾斜和/或字体倾斜。
8. 根据权利要求6或7所述的字符信息识别方法,其中 在对所述片段集进行识别的步骤中,将所述片段集作为一个整体,识别为所述词典数据库中的字符组。
9. 根据权利要求6或7所述的字符信息识别方法,其中 在将所述字符串图像切分成多个片段的步骤中,判断切分所得的片段是否包含单个的字符,并按照多个切分方式对判定为可能不是单个字 符的片段进行进一步切分;在对所述片段集进行识别的步骤中,对于每个所述的片段集,在各 个切分方式下,基于所述词典数据库将每个片段识别为一个字符,将所 得到的最优识别结果作为与该片段集相对应的字段。
10. 根据权利要求6所述的字符信息识别方法,其中所述词典数据库包含分别针对各个所述字段的两个以上的词典,并且所述词典具有层级关系,上层的词典确定了下层的词典。
全文摘要
本发明提供了一种字符信息识别装置和方法,其输入包含字符串的字符串图像,由该字符串图像识别出所述字符串,其中该字符串被分隔符划分为两个以上的字段。本发明的字符信息识别装置包括切分单元,其将字符串图像切分成多个片段;分隔符识别单元,其基于切分后的片段,识别出分隔符,从而将所述多个片段分成多个片段集;词典数据库,其中存储了多个预定的字符组;以及识别单元,其对于各个片段集,将该片段集的至少一部分识别为词典数据库中的字符组,从而识别出各个字段。根据本发明,可以大大提高手写体的Email地址、网络地址等信息的识别精度,即使在存在笔画粘接的情况下,也可以在满意的精度下进行识别。
文档编号G06K9/00GK101520851SQ200810080950
公开日2009年9月2日 申请日期2008年2月29日 优先权日2008年2月29日
发明者堀田悦伸, 俊 孙, 皆川明洋, 直井聪, 藤本克仁, 郑大念 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1