CN105988595B - 滑行输入方法及装置 - Google Patents

滑行输入方法及装置 Download PDF

Info

Publication number
CN105988595B
CN105988595B CN201510086379.7A CN201510086379A CN105988595B CN 105988595 B CN105988595 B CN 105988595B CN 201510086379 A CN201510086379 A CN 201510086379A CN 105988595 B CN105988595 B CN 105988595B
Authority
CN
China
Prior art keywords
character
characters
sliding
filtering
valid
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510086379.7A
Other languages
English (en)
Other versions
CN105988595A (zh
Inventor
邹林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Chule Cootek Information Technology Co Ltd
Original Assignee
Shanghai Chule Cootek Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Chule Cootek Information Technology Co Ltd filed Critical Shanghai Chule Cootek Information Technology Co Ltd
Priority to CN201510086379.7A priority Critical patent/CN105988595B/zh
Priority to EP16751956.0A priority patent/EP3260955A4/en
Priority to PCT/CN2016/073935 priority patent/WO2016131425A1/zh
Publication of CN105988595A publication Critical patent/CN105988595A/zh
Priority to US15/679,708 priority patent/US20180165001A1/en
Application granted granted Critical
Publication of CN105988595B publication Critical patent/CN105988595B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0236Character input methods using selection techniques to select from displayed items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

一种滑行输入方法及装置,所述方法包括:当检测到滑行输入操作时,获取触点位置对应的字符;根据与所述触点位置对应的字符,在数据库中进行过滤获得有效字符,并基于所述有效字符获得与所述滑行轨迹对应的有效字符串;其中,所述在数据库中进行过滤包括从数据库中选中字符组合,使得所选中的字符组合的设定字符位包含所述与触点位置对应的字符;当所述滑行轨迹满足预设的反馈条件时,输出所述有效字符串。本发明有效节省了计算量,并且提高了输入效率。

Description

滑行输入方法及装置
技术领域
本发明涉及文字输入技术领域,特别是涉及一种滑行输入方法及装置。
背景技术
在现有技术中,传统的软件键盘会给用户的使用带来很大的不便。这主要是由于触摸屏面积较小,供选择的内容较多,所以相应的屏幕选择区域也较小。这样就使得用户无法直接通过手指准确的点击屏幕上的选择区域来进行输入而往往需要借助于其他具有更小触点分辨率的工具,如手写笔。这就要求在大多数情况下,用户需要同时使用双手进行操作:一只手把持该电子设备,另一只手利用手写笔点击触摸屏进行输入。这样一来,不仅操作比较麻烦,而且,即使如此,在某些环境,如行驶的汽车中或其它较为颠簸的环境中,用户仍然可能由于各种原因产生例如错误点击按键等各种误操作,从而无法准确实现输入。
通常在配备有较小面积触摸屏的设备上,主要的输入是通过软件键盘来完成的。用户通过按压点击软件键盘上的按键,来选择输入内容,从而完成输入。在现有技术中,传统的软件键盘会给用户的使用带来很大的不便。这主要是由于触摸屏面积较小,供选择的内容较多,所以相应的屏幕选择区域也较小。这样就使得用户无法直接通过手指准确的点击屏幕上的选择区域来进行输入而往往需要借助于其他具有更小触点分辨率的工具,如手写笔。这就要求在大多数情况下,用户需要同时使用双手进行操作:一只手把持该电子设备,另一只手利用手写笔点击触摸屏进行输入。这样一来,不仅操作比较麻烦,而且,即使如此,在某些环境,如行驶的汽车中或其它较为颠簸的环境中,用户仍然可能由于各种原因产生例如错误点击按键等各种误操作,从而无法准确实现输入
滑行输入法是近几年涌现的一种全新的输入方式,在追求高效率的当今社会中,输入法的高效与否就成为了一个至关重要的条件,滑行输入法即是在触屏手机上,或者平板电脑上,通过不离开平面的滑行的方式,串联起音节,起到高效输入的目的。
但是,现有技术中的滑行输入法一般在用户滑行动作完成之后才对滑行轨迹中的字符进行相应的分析,存在着输入效率低下的问题。
发明内容
本发明实施例解决的问题是如何提高滑行输入的输入效率,节省计算量。
为解决上述问题,本发明实施例提供了一种滑行输入方法,所述方法包括:当检测到滑行输入操作时,获取触点位置对应的字符;根据与所述触点位置对应的字符,在数据库中进行过滤获得有效字符,并基于所述有效字符获得与所述滑行轨迹对应的字符串;其中,所述在数据库中进行过滤包括从数据库中选中字符组合,使得所选中的字符组合的设定字符位包含所述与所述触点位置对应的字符;当所述滑行轨迹满足预设的反馈条件时,输出所述与所述有效字符串。
根据本发明实施方式的一方面,所述从数据库中选中字符组合,使得所选中的字符组合的设定字符位包含与触点位置对应的字符包括:当所述触点位置对应的字符为所选中字符组合的非首位字符时,将滑至当前触点位置之前选中字符中的一个或多个,与所述触点当前位置对应的字符进行组合,形成过滤基础,并基于该过滤基础在数据库中进行过滤。也就是说,当所述触点位置对应的字符为所选中字符组合的非首位字符时,采用滑至当前触点位置之前选中字符的所有子集,与所述触点当前位置对应的字符进行任意组合,从而形成在数据库中进行过滤的基础。
根据本发明实施方式的另一方面,还提供了一种滑行输入装置,包括:获取单元,适于当检测到存在滑行输入操作时,获取触点位置对应的字符;过滤单元,适于根据所述与触点位置对应的字符,按照设定的过滤步骤,在数据库中进行过滤获得有效字符,并基于所述有效字符,获得与所述滑行轨迹对应的有效字符串;输出显示单元,适于当所述滑行轨迹满足预设的反馈条件时,输出该有效字符串。
与现有技术相比,本发明的技术方案根据滑行轨迹中触点位置对应的字符,经由选中步骤和/或排除步骤,能够快速而精准地从数据库中过滤出有效字符,从而大大提高基于该有效字符所获得的与该滑行轨迹对应的字符串的准确性。此外,通过预设一定的反馈条件,使得当满足预设的反馈条件时,能够将将所选取的字符串显示给用户,而不必等到用户的滑行输入操作结束时才将相应的词汇反馈给用户进行选择,可以有效节省计算量,并且可以提高输入效率。
附图说明
图1是本发明滑行输入方法一种实施方式的流程示意图;
图2是本发明滑行输入方法一种实施方式中步骤S101的流程示意图;
图3是本发明滑行输入方法一种实施方式中进行滑行输入的操作示意图;
图4是本发明滑行输入方法一种实施方式中参照装置的数据流向的框架示意图;
图5是本发明滑行输入方法一种实施方式中将有效字符串显示在键盘区域的显示示意图;
图6是本发明滑行输入方法一种实施方式中数据的存储示意图;
图7是本发明滑行输入方法一种实施方式中进行滑行输入的操作示意图;
图8是本发明滑行输入方法一种实施方式中步骤S102的流程示意图;
图9是本发明滑行输入方法一种实施方式中对照图7和图8在数据库中进行过滤的示意图;
图10是本发明滑行输入装置一种实施方式的结构示意图。
具体实施方式
在详细说明根据本发明的实施例前,应该注意到的是,所述实施例主要在于向电子设备中输入文本有关的方法步骤和设备组件的组合。因此,所属设备组件和方法步骤已经在附图中通过常规符号在适当的位置表示出来了,并且只示出了与理解本发明的实施例有关的细节,以免因对于得益于本发明的本领域普通技术人员而言显而易见的那些细节而模糊了本公开内容。
在本文中,第一和第二之类的关系术语仅仅用来区分一个实体或动作与另一个实体或动作,而不一定要求或暗示这种实体或动作之间的任何实际的这种关系或顺序。术语“包括”、“包含”或任何其他变体旨在涵盖非排他性的包含,由此使得包括一系列要素的过程、方法、物品或者设备不仅包含这些要素,而且还包含没有明确列出的其他要素,或者为这种过程、方法、物品或者设备所固有的要素。
术语“键盘”是广义定义的,包括任何具有确定区域的输入部件,包含但不局限于硬件机械式键盘、硬件感应式键盘、触摸屏上的软件键盘等。本发明的实施例默认以触摸屏上的软件键盘,即键盘为例说明,但本领域的普通技术人员可以理解,本发明所提及的方法和***也可以应用于硬件键盘。
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
图1示出了本发明实施例中的一种滑行输入方法的流程图。如图1所述的滑行输入方法,可以包括:
步骤S101:当检测到存在滑行输入操作时,获取触点位置对应的字符。
在具体实施中,当用户在键盘上进行滑行操作时,随着触点的移动,触点的位置构成滑行轨迹。其中,步骤S101中对触点位置对应字符的获取可以是实时的,从而便于根据用户当前触点的位置,及时进行反馈。
在具体实施中,所述键盘布局可以根据不同的语言选择不同的布局方式,同一种语言也可以采用多种布局方式,具体布局方式不会对本发明构成任何限制。例如对于英语,可以采用QWERTY的单键键盘布局方式,其中包括26个英文字母,数字、符号和空格键,每个按键代表一个字母,数字或符号可与字母复合在同一个按键上;或者,可以采用AZERTY的单键键盘布局方式。当然,键盘也可以采用其它键盘布局方式,例如,在每个按键上有两个字母的半QWERTY紧凑键盘布局,或者在每个按键上有多个字母的九键键盘布局。所述键盘布局也可适用于除英语以外的其它语种,且字母、数字、符号的具体内容和位置可根据具体语言的需求或键盘排布而改变。
在具体实施中,参考图2,步骤S101还可以包括:检测输入操作,并判断是否进入滑行输入模式;当进入滑行输入模式时,随着触点移动,采集触点位置对应的字符。
用户在键盘上进行操作时,其输入操作可为点击输入,例如用户通过手指或其它输入设备对键盘的按键进行“按下-抬起”的操作,以完成一次点击输入;其输入操作还可为滑行输入,例如在完成某个按键的输入之后,触点并不从键盘上离开,而是直接在多个按键之间进行滑行直至滑至下一个待输入的按键,从而实现基于多个按键的滑行输入。因此,在具体实施中,可预先设定触发滑行输入模式的触发条件,在步骤S101中通过,检测输入操作是否符合触发条件,判断是否进入滑行输入模式。其中,所述触发条件可包括:当触点的滑行轨迹的长度超过预设的长度阈值时,或者触点轨迹形成预设的形状,例如三角形或圆形或用户自己设定的形状,或者可包括特定输入操作,例如,触点从空格键或键盘左上角等特定位置开始滑行。此时,便可以触发本发明实施例中的滑行输入方法,采集用户在键盘上的滑行轨迹所经过位置对应的字符。在一种实施方式中,对触点位置对应字符的采集可以是实时的。
可以理解的是,在具体实施中,除了通过触摸屏显示键盘,并检测用户在手指或触控笔等其他触控设备在键盘上的滑行轨迹来实现滑行输入外,还可通过如薄膜键盘或其他能够实现滑行输入的感应设备来接收用户的输入操作。
在具体实施中,采集触点位置对应的字符,可包括:获取触点当前位置对应的坐标数据,进而根据当前键盘布局,获取与所述坐标数据关联的字符。其中,所述触点位置对应的字符可以包括所述触点当前位置的字符以及该字符周围的字符。在具体实施中,该字符周围的字符可包含与该字符紧邻的所有字符,例如请参见图3所示,当所述滑行轨迹经过键盘上的字符S时,根据字符S的坐标,在相应的数据库中进行查找,获取对应的可能字符也包括:“w”、“e”、“a”、“x”、“d”、“z”。在另一种实施例中,该字符周围的字符也可包括设定方向上与该字符相邻的字符,例如图3中,触点位置对应的字符可包括:“s”、“a”和“d”。
参考图1和图4,步骤S102可包括:根据所述与触点位置对应的字符,按照设定的过滤步骤,在数据库中进行过滤获得有效字符,并基于所述有效字符,获得与所述滑行轨迹对应的有效字符串。
在具体实施中,所述过滤步骤进一步包括选中步骤和排除步骤。具体来说,在数据库中进行过滤可包括:步骤T1,执行所述选中步骤,在数据库中对字符组合进行选中,其中,所选中的字符组合的设定字符位包含所述与触点位置对应的字符,该设定字符位的字符为有效字符;步骤T2,从由所述与触点位置对应的字符所构成的字符组合中,执行排除步骤,排除不可能构成有效字符串的字符组合,其中,未被排除的字符组合中与所述触点位置对应的字符为有效字符。按照所述过滤步骤在数据库中进行过滤后,获得至少一个由一个或多个有效字符构成的字符组合。
本领域技术人员应可理解,在具体实现过程中,当触点从一个字符按键滑行至相邻的另一个字符按键的过程中,或者当触点由前一次停顿至当前停顿的滑行过程中,都可包含一次或多次步骤T1以及一次或多次步骤T2。此外,步骤T1和步骤T2的顺序也可顺序执行,也可倒序执行,也可穿插并行执行,其进行的前后顺序并不会对本发明的发明思路造成影响。
在具体实施中,经由上述过滤步骤获得由一个或多个有效字符所构成的字符组合之后,可将该字符组合作为与滑行轨迹对应的有效字符串,也可进一步基于该字符组合进行预测,获得包含该字符组合的有效字符串。
步骤S103:当所述滑行轨迹满足预设的反馈条件时,输出该有效字符串。
在具体实施中,现有技术中在当用户滑完构成整个单词或词组的所有字母时,才对所经过的所有字母甚至每一个字母周边的字母进行记录和计算,所造成的数据计算量庞大,且造成硬件负担加重。针对该现有技术的缺点,本发明实施例中的滑行输入方法,并非在用户完成相应的滑行输入操作时,而是在用户滑行输入的过程中,当满足预设的反馈条件时,便可以将所选取的字符对应的候选词汇进行输出显示,以供用户选择,在减少计算量的同时,可以有效提高输入的效率。在一种实施方式中,可设置一个或多个反馈条件,当满足所有的反馈条件时才输入该有效字符串,从而可以减少误反馈。
在本发明一实施例中,所述预设的反馈条件为所述滑行轨迹经过键盘上的预设位置。在具体实施中,所述键盘上的预设位置可以包括所述键盘上相邻按键的交界处。在此种情况下,每当触点位置经过按键交界处时,则输出对应的有效字符串,从而实现将所选取用户滑行轨迹所经过位置对应的字符对应的候选词汇进行实时输出显示,可以在减小计算量的同时,提高滑行输入的效率。此外,键盘上的预设按键位置也可为例如空格键、esc键、回车键等预设按键,或其它未设置按键的预设位置处,例如屏幕的左上角处等。
在本发明一实施例中,所述预设的反馈条件为所述滑行轨迹的长度达到预设的长度阈值。所述长度阈值可以根据实际的需要进行设置,例如,可以设置为5mm或者2cm等。
在本发明一实施例中,所述预设的反馈条件为所述滑行轨迹对应的时长达到预设的时长阈值。其中,所述时长阈值可以根据实际的需要进行设置,例如,可以设置为0.3s或者0.5s等。
在本发明一实施例中,可以采用显示输出的方式,也可以采用语音输出的方式,对所述与该滑行轨迹对应的有效字符串进行输出。其中,采用显示输出的方式时,可将一个或多个与该滑行轨迹对应的有效字符串显示在键盘区域,例如,可按照当前字母或该当前字母的下一个字母,将可能的有效字符串显示在对应字符按键的上方、或下方、或左侧、或右侧、或其它设定位置处。参考图5,根据当前触点滑过的轨迹,经由步骤S102,在数据库中进行过滤,获得有效字符“wh”,基于该有效字符进行预测,获得与所述滑行轨迹对应的有效字符串“where”、“which”、“what”、“who”,并经由步骤S103,将这些对应的字符串显示在当前字符“wh”的下一个字母,即分别为“e”、“i”、“a”、“o”,的周围。
在本发明一实施例中,还可以包括采用多媒体的方式对输出进行提醒,例如,可采用震动的方式提示字符串的显示,或以动画的形式弹出字符串。
此外,为了使反馈结果能够及时跟随用户的输入操作进行更新,本发明提供了步骤S102,根据滑行轨迹中触点位置对应的字符,经由选中步骤和/或排除步骤,从数据库中过滤出有效字符,并且当所述触点位置对应的字符为所选中字符组合的非首位字符时,采用滑至当前触点位置之前选中字符的所有子集,与所述触点当前位置对应的字符进行任意组合,从而形成在数据库中进行过滤的基础。
下面结合图6所示的树状词典,来对本发明一实施例中的步骤S102进行详细的介绍。
请参见图6所示,在本发明一实施例中,候选词汇可以存储在树状词典中。其中,在树状词典中的每一个节点Ni-1、Ni-2…Ni-m依次代表候选词汇中相应位序的字母,其中i代表节点在树中的深度(第i层),位于第i层的节点的字符表示候选词汇中的第i个字符。m代表了该层中的字符总数,例如,在英语中有26个字母,则m可以为1~26中的任一正整数。当树状词典内包含由其他符号组成的单词,如don’t等,则m可以大于26。
其中,树状词典中的节点由路径Pi-j-1,Pi-j-2,…,Pi-j-m连接起来,其中i-j代表该路径所连接父节点为Ni-j。从根节点向下到达某一节点的路径所途径的节点序列,称为该节点(或该路径)的字符序列。如果一个节点的字符是词典中候选词汇的最后一个字符,则称该节点为单词节点。如果某一条路径不存在,则代表该路径的字符序列在词典中不存在。
例如,候选词汇“apple”所对应的节点,就是从根节点向下顺序寻找节点a-p-p-l-e。其中,候选词汇“apple”第一位的字符“a”所对应的节点在树的第1层,第二位的字符“p”的节点在树的第2层,第三位的字符“p”的节点在树的第3层,第四位的字符“l”的节点在树的第4层,而第五位的字符“e”的节点在树的第五层。另外,由于候选词汇“apple”以第五位的字符“e”结尾,因此,第五位的字符“e”也是候选词汇“apple”的单词节点。
如图7所示,触点自按键“s”滑至按键“k”的滑行轨迹TK1中,触点依次经过按键“s”、“d”、“f”、“g”、“h”、“j”直至按键“k”。在本发明一实施例中,参考图8,当获取与触点位置对应的字符之后,按照设定的过滤步骤,在数据库中进行过滤可以包括:
步骤S411:根据所述触点位置对应的字符,在数据库中进行过滤,选中设定字符位为该对应字符的所有字符组合。其中,所述触点位置对应的字符可为字符组合的首位字符,也可为字符组合的非首位字符。
以图7为例,对于首位字符,当触点在按键“s”位置处时,与该触点位置对应的字符为字符“s”。由于该字符“s”为该触点在此段滑行轨迹TK1中的第一个字符,则根据字符“s”在数据库中进行查找,获得在第一字符位包含字符“s”的字符组合,例如,“s”、“some”、“she”、“see”、“since”等。在某些实施例中,步骤S411具体可包括,如图9所示,在所示字典树中对第一层中的节点“s”进行标定,即选中字母“s”开头的字符组合,例如,字符组合“sa”、“sb”、“sc”直至字符组合“sz”。在某些实施例中,对于首位字符,所述触点位置对应的字符也可考虑触点位置邻近的所有字符,即当触点位置在按键“s”处时,与该触点位置对应的字符包括字符“s”、“w”、“e”、“a”、“f”、“z”和“x”,即步骤S411可包括对字典树中第一层的多个节点“s”、“w”、“e”、“a”、“f”、“z”和“x”都进行标定(图中未示出)。
对于非首位字符,除了根据所述触点位置对应的字符之外,还需要基于前述已选中的字符,在数据库中进行过滤,从而获得对应的所有字符组合。
具体来说,例如,参考图7,当触点从按键“s”位置处滑至按键“d”处,根据字符“d”并且基于前述已选中的字符在数据库中进行查找,获得在第二字符位包含字符“d”且第一字符位包含字符“s”的字符组合,例如“sd”。参考图9,根据字符“d”在数据库中进行查找,可包括在如图所示的字典树中,对与第一层节点“s”相连接的第二层节点“d”进行标定,选中以开头第一、第二字母分别为“s”和“d”的字符组合。
接着,触点继续滑行,从按键“d”位置处滑至按键“f”处,根据字符“f”并且基于前述已选中的所有字符中的一个或多个,在数据库中进行查找。此时,结合图9,前述已选中的字符包括第一层中的节点“s”以及第二层中的节点“d”,因此,基于已选中的字符“s”进行过滤,获得在第一字符位包含字符“s”且第二字符位包含字符“f”的字符组合,例如“sf”;基于已选中的字符“d”进行过滤,获得在第一字符位包含字符“s”、第二字符位包含字符“d”且第三字符位包含字符“f”的字符组合,例如“sdf”。
步骤S412:从步骤S411中所选中的字符组合中排除不可能构成有效字符串的字符组合。具体来说,可以以步骤S411所选中的字符组合在数据库中进行查找,获得不可能构成有效字符串的字符组合。
例如,对于滑行轨迹TK1中第一个字符“s”,通过在数据库中遍历字符“s”依次和字符“a”至字符“z”的组合,即字符组合“sa”、“sb”、“sc”直至字符组合“sz”,查找是否存在以这些字符组合开头的字符串,即有效字符串。例如,不存在以字符组合“sz”开头的字符串,则排除字符组合“sz”。参考图9,当标定第一层节点“s”时,步骤S412可包括排除自第一层节点“s”至第二层节点“z”的路径。
又例如,对于滑行轨迹TK1中第一个字符“s”,通过在数据库中遍历字符“s”分别和字符“a”至字符“z”中每一个字符构成的字符组合,查找以这些字符组合作为起始字符所构成的路径中是否存在单词节点,即是否存在以这些字符组合开头的有效字符串。当不存在以字符组合“sz”开头的字符串,则排除字符组合“sz”。
其中,根据步骤S411执行的选中操作以及根据步骤S412执行的排除操作并不存在必然的前后关系。例如,在其它实施方式中,可先执行排除步骤,根据由所有字符任意组合的字符组合,查找并排除其中无法构成有效字符串的字符组合;再执行选中步骤,根据所述触点位置对应的字符,从数据库中经过排除步骤过滤的字符组合中,选中设定字符位为该对应字符的所有字符组合,即包含有效字符的字符组合。
在又一种实施方式中,还可将词库中的候选词汇以树形数据结构进行存储,使得所存储的每一条节点路径都是有效的,进而可根据所述触点位置对应的字符,在所述词库中进行过滤,选中设定字符位为该对应字符的所有字符组合。
本领域技术人员应能理解,如图6或图9所示树形的数据存储结构仅为了示例性对本发明思路进行说明,这种存储方式,可以快速地找到一个特定的字母序列是否是所述树状词典里的一个候选词汇,以及该候选词汇的各个节点的字符。可以理解的是,本发明实施例中候选词汇还可以采用其他的数据结构进行存储,例如,堆形、图像或者链表等。
在上述实施例中采用如何滑行输入英文单词对本发明实施例中的滑行输入方法进行了详细的说明。本领域的技术人员可以理解的是,本发明的连续滑行输入单词的方法也可以支持其它语种的语言,且不受键盘布局的影响。
在具体实施中,本发明实施例中的滑行输入方法所支持的语言包括但不局限于西语语种中的英语、法语、德语等、拉丁语种中的西班牙语、葡萄牙语等,以及亚洲语种中的***语、印度语、中文、日文、韩文等。
在具体实施中,本发明实施例中的滑行输入方法所支持的键盘布局上包括但不限于目前流行的QWERTY键盘布局、AZERTY键盘布局,还可以是其他的键盘布局。
图10示出了本发明实施例中的一种滑行输入装置的结构示意图。如图10所示的滑行输入装置800,可以包括获取单元801、过滤单元802和输出单元803,其中:
获取单元801,适于当检测到存在滑行输入操作时,获取触点位置对应的字符。
过滤单元802,适于根据所述与触点位置对应的字符,按照设定的过滤步骤,在数据库中进行过滤获得有效字符,并基于所述有效字符,获得与所述滑行轨迹对应的有效字符串。
输出单元803,适于当所述滑行轨迹满足预设的反馈条件时,输出该有效字符串。
在具体实施中,输出单元803进一步还包括反馈判断单元,该反馈判断单元适于检测滑行轨迹是否满足预设的反馈条件,例如所述滑行轨迹是否经过键盘上的预设位置,或者所述滑行轨迹的长度是否达到预设的长度阈值,或者所述滑行轨迹对应的时长是否达到预设的时长阈值。当该反馈判断单元检测到该滑行轨迹满足预设的反馈条件时,输出单元803输出与该滑行轨迹对应的有效字符串。
在具体实施中,所述键盘上的预设位置包括:所述键盘上相邻按键的交界处。在此种情况下,每当触点位置经过按键交界处时,则反馈判断单元检测出滑行轨迹满足预设的反馈条件,输出单元803进一步输出对应的有效字符串,从而实现将所选取用户滑行轨迹所经过位置对应的字符对应的候选词汇进行实时输出显示。此外,键盘上的预设按键位置也可为例如空格键、esc键、回车键等预设按键,或其它未设置按键的预设位置处,例如屏幕的左上角处等。
在具体实施中,当触点从一个字符按键滑行至相邻的另一个字符按键的过程中,或者当触点由前一次停顿至当前停顿的滑行过程中,过滤单元802可适于根据所述与触点位置对应的字符,在数据库中执行选中步骤,对字符组合进行选中,使得所选中的字符组合的设定字符位包含所述与触点位置对应的字符,以及从由所述与触点位置对应的字符所构成的字符组合中,执行排除步骤,排除不可能构成有效字符串的字符组合,并基于这些包含有效字符的字符组合,获得与所述滑行轨迹对应的有效字符串。
在一种具体实施方式中,过滤单元802可包括选中单元,适于在数据库中对字符组合进行选中,其中,所选中的字符组合的设定字符位包含所述与触点位置对应的字符;以及排除单元,适于排除不可能构成有效字符串的字符组合。其中,所述排除单元可根据选中单元的结果,从由所述与触点位置对应的字符所构成的字符组合中进行排除,或者所述选中单元可根据所述排除单元的结果,在有可能构成有效字符串的字符组合中选中包含有效字符的字符组合。
在一种实施方式中,过滤单元802在执行所述选中步骤时,当所述触点位置对应的字符为所选中字符组合的首位字符时,根据所述触点位置对应的字符在数据库中进行查找,获得在第一字符位包含该字符的字符组合;当所述触点位置对应的字符为所选中字符组合的非首位字符时,采用滑至当前触点位置之前选中字符的所有子集,与所述触点当前位置对应的字符进行任意组合,从而形成在数据库中进行过滤的基础。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
以上对本发明实施例的方法及***做了详细的介绍,本发明并不限于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

Claims (14)

1.一种滑行输入方法,其特征在于,包括:
当检测到存在滑行输入操作时,跟随触点移动,获取各触点位置对应的字符;
根据与所述各触点位置对应的字符,在数据库中进行过滤获得有效字符,并基于所述有效字符获得与滑行轨迹对应的有效字符串;其中,所述在数据库中进行过滤包括从数据库中选中字符组合,使得所选中的字符组合的设定字符位包含所述与所述触点位置对应的字符;
在用户滑行输入的过程中,当所述滑行轨迹满足预设的反馈条件时,输出所述有效字符串。
2.根据权利要求1所述的滑行输入方法,其特征在于,所述从数据库中选中字符组合,使得所选中的字符组合的设定字符位包含与触点位置对应的字符包括:当所述触点位置对应的字符为所选中字符组合的非首位字符时,将滑至当前触点位置之前选中字符中的一个或多个,与所述当前触点位置对应的字符进行组合,形成过滤基础,并基于该过滤基础在数据库中进行过滤。
3.根据权利要求2所述的滑行输入方法,其特征在于,所述在数据库中进行过滤还包括:从由与所述触点位置对应的字符所构成的字符组合中,执行排除步骤,排除不可能构成有效字符串的字符组合。
4.根据权利要求3所述的滑行输入方法,其特征在于,所述基于有效字符获得与滑行轨迹对应的有效字符串包括:将由一个或多个有效字符所构成的字符组合作为有效字符串,或者基于由一个或多个有效字符所构成的字符组合进行预测,获得包含该字符组合的有效字符串。
5.根据权利要求2所述的滑行输入方法,其特征在于,所述预设的反馈条件包括:所述滑行轨迹经过键盘上相邻按键的交界处、或空格键、或ESC键、或回车键。
6.根据权利要求2所述的滑行输入方法,其特征在于,所述预设的反馈条件包括:所述滑行轨迹的长度达到预设的长度阈值,或所述滑行轨迹对应的时长达到预设的时长阈值。
7.根据权利要求5或6所述的滑行输入方法,所述输出有效字符串包括,将一个或多个与该滑行轨迹对应的有效字符串,按照当前触点位置对应的字符或该字符的下一个字符,将所述有效字符串显示在键盘区域对应按键的上方、或下方、或左侧、或右侧、或其它设定位置。
8.根据权利要求2所述的滑行输入方法,其特征在于,所述输出有效字符串包括:采用多媒体的方式对输出进行提醒。
9.一种滑行输入装置,其特征在于,包括:
获取单元,适于当检测到存在滑行输入操作时,跟随触点移动,获取各触点位置对应的字符;
过滤单元,适于根据与所述各触点位置对应的字符,按照设定的过滤步骤,在数据库中进行过滤获得有效字符,并基于所述有效字符,获得与滑行轨迹对应的有效字符串;
输出显示单元,适于在用户滑行输入的过程中,当所述滑行轨迹满足预设的反馈条件时,输出该有效字符串。
10.根据权利要求9所述的滑行输入装置,其特征在于,所述预设的反馈条件包括:所述滑行轨迹经过键盘上的预设位置,或者所述滑行轨迹的长度达到预设的长度阈值,或者所述滑行轨迹对应的时长达到预设的时长阈值。
11.根据权利要求10所述的滑行输入装置,其特征在于,所述键盘上的预设位置包括:键盘上相邻按键的交界处、或空格键、或ESC键、或回车键。
12.根据权利要求10所述的滑行输入装置,其特征在于,所述过滤单元适于当所述触点位置对应的字符为所选中字符组合的非首位字符时,采用滑至当前触点位置之前选中字符的所有子集,与所述触点当前位置对应的字符进行任意组合,形成在数据库中进行过滤的基础。
13.根据权利要求10所述的滑行输入装置,其特征在于,所述过滤单元还适于排除不可能构成有效字符串的字符组合。
14.根据权利要求10所述的滑行输入装置,其特征在于,所述过滤单元包括选中单元,适于在数据库中对字符组合进行选中,其中,所选中的字符组合的设定字符位包含所述与触点位置对应的字符;以及排除单元,适于排除不可能构成有效字符串的字符组合。
CN201510086379.7A 2013-02-25 2015-02-17 滑行输入方法及装置 Active CN105988595B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201510086379.7A CN105988595B (zh) 2015-02-17 2015-02-17 滑行输入方法及装置
EP16751956.0A EP3260955A4 (en) 2015-02-17 2016-02-17 Slide input method and apparatus
PCT/CN2016/073935 WO2016131425A1 (zh) 2015-02-17 2016-02-17 滑行输入方法及装置
US15/679,708 US20180165001A1 (en) 2013-02-25 2017-08-17 Sliding input method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510086379.7A CN105988595B (zh) 2015-02-17 2015-02-17 滑行输入方法及装置

Publications (2)

Publication Number Publication Date
CN105988595A CN105988595A (zh) 2016-10-05
CN105988595B true CN105988595B (zh) 2019-12-06

Family

ID=56691992

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510086379.7A Active CN105988595B (zh) 2013-02-25 2015-02-17 滑行输入方法及装置

Country Status (3)

Country Link
EP (1) EP3260955A4 (zh)
CN (1) CN105988595B (zh)
WO (1) WO2016131425A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109542244B (zh) * 2017-09-21 2022-04-26 北京搜狗科技发展有限公司 一种输入方法、装置和介质
CN110018774B (zh) * 2019-03-08 2020-09-01 上海趣虫科技有限公司 一种基于滑行轨迹识别的输入法及处理终端
CN110221712B (zh) * 2019-06-10 2023-04-18 黄冠 一种基于字符特征的输入法及处理终端
CN110516332B (zh) * 2019-08-15 2021-06-11 浪潮电子信息产业股份有限公司 并行计算结果的过滤方法及***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1555601A2 (en) * 2004-01-06 2005-07-20 International Business Machines Corporation System and method for improved user input on personal computing devices
CN101788855A (zh) * 2010-03-09 2010-07-28 华为终端有限公司 一种获取用户输入信息的方法、装置及通信终端
CN102693090A (zh) * 2012-05-16 2012-09-26 刘炳林 一种输入方法和电子设备
CN104007832A (zh) * 2013-02-25 2014-08-27 上海触乐信息科技有限公司 连续滑行输入文本的方法、***及设备
CN104007835A (zh) * 2014-02-26 2014-08-27 陆维辉 滑行输入法认别拼音汉字英文输入技术
CN104199606A (zh) * 2014-07-29 2014-12-10 北京搜狗科技发展有限公司 一种滑行输入的方法和装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0516246D0 (en) * 2005-08-08 2005-09-14 Scanlan Timothy A data entry device and method
KR101557358B1 (ko) * 2010-02-25 2015-10-06 엘지전자 주식회사 문자열 입력 방법 및 그 장치
CN102117175A (zh) * 2010-09-29 2011-07-06 北京搜狗科技发展有限公司 一种滑行输入中文的方法、装置和触摸屏输入法***
CN102999288A (zh) * 2011-09-08 2013-03-27 北京三星通信技术研究有限公司 终端的输入方法及其键盘
US9310889B2 (en) * 2011-11-10 2016-04-12 Blackberry Limited Touchscreen keyboard predictive display and generation of a set of characters
CN102880302A (zh) * 2012-07-17 2013-01-16 重庆优腾信息技术有限公司 一种基于多词连续输入的字词识别方法、装置和***
US8701032B1 (en) * 2012-10-16 2014-04-15 Google Inc. Incremental multi-word recognition
US20140365878A1 (en) * 2013-06-10 2014-12-11 Microsoft Corporation Shape writing ink trace prediction

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1555601A2 (en) * 2004-01-06 2005-07-20 International Business Machines Corporation System and method for improved user input on personal computing devices
CN101788855A (zh) * 2010-03-09 2010-07-28 华为终端有限公司 一种获取用户输入信息的方法、装置及通信终端
CN102693090A (zh) * 2012-05-16 2012-09-26 刘炳林 一种输入方法和电子设备
CN104007832A (zh) * 2013-02-25 2014-08-27 上海触乐信息科技有限公司 连续滑行输入文本的方法、***及设备
CN104007835A (zh) * 2014-02-26 2014-08-27 陆维辉 滑行输入法认别拼音汉字英文输入技术
CN104199606A (zh) * 2014-07-29 2014-12-10 北京搜狗科技发展有限公司 一种滑行输入的方法和装置

Also Published As

Publication number Publication date
EP3260955A1 (en) 2017-12-27
WO2016131425A1 (zh) 2016-08-25
CN105988595A (zh) 2016-10-05
EP3260955A4 (en) 2018-07-04

Similar Documents

Publication Publication Date Title
US9026428B2 (en) Text/character input system, such as for use with touch screens on mobile phones
EP2698692B1 (en) System and method for implementing sliding input of text based upon on-screen soft keyboard on electronic equipment
EP2805218B1 (en) A system and method for inputting text
CN103631385B (zh) 一种在文字输入中筛选候选项的方法和装置
CN105988595B (zh) 滑行输入方法及装置
EP2897055A1 (en) Information processing device, information processing method, and program
CN102422245B (zh) 输入法编辑器
JP6087949B2 (ja) タッチコンピューティングデバイスを使用して、複数の文字で構成される複合子音または複合母音を入力して別の言語に翻字するための技法
CN102117175A (zh) 一种滑行输入中文的方法、装置和触摸屏输入法***
CN102314319B (zh) 一种触控输入方法、装置及***
WO2016107317A1 (zh) 输入法光标操作方法和装置
WO2017047304A1 (ja) 文字入力方法および文字入力用のプログラム、記録媒体ならびに情報処理装置
WO2016107316A1 (zh) 输入法光标操作方法和装置
CN104699402B (zh) 基于触摸屏的滑行输入装置及方法
US8922492B2 (en) Device and method of inputting characters
CN105589570B (zh) 一种处理输入错误的方法和装置
CN105260113B (zh) 滑行输入方法、装置及终端设备
CN106168880B (zh) 一种输入控制的方法及终端
CN104461050A (zh) 一种利用手写笔画对汉字输入候选字进行筛选的方法
US20180165001A1 (en) Sliding input method and device
CN103324300A (zh) 一种输入方法与装置
JP2011237876A (ja) 文字入力装置、文字入力方法および文字入力プログラム
WO2017124931A1 (zh) 一种实现智能识别缩放手势指令的浏览器的方法及装置
CN101710260A (zh) 一种提高键盘输入成功率的输入方法及***
JP2012113685A (ja) 入力装置および入力方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant