用于连续手势输入的多图形键盘的制作方法_2

文档序号:9553203阅读:来源:国知局
字)的单个字符,或者可以表示字符的组合。图形键盘的一个示例可以包括传统的“QWERTY”键盘布局。其他示例可以包含用于不同语言、不同字符集或者不同字符布局的字符。如图1的示例中所示,第一图形键盘14包括用于英语语言的传统的“QWERTY”键盘布局的版本,提供字符键以及提供其他功能的各种键(例如“ 123”键)。
[0024]在一些示例中,文本显示区13可以包括在例如文本消息、文档、电子邮件消息、web浏览器等中所包括的字符或者其他图形内容。例如,文本显示区13可以包括由用户经由在UI设备4处所执行的手势而选择的字符或者其他图形内容。在一些示例中,GUI 12可以包括一个或多个区,诸如密码区26。可以被包括在GUI 12中的其他示例区包括但不限于URL区、电子邮件地址区、颜色区、日期区、日期时间区、本地日期时间区、月份区、数字区、范围区、搜索区、电话号码区、时间区以及星期区。这样的区可以各自是GUI 12的不同区。在一些示例中,这样的区可以是⑶I 12的单个区并且可以包括⑶I 12的与文本显示区13相同的一个或多个区。
[0025]UI模型6可以使得UI设备4显示第一图形键盘14并且检测手势输入,诸如在UI设备4的一个或多个位置处所检测到的手势输入,所述位置显示第一图形键盘4的一个或多个键。这样的手势输入可以包括诸如一个或多个轻击手势的离散手势以选择第一图形键盘14的单独键。在一些示例中,UI设备4可以检测一个或多个连续手势,使得UI设备4检测输入单元(例如手指、笔、触控笔)从UI设备4的第一位置到UI设备4的第二位置的连续运动。例如,如图1中所示,UI设备4可以检测包括输入单元(例如手指)从第一位置30到第二位置32的运动的连续运动手势28。UI模块6可以从UI设备4接收诸如连续手势28的连续手势的指示并且可以至少部分地基于该手势的指示来选择第一图形键盘14的一个或多个键,如下进一步描述。
[0026]辅助键盘模块10可以至少部分地基于输入上下文来确定显示包括第二多个键的第二图形键盘22。输入上下文可以包括例如能够接收输入的诸如密码区26的输入区的识别符。在其他示例中,辅助键盘模块10可以接收一个或多个输入区的识别符的指示,所述输入区诸如密码区、URL区、电子邮件地址区、颜色区、日期区、日期时间区、本地日期时间区、月份区、数字区、范围区、搜索区、电话号码区、时间区以及星期区。识别符可以包括GUI12的活动输入区(例如,当前所选择的区、包括活动光标的区等)的识别符,诸如由超文本标记语言(HTML) 5界面所指定的识别符。
[0027]作为示例,辅助键盘模块10可以接收密码区26是⑶I 12的活动区的指示。此夕卜,辅助键盘模块10可以接收识别密码区26作为被配置成接收指定密码(例如允许使用计算设备2来访问应用和/或服务的密码)的数据的GUI 12的区的密码去的识别符的指示。响应于接收密码区26作为GUI 12的活动区的指示,辅助键盘模块10可以使得UI模块6输出第二键盘22,以在UI设备4处显示。
[0028]在一些示例中,UI模块6可以输出第二键盘22以在⑶I 12的一部分处显示,该部分包括一个或多个可显示区,诸如文本显示区13。在一些示例中,UI模块6可以输出第二键盘22作为可显示区中的一个或多个区的阿尔法混合(例如半透明的)叠加。例如,UI模块6可以输出第二键盘22作为文本显示区13或者诸如一个或多个文本建议区(未示出)的一个或多个其他区的阿尔法混合叠加。
[0029]手势模块8可以接收在UI设备4 (例如存在敏感输入设备)处所检测到的连续手势28的第一部分34的指示。如图所示,第一部分34包括输入单元(例如手指)从对应于“P”键16的第一位置到对应于第一图形键盘14的“A”键18的UI设备4的位置的运动。手势模块8可以至少部分地基于连续手势28的第一部分34的指示而选择第一图形键盘14的“A”键18,如下进一步描述。
[0030]手势模块8可以接收在UI设备4处所检测到的连续手势28的第二部分36的指示。如图所示,第二部分36包括输入单元从对应于“A”键18的位置到对应于“5”键24的位置的运动。手势模块8可以至少部分地基于连续手势28的第二部分36的指示而选择第二图形键盘22的“5”键24。如图1中进一步所示,手势模块8可以继续至连续手势28的一个或多个部分并且选择第一图形键盘14和/或第二图形键盘22的一个或多个键,诸如第一图形键盘14的“S”键20。
[0031]手势模块8可以确定包括与所选键相关联的一个或多个字符的候选字符串。候选字符串可以包括与第一图形键盘14的键相关联的一个或多个字符以及与第二图形键盘22相关联的一个或多个字符。例如,手势模块8可以确定候选字符串38。如图所示,候选字符串38可以包括对应于第一图形键盘14的“A”键18的“A”字符40以及对应于第二图形键盘22的“5”键24的“5”字符42。
[0032]以这种方式,计算设备2可以提高用户可以提供手势输入以使用图形键盘选择文本的一个或多个字符的容易性。根据本文所述的技术,用户可以提供连续手势输入以选择第一图形键盘中所包括的一个或多个字母字符以及第二图形键盘中所包括的一个或多个非字母字符,而无需离散的手势输入以改变图形键盘的模式并且发起对应于非字母字符的可选键的显示。如此,所述技术可以潜在加快用户可以提供手势输入以使用计算设备选择包括字母和非字母文本的组合的文本的速率,由此潜在提高计算设备的易用性。
[0033]图2是图示根据本公开的一个或多个方面的在图1中所示的计算设备的一个示例的进一步细节的框图。图2仅图示计算设备2的一个特定示例,并且计算设备2的许多其他示例可以被使用于其他情况下。
[0034]如图2的特定示例中所示,计算设备2包括一个或多个处理器50、一个或多个输入设备52、UI设备4、一个或多个通信单元54、一个或多个输出设备56、以及一个或多个存储设备58。如图所示,计算设备2可以进一步包括UI模块6、手势模块8、辅助键盘模块10以及由计算设备2(例如由一个或多个处理器50)可执行的操作系统62。计算设备62可以进一步包括键区64和语言模型66。
[0035]组件4、50、52、54、56和58中的每一个均可以相互连接(物理地、通信地和/或操作地)以便在组件间进行通信。在一些示例中,通信信道60可以包括系统总线、网络连接、进程间通信的数据结构或者用于通信数据的任何其他方法。如图2中的一个示例,组件4、50、52、54、56和58可通过一个或多个通信信道60而耦合。UI模块6、手势模块8以及辅助模块10也可以彼此以及与诸如键区64和语言模型66的计算设备2的其他组件通信信息。
[0036]处理器50在一个示例中被配置成实现用于在计算设备2内执行的功能和/或处理指令。例如,处理器50可以能够处理在存储设备58中所存储的指令。处理器50的示例可以包括微处理器、控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者等同的离散或集成逻辑电路中的一个或多个。
[0037]存储设备58可以被配置成在操作期间存储计算设备2内的信息。存储设备58在一些示例中被描述为计算机可读存储介质。在一些示例中,存储设备58是暂时存储器,这表示存储设备58的主要目的不是长期存储。存储设备58在一些示例中被描述为易失存储器,意味着当关闭计算机时存储设备58不保存已存储的内容。易失存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)以及现有技术中已知的其他形式的易失存储器。在一些示例中,存储设备58被用于存储用于由处理器50执行的程序指令。存储设备58在一个示例中是由在计算设备2上运行的软件或者应用(例如辅助键盘模块10)使用以在程序执行期间暂时存储信息。
[0038]存储设备58在一些示例中还包括一个或多个计算机可读存储介质。存储设备58可以被配置成存储比易失存储器更大量的信息。存储设备58可以进一步被配置用于信息的长期存储。在一些示例中,存储设备58包括非易失性存储元件。这些非易失性存储元件的示例包括磁性硬盘、光盘、软盘、快闪存储器或者电可编程存储器(EPROM)或者电可擦除可编程存储器(EEPROM)的形式。
[0039]计算设备2在一些示例中还包括一个或多个通信单元54。计算设备2在一个示例中利用通信单元54经由诸如一个或多个无线网络的一个或多个网络与外部设备进行通信。通信单元54可以是网络接口卡,诸如以太网卡、光收发器、射频收发器或者任何其他类型的能够发送和接收信息的设备。这种网络接口的其他示例可以包括蓝牙、3G和WiFi无线电计算设备以及通用串行总线(USB)。在一些示例中,计算设备2利用通信单元54来与诸如服务器的外部设备进行无线通信。
[0040]计算设备2在一个示例中还包括一个或多个输入设备52。输入设备52在一些示例中被配置成通过触觉、音频或者视频反馈从用户接收输入。输入设备52的示例包括存在敏感显示器、存在敏感输入设备、鼠标、键盘、语音响应系统、视频相机、麦克风或者其他任何类型的用于检测来自用户的命令的设备。在一些示例中,存在敏感显示器包括触摸敏感屏幕。
[0041]—个或多个输出设备56也可以被包括在计算设备2中。输出设备56在一些示例中被配置成使用触觉、音频或者视频刺激向用户提供输出。输出设备56在一个示例中包括存在敏感显示器、声卡、视频图形适配器卡或者任何其他类型的用于将信号转换成人类或者机器可理解的适当形式的设备。输出设备56的另外示例包括扬声器、阴极射线管(CRT)监视器、液晶显示器(LCD)或者任何其他类型的能够生成用户可理解的输出的设备。
[0042]在一些示例中,UI设备4可以包括输入设备52和/或输出设备56的功能。在一个示例中,UI设备4可以是触摸敏感屏幕。在图2的示例中,UI设备4可以是存在敏感显示器。在一些示例中,存在敏感显示器可以检测在存在敏感显示器的屏幕处和/或其附近的对象,诸如输入单元(例如用户的手指、笔、触控笔等)。作为一个示例范围,存在敏感显示器可以检测在存在敏感显示器的物理屏幕的2英寸或更短之内的输入单元。存在敏感显示器可以确定检测到输入单元处的存在敏感显示器的一个或多个位置(例如(X,y)坐标)。在另一示例范围内,存在敏感显示器可以检测距离存在敏感显示器的物理屏幕6英寸或更近的对象,并且其他示例范围也是可能的。存在敏感显示器可以使用电容、电感和/或光学识别技术来确定由输入单元所选择的显示器的位置。在一些示例中,存在敏感显示器使用如关于输出设备56所述的触觉、音频或者视频刺激而向用户提供输出。
[0043]计算设备2可以包括操作系统62。操作系统62在一些示例中控制计算设备2的组件的操作。例如,操作系统62在一个示例中促进UI模块6、手势模块8和/或辅助键盘模块10与处理器50、通信单元54、存储设备58、输入设备52和输出设备56的通信。UI模块6、手势模块8和/或辅助键盘模块10可以每个包括由计算设备可执行的程序指令和/或数据。作为一个示例,辅助键盘模块10可以包括使得计算设备2执行在本公开中所述的操作和动作中的一个或多个的指令。
[0044]计算设备2可以包括语言模型66。语言模型66可以包括词典。在一些示例中,词典可以包括词的列表并且可以包括有关所列词的附加信息。词典可以通过一个或多个数据结构表示,诸如由阵列、列表、树或者其他数据结构中的一个或多个表示。例如,语言模型66可以包括以特里数据结构存储的词典。在一些示例中,语言模型66可以是在计算设备2上所安装的默认词典。在一些示例中,语言模型66可以包括在计算设备2上所安装的一组预定义短语。在其他示例中,语言模型66可以包括多个词典源,其可以被存储在计算设备2处或者被存储在可经由一个或多个通信信道访问计算设备2的一个或多个远程计算设备处。在一些示例中,语言模型66可以被实施在计算设备2的固件中。
[0045]语言模型66可以包括语言模型频率信息,诸如η元语言模型。η元语言模型可以基于序列中之前的项为项的连续序列中的项X1 (字母、词、标点符号或者其他定界符)提供概率分布(即Ρ(Χι|Χι (nl),...,Xl O)。例如,双元语言模型(η元模型,其中η = 2)可以提供字母“i”跟随在字母序列“th”之后的概率。作为另一示例,双元语言模型可以提供词“than”跟随在词“better”之后的概率。在一些示例中,语言模型66包括带有集成的语言模型频率信息的词典特里。例如,词典特里的每个节点可以包括字母和概率值的表示。
[0046]本公开的技术可以提高用户能够将文本输入计算设备中的速度。使用本公开的技术,计算
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1