手写识别的方法和系统转让专利

申请号 : CN200310116550.1

文献号 : CN1619583B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 镇立新葛勇黄建成

申请人 : 摩托罗拉公司

摘要 :

本发明公开一种手写识别的方法和系统,其对于识别包含多个笔划的表意字符尤其有效,这些笔划通常是根据标准顺序书写的。该方法包括接收书写在电子设备的用户接口上的手写输入字符的表示的步骤(步骤105)。然后从所述输入字符中提取方向特征向量和笔划段特征向量(步骤125和135)。最后,通过将所述方向特征向量和所述笔划段特征向量与模型字符进行对比从而确定匹配的候选字符(步骤145)。

权利要求 :

1.一种手写识别的方法,其包括:

接收书写在电子设备的用户接口上的手写输入字符的表示;

从所述输入字符中提取方向特征向量;

从所述输入字符中提取笔划段特征向量;和

通过将所述方向特征向量和所述笔划段特征向量与模型字符进行对比从而确定匹配的候选字符;和

仅将所述方向特征向量与所述模型字符对比从而提供一个短的候选字符列表及其相应的第一置信分数的步骤。

2.如权利要求1所述的方法,其进一步包括通过进行平滑、噪声删除以及大小归一化处理来对所述手写输入字符进行预处理的步骤。

3.如权利要求1所述的方法,其进一步包括对所述手写输入字符进行预分类的步骤。

4.如权利要求1所述的方法,其中所述确定匹配的候选字符的步骤包括将所述短的候选字符列表及其相应的第一置信分数与所述笔划段特征向量进行对比的步骤。

5.如权利要求1所述的方法,其进一步包括计算所述手写输入字符的的步骤,其中根据下式计算所述无序函数D(S):

D(S)=Σ1i<jnd(si,sj),式中d(si,sj)=2,ifxixjandyiyj1,ifxi<xjandyiyj1,ifxixjandyi<yj0,ifxi<xjandyi<yj,式中si=(xi,yi)且sj=(xj,yj),其中si和sj是两个手写笔划的起始点。

6.如权利要求4所述的方法,其中所述将所述短的候选字符列表及其相应的第一置信分数(vi2)与所述笔划段特征向量进行对比的步骤可包括:

提供相应的第二置信分数(vi3);和

根据下述公式将所述第一置信分数(vi2)与所述第二置信分数(vi3)合并:

vi=θ2·vi2+θ3·vi3,式中θ2+θ3=1,且θ2和θ3是根据经验确定的。

7.如权利要求6所述的方法,其中θ2和θ3根据D(S)是否小于T(S)而变化,其中,T(S)是经验确定的笔划数决定的门限,而D(S)是根据下述公式计算的无序函数:D(S)=Σ1i<jnd(si,sj),式中d(si,sj)=2,ifxixjandyiyj1,ifxi<xjandyiyj1,ifxixjandyi<yj0,ifxi<xjandyi<yj,式中si=(xi,yi)且sj=(xj,yj),其中si和sj是两个手写笔划的起始点。

8.如权利要求7所述的方法,其中所述匹配的候选字符是具有最大vi值的字符。

9.一种用于手写识别的系统,其包括:

微处理器;

与所述微处理器可操作地相连的只读存储器(ROM);

与所述微处理器可操作地相连的可编程存储器;和

与所述微处理器可操作地相连的输入板;

所述微处理器可操作地执行存储在所述ROM中的代码,以接收书写在所述输入板上的手写输入字符的表示,从所述输入字符中提取方向特征向量,从所述输入字符中提取笔划段特征向量,通过将所述方向特征向量和所述笔划段特征向量与储存在所述可编程存储器中的模型字符进行对比来确定匹配的候选字符,其中微处理器通过仅仅将所述方向特征向量与所述模型字符进行对比,提供一个短的候选字符列表及其相应的第一置信分数。

10.如权利要求9所述的系统,其中,所述处理器通过进行平滑、噪声删除和大小归一化处理,进一步可操作地对所述手写输入字符进行预处理。

11.如权利要求9所述的系统,其中,所述微处理器进一步可操作地对所述手写输入字符进行预分类。

12.如权利要求9所述的系统,其中,所述微处理器进一步可操作地将所述短的候选字符列表及其相应的第一置信分数(vi2)与所述笔划段特征向量进行对比。

说明书 :

技术领域

本发明一般涉及手写识别处理。本发明特别适用于(但不必限制于)识别手写的表意字符。

背景技术

几十年来,印刷文本的计算机识别一直面临着烦恼的技术难题。许多光学字符识别(OCR)技术只是在最近才得到了改进,能够高准确度地识别扫描的文本文献。但是这样的OCR技术一般仅能够转换打字机或电子打印机打印的文本。手写字符的计算机识别仍旧是非常困难的技术挑战。
用于识别手写字符的现有方法通常包括高分辨率的模板,除了书写文本的两个物理维度之外,其还捕捉与书写文本操作相关的时间维度。通常使用电子图形输入板来创建这样的模板,当笔、触针或手指接触输入板时,输入板会记录下文本的笔划。随后,通过使用各种模式识别技术,将对应于输入手写字符的方向特征向量与模型字符的模板进行匹配。模型字符的模板包括来自每个字符的大量输入样本的方向特征向量的统计平均值。理想情况下,使用这样的电子图形输入板的书写者能够看到他或她所写的东西(诸如通过使用图形用户界面上的电子“墨水”),因此书写者可以控制文本的清晰度。
但是,诸如移动电话和个人数字助理(PDA)的某些手持设备包括很小的触摸板,用户必须在其上一个叠一个的书写字符,而不能接收到任何的反馈,例如接收不到来自图形用户界面、显示出设备怎样转换该手写输入的反馈。因此,这是在“盲”写字符。不出意外的话,写在这样的触摸板上的字符很容易包括大量字符形状上的失真,尤其是对于更复杂的表意字符,诸如许多汉语和日语字符。因此,写在这样的触摸板上的字符的准确电子识别就尤其困难了。
因此,需要一种用于手写识别的改进方法和系统,其能够克服大量的字符形状失真(诸如由于在触摸板上盲写而造成的失真),并且能够识别所需的手写字符。

发明内容

根据本发明的一个方面,本发明是一种手写识别的方法,其包括如下步骤:接收书写在电子设备的用户接口上的手写输入字符的表示;从所述输入字符中提取方向特征向量;从所述输入字符中提取笔划段特征向量;以及通过将所述方向特征向量和所述笔划段特征向量与模型字符进行对比从而确定匹配的候选字符。
该方法还可包括通过进行平滑、噪声删除以及大小归一化处理来对所述手写输入字符进行预处理的步骤。
该方法还可包括对所述手写输入字符预分类的步骤。
该方法还可包括通过仅将所述方向特征向量与所述模型字符对比从而提供一个短的候选字符列表及其相应的第一置信分数(vi2)的步骤。
确定匹配的候选字符的步骤可包括将所述短的候选字符列表及其相应的第一置信分数(vi2)与所述笔划段特征向量进行对比的步骤。
该方法可进一步包括计算所述手写输入字符的无序函数D(S)的步骤。
可以根据下述公式来计算无序函数D(S):
D(S)=Σ1i<jnd(si,sj),式中
d(si,sj)=2,ifxixjandyiyj1,ifxi<xjandyiyj1,ifxixjandyi<yj0,ifxi<xjandyi<yj,
式中si=(xi,yi)且sj=(xj,yj),其中si和sj是两个手写笔划的起始点。
将所述短的候选字符列表及其相应的第一置信分数(vi2)与所述笔划段特征向量进行对比的步骤可包括:提供相应的第二置信分数(vi3),并根据下述公式将所述第一置信分数(vi2)与所述第二置信分数(vi3)合并:
vi=θ2·vi2+θ3·vi3,式中θ2+θ3=1,且θ2和θ3是根据经验确定的。
θ2和θ3可以根据是否D(S)<T(S)而变化,其中T(S)是经验确定的笔划数决定的门限,而D(S)是根据下述公式计算的无序函数:
D(S)=Σ1i<jnd(si,sj),式中
d(si,sj)=2,ifxixjandyiyj1,ifxi<xjandyiyj1,ifxixjandyi<yj0,ifxi<xjandyi<yj,
式中si=(xi,yi)且sj=(xj,yj),其中si和sj是两个手写笔划的起始点。
匹配的候选字符可以是具有最大vi值的字符。
根据本发明的另一方面,本发明是一种用于手写识别的系统,其包括:微处理器;与所述微处理器有效相连的只读存储器(ROM);与所述微处理器有效相连的可编程存储器;以及与所述微处理器有效相连的输入板;所述微处理器有效地执行存储在所述ROM中的代码,以接收书写在所述输入板上的手写输入字符的表示,从所述输入字符中提取方向特征向量,从所述输入字符中提取笔划段特征向量,通过将所述方向特征向量和所述笔划段特征向量与储存在所述可编程存储器中的模型字符进行对比来确定匹配的候选字符。
通过进行平滑、噪声删除和大小归一化处理,微处理器可进一步有效地对所述手写输入字符进行预处理。
微处理器可进一步有效地对所述手写输入字符进行预分类。
通过仅仅将所述方向特征向量与所述模型字符进行对比,微处理器可进一步有效地提供一个短的候选字符列表及其相应的第一置信分数(vi2)。
微处理器可进一步有效地将所述短的候选字符列表及其相应的第一置信分数(vi2)与所述笔划段特征向量进行对比。
在本说明书及权利要求书中,术语“包括(comprises、comprising)”或类似的术语意指非排他性的包含,因此,包括一系列组件的方法或装置不仅仅包括这些已示出的组件,还可很好地包括那些没有明确列出的其它组件.

附图说明

为了使本发明易于理解并付诸实施,现在将结合附图所示对优选实施例做引用,其中相似的标号代表相似的组件,在附图中:
图1是根据本发明的一个实施例、图示说明了确定最好地匹配一个手写输入字符的表示的匹配模型字符候选的手写识别方法的流程图;
图2是汉字字符的笔划段特征的示意图;
图3是根据标准笔划规则书写的汉字字符的一个实例;
图4是根据本发明、图示说明了产生第二组置信分数的匹配过程的示意图;
图5是根据本发明的实施例,图示说明了确定权重因子θ2和θ3的方法的流程图;
图6是图示说明了包含有可在其上书写手写字符的表示的输入板的移动电话示意图。

具体实施方式

参看图1,该流程图根据本发明的一个实施例、图示说明了确定匹配模型字符候选的手写识别方法100,该匹配模型字符候选最好地匹配了手写输入字符的表示。方法100始于步骤105,在这里接收手写输入字符的表示。在步骤110对输入字符进行预处理,在步骤115计算用于创建输入字符、与笔划顺序有关的无序函数D(S)。在步骤120,对输入字符进行预分类,以创建匹配候选字符的第一短列表。然后在步骤125从输入字符中提取出方向特征向量。在步骤130,将方向特征向量与对应于匹配候选字符的第一短列表的模型字符进行对比,以创建匹配候选字符的第二短列表以及相关的第一置信分数(vi2)。在步骤135,从输入字符中提取出笔划段特征向量。然后在步骤140将笔划段特征向量与匹配候选字符的第二短列表进行对比,以创建第二组置信分数(vi3)。最后,在步骤145,通过确定一个匹配候选字符来识别手写输入字符。通过将第一置信分数(vi2)和第二置信分数(vi3)进行合并来确定匹配候选字符。
下面提供方法100的进一步的细节。可以将方法100结合进诸如个人数字助理(PDA)和移动电话的手持电子设备中,以提供手写识别功能。在步骤105,可以在电子设备的用户接口上书写手写输入字符的表示。在步骤110,预处理可以对输入字符进行平滑、噪声消除以及大小归一化。在后面的说明书中将描述无序函数D(S)。在步骤120,通过将字符集中的所有字符首先分组到(例如)几百个每个都包含数十个字符的小组中,从而对输入字符进行预分类。对于某些语言,诸如汉语,字符集中可能有超过一万个字符。然后,训练模型字符以代表每个组,然后将输入字符与每个模型字符进行对比。然后,由对应于最佳匹配的组中的字符组成候选字符的第一短列表。
在步骤125,通过本领域所公知的方法,方法100从输入字符中提取出方向特征向量.例如,在预处理步骤110首先使数字化的输入字符的像素适于N*N的栅格并归一化,从而使得输入字符的大小与用于创建模型字符方向特征向量的模型字符的大小相同.然后,将N*N栅格的每个元素细分成甚至更细的网格,然后分析以提取方向特征向量.方向特征向量的一个例子是8维方向特征向量.8维方向特征向量的每个维度对应于用于创建输入字符的一个笔划方向.通过将圆周划分成45度的等分,可以创建八个笔划方向.本领域技术人员将认识到,根据本发明,方向特征向量也可以使用更多或者更少的维度.然后,根据元素内实际笔划方向的最佳匹配,给包含了来自手写笔划的像素的网格的每个元素分配八个维度之一.然后将网格元素的方向维度求和,以创建方向特征向量.8维方向特征向量定义为V={v1,v2,v3,v4,v5,v6,v7,v8},其中,vi的值是网格中第i个方向维度的计数,式中(1≤i≤8)。然后,将N*N栅格每个元素内的8维方向特征向量进行平均。最后,得到整个输入字符的8*N*N维的方向特征向量。
模型字符特征向量包括来自每个字符的多个输入样本的特征向量的统计平均值。模型字符特征向量包括字符集中所有字符的特征向量。
接下来,方法100在步骤130继续,在这里将方向特征向量与模型字符特征向量进行对比,以创建候选字符的第二短列表。候选字符的第二短列表是候选字符的第一短列表的子集。然后,基于输入字符的方向特征向量与候选字符的方向特征向量之间距离的最佳匹配比较,将置信分数(vi2)分配给第二短列表上的候选字符。向量之间的距离例如可以是基于欧氏距离(Euclidean distance)或城市街区距离(city block distance)的。
然后,方法100在步骤135继续,在这里从输入字符中提取出笔划段特征向量。通过使用输入字符的第三维度(时间维度)来得到笔划段特征向量。参看图2,图示说明了汉字字符的笔划段特征。输入字符的本地最大方向角变化之间的书写笔划段定义了笔划段特征。然后得到每段的二维向量(dx,dy),其中dx和dy是段的起始和结束点之间的坐标距离。根据输入字符的复杂度,用于定义输入字符的笔划段特征向量的数目也会变化。
笔划段特征向量用于确定是否以类似于预测的方式书写输入字符。例如,汉字字符具有标准笔划顺序,通常在连笔书写字符时会遵守笔划的顺序。当书写汉字字符时,标准笔划顺序通常遵循下面的规则:1)先左后右;2)先上后下。参看图3,示出了根据上面的标准笔划规则书写的汉字字符的一个例子。如图3中所示,标准笔划顺序是“s1,s2,s3,s4”,其中每一笔中的黑点表示笔划的起始点。注意到,s2在s1的下面,s3在s2的右面,s4在s3的下面、s3的右面。
在步骤140,方法100继续,在这里将从输入字符得到的上述笔划段特征向量与匹配候选字符的第二短列进行对比,以创建第二组置信分数(vi3)。参看图4,图示说明了产生第二组置信分数(vi3)的对比过程的示意图。将对应于匹配候选字符的第二短列的笔划的笔划段模型序列与输入字符的笔划段特征向量进行对比。笔划段模型序列包括概率分布函数(PDF),诸如高斯混合PDF(Gaussian mixture PDF)。来自输入字符的特征向量的数目可与来自匹配候选字符的笔划段模型的数目不一致。因此使用动态规划(DP)来将模型序列与输入字符进行对比。计算置信分数(vi3)作为每个对比的一个量度。在DP处理期间,笔划段特征向量与分段模型之间的置信分数被确定为特征向量与分段模型匹配的似然度。
最后,在步骤145,方法100通过将第一置信分数(vi2)和第二置信分数(vi3)合并来确定最佳匹配候选字符,从而识别输入手写字符。根据下面的公式合并两组置信分数:
vi=θ2·vi2+θ3·vi3,式中θ2+θ3=1。
选取与最大值vi相匹配的候选字符作为最佳匹配候选字符。θ2和θ3是用于确定哪组置信分数(vi2还是vi3)更可能给出准确识别结果的权重因子。
参看图5,图示说明了确定θ2和θ3的值的方法500的流程图。首先,在步骤505,方法500确定输入字符是以连笔书写的还是使用多个单独笔划书写的。连笔书写的输入字符最有可能符合标准笔划顺序;因此,如果以连笔书写输入字符的话,方法500会立即输出值θ2=a1和θ3=a2,其中a1和a2是通过将测试输入字符与模型候选字符进行比较而根据经验确定的。另外,如果在步骤505确定输入字符是使用多个单独笔划书写的,则方法500继续到步骤510,在这里计算无序函数D(S)。无序函数D(S)是输入字符的笔划顺序与标准笔划顺序一致程度的量度。例如,在本发明的实施例中,对于汉语来说,D(S)可以如下所述地进行计算。
首先,定义d(si,sj),其描述了两笔划之间的关系,其中si=(xi,yi)和sj=(xj,yj)是两笔划的起始点坐标。然后按照下面的公式定义d(si,sj):
d(si,sj)=2,ifxixjandyiyj1,ifxi<xjandyiyj1,ifxixjandyi<yj0,ifxi<xjandyi<yj(公式2)
注意到,公式2符合如上结合图3所解释的限定汉语标准笔划顺序的规则。将公式2应用于图3所示的汉语字符,可得到d(s1,s2)=1,d(s1,s3)=0,d(s1,s4)=0,d(s2,s3)=1,d(s2,s4)=0,d(s3,s4)=0。
无序函数定义了输入字符的所有笔划之间的关系。假设S=s1s2...sn是一组笔划序列,那么D(S)可以被定义为:
D(S)=Σ1i<jnd(si,sj).(公式3)
例如,重新参看图3中所述的汉语字符,如果该字符是按照其标准顺序书写的,即S=s1s2s3s4,那么使用公式2和3可以计算得到D(S)=2。如果字符是按照相反顺序书写的,即S=s4s3s2s1,那么可以计算出D(S)=10。表1给出了按照其它用于创建汉语字符“天(Tian(1))”的笔划顺序的D(S)的其它值的例子。
表1
  S   D(S)   s4s1s2s3   8   s1s4s3s2   6   s3s2s4s1   6   s2s1s3s4   2   ...   ...
一般来说,根据标准笔划顺序书写的输入字符将具有较小的D(S)值,而以非标准顺序书写的字符将具有较大的D(S)值.
再次参看图5,在计算无序函数D(S)之后,方法500继续到步骤515,在这里将D(S)的值与门限值T(S)进行比较。T(S)是基于根据不同的笔划顺序书写的模型字符的样本而根据经验确定的。例如,再次参看图3,四笔划字符的门限可被设置为T=4,由此笔划序列s1s2s3s4和s2s1s3s4就可以被接受作为标准顺序序列,其它的序列则被视为非标准顺序。
如果D(S)<T(S),这意味着输入字符可能是按照标准顺序书写的,那么方法500就会再次输出值θ2=a1和θ3=a2。但是,如果D(S)>T(S),这意味着输入字符不可能是按照标准顺序书写的,那么方法500就会输出另一组值θ2=b1和θ3=b2。
参看图6,以诸如可用于实现本发明的上述方法的移动电话601的形式图示说明了电子设备或系统的示意图。电话601包括连接并与处理器603通信的射频通信单元602。用户接口(在本实施例中,形式上是显示屏605、键区606和输入板619)也连接并与处理器603通信。如本领域技术人员所显而易见的,当显示屏是触摸屏时,输入板619可以是显示屏605的一部分。
处理器603包括具有相关联的只读存储器(ROM)612的编码器/解码器611,ROM 612用于储存由移动电话601发送或接收的编解码语音或其它信号的数据。处理器603还包括微处理器613,微处理器613通过通用数据和地址总线617连接到编码器/解码器611及其相关联的只读存储器(ROM)614、随机存取存储器(RAM)604、静态可编程存储器616和可拆卸SIM模块618。其中,静态可编程存储器616和SIM模块618都可以存储模型字符特征向量和使用输入板619输入的输入字符的表示以及其它信息。
射频通信单元602是具有公用天线607的合并的接收器和发射器。通信单元602具有通过射频放大器609连接到天线607的收发器608。收发器608还连接到合并的调制器/解调器610,合并的调制器/解调器610将通信单元602连接到处理器603。
微处理器613具有用于连接到例如键区606、屏幕605和输入板619的端口。只读存储器614储存用于对如上所述的例如使用笔、触针或手指在输入板上书写的手写字符的表示进行手写识别的代码。
因此,电话601的用户可以在输入板619上书写一个或多个字符,电话601将把这些字符都储存在随机存取存储器(RAM)604、静态可编程存储器616和/或可拆卸SIM模块618中。然后,电话601的用户可以发布命令(例如使用键区606),要求识别使用输入板619输入的手写字符。
识别手写字符的命令可以由微处理器613进行处理。通过使用ROM 612中储存的代码,微处理器613随后将执行如上所述的本发明的方法,通过将方向特征向量和笔划段特征向量与模型字符进行对比来为每个输入字符确定匹配候选字符。根据特殊系统的要求,微处理器613随后可基于识别的输入字符执行进一步的命令。这样的进一步的命令包括:例如发送包含识别的输入字符的下一条消息或者将包含识别的输入字符的信息到地址簿中。
因此,本发明是用于识别书写在电子设备的用户接口上的手写字符的改进方法和系统.本发明对于识别诸如汉语或日语字符等表意字符尤其有效,这些表意字符中含有许多通常根据标准顺序而书写的笔划.通过分析与输入字符相关联的笔划段特征向量和方向特征向量,本发明增加了正确识别输入字符的可能性.
上面的详细描述仅仅是提供了优选的示范实施例,而并不想限制本发明的范围、适用性或配置。对该优选示范实施例的详细描述给本领域技术人员提供了使本发明的优选示范实施例能够付诸实施的描述。应该理解,在不背离所附权利要求中所阐述的本发明的精神和范围的前提下,可以对组件和步骤的功能和结构做出各种改变。