藏文联机手写识别的研究与实现索

时间:2022-05-28 07:07:07

藏文联机手写识别的研究与实现索

摘 要: 提出了一种基于笔画的藏文联机手写识别的方法。首先将每个藏文字分解为各个子模式,然后将子模式进一步划分为笔画,最后通过识别出的笔画和每个藏文字之间对应规则判断出使用者所书写的藏文字。识别笔画时,将其轨迹看成点的集合,使用八个方向码对其进行标记,进而确定这个笔画。在识别之前,先将相似的笔画进行归类合并,以解决使用者书写不规范的情况。在不考虑连笔的情况下,对常用的600多个藏文字进行测试,准确率可以达到92%。

关键词: 藏文联机手写识别; 笔画识别; 方向码; 笔画合并

中图分类号:TP391 文献标志码:A 文章编号:1006-8228(2017)07-10-03

Research and implementation of Tibetan online handwritten recognition

Suonan Jiancuo, Guan Bai, Li Lei, Shan Fafu

(Tibetan information technology engineering research center, Tibet, Lhasa 850000, China)

Abstract: This paper presents a method of Tibetan online handwriting recognition based on stroke and its corresponding rules, and implements it. First, each Tibetan text is decomposed into various sub patterns, and then the sub pattern is further divided into strokes. Through the identification of strokes and the corresponding rules of each Tibetan character, the user's handwriting character is recognized. In the identification of a stroke, its trajectory is taken as a set of points, and eight directional codes are used to mark it, and then the stroke is determined. Before the identification, the similar strokes are classified and merged to solve the problem of nonstandard user writing. Without considering the joined-up writing, tested on more than 600 Tibetan words commonly used, the accuracy rate can reach 92%.

Key words: Tibetan online handwriting recognition; stroke recognition; directional code; stroke merge

0 引言

S着如平板电脑、智能手机和数码笔等基于笔和触摸输入设备的发展,联机手写字符识别再次引起了人们的兴趣。近年来,研究人员开发出多种方法,来识别不同类别的字符并提高识别性能。这些方法力求在实际应用中以较低的复杂度来实现高性能的识别来满足用户的需求。

在中国,藏文作为少数民族文字,大约被600万人使用,尤其是在自治区,云南和青海等省。联机手写藏文字符识别也被广泛应用到便携设备以及桌面的应用程序[1]。然而,相较于中文、英文和日文等语言,藏文要达到高识别率仍然具有挑战性。

1 藏文联机手写识别

1.1 研究方法

手写识别方面主要有基于统计决策模式的识别方法和基于文字结构模式的识别方法两大类别[2-5],基于统计决策模式的识别方法是首先将待识别的文字提取出一组统计特征,然后根据此组特征形成该文字的多维特征向量,最后再将该多维特征向量与语料库中每个字的训练的多维特征向量进行比较,得出相似度最高的那个多维特征向量,此多维特征向量对应的文字就是所识别出的文字,如图1所示。

[待识别文字][多维特征向量][语料库][识别结果][特征提取][判别函数][相似度]

基于文字结构模式的识别方法就是将被识别的文字(本文中指单个藏文字)看成由多个子模式(本文中指藏文字母)按照一定的规则组成,而子模式又由基元(本文中指笔画)组成,如图2所示。基元是构成该模式的最小单元。通过识别基元,进而识别出子模式,最终识别出该模式,即识别出要识别的藏文字,如图3所示。识别藏文字时,可以把藏文字当作一种特殊的二维文字,其基本组成单元为:基字、前加字、上加字、下加字、后加字、再后加字、元音[6]。

基于文字结构模式的识别方法相比于基于统计决策模式的识别方法,充分利用了藏文字的构字规律,因此本文采用基于文字结构模式的识别方法。

1.2 笔画的归纳及合并

藏文的输入及编码已经有了统一的标准,但是在手写识别研究方面的成果还不多,前人多是基于构件进行识别。本文采用一种基于笔画的和规则的方法进行识别[7],首先对藏文笔画进行归类,然后建立每个藏文字与笔画之间对应的规则,根据规则查找到对应的藏文字。

一个藏文字由若干个部件构成,一个部件又由若干个笔画组成,笔画是组成藏文字的最小单位。要想识别藏文字,首先就要识别出笔画。但是藏文字笔画比较复杂和繁多,为了方便识别,我们首先对藏文字笔画根据其特征进行分类,最终确定了20个笔画,并用a―t对其分别命名,如图4所示。然后确定了30个辅音字母的构成规则,如

1.3 笔画的识别问题

我们采用了笔画识别的方法进行藏文字识别,即先识别用户输入的笔画,再根据笔画的集合查找对应的藏文字所对应的笔画序列,最终确定所写藏文字。这种基于笔画的藏文字识别方法,特点是写一笔,识别一笔,即联机识别。笔画识别是藏文字识别的前提和关键。然而笔画识别还存在诸多问题,例如笔画的获取算法对识别的影响、书写速度的快慢对识别的影响、连笔情况下的识别等。

1.3.1 书写快慢影响的解决

通过对训练的笔画的数据进行预处理,用以解决使用者在书写快慢对识别率的影响。在笔画识别的程序设计时,笔者把用户输入的笔画轨迹看成点的集合,使用者在进行训练或者书写的时候,不同的书写速度会对笔画轨迹信息造成影响。例如写“横”的时候,虽然二者的方向数据都是“3”,但是在数据长度方面却有很大差别,缓慢书写要比快速书写的长度要长许多,所以书写的快慢也会影响识别率。

对于此问题,本文提供两种解决办法。第一种是在数据训练时,就故意快速写和缓慢写,此方法可以解决这种问题,但这对于训练人员的要求较高,并且此种方法会产生大量的数据,会降低识别速度。第二种方法是将数据进行归一化处理,连续相同的方向以一个数字代替,不计算其长度,只关注其方向,再拐点处再标记下一个方向。本文采用第一种方法,用数据的训练来弥补技术的不足。

1.3.2 连笔问题的解决

人们书写藏文经常会两笔或多笔连写,所以连笔是个需要解决的问题,不过已经有了解决思路。首先统计经常会连笔的笔画,例如藏文字“”的最后两笔,正常书写应该像图5的左边是由两笔完成,但是人们经常会按照图5右边那样一笔写完,所以我们采用一个藏文字对应两个笔画序列规则或者一个藏文字对应多个笔画序列规则进行连笔识别,即“”对应的规则有正常书写的“accm”和连笔书写的“acd”两个。

1.3.3 训练程序及识别程序的实现

基于笔画识别的藏文字识别方法还需考虑用户在输入的时候,难免会有一些抖动或者其他干扰因素导致和标准的藏文字体差别的情况,为此,本文提出了一N具有容错机制的训练方法,以达到能够具有容错的性能。

具体的优化方法为:

第一步,将用户输入的点看作原点,以正上方为Y轴的正半轴,正右方为X轴的正半轴,建立一个平面直角坐标系,如图6所示。原来采用正向上为方向码“1”,现在采取两边各5度的容错范围,即在正上方(即Y轴的正半轴)向左偏离5度的范围内或者向右偏离5度的范围内都认为用户输入的是方向码“1”,同理,方向码“2”到方向码“8”如图6所示。

第二步,开始对笔画进行训练,笔画训练起初是采用直接在电脑上进行训练,用鼠标代替手写输入,给出所要训练的笔画,照着所给笔画进行描写,点击保存则会保存当前笔画轨迹信息,获得该笔画的训练数据。后来,为了更加准确的获得训练数据,我们设计了安卓版的训练软件,使用户可以在屏幕上用手直接进行训练。

在基于安卓手机的训练程序完成后,我们找了20个藏族学生,每人训练一小时,对笔画进行了训练。训练完成后,开始对笔画的识别,笔画识别方面,我们采用的是基于余弦定理的文本相似判别方法,将所写笔画的轨迹信息与训练的语料库中所有笔画训练的信息进行对比,计算出当前所写笔画的轨迹信息知识经过多少步可以变成与当前比较的语料库中的轨迹信息,最后得出差异化步骤最小的就是相似度最高的那个笔画轨迹,进而判断出所写笔画。

1.4 联机手写识别

藏文联机手写识别则是在用户进行手写的同时进行处理和识别,因而可以非常方便的获得藏文手写笔画。由此,藏文联机手写识别流程可以简化为图7,即先获取用户所写的当前笔画,根据语料库对当前笔画进行识别,获得当前书写的笔画。然后再计算当前所获得的笔画序列和语料库中藏文字所对应的笔画序列相似度,计算此相似度的时候,方法为:当前笔画序列数与藏文字对应序列中有x个笔画对应相同,该字共有y个笔画,相似度则为x/y,若x大于y,则相似度为y/x。然后得出相似度最高的藏文字。

[获取当前笔画][识别出当前笔画][识别出藏文字][语料库] [规则]

2 结论及展望

最终,我们采用常用的600多个常用藏文字对其进行测试,在不考虑连笔书写的情况下,识别的准确率可以达到92%以上,证明基于笔画的藏文字识别是可行的,可以继续研究和探讨。

此方法还有一些需要改进的地方。第一,在笔画归类的时候,可以先进行训练,然后根据训练的数据进行分析和聚类,控制一个阈值,使相似度达到这个阈值的笔画聚为一类,然后将其作为语料库,这种办法可以有效解决笔画聚类方面由于开发者主观因素的影响。第二,记录笔画轨迹信息的时候,可以通过只录拐点处的方向码,以此减少数据量,进而提高识别速度。

参考文献(References):

[1] 杨峰.联机手写藏文字样本符采集及分析处理[D].青海师范

大学硕士学位论文,2014.

[2] 金连文,钟卓耀,杨钊,杨维信,谢泽澄,孙俊.深度学习在手写

汉字识别中的应用综述[J].自动化学报,2016.8:1125-1141

[3] 吕新桥.联机手写汉字识别技术研究[D].华中科技大学硕士

学位论文,2009.

[4] 柳洪轶,王晓东,王维兰.藏文联机手写识别的难点及其解决

方法[J].西北民族大学学报(自然科学版),2005.1:77-80

[5] 唐松,郭椿标,郑南宁.基于文字结构特征的快速平滑细化方

法[J].中文信息学报,1990.2:49-54

[6] 关白.信息处理用藏文分词单位研究[J].中文信息学报,

2010.3:124-128

[7] 樊庆林.基于笔画的联机手写汉字识别系统的研究与实现[D].

安徽大学硕士学位论文,2007.

上一篇:农村小学一年级口语交际课堂教学设计研究 下一篇:基于数据分析的客服中心运营管理策略