一种输入法纠错方法和装置与流程

文档序号:12732672阅读:404来源:国知局
一种输入法纠错方法和装置与流程

本发明涉及输入法技术领域,特别是涉及一种输入法纠错方法和装置。



背景技术:

目前,较为常用的输入法优化纠错手段主要包括以下两种:一种为基于屏幕位置的纠错,另一种为基于临近键位的位置纠错。

现有的基于屏幕位置的纠错方案,需事先制作一个按键位置与按键对应关系的模型,这个模型的建立需要确定大量实际按键点击位置和最终确认的点选按键之间的关系,并通过训练分别得到各按键位置映射到其所在按键和周围按键的概率。将制作的该模型引进入纠错模型中,即可实现对输入法进行基于屏幕位置的纠错。

在常规输入法键盘上,每一个按键位置对应的按键是一定的,在引入屏幕位置纠错技术后,每一个按键位置则是以一定概率映射到其对应的各按键上。例如一个位于按键S中心的位置会以绝对大的概率映射到S按键上;而S按键中比较偏于相邻A按键的位置将以一定概率映射到S按键上,以另一定概率映射到A按键上。可见现有的基于临近键位的位置纠错方案,首先需通过事先制作的模型确定实际按键位置对应的按键,然后,将按键对应的编码字符确定为纠错编码字符。重复上述过程对输入的各编码字符进行纠错即可构造一个或多个纠错后的编码字符串,然后对纠错后的编码字符串进行处理得到候选词条展示给用户,从而实现对用户输入的编码字符串的纠错。

而现有的基于屏幕位置或临近键位的纠错方案通常仅能较好地适用于用户在静态场景下输入的编码字符串的纠错。若在输入编码字符串的过程中终端突然发生震动,且用户恰巧在该震动下发生按键行为时,则用户实际输入的按键位置a往往会偏离目标按键位置b,在发生上述偏离的情况下,基于屏幕位置或临近键位的纠错方案,仅会采用按键位置a对应的按键所指示的编码字符对输入的编码字符串进行纠正,显然纠正后的编码字符通常并不会是目标按键位置b在常规输入法键盘上对应的编码字符。可见,这种由于 终端突然震动导致的按压的按键位置偏离的情况,现有的基于屏幕位置或临近键位的纠错方案无法进行有效的纠错。

综上所述,现有的纠错方案无法对终端发生震动时输入的编码字符进行有效纠错。



技术实现要素:

本发明提供了一种输入法纠错方法和装置以及一种用于输入法纠错的装置,以解决现有的输入法无法对终端发生震动时输入的编码字符进行有效纠错的问题。

为了解决上述问题,本发明公开了一种输入法纠错方法,包括:终端产生震动时,确定震动发生时触控的按键位置以及所述终端的震动参数;依据所述按键位置以及所述终端的震动参数确定所述按键位置对应的纠错按键;将所述纠错按键对应的编码字符与震动发生前和/或震动发生后输入的编码字符进行组合,得到纠错编码字符串;依据所述纠错编码字符串得到候选词条。

优选地,所述确定震动发生时触控的按键位置以及所述终端的震动参数的步骤包括:确定震动发生时触控的按键位置以及所述终端的加速度方向以及所述终端的加速度值;所述依据所述按键位置以及所述终端的震动参数确定所述按键位置对应的纠错按键的步骤包括:依据所述按键位置、所述加速度方向以及所述加速度值确定所述按键位置对应的纠错按键。

优选地,所述依据所述按键位置、所述加速度方向以及所述加速度值确定所述按键位置对应的纠错按键的步骤包括:将所述按键位置、所述加速度方向以及所述加速度值作为输入参数,输入第一模型,得到修正按键位置;其中,所述第一模型中建立有修正按键位置与按键位置、加速度方向和加速度值的对应关系;依据按键位置与按键之间的对应关系,确定所述修正按键位置对应的纠错按键。

优选地,所述依据所述按键位置、所述加速度方向以及所述加速度值确定所述按键位置对应的纠错按键的步骤包括:将所述按键位置、所述加速度方向以及所述加速度值作为输入参数,输入第二模型,得到纠错按键;其中, 所述第二模型中建立有纠错按键与按键位置、加速度方向和加速度值的对应关系。

优选地,所述按键位置对应一个像素,或所述按键位置对应一个包含多个像素的区域。

优选地,所述终端的加速度方向为所述终端的水平加速度方向,所述终端的加速度值为所述终端的水平加速度值。

优选地,依据所述纠错编码字符串得到候选词条的步骤包括:采用语言模型分别对所述各编码字符串进行打分;筛选出所得分数排名靠前的设定个数的编码字符串;从词库中分别获取筛选出的各编码字符串对应的词条;确定各词条的得分,筛选出所得分数排名靠前的设定个数的词条作为候选词条。

为了解决上述问题,本发明还公开了一种输入法纠错装置,包括:获取模块,编码字符串输入过程中终端产生震动时,获取震动发生时触控的按键位置以及所述终端的震动参数;纠错按键确定模块,用于依据所述按键位置以及所述终端的震动参数确定所述按键位置对应的纠错按键;编码字符串构成模块,用于将所述纠错按键对应的编码字符与已在震动发生前和/或震动发生后输入的编码字符进行组合,得到纠错编码字符串;候选词条确定模块,用于以及所述纠错编码字符串得到候选词条。

优选地,所述获取模块具体用于确定震动发生时触控的按键位置以及所述终端的加速度方向以及所述终端的加速度值;所述纠错按键确定模块具体用于依据所述按键位置、所述加速度方向以及所述加速度值确定所述按键位置对应的纠错按键。

优选地,所述纠错按键确定模块包括:第一输入模块,用于将所述按键位置、所述加速度方向以及所述加速度值作为输入参数,输入第一模型,得到修正按键位置;其中,所述第一模型中建立有修正按键位置与按键位置、加速度方向和加速度值的对应关系;确定模块,用于依据按键位置与按键之间的对应关系,确定所述修正按键位置对应的各纠错按键。

优选地,所述依纠错按键确定模块具体用于:将所述按键位置、所述加 速度方向以及所述加速度值作为输入参数,输入第二模型,得到纠错按键;其中,所述第二模型中建立有纠错按键位置、加速度方向和加速度值的对应关系。

优选地,所述按键位置对应一个像素,或所述按键位置对应一个包含多个像素的区域。

优选地,所述终端的加速度方向为所述终端的水平加速度方向,所述终端的加速度值为所述终端的水平加速度值。

优选地,所述候选词条确定模块包括:打分模块,用于采用语言模型分别对所述各编码字符串进行打分;第一筛选模块,用于筛选出所得分数排名靠前的设定个数的编码字符串;词条获取模块,用于从词库中分别获取筛选出的各编码字符串对应的词条;第二筛选模块,用于确定各词条的得分,筛选出所得分数排名靠前的设定个数的词条作为候选词条。

为了解决上述问题,本发明又公开了一种用于输入法纠错的装置,包括存储器,以及一个或者一个以上的程序,其中所述一个或者一个以上程序存储于所述存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:编码字符串输入过程中终端产生震动时,确定震动发生时触控的按键位置以及所述终端的震动参数;依据所述按键位置以及所述终端的震动参数确定所述按键位置对应的纠错按键;将所述纠错按键对应的编码字符与已在震动发生前和/或震动发生后输入的编码字符进行组合,得到纠错编码字符串;依据所述纠错编码字符串得到候选词条。

与现有技术相比,本发明具有以下优点:

本发明实施例提供的输入法纠错方案,在编码字符串输入过程中当终端产生震动时,确定震动发生时触控的按键位置、终端的加速度方向以及终端的加速度值,依据上述按键位置、终端的震动参数如:加速度方向以及终端的加速度值确定所述按键位置对应的纠错按键,而并非如现有技术直接基于震动发生触控的按键位置确定对应的纠错按键。本发明实施例提供的输入法纠错方案,在确定纠错按键时,结合终端的震动参数,能够有效消除由于终 端震动对触控按键位置造成的位置偏移的影响,而若能消除由于终端震动对按键位置造成的偏移,则可以对输入的编码字符进行有效纠错。可见,本发明实施例提供输入法纠错方案,能够有效地对终端发生震动时输入的编码字符进行纠错。

附图说明

图1是根据本发明实施例一的一种输入法纠错方法的步骤流程图;

图2是根据本发明实施例二的一种输入法纠错方法的步骤流程图;

图3是根据本发明实施例三的一种输入法纠错方法的步骤流程图;

图4是根据本发明实施例四的一种输入法纠错装置的结构框图;

图5是根据本发明实施例五的一种输入法纠错装置的结构框图;

图6是根据本发明实施例六的一种用于输入法纠错的装置的结构框图;

图7是本发明实施例六中的服务器的结构框图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

实施例一

参照图1,示出了本发明实施例一的一种输入法纠错方法的步骤流程图。

本发明实施例的输入法纠错方法包括以下步骤:

步骤S102:编码字符串输入过程中终端发生震动时,确定震动发生时触控的按键位置以及终端的震动参数。

其中,终端的震动参数可以包括:终端的加速度方向以及终端的加速度值,震动参数可以通过终端的震动感知装置获取,触控的按键位置则可通过键盘感知装置获取。

步骤S104:依据按键位置以及终端的震动参数确定所述按键位置对应的纠错按键。

每个按键位置对应有多个纠错按键,依据按键位置以及终端的震动参数 确定所述按键位置对应的纠错按键的具体确定方案,可以由本领域技术人员根据实际需求进行设置。

例如:先依据终端的震动参数包含的加速度方向以及终端的加速度值对按键位置进行修正得到修正按键位置,然后,采用现有的输入位置纠错模型确定所述修正按键位置对应的纠错按键。例如:建立输入位置纠错模型,该模型中建立有按键位置、加速度方向以及加速度值三个参数与各纠错按键的对应关系,通过将按键位置、终端的加速度方向以及终端的加速度值这三个参数输入模型中,即可得到相应的纠错按键。再例如:先依据终端的加速度方向以及终端的加速度值对按键位置进行修正以得到修正按键位置,从而确定所述修正按键位置所对应的像素;最后,依据预先建立的映射关系得到与所述像素对应的纠错按键。

步骤S106:分别将各纠错按键对应的编码字符与已在震动发生前,和/或震动发生后输入的编码字符进行组合,得到纠错编码字符串。

例如:震动发生前已输入编码字符“yan”,终端发生震动时输入的按键位置为S按键中偏右的位置,终端的运动参数为加速度大小为10米/秒,加速度方向为向后,依据终端的运动参数以及发生震动时的按键位置确定的纠错按键对应的编码字符分别为“W”、“E”、“A”,则得到的纠错编码字符串分别为“yanw”、“yane”、“yana”。

步骤S108:依据纠错编码字符串得到候选词条。

对纠错编码字符串进行处理得到候选词条的具体实现,参见相关技术即可,本发明实施例中对此不作具体限制。例如:从词库中获取各纠错编码字符串对应的词条,将全部词条按照上屏频率,或是词条类型、时间、天气、位置、应用环境等相关信息进行排序并相应展示。

通过本发明实施例提供的输入法纠错方法,在编码字符串输入过程中当终端产生震动时,确定震动发生时触控的按键位置、终端的加速度方向以及终端的加速度值,依据按键位置、终端的加速度方向以及终端的加速度值确定所述按键位置对应的纠错按键,而并非如现有技术直接确定震动发生触控的按键位置对应的纠错按键。本发明实施例提供的输入法纠错方法,在确定 纠错按键时,结合终端的加速度方向以及加速度值,能够有效消除由于终端震动对触控按键位置造成的位置偏移的影响,提高纠错的准确率。可见,本发明实施例提供的输入法纠错方法,能够有效提高震动环境下的纠错效率。

实施例二

参照图2,示出了本发明实施例二的一种输入法纠错方法的步骤流程图。

本发明实施例的输入法纠错方法具体包括以下步骤:

步骤S204:编码字符串输入过程中终端产生震动时,确定震动发生时触控的按键位置、终端的加速度方向以及终端的加速度值。

其中,终端可以是由于突然抖动产生震动,也可以是由于终端所在的交通工具突然加速或者减速产生震动,还可以是手持终端的手臂突然受到外力而扭动使得终端产生震动。当然,还有其他的使终端产生震动的情境,在此不再一一列举。总之,本发明实施例中将使终端产生加速度的所有情况都统称为终端产生了震动。

本发明实施例中以终端的震动参数为终端的加速度以及终端的加速度方向为例,对后续步骤进行说明。

优选地,确定的终端的加速度值为终端水平加速度值,确定的终端的加速度方向为终端的水平加速度方向。由于终端的上下震动对按键位置的偏移影响非常小,因此,本优选方案中仅考虑终端水平方向的加速度信息。

步骤S206:将按键位置、终端的加速度方向以及终端的加速度值作为输入参数,输入第一模型,得出修正按键位置。

其中,第一模型中建立有修正按键位置与按键位置、加速度方向和加速度值的对应关系。第一模型是预先利用海量具有加速度记录、实际输入的按键位置记录、修正按键位置记录的数据进行监督训练得到的。

在具体实现过程中,按键位置可以以像素为粒度,即将按键位置对应一个像素;按键位置还可以以包含多个像素的区域为粒度,即将按键位置对应一个包含多个像素的区域。

步骤S208:依据按键位置与按键之间的对应关系,确定修正按键位置 对应的一个或多个纠错按键。

本步骤中则可沿用现有的屏幕位置纠错模型,将修正按键位置作为输入参数,即可得到对应的一个或多个纠错按键,在纠错模型中存储有各按键位置与按键之间的对应关系。优选地,在确定纠错按键的同时,还可以确定各纠错按键对应的概率,其中,纠错按键对应的概率为修正按键位置映射到该纠错按键上的概率。

需要说明的是,步骤S204至步骤S208仅是一种确定纠错按键的方式,在具体实现过程中还可以通过训练生成一个屏幕位置纠错模型即第二模型。将按键位置、终端的加速度方向以及终端的加速度值作为输入参数,输入第二模型,即可得出纠错按键。

其中,第二模型中建立有按键位置、加速度方向以及加速度值三个参数与各纠错按键的对应关系。也就是说,通过按键位置、加速度方向以及加速度值即可直接确定纠错按键。在具体实现过程中,本领域技术人员可以根据实际需求选择确定纠错按键的方案,本发明实施例中对此不作具体限制。

步骤S210:分别将各纠错按键对应的编码字符与已在震动发生前,和/或震动发生后输入的编码字符进行组合,得到纠错编码字符串。

优选地,也可以先将纠错按键按照对应的概率进行筛选,将概率高于设定值的纠错按键保留,而摒弃概率低于设定值的纠错按键。分别将筛选后保留的各纠错按键对应的编码字符与已在震动发生前输入的编码字符进行组合得到相应的纠错编码字符串。

步骤S212:采用语言模型分别对各编码字符串进行打分。

采用语言模型对编码字符串进行打分的具体实现,参见相关技术即可,本发明实施例中对此不作具体限制。例如:针对一个编码字符串可以将每三个编码字符划分成一组,分别判断各组是否符合成词规则,依据判断结果对编码字符串进行打分。再例如:针对一个编码字符串可以将每四个编码字符划分成一组,然后,分别判断各组是否符合成词规则,通过判断结果来对编码字符串进行打分。

步骤S214:筛选出所得分数排名靠前的设定个数的编码字符串。

其中,设定个数对应的具体值可以由本领域技术人员根据实际需求进行设置,例如:设置成3、4、或5等,本发明实施例对此不作具体限制。

通过步骤S212已对各编码字符串进行了打分。而分数越低的编码字符串对应有用户预输入的词条的可能性越小,因此,为了减轻后续的处理负担可以仅选择设定个数的所得分数排名靠前的编码字符串。

需要说明的是,本发明实施例中仅是列举了一种筛选编码字符串的方式,在具体实现过程中还可以不对编码字符串进行筛选,还可以预设一设定分数值,摒弃分数值低于设定分数值的编码字符串,保留分数值高于设定分数值的编码字符串。

步骤S216:从词库中分别获取筛选出的各编码字符串对应的词条。

其中,词库包括系统词库以及用户词库。

在系统词库中存储有输入法系统中设置的各编码字符串以及各编码字符串对应的词条。用户词库中存储有用户历史输入的各编码字符串以及各编字符串对应的上屏词条。

步骤S218:确定各词条的得分,筛选出所得分数排名靠前的设定个数的词条作为候选词条。

其中,设定个数对应的具体值可以由本领域技术人员根据实际需求进行设置,例如:设置成10、15、或20等,本发明实施例对此不作具体限制。

筛选出候选词条后即可在终端上进行显示,以供用户上屏词条。

通过本发明实施例提供的输入法纠错方法除具有实施例一中所示的输入法纠错方法所具有的有益效果外,还提供了两种具体地确定纠错按键的方法,可供本领域技术人员依据实际需求进行选择,使得输入法纠错方法更具灵活性。

实施例三

参照图3,示出了本发明实施例三的一种输入法纠错方法的步骤流程图。

本发明实施例中是以用户在公交车上使用移动终端预输入词条“颜色”,而在已经输入完成完编码字符“yan”后,公交车突然急刹车(移动终端相 应也产生震动),导致用户将预输入的编码字符“s”误输入为“w”为例,对本发明的输入法纠错方法进行的说明。

本发明实施例的输入法纠错方法具体包括以下步骤:

步骤S302:获取原始按键位置、加速度方向、加速度大小以及已输入的按键串。

本发明实施例中,由于公交车突然急刹车,惯性导致了移动终端在前进方向产生了加速度,其中,加速度包括加速度值以及加速度方向。

其中,原始按键位置即震动发生时用户触控的按键位置用pos_ori表示,加速度方向用d表示,加速度大小即加速度值用a表示,已输入的按键串即震动发生前输入的编码字符用inputstr表示。

本具体实例中已输入的按键串即“yan”,原始按键位置即“w”按键上的某一位置,获取到的加速度方向向前。

其中,原始按键位置以及加速度方向由移动终端中设置的震动感知装置获取,原始按键位置则可以由移动终端中设置的输入键盘获取。

需要说明的是,已输入的按键串也可以不在本步骤中获取,而在确定纠错按键之后再获取。

步骤S304:对按键位置进行修正,得到修正按键位置。

修正按键位置用pos_mod表示。

其中,本步骤为响应位置修正过程,通过响应位置修正可以将原始按键位置修正为修正按键位置。

输入法纠错系统需事先利用海量收集数据,建立加速度、方向、位置偏移之间的关系建立模型,最终得到一个像素(或者一个区域,即包含多个像素的区域)映射到所在按键和周围按键的概率。将上述模型与基于位置纠错的模型结合使用,即可对震动时输入的编码字符进行有效纠错。具体实现为:将加速度大小和方向(a,d)和原始按键位置(x,y)上述模型的输入参数即可得到修正按键位置(x`,y`),从而确定修正按键位置对应的纠错按键,依据纠错按键对应的编码字符对震动时输入的编码字符进行有效纠错。

建立加速度、方向、位置偏移之间的关系建立模型时,主要建立原始按键位置(x,y),加速度大小a,加速度方向d,修正按键位置(x`,y`)之间的关系。即这个模型的输入为x、y、a、d,输出为x`、y`;表示为(x`,y`)=model(x,y,a,d)。

本发明实施例中,加速度(a,d),原始按键位置(x,y)为“w”按键的中心位置坐标;根据模型(x`,y`)=model(x,y,a,d),计算得到(x`,y`)即“s”按键的中心位置坐标。

步骤S306:查询像素-按键映射关系,确定修正按键位置对应的各可能按键,以及各可能按键对应的概率。

本发明实施例中的按键位置是以像素为粒度进行的划分。因此,在确定修正按键位置后即可确定其所在的像素,那么,通过像素-按键映射关系即可查询出可能按键,以及各可能按键对应的概率。其中,可能按键即纠错按键。

该映射过程属于现有的屏幕位置纠错固有过程,利用坐标和按键之间的概率映射关系进行建立,该过程可查询到若干可能key1,key2,…,keyn。本发明实施中对映射过程的建立方式不作具体限定,在具体实现过程中,映射关系的具体建立方式参见现有技术即可,在此不再赘述。

本发明实施例中,通过步骤S304中确定的“s”按键的中心位置坐标,确定的可能按键对应的编码字符以及概率分别如下:

(“s”,0.85)、(“a”,0.07)、(“w”,0.008)以及(“d”,0.008)。

步骤S308:分别将可能按键对应的编码字符追加到已输入按键串即inputstr构成多个输入串,利用语言模型对输入串进行打分、过滤。

其中,输入串即编码字符串。

采用语言模型对输入串进行打分过滤时,参见相关技术即可,本发明实施例中对此不作具体限制。例如:在输入法中会保存多个基于字母的三元组,每一个三元组对应着一个打分s1,s2,…sk。在对输入串进行打分确定其对应的概率时,将输入串每三个字母划分成一组,然后,将每个三元组与保存的字母三元组进行比对,得到其对应的分数,将各组对应的打分按照设定算法进行计算即可得到输入串的概率v,即其对应的分数。

在对输入串进行过滤时,则可通过将各输入串对应的概率数由高至低进行排序,筛选出概率数排序在前N位的输入串,进行后续的查词工作。其中,N为预设值。

本发明实施例中,将四种可能的按键追加到已输入的输入串“yan”后面,构成多个输入串“yans”、“yana”、“yanw”以及“yand”。然后,对“yans”、“yana”、“yanw”以及“yand”利用语言模型进行打分,得到输入串对应的概率V。其中,追加所得到的输入串以及各输入串对应的概率分别如下:

(“yans”,0.88)(“yanw”,0.07)(“yand”,0.04)(“yana”,0.004)。

设置N为3,那么,在对输入串进行筛选时,选择概率排序在前三位的输入串进行后续的查词操作,即筛选出“yans”、“yanw”以及“yand”,对这三个输入串进行查词。

步骤S310:从词库中查询各输入串对应的词条。

其中,词库包括用户词库、系统词库等。

步骤S312:输入法从查询到的词条中选择候选词条。

在选择候选词条时,可以结合词条在词库中的得分以及词条对应的输入串的频率来确定词条的得分。

即获取词条在词库中的词库得分sd;利用步骤S308中计算到的该词条对应的输入串的频率v,来确定该词条的最终得分,即通过函数score=g(v,sd)来确定词条的最终得分。

将各词条的得分进行排序,选择出得分排序在前X位的词条作为候选词条在移动终端中进行显示,其中,X为预设值。

通过上述纠错流程本发明实施例中最终选择出的候选词条为:颜色、验收、眼神、延误、烟雾、眼袋。显然,候选词条中排序在首位的即用户预输入词条,可见,本发明实施例提供的输入法纠错方法,能够有效地对终端发生震动时输入的编码字符进行纠错。

下面以一具体实例再对本发明实施例提供的输入法纠错方法进行说明。

在火车启动的瞬时,移动终端感知到一个向键盘下方的加速度。此时用户已经输入完成了“我准备去di d”,或者启动瞬间用户预期输入的字母是“u”, 即用户预输入的内容为“我准备去帝都”;当火车启动瞬间用户预触控“U”按键时,由于向后加速度的存在,用户误触了“J”按键,若不采用基于屏幕位置纠错方法,或者采用现有的屏幕位置纠错方法,那么最终给出的候选词条则为“我准备去低端机”。

而采用本发明实施例提供的输入法纠错方法,对用户实际触控到的按键位置进行修正得到修正按键位置,然后确定修正按键位置对应的可能按键即“u”和“i”,通过将“u”和“i”追加到已输入的输入串“我准备去di d”构成输入串“我准备去di du”以及“我准备去di di”,然后分别从词库中查询这两个输入串对应的词条得到候选词条“我准备去帝都”“我准备去滴滴”等。将得到的候选词条进行显示后,用户即可上屏预输入的内容。

通过本发明实施例提供的输入法纠错方法,在编码字符串输入过程中当终端产生震动时,输入法获得震动发生时触控的按键位置、终端的加速度方向以及终端的加速度值,依据按键位置、终端的加速度方向以及终端的加速度值确定按键位置对应的纠错按键,而并非如现有技术直接确定震动发生触控的按键位置对应的纠错按键。本发明实施例提供的输入法纠错方法,在确定纠错按键时,结合终端的加速度方向以及加速度值,能够有效规避掉由于终端震动对触控按键位置造成的位置偏移的影响,而若能屏蔽掉由于终端震动对按键位置造成的偏移,则可以对输入的编码字符进行有效纠错。可见,本发明实施例提供输入法纠错方法,能够有效地对终端发生震动时输入的编码字符进行纠错。

实施例四

参照图4,示出了本发明实施例四的一种输入法纠错装置的结构框图。

本发明实施例的输入法纠错装置包括:获取模块402,编码字符串输入过程中终端产生震动时,获取震动发生时触控的按键位置以及所述终端的震动参数;纠错按键确定模块404,用于依据所述按键位置以及所述终端的震动参数确定所述按键位置对应的纠错按键;编码字符串构成模块406,用于将所述纠错按键对应的编码字符与已在震动发生前,和/或震动发生后输入的 编码字符进行组合,得到纠错编码字符串;候选词条确定模块408,用于依据纠错编码字符串得到候选词条。

通过本发明实施例提供的输入法纠错装置,在编码字符串输入过程中当终端产生震动时,确定震动发生时触控的按键位置以及终端的震动参数如:加速度方向和加速度值,依据按键位置、终端的加速度方向以及终端的加速度值确定所述按键位置确定对应的纠错按键,而并非如现有技术直接确定震动发生触控的按键位置对应的纠错按键。本发明实施例提供的输入法纠错装置,在确定纠错按键时,结合终端的震动参数,能够有效消除由于终端震动对触控按键位置造成的位置偏移的影响,而若能消除由于终端震动对按键位置造成的偏移,则可以对输入的编码字符进行有效纠错。可见,本发明实施例提供输入法纠错装置,能够有效地对终端发生震动时输入的编码字符进行纠错。

实施例五

参照图5,示出了本发明实施例五的一种输入法纠错装置的结构框图。

本发明实施例是对实施例四中的输入法纠错装置的进一步优化,优化后的输入法纠错装置包括:本发明实施例的输入法纠错装置包括:获取模块502,编码字符串输入过程中终端产生震动时,获取震动发生时触控的按键位置以及所述终端的震动参数;纠错按键确定模块504,用于依据所述按键位置以及所述终端的震动参数确定所述按键位置对应的纠错按键;编码字符串构成模块506,用于将所述纠错按键对应的编码字符与已在震动发生前和/或震动发生后输入的编码字符进行组合,得到纠错编码字符串;候选词条确定模块508,用于依据所述纠错编码字符串得到候选词条。

优选地,所述获取模块502具体用于确定震动发生时触控的按键位置以及所述终端的加速度方向以及所述终端的加速度值;所述纠错按键确定模块504具体用于依据所述按键位置、所述加速度方向以及所述加速度值确定所述按键位置对应的纠错按键。

优选地,所述纠错按键确定模块504包括:第一输入模块5042,用于将 所述按键位置、所述加速度方向以及所述加速度值作为输入参数,输入第一模型,得到修正按键位置;其中,所述第一模型中建立有修正按键位置与按键位置、加速度方向和加速度值的对应关系;确定模块5044,用于依据按键位置与按键之间的对应关系,确定所述修正按键位置对应的各纠错按键。

优选地,所述依纠错按键确定模块504具体用于:将所述按键位置、所述加速度方向以及所述加速度值作为输入参数,输入第二模型,得到纠错按键;其中,所述第二模型中建立有纠错按键位置、加速度方向和加速度值的对应关系。

优选地,所述按键位置对应一个像素,或所述按键位置对应一个包含多个像素的区域。

优选地,所述终端的加速度方向为所述终端的水平加速度方向,所述终端的加速度值为所述终端的水平加速度值。

优选地,所述候选词条确定模块508包括:打分模块5082,用于采用语言模型分别对所述各编码字符串进行打分;第一筛选模块5084,用于筛选出所得分数排名靠前的设定个数的编码字符串;词条获取模块5086,用于从词库中分别获取筛选出的各编码字符串对应的词条;第二筛选模块5088,用于确定各词条的得分,筛选出所得分数排名靠前的设定个数的词条作为候选词条。

本发明实施例的输入法纠错装置用于实现前述实施例一、实施例二以及实施例三中相应的输入法纠错方法,并且具有相应的方法实施例的有益效果,在此不再赘述。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

实施例六

参照图6,示出了本发明实施例六五的一种用于输入法纠错的装置的结构框图。

图6是根据一示例性实施例示出的一种用于输入法纠错的装置600的框 图。例如,装置600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

参照图6,装置600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件616。

处理组件602通常控制装置600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理部件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。

存储器604被配置为存储各种类型的数据以支持在设备600的操作。这些数据的示例包括用于在装置600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。

电源组件606为装置600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为装置600生成、管理和分配电力相关联的组件。

多媒体组件608包括在所述装置600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体 数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当装置600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。

I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件614包括一个或多个传感器,用于为装置600提供各个方面的状态评估。例如,传感器组件614可以检测到设备600的打开/关闭状态,组件的相对定位,例如所述组件为装置600的显示器和小键盘,传感器组件614还可以检测装置600或装置600一个组件的位置改变,用户与装置600接触的存在或不存在,装置600方位或加速/减速和装置600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件616被配置为便于装置600和其他设备之间有线或无线方式的通信。装置600可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信部件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。

在示例性实施例中,装置600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻 辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由装置600的处理器620执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种输入法纠错方法,所述方法包括:编码字符串输入过程中终端产生震动时,确定震动发生时触控的按键位置以及所述终端的震动参数;依据所述按键位置以及所述终端的震动参数确定所述按键位置对应的纠错按键;将所述纠错按键对应的编码字符与已在震动发生前和/或后输入的编码字符进行组合,得到纠错编码字符串;依据纠错编码字符串得到候选词条。

图7是本发明实施例中服务器的结构示意图。该服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1922(例如,一个或一个以上处理器)和存储器1932,一个或一个以上存储应用程序1942或数据1944的存储介质1930(例如一个或一个以上海量存储设备)。其中,存储器1932和存储介质1930可以是短暂存储或持久存储。存储在存储介质1930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1922可以设置为与存储介质1930通信,在服务器1900上执行存储介质1930中的一系列指令操作。

服务器1900还可以包括一个或一个以上电源1926,一个或一个以上有线或无线网络接口1950,一个或一个以上输入输出接口1958,一个或一个以上键盘1956,和/或,一个或一个以上操作系统1941,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公 开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上对本发明所提供的一种输入法纠错方案进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

在此提供的输入法纠错方案不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造具有本发明方案的系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时 被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的是输入法纠错方案中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1