本发明涉及手写输入技术领域,尤其涉及一种基于手写识别的输入方法。
背景技术
手写识别(handwritingrecognition)是指将在手写设备上书写时产生的有序轨迹信息化转化为文字内码的过程,实际上是手写轨迹的坐标序列到文字的内码的一个映射过程,是人机交互最自然、最方便的手段之一。
文字手写识别是模式识别的一个重要研究领域,最近几十年来得到了广泛的研究与关注,随着深度学习技术的出现,近年来基于深度学习的文字手写识别在方法和性能上得到了突破性的进展。
目前主要有以下两种技术实现手写识别:
1)深度学习方法:基于深度学习端到端(即输入一张图片到数学模型,数学模型输出识别的结果)的手写识别方法,必须要先有大量的手写文字数据,并对每个文字进行标注,之后才能对深度学习方法所使用的深度神经网络进行训练,让模型学习到每个文字的模式。经过大量数据进行足够久的训练之后,模型才能较准确地识别出手写文字。
2)单字特征方法:基于单字特征的方法,首先提取出落笔顺序,笔画、形状、轮廓、偏旁,将这些特征转化为数字,用这些数字表示汉字,然后建立汉字数据库。手写时产生的文字按照建立模版库和数据库的方法提取出数据,将该数据与数据库中的进行匹配,找到相似的汉字。
以上两种方法具有以下缺点:无法针对用户的手写习惯进行适应性更新,因此识别的准确率不能随用户的使用频次的增多而提高。
技术实现要素:
本发明的一个目的在于,提供一种基于手写识别的输入方法,识别的准确率能随用户的使用频次的增多而逐步提高。
为达以上目的,本发明提供一种基于手写识别的输入方法,包括:
提供字符标准库,每个标准内码均以特定的概率与所述字符标准库中的各标准字符建立对应关系;
将手写输入的字符转化为手写内码;
将所述手写内码与所有标准内码进行比较,然后将与所述手写内码相似或相同的至少一个标准内码标记为待选内码;
将与待选内码相应的标准字符按照概率从高到低进行罗列以供选择,并将被选择的标准字符标记为目标字符;
结合所述手写内码和目标字符对所述概率进行调整。
作为一种优选的实施方式,所述提供字符标准库的步骤具体为:
基于单字特征的方法获取字符标准库。
作为一种优选的实施方式,所述标准字符为希腊字母、阿拉伯数字、英文字母、中文汉字、汉字笔画、汉子偏旁和标点符号中的至少一种。
作为一种优选的实施方式,所述提供字符标准库,每个标准内码均以特定的概率与所述字符标准库中的各标准字符建立对应关系的步骤具体为:
提供具有n个标准字符的字符标准库(c,p),每个标准内码ci均以概率pin与各个标准字符建立对应关系;
其中:
i:i为正整数,且i≤n;
n:n为正整数,且n≤n;
c:标准内码;
p:标准内码与标准字符对应的概率;
ci:由字符标准库(c,p)的第i个标准字符提取得到的特征向量对应的标准内码;
pin:ci来自字符标准库(c,p)的第n个标准字符的概率。
作为一种优选的实施方式,所述结合所述手写内码和目标字符对所述概率进行调整的步骤包括:
将手写内码以及所述手写内码和标准字符的概率关系(cn+1,p(n+1)n)添加至字符标准库(c,p)中,形成非标准字符库
建立字符标准库(c,p)和非标准字符库
其中:
λ:0≤λ≤1;
ck:由字符标准库(c,p)的第k个标准字符提取得到的特征向量对应的标准内码,在ck中:1≤k≤n;
pjk:cj来自字符标准库(c,p)的第k个标准字符的概率,在pjk中:1≤j≤n,1≤k≤n;
求取
根据ck和pjk求得c和p,从而获得调整后的字符标准库(c,p)。
本发明的有益效果在于:提供一种基于手写识别的输入方法,通过将手写输入的识别结果添加至原字符标准库中以调整字符标准库,随着多次的重复调整,本发明提供的基于手写识别的输入方法会根据用户的手写习惯对推荐的字符顺序进行持续调整,识别的准确率能随用户的使用频次的增多而逐步提高,越来越符合用户的使用习惯。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的基于手写识别的输入方法框图。
具体实施方式
为使得本发明的目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,当一个组件被认为是“连接”另一个组件,它可以是直接连接到另一个组件或者可能同时存在居中设置的组件。当一个组件被认为是“设置在”另一个组件,它可以是直接设置在另一个组件上或者可能同时存在居中设置的组件。
此外,术语“长”“短”“内”“外”等指示方位或位置关系为基于附图所展示的方位或者位置关系,仅是为了便于描述本发明,而不是指示或暗示所指的装置或原件必须具有此特定的方位、以特定的方位构造进行操作,以此不能理解为本发明的限制。
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
如图1所示,本实施例提供一种基于手写识别的输入方法,包括步骤s10~s50。
s10:提供字符标准库,每个标准内码均以特定的概率与所述字符标准库中的各标准字符建立对应关系。
优选地,可以基于单字特征的方法获取字符标准库,也可以直接从其他数据库中导入字符标准库。最开始的字符标准库只是一个原型,为后续的调整步骤提供基础。进一步地,所述标准字符为希腊字母、阿拉伯数字、英文字母、中文汉字、汉字笔画、汉子偏旁和标点符号中的至少一种。
具体地,字符标准库往往包含了大量的标准字符。假若用户手写的符号与字符标准库中的标准字符完全一样时,手写字符的手写内码就会与标准内码一致。
当用户手写出一个符号(例如“一”)的时候,首先要将该符号转化为标准内码,然而,若干个标准字符都会包含该符号的标准内码(例如“一”、“二”或者“三”等标准字符对应的标准内码都包含了“一”的标准内码),所以该符号的标准内码会与不同的标准字符存在不同的概率关系(可以理解的是,“一”的标准代码与“一”的标准代码会完全相同,所以“一”的标准代码与标准字符“一”之间的概率肯定较高,“一”的标准代码与标准字符“二”之间的概率次之,“一”的标准代码与标准字符“三”之间的概率较低,系统并会根据此概率的高低关系向用户推荐识别结果例如推荐结果为:1、一;2、二;3、三,然后供用户选择)。
进一步地,s10可以具体为:提供具有n个字符的字符标准库(c,p),每个标准内码ci均以概率pin与各个标准字符建立对应关系。
其中:
i:i为正整数,且i≤n;
n:n为正整数,且n≤n;
c:标准内码;
p:标准内码与标准字符对应的概率;
ci:由第i个标准字符提取得到的特征向量对应的标准内码;
pin:ci来自第n个标准字符的概率。刚开始时,字符标准库(c,p)没有经过调整,所以对于ci,除了pii=1,其余的pi1、pi2、pi3……pi(i-1)、pi(i+1)……pin均为0。
s20:将手写输入的字符转化为手写内码。
具体地,手写输入的字符往往包括了若干个特征向量,将这些特征向量转化为代码就得到手写输入的字符的手写内码。
进一步地,由于原来的字符标准库已经包含了n个标准字符,所以手写内码被标记为cn+1,相应地,cn+1与标准字符库中的各标准字符之间的概率为pn+1。可以理解的是,刚开始时,由于在进行选择之前,cn+1暂未与标准字符库中的任何标准字符建立关联,所以此时所有的pn+1均为0。
s30:将所述手写内码与所有标准内码进行比较,然后将与所述手写内码相似或相同的至少一个标准内码标记为待选内码。
具体地,由于手写的字体与标准字符几乎不可能完全一致,所以手写内码与标准内码会存在差异。但是,由于手写字体与标准字符均会存在相同的特征向量(例如手写的“人”和标准字符的“人”都是先有撇,然后有捺)。所以会存在与手写内码相似或者相同的标准内码(例如手写输入“人”,由于获取到的特征向量为“先有撇,然后有捺”,所以“人”、“入”和“八”等的标准内码均会被标记为待选内码)。
s40:将与待选内码相应的标准字符按照概率从高到低进行罗列以供选择,并将被选择的标准字符标记为目标字符。
具体地,例如手写输入“人”,特征向量为“先有撇,然后有捺”的标准内码均被标记为待选内码,所以“人”、“入”和“八”均会作为概率较高的标准字符被优先推荐。而“个”和“大”等标准字符则次之。
进一步地,当选定目标字符后,则与cn+1关联的p(n+1)n的值发生变化,例如第y个标准字符被选为目标字符,则对于cn+1而言,除了p(n+1)y=1,其余的pi1、pi2、pi3……p(n+1)(y-1)、p(n+1)(y+1)……p(n+1)n均为0。当然,随着不停的根据手写代码进行调整,p(n+1)n的值也会持续地发生变化,例如出现pi1=0.1、pi2=0、pi3=0.7……p(n+1)(y-1)=0.8、p(n+1)y=1、p(n+1)(y+1)=0……p(n+1)n=0.4等的情况。
s50:结合所述手写内码和目标字符对所述概率进行调整。
具体地,s50包括:
s501:将手写内码以及所述手写内码和标准字符的概率关系(cn+1,p(n+1)n)添加至字符标准库(c,p)中,形成非标准字符库
s502:建立字符标准库(c,p)和非标准字符库
其中:
λ:0≤λ≤1;
ck:由字符标准库(c,p)的第k个标准字符提取得到的特征向量对应的标准内码,在ck中:1≤k≤n;
pjk:cj来自字符标准库(c,p)的第k个标准字符的概率,在pjk中:1≤j≤n,1≤k≤n;
s503:求取
s504:根据ck和pjk求得c和p,从而获得调整后的字符标准库(c,p)。
具体地,重复执行s10~s50,随着多次的重复调整,本实施例提供的基于手写识别的输入方法会根据用户的手写习惯对推荐的字符顺序进行持续调整,识别的准确率能随用户的使用频次的增多而逐步提高,越来越符合用户的使用习惯。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。