首页 / 专利库 / 电脑零配件 / 假名 / 语言输入校正

语言输入校正

阅读:307发布:2020-05-12

专利汇可以提供语言输入校正专利检索,专利查询,专利分析的服务。并且本公开一般而言涉及语言输入校正。在一个示例过程中, 接触 输入序列能够经由触摸敏感显示器上的 键盘 界面被检测。接触输入序列中的接触输入可以包括从键盘界面的第一 位置 到第二位置的接触运动。对应于接触输入序列的多个候选词能够被确定。多个候选词可以基于接触输入是选择键盘界面的第一键的预期输入的概率以及接触输入是选择键盘界面的第二键的预期输入的概率来排名。多个候选词的一部分能够被显示以供用户选择。,下面是语言输入校正专利的具体信息内容。

1.一种用于输入语言的方法,所述方法包括:
在具有一个或多个处理器、存储器以及触摸敏感显示器的设备处:
经由所述触摸敏感显示器上的键盘界面检测接触输入序列,其中检测所述接触输入序列中的接触输入包括检测与所述触摸敏感显示器的接触在所述键盘界面的第一位置处的发起、从所述键盘界面的所述第一位置到第二位置的连续接触运动、以及在第二位置处接触从所述触摸敏感显示器的释放,并且其中所述接触输入表示对所述键盘界面的至多一个字符键的用户选择;
确定对应于所述接触输入序列的多个候选词;
基于所述接触输入是选择所述键盘界面的第一键的预期输入的概率以及所述接触输入是选择所述键盘界面的第二键的预期输入的概率来将所述多个候选词排名;及显示所述多个候选词的一部分以供用户选择。
2.如权利要求1所述的方法,其中所述第一键对应于语言的第一书写符号并且所述第二键对应于所述语言的第二书写符号。
3.如权利要求1-2中任何一项所述的方法,其中所述多个候选词包括第一书写系统的词和第二书写系统的词。
4.如权利要求1-2中任何一项所述的方法,还包括:
确定潜在地对应于所述接触输入序列的多个字符串;及
利用几何模型确定给定所述接触输入序列下的所述多个字符串中每个字符串的概率,其中所述多个候选词是基于给定所述接触输入序列下的所述多个字符串中每个字符串的概率从所述多个字符串确定的。
5.如权利要求1-2中任何一项所述的方法,其中所述多个候选词是基于语言模型的词典来确定的。
6.如权利要求1-2中任何一项所述的方法,其中:
所述接触输入是选择所述键盘界面的第一键的期望输入的概率是基于所述第一位置与所述第一键的中心位置之间的距离来确定的;及
所述接触输入是选择所述键盘界面的第二键的期望输入的概率是基于所述第一位置与所述第二键的中心位置之间的距离来确定的。
7.如权利要求1-2中任何一项所述的方法,还包括:
基于所述接触运动从第一位置到第二位置的距离来确定所述接触输入是选择所述键盘界面的第一键的预期输入的概率和所述接触输入是选择所述键盘界面的第二键的预期输入的概率。
8.如权利要求7所述的方法,其中当所述接触运动从第一位置到第二位置的距离增加时,所述接触输入是选择所述键盘界面的第一键的预期输入的概率降低,并且所述接触输入是选择所述键盘界面的第二键的预期输入的概率增加。
9.如权利要求1-2和8中任何一项所述的方法,还包括:
确定给定所述接触输入序列下的每个候选词的概率,其中将所述多个候选词排名是基于给定所述接触输入序列下的每个候选词的概率。
10.如权利要求9所述的方法,其中,给定所述接触输入序列下的所述多个候选词中每个候选词的概率是基于给定所述接触输入序列下的多个字符串中相应字符串的概率来确定的。
11.如权利要求9所述的方法,还包括:
确定给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率,其中给定所述接触输入序列下的多个候选词中每个候选词的概率是基于给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率来确定的。
12.如权利要求11所述的方法,其中,给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率是利用一个或多个语言模型来确定的。
13.如权利要求1-2、8和10-12中任何一项所述的方法,其中所述多个候选词是利用具有Trie数据结构的词典来确定的。
14.如权利要求1-2、8和10-12中任何一项所述的方法,其中所述多个候选词是基于所述键盘界面上的所述第一位置与每个键的中心位置之间的距离排名的。
15.如权利要求1-2、8和10-12中任何一项所述的方法,其中所述多个候选词是基于所述接触运动的第一位置与第二位置之间的距离排名的。
16.如权利要求1-2、8和10-12中任何一项所述的方法,其中所述多个候选词是基于从所述第一位置到所述第二位置的接触运动的速度排名的。
17.如权利要求1-2、8和10-12中任何一项所述的方法,其中所述多个候选词是基于所述接触运动相对于所述键盘界面的参考轴的度排名的。
18.如权利要求1-2、8和10-12中任何一项所述的方法,其中所述键盘界面是10键假名键盘界面。
19.一种用于在电子设备上输入语言的设备,包括用于实现如权利要求1-18中任何一项所述的方法的步骤的装置。
20.一种电子设备,包括:
显示单元;
触摸敏感表面单元;及
耦合到所述触摸敏感表面单元的处理单元,所述处理单元被配置为:
经由所述触摸敏感表面单元上的键盘界面检测接触输入序列,其中检测所述接触输入序列中的接触输入包括检测与所述触摸敏感显示器的接触在所述键盘界面的第一位置处的发起、从所述键盘界面的所述第一位置到第二位置的连续接触运动、以及在第二位置处接触从所述触摸敏感显示器的释放,并且其中所述接触输入表示对所述键盘界面的至多一个字符键的用户选择;
确定对应于所述接触输入序列的多个候选词;
基于所述接触输入是选择所述键盘界面的第一键的预期输入的概率以及所述接触输入是选择所述键盘界面的第二键的预期输入的概率来将所述多个候选词排名;及显示所述多个候选词的一部分以供用户选择。
21.如权利要求20所述的电子设备,其中所述第一键对应于语言的第一书写符号并且所述第二键对应于所述语言的第二书写符号。
22.如权利要求20-21中任何一项所述的电子设备,其中所述多个候选词包括第一书写系统的词和第二书写系统的词。
23.如权利要求20-21中任何一项所述的电子设备,其中所述处理单元还被配置为:
确定潜在地对应于所述接触输入序列的多个字符串;及
利用几何模型确定给定所述接触输入序列下的所述多个字符串中每个字符串的概率,其中所述多个候选词是基于给定所述接触输入序列下的所述多个字符串中每个字符串的概率从所述多个字符串确定的。
24.如权利要求20-21中任何一项所述的电子设备,其中所述多个候选词是基于语言模型的词典来确定的。
25.如权利要求20-21中任何一项所述的电子设备,其中:
所述接触输入是选择所述键盘界面的第一键的期望输入的概率是基于所述第一位置与所述第一键的中心位置之间的距离来确定的;及
所述接触输入是选择所述键盘界面的第二键的期望输入的概率是基于所述第一位置与所述第二键的中心位置之间的距离来确定的。
26.如权利要求20-21中任何一项所述的电子设备,其中所述处理单元还被配置为:
基于所述接触运动从第一位置到第二位置的距离来确定所述接触输入是选择所述键盘界面的第一键的预期输入的概率和所述接触输入是选择所述键盘界面的第二键的预期输入的概率。
27.如权利要求26所述的电子设备,其中当所述接触运动从第一位置到第二位置的距离增加时,所述接触输入是选择所述键盘界面的第一键的预期输入的概率降低,并且所述接触输入是选择所述键盘界面的第二键的预期输入的概率增加。
28.如权利要求20-21和27中任何一项所述的电子设备,其中所述处理单元还被配置为确定给定所述接触输入序列下的每个候选词的概率,其中将所述多个候选词排名是基于给定所述接触输入序列下的每个候选词的概率的。
29.如权利要求28所述的电子设备,其中,给定所述接触输入序列下的所述多个候选词中每个候选词的概率是基于给定所述接触输入序列下的多个字符串中相应字符串的概率来确定的。
30.如权利要求28所述的电子设备,其中处理单元还被配置为确定给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率,其中给定所述接触输入序列下的多个候选词中每个候选词的概率是基于给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率来确定的。
31.如权利要求30所述的电子设备,其中,给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率是利用一个或多个语言模型来确定的。
32.如权利要求20-21、27和29-31中任何一项所述的电子设备,其中所述多个候选词是利用具有Trie数据结构的词典来确定的。
33.如权利要求20-21、27和29-31中任何一项所述的电子设备,其中所述多个候选词是基于所述键盘界面上的所述第一位置与每个键的中心位置之间的距离排名的。
34.如权利要求20-21、27和29-31中任何一项所述的电子设备,其中所述多个候选词是基于所述接触运动的第一位置与第二位置之间的距离排名的。
35.如权利要求20-21、27和29-31中任何一项所述的电子设备,其中所述多个候选词是基于从所述第一位置到所述第二位置的接触运动的速度排名的。
36.如权利要求20-21、27和29-31中任何一项所述的电子设备,其中所述多个候选词是基于所述接触运动相对于所述键盘界面的参考轴的角度排名的。
37.如权利要求20-21、27和29-31中任何一项所述的电子设备,其中所述键盘界面是10键假名键盘界面。
38.一种包括指令的计算机可读介质,所述指令在被一个或多个处理器执行时,使所述一个或多个处理器执行根据权利要求1-18中任一项所述的方法。
39.一种系统,包括:
一个或多个处理器;及
存储器,所述存储器耦合到所述一个或多个处理器并且存储有计算机可读指令,所述指令在被所述一个或多个处理器执行时,使所述一个或多个处理器执行如权利要求1-18中任一项所述的方法。

说明书全文

语言输入校正

[0001] 对相关申请的交叉引用
[0002] 本申请要求于2015年6月5日提交且标题为“LANGUAGE INPUT CORRECTION”的美国临时序列No.62/171,911和于2015年9月3日提交且标题为“LANGUAGE INPUT CORRECTION”的美国非临时序列No.14/844,829的优先权,这两个申请整体上通过引用被结合于此,用于所有目的。

技术领域

[0003] 本公开一般而言涉及语言输入,并且更具体而言涉及用于语言输入校正的技术。

背景技术

[0004] 可以提供各种键盘界面,以便使用户能够向应用文档,诸如字处理文档、消息或电子邮件,输入文本或其它内容元素。例如,在触摸接口移动设备中,键盘界面可以经由触摸敏感显示器显示。用户的触摸输入可被处理,以确定哪些键意在由用户输入并且与预定键关联的对应字符可以在文本域中显示。
[0005] 由于移动设备上的键盘界面的物理限制(例如,尺寸),来自用户的触摸输入可被确定为对应于用户不打算输入的键。在输入文本时,这会带来显著的不准确和低效。另外,对于依赖于将基于音标的输入(例如,中文拼音、日文平假名,等等)转换成预测出的候选文本(例如,中文字符、日文词,等等)的语言,文本输入中的错误会导致大量不相关候选的生成。这会显著损害用户体验和生产率。发明内容
[0006] 提供了用于语言输入校正的系统和过程。在一个示例过程中,接触输入序列可以经由触摸敏感显示器上的键盘界面被检测。接触输入序列中的接触输入可以包括从键盘界面的第一位置到第二位置的接触运动。对应于接触输入序列的多个候选词可被确定。这多个候选词可以基于接触输入是选择键盘界面的第一键的预期输入的概率以及接触输入是选择键盘界面的第二键的预期输入的概率来排名。多个候选词的一部分可被显示以供用户选择。附图说明
[0007] 为了各种所述实施例的更好理解,应当结合附图参考下面的具体实施方式,附图中相似的标号贯穿所有附图指对应的部分。
[0008] 图1A是示出根据一些实施例、具有触摸敏感显示器的便携式多功能设备的框图
[0009] 图1B是示出根据一些实施例、用于事件处理的示例性组件的框图。
[0010] 图2示出了根据一些实施例、具有触摸屏的便携式多功能设备。
[0011] 图3是根据一些实施例、具有显示器和触摸敏感表面的示例性多功能设备的框图。
[0012] 图4A示出了根据一些实施例、用于便携式多功能设备上应用的菜单的示例性用户界面
[0013] 图4B示出了根据一些实施例、用于具有与显示器分离的触摸敏感表面的多功能设备的示例性用户界面。
[0014] 图5A示出了根据一些实施例的个人电子设备。
[0015] 图5B是示出根据一些实施例的个人电子设备的框图。
[0016] 图6A-C是示出根据一些实施例的示例性简化键盘界面的电子设备的屏幕截图。
[0017] 图7是示出根据一些实施例、用于语言输入校正的示例性过程的流程图
[0018] 图8A-D是示出根据一些实施例、用于语言输入校正的示例性过程的各个阶段的电子设备的示例性屏幕截图。
[0019] 图9是示出根据一些实施例的示例性电子设备的功能框图。

具体实施方式

[0020] 以下描述阐述示例性方法、参数等等。但是,应当认识到,这种描述不是要作为对本公开的范围的限制,而是代替地作为示例性实施例的描述被提供。
[0021] 本公开一般而言涉及用于语言输入校正的系统和过程。在示例性过程中,接触输入序列可以经由触摸敏感显示器上的键盘界面被检测。接触输入序列中的接触输入可以包括从键盘界面的第一位置到第二位置的接触运动。对应于接触输入序列的多个候选词可被确定。这多个候选词可以基于接触输入是选择键盘界面的第一键的预期输入的概率以及接触输入是选择键盘界面的第二键的预期输入的概率来排名。多个候选词的一部分可被显示以供用户选择。通过考虑键盘界面的多于一个键作为接触输入的预期输入,该过程可以确定并显示更准确地反映用户意图的候选词。另外,该过程可以通过考虑其它可能的预期键来校正意外的接触输入(例如,输入错误),由此提高所显示的候选词的相关性。这可以提高用于输入文本的准确性和生产率。
[0022] 虽然以下描述使用术语“第一”、“第二”等来描述各种元素,但是这些元素不应当受所述术语的限制。这些术语仅仅用来区分一个元素与另一个元素。例如,在不背离各种所述实施例的范围的情况下,第一触摸可以被称为第二触摸,并且类似地,第二触摸可以被称为第一触摸。第一触摸和第二触摸都是触摸,但它们不是同一个触摸。
[0023] 本文各种所述实施例的描述中所使用的术语仅仅是为了描述特定的实施例而不是要限制。如在各种实施例的描述和所附权利要求中所使用的,除非上下文明确地另外指出,否则单数形式“一个”和“该”是要也包括复数形式。还应当理解,如本文中所使用的,术语“和/或”指并且涵盖相关联地列出的项当中一个或多个的任何和所有可能组合。还应当理解,当在本说明书使用时,术语“包括”规定所述特征、整数、步骤、操作、元素和/或组件的存在,但是并不排除一个或多个其它特征、整数、步骤、操作、元素、组件和/或其组的存在或添加。
[0024] 依赖于上下文,术语“如果”可以被认为是指“当...时”或者“在...时”或者“响应于确定”或者“响应于检测”。类似地,依赖于上下文,短语“如果确定”或者“如果检测到[所述条件或事件]”可以被认为是指“在确定...时”或者“响应于确定”或者“在检测到[所述条件或事件]时”或者“响应于检测到[所述条件或事件]”。
[0025] 描述电子设备、用于这种设备的用户界面以及使用这种设备的相关过程的实施例。在一些实施例中,设备是还包含诸如PDA和/或音乐播放器功能之类的其它功能的便携式通信设备,诸如移动电话。便携式多功能设备的示例性实施例包括,但不限于,来自位于加州Cupertino的Apple公司的 iPod 和 设备。其它便携式电子设备,诸如具有触摸敏感表面(例如,触摸屏显示器和/或触垫)的膝上型或平板计算机,可选地被使用。还应当理解,在一些实施例中,设备不是便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触垫)的台式计算机。
[0026] 在以下的讨论中,描述包括显示器和触摸敏感表面的电子设备。但是,应当理解,电子设备可选地包括一个或多个其它物理用户接口设备,诸如物理键盘、鼠标和/或操纵杆。
[0027] 设备可以支持各种应用,诸如以下中的一个或多个:绘图应用、演示应用、文字处理应用、网站创建应用、盘创作应用、电子数据表应用、游戏应用、电话应用、视频会议应用、邮件应用、即时消息传送应用、锻练(workout)支持应用,照片管理应用、数码相机应用、数码摄像机应用、web浏览应用、数字音乐播放器应用和/或数字视频播放器应用。
[0028] 在设备上执行的这各种应用可选地使用至少一个常见的物理用户接口设备,诸如触摸敏感表面。触摸敏感表面的一个或多个功能以及在设备上显示的对应信息可选地从一个应用到下一个应用和/或在各自的应用程序中被调整和/或改变。以这种方式,设备的常见物理体系架构(诸如触摸敏感表面)可选地利用对用户直观和透明的用户接口支持各种应用程序。
[0029] 1.用于执行语言输入校正的示例性设备
[0030] 现在把注意转向具有触摸敏感显示器的便携式设备的实施例。图1A是示出根据一些实施例具有触摸敏感显示系统112的便携式多功能设备100的框图。为了方便,触摸敏感显示器112有时候被称为“触摸屏”,并且有时候被称为或叫做“触摸敏感显示系统”。设备100包括存储器102(存储器102可选地包括一个或多个计算机可读存储介质)、存储器控制器122、一个或多个处理单元(CPU)120、外设接口118、RF电路108、音频电路110、扬声器111、麦克113、输入/输出(I/O)子系统106、其它输入控制设备116以及外部端口124。设备100可选地包括一个或多个光学传感器164。设备100可选地包括一个或多个接触强度传感器
165,用于检测设备100(例如,触摸敏感表面,诸如设备100的触摸敏感显示系统112)上的接触强度。设备100可选地包括一个或多个触知输出发生器167,用于在设备100上产生触知输出(例如,在触摸敏感表面,诸如设备100的触摸敏感显示系统112或者设备300的触垫355,上产生触知输出)。这些组件可选地经一条或多条通信总线或信号线103通信。
[0031] 如在本说明书和权利要求中所使用的,术语触摸敏感表面上接触的“强度”指触摸敏感表面上接触(例如,手指接触)的力或压力(每单位面积的力),或者指触摸敏感表面上接触的力或压力的替代物(代用品)。接触的强度具有包括至少四个不同值并且更通常地包括数百个不同值(例如,至少256个)的值范围。接触的强度可选地是利用各种方法和各种传感器或者传感器的组合确定(或测量)的。例如,触摸敏感表面下面或与其邻接的一个或多个力传感器可选地被用来测量在触摸敏感表面上各个点的力。在一些实现中,来自多个力传感器的力测量被组合(例如,加权平均),以确定估计的接触力。类似地,触控笔的压力敏感尖端可选地被用来确定触摸敏感表面上触控笔的压力。作为替代,在触摸敏感表面上检测到的接触面积的尺寸和/或对其的变化、接近触点的触摸敏感表面的电容和/或对其的变化,和/或接近触点的触摸敏感表面的电阻和/或对其的变换可选地被用作触摸敏感表面上接触的力或压力的替代物。在一些实现中,对接触力或压力的替代物测量被直接用来确定是否超过强度阈值(例如,强度阈值是以对应于替代物测量的单位描述的)。在一些实现中,对接触力或压力的替代物测量被转换成估计的力或压力,并且该估计的力或压力被用来确定是否超过强度阈值(例如,强度阈值是以压力的单位测量的压力阈值)。利用接触的强度作为用户输入的属性允许用户访问否则不能被用户在减小尺寸的设备上访问的附加设备功能,其中减小尺寸的设备具有受限的面积来显示启示(例如,在触摸敏感显示器上)和/或接收用户输入(例如,经触摸敏感显示器、触摸敏感表面,或者诸如旋钮或按钮的物理/机械控件)。
[0032] 如在本说明书和权利要求中所使用的,术语“触知输出”指将被用户利用用户的触觉检测到的、设备相对于该设备之前位置的物理移位、设备的组件(例如,触摸敏感表面)相对于设备另一组件(例如,外壳)的物理移位,或者该组件相对于设备质量中心的移位。例如,在其中设备或设备的组件与用户对触摸敏感的表面(例如,手指、手掌,或者用户的手的其它部分)接触的情况下,由物理移位产生的触知输出将被用户解释为对应于被感觉到的该设备或设备组件的物理特性变化的触知感觉。例如,触摸敏感表面(例如,触摸敏感显示器或触控板)的运动可选地被用户解释为物理致动器按钮的“向下点击”或“向上点击”。在一些情况下,即使当不存在与通过用户的运动被物理按下(例如,移位)的触摸敏感表面关联的物理致动器按钮的运动时,用户也将感觉到诸如“向下点击”或“向上点击”的触知感觉。作为另一个例子,即使当触摸敏感表面的平滑度没有变化时,触摸敏感表面的运动也可选地被用户解释为或感测为触摸敏感表面的“粗糙度”。虽然用户对触摸的这种解释将受制于用户的个人感官知觉,但还是有许多对大多数用户共同的触摸的感官知觉。因此,当触知输出被描述为对应于用户的特定感官知觉时(例如,“向上点击”、“向下点击”、“粗糙度”),除非另外声明,否则所生成的触知输出对应于设备或者其组件的物理移位,这将为典型(或平均)用户生成所描述的感官知觉。
[0033] 应当理解,设备100仅仅是便携式多功能设备的一个例子,并且设备100可选地具有比所示更多或更少的组件、可选地组合两个或更多个组件、或者可选地具有组件的不同配置或布置。图1A中所示的各种组件以硬件软件或者硬件和软件的组合实现,包括一个或多个信号处理和/或者专用集成电路
[0034] 存储器102可以包括一个或多个计算机可读存储介质。计算机可读存储介质可以是有形的和非临时性的。计算机可读存储介质可以存储用于执行过程700的指令,如下所述。存储器102可以包括高速随机存取存储器并且还可以包括非易失性存储器,诸如一个或多个磁盘存储设备、闪存存储器设备或者其它非易失性固态存储器设备。存储器控制器122可以控制由设备100的其它组件对存储器102的访问。
[0035] 外设接口118可被用来把设备的输入和输出外设耦合到CPU120和存储器102。一个或多个处理器120运行或执行存储在存储器102的各种软件程序和/或指令集,以执行设备100的各种功能并处理数据。在一些实施例中,外设接口118、CPU 120和存储器控制器122可在单个芯片——诸如芯片104——上被实现。在一些其它实施例中,它们可在分开的芯片上实现。
[0036] RF(射频)电路108接收和发送RF信号,也被称为电磁信号。RF电路108将电信号转换成电磁信号/从电磁信号转换成电信号,并通过电磁信号与通信网络和其它通信设备通信。RF电路108可选地包括公知的用于执行这些功能的电路,包括但不限于天线系统、RF收发器、一个或多个放大器、调谐器、一个或多个振荡器数字信号处理器、CODEC芯片集、订户身份模(SIM)卡、存储器,等等。RF电路108可选地通过无线通信与网络进行通信,诸如也被称为万维网(WWW)的互联网、内联网和/或无线网络,诸如蜂窝电话网络、无线局域网(LAN)和/或城域网(MAN)以及其它设备。RF电路108可选地包括公知的用于检测近场通信(NFC)场的电路,诸如通过短距离通信无线电。无线通信可选地使用任意多种通信标准、协议和技术,包括但不限于全球移动通信系统(GSM)、增强数据GSM环境(EDGE)、高速下行链路分组接入(HSDPA)、高速上行链路分组接入(HSUPA)、演进仅数据(EV-DO)、HSPA、HSPA+、双小区HSPA(DC-HSPDA)、长期演进(LTE)、近场通信(NFC)、宽带码分多址(W-CDMA)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、蓝牙低功耗(BTLE)、无线保真(Wi-Fi)(例如,IEEE 802.11a、IEEE 802.11b、IEEE802.11g、IEEE 802.11n和/或IEEE 802.11ac)、基于互联网协议的语音(VoIP)、Wi-MAX、用于电子邮件的协议(例如,互联网消息访问协议(IMAP)和/或邮局协议(POP))、即时消息传送(例如,可扩展消息处理现场协议(XMPP)、会话发起协议的即时消息和现场支持扩展(SIMPLE)、即时消息和状态服务(IMPS))和/或短消息服务(SMS),或者任何其它合适的通信协议,包括在本文档提交之日尚未开发出来的通信协议。
[0037] 音频电路110、扬声器111和麦克风113在用户和设备100之间提供音频接口。音频电路110从外设接口118接收音频数据、把音频数据转换为电信号,并将电信号发送到扬声器111。扬声器111将电信号转换为人可以听到的声波。音频电路110还接收由麦克风113从声波转换的电信号。音频电路110将电信号转换成音频数据并且将音频数据发送到外设接口118以供处理。音频数据可由外设接口118从存储器102和/或RF电路108检索和/或发送到存储器102和/或RF电路108。在一些实施例中,音频电路110还包括机插孔(例如,图2的212)。耳机插孔在音频电路系统110和可拆卸音频输入/输出外设,诸如只输出的耳塞或者既有输出(例如,用于一只或两只耳朵的耳塞)又有输入(例如,麦克风)的头戴式耳机,之间提供接口。
[0038] I/O子系统106把设备100上的输入/输出外设,诸如触摸屏112和其它输入控制设备116,耦合到外设接口118。I/O子系统106可选地包括显示器控制器156、光学传感器控制器158、强度传感器控制器159、触觉反馈控制器161以及用于其它输入或控制设备的一个或多个输入控制器160。这一个或多个输入控制器160从其它输入控制设备116接收/向其它输入控制设备116发送电信号。其它输入控制设备116可选地包括物理按钮(例如,推送按钮、摇杆按钮,等等)、表盘、滑块开关、操纵杆、点击轮,等等。在一些备选实施例中,输入控制器160可选地耦合到以下任何一个(或者不耦合到任何一个):键盘、红外端口、USB端口和诸如鼠标的指针设备。一个或多个按钮(例如,图2的208)可选地包括用于扬声器111和/或麦克风113的音量控制的上/下按钮。一个或多个按钮可选地包括推送按钮(例如,图2的206)。
[0039] 推送按钮的快速按下可以解开触摸屏112的定或者开始在触摸屏上用户手势解锁设备的过程,例如如在于2005年12月23日提交的美国专利申请11/322,549“Unlocking a Device by Performing Gestures on an Unlock Image”,美国专利No.7,657,849,中所描述的过程,该专利的全部内容通过引用被结合于此。推送按钮(例如,206)的长时间按下可以接通或断开设备100的电源。用户可以能够定制一个或多个按钮的功能。触摸屏112被用来实现虚拟或软按钮以及一个或多个软键盘。
[0040] 触摸敏感显示器112在设备和用户之间提供输入接口和输出接口。显示器控制器156从触摸屏112接收/向触摸屏112发送电信号。触摸屏112向用户显示可视输出。可视输出可以包括图形、文字、图标、视频及其任意组合(统称为“图形”)。在一些实施例中,可视输出的一些或全部可以对应于用户界面对象。
[0041] 触摸屏112具有基于触觉和/或触知接触从用户接受输入的触摸敏感表面、传感器或者传感器集合。触摸屏112和显示器控制器156(连同存储器102中任何关联的模块和/或指令集一起)检测触摸屏112上的接触(以及接触的任何移动或中断)并且把检测到的接触转换为与在触摸屏112上显示的用户界面对象(例如,一个或多个软键、图标、网页或图像)的交互。在示例性实施例中,触摸屏112和用户之间的接触点对应于用户的手指。
[0042] 触摸屏112可以使用LCD(液晶显示器)技术、LPD(发光聚合物显示器)技术或LED(发光二极管)技术,但是其它显示技术可以在其它实施例中使用。触摸屏112和显示器控制器156可以利用任何多种现在已知或以后开发的触摸感测技术——其包括但不限于电容式、电阻式、红外线和表面声波技术,来检测接触及其任何移动或中断,以及其它接近传感器阵列或者用于确定与触摸屏112的一个或多个接触点的其它元件。在示例性实施例中,使用投射互电容感测技术,诸如在来自位于加州Cupertino的Apple公司的 和iPod中找到的。
[0043] 在触摸屏112的一些实施例中,触摸敏感显示器可以与例如在以下美国专利中描述的多触摸敏感触垫类似:6,323,846(授予Westerman等人)、6,570,557(授予Westerman等人)和/或6,677,932(授予Westerman)和/或美国专利公开2002/0015024A1,这些当中每一个的全部内容都通过引用被结合于此。但是,触摸屏112显示来自设备100的可视输出,而触摸敏感触垫不提供可视输出。
[0044] 在触摸屏112的一些实施例中,触摸敏感显示器可以例如如以下申请中所描述的:(1)于2006年5月2日提交的美国专利申请No.11/381,313“Multipoint Touch Surface Controller”;(2)于2004年5月6日提交的美国专利申请No.10/840,862“Multipoint Touchscreen”;(3)于2004年7月30日提交的美国专利申请No.10/903,964“Gestures For Touch Sensitive Input Devices”;(4)于2005年1月31日提交的美国专利申请No.11/048,
264“Gestures For Touch Sensitive Input Devices”;(5)于2005年1月18日提交的美国专利申请No.11/038,590“Mode-Based Graphical User Interfaces For Touch 
Sensitive Input Devices”;(6)于2005年9月16日提交的美国专利申请No.11/228,758“Virtual Input Device Placement On A Touch Screen User Interface”;(7)于2005年
9月16日提交的美国专利申请No.11/228,700“Operation Of A Computer With A Touch Screen Interface”;(8)于2005年9月16日提交的美国专利申请No.11/228,737
“Activating Virtual Keys Of A Touch-Screen Virtual Keyboard”;以及(9)于2006年3月3日提交的美国专利申请No.11/367,749“Multi-Functional Hand-Held Device”。所有这些申请的全部内容都通过引用被结合于此。
[0045] 触摸屏112可以具有超过100dpi的视频分辨率。在一些实施例中,触摸屏可以具有大约160dpi的视频分辨率。用户可以利用任何合适的对象或附件,诸如触控笔、手指等等,与触摸屏112接触。在一些实施例中,用户界面被设计为主要与基于手指的接触和手势工作,由于手指在触摸屏上更大的接触面积,这会比基于触控笔的输入更不精确。在一些实施例中,设备把粗略的基于手指的输入翻译成精确的指针/光标位置或命令,用于执行用户期望的动作。
[0046] 在一些实施例中,除了触摸屏,设备100还可以包括用于激活或停用特定功能的触垫(未示出)。在一些实施例中,触垫是设备的触摸敏感区域,不像触摸屏,触垫不显示可视输出。触垫可以是与触摸屏112分离的触摸敏感表面或者是由触摸屏构成的触摸敏感表面的延伸。
[0047] 设备100还包括用于给各种组件供电的电源系统162。电源系统162可以包括电源管理系统、一个或多个电源(例如,电池、交流电流(AC))、充电系统、电源故障检测电路、电源转换器或逆变器、电源状态指示器(例如,发光二极管(LED))以及与便携式设备中电力生成、管理和分布关联的任何其它组件。
[0048] 设备100还可以包括一个或多个光学传感器164。图1A示出了耦合到I/O子系统106中的光学传感器控制器158的光学传感器。光学传感器164可以包括电荷耦合设备(CCD)或互补金属化物半导体(CMOS)光电晶体管。光学传感器164从环境接收光、通过一个或多个透镜投射,并且把光转换成代表图像的数据。结合成像模块143(也被称为相机模块),光学传感器164可以捕捉静止图像或视频。在一些实施例中,光学传感器位于设备100的背面、与位于设备正面的触摸屏显示器112相对,使得触摸屏显示器可以用作静止和/或视频图像获取的取景器。在一些实施例中,光学传感器位于设备的正面,使得在用户在触摸屏显示器上观看其他视频会议参与者的同时,用户的图像可以被获得,用于视频会议。在一些实施例中,光学传感器164的位置可以被用户改变(例如,通过旋转设备外壳中的透镜和传感器),使得单个光学传感器164可以连同触摸屏显示器一起既用于视频会议又用于静止和/或视频图像获取。
[0049] 设备100可选地还包括一个或多个接触强度传感器165。图1A示出了耦合到I/O子系统106中的强度传感器控制器159的接触强度传感器。接触强度传感器165可选地包括一个或多个压阻式应变计、电容式力传感器、电力传感器、压电式力传感器、光学力传感器、电容式触摸敏感表面,或者其它强度传感器(例如,用于测量触摸敏感表面上的接触力(或压力)的传感器)。接触强度传感器165接收来自环境的接触强度信息(例如,压力信息或压力信息的代用品)。在一些实施例中,至少一个接触强度传感器与触摸敏感表面(例如,触摸敏感显示系统112)放在一起,或与其接近。在一些实施例中,至少一个接触强度传感器位于设备100的背面,与位于设备100的正面的触摸屏显示器112相对。
[0050] 设备100还可以包括一个或多个接近性传感器166。图1A示出了耦合到外设接口118的接近性传感器166。作为替代,接近性传感器166可以耦合到I/O子系统106中的输入控制器160。接近性传感器166可以例如如在以下美国专利申请中所描述的那样执行:No.11/
241,839,“Proximity Detector In Handheld Device”;No.11/240,788,“Proximity Detector In Handheld Device”;No.11/620,702,“Using Ambient Light Sensor To Augment Proximity Sensor Output”;No.11/586,862,“Automated Response To And Sensing Of User Activity In Portable Devices”;以及No.11/638,251,“Methods And Systems For Automatic Configuration Of Peripherals”,这些申请的全部内容都通过引用被结合于此。在一些实施例中,当多功能设备被放到用户耳朵附近时(例如,当用户进行电话呼叫时),接近性传感器关闭并禁用触摸屏112。
[0051] 设备100可选地还包括一个或多个触知输出发生器167。图1A示出了耦合到I/O子系统106中的触觉反馈控制器161的触知输出发生器。触知输出发生器167可选地包括诸如扬声器或其它音频组件的一个或多个电声设备,和/或把能量转换成线性移动的机电设备,诸如达、螺线管、电活性聚合物、压电致动器、静电致动器或其它触知输出发生组件(例如,将电信号转换成设备上的触知输出的组件)。接触强度传感器165接收来自触觉反馈模块133的触知反馈产生指令,并在设备100上产生能够被设备100的用户感测的触知输出。在一些实施例中,至少一个触知输出发生器与触摸敏感表面(例如,触摸敏感显示系统112)并置,或者与其接近,并且可选地,通过垂直(例如,移入/移出设备100的表面)或侧向(在与设备100的表面相同的平面内来回)移动触摸敏感表面而产生触知输出。在一些实施例中,至少一个触知输出发生器传感器位于设备100的背面,与位于设备100的正面的触摸屏显示器112相对。
[0052] 设备100还可以包括一个或多个加速计168。图1A示出了耦合到外设接口118的加速计168。作为替代,加速计168可以耦合到I/O子系统106中的输入控制器160。加速计168可以例如如美国专利公开No.20050190059“Acceleration-based Theft Detection System for Portable Electronic Devices”和美国专利公开No.20060017692“Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer”所描述的那样执行,这两个专利公开的全部内容都通过引用被结合于此。在一些实施例中,基于对从一个或多个加速计接收的数据的分析,信息以纵向视图或横向视图显示在触摸屏显示器上。除了加速计168,设备100可选地包括磁力计(未示出)和GPS(或者GLONASS或其它全球导航系统)接收器(未示出),用于获得关于设备100的位置和朝向(例如,纵向或横向)的信息。
[0053] 在一些实施例中,存储在存储器102中的软件组件包括操作系统126、通信模块(或指令集)128、接触/运动模块(或指令集)130、图形模块(或指令集)132、文本输入模块(或指令集)134、全球定位系统(GPS)模块(或指令集)135以及应用(或指令集)136。此外,在一些实施例中,存储器102(图1A)或370(图3)存储设备/全局内部状态157,如图1A和3中所示出的。设备/全局内部状态157包括以下中的一个或多个:活动应用状态,指示,如果有的话,哪些应用当前是活动的;显示状态,指示什么应用、视图或其它信息占据触摸屏显示器112的各个区域;传感器状态,包括从设备的各种传感器和输入控制设备116获得的信息;以及关于设备的位置和/或姿态的位置信息。
[0054] 操作系统126(例如,Darwin、RTXC、LINUX、UNIX、OS X、iOS、WINDOWS,或诸如VxWorks的嵌入式操作系统)包括各种软件组件和/或驱动程序,用于控制和管理一般系统任务(例如,存储器管理、存储设备控制、电源管理等)并方便各种硬件和软件组件之间的通信。
[0055] 通信模块128便于通过一个或多个外部端口124与其它设备通信,并且还包括用于处理由RF电路108和/或外部端口124接收的数据的各种软件组件。外部端口124(例如,通用串行总线(USB),FIREWIRE等)适于直接耦合到其它设备或间接地通过网络(例如,互联网,无线LAN等)耦合。在一些实施例中,外部端口是与在 (Apple公司的商标)设备上使用的30针连接器相同或相似和/或兼容的多针(例如,30针)连接器。
[0056] 接触/运动模块130可选地检测与触摸屏112(结合显示器控制器156)和其它触摸敏感设备(例如,触垫或物理点击轮)的接触。接触/运动模块130包括用于执行与接触检测有关的各种操作的各种软件组件,诸如确定是否发生了接触(例如,检测手指放下事件)、确定接触的强度(例如,接触的力或压力或者接触的力或压力的替代品)、确定是否存在接触的移动并跨触摸敏感表面跟踪移动(例如,检测一个或多个手指拖动事件),以及确定接触是否停止(例如,检测手指抬起事件或接触的中断)。接触/运动模块130从触摸敏感表面接收接触数据。确定由一系列接触数据表示的接触点的移动可选地包括确定接触点的速率(量值)、速度(量值和方向)和/或加速度(量值和/或方向的变化)。这些操作可选地应用到单个接触(例如,一个手指接触)或多个同时接触(例如,“多点触摸”/多手指接触)。在一些实施例中,接触/运动模块130和显示器控制器156检测触垫上的接触。
[0057] 在一些实施例中,接触/运动模块130使用一组一个或多个强度阈值来确定操作是否已经由用户执行(例如以确定用户是否“点击”了图标)。在一些实施例中,强度阈值的至少一个子集是根据软件参数确定的(例如,强度阈值不是由特定物理致动器的激活阈值确定的,并且可以在不改变设备100的物理硬件的情况下进行调整)。例如,在不改变触控板或触摸屏显示器硬件的情况下,触控板或触摸屏显示器的鼠标“点击”阈值可以设置为大范围的预定义阈值中的任何一个。另外,在一些实现中,为设备的用户提供软件设置,用于调整强度阈值集合当中的一个或多个(例如,通过调整个别强度阈值和/或通过利用系统级的点击“强度”参数一次调整多个强度阈值)。
[0058] 接触/运动模块130可选地检测用户的手势输入。触摸敏感表面上的不同手势具有不同的接触模式(例如,检测到的接触的不同运动、定时,和/或强度)。因此,手势可选地是通过检测特定的接触模式来检测的。例如,检测手指轻击手势包括检测手指放下事件,随后在手指放下事件相同的位置(或基本相同的位置)(例如,在图标的位置)检测手指向上(抬离)事件。作为另一个例子,在触摸敏感表面上检测手指轻扫手势包括检测手指向下事件,随后检测一个或多个手指拖动事件,并且随后接着检测手指向上(抬离)事件。
[0059] 图形模块132包括用于在触摸屏112或其它显示器上呈现和显示图形的各种已知的软件组件,包括用于改变所显示的图形的视觉效果(例如,亮度、透明度、饱和度对比度或其它可视属性)的组件。如在本文所使用的,术语“图形”包括可以显示给用户的任何对象,包括但不限于,文本、网页、图标(诸如包括软键的用户界面对象)、数字图像、视频、动画,等等。
[0060] 在一些实施例中,图形模块132存储代表要使用的图形的数据。每个图形可选地被分配对应的代码。图形模块132从应用等接收指定要显示的图形的一个或多个代码,连同,如果有必要的话,坐标数据和其它图形属性数据,然后生成屏幕图像数据,以输出到显示器控制器156。
[0061] 触觉反馈模块133包括用于响应于与设备100的用户交互而生成被触知输出发生器(一个或多个)167用来在设备100上一个或多个位置处产生触知输出的指令的各种软件组件。
[0062] 可以是图形模块132的组成部分的文本输入模块134提供用于在各种应用(例如,联系人137、电子邮件140、IM 141、浏览器147和需要文本输入的任何其它应用)中输入文本的软键盘。例如,文本输入模块134可以包括用于提供下面参考图8A-8D描述的键盘界面800的指令。此外,文本输入模块134可以包括用于执行下述过程700的指令。特别地,文本输入模块134可以包括一个或多个几何模型和一个或多个语言模型,如下所述,用于语言输入校正。
[0063] GPS模块135确定设备的位置,并提供该信息以在各种应用中使用(例如,提供给电话138,在基于位置的拨号中使用;提供给相机143,作为图片/视频元数据;以及提供给提供基于位置的服务的应用,诸如天气插件,本地黄页插件和地图/导航插件)。
[0064] 应用136可以包括以下模块(或指令集),或者其子集或超集:
[0065] ·联系人模块137(有时候被称为地址簿或联系人列表);
[0066] ·电话模块138;
[0067] ·视频会议模块139;
[0068] ·电子邮件客户端模块140;
[0069] ·即时消息传送(IM)模块141;
[0070] ·锻炼支持模块142;
[0071] ·用于静止和/或视频图像的相机模块143;
[0072] ·图像管理模块144;
[0073] ·视频播放器模块;
[0074] ·音乐播放器模块;
[0075] ·浏览器模块147;
[0076] ·日历模块148;
[0077] ·插件模块149,这可以包括以下中的一个或多个:天气插件149-1、股票插件149-2、计算器插件149-3、闹钟插件149-4、字典插件149-5,以及其它由用户获得的插件,以及用户创建的插件149-6;
[0078] ·插件创建器模块150,用于制作用户创建的插件149-6;
[0079] ·搜索模块151;
[0080] ·视频和音乐播放器模块152,其合并了视频播放器模块和音乐播放器模块;
[0081] ·便签模块153;
[0082] ·地图模块154;和/或
[0083] ·在线视频模块155。
[0084] 可以存储在存储器102中的其它应用136的例子包括其它字处理应用、其它图像编辑应用、绘图应用、演示应用、启用JAVA的应用、加密、数字版权管理、语音识别和语音复制。
[0085] 结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,联系人模块137可被用来管理地址簿或联系人列表(例如,存储在存储器102或存储器370中联系人模块137的应用内部状态192中),包括:向地址簿添加名字;从地址簿删除名字;把电话号码、电子邮件地址、物理地址或其它信息与名字关联;把图像与名字关联;分类和排序名字;提供电话号码或电子邮件地址,以启动和/或便于通过电话138、视频会议模块139、电子邮件140或IM 141等等进行的通信。
[0086] 结合RF电路108、音频电路110、扬声器111、麦克风113、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,电话模块138可被用来输入对应于电话号码的字符序列、访问联系人模块137中的一个或多个电话号码、修改已经输入的电话号码、拨打相应的电话号码、进行通话,以及在通话完成时断开或挂断。如以上所指出的,无线通信可以使用任意多种通信标准、协议和技术。
[0087] 结合RF电路108、音频电路110、扬声器111、麦克风113、触摸屏112、显示器控制器156、光学传感器164、光学传感器控制器158、接触/运动模块130、图形模块132、文本输入模块134、联系人模块137和电话模块138,视频会议模块139包括可执行指令,以根据用户指令发起、进行和终止用户与一个或多个其他参与者之间的视频会议。
[0088] 结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,电子邮件客户端模块140包括可执行指令,以响应于用户的指令而创建、发送、接收和管理电子邮件。结合图像管理模块144,电子邮件客户端模块140使得非常容易利用通过相机模块143拍摄的静止或视频图像创建和发送电子邮件。
[0089] 结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,即时消息传送模块141包括可执行指令,以输入对应于即时消息的字符序列、修改以前输入的字符、发送相应的即时消息(例如,利用用于基于电话的即时消息的短消息服务(SMS)或多媒体消息服务(MMS)协议,或者利用用于基于互联网的即时消息的XMPP、SIMPLE或IMPS)、接收即时消息,以及查看收到的即时消息。在一些实施例中,所发送和/或接收的即时消息可以包括图形、照片、音频文件、视频文件和/或其它附件,如在MMS和/或增强消息发送服务(EMS)中被支持的。如在本文所使用的,“即时消息传送”既指基于电话的消息(例如,利用SMS或MMS发送的消息)又指基于互联网的消息(例如,利用XMPP、SIMPLE或IMPS发送的消息)。
[0090] 结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134、GPS模块135、地图模块154和音乐播放器模块,锻练支持模块142包括可执行指令,以创建锻练(例如,关于时间、距离和/或卡路里燃烧目标);与锻练传感器(体育设备)通信;接收锻练传感器数据;校准用来监视锻练的传感器;选择和播放用于锻练的音乐;以及显示、存储和发送锻练数据。
[0091] 结合触摸屏112、显示器控制器156、光学传感器164、光学传感器控制器158、接触/运动模块130、图形模块132和图像管理模块144,相机模块143包括可执行指令,以捕获静止图像或视频(包括视频流)并且将它们存储到存储器102中、修改静止图像或视频的特性,或者从存储器102中删除静止图像或视频。
[0092] 结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134和相机模块143,图像管理模块144包括可执行指令,以布置、修改(例如,编辑)或以别的方式操纵、标注、删除、呈现(例如,在数字幻灯片或专辑中)和存储静止和/或视频图像。
[0093] 结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,浏览器模块147包括可执行指令,以根据用户的指令浏览互联网,包括搜索、链接到、接收和显示网页或其部分以及链接到网页的附件和其它文件。
[0094] 结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134、电子邮件客户端模块140和浏览器模块147,日历模块148包括可执行指令,以根据用户的指令创建、显示、修改和存储日历以及与日历关联的数据(例如,日历条目、待办事项清单等等)。
[0095] 结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134和浏览器模块147,插件模块149是可以被下载并被用户使用的迷你应用(例如,天气插件149-1、股票插件149-2、计算器插件149-3、闹钟插件149-4和字典插件149-5)或者由用户创建的迷你应用(例如,用户创建的插件149-6)。在一些实施例中,插件包括HTML(超文本标记语言)文件、CSS(层叠样式表)文件和JavaScript文件。在一些实施例中,插件包括XML(可扩展标记语言)文件和JavaScript文件(例如,Yahoo!插件)。
[0096] 结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134和浏览器模块147,插件创建器模块150可以被用户用来创建插件(例如,将网页的用户指定部分变成插件)。
[0097] 结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,搜索模块151包括可执行指令,以根据用户的指令在存储器102中搜索匹配一个或多个搜索标准(例如,一个或多个用户指定的搜索项)的文本、音乐、声音、图像、视频和/或其它文件。
[0098] 结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、音频电路110、扬声器111、RF电路108和浏览器模块147,视频和音乐播放器模块152包括允许用户下载和重放所记录的音乐和以一种或多种文件格式,诸如MP3或AAC文件,存储的其它声音文件的可执行指令,以及(例如,在触摸屏112上或者经由外部端口124在外部连接的显示器上)显示、呈现或以别的方式重放视频的可执行指令。在一些实施例中,设备100可选地包括MP3播放器的功能,例如iPod(Apple公司的商标)。
[0099] 结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132和文本输入模块134,便签模块153包括可执行指令,以根据用户的指令创建和管理便签、待办事项列表等等。
[0100] 结合RF电路108、触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、文本输入模块134、GPS模块135和浏览器模块147,地图模块154可被用来根据用户的指令接收、显示、修改和存储地图以及与地图相关联的数据(例如,驾驶方向、关于在特定位置或其附近的商店和其它兴趣点的数据,以及其它基于位置的数据)。
[0101] 结合触摸屏112、显示器控制器156、接触/运动模块130、图形模块132、音频电路110、扬声器111、RF电路108、文本输入模块134、电子邮件客户端模块140和浏览器模块147,在线视频模块155包括指令,用以允许用户访问、浏览、接收(例如,通过流化和/或下载)、重放(例如,在触摸屏上或经由外部端口124在外部连接的显示器上)、发送具有到特定在线视频的链接的电子邮件,并以别的方式管理具有一种或多种文件格式,诸如H.264,的在线视频。在一些实施例中,即时消息传送模块141,而不是电子邮件客户端模块140,被用来发送到特定在线视频的链接。在线视频应用的附加描述例如可见于2007年6月20日提交的美国临时专利申请No.60/936,562,“Portable Multifunction Device,Method,and Graphical User Interface for Playing Online Videos”和于2007年12月31日提交的美国专利申请No.11/968,067,“Portable Multifunction Device,Method,and Graphical User Interface for Playing Online Videos”,其全部内容都通过引用被结合于此。
[0102] 以上识别出的模块和应用当中每一个都对应于用于执行上述一个或多个功能以及在本申请中描述的方法(例如,本文所述的计算机实现的方法和其它信息处理方法)的一组可执行指令。这些模块(例如,指令集)不需要实现为单独的软件程序、过程或模块,并且因此这些模块的各个子集可以在各种实施例中组合或以别的方式重新布置。例如,视频播放器模块可以与音乐播放器模块组合成单个模块(例如,图1A的视频和音乐播放器模块152)。在一些实施例中,存储器102可以存储以上识别出的模块和数据结构的子集。此外,存储器102可以存储以上没有描述的附加模块和数据结构。
[0103] 在一些实施例中,设备100是其中该设备上预定义功能集的操作专通过触摸屏和/或触垫执行的设备。通过使用触摸屏和/或触垫作为用于设备100操作的主要输入控制设备,可以减少设备100上物理输入控制设备(诸如推送按钮、表盘等等)的数量。
[0104] 专门通过触摸屏和/或触垫执行的预定义功能集可选地包括用户界面之间的导航。在一些实施例中,当触垫被用户触摸时,触垫把设备100从在设备100上显示的任何用户界面导航到主、开始或根菜单。在这种实施例中,“菜单按钮”是利用触垫实现的。在一些其它实施例中,代替触垫,菜单按钮是物理推送按钮或其它物理输入控制设备。
[0105] 图1B是示出根据一些实施例用于事件处理的示例性组件的框图。在一些实施例中,存储器102(图1A)或370(图3)包括事件排序器170(例如,在操作系统126中)以及相应的应用136-1(例如,以上提到的任何应用137-151、155、380-390)。
[0106] 事件排序器170接收事件信息并且确定要把事件信息分发到其的应用136-1和应用136-1的应用视图191。事件排序器170包括事件监视器171和事件调度模块174。在一些实施例中,应用136-1包括应用内部状态192,该状态指示当应用是活动的和在执行中时在触摸敏感显示器112上显示的当前应用视图。在一些实施例中,设备/全局内部状态157被事件排序器170用来确定哪个或哪些应用当前处于活动状态,并且应用内部状态192被事件排序器170用来确定要把事件信息递送到其的应用视图191。
[0107] 在一些实施例中,应用内部状态192包括附加的信息,诸如以下中的一个或多个:在应用136-1恢复执行时使用的恢复信息、指示被应用136-1显示或者准备好被其显示的信息的用户界面状态信息、用于使用户能够返回应用136-1的之前状态或视图的状态队列,以及用户所采取的之前动作的重做/撤销队列。
[0108] 事件监控器171从外设接口118接收事件信息。事件信息包括关于子事件(例如,触摸敏感显示器112上的用户触摸,作为多触摸手势的一部分)的信息。外设接口118发送它从I/O子系统106或传感器,诸如接近性传感器166,加速计168和/或麦克风113(通过音频电路110),接收到的信息。外设接口118从I/O子系统106接收的信息包括来自触摸敏感显示器
112或触摸敏感表面的信息。
[0109] 在一些实施例中,事件监视器171以预定的间隔将请求发送到外设接口118。作为响应,外设接口118发送事件信息。在其它实施例中,外设接口118只在存在显著事件时(例如,接收到高于预定噪声阈值和/或比预定持续时间更长的输入)才发送事件信息。
[0110] 在一些实施例中,事件排序器170还包括命中视图确定模块172和/或活动事件识别器确定模块173。
[0111] 命中视图确定模块172提供用于在触摸敏感显示器112显示多于一个视图时确定子事件发生在一个或多个视图中什么地方的软件过程。视图是由用户可以在显示器上看到的控件和其它元素组成的。
[0112] 与应用相关联的用户界面的另一方面是一组视图,在本文中有时被称为应用视图或用户界面窗口,信息在其中显示并且基于触摸的手势在其中发生。其中检测到触摸的(相应应用的)应用视图可在该应用的编程或视图层次中对应于各程序级。例如,其中检测到触摸的最低一级视图可以被称为命中视图,并且被识别为正确输入的事件集合可至少部分地基于开始基于触摸的手势的初始触摸的命中视图来确定。
[0113] 命中视图确定模块172接收与基于触摸的手势的子事件相关的信息。当应用具有在层次中组织的多个视图时,命中视图确定模块172把命中视图识别为层次中应当处理该子事件的最低视图。在大多数情况下,命中视图是其中发起子事件发生的最低级视图(例如,构成事件或潜在事件的子事件序列中的第一子事件)。一旦命中视图被命中视图确定模块172识别出,命中视图通常就接收与被识别为命中视图的相同的触摸或输入源有关的所有子事件。
[0114] 活动事件识别器确定模块173确定视图层次中哪个或哪些视图应当接收特定的子事件序列。在一些实施例中,活动事件识别器确定模块173确定仅仅命中视图应当接收特定的子事件序列。在其它实施例中,活动事件识别器确定模块173确定包括子事件的物理位置的所有视图都是积极参与的视图,并且因此确定所有积极参与的视图都应当接收特定的子事件序列。在其它实施例中,即使触摸子事件被完全局限于与一个特定视图相关联的区域,层次中更高的视图也将仍然保持为积极参与的视图。
[0115] 事件调度模块174把事件信息配送到事件识别器(例如,事件识别器180)。在包括活动事件识别器确定模块173的实施例中,事件调度模块174把事件信息递送到由活动事件识别器确定模块173确定的事件识别器。在一些实施例中,事件调度模块174在事件队列中存储由相应事件接收器182检索出的事件信息。
[0116] 在一些实施例中,操作系统126包括事件排序器170。作为替代,应用136-1包括事件排序器170。在其它实施例中,事件排序器170是独立的模块,或者是存储在存储器102中的另一模块,诸如接触/运动模块130,的一部分。
[0117] 在一些实施例中,应用136-1包括多个事件处理器190和一个或多个应用视图191,其中每一个都包括用于处理在应用的用户界面的相应视图中发生的触摸事件的指令。应用136-1的每一个应用视图191都包括一个或多个事件识别器180。通常,相应的应用视图191包括多个事件识别器180。在其它实施例中,一个或多个事件识别器180是独立模块的一部分,诸如用户接口工具包(未示出)或者应用136-1从其继承方法和其它特性的更高级对象。
在一些实施例中,相应的事件处理器190包括以下中的一个或多个:数据更新器176、对象更新器177、GUI更新器178和/或从事件排序器170接收的事件数据179。事件处理器190可以利用或调用数据更新器176、对象更新器177或GUI更新器178来更新应用内部状态192。作为替代,一个或多个应用视图191包括一个或多个相应的事件处理器190。而且,在一些实施例中,数据更新器176、对象更新器177和GUI更新器178当中的一个或多个包括在相应的应用视图191中。
[0118] 相应的事件识别器180从事件排序器170接收事件信息(例如,事件数据179),并从事件信息识别事件。事件识别器180包括事件接收器182和事件比较器184。在一些实施例中,事件识别器180还包括元数据183和事件递送指令188(这可以包括子事件递送指令)的至少一个子集。
[0119] 事件接收器182从事件排序器170接收事件信息。事件信息包括关于子事件的信息,例如,触摸或触摸移动。依赖于子事件,事件信息还包括附加信息,诸如子事件的位置。当子事件涉及触摸的移动时,事件信息还可以包括子事件的速度和方向。在一些实施例中,事件包括设备从一个朝向到另一个朝向的旋转(例如,从纵向到横向,或反之亦然),并且事件信息包括关于设备当前朝向(也称为设备姿势)的对应信息。
[0120] 事件比较器184比较事件信息与预定义的事件或子事件定义,并且基于该比较,确定事件或子事件,或者确定或更新事件或子事件的状态。在一些实施例中,事件比较器184包括事件定义186。事件定义186包含事件的定义(例如,子事件的预定义序列),例如,事件1(187-1)、事件2(187-2)及其它。在一些实施例中,事件(187)中的子事件包括,例如,触摸开始、触摸结束、触摸移动、触摸取消以及多次触摸。在一个例子中,事件1(187-1)的定义是对所显示对象的双击。例如,双击包括对所显示对象的第一次触摸(触摸开始)预定的阶段、第一次抬离(触摸结束)预定的阶段、对所显示对象的第二次触摸(触摸开始)预定的阶段以及第二次抬离(触摸结束)预定的阶段。在另一个例子中,事件2(187-2)的定义是对所显示对象的拖动。例如,拖动包括对所显示对象的触摸(或接触)预定的阶段、触摸跨触摸敏感显示器112的移动以及触摸的抬离(触摸结束)。在一些实施例中,事件还包括一个或多个相关联的事件处理器190的信息。
[0121] 在一些实施例中,事件定义187包括对相应用户界面对象的事件定义。在一些实施例中,事件比较器184执行命中测试,以确定哪个用户界面对象与子事件相关联。例如,在其中三个用户界面对象在触摸敏感显示器112上显示的应用视图中,当在触摸触摸敏感显示器112上检测到触摸时,事件比较器184执行命中测试,以确定三个用户界面对象中哪个与所述触摸(子事件)相关联。如果每个所显示对象都与相应的事件处理器190相关联,则事件比较器使用命中测试的结果来确定哪个事件处理器190应当被激活。例如,事件比较器184选择与触发命中测试的子事件和对象相关联的事件处理器。
[0122] 在一些实施例中,用于相应事件(187)的定义还包括延迟事件信息的递送一直到确定子事件序列是否对应于事件识别器的事件类型之后的延迟动作。
[0123] 当相应的事件识别器180确定子事件系列不匹配事件定义186中的任何事件时,相应的事件识别器180进入事件不可能、事件失败或事件结束状态,之后将无视基于触摸的手势的后续子事件。在这种情况下,如果有的话,则对该命中视图保持有效的其它事件识别器继续追踪和处理正在进行的基于触摸的手势的子事件。
[0124] 在一些实施例中,相应的事件识别器180包括具有可配置属性、标志和/或列表的元数据183,其中可配置属性、标志和/或列表用于指示事件递送系统应该如何执行到积极参与的事件识别器的子事件递送。在一些实施例中,元数据183包括指示事件识别器可以如何彼此交互或使其能够彼此交互的可配置属性、标志和/或列表。在一些实施例中,元数据183包括指示子事件是否被递送到视图或程序层次结构中不同层次的可配置属性、标志和/或列表。
[0125] 在一些实施例中,在识别出事件的一个或多个特定子事件时,相应的事件识别器180激活与事件相关联的事件处理器190。在一些实施例中,相应的事件识别器180把与事件相关联的事件信息递送到事件处理器190。激活事件处理器190与向相应的命中视图发送(和推迟发送)子事件不同。在一些实施例中,事件识别器180抛出与所识别的事件相关联的标志,并且与该标志相关联的事件处理器190捕捉该标志并执行预定义的过程。
[0126] 在一些实施例中,事件递送指令188包括在不激活事件处理器的情况下递送关于子事件的事件信息的子事件递送指令。作为替代,子事件递送指令向与子事件系列关联的事件处理器或者向积极参与的视图递送事件信息。与子事件系列或者与积极参与的视图关联的事件处理器接收事件信息并执行预定的过程。
[0127] 在一些实施例中,数据更新器176创建和更新在应用136-1中使用的数据。例如,数据更新器176更新联系人模块137中使用的电话号码,或者存储在视频播放器模块中使用的视频文件。在一些实施例中,对象更新器177创建和更新在应用136-1中使用的对象。例如,对象更新器177创建新的用户界面对象或者更新用户界面对象的位置。GUI更新器178更新GUI。例如,GUI更新器178准备显示信息并将其发送到图形模块132,用于在触摸敏感显示器上显示。
[0128] 在一些实施例中,(一个或多个)事件处理器190包括或者能访问数据更新器176、对象更新器177和GUI更新器178。在一些实施例中,数据更新器176、对象更新器177和GUI更新器178包括在相应的应用136-1或应用视图191的单个模块中。在其它实施例中,它们被包括在两个或更多个软件模块中。
[0129] 应当理解,关于触摸敏感显示器上用户触摸的事件处理的上述讨论也适用于利用输入设备操作多功能设备100的其它形式的用户输入,不是所有这些输入都在触摸屏上发起。例如,鼠标移动和鼠标按钮按下,可选地配合单个或多个键盘按下或按住;触垫上的接触移动,诸如轻击、拖动、滚动等;触控笔输入;设备的移动;口头指示;检测到的眼睛的移动;生物识别输入;和/或其任意组合可选地被用作对应于定义要识别的事件的子事件的输入。
[0130] 图2示出了根据一些实施例、具有触摸屏112的便携式多功能设备100。触摸屏可选地在用户界面(UI)200中显示一个或多个图形。在这种实施例中,以及如以下描述的其它实施例中,用户能够通过在图形上作手势来选择一个或多个图形,例如,用一根或多根手指202(没有按比例在图中绘出)或一个或多个触控笔203(没有按比例在图中绘出)。在一些实施例中,一个或多个图形的选择在用户中断与一个或多个图形的接触时发生。在一些实施例中,手势可选地包括一次或多次个轻击,一次或多次轻扫(从左到右、从右到左、向上和/或向下)和/或已与设备100接触的手指的滚动(从右到左、从左到右、向上和/或向下)。在一些实现或情况中,与图形的无意接触不会选择该图形。例如,当对应于选择的手势是轻击时,在应用图标之上扫过的轻扫手势可选地不选择对应的应用。
[0131] 设备100还可以包括一个或多个物理按钮,诸如“开始”或菜单按钮204。如前所述,菜单按钮204可被用来导航到一组应用当中可以在设备100上执行的任何应用136。作为替代,在一些实施例中,菜单按钮被实现为触摸屏112上显示的GUI中的软键。
[0132] 在一些实施例中,设备100包括触摸屏112、菜单按钮204、用于给设备通电/断电和锁定设备的推送按钮206、音量调节按钮208、订户身份模块(SIM)卡插槽210、耳机插孔212以及对接/充电外部端口124。推送按钮206可选地被用来通过按下按钮并在被按下状态按住按钮预定义的时间间隔来开启/关闭设备的电源;通过按下按钮并在预定义的时间间隔过去之前释放按钮来锁定该设备;和/或解锁设备或启动解锁过程。在备选实施例中,设备100还通过麦克风113接受用于激活或停用某些功能的口头输入。设备100还可选地包括一个或多个用于检测触摸屏112上的接触强度的接触强度传感器165,和/或一个或多个用于为设备100的用户生成触知输出的触知输出发生器167。
[0133] 图3是根据一些实施例、具有显示器和触摸敏感表面的示例性多功能设备的框图。设备300不必是便携式的。在一些实施例中,设备300是膝上型计算机、台式计算机、平板计算机、多媒体播放器设备、导航设备、教育设备(诸如儿童学习玩具)、游戏系统或控制设备(例如,家庭或工业控制器)。设备300通常包括一个或多个处理单元(CPU)310、一个或多个网络或其它通信接口360、存储器370以及用于互连这些组件的一条或多条通信总线320。通信总线320可选地包括互连和控制系统组件之间的通信的电路(有时称为芯片集)。设备300包括输入/输出(I/O)接口330,其包括通常是触摸屏显示器的显示器340。I/O接口330还可选地包括键盘和/或鼠标(或其它定点设备)350和触垫355、用于在设备300上生成触知输出的触知输出发生器357(例如,类似于以上参考图1A所述的触知输出发生器167)、传感器359(例如,光学,加速度,接近性,触摸敏感,和/或类似于以上参考图1A所述的接触强度传感器
165的接触强度传感器)。存储器370包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM或其它随机访问固态存储器设备;并且可选地包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪速存储器设备或其它非易失性固态存储设备。存储器370可选地包括一个或多个远离CPU(一个或多个)310定位的存储设备。在一些实施例中,存储器370存储与存储在便携式多功能设备100(图1A)的存储器102中的软件程序、模块和数据结构类似的程序、模块和数据结构,或者其子集。此外,存储器370可选地存储在便携式多功能设备
100的存储器102中不存在的附加程序、模块和数据结构。例如,设备300的存储器370可选地存储绘图模块380、演示模块382、字处理模块384、网站创建模块386、盘创作模块388和/或电子数据表模块390,而便携式多功能设备100(图1A)的存储器102可选地不存储这些模块。
[0134] 以上识别出的图3中元素当中每一个都可以存储在一个或多个之前提到的存储设备中。以上识别出的每个模块对应于用于执行上述功能的指令集。以上识别出的模块或程序(例如,指令集)不需要实现为单独的程序、过程或模块,并且因此这些模块的各个子集在各种实施例中可以组合或以别的方式重新布置。在一些实施例中,存储器370可以存储以上识别出的模块和数据结构的子集。此外,存储器370可以存储以上未描述的附加模块和数据结构。
[0135] 现在注意力指向可以在例如便携式多功能设备100上实现的用户界面的实施例。
[0136] 图4A示出了根据一些实施例、用于便携式多功能设备100上应用的菜单的示例性用户界面。类似的用户界面可以在设备300上实现。在一些实施例中,用户界面400包括以下元素,或者其子集或超集:
[0137] ·用于无线通信,诸如蜂窝和Wi-Fi信号,的信号强度指示符402;
[0138] ·时间404;
[0139] ·蓝牙指示符405;
[0140] ·电池状况指示符406;
[0141] ·具有用于常用应用的图标的托盘408,所述图标诸如:
[0142] ○用于电话模块138的图标146,标记为“电话”,它可选地包括未接电话或语音邮件消息的数量的指示符414;
[0143] ○用于电子邮件客户端模块140的图标418,标记为“电子邮件”,它可选地包括未读电子邮件的数量的指示符410;
[0144] ○用于浏览器模块147的图标420,标记为“浏览器”;及
[0145] ○用于视频和音乐播放器模块152的图标422,也被称为iPod(Apple公司的商标)模块152,标记为“iPod”;及
[0146] ·用于其它应用的图标:
[0147] ○用于IM模块141的图标424,标记为“消息”;
[0148] ○用于日历模块148的图标426,标记为“日历”;
[0149] ○用于图像管理模块144的图标428,标记为“照片”;
[0150] ○用于相机模块143的图标430,标记为“相机”;
[0151] ○用于在线视频模块155的图标432,标记为“在线视频”;
[0152] ○用于股票插件149-2的图标434,标记为“股票”;
[0153] ○用于地图模块154的图标436,标记为“地图”;
[0154] ○用于天气插件149-1的图标438,标记为“天气”;
[0155] ○用于闹钟插件149-4的图标440,标记为“时钟”;
[0156] ○用于锻炼支持模块142的图标442,标记为“锻炼支持”;
[0157] ○用于便签模块153的图标444,标记为“便签”;及
[0158] ○用于设置应用或模块的图标446,标记为“设置”,它提供对设备100及其各种应用136的设置的访问。
[0159] 应当指出,图4A中所说明的图标标签仅仅是示例性的。例如,用于视频和音乐播放器模块152的图标422可以可选地标记为“音乐”或“音乐播放器”。其它标签可选地被用于各种应用图标。在一些实施例中,用于相应应用图标的标签包括对应于该相应应用图标的应用的名字。在一些实施例中,用于特定应用图标的标签与对应于该特定应用图标的应用的名字不同。
[0160] 图4B示出了具有与显示器450(例如,触摸屏显示器112)分离的触摸敏感表面451(例如,图3的平板或触垫355)的设备(例如,图3的设备300)上的示例性用户界面。设备300还可选地包括一个或多个用于检测触摸敏感表面451上接触强度的接触强度传感器(例如,一个或多个传感器357)和/或一个或多个用于为设备300的用户生成触知输出的触知输出发生器359。
[0161] 虽然以下的一些例子将参考触摸屏显示器112上的输入给出(其中触摸敏感表面与显示器组合),但是,在一些实施例中,如图4B中所示,设备检测与显示器分离的触摸敏感表面上的输入。在一些实施例中,触摸敏感表面(例如,图4B中的451)具有对应于显示器(例如,450)上的主轴(例如,图4B中的453)的主轴(例如,图4B中的452)。根据这些实施例,设备检测在对应于显示器上相应位置的位置(例如,在图4B中对应于468的460和对应于470的462)与触摸敏感表面451的接触(例如,图4B中的460和462)。以这种方式,当触摸敏感表面与显示器分离时,在触摸敏感表面(例如,图4B中的451)上由设备检测到的用户输入(例如,接触460和462,及其移动)被设备用来操纵多功能设备的显示器(例如,图4B中的450)上的用户界面。应当理解,类似的方法可选地被用于本文所述的其它用户界面。
[0162] 此外,虽然以下例子主要是参考手指输入(例如,手指接触、手指轻击手势、手指轻扫手势)给出的,但是应当理解,在一些实施例中,一个或多个手指输入被来自另一输入设备的输入(例如,基于鼠标的输入或者触控笔输入)代替。例如,轻扫手势可选地被鼠标点击(例如,代替接触)之后跟着光标沿轻扫路径的移动(例如,代替接触的移动)来代替。作为另一个例子,轻击手势可选地在光标位于轻击手势位置之上时被鼠标点击代替(例如,代替接触的检测之后跟着停止检测接触)。类似地,当多个用户输入被同时检测到时,应当理解,多个计算机鼠标可选地被同时使用,或者鼠标和手指接触可选地被同时使用。
[0163] 图5A示出了示例性个人电子设备500。设备500包括主体502。在一些实施例中,设备500可以包括关于设备100和300(例如,图1A-4B)所描述的一些或全部特征。在一些实施例中,设备500具有触摸敏感显示屏504,下文中称为触摸屏504。作为替代,或者除触摸屏504之外,设备500还具有显示器和触摸敏感表面。就像关于设备100和300,在一些实施例中,触摸屏504(或者触摸敏感表面)可以具有一个或多个用于检测所施加的接触(例如,触摸)的强度的强度传感器。触摸屏504(或触摸敏感表面)的一个或多个强度传感器可以提供代表触摸强度的输出数据。设备500的用户界面可以基于其强度来响应触摸,这意味着不同强度的触摸可以调用设备500上不同的用户界面操作。
[0164] 用于检测和处理触摸强度的技术可以在例如如下相关申请中找到:于2013年5月8日提交的标题为“Device,Method,and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application”的国际专利申请序列No.PCT/US2013/040061和于2013年11月11日提交的标题为“Device,Method,and Graphical User Interface for Transitioning  Between Touch Input to Display Output Relationships”的国际专利申请序列No.PCT/US2013/069483,这两个申请的全部内容都通过引用被结合于此。
[0165] 在一些实施例中,设备500具有一个或多个输入机制506和508。如果被包括,则输入机制506和508可以是物理的。物理输入机制的例子包括推送按钮和可旋转机制。在一些实施例中,设备500具有一个或多个附连机制。如果被包括,则这种附连机制可以允许设备500与例如帽子、眼镜、耳环、项链、衬衫、夹克、手镯、手表带、链条、裤子、皮带、皮、皮包、背包等的附连。这些附连机制可以允许设备500被用户穿戴。
[0166] 图5B绘出了示例性个人电子设备500。在一些实施例中,设备500可以包括关于图1A、1B和3所描述的组件当中的一些或全部。设备500具有可操作地耦合I/O部分514与一个或多个计算机处理器516和存储器518的总线512。I/O部分514可以连接到显示器504,显示器504可以具有触摸敏感组件522以及可选地触摸强度敏感组件524。此外,I/O部分514可与通信单元530连接,用于使用Wi-Fi、蓝牙、近场通信(NFC)、蜂窝和/或其它无线通信技术接收应用和操作系统数据。设备500可以包括输入机制506和/或508。例如,输入机制506可以是可旋转输入设备或者可按压和可旋转输入设备。在一些例子中,输入机制508可以是按钮。
[0167] 在一些例子中,输入机制508可以是麦克风。个人电子设备500可以包括各种传感器,诸如GPS传感器532、加速计534、定向传感器535(例如,指南针)、陀螺仪536、运动传感器538,和/或它们的组合,所有这些可以可操作地连接到I/O部分514。
[0168] 个人电子设备500的存储器518可以是非临时性计算机可读存储介质,用于存储计算机可执行指令,当由一个或多个计算机处理器516执行时,指令可以例如使计算机处理器执行下述技术,包括过程700(图7)。计算机可执行指令也可以在由指令执行系统、装置或设备使用或与其结合使用的任何非临时性计算机可读存储介质中存储和/或运输,其中指令执行系统、装置或设备诸如基于计算机的系统、包含处理器的系统或者可以从指令执行系统、装置或设备读取指令并执行指令的其它系统。对于本文档,“非临时性计算机可读存储介质”可以是可有形地包含或存储供指令执行系统、装置或设备使用或与其结合使用的计算机可执行指令的任何介质。非临时性计算机可读存储介质可以包括,但不限于,磁、光和/或半导体储存器。这种储存器的例子包括磁盘,基于CD、DVD或蓝光技术的光盘,以及诸如闪存、固态驱动器等持久性固态存储器。个人电子设备500不限于图5B的组件和配置,而是可以包括多种配置中的其它或附加组件。
[0169] 如在本文所使用的,术语“可见性(affordance)”指可被设备100、300和/或500(图1、3和5)的显示屏上显示的用户交互图形用户界面对象。例如,图像(例如,图标)、按钮和文本(例如,超链接)每个都可以构成可见性。
[0170] 如在本文所使用的,术语“焦点选择器”指指示用户正在与其交互的用户界面的当前部分的输入元素。在一些包括光标或其它位置标记的实现中,光标充当“焦点选择器”,使得当光标在特定用户界面元素(例如,按钮、窗口、滑块或其它用户界面口元件)之上的时候在触摸敏感表面(例如,图3中的触控板355或者图4B中的触摸敏感表面451)上检测到输入(例如,按下输入)时,该特定用户界面元件根据所检测到的输入被调整。在一些包括启用与触摸屏显示器上的用户界面元素的直接交互的触摸屏显示器(例如,图1A中的触摸敏感显示系统112或者图4A中的触摸屏112)的实现中,触摸屏上检测到的接触充当“焦点选择器”,使得当输入(例如,通过接触的按下输入)在触摸屏显示器上特定用户界面元素(例如,按钮、窗口、滑块或其它用户界面元件)的位置被检测到时,该特定用户界面元素根据检测到的输入被调整。在一些实现中,焦点从用户界面的一个区域移动到该用户界面的另一个区域,而无需触摸屏显示器上光标的对应移动或者接触的移动(例如,通过使用制表键或箭头键把焦点从一个按钮移动到另一个按钮);在这些实现中,焦点选择器根据焦点在用户界面的不同区域之间的移动而移动。不考虑焦点选择器所采取的具体形式,焦点选择器一般而言是由用户控制从而利用用户界面传达用户预期交互的用户界面元素(或者触摸屏显示器上的接触)(例如,通过向设备指示用户打算与其交互的用户界面元素)。例如,在触摸敏感表面(例如,触垫或触摸屏)上检测到按下输入的时候相应按钮之上的焦点选择器(例如,光标、接触或选择框)的位置将指示用户打算激活相应的按钮(相对于在设备的显示器上示出的其它用户界面元素)。
[0171] 如在本说明书和权利要求中所使用的,接触的术语“特征强度”指基于接触的一个或多个强度的接触的特征。在一些实施例中,特征强度是基于多个强度样本。特征强度可选地基于预定义数量的强度样本,或者相对于预定义事件(例如,在检测到接触之后、在检测到接触的抬离之前、在检测到接触的移动开始之前或之后、在检测到接触的结束之前、在检测到接触的强度增加之前或之后和/或在检测到接触的强度降低之前或之后)在预定时间段内(例如,0.05、0.1、0.2、0.5、1、2、5、10秒)收集到的一组强度样本。接触的特征强度可选地基于以下中的一个或多个:接触强度的最大值、接触强度的中值、接触的强度的平均值、接触强度前百分之十值、处于接触强度的最大值一半的值、处于接触强度的最大值90%的值,等等。在一些实施例中,接触的持续时间被用于确定特征强度(例如,当特征强度是接触强度随时间的平均值时)。在一些实施例中,特征强度与一组一个或多个强度阈值进行比较,以确定操作是否已经由用户执行。例如,这组一个或多个强度阈值可以包括第一强度阈值和第二强度阈值。在这个例子中,具有不超过第一强度阈值的特征强度的接触导致第一操作,具有超过第一强度阈值并且不超过第二强度阈值的特征强度的接触导致第二操作,而具有超过第二强度阈值的特征强度的接触导致第三操作。在一些实施例中,特征强度与一个或多个阈值之间的比较被用来确定是否要执行一个或多个操作(例如,是执行相应的操作还是放弃执行相应的操作),而不是被用来确定是执行第一操作还是第二操作。
[0172] 在一些实施例中,为了确定特征强度而识别手势的一部分。例如,触摸敏感表面可以接收从起始位置过渡到结束位置的连续轻扫接触,在这个时候,接触的强度增加。在这个例子中,接触在结束位置的特征强度可以基于连续轻扫接触的仅一部分,而不是整个轻扫接触(例如,仅在结束位置的轻扫接触的那部分)。在一些实施例中,在确定接触的特征强度之前,平滑算法可以被应用到轻扫接触的强度。例如,平滑算法可选地包括以下中的一个或多个:未加权的滑动平均平滑算法、三平滑算法、中值滤波器平滑算法和/或指数平滑算法。在某些情况下,这些平滑算法为确定特征强度而消除了轻扫接触的强度中窄的尖峰或凹陷。
[0173] 触摸敏感表面上接触的强度可以相对于一个或多个强度阈值来特征化,诸如接触-检测强度阈值、轻压强度阈值、深压强度阈值,和/或一个或多个其它强度阈值。在一些实施例中,轻压强度阈值对应于设备将执行通常与点击物理鼠标或触控板的按钮相关联的操作的强度。在一些实施例中,深压强度阈值对应于设备将执行与通常与点击物理鼠标或触控板的按钮相关联的操作不同的操作的强度。在一些实施例中,当检测到其特征强度低于轻压强度阈值(例如,并且高于额定接触-检测强度阈值,低于该接触-检测强度阈值,接触将不再被检测到)的接触时,设备将根据触摸敏感表面上接触的移动来移动焦点选择器,而不执行与轻压强度阈值或深压强度阈值相关联的操作。一般而言,除非另有说明,否则这些强度阈值在不同的用户界面图集合之间是一致的。
[0174] 接触的特征强度从低于轻压强度阈值的强度增加到轻压强度阈值与深压强度阈值之间的强度有时被称为“轻按”输入。接触的特征强度从低于深压强度阈值的强度增加到高于深压强度阈值的强度有时被称为“深按”输入。接触的特征强度从低于接触-检测强度阈值的强度增加到接触-检测强度阈值与轻压强度阈值之间的强度有时被称为检测触摸表面上的接触。接触的特征强度从高于接触-检测强度阈值的强度降低到低于接触-检测强度阈值的强度有时被称为检测接触从触摸表面的抬离。在一些实施例中,接触-检测强度阈值是零。在一些实施例中,接触检测强度阈值大于零。
[0175] 在本文所描述的一些实施例中,响应于检测到包括相应按下输入的手势或者响应于检测到利用相应接触(或多个接触)执行的相应按下输入而执行一个或多个操作,其中相应的按下输入是至少部分地基于检测到接触(或多个接触)的强度增加到高于按下-输入强度阈值而被检测的。在一些实施例中,相应的操作是响应于检测到相应接触的强度增加到高于按下-输入强度阈值而执行的(例如,相应按下输入的“向下笔划(down stroke)”)。在一些实施例中,按压输入包括相应接触的强度增加到高于按下-输入强度阈值和随后该接触的强度减小到低于按压-输入强度阈值,并且相应的操作是响应于检测到相应接触的强度随后减小到低于按下-输入强度阈值而执行的(例如,相应按下输入的“向上笔划(up stroke)”)。
[0176] 在一些实施例中,设备采用强度滞后来避免有时被称为“抖动”的意外输入,其中设备定义或选择与按下-输入强度阈值具有预定义关系的滞后强度阈值(例如,滞后强度阈值比按下-输入强度阈值低X个强度单位,或者滞后强度阈值是按下-输入强度阈值的75%、90%或者某个合理的比例)。因此,在一些实施例中,按下输入包括相应接触的强度增加至高于按下-输入强度阈值和该接触的强度随后减小至低于对应于该按下-输入强度阈值的滞后强度阈值,并且相应的操作是响应于检测到相应接触的强度随后减小至低于滞后强度阈值而执行的(例如,相应按下输入的“向上笔划”)。类似地,在一些实施例中,按下输入只有在设备检测到接触的强度从处于或低于滞后强度阈值的强度增加到处于或高于按下-输入强度阈值的强度以及,可选地,接触的强度随后减小到处于或低于滞后强度的强度才被检测,并且相应的操作是响应于检测到按下输入(例如,依赖于情形,接触强度的增加或接触强度的减小)而执行的。
[0177] 为了便于解释,响应于与按下输入强度阈值相关联的按下输入或者响应于包括按下输入的手势而执行的操作的描述可选地是响应于检测到以下任意一个而被触发的:接触的强度增加至高于按下-输入强度阈值、接触的强度从低于滞后强度阈值的强度增加至高于按下-输入强度阈值的强度、接触的强度减小至低于按下-输入强度阈值,和/或接触的强度减小至低于对应于按下-输入强度阈值的滞后强度阈值。此外,在其中操作被描述为响应于检测到接触强度减小至低于按下-输入强度阈值而被执行的例子中,操作可选地是响应于检测到接触的强度减小至低于对应于和低于按下-输入强度阈值的滞后强度阈值而执行的。
[0178] 2.简化的键盘界面
[0179] 简化的键盘界面可被用来在电子设备(例如,设备100、300或500)上提供文本输入。图6A-C示出了用于输入日文文本的示例性简化键盘界面600。简化键盘界面600可以被称为10键假名键盘界面。简化键盘界面600可以在电子设备的触摸屏(例如,触摸屏112)上显示。如图所示,简化键盘界面600可以包括用于输入日语的平假名的10个初级字符键602(例如,标记为あ、か、さ、た、な、は、ま、や、ら和わ)以及分别用于添加变音符号和标点符号的2个附加键604、606。每个初级字符键602可被配置为提供对一个或多个次级字符键的访问。特别地,如图6B中所示,提供对与字符な关联的初级字符键602-1的触摸接触可以分别引起与字符に、ぬ、ね、の关联的四个次级字符键608、610、612、614被显示。因而,在本例中,50个字符键可经由10个初级字键602可用于输入。
[0180] 简化键盘界面600可被配置为从用户接收接触输入并且使相应的平假名字符被输入到设备。为了输入与初级字符键602关联的平假名字符,单击输入可被提供给相应的初级字符键602。例如,参考图6B,单击输入可以提供给初级字符键602-1,以输入字符な。单击输入可以包括对初级字符键的触摸接触,后面跟着释放或断开与初级字符键的接触。此外,在触摸接触期间的横向运动可以小于预定阈值量。
[0181] 为了输入与次级字符键关联的平假名字符,轻弹(flick)输入可被提供给相应的初级字符键602。例如,如图6B-C中所示,在第一方向(例如,由箭头616表示的方向)的轻弹输入可被提供给初级字符键602-1并且经由次级字符键608输入字符に。如图6C中所示,响应于轻弹输入,简化键盘界面600可以突出次级字符键608,以指示字符に的输入经由次级字符键608被接收。轻弹输入可以包括在简化键盘界面600上从第一位置617(例如,在初级字符键602-1)到第二位置619(例如,在次级字符键608)的接触运动。特别地,在本例中,轻弹输入可以包括发起到位于第一位置617的初级字符键602-1的触摸接触,提供从第一位置617到第二位置619的接触运动,并在第二位置619从次级字符键608释放触摸接触。轻弹输入可被提供,使得从最初的触摸接触到触摸接触的释放不存在与简化的语言输入界面600的接触中断。
[0182] 与次级字符键关联的平假名字符可以替代地通过向相应的初级字符键602提供多击输入被输入。特别地,每个次级字符键可以与预定义的多击输入模式关联。例如,为了输入字符に,包括对初级字符键602-1的第一触摸接触后面跟着对字符键602-1的第二触摸接触的预定义多击输入模式可以被接收(例如,双击输入)。触摸接触的中断或释放可以在第一触摸接触与第二触摸接触之间发生。另外,第一触摸接触和第二触摸接触可以在预定的时间量内发生。以类似的方式,字符ぬ可以利用包括对初级字符键602-1的三次触摸接触(例如,三击输入)的预定义多击输入模式来输入。
[0183] 虽然在本例中,简化的键盘界面600被配置为输入日文文本,但是应当认识到,在其它例子中,简化的键盘界面可被配置为输入其它语言的文本。特别地,每个初级字符键和次级字符键可以对应于语言的书写符号。另外,应当认识到,初级字符键的数目和可以经由每个初级字符键访问的次级字符键的数目可以变化。
[0184] 3.用于语言输入校正的流程
[0185] 图7是示出根据各种例子、用于语言输入校正的过程700的流程图。图8A-D是示出根据各种例子、用于语言输入校正的示例性过程的各个阶段的电子设备的示例性屏幕截图。过程700可以在具有触摸敏感显示器(例如,触摸屏112)的设备(例如,设备100、300或500)执行。过程700在下面同时参考图7和图8A-D来描述。应当认识到,过程700中的一些操作可被组合、一些操作的次序可被改变,并且一些操作可被省略。
[0186] 在过程700的方框702,接触输入序列可以经由触摸敏感显示器(例如,触摸屏112)上的键盘界面进行检测。键盘界面可以是用于输入文本的任何键盘界面。例如,键盘界面可以与上面参考图6A-C所描述的简化键盘界面600类似或完全相同。在一些例子中,键盘界面可以是用于输入日文字符的10键假名键盘界面。接触输入序列可以包括对键盘界面的一个或多个字符键的单击输入、轻弹输入或多击输入当中一个或多个。方框704-718当中一个或多个可以响应于在方框702检测到接触输入序列而被执行。
[0187] 在轻弹输入被用来输入文本(例如,日文平假名输入)的例子中,接触输入序列中的接触输入可以包括从键盘界面的第一位置到第二位置的接触运动(例如,如上面参考图6B-C所描述的轻弹输入)。例如,如图8A中所示,接触输入序列可以被检测,以输入平假名字符的串あした(例如,第一字符串818)。接触输入序列可以包括对初级字符键802-1的第一接触输入、对初级字符键802-3的第二接触输入,以及对初级字符键802-4的第三接触输入。
在这个例子中,第一接触输入和第三接触输入每个可以是单击输入。特别地,第一接触输入和第三接触输入每个可以意在选择键盘界面800上的初级字符键802-1和802-4。对应的字符あ和た可以分别作为第一接触输入和第三接触输入的结果而被输入。另外,第二接触输入可以是轻弹输入。特别地,参考图8B,第二接触输入可以是在由箭头810指示的方向在键盘界面800上从第一位置806到第二位置808的接触运动。第二接触输入可以意在选择次级字符键804-1。因此,对应的字符し可以作为第二接触输入的结果被输入。
[0188] 在轻弹输入例子中,第二接触输入的接触运动可以包括与对应于接触运动的预期字符键关联的各种特性。特别地,接触运动可以与接触运动的第一位置806与第二位置808之间的轻弹距离或者从第一位置806到第二位置808的接触运动的轻弹速度关联。另外,第二接触输入的接触运动可以与相对于键盘界面800的参考轴(例如,参考轴814)的轻弹角度(例如,角度812)关联。
[0189] 在多击输入被用来输入文本的例子中,接触输入序列中的接触输入可以包括对键盘界面的键的第一接触和对键盘界面的键的第二接触(例如,双击输入)。第一接触和第二接触可以在预定的时间量内发生。此外,接触输入可以包括第一接触与第二接触之间的接触中断。返回去参考图8A中所示的例子,用于输入平假名字符的串あした的接触输入序列可以包括多击输入。具体而言,接触输入序列中的第一接触输入和第三接触输入每个可以分别包括对初级字符键802-1和802-3的单击输入。接触输入序列中的第二接触输入可以包括对初级字符键802-3的第一触摸输入,后面跟着对初级字符键802-3的第二触摸输入。第一触摸输入和第二触摸输入可以在预定的时间量内发生。另外,触摸接触中的中断可以在第一触摸接触和第二触摸接触之间发生。
[0190] 在多击输入的例子中,接触输入可以包括用于确定对应于该接触输入的字符键的各种特性。这些字符当中一些可以类似于轻弹输入的那些,诸如像每个轻击输入相对于每个字符键的中心位置的位置。其它特性可以与轻弹输入的那些不同。例如,多击输入的第一接触和第二接触每个可以与接触强度(例如,在触摸敏感表面上的接触的强度)和接触持续时间(例如,每个接触在触摸敏感表面上保持的持续时间)关联。接触输入还可以包括第一接触与第二接触之间的时间间隔(例如,从第一接触被释放到第二接触被发起的时间间隔)。接触强度、接触持续时间和时间间隔每个可以被用来确定对应于接触输入的字符键。
[0191] 在过程700的方框704,潜在地对应于接触输入序列的多个字符串可被确定。特别地,接触输入序列中的每个接触输入可被解释为几个可能的字符键之一的选择并且因此可以对应于几个相应的字符。返回到图8A中所示的例子,意在是对初级字符键802-1的输入的第一接触输入可被确定为潜在地是对周围初级字符键802-2、802-4、802-5当中一个的输入。如图所示,初级字符键802-1、802-2、802-4、802-5分别对应于日文平假名字符あ、か、た或な,并且因此第一接触输入可被确定为对应于字符あ、か、た或な当中任何一个。类似地,意在是对初级字符键802-4的输入的第三接触输入可被确定为潜在地是对周围初级字符键802-1、802-5、802-7当中一个的输入。因而,第三接触输入可被确定为对应于字符た、あ、な和ま当中任何一个。
[0192] 另外,意在是对次级字符键804-1的输入的第二接触输入可被确定为潜在地是对其它字符键的输入。特别地,依赖于轻弹输入的位置,第二接触输入可以潜在地被解释为对相邻字符键的轻弹输入。例如,第二接触输入可被确定为潜在地是对图8C的次级字符键816-1(例如,字符き)的输入,其中第二接触输入被解释为在相邻的初级字符键802-2而不是在初级字符键802-3发起的轻弹输入。此外,依赖于轻弹输入的速度或距离,第二接触输入可以潜在地被解释为对初级字符键802-3的轻击输入(例如,字符さ),而不是对初级字符键802-3的轻弹输入(例如,角色し)。因而,在这个例子中,第二接触输入可以潜在地对应于字符し、き和さ当中任何一个。
[0193] 潜在地对应于接触输入序列的多个字符串可以包括潜在地对应于第一、第二和第三接触输入的字符的任意组合。具体而言,在图8A-C的例子中,多个字符串可以包括第一字符串あした(“asita”–意思是明天)和第二字符串あきた(“Akita”–一个地方的名称)。第一和第二字符串可以对应于接触输入序列的相同部分。在这个例子中,第一字符串あした包括对应于第二接触输入的接触运动的一种解释的第一个字符し。第二个字符串あきた包括对应于第二接触输入的接触运动的另一种解释的第二个字符き。
[0194] 在多击输入被接收的例子中,每个多击输入可以类似地对应于两个或更多个字符键并且因此对应于两个或更多个字符。例如,依赖于每次轻击的持续时间或强度,预期的双击输入可被解释为具有更少轻击(例如,单击输入)或附加的轻击(例如,三击输入)。此外,依赖于每次轻击的位置或轻击之间的时间间隔,双击输入可被解释为对同一字符键或对两个不同字符键的两个单击输入。返回到图8A的例子,接触输入序列中的第二接触输入可以包括对初级字符键802-3的第一接触输入,后面跟着对初级字符键802-3的第二接触输入。在这个例子中,第二接触输入可以潜在地被解释为对应于对初级字符键802-3的第一预定义输入模式(例如,双击输入),这对应于第一个字符し。此外,第二接触输入可潜在地被解释为对应于对初级字符键802-3的第二预定义输入模式(例如,单击输入),这对应于第三个字符さ。在这个例子中,潜在地对应于接触输入序列的多个字符串可以包括第一字符串あした(“asita”–意思是明天)和第三字符串あさた(“Asada”–姓氏)。在这个例子中,第一字符串あした包括对应于第二接触输入的一种解释的第一个字符し。第三字符串あさた包括对应于第二接触输入的另一种解释的第三个字符さ。
[0195] 另外,如上所述,依赖于每次轻击的位置或轻击之间的时间间隔,双击输入可被潜在地解释为对同一字符键或两个不同字符键的两个单击输入。因而,在本例中,第二接触输入可被潜在地解释为对应于对初级字符键802-3以及相邻的初级字符键802-2、802-5和802-6当中任何一个的两次单独单击输入,这可以对应于例如字符ささ、さか、さな和さは的输入。因此,在这个例子中,多个字符串可以包括字符串あささた、あさかた、あさなた和あさはた。应当认识到,从字符输入的其它组合产生的其它字符串可以被预期。
[0196] 虽然在上述例子中只有一些相邻的字符键被认为确定多个字符串,但是应当认识到,任何数目的字符键(初级或次级)可以被认为确定多个字符串。
[0197] 在过程700的方框706,给定接触输入序列,多个字符串中每个字符串的概率可以被确定。特别地,给定接触输入序列,输入与字符串的每个字符关联的每个字符键的概率可以利用一个或多个几何模型来确定。几何模型可以编码选择从键盘界面上的接触输入序列计算的每个可能的字符键的概率。然后,给定接触输入序列,每个字符串的概率可以基于输入与字符串的每个字符关联的每个字符键的组合概率来确定。
[0198] 在一个例子中,参考第一字符串あした,第一接触输入(例如,轻击输入)是选择初级字符键802-1的预期输入(例如,对应于字符あ)的概率、第二接触输入(例如,从位置806到位置808的轻弹输入)是选择次级字符键804-1的预期输入(例如,对应于字符し)的概率以及第三接触输入是选择初级字符键802-4的预期输入(例如,对应于字符た)的概率每个可以利用一个或多个几何模型来确定。因此,给定接触输入序列,第一字符串あした的概率可以基于上面确定的每个概率的组合来确定。给定接触输入序列下的第二字符串あきた的概率和给定接触输入序列下的第三字符串あさた的概率可以以类似的方式确定。
[0199] 接触输入是选择特定字符键的预期输入的概率可以基于与接触输入关联的几个因素。对于轻击输入,这种因素可以包括轻击输入相对于每个字符键的中心位置的位置、轻击输入的强度,或轻击输入的持续时间(例如,与键盘界面维持接触的持续时间)。特别地,较高的概率可以与轻击输入的位置与特定字符键的中心位置之间的较短距离、轻击输入的较大强度或者轻击输入的较长持续时间关联。
[0200] 对于轻弹输入,接触输入是选择特定字符键的预期输入的概率可基于与上述对于轻击输入类似的因素。此外,概率可以基于轻弹输入距离(例如,图8B中接触运动的第一位置806与第二位置808之间的距离)、轻弹输入速度(例如,从第一位置806到第二位置808的接触运动的速度)或轻弹输入角度(例如,图8B中的角度812)。特别地,较高的概率可以与较长的轻弹距离或较慢的轻弹速度关联。关于轻弹角度,概率可以基于轻弹角度如何接近地对应于特定字符键的位置。例如,参考图8B,对于相对于参考轴814更接近90度的角度812与0度相比,从位置806到位置808的轻弹输入是对次级字符键804-1的预期输入的概率会更高。
[0201] 在一些例子中,几何模型可以被实现,以便在确定接触输入是选择字符键的预期输入的概率时解释轻击输入的位置。在这些例子中,概率质量(probability mass)可以基于二维高斯分布被分配给每个可能的键。特别地,在位置p的接触输入是对初级字符键k的预期输入的概率可以表示为:
[0202]
[0203] 其中Z=∑kexp[-(|p-c(k)|/D)2],Σk是对所有可能的初级字符键的合计,D是常数衰减因子,并且c(k)是字符键k的中心。从上述公式显然可知的,可以确定在位置p(例如,在图8A中的位置801)的接触输入是对初级字符键k(例如,图8A中的初级字符键802-1)的预期输入的概率在位置p与字符键k的中心位置之间的距离(|p-c(k)|))更小的时候更高。
[0204] 另外,在一些例子中,几何模型可以被实现,以解释轻弹输入的轻弹距离和初始位置。在这些例子中,可以对轻弹距离x设置阈值距离θ,其中接触输入只有在轻弹距离大于阈值距离θ的时候才被解释为轻弹输入(而非轻击输入)。此外,轻弹输入的初始位置p(例如,图8B中的第一位置806)可以根据上述高斯分布来建模。例如,参考图8B,如果轻弹距离x(例如,位置806与位置808之间的距离)大于或等于阈值距离θ,则在初级字符键ko(例如,初级字符键802-3)的位置p(例如,位置806)发起并具有轻弹距离x的接触输入是选择次级字符键k1(例如,次级字符键804-1)的预期轻弹输入的概率可以表示为P(k1|p,x)=P(ko|p)*(G/(G+exp[-x2/E2])),并且在初级字符键ko(例如,初级字符键802-3)的位置p(例如,位置806)发起并具有轻弹距离x的接触输入是选择初级字符键k1(例如,初级字符键802-3)的预期轻击输入的概率可以表示为P(ko|p,x)=P(ko|p)*(exp[-x2/E2]/(G+exp[-x2/E2])),其中E和G是常数。另外,如果轻弹距离x(例如,位置806与位置808之间的距离)小于阈值距离θ,则在初级字符键ko(例如,初级字符键802-3)的位置p(例如,位置806)发起并具有轻弹距离x的接触输入是选择次级字符键k1(例如,次级字符键804-1)的预期轻弹输入的概率可以表示为P(k1|p,x)=P(ko|p)*(exp[-F/x]/(H+exp[-F/x])),并且在初级字符键ko(例如,初级字符键802-3)的位置p(例如,位置806)发起并具有轻弹距离x的接触输入是选择初级字符键k0(例如,初级字符键802-3)的预期轻击输入的概率可以表示为P(k0|p,x)=P(ko|p)*(H/(H+exp[-Fx])),其中F和H是常数。
[0205] 通过利用上述几何模型,接触输入是选择特定字符键的期望输入的概率可以基于接触输入的位置和/或轻弹距离来确定。例如,参考图8B中包括从位置806到位置808的接触运动的第二接触输入,第二接触输入可被解释为选择次级字符键804-1的预期轻弹输入、选择次级字符键816-1的预期轻弹输入(图8C)、选择初级字符键802-3的预期轻击输入,或者选择初级字符键802-2的预期轻击输入(图8C)。基于位置806,初级字符键802-2和802-3的中心位置以及位置806与808之间的距离,上述几何模型可以被用来确定第二输入是选择这些字符键当中每一个的预期输入的概率。虽然以上描述了解释轻弹距离和/或接触位置的几何模型的具体例子,但是应当认识到,实现不同分布的其它几何模型可以被预期。另外,应当认识到,上述其它因素也可以利用一个或多个几何模型来建模,以确定给定接触输入下输入特定字符键的概率。例如,诸如接触强度、接触持续时间、轻弹速度或轻弹角度的因素可以在一个或多个几何模型中被建模。另外,对于多击输入,可以预期的是,类似的几何模型可以被实现,以解释一个或多个因素,诸如每个轻击的接触强度、每个轻击的接触位置、每个轻击的接触持续时间,以及连续轻击之间的时间间隔。
[0206] 在一些例子中,接触输入序列中的接触输入包括第一预定义输入模式的概率可被确定。例如,参考第一字符串あした,第二接触输入可以是用于输入字符し的多击输入。在这个例子中,第一预定义输入模式可以包括对初级字符键802-3的两个连续轻击输入(例如,第一触摸输入,后面跟着第二触摸输入,之间存在接触的中断),并且可以对应于字符し。因而,给定接触输入序列,第一字符串あした的概率可以基于该接触输入序列中的第二接触输入包括第一预定义输入模式的概率来确定。类似地,对于第三字符串あさた,接触输入序列中的第二接触输入包括第二预定义输入模式的概率可被确定。在这个例子中,第二预定义输入模式可以包括对初级字符键802-3的单击输入(例如,第一触摸输入,后面跟着接触的中断),并且可以对应于字符さ。因而,给定接触输入序列,第三字符串あさた的概率可以基于该接触输入序列中的第二接触输入包括第二预定义输入模式的概率来确定。
[0207] 接触输入包括第一预定义输入模式或第二预定义输入模式的概率可以基于与接触输入关联的几个因素。如上面所讨论的,这些因素可以包括键盘界面上每个轻击输入相对于每个字符键的中心位置的位置、每个轻击输入的接触强度、每个轻击输入的接触持续时间,以及多击输入的连续轻击输入之间的时间间隔。特别地,当每次轻击的位置更靠近字符键的中心位置时、当每个轻击输入的接触强度更大时或者当每次的接触持续时间更长时,多击输入的每个轻击输入可以相对于字符键以更大的置信度被检测。另外,当每个轻击输入之间的时间间隔大于下限阈值并且小于上限阈值时,两个连续的轻击输入可以以更大的置信度被检测。应当认识到,如上所述的类似几何模型可以被实现,以解释这些因素当中一个或多个,并且几何模型可被用来确定接触输入包括第一预定义输入模式或第二预定义输入模式的概率。
[0208] 在过程700的方框708,对应于接触输入序列的第一字符串可以在触摸屏显示器(例如,在触摸屏112)上的文本域中显示。在一些例子中,给定接触输入序列,第一字符串可以与多个字符串中的最高概率关联。例如,如图8B中所示,第一字符串818あした在文本域820中显示。如图所示,第一字符串818あした包括第一字符822し。如上所述,第一字符822し可以对应于选择次级字符键804-1的轻弹输入(例如,图8B中从位置806到位置808的接触运动)。作为替代,第一字符822し可以对应于对初级字符键802-3的双击输入(例如,包括对初级字符键802-3的第一和第二触摸接触的接触输入)。在这个例子中,给定接触输入序列,第一字符串818あした可以在方框706被确定为在多个字符串中具有最高概率。
[0209] 在过程700的方框710,对应于接触输入序列的多个候选词可被确定。多个候选词可以从方框706的多个字符串中确定。在一些例子中,相对于多个字符串中每一个的词匹配可以通过搜索词典来执行。词典的搜索可以识别对应于多个字符串的候选词。在一些实现中,具有Trie(特里)数据结构的词典可被用来执行词匹配。特别地,高效的基于堆栈的搜索算法可以结合Trie数据结构词典来使用。这种搜索实现可以使得通过词典的每遍计算会有大量的词匹配。照此,对应于多个字符串的候选词的确定可以利用较少遍数的计算高效地实现,这显著降低了计算时间和成本。
[0210] 多个候选词可以包括一个或多个书写系统(例如,平假名、片假名或汉字)的词。特别地,多个候选词可以包括第一书写系统的词和第二书写系统的词。例如,第一字符串あした可被确定为对应于候选词あした(例如,平假名候选词)、明日(例如,汉字候选词)和アシタ(例如,片假名候选词);第二个字符串あきた可被确定为对应于候选词あきた、秋田和アキタ;并且第三个字符串あきた可被确定为对应于候选词あさた、浅田和アサダ。如在这个例子中显然的,接触输入序列可以对应于从多个字符串中确定的大量候选词。如图7中所示,方框710可以包括方框712-714。
[0211] 在过程700的方框712,给定多个字符串中的相应字符串,每个候选词的概率可被确定。例如,参考第一字符串あした,给定第一字符串あした,候选词明日的概率可被确定。概率可以利用一个或多个语言模型来确定。特别地,语言模型可以利用文本的语料库进行训练,并且,给定第一字符串,候选词的概率可以基于该候选词在文本的语料库中出现的概率。附加地或作为替代,所确定的概率可以考虑上下文信息。特别地,每个候选词的概率可以基于各种上下文信息,诸如像周围的文本上下文、应用的类型、文本的类型、一天或一年中的时间等等,来确定。
[0212] 在一些例子中,基于类的语言模型(例如,类双语法语言模型)可以结合n语法语言模型(例如,三语法语言模型)来使用,以便给定相应的字符串来确定每个候选词的概率。特别是,类双语法语言模型可以比三语法语言模型更不计算密集。因而,初始概率可以利用类双语法语言模型来确定,并且具有小于阈值的概率的词可以从多个候选词中被排除。然后,剩余的候选词可以通过三语法语言模型来处理,以便给定的相应字符串来确定每个候选字的最终概率。以这种方式,确定可以更快和更高效地被执行。
[0213] 在过程700的方框714,给定接触输入序列,多个候选词中每个候选词的概率可被确定。给定接触输入序列,每个候选词的概率可以基于给定相应的字符串下每个候选词的概率(例如,在方框712确定的)和给定接触输入序列下相应字符串的概率(例如,在方框706确定的)的组合来确定。当给定接触输入序列下确定每个候选词的概率时,合适的加权因子可以被应用到给定相应的字符串下每个候选词的概率和给定接触输入序列下相应字符串的概率。在一些实现中,可以执行给定相应的字符串下每个候选词的概率和给定接触输入序列下相应字符串的概率的线性插值(interpolation)。
[0214] 因为给定接触输入序列下多个候选词中每个候选词的概率可以基于给定接触输入序列下相应字符串的概率来确定,所以应当认识到,给定接触输入序列下每个候选词的概率可以依赖于在方框706中描述的一个或多个几何模型中建模的各种因素。特别地,给定接触输入序列,多个候选词中每个候选词的概率可以基于诸如接触输入相对于每个键的中心位置的位置、轻弹距离、轻弹速度、轻弹角度、接触强度、接触持续时间以及多击输入的连续轻击输入之间的时间间隔之类的因素。
[0215] 在一些例子中,多个候选词可以基于给定接触输入序列下多个候选词中每个候选词的概率来确定。例如,具有小于预定阈值的概率的候选词可以被排除在所确定的多个候选词之外。
[0216] 在过程700的方框716,方框710的多个候选词可被排名。排名(rank)可以根据给定接触输入序列下多个候选词中每个候选词的概率来执行。特别地,多个候选词可以从最高概率到最低概率来排名。在一个例子中,第一候选词明日和第二候选词秋田可以分别基于给定接触输入序列下第一候选词明日的概率和给定接触输入序列下第二候选词秋田的概率来排名。如上所述,给定接触输入序列下第一候选词明日的概率和给定接触输入序列下第二候选词秋田的概率可以分别基于给定接触输入序列下第一字符串あした的概率和给定接触输入序列下第二字符串あきた的概率。接着,给定接触输入序列下第一字符串あした的概率和给定接触输入序列下第二字符串あきた的概率可以分别基于接触输入序列中的接触输入是选择次级字符键804-1(图8B)的预期输入的概率和接触输入序列中的接触输入是选择次级字符键816-1(图8C)的预期输入的概率。
[0217] 因为多个候选词是基于给定接触输入序列下每个候选词的概率排名的,所以应当认识到,排名可以基于上面在方框706中讨论的一个或多个几何模型中建模的各种因素。特别地,排名可以基于诸如接触输入相对于每个键的中心位置的位置、轻弹距离、轻弹速度、轻弹角度、接触强度、接触持续时间以及多击输入的连续轻击输入之间的时间间隔之类的因素。
[0218] 在过程700的方框718,供用户选择的多个候选词的一部分可被显示以供用户选择。所显示的部分可以包括在方框710-716被确定并排名的多个候选词的子集。在一些例子中,多个候选词的该部分可以包括前N个排名的候选词,其中N是预定的整数。多个候选词的该部分可以包括第一候选词和第二候选词。第一候选词和第二候选词可以对应于基于接触输入序列确定的不同字符串。
[0219] 参考图8D,候选词あした、明日、秋田、浅田和アシタ可以在词选择界面824中显示。给定输入的序列,这些候选词可以是多个确定的候选词中具有四个最高概率的候选词。特别地,用户可以经由词选择界面824选择所显示的候选词中的一个,以输入相应的候选词。如图所示,所显示的候选词包括第一候选词826明日、第二候选词828秋田,以及第三候选词830浅田。值得注意的是,在这个例子中,所显示的候选词包括从不同字符串确定的词。
特别地,如上所述,第一候选词826明日、第二候选词828秋田以及第三候选词830浅田可以分别基于第一字符串あした、第二字符串あきた和第三字符串あきた来确定。这些字符串中每一个可以通过考虑对应于接触输入序列中的每个接触输入的各种可能的预期输入来确定。因而,与仅基于单个字符串(例如,第一字符串あした)确定候选词的语言输入方法相比,过程700可以基于对应于接触输入序列的各种可能的字符串确定更大范围的候选词。以这种方式,可以显示更好地对应于用户意图的词以供用户选择。另外,该过程可以通过确定并显示对应于潜在预期接触输入的候选词来校正意外的接触输入(例如,输入错误)。
[0220] 虽然在上面的例子中过程700是关于日文假名键盘、日文平假名字符串和日文候选词串(例如,平假名、片假名和汉字词)来描述的,但是应当认识到,过程700还可以利用其它键盘界面和书写系统(例如,中文、韩文,等等)实践。另外,可以预期,过程700可被实现为用于输入一种语言的文本并获得另一种语言的文本的翻译。
[0221] 4.示例性电子设备
[0222] 根据一些实施例,图9示出了根据各种所述实施例的原理配置的电子设备900的示例性功能框图。根据一些实施例,电子设备900的功能块被配置为执行上述技术。设备900的功能块可选地由硬件、软件或硬件和软件的组合来实现,以执行各种所述例子的原理。本领域技术人员可以理解,图9中所描述的功能块可选地组合或分离成子块,以实现各种所述例子的原理。因此,本文的描述可选地支持本文所述功能块的任何可能的组合或分离或另一定义。
[0223] 如图9中所示,电子设备900包括被配置为显示图形用户界面(例如,文本域、词选择界面、键盘界面,等等)的显示单元902,可选地,被配置为接收接触的触摸敏感表面单元904以及耦合到显示单元902和,可选地,触摸敏感表面单元904的处理单元906。在一些实施例中,显示单元902和触摸敏感表面单元904可以是单个单元(例如,触摸敏感显示单元)。在一些实施例中,处理单元906包括检测单元908、确定单元910、排名单元912,以及显示单元
914。
[0224] 处理单元906被配置为经由显示单元902和/或触摸敏感表面单元904上的键盘界面检测(例如,利用检测单元)接触输入序列。接触输入序列中的接触输入包括从键盘界面的第一位置到第二位置的接触运动。处理单元906还被配置为确定(例如,利用确定单元910)对应于接触输入序列的多个候选词。处理单元906还被配置为基于接触输入是对键盘界面的第一键的预期输入的概率以及接触输入是对键盘界面的第二键的预期输入的概率来将多个候选词排名(例如,利用排名单元912)。处理单元906还被配置为经由显示单元902显示(例如,利用显示单元)多个候选词的一部分以供用户选择。
[0225] 在一些实施例中,第一键对应于语言的第一书写符号并且第二键对应于该语言的第二书写符号。在一些实施例中,多个候选词包括第一书写系统的词和第二书写系统的词。
[0226] 在一些实施例中,处理单元906还被配置为确定(例如,利用确定单元910)潜在地对应于接触输入序列的多个字符串。处理单元906还被配置为,给定接触输入序列,利用几何模型确定(例如,利用确定单元910)多个字符串中每个字符串的概率,其中多个候选词是基于给定接触输入序列下多个字符串中每个字符串的概率从这多个字符串确定的。
[0227] 在一些实施例中,多个候选词是基于语言模型的词典来确定的。在一些实施例中,接触输入是对键盘界面的第一键的期望输入的概率是基于第一位置与第一键的中心位置之间的距离确定的,并且接触输入是对键盘界面的第二键的期望输入的概率是基于第一位置与第二键的中心位置之间的距离确定的。
[0228] 在一些实施例中,接触输入是对键盘界面的第一键的预期输入的概率和该接触输入是对键盘界面的第二键的预期输入的概率每个都是基于接触运动的第一位置与第二位置之间的距离确定的。
[0229] 在一些实施例中,处理单元906还被配置为,给定接触输入序列,确定(例如,利用确定单元910)每个候选词的概率,其中将多个候选词排名是基于给定接触输入序列下每个候选词的概率。
[0230] 在一些实施例中,给定接触输入序列,多个候选词中每个候选词的概率是基于给定接触输入序列下多个字符串中相应字符串的概率来确定的。
[0231] 在一些实施例中,处理单元906还被配置为,给定多个字符串中的相应字符串,确定(例如,利用确定单元)多个候选词中每个候选词的概率,其中给定接触输入序列下多个候选词中每个候选词的概率是基于给定多个字符串中的相应字符串下多个候选词中每个候选词的概率来确定的。
[0232] 在一些实施例中,给定多个字符串中的相应字符串,多个候选词中每个候选词的概率是利用一个或多个语言模型来确定的。
[0233] 在一些实施例中,多个候选词是利用具有Trie数据结构的词典来确定的。
[0234] 在一些实施例中,多个候选词是基于键盘界面上第一位置与每个键的中心位置之间的距离排名的。在一些实施例中,多个候选词是基于接触运动的第一位置与第二位置之间的距离排名的。在一些实施例中,多个候选词是基于从第一位置到第二位置的接触运动的速度排名的。在一些实施例中,多个候选词是基于接触运动相对于键盘界面的参考轴的角度排名的。在一些实施例中,键盘界面是10键假名键盘界面。
[0235] 在一些实施例中,处理单元906被配置为经由显示单元902和/或触摸敏感表面单元904上的键盘界面检测(例如,利用检测单元)接触输入序列。接触输入序列中的接触输入包括从键盘界面的第一位置到第二位置的接触运动。处理单元906还被配置为经由显示单元902在文本域中显示(例如,利用显示单元914)对应于接触输入序列的第一字符串。第一字符串包括对应于接触运动的第一字符。处理单元906还被配置为确定(例如,利用确定单元910)对应于接触输入序列的多个候选词。多个候选词包括第一候选词和第二候选词。第一候选词基于第一字符串并且第二候选词基于对应于接触输入序列的第二字符串。第二字符串包括对应于接触运动的第二字符。处理单元906还被配置为经由显示单元902显示(例如,利用显示单元914)多个候选词的一部分以供用户选择。该部分包括第一候选词和第二候选词。
[0236] 在一些实施例中,第一字符对应于键盘界面的第一键,并且第二字符对应于键盘界面的、与第一键不同的第二键。在一些实施例中,第一字符串和第二字符串每个都包括第一书写系统的字符并且多个候选词包括第一书写系统的词和第二书写系统的词。
[0237] 在一些实施例中,处理单元906还被配置为确定(例如,利用确定单元910)对应于接触输入序列的多个字符串,其中这多个字符串包括第一字符串和第二字符串。处理单元906还被配置为,给定接触输入序列,利用几何模型确定(例如,利用确定单元910)多个字符串中每个字符串的概率,其中多个候选词是基于给定接触输入序列下多个字符串中每个字符串的概率来确定的。
[0238] 在一些实施例中,给定接触输入序列,多个字符串中每个字符串的概率是基于键盘界面上第一位置与每个键的中心位置之间的距离来确定的。在一些实施例中,给定接触输入序列,多个字符串中每个字符串的概率是基于接触运动的第一位置与第二位置之间的距离来确定的。
[0239] 在一些实施例中,给定接触输入序列,多个字符串中每个字符串的概率是基于从第一位置到第二位置的接触运动的速度来确定的。在一些实施例中,给定接触输入序列,多个字符串中每个字符串的概率是基于接触运动相对于键盘界面的参考轴的角度来确定的。
[0240] 在一些实施例中,处理单元906还被配置为,给定多个字符串中的相应字符串,确定(例如,利用确定单元910)多个候选词中每个候选词的概率,其中多个候选词是基于给定多个字符串中的相应字符串下多个候选词中每个候选词的概率来确定的。
[0241] 在一些实施例中,多个候选词是利用具有Trie数据结构的词典来确定的。在一些实施例中,键盘界面是10键假名键盘界面。
[0242] 在一些实施例中,处理单元906被配置为经由显示单元902和/或触摸敏感表面单元904上的键盘界面检测(例如,利用检测单元)接触输入序列。接触输入序列中的接触输入包括对键盘界面的键的第一接触和对键盘界面的键的第二接触。处理单元906还被配置为在显示单元902上的文本域中显示(例如,利用显示单元914)对应于接触输入序列的第一字符串,其中第一字符串包括对应于接触输入的第一字符。处理单元906还被配置为确定(例如,利用确定单元910)对应于接触输入序列的多个候选词。多个候选词包括第一候选词和第二候选词,其中第一候选词基于第一字符串并且第二候选词基于对应于接触输入序列的第二字符串。第二字符串包括对应于接触输入的第二字符。处理单元906还被配置为经由显示单元902显示(例如,利用显示单元914)多个候选词的一部分以供用户选择。该部分包括第一候选词和第二候选词。
[0243] 在一些实施例中,接触输入还包括第一接触与第二接触之间接触的中断。在一些实施例中,第一字符串和第二字符串每个都包括第一书写系统的字符,并且多个候选词包括第一书写系统的词和第二书写系统的词。
[0244] 在一些实施例中,处理单元906还被配置为确定(例如,利用确定单元910)潜在地对应于接触输入序列的多个字符串,多个字符串包括第一字符串和第二字符串。处理单元906还被配置为,给定接触输入序列,利用几何模型确定(例如,利用确定单元910)多个字符串中每个字符串的概率,其中多个候选词是基于给定接触输入序列下多个字符串中每个字符串的概率来确定的。
[0245] 在一些实施例中,第一字符对应于对键盘界面的键的第一预定义输入模式,并且第二字符对应于对键盘界面的键的第二预定义输入模式。
[0246] 在一些实施例中,处理单元906还被配置为确定(例如,利用确定单元910)接触输入包括第二预定义输入模式的概率,其中,给定接触输入序列,多个字符串中每个字符串的概率是基于接触输入包括第二预定义输入模式的概率来确定的。
[0247] 在一些实施例中,接触输入包括第二预定义输入模式的概率是基于第一接触或第二接触的强度来确定的。在一些实施例中,接触输入包括第二预定义输入模式的概率是基于第一接触或第二接触的持续时间来确定的。在一些实施例中,接触输入包括第二预定义输入模式的概率是基于键的中心位置与第一接触或第二接触的位置之间的距离来确定的。在一些实施例中,接触输入包括第二预定义输入模式的概率是基于第一接触与第二接触之间的时间间隔来确定的。
[0248] 在一些实施例中,处理单元906还被配置为,给定多个字符串中的相应字符串,确定(例如,利用确定单元910)多个候选词中每个候选词的概率,其中多个候选词是基于给定多个字符串中的相应字符串下多个候选词中每个候选词的概率来确定的。
[0249] 在一些实施例中,多个候选词是利用具有Trie数据结构的词典来确定的。在一些实施例中,键盘界面是10键假名键盘界面。
[0250] 上面参考图7所描述的操作可选地由图1A-1B或图9中所绘出的组件来实现。例如,检测操作702,确定操作704、706、710、712、714,排名操作716,以及显示操作708、718可以由文本输入模块134实现。文本输入模块134可以经由在触摸敏感显示器112上显示的键盘界面检测接触输入序列。文本输入模块134可以确定潜在地对应于接触输入序列的多个字符串。文本输入模块134可以确定(例如,利用文本输入模块134的几何模型)给定接触输入序列下每个字符串的概率。文本输入模块134可以在触摸敏感显示器112上显示的文本域中显示多个字符串中的第一字符串。文本输入模块134可以确定对应于接触输入序列的多个候选词。文本输入模块134可以确定(例如,利用文本输入模块134的语言模型)给定多个字符串中的相应字符串下每个候选词的概率。给定接触输入序列,文本输入模块134可以确定每个候选词的概率。文本输入模块134可以基于接触输入是对键盘界面的第一键的预期输入的概率以及该接触输入是对键盘界面的第二键的预期输入的概率来将多个候选词排名。文本输入模块134可以在触摸敏感显示器112上显示多个候选词的一部分以供用户选择。类似地,对本领域普通技术人员将清楚的是,其它过程如何可以基于在图1A-1B中绘出的组件来实现。
[0251] 根据一种实施例,提供了一种用于输入语言的方法,所述方法包括:在具有一个或多个处理器、存储器以及触摸敏感显示器的设备处:经由所述触摸敏感显示器上的键盘界面检测接触输入序列,其中所述接触输入序列中的接触输入包括从所述键盘界面的第一位置到第二位置的接触运动;在所述触摸敏感显示器上的文本域中显示对应于所述接触输入序列的第一字符串,所述第一字符串包括对应于所述接触运动的第一字符;确定对应于所述接触输入序列的多个候选词,所述多个候选词包括第一候选词和第二候选词,其中:所述第一候选词基于所述第一字符串;所述第二候选词基于对应于所述接触输入序列的第二字符串;及所述第二字符串包括对应于所述接触运动的第二字符;及显示所述多个候选词的一部分以供用户选择,所述部分包括所述第一候选词和所述第二候选词。
[0252] 根据所述实施例,所述第一字符对应于所述键盘界面的第一键,并且所述第二字符对应于所述键盘界面的、与所述第一键不同的第二键。
[0253] 根据所述实施例,所述第一字符串和所述第二字符串每个都包括第一书写系统的字符,并且其中所述多个候选词包括第一书写系统的词和第二书写系统的词。
[0254] 根据所述实施例,所述方法,还包括:确定对应于所述接触输入序列的多个字符串,其中所述多个字符串包括所述第一字符串和所述第二字符串;及利用几何模型确定给定所述接触输入序列下的多个字符串中每个字符串的概率,其中所述多个候选词是基于给定所述接触输入序列下的多个字符串中每个字符串的概率来确定的。
[0255] 根据所述实施例,给定所述接触输入序列下的多个字符串中每个字符串的概率是基于所述键盘界面上的所述第一位置与每个键的中心位置之间的距离来确定的。
[0256] 根据所述实施例,给定所述接触输入序列下的多个字符串中每个字符串的概率是基于所述接触运动的第一位置与第二位置之间的距离来确定的。
[0257] 根据所述实施例,给定所述接触输入序列下的多个字符串中每个字符串的概率是基于从所述第一位置到所述第二位置的接触运动的速度来确定的。
[0258] 根据所述实施例,给定所述接触输入序列下的多个字符串中每个字符串的概率是基于所述接触运动相对于所述键盘界面的参考轴的角度来确定的。
[0259] 根据所述实施例,所述方法还包括:确定给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率,其中所述多个候选词是基于给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率来确定的。
[0260] 根据所述实施例,所述多个候选词是利用具有Trie数据结构的词典来确定的。
[0261] 根据所述实施例,所述键盘界面是10键假名键盘界面。
[0262] 根据一种实施例,提供了一种用于输入语言的方法,所述方法包括:在具有一个或多个处理器、存储器以及触摸敏感显示器的设备处:经由所述触摸敏感显示器上的键盘界面检测接触输入序列,其中所述接触输入序列中的接触输入包括对所述键盘界面的键的第一接触和对所述键盘界面的键的第二接触;在所述触摸敏感显示器上的文本域中显示对应于所述接触输入序列的第一字符串,所述第一字符串包括对应于所述接触输入的第一字符;确定对应于所述接触输入序列的多个候选词,所述多个候选词包括第一候选词和第二候选词,其中:所述第一候选词基于所述第一字符串;所述第二候选词基于对应于所述接触输入序列的第二字符串;及所述第二字符串包括对应于所述接触输入的第二字符;及显示所述多个候选词的一部分以供用户选择,所述部分包括所述第一候选词和所述第二候选词。
[0263] 根据所述实施例,所述接触输入还包括所述第一接触与所述第二接触之间的接触中断。
[0264] 根据所述实施例,所述第一字符串和所述第二字符串每个都包括第一书写系统的字符,并且其中所述多个候选词包括第一书写系统的词和第二书写系统的词。
[0265] 根据所述实施例,所述方法还包括:确定潜在地对应于所述接触输入序列的多个字符串,所述多个字符串包括所述第一字符串和所述第二字符串;及利用几何模型确定给定所述接触输入序列下的多个字符串中每个字符串的概率,其中所述多个候选词是基于给定所述接触输入序列下的多个字符串中每个字符串的概率来确定的。
[0266] 根据所述实施例,所述第一字符对应于对所述键盘界面的键的第一预定义输入模式,并且所述第二字符对应于对所述键盘界面的键的第二预定义输入模式。
[0267] 根据所述实施例,所述方法还包括:确定所述接触输入包括所述第二预定义输入模式的概率,其中,给定所述接触输入序列下的多个字符串中每个字符串的概率是基于所述接触输入包括所述第二预定义输入模式的概率来确定的。
[0268] 根据所述实施例,所述接触输入包括所述第二预定义输入模式的概率是基于所述第一接触或所述第二接触的强度来确定的。
[0269] 根据所述实施例,所述接触输入包括所述第二预定义输入模式的概率是基于所述第一接触或所述第二接触的持续时间来确定的。
[0270] 根据所述实施例,所述接触输入包括所述第二预定义输入模式的概率是基于所述键的中心位置与所述第一接触或所述第二接触的位置之间的距离来确定的。
[0271] 根据所述实施例,所述接触输入包括所述第二预定义输入模式的概率是基于所述第一接触与所述第二接触之间的时间间隔来确定的。
[0272] 根据所述实施例,所述方法还包括:确定给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率,其中所述多个候选词是基于给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率来确定的。
[0273] 根据所述实施例,所述多个候选词是利用具有Trie数据结构的词典来确定的。
[0274] 根据所述实施例,所述键盘界面是10键假名键盘界面。
[0275] 根据一种实施例,提供了一种包括指令的计算机可读介质,所述指令在被一个或多个处理器执行时,使所述一个或多个处理器执行如权利要求1-41中任何一项所述的方法。
[0276] 根据一种实施例,提供了一种系统,包括:一个或多个处理器;存储计算机可读指令的存储器,所述指令在被一个或多个处理器执行时,使所述一个或多个处理器执行如权利要求1-41中任何一项所述的方法。
[0277] 根据一个实施例,提供了一种电子设备,包括:显示单元;触摸敏感表面单元;及耦合到所述触摸敏感表面单元的处理单元,所述处理单元被配置为:经由所述触摸敏感表面单元上的键盘界面检测接触输入序列,其中所述接触输入序列中的接触输入包括从所述键盘界面的第一位置到第二位置的接触运动;在所述触摸敏感表面单元上的文本域中显示对应于所述接触输入序列的第一字符串,所述第一字符串包括对应于所述接触运动的第一字符;确定对应于所述接触输入序列的多个候选词,所述多个候选词包括第一候选词和第二候选词,其中:所述第一候选词基于所述第一字符串;所述第二候选词基于对应于所述接触输入序列的第二字符串;及所述第二字符串包括对应于所述接触运动的第二字符;及显示所述多个候选词的一部分以供用户选择,所述部分包括所述第一候选词和所述第二候选词。
[0278] 根据所述实施例,所述第一字符对应于所述键盘界面的第一键,并且所述第二字符对应于所述键盘界面的、与所述第一键不同的第二键。
[0279] 根据所述实施例,所述第一字符串和所述第二字符串每个都包括第一书写系统的字符,并且其中所述多个候选词包括第一书写系统的词和第二书写系统的词。
[0280] 根据所述实施例,所述处理单元还被配置为:确定对应于所述接触输入序列的多个字符串,其中所述多个字符串包括所述第一字符串和所述第二字符串;及利用几何模型确定给定所述接触输入序列下的多个字符串中每个字符串的概率,其中所述多个候选词是基于给定所述接触输入序列下的多个字符串中每个字符串的概率来确定的。
[0281] 根据所述实施例,给定所述接触输入序列下的多个字符串中每个字符串的概率是基于所述键盘界面上的所述第一位置与每个键的中心位置之间的距离来确定的。
[0282] 根据所述实施例,给定所述接触输入序列下的多个字符串中每个字符串的概率是基于所述接触运动的第一位置与第二位置之间的距离来确定的。
[0283] 根据所述实施例,给定所述接触输入序列下的多个字符串中每个字符串的概率是基于从所述第一位置到所述第二位置的接触运动的速度来确定的。
[0284] 根据所述实施例,给定所述接触输入序列下的多个字符串中每个字符串的概率是基于所述接触运动相对于所述键盘界面的参考轴的角度来确定的。
[0285] 根据所述实施例,所述处理单元还被配置为确定给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率,其中所述多个候选词是基于给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率来确定的。
[0286] 根据所述实施例,所述多个候选词是利用具有Trie数据结构的词典来确定的。
[0287] 根据所述实施例,所述键盘界面是10键假名键盘界面。
[0288] 根据一个实施例,提供了一种电子设备,包括:显示单元;触摸敏感表面单元;及耦合到所述触摸敏感表面单元的处理单元,所述处理单元被配置为:经由所述触摸敏感表面单元上的键盘界面检测接触输入序列,其中所述接触输入序列中的接触输入包括对所述键盘界面的键的第一接触和对所述键盘界面的键的第二接触;在所述触摸敏感表面单元上的文本域中显示对应于所述接触输入序列的第一字符串,所述第一字符串包括对应于所述接触输入的第一字符;确定对应于所述接触输入序列的多个候选词,所述多个候选词包括第一候选词和第二候选词,其中:所述第一候选词基于所述第一字符串;所述第二候选词基于对应于所述接触输入序列的第二字符串;及所述第二字符串包括对应于所述接触输入的第二字符;及显示所述多个候选词的一部分以供用户选择,所述部分包括所述第一候选词和所述第二候选词。
[0289] 根据所述实施例,所述接触输入还包括所述第一接触与所述第二接触之间的接触中断。
[0290] 根据所述实施例,所述第一字符串和所述第二字符串每个都包括第一书写系统的字符,并且其中所述多个候选词包括第一书写系统的词和第二书写系统的词。
[0291] 根据所述实施例,所述处理单元还被配置为:确定潜在地对应于所述接触输入序列的多个字符串,所述多个字符串包括所述第一字符串和所述第二字符串;及利用几何模型确定给定所述接触输入序列下的多个字符串中每个字符串的概率,其中所述多个候选词是基于给定所述接触输入序列下的多个字符串中每个字符串的概率来确定的。
[0292] 根据所述实施例,所述第一字符对应于对所述键盘界面的键的第一预定义输入模式,并且所述第二字符对应于对所述键盘界面的键的第二预定义输入模式。
[0293] 根据所述实施例,所述处理单元还被配置为:确定所述接触输入包括所述第二预定义输入模式的概率,其中,给定所述接触输入序列下的多个字符串中每个字符串的概率是基于所述接触输入包括所述第二预定义输入模式的概率来确定的。
[0294] 根据所述实施例,所述接触输入包括所述第二预定义输入模式的概率是基于所述第一接触或所述第二接触的强度来确定的。
[0295] 根据所述实施例,所述接触输入包括所述第二预定义输入模式的概率是基于所述第一接触或所述第二接触的持续时间来确定的。
[0296] 根据所述实施例,所述接触输入包括所述第二预定义输入模式的概率是基于所述键的中心位置与所述第一接触或所述第二接触的位置之间的距离来确定的。
[0297] 根据所述实施例,所述接触输入包括所述第二预定义输入模式的概率是基于所述第一接触与所述第二接触之间的时间间隔来确定的。
[0298] 根据所述实施例,所述处理单元还被配置为确定给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率,其中所述多个候选词是基于给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率来确定的。
[0299] 根据所述实施例,所述多个候选词是利用具有Trie数据结构的词典来确定的。
[0300] 根据所述实施例,所述键盘界面是10键假名键盘界面。
[0301] 根据一个实施例,提供了一种包括指令的计算机可读介质,所述指令在被一个或多个处理器执行时,使所述一个或多个处理器:经由所述触摸敏感显示器上的键盘界面检测接触输入序列,其中所述接触输入序列中的接触输入包括从所述键盘界面的第一位置到第二位置的接触运动;确定对应于所述接触输入序列的多个候选词;基于所述接触输入是选择所述键盘界面的第一键的预期输入的概率以及所述接触输入是选择所述键盘界面的第二键的预期输入的概率来将所述多个候选词排名;及显示所述多个候选词的一部分以供用户选择。
[0302] 根据一个实施例,提供了一种系统,包括:一个或多个处理器;存储器,所述存储器存储计算机可读指令,所述计算机可读指令在被一个或多个处理器执行时,使所述一个或多个处理器:经由触摸敏感显示器上的键盘界面检测接触输入序列,其中所述接触输入序列中的接触输入包括从所述键盘界面的第一位置到第二位置的接触运动;确定对应于所述接触输入序列的多个候选词;基于所述接触输入是选择所述键盘界面的第一键的预期输入的概率以及所述接触输入是选择所述键盘界面的第二键的预期输入的概率来将所述多个候选词排名;及显示所述多个候选词的一部分以供用户选择。
[0303] 根据所述实施例,所述计算机可读指令还使所述一个或多个处理器:确定潜在地对应于所述接触输入序列的多个字符串;及利用几何模型确定给定所述接触输入序列下的所述多个字符串中每个字符串的概率,其中所述多个候选词是基于给定所述接触输入序列下的所述多个字符串中每个字符串的概率从所述多个字符串确定的。
[0304] 根据所述实施例,所述接触输入是选择所述键盘界面的第一键的期望输入的概率是基于所述第一位置与所述第一键的中心位置之间的距离来确定的;及所述接触输入是选择所述键盘界面的第二键的期望输入的概率是基于所述第一位置与所述第二键的中心位置之间的距离来确定的。
[0305] 根据所述实施例,所述接触输入是选择所述键盘界面的第一键的预期输入的概率和所述接触输入是选择所述键盘界面的第二键的预期输入的概率每一个都是基于所述接触运动的第一位置与第二位置之间的距离来确定的。
[0306] 根据所述实施例,所述计算机可读指令还使所述一个或多个处理器:确定给定所述接触输入序列下的每个候选词的概率,其中将所述多个候选词排名是基于给定所述接触输入序列下的每个候选词的概率。
[0307] 根据所述实施例,给定所述接触输入序列下的所述多个候选词中每个候选词的概率是基于给定所述接触输入序列下的多个字符串中相应字符串的概率来确定的。
[0308] 根据所述实施例,所述计算机可读指令还使所述一个或多个处理器:确定给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率,其中给定所述接触输入序列下的多个候选词中每个候选词的概率是基于给定所述多个字符串中相应字符串下的多个候选词中每个候选词的概率来确定的。
[0309] 为了解释,以上描述已经参考具体的实施例进行了描述。但是,以上的说明性讨论不是详尽的或者要将本发明限制到所公开的精确形式。鉴于以上教导,许多修改和变化都是可能的。实施例的选择和描述是为了最好地解释技术的原理及其实际应用。由此,使本领域技术人员能够最好地利用这些技术以及具有适于预期特定用途的各种修改的各种实施例。
[0310] 虽然本公开和例子已经参考附图完整地进行了描述,但是应当指出,各种变化和修改将变对本领域技术人员变得显然。这些变化和修改应当被理解为包括在由权利要求定义的本公开和例子的范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈