手写体识别中基线,行距和字高的估算的制作方法

文档序号:6407700阅读:364来源:国知局
专利名称:手写体识别中基线,行距和字高的估算的制作方法
技术领域
本发明涉及信号处理的领域,特别涉及到手写体识别。本发明专门用于改善识别准确度,其方法是将手写字符的笛卡尔座标规格化,使之和字符原型座标空间相符合。
在书写识别系统中,通常把手写体区域标上线条,以引导用户为书写定位。用户书写的手迹由数字化仪检测并传送到模式匹配器,后者把手写体和代表书写单元(字符)的模式进行匹配,而此原型模式可由系统识别。此匹配过程中的一步是必须把数字化仪检测到的手写体的笛卡尔座标加以规格化,使之和原型座标空间相符合。
为了获得高的识别准确度,座标的规格化是一个重要因素。在获得正确规格化的过程中所用信息包括一些测量值,诸如行距和基线位置。由于不同用户的书写风格不同,而且就是用一用户的书写风格也有变化,所以这些测量值和系统所提供的书写区域的线条的值会相差很多。由于规格化对模式匹配算法的成功至关重要,因此要求手写体识别系统提供一种准确的在线估算行距和基线位置数值的方法,以便得到高的识别准确率。
有不少专利和文献涉及到手写体识别,它们各有一定值优缺点。
Herbst等人的美国专利4,024,500中公开了一种方法和装置,用于在手写体分析系统中完成字符分段,包括形成所述手写体的书写工具的连续的x、y座标值和x、y速度值的获取,包括对和手写字符的所有x和y极值点有关的x位移值的连续平均值,在这些x和y极值点处x或y速度值等于零,包括连续检查每个x极值的x位移值并确定所述极值的x位移值是否超过了预定的阈值,该阈值是相对于当前字符的x位移平均值而言,如果是超过了,则说明以下两点所述新极值点位于下一字符内,应在刚才研究过的极值点和以前研究过的极值点间的连线上预定的距离处打上分段标记。分段的结果然后送给字符识别装置,所述分段标记会大大提高字符识别装置的效率和准确度。根据设计,在书写过程中系统也能跟踪基线和中位线的偏差。
Kochert等人在美国专利4,845,768中公开了一种用于字符识别的编辑装置,该装置在一个X/Y可寻址地图象信号存储器中存储了一个用二进制编码的字符。信号首先从所述存储器中逐列读出,接着分别把所述信号中包含黑点的各连续列投影在字符基线上,该投影即为所述字符的第一个字符影。然后,根据在相对于Y轴的正的和/或负的斜角进行扫描,重复地读出存储的字符模式,直至产生一个最小的字符影象。得到这个最小字符影象的被扫描模式即被选用,以便进一步估算所述字符。
Sklarew在美国专利4,972,496中公开了一个不用键盘输入的计算机系统,该系统包括一个透明输入屏和显示屏。该透明输入屏当指示笔接触时即产生位置信息,该显示屏装于所述输入屏的下面,以使所显示字符能在输入屏下面看见。系统包括一台计算机,该计算机的程序可把位置信息编译成笔划,可计算笔划特性,然后把该特性和数据库中存储的笔划特性相比较,以便识认指示笔所书写符号。该系统的关键性能是1)透明的位置检测子系统;2)放在下面的显示装置,用于模仿所检测到的位置的图案和用于显示字符或符号;3)用于把检测到的位置首先转换到画出的点,然后转换到识别的字符或符号的装置;和4)能“学会”把检测到的输入位置和某字符或符号连系起来的装置。
J.Kim在IBM技术公报的1983年3月的25卷10期的5111-5114页的名为“手写试验中基线漂移的校正”的文章中把一个字分成几个较小的单元。每个单元是一个等宽的框子,其高度足以包容该宽度内的所有点。这些框子在该字上面均匀分布。因此可以分析框子的相对位置和检测它们如何上升或下降。这些框子的dy/dx的平均值就是漂移值,可用于校正。
根据本发明,用于手写体识别的基线,行距和字信息可通过对以前识别过的字的特征提取以及应用笔划的Y座标极值点聚类的启发式信息来进行估算,从而改善手写体的识别准确度。
本发明的目的是提供手写体识别系统中一个改善的行距和基线调整器。
本发明另一个目的是应用加权平均估算法为手写体识别系统提供一个改善的行距和基线调整器。
本发明又一个目的是应用原型提取估算法为手写体识别系统提供一个改善的行距和基线调整器。
本发明再一个目的是应用端点群集估算法为手写体识别系统提供一个改善的行距和基线调整器。
本发明还有一个目的是把原型提取估算法和极值点聚类估算法结合起来,加以应用,提供手写体识别系统中一个改善的行距和基线调整器。
手写体识别系统中的行距基线调整器改善识别准确度的方法是把由数字化仪检测到的手写体的迪卡尔座标规格化,并使之和原型字符空间相重合。规格化技术包括加权平均估算法,原型提取估算法,极值点聚类估算法以及原型提取估算法和极值点聚类估算法的结合。


图1是根据本发明设计和操作的手写体识别系统的简化框图;
图2显示了手写体识别系统内的基线,行距和字高;
图3显示了手写体识别系统内的漂移的手迹;
图4显示了手写体识别系统内的省缺估算法;
图5显示了基于一个线段的最大和最小Y座标值的估算结果;
图6显示了加权平均估算结果;
图7显示了原型提取估算结果;
图8显示了笔划的Y轴座标极值点的自然聚合类;
图9是一个提供加权平均估算法的系统的框图;
图10是一个提供原型提取估算法的系统的框图;
图11是一个提供极值点聚类估算法的系统的框图;和图12是把原型提取估算法和极值点聚类估算法结合起来的系统的框图。
图1显示了一个根据本发明设计和操作的在线手写字符识别系统10。例如,系统10可以是一个带有PenPoint操作系统的IBM Think Pad计算机700-T。系统的操作在用户手册(IBM部件号41G3122)中有说明。ThinkPad是IBM公司的注册商标,而PenPoint是GO公司的注册商标。系统10包括一个手写体转换器,该转换器由一个集成电子输入面板和一个带有书写工具(如指示笔14)的显示装置12组成。对手写字符作出响应,该转换器输出一串(x,y)座标对,后者对应于指示笔14在输入面板12的座标系中的相对位置。这些座标对送到一个笔划分段器16,后者用于鉴别离散的手写笔划的起点和终点。笔划送到行距(LS)基线(BL)调整器17,该调整器估算每个字符的LS和BL以提供规格化字符,从而获得更大的字符识别准确度。如何做到这一点将接着在后面详细介绍。规格化的笔划送至字符匹配器18。字符匹配器18和一个预定的字符原存储器20相耦合,把输入笔划的各点和存储的字符原型的各点相比较,以便在一定概率下鉴别输入的笔划或一组笔划是否代表一个特定的字符。被识别的字符由匹配器18经过信号线19送至输入面板和显示装置12,以便显示该字符。该字符也可能用于例如显示装置那样的实用装置21或是类似字处理程序那种的应用程序。实用装置21可能向行距基线调整器17提供LS和BL的省缺值,以改善识别准确度。在有些系统内字符分段器16和字符匹配器18的功能可能会在一个手写笔划处理单元内统一起来。
可以由系统10的一个用户管理一个培训周期,并向存储器20提供字符原型。字符原型可由一个特定的系统用户输入,而以后当该特定用户手写输入字符时即可使用该字符原型。还有,也可以产生一套全局或通用的字符,以供多个用户使用。
在这方面,可以设计一套启动原型,供任一位首次使用系统10的书写者用作初始原型。如果该书写者愿意的话,他/她可以按自己的书写风格增加字符原型,从而得到一套适合该书写者的原型,这也称之为一套个性化原型。由于一套启动原型通常由手写体识别系统的专家所建立,所以系统10的用户不必操心去遵循任何书写建议或约束。
在任何情况下,在培训周期内字符从字符匹配器18经过一个物理或逻辑开关22送至原型处理器24,后者可以是一个lntel′386处理器。原型处理器24的输出是一串求过均值的原型字符,送到存储器20,供随后的系统10的用户进行识别时使用。
原型处理器24还耦合到用户的输入和输出装置,例如键盘26和显示装置28。当系统10的用户进行手写体识别时,如想删除混淆的厚型,就需控制原型处理器24的操作。
应该知道,集成的电子输入面板和显示装置12可用一个不带显示装置的电子输入面板来替代,而用实用装置21或显示装置28来显示字符。
下面涉及到用于提供字符识别准确度的行距基线调整器17的功能细节。
用户书写文句时,通常一次书写一行,而当一行结束时,字迹就折转到下一行。书写方向(由左到右,由右到左,等等)随着书写语言的不同而不同。这里介绍的技术适用于不同语言和书写方向。下面术语定义用于描述本发明基线自然线条,用户把不带下垂笔划的字母都写在这条线以上。
字高所识别语言的大写字母的顶部与基线间的距离。
下垂笔划用户在自然线条上书写时,字母伸到该自然线条下面的那部分。字母“g”、“j”、“p”、“q”和“y”是包括下垂笔划的英文字母的例子。
行距从基线往上的能包含字符各点的最大距离。
图2中的例子显示了行距30,字高32和基线位置34。由于用户通常在书写大写字母时并不完全填满相邻基线间的空间,所以字高只是行距的一个百分数。一般不带上伸和下垂笔划的小写字母书写时约占行距值的一半高度,而带有上伸或下垂笔划的小写字母书写时约占全部行距值。
对手写文本的分析表明,文本并不正好座落在基线上,即使用划好线的书写纸也是如此。此外,手写体的字高和行距也随时间不同而变化。这种现象的例子见图3。线36显示字高的漂移;而线40显示字高和基线两者的同时漂移。由于这种自然的变动,在手写体识别系统中需要对行距,基线和字高的数值进行在线估算。
输入数据的基本单位是笔划。一个笔划是从落笔到提笔间的书写。一个字符可以包括一个或多个笔划。笔划可以只是一次一划,也可以一次组成一个字母,一个字甚至一行字符。一组笔划称为线段。
下面将叙述手写体识别系统中估算基线、行距和字高的五个逐渐详尽和准确的方法。
缺省估算法有可能为用户在书写面板上提供基线,同时假设用户将在这些线条之间均匀书写,而所写字符的大小并无任何变动。在这个模型中,假设大写字母书写时完全填满了相邻基线间的空间,而小写字母书写时则占据此高度的一半。下垂笔划向下伸至下一行的中间位置。在这种估算法的模式中基线的计算结果等于书写面板上向用户提供的线条的值。而行距和字高的计算结果是相邻基线的距离。这种方法只能用于肯合作的用户,如图4所示。
简单估算法第二个估算法以线段的y座标的最大和最小值为基础。取ymax为线段的y座标最大值,ymin为同一线段的y座标最小值。本方法中基线估算为ymin的值。行距和字高则估算为等于ymax-ymin。见图5。
本方法可以很快地估算出基线、行距和字高值,同时当手写体识别系统没有在书写面上提供任何线条来引导用户时也可使用。然而,它并不总能为好的模式匹配提供所需要的准确度。当线段中存在下垂笔划时,例如图5中的42和44,则会有较差的基差估算值。当线段中都是不带下垂笔划的小写字母时,字高和行距的估算值大约是它们正确值的一半。当线段同时包括大写字母和带下垂笔划的字母时,行距和字高的估算值约为它们正确值的一倍半。
这些缺点带来的后果是相似形状的字符对,如(C,c)和(P,p)将无法由匹配器来区别。
加权平均估算法通过计算可以获得较好的行距,字高和基线的估算值,所述计算包括以前的计算值和换算到这一点的所有线段的y座标最大值和最小值的加权平均值。如图6所示,取LSold为系统对以前线段换算时所用的旧行距的估算值。取Ymax和Ymin为当前线段的Y座标的最大值和最小值。取Wold和Wcur为计算新的基线、行距和字高值时决定以前线段和当前线段的相对影响的加权系数。Wold和Wcur的典型范围。取LSsys为存入系统的新行距值和BLsys为存入系统的新基线值。于是sys估算值可由下列公式计算出LSsys=(Wold*LSold+Wcur*(Ymax-Ymin))/(Wold+Wcur)BLsys=(Wold*BLold+Wcur*Ymin)/(Wold+Wcur)依赖于以前字段的计算值,本方法试图补偿简单估算法的不足。当有足够数量的书写字符时,遇到的字高和y座标的限值会有一定波动。限值是最大和最小值。特别是会有些线段包含全字高的字母而有些线段又不包含任何下垂笔划。当使用加权平均法去计算行距和基线位置时,这些线段可用来改变估算的基线和行距值,使它们趋向正确的估算值。在线段带有下垂笔划或使用简单估算法时产生不正确的估算值的情况下,这些线段对估算值的影响不像使用简单估算法时那么严重。相反地,估算值会缓慢地向着当前线段的数值变动,特别是如果加权系数依赖于到目前为止所遇到的笔划数目时更是如此。图上显示了行距估算值46和基线估算值48随时间的变化曲线。
这些公式不能盲目搬用。有些字符的形状如句号或逗号只占据行距的一小部分,若用这些公式识别时,它们都被排除掉。图9提供了加权平均估算法的详细描述。
原型提取估算法加权平均估算法用起来不错,但它仍有可以改进的地方。当一个线段已被识别而另一个新线段要被识别时,应用原型提取估算法可以利用以前线段的识别结果来改善行距和基线值的估算。
模式匹配包括把一个未知书写体50映射到空间52。原型包括一个标号、行距、基线、字高和字体形状信息。在匹配过程中未知输入和一套预先存储的原型进行比较。该过程的结果是为每一个原型打上匹配分数,以表示未知输入和原型匹配间的紧密程度。具有最好匹配分数的原型标号通常被选作匹配过程的结果。
可以把原型中包括的基线54和行距56的信息反回来映射到手写体输入空间的座标系上。当一个原型选为未知输入的最佳匹配而该原型的分配分数又优于预定的阈值时,可把所选原型反回来映射到手迹区域,从而便准确地估算以前线段的基线和行距,因此,假定以前线段的模式匹配分数是好的,则从所匹配的原型中提取的行距和基线信息就可用到估算公式中去。
取LSpro为以前匹配的原型集合中提取出的行距。取BLpro为以前匹配的原型集合中提取出的基线信息。取Wpro为加权系数,它决定这些提取出的数值对估算计算的影响大小。Wpro和Wcur通常的取值范围为初始化时取0-1.0,非初始化时取0.3-0.7。LSnew和BLnew同样代表了用本方法计算所得数值。新的估算可由下列公式计算而得15 LSsys=(Wpro*LSpro+Wcur*LSnew)/(Wpro+Wcur)BLsys=(Wpro*BLpro+Wcur*BLnew)/(Wpro+Wcur)
在计算新数值时,在有些情况下不可能或最好不用从所匹配原型提取出的基线和行距值。对于从头开始匹配的第一个线段(或是在估算基线值时一行的第一个线段),并不存在以前线段,因此也就没有匹配原型。任何估算值,例如书写线条的测量,或者用Ymin和Ymax计算所得数值都可在这种情况下用作行距和基线的种子数值。此外,一些标点符号诸如句号或逗号都很短,只占有用行距的一小部分。这些都不能用于调整行距值。为检查是否有这些情况,需计算线段的Ymax-Ymin值。如果该值小于预定阈值(定义为旧行距的一小部分),则从原型提取的行距值就不应使用。同样理由,为避免把单引号误认为逗号,当线段的Ymin值超过远离旧基线值的某个阈值时,应该使用旧基线值而不使用提取数值。这在图10中更详细的解释了。
极值点聚类估算法原型提取估算法是很好的,但仍有局限性。特别是,系统对所识别的书写行必须至少已经识别该行的一个字符。这意味着它不能用来识别任一行的第一个字符。极值点聚类估算法是一种预处理方法,它用于识别时可以解决这个问题并比以前的方法提供更好的估算结果。
图8中例子的每一个笔划的Ymin和Ymax值存储后,其结果是一套4组数值,本方法称之为聚合类。聚合类也称直方图。这些聚合类是相对于线条A,B,C和D计算而得,也就是计算字母线条落在A-D线条上的点的总数。按每行的书写字符来计算聚合类。要注意到,所有下垂笔划的底部58,60,62和64如何归入属于线条A的聚合类,而所有大写字母66和高的小写字母的顶部68如何归入属于线条D的聚合类。同样地,大写字母的底部70和不带下垂笔划的小写字母如72和74都归入属于线条B的聚合类。归入属于线条B的聚合类的还有带有下垂笔划的小写字母的中间点,例如76和78。剩下的是属于线条C的聚合类,它是所有小的小写字母的顶部,如80和82。
最初的行距值或由应用程序传送,或从当时正使用的系统度量值推导而来,或者根本不提供。应用程序也可能传送一个基线值,用于建立聚合类。如果基线值无法知道(从应用程序和以前计算都无法知道时),它可设置为零。使用启发式信息来确定哪一个聚合类最可能是基线值。以这个行距和基线值为依据,可建立起一套初步的4个聚合类。直方图84显示了4个聚合类,它们是下垂笔划底部86,基线88,小写字母顶部90,和大写字母(或高小写字母)顶部92。这组聚合类84是参考点,用于确定新的底线和行距值。
极值点聚类法访问线段的所有点,并提取每一笔划的Ymin和Ymax值,把每一个值存放到4个可能的聚合类中的一个(取决于每一点离那个聚合类最近)。权值(出现次数)和每个聚合类相联,其范围是从零到最大为9的值。
当聚合类建立后,使用启发式信息来确定那个聚合类代表基线和行距。有效的聚合类必须有大于零的权值(至少有一点是落在该聚合类上)。如果找到的有效聚合类少于2个,则使用原先的行距和基线值。如果4个有效聚合类都已找到,则基线和行距值就可求得并能使用。如果找到2或3个有效聚合类,必须确定它们代表的数据类型。数据类型最大的可能是混合型(大写和不带下垂笔划的小写)、全大写、全小写、带下垂笔划的小写、或全数字。和参考用聚合类作比较后,可以很好地指出那些数值已知,同时从已知的有效聚合类可以算出未找到的聚合类值。新的估算值可用下列公式计算而得LSsys=(Wold*LSold+Wcur*LSnew)/(Wold+Wcur)BLsys=(Wold*BLold+Wcur*BLnew)/(Wold+Wcur)在初始化时,如果使用预定义线条来书写,则使用LS和BL的省缺值。如不用预定义线条,则可计算Ymin和Ymax以确定初始条件。
图11给出了极值点聚类法的详细描述。
现在看图9,这是在图6中一般性描述过的加权平均估算器的详细框图94。它可用作图1所示行距基线调整器17。把组成一个字符的每个线段的X,Y点送至96框,用于计算Ymin和Ymax,计算出的Ymin和Ymax值送至98框,并按照下列公式用于计算一个字符的LS和BS值LSsys=(Wold*LSold+Wcur*(Ymax-Ymin))/(Wold+Wcur)BLsys=(Wold*BLold+Wcur*Ymin)/(Wold+Wcur)
LS和BL的估算值送至线100,同时送至框102,并被当作LSold和BLold存储起来,以备用来计算下一个字符的LS和BL值。图1中这些LS和BL估算值用于从笔划分段器16送出的被采样字符,它在字符匹配器18中和字符原型存储器20中的原型字符进行比较。
现在来看图10,这是一个原型提取估算器的详细框图104。该估算器一般可联系图7来描述,并可能用作图1所示的行距基线调整器17。组成一个字符的每个线段的X,Y点送至匹配器框106。后者同时从原型存储器框108接收LS和BL。使用原型存储器框108来的LSpro和BLpro值比较使用Ymin和Ymax值能提供更准确的计算,因为假如计算一个小写字母,字高并不等于行距。LS和BL的现行值可在框110中按照下列公式计算而得LSsys=(Wpro*LSpro+Wcur*LScur)/(Wpro+Wcur)BLsys=(Wpro*BLpro+Wcur*BLcur)/(Wpro+Wcur)LSpro和BLpro可从原型框108推导而得,而Wpro和Wcur是由实验确定的系统常数。LSpro和BLpro分别是在当前采样字符之前的前一个采样字符匹配原型的行距值和基线值。Wpro和Wcur的典型值是初始化时在0-1.0的范围内,非初始化时在0.3-0.7的范围内。当前LS和BL的计算值送至线112,同时送至框110以备计算下一个LS和BL时使用。
现在看一下极值点聚类估算器的详细框图113(示于图11),该估算器可联系图8来描述,可用作图1所示行距基线调整器17。组成字符的每个线段的X,Y点和LS及BL的省缺值送到框114,正如以前联系图8所描述那样,在该框内计算出阵极值点聚类A,B,C和D。如果正如框116所表明那样有4个聚合类,可使用A,B,C和D的计算值,并且在线118上的LS和BL可如下计算LS=D-BBL=B框120用于判断是否聚合类数小于2。如果这样,则如线122所示,使用LS和BL的省缺值。例如,当只书写一些特殊符号如句点和等号时,聚合类数即小于2。如聚合类数不小于2,则框124用于判断是聚合类数是否等于2或3。如果这样,框126将估算未找到的聚合类。
如果有2个聚合类,则把底部聚合类和旧基线进行比较。如果底部聚合类的值比旧基线加上1/2旧行距还大,则把B设为底部聚合类。如果底部聚合类并不大于旧基线和旧行距的1/2的总和,则把B设为旧基线加上1/2旧行距的值。在上述两种情况下,D都设为B和旧行距之和。
如果有3个聚合类,则把最靠近旧底线的聚合类选为新的临时底线值T。如果该新临时底线值T大于旧基线加1/3旧行距之和,则B设为0.9*(旧基线)+0.1*T。如T小于旧基线加1/3旧行距之和,则B设为0.5*(旧基线)*0.5*T。在上述两种情况下,D都设为B加旧底线之和。
在每个例子中,D和B的值都在线128处用于按下列公式计算行程(LS)和基线(BL)LS=D-BBL=B现在看图12,它是由原型提取估算器和极值点聚类估算器组成的详细框图126,可用作图1所示行距基线调整器17。组成一个字符的每个线段的X,Y点送至框128,在那里计算Xmin,Xmax,Ymin和Ymax,计算所得最小/最大值送至原型提取估算器130和极值点聚类估算器132。原型提取估算器130也接收输入量LSpro和BLpro,并按照图10所叙述那样,向框134提供LS1和BL1。极值点聚类估算器132也把LS和BL的省缺值作为输入接收进来,并按图11所述那样,向框134提供LS2和BL2。在框134内一个字符的LSsys和BLsys可按下列公式计算而得LSsys=W1*LS1+W2*LS2/(W1+W2)BLsys=W1*BL1+W2*BL2/(W1+W2)W1和W2的典型值为初始化时取0-1.0的范围,非初始化时取0.3-0.7的范围。把LS和BL提供给线136。
上面提出的估算行距和基线的方法可以用于格式书写,行式书写和随手书写。
权利要求
1.在手写体识别系统中一种调整行距和底线的方法,其中底线是供用户在上面书写不带下垂笔划的字符的自然线条,而行距是从底线往上的最大正距离,一个字符的所有各点部包括在该距离内,所述方法的特征包括以下各步对于每一个书写在输入面板上的字符采样一串(X,Y)座标对,这些座标对对应于指示笔在所述输入面板座标系统中的相对位置;对于书写在所述输入面板上的每个字符,计算该字符采样值的Y点最小值和最大值;对一个字符按下式计算行距值(LS)LS = (Wold*LSold+ Wcur*(Ymax- Ymin))/(Wold+ Wcur)其中LSold是LS以前的计算值;Wold和Wcur是系统常数按下式计算字符的基线值(BL)BL = (Wold*BLold+ Wcur*(Ymax- Ymin))/(Wold+ Wcur)其中BLold是BL以前的计算值。
2.权利要求1所述方法,其特征在于初始化时Wold和Wcur各取0-1.0范围内的值和非初始化时各取0.3-0.7范围内的值。
3.手写体识别系统中一种高速行距和底线的方法,其中底线是供用户在上面书写不带下垂笔划的字符的自然线条,而行距是从底线往上的最大正距离,一个字符的所有各点都包括在该距离内,所述方法的特征包括以下各步为每个这样的字符存储一套包括基线(BLpro)值和行距(LSpro)值的原型字符;对于每一个书写在输入面板上的字符采样一串(X,Y)座标对,这些座标对对应于指示笔在所述输入面板座标系统中的相对位置;为书写在所述输入面板上的每个字符提供采样字符;根据采样字符和存储原型字符的比较结果,为被识别字符提供一个选为原型字符的被识别字符,使采样字符与该原型字符最为匹配;分别用前一个采样字符的匹配原型的BLpro和LSpro来调整下一个采样字符的基线和行距。
4.权利要求3所述方法,其特征在于刚才采样的字符的行距(LSsys)是LSsys= (Wpro* LSpro+ Wcur* LSnew)/(Wpro+ Wcur)而刚才采样的字符的基线是BLsys= (Wpro* BLpro+ Wcur* BLnew)/(Wpro+ Wcur)其中LSnew和BLnew分别是以前计算的LSsys和BLsys值,而Wpro和Wcur是系统常数。
5.手写体识别系统中一种调整行距和底线的方法,其中底线是供用户在上面书写不带下垂笔划的字符的自然线条,而行距是从底线片上的最大距离,一个字符的所有各点都包括在该距离内,所述方法的特征包括以下各步对于每一个书写在输入面板上的字符采样一串(X,Y)座标对,这些座标对对应于指示笔在所述输入面板座标系统中的相对位置;提供一个LS和BL的省缺值;存储一行字符中每个字符的Ymin和Ymax数;给出一行字符所存储的Ymin和Ymax数的直方图,以便确定一套4组数,每一个这样的组称为聚合类;第一个聚合类象征字符的下垂笔划底部,第二个聚合类象征底线,第三个聚合类象征小写字母的顶部,第四个聚合类象征高的小写字母的顶部或大写字母或数字的顶部;根据直方图的结果,确定所找到的聚合类数;如果找到的聚合类数不到2,把LS和BL的省缺值分别用作该行中采样字符的行距和基线值;如果2和3个聚合类中的1个被发现具有如下式计算的一行中采样字符的行距和基线,则估算未找到的聚合类LS=第4聚合类-第2聚合类BL=第2聚合类;如4个聚合类都找到,分别按下式计算该行中采样字符的行距和基线LS=第4聚合类-第2聚合类BL=第2聚合类。
6.手写体识别系统中一种调整行距和底线的方法,其中底线是供用户在上面书写不带下垂笔划的字符的自然线条,而行距是从底线往上的最大正距离,一个字符的所有各点都包括在该距离内,所述方法的特征包括以下各步存储一套原型字符,包括每个这样字符的基线(BLpro)值和行距(Lpro)值;对于每一个书写在输入面板上的字符采样一串(X,Y)座标对,这些座标对对应于指示笔在所述输入面板座标系统中的相对位置;为书写在所述输入面板上的每个字符提供采样字符;根据采样字符和存储原型字符的比较结果,为被识别字符提供一个选为原型字符的被识别字符,使采样字符与该原型字符最为匹配;和提供一个按下式计算的刚才采样字符的行距的第一个中间值(LS1)LS1= (Wpro* LSpro+ Wcur* LSnew)/(Wpro+ Wcur)提供一个按下式计算的刚才采样字符的基线的第一个中间值BL1= (Wpro* BLpro+ Wcur* BLnew)/(Wpro+ Wcur)其中LSnew和BLnew分别是刚才计算的LSsys和BLsys值,而Wpro和Wcur是系统常数提供LS和BL的省缺值;存储一行字符中每个字符的Ymin和Ymax数;给出一行字符所存储的Ymin和Ymax数的直方图,以便确定一套4组数,每一个这样的组称为聚合类;第一个聚合类象征字符的下垂笔划底部,第二个聚合类象征底线,第三个聚合类象征小写字母的顶部,第四个聚合类象征高的小写字母的顶部或大写字母或数字的顶部;根据直方图的结果,确定所找到的聚合类数;如果找到的聚合类数不到2,把LS和BL的省缺值分别用作该行中采样字符的行距和基线的第二中间值LS2和BL2;如果2个和3个聚合类中的1个被发现具有如下式计算的该行中采样字符的行距和基线的第二中间值,则估算未找到的聚合类LS2=第4聚合类-第2聚合类,BL2=第2聚合类;如4个聚合类都找到,分别按下式计算该行中采样字符的行距和基线的第二中间值LS2=第4聚合类-第2聚合类,BL2=第2聚合类;按下式计算采样字符的行距值(LSsys)LSsys= (W1* LS1+ W2* LS2)/(W1+ W2)按下式计算采样字符的底线值BLsysBLsys= (W1* BL1+ W2* BL2)/(W1+ W2)其中W1和W2是系统常数。
7.权利要求6所述方法,其特征在于W1和W2在初始化时的取值范围为0-1.0,非初始化时的取值范围为0.3-0.7。
全文摘要
通过把数字化仪检测到的手写体的笛卡尔座标加以规格化,使之和原型字符空间相符合,一种手写体识别系统中的行距基线调整器能改善识别准确度。规格化技术包括加权平均估算法,原型提取估算法,极值点聚类估算法以及原型提取估算法和极值点聚类估算法的结合。
文档编号G06K9/62GK1099500SQ9410213
公开日1995年3月1日 申请日期1994年2月21日 优先权日1993年3月4日
发明者威克尔·S·布鲁夫, 乔恩基·金, 唐纳德·B·马特森, 威廉·D·莫德林 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1