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

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

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



背景技术:

目前输入法纠错功能主要是基于临近键位的位置纠错规则,该纠错规则通过将用户输入的编码字符串中相应编码字符替换为其附近键位对应的编码字符,然后再对替换后的编码字符串进行相应的转换,返回给用户纠错后的编码字符串对应的候选词条。例如:用户意图输入“吃饭”,但在输入编码字符‘n’时未能准确定位到相应键位,误敲到‘n’键位旁边的‘m’键位,输入的编码字符串成了‘chifam’,输入法在进行纠错时,通过分析输入的编码字符串,将编码字符‘m’替换为‘m’键位的临近键位‘n’对应的编码字母‘n’,输入的编码字符串则被纠正为‘chifan’,进而返回对应的候选词条‘吃饭’。

但用户在输入时存在的不确定因素较多,误输编码字符通常并非完全是误按临近键位造成的,还很有可能是无意触碰了其他非临近键位造成的。如当用户输入编码字符串后,进行上屏操作时,手指从最后一个输入编码字符键位移动到候选框相应候选词条时,容易误碰到中间一个或多个其他按键;或者,当用户完成上屏操作并继续输入时,手指由候选框到第一个编码字符键位之间移动时,容易误擦到其他键位;亦或,用户在输入编码字符串过程中,由于环境、抖动、操作界面大小等因素也很容易误擦到其他键位。显然,上述所列举的这些误输编码字符情况并不属于误按临近键位的情况。

可见,现有的输入法纠错方案通常仅适用于临近键位造成的误输问题,但在实际应用过程中,用户难免会因触碰非临近键位造成误输,但目前输入法的纠错方案却不能有效地对误按非临近键位误输的编码字符串进行纠错。由于现有的输入法纠错方案无法有效地对误按非临近键位误输的编码字符串进行纠错,相应地则不能将用户误输的编码字符串转换为用户意图输入的编码字符串,最终将导致不能返回用户想要的候选词条,即推送给用户的候 选词条可靠性差。

因此,需要本领域技术人员解决的技术问题是,提供一种能够为用户各种误输操作产生的编码字符串进行纠错的输入法纠错方案,以得到用户意图输入的编码字符串,进而提高推送给用户的候选词条的可靠性。



技术实现要素:

本发明提供了一种输入法纠错方法和装置,以及一种用于输入法纠错的装置,以解决现有的输入法方案无法有效地对用户误按非临近键位产生的编码字符串进行纠错的问题。

为了解决上述问题,本发明公开了一种输入法纠错方法,包括:接收输入的第一编码字符串,对所述第一编码字符串中输入时触控力度落在当前设定的触控力度范围之外的编码字符进行标记;将所述第一编码字符串中被标记的编码字符删除并生成第二编码字符串;确定所述第一编码字符串对应的候选词条;确定所述第二编码字符串对应的候选词条;将上述候选词条按照设定规则进行排序并显示。

优选地,所述接收输入的编码字符串,对所述第一编码字符串中输入时触控力度落在当前设定的触控力度范围之外的编码字符进行标记的步骤包括:接收编码字符并确定输入所述编码字符时的触控力度;在所述触控力度落在所述当前设定的触控力度范围之外时,对所述编码字符进行标记;判断所述第一编码字符串是否输入完毕;若未输入完毕,则继续执行所述接收编码字符的同时确定输入所述编码字符时的触控力度的步骤;若已输入完毕,则执行所述将所述第一编码字符串中被标记的编码字符删除并生成第二编码字符串的步骤。

优选地,所述当前设定的触控力度范围通过以下步骤得到:分别接收输入的所述当前设定的触控力度范围的上限值以及下限值;或者,接收用户输入的设定次数的触控操作,确定每次触控操作对应的触控力度,依据各次触控力度确定所述当前设定的触控力度范围。

优选地,所述输入法纠错方法还包括:当输入的所述第一编码字符串中不存在被标记的编码字符、且用户上屏所述第一编码字符串对应的候选词条 时,则保持当前设定的触控力度范围不变。

优选地,所述输入法纠错方法还包括:当输入的所述第一编码字符串中存在被标记的编码字符、且用户上屏纠错后的编码字符串对应的候选词条时,则保持当前设定的触控力度范围不变。

优选地,所述输入法纠错方法还包括:当输入的所述第一编码字符串中存在被标记的编码字符、且用户未上屏纠错后的编码字符串对应的候选词条时,依据触控力度范围增长因子和触控力度增长系数对所述当前设定的触控力度范围进行调整,将当前设定的触控力度范围更新为调整后的触控力度范围。

优选地,所述输入法纠错方法还包括:当输入的所述第一编码字符串中不存在被标记的编码字符、且用户执行了退格操作时,依据触控力度范围增长因子和触控力度增长系数对所述当前设定的触控力度范围进行调整,将当前设定的触控力度范围更新为调整后的触控力度范围。

优选地,所述输入法纠错方法还包括:对所述第一编码字符串进行临近键位的编码字符纠错,生成第三编码字符串;确定所述第三编码字符串对应的候选词条。

优选地,所述对所述第一编码字符串进行临近键位的编码字符纠错,生成第三编码字符串的步骤包括:确定所述第一编码字符串中被标记的编码字符;从临近键位表中查找出至少一个被标记的编码字符临近的编码字符;采用查找出的编码字符对应替换所述第一编码字符串中的被标记的编码字符,生成第三编码字符串。

为了解决上述问题,本发明还公开了一种输入法纠错装置包括:标记模块,用于接收输入的第一编码字符串,对所述第一编码字符串中输入时触控力度落在当前设定的触控力度范围之外的编码字符进行标记;删除模块,用于将所述第一编码字符串中被标记的编码字符删除并生成第二编码字符串;第一词条确定模块,用于确定所述第一编码字符串对应的候选词条;第二词条确定模块,用于确定所述第二编码字符串对应的候选词条;显示模块,用于将上述候选词条按照设定规则进行排序并显示。

优选地,所述标记模块包括:触控力度确定模块,用于接收编码字符的同时确定输入所述编码字符时的触控力度;编码标记模块,用于在所述触控力度落在所述当前设定的触控力度范围之外时对所述编码字符进行标记;第二判断模块,用于判断所述第一编码字符串是否输入完毕;执行模块,用于若未输入完毕,则继续执行所述触控力度确定模块;若已输入完毕,则执行所述删除模块。

优选地,所述输入法纠错装置还包括:范围值接收模块,用于分别接收输入的所述当前设定的触控力度范围的上限值以及下限值;或者,触控操作接收模块,用于接收用户输入的设定次数的触控操作,确定每次触控操作对应的触控力度,依据各次触控力度确定所述当前设定的触控力度范围。

优选地,所述输入法纠错装置还包括:第一调整模块,用于当输入的所述第一编码字符串中不存在被标记的编码字符、且用户上屏所述第一编码字符串对应的候选词条时,则保持当前设定的触控力度范围不变。

优选地,所述输入法纠错装置还包括:第二调整模块,用于当输入的所述第一编码字符串中存在被标记的编码字符、且用户上屏纠错后的编码字符串对应的候选词条时,则保持当前设定的触控力度范围不变。

优选地,所述输入法纠错装置还包括:第三调整模块,用于当输入的所述第一编码字符串中存在被标记的编码字符、且用户未上屏纠错后的编码字符串对应的候选词条时,依据触控力度范围增长因子和触控力度增长系数对所述当前设定的触控力度范围进行调整,将当前设定的触控力度范围更新为调整后的触控力度范围。

优选地,所述输入法纠错装置还包括:第四调整模块,用于当输入的所述第一编码字符串中不存在被标记的编码字符、且用户执行了退格操作时,依据触控力度范围增长因子和触控力度增长系数对所述当前设定的触控力度范围进行调整,将当前设定的触控力度范围更新为调整后的触控力度范围。

优选地,所述输入法纠错装置还包括:临近键位纠错模块,用于对所述第一编码字符串进行临近键位的编码字符纠错,生成第三编码字符串;第三 词条确定模块,用于确定所述第三编码字符串对应的候选词条。

优选地,所述临近键位纠错模块包括:标记确定模块,用于确定所述第一编码字符串中被标记的编码字符;编码字符查找模块,用于从临近键位表中查找出至少一个被标记的编码字符临近的编码字符;替换模块3,用于采用查找出的编码字符对应替换所述第一编码字符串中的被标记的编码字符,生成第三编码字符串。

为了解决上述问题,本发明又公开了一种用于输入法纠错的装置,包括存储器,以及一个或者一个以上的程序,其中所述一个或者一个以上程序存储于所述存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收输入的第一编码字符串,对所述第一编码字符串中输入时触控力度落在当前设定的触控力度范围之外的编码字符进行标记;将所述第一编码字符串中被标记的编码字符删除并生成第二编码字符串;确定所述第一编码字符串对应的候选词条;确定所述第二编码字符串对应的候选词条;将上述候选词条按照设定规则进行排序并显示。

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

本发明实施例提供的输入法纠错方案,在接收输入的第一编码字符串的同时对第一编码字符串中输入时触控力度落在当前设定的触控力度范围之外的编码字符进行标记,并通过删除第一编码字符串中被标记的编码字符来对第一编码字符串进行纠错得到纠错后的第二编码字符串。由于误输入编码字符和正常输入编码字符时的触控力度不同,因此,通过编码字符输入时的触控力度即可确定编码字符是否为误输。本发明实施例提供的输入法纠错方案,由于是基于触控力度判断是否为误输入的编码字符,因此,不仅可以适用于临近键位造成的误输入的判断,还适用于非临近键位造成的误输入的判断,故能够有效地对非临近键位而误输入的编码字符串进行纠错。

不仅如此,本发明实施例提供的输入法纠错方案,还将第一编码字符串以及第二编码字符串对应的候选词条按设定规则进行排序显示。这样,能够 保证用户所需的词条以较大概率出现在首候选页中,从而保证推送给用户的候选词条的可靠性和命中率。

附图说明

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

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

图3是采用实施例二中所示的方法进行输入法纠错的具体流程图;

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

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

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

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

具体实施方式

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

实施例一

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

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

步骤S102:接收输入的第一编码字符串,对第一编码字符串中输入时触控力度落在当前设定的触控力度范围之外的编码字符进行标记。

对第一编码字符串中的编码字符进行标记时,可以采用任意适当的形式进行标记。例如:可以是在整个第一编码字符串输入完成后,再对输入时触控力度落在当前设定的触控力度范围之外的编码字符进行统一标记。也可以是每输入一个编码字符即对其触控力度进行判断,然后依据判断结果来确定是否对编码字符进行标记。

步骤S104:将第一编码字符串中被标记的编码字符删除并生成第二编码字符串。

本步骤中,按照预定的触控力度范围对第一编码字符串进行纠错生成第二编码字符串。

步骤S106:确定第一编码字符串对应的候选词条。

步骤S108:确定第二编码字符串对应的候选词条。

需要说明的是,对于确定编码字符串对应的候选词条的操作,参见相关技术即可,本发明实施例中对此不作具体限制。

步骤S108并不局限于在步骤S106之后执行,该步骤可以在步骤S102之后步骤S110之前的任意时刻执行。

步骤S110:将上述候选词条按照设定规则进行排序并显示。

其中,上述候选词条包含第一编码字符串对应的候选词条,以及第二编码字符串对应的候选词条。

在对候选词条进行排序时,参见相关对候选词条进行排序显示的技术即可,本发明实施例中对此不作具体限制。例如:基于候选词条的类型、词频、上下文、时间、位置、应用环境、用户所属群体等进行排序。

本发明实施例提供的输入法纠错方案,基于误输入编码字符和正常输入编码字符时的触控力度不同的原则,通过编码字符输入时的触控力度来判断编码字符是否为用户误输入的。由于是基于触控力度判断是否为误输入的编码字符,因此,不仅可以适用于临近键位造成的误输入的判断,还适用于非临近键位造成的误输入的判断,故能够有效地对非临近键位而误输入的编码字符串进行纠错。不仅如此,本发明实施例提供的输入法纠错方法,还将第一编码字符串以及第二编码字符串对应的候选词条按设定规则进行排序显示。这样,能够保证用户所需的词条在候选词条中,从而保证推送给用户的候选词条的可靠性。

实施例二

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

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

步骤S202:分别接收输入的当前设定的触控力度范围的上限值以及下限值。

本发明实施例提供的输入法纠错方法适用于输入法客户端,输入法客户 端包括但不限于:手机、平板、电脑、智能终端等输入法客户端。

当前设定的触控力度范围包含上限值以及下限值,本发明实施例中以用户直接输入当前设定的触控力度范围值为例进行的说明。但在具体实现过程中,并不局限于该种方式得到当前设定的触控力度范围,还可以通过以下两种优选方式得到当前设定的触控力度范围:

优选方式一、接收用户输入的设定次数的触控操作,确定每次触控操作对应的触控力度,依据各次触控力度确定当前设定的触控力度范围。

一种优选的依据各次触控力度确定当前设定的触控力度范围的方式为:依据各次触控力度生成分布图,例如正态分布图,将正态分布图中两端的触控力度舍弃,而仅选择位于正态分布图中间某段数据区域内的触控力度,然后,依据该段数据内的触控力度确定当前设定的触控力度范围。这种优选的确定当前设定的触控力度范围的方式,由于摒弃了不可信的触控力度,因此,所得到的触控力度范围可信度更高。

需要说明的是,在确定每次触控操作对应的触控力度时,可以通过3D-Touch相关的压感检测与控制技术来进行确定。当然,也可以通过在显示屏下设置一触控力度感知模块,来确定每次触控操作对应的触控力度。

优选方式二、基于本次输入编码字符串前、最近一次输入编码字符串时对应的当前设定的触控力度范围,以及最近一次输入的编码字符串纠错结果以及用户上屏词条的结果,来调整最近一次输入编码字符串时对应的当前设定的触控力度范围,将调整后的触控力度范围作为步骤202中的当前设定的触控力度范围。

所述调整最近一次输入编码字符串时对应的当前设定的触控力度范围的具体方案如下:

当最近一次输入的编码字符串中不存在被标记的编码字符、且用户上屏用户输入的编码字符串对应的候选词条时,则保持当前设定的触控力度范围不变。也即,步骤S202中的用户发生当前输入时的当前设定的触控力度范围与最近一次输入对应的当前设定的触控力度范围相同。

当最近一次输入的编码字符串中存在被标记的编码字符、且用户上屏纠 错后的编码字符串对应的候选词条时,则保持当前设定的触控力度范围不变。也即,步骤S202中的用户发生当前输入时的当前设定的触控力度范围与最近一次输入对应的当前设定的触控力度范围相同。

当最近一次输入的编码字符串中存在被标记的编码字符、且用户未上屏纠错后的编码字符串对应的候选词条时,依据触控力度范围增长因子和触控力度增长系数,对当前设定的触控力度范围进行调整,把调整后的触控力度范围重新作为当前设定的触控力度范围,即将调整后的触控力度范围作为步骤S202中的用户发生当前输入时的当前设定的触控力度范围。

当最近一次输入的编码字符串中不存在被标记的编码字符、且用户执行了退格操作时,依据触控力度范围增长因子和触控力度增长系数对当前设定的触控力度范围进行调整,把调整后的触控力度范围重新作为当前设定的触控力度范围,即将调整后的触控力度范围作为步骤S202中的用户发生当前输入时的当前设定的触控力度范围。

对于触控力度范围增长因子和触控力度增长系数可以由本领域技术人员根据实际需求进行设置,本发明实施例中对此不作具体限制。

需要说明的是,本发明实施例中仅是以基于对最近一次输入编码字符串时对应的触控力度范围进行调整得到步骤S202中的当前设定的触控力度范围为例进行的说明。在具体实现过程中,并不局限于此,还可以基于对最近n次输入编码字符串时对应的触控力度范围、或者基于对最近一段时间内输入编码字符串时对应的触控力度范围进行调整得到步骤S202中的当前设定的触控力度范围。

步骤S204:接收编码字符的同时确定输入编码字符时的触控力度。

用户在使用输入法时,通过输入编码字符串来获取所需词条。而输入编码字符串时则需输入一个或多个编码字符。本步骤中,输入法客户端在接收到输入的每个编码字符的同时,获取用户输入该编码字符时的触控力度。

步骤S206:判断编码字符对应的触控力度是否落在当前设定的触控力度范围之外;若是,则执行步骤S208,若否,则执行设定操作。

若落在当前设定的触控力度范围之外,则说明相应的编码字符为误输入 的,而若落在当前设定的触控力度范围之内,则说明相应的编码字符为有意输入。

其中,设定操作可以设定为判断为误输入的编码字符进行标记。

步骤S208:当编码字符对应的触控力度落在当前设定触控力度范围之外时,对该编码字符进行标记。

对编码字符进行标记的目的在于将用户误输入的编码字符和用户有意输入的编码字符进行区分。对于标记的具体形式可以由本领域技术人员在具体实现过程中根据实际需求进行设置,本发明实施例中对此不作具体限定。

步骤S210:判断第一编码字符串是否输入完毕;若是,则执行步骤S212,若否,则返回执行步骤S204。

由于第一编码字符串有可能包含多个编码字符,而上述步骤S204以及步骤S208仅是对一个编码字符的操作,因此,本步骤中在对一个编码字符的操作完成后,需要判断是否还有未输入完成的编码字符。若存在,则重复执行步骤S204至步骤S208,直至第一编码字符串输入完毕。

对于第一编码字符串是否输入完毕的具体判断方式,可以由本领域技术人员根据实际需求进行设置。例如:设置成若超出设定时间未接收到新的编码字符,则确定第一编码字符串已输入完毕。

步骤S212:当第一编码字符串输入完毕时,将第一编码字符串中被标记的编码字符删除生成第二编码字符串。

被标记的编码字符即用户误输入的编码字符,本步骤中将第一编码字符串中被标记的编码字符删除,即可完成对第一编码字符串的纠错。

步骤S214:确定第一编码字符串对应的候选词条。

需要说明的是,步骤S214并不局限于在步骤S212之后执行,步骤S214还可以在步骤S212之前或者与步骤S212并行执行。

步骤S216:确定第二编码字符串对应的候选词条。

对于确定编码字符串对应的候选词条的具体操作,参见相关技术即可,本发明实施例中对此不作具体限定。例如:首先将编码字符串进行分词,然后依据分词结果确定候选词条。

需要说明的是,步骤S216并不局限于在步骤S214之后执行,步骤S216可以在第一编码字符串输入完毕后至步骤S220之前任意时刻执行。

步骤S218:对第一编码字符串进行临近键位的编码字符纠错,生成第三编码字符串,确定所述第三编码字符串对应的候选词条。

一种优选的对第一编码字符串进行临近键位的编码字符纠错,生成第三编码字符串的方式如下:

S1:确定第一编码字符串中被标记的编码字符;

S2:从临近键位表中查找出至少一个被标记的编码字符临近的编码字符;

S3:采用所述临近的编码字符对应替换所述第一编码字符串中的被标记的编码字符,生成第三编码字符串。

若第一编码字符串中包含多个被标记的编码字符,那么,在进行临近键位的编码字符纠错时,可以仅从临近键位表中查找其中一个被标记的编码字符临近的编码字符,然后,仅替换这一个被标记的编码字符生成第三编码字符串。当然,也可以从临近键位表中查找两个、或者三个被标记的编码字符临近的编码字符,分别对应替换第一编码字符串中的被标记的编码字符,生成第三编码字符串。

第三编码字符串可以为一串字符,也可以是多串字符。当第三编码字符串为多串编码字符串时,可以分别确定上述多个编码字符串对应的候选词条。也可以选择一个或多个最优的编码字符串,并仅确定最优的编码字符串对应的候选词条。

本发明实施例中是以结合临近键位纠错、以及触控力度范围纠错两种纠错方式对第一编码字符串进行纠错处理的。该种方式相较于仅是依据临近键位纠错或仅依据触控力度范围进行纠错的方式,能够提升纠错的准确度,进一步提升推送给用户的候选词条的可靠性。

在具体实现过程中也可以不执行步骤S218而仅是依据触控力度范围对编码字符串进行纠错。

步骤S220:将上述候选词条按照设定规则进行排序并显示。

其中,本实施例中上述候选词条包括:第一编码字符串对应的候选词条,第二编码字符串对应的候选词条以及第三编码字符串对应的候选词条。

在对候选词条进行排序时,参见相关对候选词条进行排序显示的技术即可,本发明实施例中对此不作具体限制。例如:基于候选词条的类型、词频、上下文、时间、位置、应用环境、用户类型等进行排序。

按照顺序显示了候选词条后,用户即可浏览该候选词条并从中选择所需的词条上屏,当然,用户也可以执行退格操作并重新输入新的编码字符串。此时,输入法则会依据用户对候选词条的具体操作,对步骤S202中的当前设定的触控力度范围进行调整。

步骤S222:对当前设定的触控力度范围进行调整。

对当前设定的触控力度范围进行调整后得到的新的触控力度范围,即可作为下一编码字符串输入时对应的当前设定的触控力度范围。

对当前设定的触控力度范围进行调整的四种优选方式如下:

第一种优选方式:当输入的第一编码字符串中不存在被标记的编码字符、且用户上屏第一编码字符串对应的候选词条时,则保持当前设定的触控力度范围不变。

第二种优选方式:当输入的第一编码字符串中存在被标记的编码字符、且用户上屏纠错后的编码字符串对应的候选词条时,则保持当前设定的触控力度范围不变。

第三种优选方式:当输入的第一编码字符串中存在被标记的编码字符、且用户未上屏纠错后的编码字符串对应的候选词条时,依据触控力度范围增长因子和触控力度增长系数对当前设定的触控力度范围进行调整,将当前设定的触控力度范围更新为调整后的触控力度范围,以作为用户下一次输入编码字符串时标记误输入编码字符的依据。

本发明实施例中对于触控力度范围增长因子和触控力度增长系数的设置,本发明实施例中不作具体限制。对于参照这两个参数对当前设定的触控力度范围进行调整的具体方式也可以由本领域技术人员根据实际需求设置成任意可行性方式。

例如可以进行如下设置:假设当前设定的触控力度范围为[x,y],调整后的当前设定的触控力度范围为[x’,y’],触控力度范围增长因子为d,触控力度增长系数为w。如果用户输入第一编码字符串过程中的最小触控力度小于x,则x’=x-w*d;如果用户输入第一编码字符串过程中的最小触控力度大于y,则y’=y+w*d。

第四种优选方式:当输入的第一编码字符串中不存在被标记的编码字符、且用户执行了退格操作时,依据触控力度范围增长因子和触控力度增长系数对当前设定的触控力度范围进行调整,将当前设定的触控力度范围更新为调整后的触控力度范围,以作为用户下一次输入编码字符串时标记误输入编码字符的依据。

本发明实施例中对于触控力度范围增长因子和触控力度增长系数的设置,本发明实施例中不作具体限制。对于参照这两个参数对当前设定的触控力度范围进行调整的具体方式也可以由本领域技术人员根据实际需求设置成任意可行的方式。

例如可以进行如下设置:假设当前设定的触控力度范围为[x,y],调整后的当前设定的触控力度范围为[x’,y’],触控力度范围增长因子为d,触控力度增长系数为w。如果用户输入第一编码字符串的过程中的最小触控力度大于x,则x’=x+w*d;如果用户输入第一编码字符串过程中的最小触控力度小于y,则y’=y-w*d。

本发明实施例提供的输入法纠错方法除具有实施例一中的输入法纠错方法所具有的有益效果外,还可以自动学习用户的触控屏幕的习惯按压力度(即当前设定的触控力度范围),更能满足用户的实际需求,提升用户的使用体验。

下面参照图3,以一具体实例对本发明实施例的输入法纠错流程进行说明。

本具体实例中的输入法纠错流程包括以下步骤:

步骤S302:用户启动输入法客户端,设置正常输入时的触控力度范围。

当前设定的触控力度范围体现了用户习惯的按压力度。对于当前设定的触控力度范围的确定参见实施例二中所示的设置方式即可,本具体实例中对此不再赘述。

步骤S304:用户输入编码字符,输入法识别用户按压力度,与正常输入时的触控力度范围进行比较,并做纠错标记。

本发明实施例中以输入的第一编码字符串为字母序列为例对本具体实例进行说明。用户按压力度即用户输入字母时的触控力度。

用户依次输入想要输入的字母,这个过程中,用户可能会误碰到其他按键,输入法会识别用户每次按键的触控力度,然后将此触控力度与用户正常输入时的触控力度范围进行比较,如果用户此次的触控力度不在用户正常输入时的触控力度范围内,则为此次输入的字母做纠错标记。触控力度落在正常输入时的触控力度范围的输入则认为是正常输入。

步骤S306:判断是否还有字母输入;若是,则返回执行步骤S304,若否,则执行步骤S308。

当还有字母输入时,则循环执行步骤S304至步骤S306,直至没有字母输入或字母序列输入完毕为止。

步骤S308:输入法内核转换模块对原始输入字母序列进行转换,获取未纠错的候选队列1。

本步骤中,输入法内核进行正常转换过程。输入法内核转换模块对原始输入序列进行转换,如音节划分、拼音转换、词库查找与填词以及候选调频排序,最终得到未纠错的候选队列1。候选队列1即原始输入字母序列对应的候选词条。

步骤S310:输入法内核纠错模块,根据触控力度纠错标记,构造新的输入字母序列,并对新的字母序列进行转换,得到纠错候选队列2。

输入法内核纠错模块,根据字母序列中各字母的纠错标记,对用户输入的字母序列进行纠错,舍弃触控力度不在用户正常输入时的触控力度范围内的字母(即标有纠错标记的字母),构造纠错字母序列,然后对构造的纠错字母序列进行相应转换等处理,得到纠错字母序列对应的纠错候选队列2。

步骤S310中的对原始输入字母序列进行基于触控力度的纠错时,还可以与基于临近键位的位置纠错方法结合使用,在舍弃触控力度不在用户正常输入时的触控力度范围内字母得到纠错字母序列A的同时。还会基于临近键位的位置纠错,构造出多个纠错字母序列B,具体地,通过查找临近键位表,对输入序列中的字母进行相应替换,构造出多个纠错字母序列(如对一个或多个字母进行临近键位替换)。然后,根据纠错序列的语言模型对纠错字母序列A以及多个纠错字母序列B进行排序,选出最优的纠错字母序列进行上述转换,得到纠错候选队列2。

当然也可以从多个纠错字母序列B中选出最优的纠错字母序列,然后将纠错字母序列A以及选出的最优的纠错字母序列均作为纠错候选序列2。

S312:输入法内核根据候选词条类型、词频、字母序列的语言模型等,对候选队列1和纠错候选队列2进行合并,返回合并后队列。

输入法内核对不包含纠错候选的队列1和纠错候选队列2,根据候选词类型、词频等进行归并,将候选队列中的各候选词条进行排序,按照排序将各候选词条返回输入法前端进行展示,供用户选择上屏。

下面以用户通过手机的qwerty26键盘输入字母序列,该用户正常输入时的触控力度范围为Pr[x,y],用户在上次上屏操作后,意图继续输入“习惯”(“xiguan”)的错输和纠错过程为例,对本具体实例的输入法纠错流程进行说明。具体流程如下:

(1)用户手指由候选框至‘x’键移动过程中,误轻擦到‘w’键,输入法识别用户按压力度,不在用户正常输入时的触控力度范围内,因此,对‘w’字母记纠错标记;

(2)用户手指按压‘x’键,输入法识别用户按压力度,在用户正常输入时的触控力度范围内;因此,不对‘x’字母记纠错标记;

(3)用户手指由‘x’键向‘i’键位置移动,误轻碰到‘g’键,输入法识别用户按压力度,不在用户正常输入时的触控力度范围内,因此,对‘g’字母记纠错标记;

(4)用户手指按压‘i’、‘g’、‘u’键,输入法识别用户按压力度,在用 户正常输入时的触控力度范围;因此,不对上述三个字母记纠错标记;

(5)用户手指由‘u’键向‘a’键位置移动,误轻碰到‘d’键,输入法识别用户按压力度,不在用户正常输入时的触控力度范围内;因此,对‘d’字母记纠错标记;

(6)用户手指按压‘a’键,输入法识别用户按压力度,在用户正常输入时的触控力度范围内;因此,不对‘a’字母记纠错标记;

(7)用户手指由‘a’键向‘n’键位置移动,误轻碰到‘f’键,输入法识别用户按压力度,不在用户正常输入时的触控力度范围内;因此,对‘f’字母进行纠错标记;

(8)用户手指按压‘n’键,输入法识别用户按压力度,在用户正常输入时的触控力度范围内;因此,不对‘n’字母记纠错标记;

(9)内核对用户输入的字母序列“wxgigudafn”进行转换,纠错模块通过分析纠错标记,舍弃被进行纠错标记的字母,得到用户意图输入的字母序列“xiguan”,进而进行字母序列转换,得到候选词条“习惯”,返回“习惯”候选词条至用户。

通过本具体实例提供基于用户触控力度的输入法纠错方法,输入法识别出用户输入每个字母时的触控力度,将其与用户正常输入时的触控力度范围进行比较,通过舍弃输入时按压力度不在用户正常输入时的触控力度范围内的字母来实现对字母序列进行纠错。该种纠错方法不仅可以适用于临近键位造成的误输入的判断,还适用于非临近键位造成的误输入的判断,因此,能够提升输入法纠错的准确度,为用户提供可靠性高的候选词条。更进一步,由于能够为用户提供可靠性高的候选词条,因此,能够减少用户的退格删除操作,提升用户的输入体验。

实施例三

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

本发明实施例的输入法纠错装置包括:标记模块402,用于接收输入的第一编码字符串,对所述第一编码字符串中输入时触控力度落在当前设定的 触控力度范围之外的编码字符进行标记;删除模块404,用于将所述第一编码字符串中被标记的编码字符删除并生成第二编码字符串;第一词条确定模块406,用于确定所述第一编码字符串对应的候选词条;第二词条确定模块408,用于确定所述第二编码字符串对应的候选词条;显示模块410,用于将上述候选词条按照设定规则进行排序并显示。

通过本发明实施提供的输入法纠错装置,基于误输入编码字符和正常输入编码字符时的触控力度不同的原则,通过编码字符输入时的触控力度来判断编码字符是否为误输。由于是基于触控力度判断是否为误输入的编码字符,因此,不仅可以适用于临近键位造成的误输入的判断,还适用于非临近键位造成的误输入的判断,故能够有效地对非临近键位而误输入的编码字符串进行纠错。不仅如此,本发明实施例提供的输入法纠错装置,还将第一编码字符串以及第二编码字符串对应的候选词条按设定规则进行排序显示。这样,能够保证用户所需的词条在候选词条中,从而保证推送给用户的候选词条的可靠性。

实施例四

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

本发明实施例是对实施例三中的输入法纠错装置的进一步优化,优化后的输入法纠错装置包括:标记模块502,用于接收输入的第一编码字符串,对所述第一编码字符串中输入时触控力度落在当前设定的触控力度范围之外的编码字符进行标记;删除模块504,用于将所述第一编码字符串中被标记的编码字符删除并生成第二编码字符串;第一词条确定模块506,用于确定所述第一编码字符串对应的候选词条;第二词条确定模块508,用于确定所述第二编码字符串对应的候选词条;显示模块510,用于将上述候选词条按照设定规则进行排序并显示。

优选地,所述标记模块502包括:触控力度确定模块5021,用于接收编码字符的同时确定输入所述编码字符时的触控力度;编码标记模块5022,用于在所述触控力度落在所述当前设定的触控力度范围之外时对所述编码字 符进行标记;第二判断模块5023,用于判断所述第一编码字符串是否输入完毕;执行模块5024,用于若未输入完毕,则继续执行所述触控力度确定模块;若已输入完毕,则执行所述删除模块504。

优选地,本发明实施例提供的输入法纠错装置还包括:范围值接收模块512,用于分别接收输入的所述当前设定的触控力度范围的上限值以及下限值;或者,触控操作接收模块514,用于接收用户输入的设定次数的触控操作,确定每次触控操作对应的触控力度,依据各次触控力度确定所述当前设定的触控力度范围。

优选地,本发明实施例提供的输入法纠错装置还包括:第一调整模块516,用于当输入的所述第一编码字符串中不存在被标记的编码字符、且用户上屏所述第一编码字符串对应的候选词条时,则保持当前设定的触控力度范围不变。

优选地,本发明实施例提供的输入法纠错装置还包括:第二调整模块518,用于当输入的所述第一编码字符串中存在被标记的编码字符、且用户上屏纠错后的编码字符串对应的候选词条时,则保持当前设定的触控力度范围不变。

优选地,本发明实施例提供的所述输入法纠错装置还包括:第三调整模块520,用于当输入的所述第一编码字符串中存在被标记的编码字符、且用户未上屏纠错后的编码字符串对应的候选词条时,依据触控力度范围增长因子和触控力度增长系数对所述当前设定的触控力度范围进行调整,将当前设定的触控力度范围更新为调整后的触控力度范围。

优选地,本发明实施例提供的所述输入法纠错装置还包括:第四调整模块522,用于当输入的所述第一编码字符串中不存在被标记的编码字符、且用户执行了退格操作时,依据触控力度范围增长因子和触控力度增长系数对所述当前设定的触控力度范围进行调整,将当前设定的触控力度范围更新为调整后的触控力度范围。

优选地,本发明实施例提供的所述输入法纠错装置还包括:临近键位纠错模块524,用于对所述第一编码字符串进行临近键位的编码字符纠错,生 成第三编码字符串;第三词条确定模块526,用于确定所述第三编码字符串对应的候选词条。

优选地,所述临近键位纠错模块524包括:标记确定模块5241,用于确定所述第一编码字符串中被标记的编码字符;编码字符查找模块5242,用于从临近键位表中查找出至少一个被标记的编码字符临近的编码字符;替换模块5243,用于采用查找出的编码字符对应替换所述第一编码字符串中的被标记的编码字符,生成第三编码字符串。

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

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

实施例五

参照图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