CN107817942A - 一种滑行输入方法、系统和一种用于滑行输入的装置 - Google Patents
一种滑行输入方法、系统和一种用于滑行输入的装置 Download PDFInfo
- Publication number
- CN107817942A CN107817942A CN201610827598.0A CN201610827598A CN107817942A CN 107817942 A CN107817942 A CN 107817942A CN 201610827598 A CN201610827598 A CN 201610827598A CN 107817942 A CN107817942 A CN 107817942A
- Authority
- CN
- China
- Prior art keywords
- sliding
- character
- path
- target character
- coasting
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000001960 triggered effect Effects 0.000 claims abstract description 60
- 238000003825 pressing Methods 0.000 claims description 47
- 230000009467 reduction Effects 0.000 abstract description 3
- 230000004044 response Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000010079 rubber tapping Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 3
- 229910052799 carbon Inorganic materials 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 239000003570 air Substances 0.000 description 1
- 239000012080 ambient air Substances 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000011449 brick Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000035622 drinking Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000000391 smoking effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction 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/0488—Interaction 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/04886—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements 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/0233—Character input methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0485—Scrolling or panning
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)
- Input From Keyboards Or The Like (AREA)
Abstract
本发明实施例提供了一种滑行输入方法、系统和一种用于滑行输入的装置,该方法包括:当检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符;在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径;确定所述滑行操作满足的滑行条件,所述滑行条件包括第一滑行条件;当所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。可大大减少滑行路径,减少滑行范围,提高了滑行输入的速度,而且,较短距离的滑行减少错滑的可能性,提高了输入的效率。
Description
技术领域
本发明涉及输入法的技术领域,特别是涉及一种滑行输入方法、一种滑行输入系统和一种用于滑行输入的装置。
背景技术
随着用户对电子产品移动性能和便携性能的要求,目前电子设备呈小型化发展趋势。
现在使用的便携式掌上电脑、个人数字助理、智能手机等电子设备,很多都采用触摸屏输入,即在电子设备的触摸屏上模拟一个虚拟键盘,该虚拟键盘一般包括若干个虚拟按键,用户可以用手指或触笔等方式点击该虚拟键盘的虚拟按键进行输入。
采用虚拟键盘的输入方式有多种,滑行输入是其中一种,即在虚拟键盘上通过接触笔或者手指滑行的情况下进行输入。
在滑行输入时,用户往往需要滑过每个字符对应的虚拟按键,滑行的路径较长,使得滑行范围较大,导致滑行输入的速度较慢,而且,较长距离的滑行导致错滑可能性变大,输入的效率低。
发明内容
鉴于上述问题,为了解决上述滑行输入的滑行路径较长导致输入准效率低的问题,本发明实施例提出了一种滑行输入方法、一种滑行输入系统和一种用于滑行输入的装置。
依据本发明的一个方面,提供了一种滑行输入方法,包括:
当检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符;
在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径;
确定所述滑行操作满足的滑行条件,所述滑行条件包括第一滑行条件;
当所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
依据本发明的另一个方面,提供了一种滑行输入系统,包括:
目标字符预测模块,用于在检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符;
滑行路径生成模块,用于在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径;
滑行条件确定模块,用于确定所述滑行操作满足的滑行条件,所述滑行条件包括第一滑行条件;
目标字符添加模块,用于在所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述已触发滑行操作的字符之后,作为目标字符序列。
依据本发明的另一个方面,提供了一种用于滑行输入的装置,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符;
在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径;
确定所述滑行操作满足的滑行条件,所述滑行条件包括第一滑行条件;
当所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
本发明实施例包括以下优点:
本发明实施例在虚拟键盘上检测到滑行操作时,依据由滑行操作已触发的字符预测下一个输入的字符,作为目标字符,生成从当前位置滑行到目标字符所属虚拟按键的滑行路径,当滑行操作满足第一滑行条件,且,在某个滑行路径滑行超过了预定距离时,将滑行路径对应的目标字符添加到滑行操作已触发的字符之后,作为目标字符序列,后续可以基于该目标字符序列进行候选搜索、候选上屏等输入操作,由于滑动距离的缩短,用户无需滑过某个字符对应的虚拟按键即可输入该字符,可大大减少滑行路径,减少滑行范围,提高了滑行输入的速度,而且,较短距离的滑行减少错滑的可能性,提高了输入的效率。
附图说明
图1是本发明的一种滑行输入方法实施例的步骤流程图;
图2A至图2C是本发明实施例的一种虚拟键盘的示例图;
图3A至图3B是本发明实施例的一种滑行轨迹的示例图;
图4是本发明实施例的一种虚拟按键的响应范围的示例图;
图5是本发明实施例的一种滑行路径的示例图;
图6是本发明的另一种滑行输入方法实施例的步骤流程图;
图7是本发明实施例的一种滑行输入的示例图;
图8是本发明的一种滑行输入系统实施例的结构框图;
图9是根据一示例性实施例示出的一种用于滑行输入的装置的框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种滑行输入方法实施例的步骤流程图,具体可以包括如下步骤:
步骤101,当检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符。
在具体实现中,本发明实施例可以应用于具有触摸屏的电子设备中,例如,手机、PDA(Personal Digital Assistant,个人数字助理)、膝上型计算机、掌上电脑等等,其中,该触摸屏可以包括矢量压力传感触摸屏、电阻触摸屏、电容触摸屏、红外触摸屏、表面声波触摸屏等等,本发明实施例对此不加以限制。
这些电子设备可以支持包括Windows、Android(安卓)、IOS、WindowsPhone等操作系统,通常可以运行通过虚拟键盘进行输入的应用程序,例如,输入法程序。
该虚拟键盘通常具有一个或多个虚拟按键,该虚拟按键经常被复用,映射有一个或多个字符,当该虚拟按键被触发时,可以用于输入字符,对于不同的语音,如中文、英文、日文等等,该虚拟键盘的虚拟按键所映射的字符会有所不同。
为使本领域技术人员更好地理解本发明实施例,在本发明实施例中,将中文作为语言的一种示例进行说明。
在具体实现中,该虚拟按键映射的字符具体可以包括、但不限于输入数字字符、英文字符、中文字符(如拼音字符、笔画字符等)和符号字符中的至少一个。
例如,参照图2A和2B,示出了本发明实施例的一种虚拟键盘的示例图,该虚拟键盘200可以称为九宫格键盘或9键键盘,主要包括9个虚拟按键。
在本示例中,对于虚拟按键201,如图2A所示,在拼音输入模式下,点击该虚拟按键201可以输入声母“d”、韵母“e”和声母“f”,在数字输入模式下,点击该虚拟按键201可以输入数字“3”,在英文输入模式下,点击该虚拟按键201可以输入英文“d”、“e”、“f”;在拼音输入模式、数字输入模式和英文输入模式下,点击该虚拟按键202可以输入逗号“,”;如图2B所示,在笔画输入模式下,点击该虚拟按键201可以输入笔画“丿”。
又例如,参照图2C,示出了本发明实施例的另一种虚拟键盘的示例图,该虚拟键盘210可以称为全键盘或26键键盘,一个典型的全键盘或26键键盘可以为QWERTY键盘,主要包括26个虚拟按键。
在本示例中,对于虚拟按键211,在拼音输入模式下,点击该虚拟按键211可以输入半元音“w”,在英文输入模式下,点击该虚拟按键211可以输入英文“w”,在数字输入模式下,点击该虚拟按键211可以输入数字“2”;对于虚拟按键212,在拼音输入模式下,点击该虚拟按键212可以输入声母“g”,在英文输入模式下,点击该虚拟按键211可以输入英文“g”,在符号输入模式下可以输入百分号“%”。
当然,上述虚拟键盘只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他虚拟键盘,本发明实施例对此不加以限制。另外,除了上述虚拟键盘外,本领域技术人员还可以根据实际需要采用其它虚拟键盘,本发明实施例对此也不加以限制。
用户在虚拟键盘进行输入时,可以用手指或其它物体(例如,触笔)滑行通过电子设备触摸屏中虚拟键盘所在的位置。
依据用户滑行操作已触发的字符,可以对下一个用户可能输入的字符进行预测。
在本发明的一个实施例中,步骤101可以包括如下子步骤:
子步骤S11,将一个或多个字符添加到由所述滑行操作已触发的字符之后,获得预测字符序列。
在具体实现中,电子设备可以检测在触摸屏上的滑行操作的触摸信息,该触摸信息包括触摸事件,例如,按下事件(ACTION_DOWN)、移动事件(ACTION_MOVE)和抬起事件(ACTION_UP),等等。
触摸事件具有对应的轨迹点,这些轨迹点组成滑行轨迹。
如图3A所示,以全键盘作为虚拟键盘的示例,在图3中为简便表达,以英文或拼音标识该虚拟按键,但并不代表该虚拟按键不具有其他输入功能(例如,输入字符、输入数字)。
在本示例中,该全键盘上的点、圈可以表示一个轨迹点(包括轨迹点301、轨迹点302、轨迹点303、轨迹点304)。
其中,轨迹点301可以为起点(即按下事件所对应的轨迹点),轨迹点304可以为终点(即抬起事件所对应的轨迹点),从起点至终点,捕捉了一连串的轨迹点,形象地,如图3B所示,在用户滑行的轨迹上,该顺序相连的轨迹点可以看作是用户在虚拟键盘上的滑行轨迹。
需要说明的是,一次有效的滑行操作的滑行轨迹,一般包括一个按下事件所对应的轨迹点、0个以上的移动事件对应的轨迹点、一个抬起事件所对应的轨迹点。
例如,如果第1个轨迹点对应按下事件,第2-9个轨迹点对应移动事件,第10个轨迹点对应抬起事件,而第11个轨迹点对应按下事件,那么,可以以第1-10个轨迹点作为一次有效的滑行操作轨迹点,第11个轨迹点以后的可以看成另外一次有效的滑行操作的轨迹点。
进一步地,虚拟按键具有相应范围,如果轨迹点的坐标该虚拟按键的响应范围内,则可以按照轨迹点的滑行顺序提取该虚拟按键所映射的字符。
在实际应用中,用户滑行输入时,由于抖动等原因,并不能十分准确地滑过所需虚拟按键的中心,因此,可以设置稍大的虚拟按键的响应范围。
例如,如图4所示,可以以虚拟按键的中心为圆心,以相邻虚拟按键中心的距离的1.4倍为半径,形成一个圆,该圆内即为虚拟按键的响应范围。虚拟按键p的响应范围可以为401,虚拟按键l的响应范围可以为402,等等。
而由于虚拟按键的响应范围可以比较大,因此,设置附近区域的虚拟按键的响应范围可能存在重叠的区域,例如,如图4所示,响应范围401与响应范围402存在重叠的区域403。
当轨迹点在虚拟按键响应范围重叠的区域时,该轨迹点可以触发两个或两个以上的虚拟按键所映射的字符。
从轨迹点301滑行到轨迹点302的这一段滑行轨上存在7个轨迹点,可以识别出如下表所示的虚拟按键:
表1
其中,第2个轨迹点为轨迹点301,第7个轨迹点为轨迹点302,为简便表达,以英文或拼音标识被触发的虚拟按键。
而由表1的示例可以看出,一个轨迹点通常会触发至少两个虚拟按键所映射的字符,因此,虚拟按键可以形成相互交织的关系,在一个形象的角度,该虚拟按键可以称为网络。
在此网络中,若进行中文识别,可以筛选出符合中文输入特性的虚拟按键所映射的字符序列,则该网络可以称为拼音网络,若进行英文识别,可以筛选出符合英文输入特性的虚拟按键所映射的字符序列,则该网络可以称为英文网络。
例如,如表1所示的虚拟按键所映射的字符,对于第1个轨迹点,当前轨迹点触发的字符为“M”和“N”,下一轨迹点触发的字符包括“M”、“M”和“K”,则可以组成“M-M”、“M-M”、“M-K”、“N-M”、“N-M”和“M-K”六个字符序列。若“M-M”、“M-M”、“M-K”、“N-M”、“N-M”和“M-K”这六条新的字符序列符合语言输入特性且被保留,则在下一次遍历(即添加第3个轨迹点对应虚拟按键的字符)时,可以作为当前的当前轨迹点已触发的字符序列。
此外,本发明实施例可以进行去重处理,以去除如上述“M-M”、“N-M”等重复的字符序列,减少计算量。
在一种示例中,如图4所示,假设轨迹点302触发的虚拟按键“i”,如图2C所示,可以用于输入数字“8”,则可以对轨迹点302添加虚拟按键“i”对应的数字,若该虚拟按键302还可以用于输入符号等其他信息,则也可以对该虚拟按键302添加符号等其他信息,本发明实施例对此不加以限制。
则从轨迹点301滑行到轨迹点302的这一段滑行轨上存在7个轨迹点,可以识别出如下表所示的虚拟按键:
表2
在此网络中,若进行中文识别,可以筛选出符合中文输入特性的虚拟按键序列,若进行英文识别,可以筛选出符合英文输入特性的虚拟按键所映射的字符序列,若进行英文与数字的混合识别,可以筛选出符合英文输入特性和数字输入特性的虚拟按键所映射的字符序列。
在本发明实施例中,将一个或多个字符添加到由滑行操作已触发的字符之后,则可以获得预测字符序列。
子步骤S12,将所述预测字符序列切分为一个或多个音节;
子步骤S13,计算所述一个或多个音节互相之间的条件概率;
子步骤S14,采用所述条件概率计算所述预测字符序列的音节路径得分;
子步骤S15,按照所述音节路径得分选择下一个输入的字符,作为目标字符。
在本发明实施例中,可以通过音节语言模型(如N-Gram)预测用户下一个可能输入的字符。
假设用户已经输入了虚拟按键x1,x2,x3,…,xt所映射的字符序列Lt,通过将不同的虚拟按键所映射的字符添加到Lt的末尾构成Lt+1,然后对Lt+1进行音节切分,通过音节语言模型计算添加不同字符后的Lt+1的音节路径得分,选取k字符作为目标字符。
在实际应用中,音节语言模型可以认为是一种条件概率,以音节2元语言模型(Bi-Gram)为例。
P(A|B)为上文为“A”时,下文为“B”的概率,中文拼音共413个合法音节,可以统计出这些合法音节互相之间的条件概率,用于计算音节路径得分。
例如,滑行操作已触发的字符为“nichifanlem”,将字符“a”添加到“nichifanlem”之后,组成预测字符序列“nichifanlem”,将其切分为“ni’chi’fan’le’ma”,其音节路径得分为:
ni’chi’fan’le’ma=p(ni|开始)*p(chi|ni)*p(fan|ni)*p(le|fan)*p(ma|le)
在本示例中,应用了音节的二元概率,为了准确率,在其他示例中还可以应用音节之间的三元(Tri-Gram)概率或更高元概率,如p(fan|ni’chi),本发明实施例对此不加以限制。
此外,音节语言模型的统计可以分为基于全网用户的统计和基于此用户个人的统计两种,以能体现用户输入的个性化特性,更好的适应用户。
用户可以设定输入法程序预测目标字符的个数k,如果用户设定了此值,输入法程序最多预测k个下一个最有可能的输入字符。
当然,为了保证预测的准确率,也可以将音节路径得分高于某个阈值的字符作为目标字符,本发明实施例对此不加以限制。
在本发明的另一个实施例中,步骤101可以包括如下子步骤:
子步骤S21,将一个或多个字符添加到由所述滑行操作已触发的字符之后,获得预测字符序列。
子步骤S22,将所述预测字符序列与预置的词库中的词条进行匹配。
子步骤S23,当匹配成功时,将所述字符设置为目标字符。
音节语言模型是预测一方面,另外就是预测下一个可能输入的字符追加到已有的字符序列后,词库的匹配情况也是预测的另一方面。
例如,滑行操作已触发的字符序列为“nic”,通过这个字符序列去匹配系统词库、用户词库等输入法词库,查询有哪些可能的候选。
假设系统词库中有“你猜”、“nice”、“昵称”等词条,那么“a”、“e”、“h”均有可能是下一字符。
另外,命中用户词库中词条的字符可以有较高的预测优先级,例如,用户曾经输入过“逆差”,录入在用户词库中,那么“h”可以比其他字符更有优先级作为目标字符。
当然,上述目标字符的预测方式只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他目标字符的预测方式,本发明实施例对此不加以限制。另外,除了上述目标字符的预测方式外,本领域技术人员还可以根据实际需要采用其它目标字符的预测方式,本发明实施例对此也不加以限制。
步骤102,在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径。
当前位置,一般指预测下一个输入的字符时所处的位置,该位置可以是在虚拟按键之内,也可以在虚拟按键之外,本发明实施例对此不加以限制。
在本发明实施例中,可以通过图连接边构建方法在虚拟键盘上生成从当前位置滑行到目标字符所属虚拟按键的滑行路径。
在一种情况中,可以将当前位置滑行到目标字符所属虚拟按键之间的直线距离,作为滑行路径。
在这种情况中,为了提高滑行的效率,可以以距离最小的直线距离作为滑行路径。
例如,如图5所示,当前位置501与虚拟按键502之间的直线距离511,可以作为滑行路径;当前位置501与虚拟按键503之间的直线距离512,可以作为滑行路径。
在另一种情况中,当两个滑行路径存在至少部分重叠或夹角小于预设的角度阈值时,将其中一个滑行路径绕开另一个滑行路径。
在此种情况中,如果两个滑行路径存在重叠或方向较近(表现为夹角小于预设的角度阈值),为避免错误滑行,则可以通过折线等方式绕开。
例如,如图5所示,当前位置501与虚拟按键504之间的直线距离,与当前位置501与虚拟按键502之间的直线距离511,两者方向较近,由于将当前位置501与虚拟按键504之间的直线距离较远,则可以保留直线距离511,而其中距离较远的预测按键方向可通过折线绕开直线距离511,绕行的路线513作为当前位置501与虚拟按键504之间的滑行距离。
当然,上述滑行距离的生成方式只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他滑行距离的生成方式,本发明实施例对此不加以限制。另外,除了上述滑行距离的生成方式外,本领域技术人员还可以根据实际需要采用其它滑行距离的生成方式,本发明实施例对此也不加以限制。
步骤103,确定所述滑行操作满足的滑行条件。
步骤104,当所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
应用本发明实施例,可以预先采用一个或多个滑行参数,如按压压力、滑行速度、停留时间等等,设置一个或多个滑行条件,如针对按压压力设置一个或多个按压类型、针对滑行速度设置一个或多个速度范围、针对停留时间设置一个或多个时间范围等等。
若当前滑行操作符合某个滑行条件,则可以执行该滑行条件对应的输入操作。
在本发明实施例中,该滑行条件包括第一滑行条件,如果当前的滑行操作满足第一滑行条件,则在某个滑行路径滑行部分距离时,输入该滑行路径对应的字符。
在本发明的一个实施例中,步骤104可以包括如下子步骤:
子步骤S31,当所述滑行操作满足所述第一滑行条件时,计算所述滑行操作的滑行方向;
在一个示例中,可以记录滑行操作在第一位置的第一坐标,以及,在后滑行到第二位置的第二坐标,第一坐标指向第二坐标的方向即为滑行操作的滑行方向。
子步骤S32,按照所述滑行方向确定所述滑行操作滑行的滑行路径;
在具体实现中,由于用户在虚拟键盘滑行时,如果需要输入某个滑行距离对应的字符,一般是沿显示的滑行距离进行滑行操作。
因此,可以计算滑行方向与滑行路径之间的夹角,确定夹角最小的滑行路径为滑行操作滑行的滑行路径。
为了方便计算,可以计算滑行方向与滑行路径之间的余弦值cos,余弦值越大、夹角越小,通过对比余弦值,则可以查询出夹角最小(余弦值最大)的滑行路径。
需要说明的是,如果滑行路径是当前位置滑行到目标字符所属虚拟按键之间的直线距离,则可以直接计算滑行方向与滑行路径之间的夹角。
例如,如图5所示,若用户需要输入虚拟按键502映射的字符,则可以滑行直线距离511上,则可以计算滑行方向与直线距离511之间的夹角;若用户需要输入虚拟按键503映射的字符,则可以滑行直线距离512上,则可以计算滑行方向与直线距离512之间的夹角。
如果滑行路径为从当前位置绕行到目标字符所属虚拟按键之间的路线,则可以以该路线起始的路线作为代表,计算滑行方向与起始的路线之间的夹角,作为滑行方向与滑行路径之间的夹角。
例如,如图5所示,若用户需要输入虚拟按键504映射的字符,则可以滑行在绕行的路线513上,则可以计算滑行方向与绕行的路线513起始的路线5131之间的夹角。
子步骤S33,当所述滑行操作滑行的距离超过预设的距离阈值时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
其中,距离阈值小于滑行路径的距离。
如果用户在该滑行路径之上滑行部分距离时,则可以直接将该滑行路径对应的目标字符,添加到滑行操作已触发的字符之后,作为当前输入的目标字符序列。
由于滑行操作已触发的字符可能组成一个或多个字符序列,因此,目标字符可以添加在该一个或多个字符序列之后,获得一个或多个目标字符序列。
本发明实施例在虚拟键盘上检测到滑行操作时,依据由滑行操作已触发的字符预测下一个输入的字符,作为目标字符,生成从当前位置滑行到目标字符所属虚拟按键的滑行路径,当滑行操作满足第一滑行条件,且,在某个滑行路径滑行超过了预定时,将滑行路径对应的目标字符添加到滑行操作已触发的字符之后,作为目标字符序列,后续可以基于该目标字符序列进行候选搜索、候选上屏等输入操作,由于滑动距离的缩短,用户无需滑过某个字符对应的虚拟按键即可输入该字符,可大大减少滑行路径,减少滑行范围,提高了滑行输入的速度,而且,较短距离的滑行减少错滑的可能性,提高了输入的效率。
参照图6,示出了本发明的另一种滑行输入方法实施例的步骤流程图,具体可以包括如下步骤:
步骤601,当检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符。
步骤602,在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径。
步骤603,计算所述滑行操作的按压压力。
按压压力可以指在电子设备的触摸屏上按压时所产生的压力值。
按压操作由用户触发,一般带有用户的意图,若检测到按压压力,则可以通过分析按压压力的按压类型,获知用户意图的操作方式,如通过短距离滑行输入某个滑行路径对应的目标字符、忽略滑行路径正常进行滑行输入等等。
在实际应用中,可以通过一套集成电容式触控和红外线感应的触控技术检测按压操作的按压压力。
具体而言,在触摸屏下方部署了一个或多个红外发射器,可在特定角度向触屏玻璃盖发射红外光线。
这些角度的选定可以让玻璃盖顶部和底部表面之间以及周围空气和手指所发出反射光线获得100%反射。
当玻璃盖内的光线获得反射之后,发射的红外线将会触发一个可以计算全部内反射总数量的接收器,这个接收器根据反射光线是否来自周围空气或者用户的手指来显示不同的输出读数,从而实现按压压力的检测。
当然,除了之外,还可以在触摸屏下附着压力传感器,实现按压压力的检测,或者通过其他方式实现按压压力的检测,本发明实施例对此不加以限制。
步骤604,当所述按压压力属于第一按压类型时,确定满足预设的第一滑行条件。
步骤605,当所述按压压力属于第二按压类型时,确定满足预设的第二滑行条件。
应用本发明实施例,可以针对不同的操作方式,配置相应的按压类型,每个按压类型对应一压力范围,若按压压力属于该压力范围,则属于该按压类型。
在具体实现中,对于通过短距离滑行输入某个滑行路径对应的目标字符、忽略滑行路径正常进行滑行输入这两个操作方式,可以配置第一按压操作、第二按压操作这两个类型。
其中,第一按压操作对应的压力范围为第一压力范围,第二按压操作对应的压力范围为第二压力范围。
第一压力范围、第二压力范围,可以是系统预先设定的,也可以是由用户定义,还可以在系统预先设定的基础上、根据用户的反馈进行调整所形成的,本发明实施例对此不加以限制。
在一个示例中,第一压力范围内的压力数值大于第二压力范围内的压力数值。
因此,第一按压操作可以称为重按,即重按通过短距离滑行输入某个滑行路径对应的目标字符;第二按压操作可以称为轻按,即轻按忽略滑行路径正常进行滑行输入。
当然,上述按压类型只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他按压类型,例如,轻按通过短距离滑行输入某个滑行路径对应的目标字符、重按忽略滑行路径正常进行滑行输入、轻触(轻触的第三压力范围的压力数值比轻按的第二压力范围的压力数值小)通过短距离滑行输入某个滑行路径对应的目标字符,等等,本发明实施例对此不加以限制。
需要说明的是,若电子设备的操作系统提供按压类型检测的API(ApplicationProgramming Interface,应用程序编程接口),则可以直接调用该API接口检测按压类型。
例如,在IOS系统中注册预览功能的代理对象和源视图(如用于展示纠错项的视图),代理对象接受UIViewControllerPreviewingDelegate协议,即可实现协议内的Peek(轻按)和Pop(重按)方法。
若电子设备的操作系统未提供按压类型检测的API,则可以获取按压压力之后进行按压类型的识别。
步骤606,当所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
步骤607,当所述滑行操作满足所述第二滑行条件时,识别所述滑行操作新触发的字符。
步骤608,将所述滑行操作新触发的字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
如果滑行操作满足第二滑行条件,则可以忽略滑行路径,正常获取滑行操作新触发的字符,进行滑行输入。
步骤609,查询所述目标字符序列对应的一个或多个候选项。
步骤610,显示所述一个或多个候选项。
在中文、日文等语音里,作为基本语言单位的汉字、日文等文字一般不直接与键盘上的按键进行映射,因此,在输入时一般需要进行字符与字词的转换。
具体而言,输入法系统通过编码规则将汉字、日文等文字与能够直接输入的字符串建立映射关系,如在汉语中通常用的编码是拼音(如简拼、双拼、全拼、模糊音等)、五笔等。
以汉字的拼音输入为例,用户将字符通过键盘输入至输入法中,由输入法进行解码,具体可以包括如下步骤:
a、拼音解析:将字符串切分为拼音的音节。
例如,将字符串“zhuanli”切分为“zhuan”、“li”,将字符串“fangan”切分为“fang”、“an”和“fan”、“gan”。
b、汉字解码:在词库中查找拼音对应的字、词、句。
在本发明实施例中,可以预先设置一个或多个词库,可以包括记载基础字词的系统词库,也可以包括记载扩展字词的细胞词库(细胞词库中的字词至少具有一个共同属性),如记载某个游戏专用字词的细胞词库、记载生物专用字词的细胞词库等,也可以包括用户个性化字词(如自造词)的用户词库,也可以包括以通讯录中的信息(如姓名、电话)作为词条的通讯录词库,等等,本发明实施例对此不加以限制。
在词库中存放了输入法所需的语言信息,由于不同的文字可能对应相同的编码,对于特定的字符,输入法可以通过词库可以完成字符串与字、词、句的转换,猜测用户真实的输入意图。
在实际应用中,词库可以包含各种语言信息,例如:
(1)词条;
虽然可以在字的基础上构建输入法,但是,由于词是中文中常用的最小表义单位,因此,输入法大量使用了词条。
例如,用户基于拼音规范输入字符串“zhuan”时,存在多个同音字,较难确定用户想输入“转、专、赚、砖……”中的哪一个字。
同样,用户基于拼音规范输入字符串“li”时,也存在多个同音字,也较难确定用户想输入的是“里、李、力、利……”中的哪一个字。
但是,如果用户基于拼音规范连续输入字符串“zhuanli”这个,输入法可以依据现有的词条规则确定用户较大几率输入的就是“专利”这个词。
(2)词频。
同音字大量存在,同音词也仍然是存在的,因此,输入法一般把所有选项列出来供用户选择。
但是,候选项的位置对输入法的易用性有很大影响,把较常用的候选项放到靠前的位置通常会对用户更有利,即词频(即词条的使用频率,包括当前用户的使用频率,群体用户的使用频率)是候选项排序的依据之一。
另外,在输入法中经常集成了自构词、句的功能,此时,词频也是词、句构造的依据之一。
当然,除此之外,词库还可以包括其他信息,如语言连接关系,即词和词之间的连接关系,如“的”常出现在形容词、名词、代词等后面,而“地”则常出现在副词后面,等等,本发明实施例对此不加以限制。
c、将查找到的字、词、句作为候选项进行显示。
由于显示的位置有限,为有限显示较大概率为用户所需的候选项,输入法一般会对查找到的候选项计算评分。
在评分时,通常考虑如下因素:
(1)、用户属性;
不同的用户可能需要用到相同的词,但其重要性却随用户的不同而不同。
例如,同音词“研究”和“烟酒”,前者在学术领域使用较多,而后者则在日常生活中使用较多,但两者都是可能用到的。
因此,当用户输入拼音字符串“yanjiu”时,两者均可能出现在候选项中。但是,若明确当前的用户为学生时,“研究”较大可能是当前用户所需的,则可以提高其权重。
(2)、输入环境;
通过输入法的使用环境可以动态调整词库和/或词条的权重。
例如,若输入法中具有“办公用语”和“网络用语”两个细胞词库,分别记载有办公常用的词条、网络聊天常用的词条。
一般情况下这两个词库的优先级是相同的,但当输入法识别在Word中进行输入时,可以给“办公用语”这个词库增加权重,而当用户在即时通讯工具的会话窗口进行输入时,则可以给“网络用语”这个词库增加权重。
(3)、词频;
一般而言,词频越高,其权重越高,反之,词频越低,其权重越低。
(4)、位置。
若词库中的词库按照权重进行排序,如权重高的词条排序在前,则词条在词库中的相对位置可以表达词条的权重。
本发明实施例在滑行操作满足第二滑行条件时,识别滑行操作新触发的字符,添加到滑行操作已触发的字符之后,作为目标字符序列,后续可以基于该目标字符序列进行候选搜索、候选上屏等输入操作,在目标字符预测出错等情况下,用户可以忽略滑行路径,正常进行滑行输入,快速输入目标字符与正常滑行输入字符灵活切换,保证了滑行输入的实用性。
为使本领域技术人员更好地理解本发明实施例,以下通过具体的示例来说明本发明实施例中的滑行输入方法。
如图7所示,在汉语的拼音输入方式下,用户意图通过滑行输入方式输入“碳素”。
在执行滑行操作时,滑行到了位置701,此时的滑行轨迹702,识别出已触发的字符包括“tans”。
通过N-Gram模型预测用户下一个可能输入的字符,包括“e”、“u”、“i”、“o”,可以拼写出“tan’su”、“tan’se”、“tan’si”、“tan’sou”等音节路径。
在虚拟键盘上,生成从当前位置701滑行“e”所属的虚拟按键的滑行路径703,生成从当前位置701滑行“u”所属的虚拟按键的滑行路径704,生成从当前位置701滑行“i”所属的虚拟按键的滑行路径705,生成从当前位置701滑行“o”所属的虚拟按键的滑行路径706。
当用户看到滑行路径703、滑行路径704、滑行路径705、滑行路径706之后,察觉到滑行路径704指示下一个需要输入的字符“u”,则可以重按,同时,沿滑行路径704继续滑行。
此时识别出滑行操作的按压压力为重按之后,识别滑行操作的滑行方向707,计算与滑行路径703、滑行路径704、滑行路径705、滑行路径706之间的夹角,得出与滑行方向707与滑行路径703之间的夹角最小,在滑行一小段距离7071之后,还未到达字符“u”对应的虚拟按键,则可以输入字符“u”,获得目标字符序列“tansu”。
此后,可依据目标字符序列“tansu”查询候选项“碳素”进行显示,继而用户可以点选“碳素”上屏。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图8,示出了本发明的一种滑行输入系统实施例的结构框图,具体可以包括如下模块:
目标字符预测模块801,用于在检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符;
滑行路径生成模块802,用于在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径;
滑行条件确定模块803,用于确定所述滑行操作满足的滑行条件,所述滑行条件包括第一滑行条件;
目标字符添加模块804,用于在所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
在本发明的一个实施例中,所述滑行条件包括第二滑行条件,所述系统还可以包括如下模块:
新字符识别模块,用于在所述滑行操作满足所述第二滑行条件时,识别所述滑行操作新触发的字符;
新字符添加模块,用于将所述滑行操作新触发的字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
在本发明的一个实施例中,所述系统还可以包括如下模块:
候选项查询模块,用于查询所述目标字符序列对应的一个或多个候选项;
候选项显示模块,用于显示所述一个或多个候选项。
在本发明的一个实施例中,所述目标字符预测模块801可以包括如下子模块:
预测字符序列获得子模块,用于将一个或多个字符添加到由所述滑行操作已触发的字符之后,获得预测字符序列;
音节切分子模块,用于将所述预测字符序列切分为一个或多个音节;
条件概率计算子模块,用于计算所述一个或多个音节互相之间的条件概率;
音节路径得分计算子模块,用于采用所述条件概率计算所述预测字符序列的音节路径得分;
目标字符获得子模块,用于按照所述音节路径得分选择下一个输入的字符,作为目标字符。
在本发明的一个实施例中,所述目标字符预测模块801还可以包括如下子模块:
词条匹配子模块,用于将所述预测字符序列与预置的词库中的词条进行匹配;
目标字符设置子模块,用于在匹配成功时,将所述字符设置为目标字符。
在本发明的一个实施例中,所述滑行路径生成模块802可以包括如下子模块:
直线距离设置子模块,用于在当前位置滑行到目标字符所属虚拟按键之间的直线距离,作为滑行路径;
或者,
路径绕行子模块,用于在两个滑行路径存在至少部分重叠或夹角小于预设的角度阈值时,将其中一个滑行路径绕开另一个滑行路径。
在本发明的一个实施例中,所述滑行条件确定模块803可以包括如下子模块:
按压压力计算子模块,用于计算所述滑行操作的按压压力;
第一滑行条件确定子模块,用于在所述按压压力属于第一按压类型时,确定满足预设的第一滑行条件;
第二滑行条件确定子模块,用于在所述按压压力属于第二按压类型时,确定满足预设的第二滑行条件。
在本发明的一个实施例中,所述目标字符添加模块804可以包括如下子模块:
滑行方向计算子模块,用于在所述滑行操作满足所述第一滑行条件时,计算所述滑行操作的滑行方向;
滑行路径确定子模块,用于按照所述滑行方向确定所述滑行操作滑行的滑行路径;
目标字符添加子模块,用于在所述滑行操作滑行的距离超过预设的距离阈值时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列;
其中,所述距离阈值小于所述滑行路径的距离。
在本发明的一个实施例中,所述滑行路径确定子模块可以包括如下单元:
夹角计算单元,用于计算所述滑行方向与所述滑行路径之间的夹角;
夹角确定单元,用于确定夹角最小的滑行路径为所述滑行操作滑行的滑行路径。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图9是根据一示例性实施例示出的一种用于滑行输入的装置900的框图。例如,装置900可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图9,装置900可以包括以下一个或多个组件:处理组件902,存储器904,电源组件906,多媒体组件908,音频组件910,输入/输出(I/O)的接口912,传感器组件914,以及通信组件916。
处理组件902通常控制装置900的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件902可以包括一个或多个处理器920来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件902可以包括一个或多个模块,便于处理组件902和其他组件之间的交互。例如,处理部件902可以包括多媒体模块,以方便多媒体组件908和处理组件902之间的交互。
存储器904被配置为存储各种类型的数据以支持在设备900的操作。这些数据的示例包括用于在装置900上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器904可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件906为装置900的各种组件提供电力。电源组件906可以包括电源管理系统,一个或多个电源,及其他与为装置900生成、管理和分配电力相关联的组件。
多媒体组件908包括在所述装置900和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑行操作相关的持续时间和压力。在一些实施例中,多媒体组件908包括一个前置摄像头和/或后置摄像头。当设备900处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件910被配置为输出和/或输入音频信号。例如,音频组件910包括一个麦克风(MIC),当装置900处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器904或经由通信组件916发送。在一些实施例中,音频组件910还包括一个扬声器,用于输出音频信号。
I/O接口912为处理组件902和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件914包括一个或多个传感器,用于为装置900提供各个方面的状态评估。例如,传感器组件914可以检测到设备900的打开/关闭状态,组件的相对定位,例如所述组件为装置900的显示器和小键盘,传感器组件914还可以检测装置900或装置900一个组件的位置改变,用户与装置900接触的存在或不存在,装置900方位或加速/减速和装置900的温度变化。传感器组件914可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件914还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件914还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件916被配置为便于装置900和其他设备之间有线或无线方式的通信。装置900可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信部件916经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件916还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置900可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器904,上述指令可由装置900的处理器920执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种滑行输入的方法,所述方法包括:
当检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符;
在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径;
确定所述滑行操作满足的滑行条件,所述滑行条件包括第一滑行条件;
当所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种滑行输入方法,其特征在于,包括:
当检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符;
在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径;
确定所述滑行操作满足的滑行条件,所述滑行条件包括第一滑行条件;
当所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
2.根据权利要求1所述的方法,其特征在于,所述滑行条件包括第二滑行条件,所述方法还包括:
当所述滑行操作满足所述第二滑行条件时,识别所述滑行操作新触发的字符;
将所述滑行操作新触发的字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
查询所述目标字符序列对应的一个或多个候选项;
显示所述一个或多个候选项。
4.根据权利要求1或2所述的方法,其特征在于,所述依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符的步骤包括:
将一个或多个字符添加到由所述滑行操作已触发的字符之后,获得预测字符序列;
将所述预测字符序列切分为一个或多个音节;
计算所述一个或多个音节互相之间的条件概率;
采用所述条件概率计算所述预测字符序列的音节路径得分;
按照所述音节路径得分选择下一个输入的字符,作为目标字符。
5.根据权利要求4所述的方法,其特征在于,所述依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符的步骤还包括:
将所述预测字符序列与预置的词库中的词条进行匹配;
当匹配成功时,将所述字符设置为目标字符。
6.根据权利要求1或2或5所述的方法,其特征在于,所述在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径的步骤包括:
将当前位置滑行到目标字符所属虚拟按键之间的直线距离,作为滑行路径;
或者,
当两个滑行路径存在至少部分重叠或夹角小于预设的角度阈值时,将其中一个滑行路径绕开另一个滑行路径。
7.根据权利要求1或2或5所述的方法,其特征在于,所述确定所述滑行操作满足的滑行条件的步骤包括:
计算所述滑行操作的按压压力;
当所述按压压力属于第一按压类型时,确定满足预设的第一滑行条件;
当所述按压压力属于第二按压类型时,确定满足预设的第二滑行条件。
8.根据权利要求1或2或5所述的方法,其特征在于,所述当所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列的步骤包括:
当所述滑行操作满足所述第一滑行条件时,计算所述滑行操作的滑行方向;
按照所述滑行方向确定所述滑行操作滑行的滑行路径;
当所述滑行操作滑行的距离超过预设的距离阈值时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列;
其中,所述距离阈值小于所述滑行路径的距离。
9.根据权利要求8所述的方法,其特征在于,所述按照所述滑行方向确定所述滑行操作滑行的滑行路径的步骤包括:
计算所述滑行方向与所述滑行路径之间的夹角;
确定夹角最小的滑行路径为所述滑行操作滑行的滑行路径。
10.一种滑行输入系统,其特征在于,包括:
目标字符预测模块,用于在检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符;
滑行路径生成模块,用于在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径;
滑行条件确定模块,用于确定所述滑行操作满足的滑行条件,所述滑行条件包括第一滑行条件;
目标字符添加模块,用于在所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
11.一种用于滑行输入的装置,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
检测到滑行操作时,依据由所述滑行操作已触发的字符预测下一个输入的字符,作为目标字符;
在虚拟键盘上生成从当前位置滑行到所述目标字符所属虚拟按键的滑行路径;
确定所述滑行操作满足的滑行条件,所述滑行条件包括第一滑行条件;
当所述滑行操作满足所述第一滑行条件,且,所述滑行操作在某个滑行路径滑行部分距离时,将所述滑行路径对应的目标字符添加到所述滑行操作已触发的字符之后,作为目标字符序列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610827598.0A CN107817942B (zh) | 2016-09-14 | 2016-09-14 | 一种滑行输入方法、系统和一种用于滑行输入的装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610827598.0A CN107817942B (zh) | 2016-09-14 | 2016-09-14 | 一种滑行输入方法、系统和一种用于滑行输入的装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107817942A true CN107817942A (zh) | 2018-03-20 |
CN107817942B CN107817942B (zh) | 2021-08-20 |
Family
ID=61600793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610827598.0A Active CN107817942B (zh) | 2016-09-14 | 2016-09-14 | 一种滑行输入方法、系统和一种用于滑行输入的装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107817942B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020010789A1 (zh) * | 2018-07-13 | 2020-01-16 | 汉王科技股份有限公司 | 滑行输入方法及装置 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101986250A (zh) * | 2010-10-26 | 2011-03-16 | 广东国笔科技股份有限公司 | 一种基于虚拟键盘的滑笔输入系统 |
CN102880302A (zh) * | 2012-07-17 | 2013-01-16 | 重庆优腾信息技术有限公司 | 一种基于多词连续输入的字词识别方法、装置和系统 |
CN102934053A (zh) * | 2010-04-08 | 2013-02-13 | 京瓷株式会社 | 字符输入装置及字符输入方法 |
US8701050B1 (en) * | 2013-03-08 | 2014-04-15 | Google Inc. | Gesture completion path display for gesture-based keyboards |
US20140317547A1 (en) * | 2013-04-22 | 2014-10-23 | Google Inc. | Dynamically-positioned character string suggestions for gesture typing |
CN104199606A (zh) * | 2014-07-29 | 2014-12-10 | 北京搜狗科技发展有限公司 | 一种滑行输入的方法和装置 |
CN104346067A (zh) * | 2013-11-15 | 2015-02-11 | 上海触乐信息科技有限公司 | 连续滑动输入单词的方法和系统 |
CN104718544A (zh) * | 2012-10-16 | 2015-06-17 | 谷歌公司 | 部分手势文本输入 |
CN104756061A (zh) * | 2012-10-16 | 2015-07-01 | 谷歌公司 | 多手势文本输入预测 |
CN104808929A (zh) * | 2015-03-30 | 2015-07-29 | 魏新成 | 一次滑行显示输入一个全拼预测语句的方法和系统 |
CN105260113A (zh) * | 2015-09-18 | 2016-01-20 | 科大讯飞股份有限公司 | 滑行输入方法、装置及终端设备 |
US20160034046A1 (en) * | 2014-08-01 | 2016-02-04 | Nuance Communications, Inc. | System and methods for determining keyboard input in the presence of multiple contact points |
CN105431809A (zh) * | 2013-03-15 | 2016-03-23 | 谷歌公司 | 用于国际语言的虚拟键盘输入 |
-
2016
- 2016-09-14 CN CN201610827598.0A patent/CN107817942B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102934053A (zh) * | 2010-04-08 | 2013-02-13 | 京瓷株式会社 | 字符输入装置及字符输入方法 |
CN101986250A (zh) * | 2010-10-26 | 2011-03-16 | 广东国笔科技股份有限公司 | 一种基于虚拟键盘的滑笔输入系统 |
CN102880302A (zh) * | 2012-07-17 | 2013-01-16 | 重庆优腾信息技术有限公司 | 一种基于多词连续输入的字词识别方法、装置和系统 |
CN104756061A (zh) * | 2012-10-16 | 2015-07-01 | 谷歌公司 | 多手势文本输入预测 |
CN104718544A (zh) * | 2012-10-16 | 2015-06-17 | 谷歌公司 | 部分手势文本输入 |
US8701050B1 (en) * | 2013-03-08 | 2014-04-15 | Google Inc. | Gesture completion path display for gesture-based keyboards |
CN105431809A (zh) * | 2013-03-15 | 2016-03-23 | 谷歌公司 | 用于国际语言的虚拟键盘输入 |
US20140317547A1 (en) * | 2013-04-22 | 2014-10-23 | Google Inc. | Dynamically-positioned character string suggestions for gesture typing |
CN104346067A (zh) * | 2013-11-15 | 2015-02-11 | 上海触乐信息科技有限公司 | 连续滑动输入单词的方法和系统 |
CN104199606A (zh) * | 2014-07-29 | 2014-12-10 | 北京搜狗科技发展有限公司 | 一种滑行输入的方法和装置 |
US20160034046A1 (en) * | 2014-08-01 | 2016-02-04 | Nuance Communications, Inc. | System and methods for determining keyboard input in the presence of multiple contact points |
CN104808929A (zh) * | 2015-03-30 | 2015-07-29 | 魏新成 | 一次滑行显示输入一个全拼预测语句的方法和系统 |
CN105260113A (zh) * | 2015-09-18 | 2016-01-20 | 科大讯飞股份有限公司 | 滑行输入方法、装置及终端设备 |
Non-Patent Citations (1)
Title |
---|
杨少华: "中文输入法若干相关问题研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020010789A1 (zh) * | 2018-07-13 | 2020-01-16 | 汉王科技股份有限公司 | 滑行输入方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107817942B (zh) | 2021-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107844199B (zh) | 一种输入方法、系统和用于输入的装置 | |
CN107436691B (zh) | 一种输入法进行纠错的方法、客户端、服务器及装置 | |
CN107544684B (zh) | 一种候选词显示方法及装置 | |
US10614154B2 (en) | Methods, devices, and computer-readable medium for predicting the intended input from a user of an application in an electronic device | |
CN107247519B (zh) | 一种输入方法及装置 | |
CN107092424B (zh) | 一种纠错项的显示方法、装置和用于纠错项的显示的装置 | |
CN107564526B (zh) | 处理方法、装置和机器可读介质 | |
CN109002183B (zh) | 一种信息输入的方法及装置 | |
CN107291260B (zh) | 一种信息输入方法和装置、及用于信息输入的装置 | |
CN108073293B (zh) | 一种目标词组的确定方法和装置 | |
CN107688397B (zh) | 一种输入方法、系统和用于输入的装置 | |
CN108803890A (zh) | 一种输入方法、输入装置和用于输入的装置 | |
CN107424612B (zh) | 处理方法、装置和机器可读介质 | |
CN107797676B (zh) | 一种单字输入方法及装置 | |
CN107132927B (zh) | 输入字符的识别方法及装置和用于识别输入字符的装置 | |
CN107422872B (zh) | 一种输入方法、装置和用于输入的装置 | |
CN107817942B (zh) | 一种滑行输入方法、系统和一种用于滑行输入的装置 | |
CN110795014A (zh) | 一种数据处理方法、装置和用于数据处理的装置 | |
CN109979435B (zh) | 数据处理方法和装置、用于数据处理的装置 | |
CN109542244B (zh) | 一种输入方法、装置和介质 | |
CN108227952B (zh) | 生成自定义词的方法、系统和用于生成自定义词的装置 | |
CN109388252B (zh) | 一种输入方法及装置 | |
CN107665206B (zh) | 清理用户词库的方法、系统和用于清理用户词库的装置 | |
CN113407099A (zh) | 输入方法、装置和机器可读介质 | |
CN111103986A (zh) | 用户词库管理方法及装置、输入方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |