CN106201324B - 动态定位的屏幕上键盘 - Google Patents
动态定位的屏幕上键盘 Download PDFInfo
- Publication number
- CN106201324B CN106201324B CN201610489534.4A CN201610489534A CN106201324B CN 106201324 B CN106201324 B CN 106201324B CN 201610489534 A CN201610489534 A CN 201610489534A CN 106201324 B CN106201324 B CN 106201324B
- Authority
- CN
- China
- Prior art keywords
- key
- touch
- user input
- keys
- virtual keyboard
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
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/016—Input arrangements with force or tactile feedback as computer generated output to the user
-
- 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/0489—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 dedicated keyboard keys or combinations thereof
- G06F3/04895—Guidance during keyboard input operation, e.g. prompting
-
- 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
- G06F3/0237—Character input methods using prediction or retrieval techniques
-
- 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/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0414—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means using force sensing means to determine a position
-
- 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/04883—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 for inputting data by handwriting, e.g. gesture or text
-
- 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2354/00—Aspects of interface with display user
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)
- User Interface Of Digital Computer (AREA)
- Position Input By Displaying (AREA)
Abstract
本发明涉及一种动态定位的屏幕上键盘。触摸敏感显示表面具有触摸电容和振动传感器。该表面允许用户将他们的手指停留在屏幕上键盘上的键上并且如在常规的键盘上那样键入。当用户将他们的手指放在触摸屏上时,***将屏幕上键盘重新定位到手指停留的位置。触摸传感器向处理器报告触摸的各键的信号强度水平,但是,在检测到相应的“敲击”(即,振动)之前,处理器不发出键击。当检测到敲击时,处理器参照出现敲击的时刻之前、之中和/或紧接着之后的触摸电容传感器的状态。屏幕上键盘键的尺寸、位置和取向被动态设定为由用户通过将他们的手指暂时停留在虚拟原位行上初始化原位行定义事件确定。
Description
相关申请信息
本申请是为国际申请号为PCT/US2011/062721、国际申请日为2011年11月30日、中国国家阶段申请号为201180064220.5的发明专利申请的分案申请。
技术领域
本发明涉及允许用户将他们的手或手指停留在表面上而不导致事件致动的平滑触摸敏感表面。更特别地,触摸表面是呈现用于输入文本和命令的屏幕上键盘的动态显示器。
背景技术
作为用于将来自人的文本和数据输入到机器的主要方法的当代键盘的起源追溯至19世纪早期的打字机。随着计算机的发展,使打字机键盘适于用作用于输入文本和数据的主要方法是自然的进展。虽然在打字机上并随后在计算机键盘上实现的键盘已从机械式发展到电气式并最终发展到电子式,但是,键盘自身的尺寸、位置和机械本质基本上保持不变。
计算机已从“台式”配置发展到称为“膝上型”、“笔记本”、“网本”或“便携式”的更便携的配置。这些膝上型计算机一般具有一体化为装置的一部分的机械键盘。这种类型的一体化的键盘具有在尺寸和感觉上与一般与台式计算机结合使用的独立键盘类似的优点。但是,包括键盘导致便携式计算机具有两个部分:显示器和键盘。大多数的便携式计算机型号加入具有形成基座的键盘部分和形成盖子的显示部分的“蛤壳”设计。因此,在便携式计算机上存在键盘导致它大致是它另外需要的尺寸的两倍。
在过去的十年,出现了一般称为“平板”计算机的新形式的便携式计算装置。这种类型的便携式计算装置一般不具有一体化的键盘,而仅仅依赖于作为人-计算机界面的主要手段的触摸。许多人认为,平板、最终与日常生活成为一体的“触摸表面”在将来将变为人与“计算机”相互联系的标准方式。
虽然这种新形式的触摸中心计算具有许多优点,但是,一个明显的缺点是缺少键盘。虽然外部物理键盘一般可与触摸屏计算机连接,但是,它常常使装置的目的落空并否定其优于常规的膝上型计算机的优点。
随着计算装置向基于触摸的用户界面发展,键盘思想的自然发展必须将其带入计算机显示的真实世界。
Auer等在美国专利No.4725694中描述了在计算机的触摸敏感屏上显示模拟键盘的一个或多个图像并且响应模拟键的触摸产生适当的控制信号的***。在该概念的后期改良中,以浮动于在计算机上运行的其它应用之上而不是占据屏幕的专用部分的方式显示键盘的图像。用户通过在其上引导光标指针或者直接通过使用手指或触笔通过触摸屏触摸键来与该“屏幕上键盘”或“虚拟键盘”交互作用。
诸如Auer描述的屏幕上键盘主要用于缺少标准键盘的装置,诸如某些公共信息电话亭和个人数字助理(PDA)、智能电话、写字板和太小以至于不能容纳物理键盘的其它手持计算机。具有无法使用常规的电气机械键盘的物理挑战的个人也经常使用屏幕上键盘。
诸如PDA和智能电话的更小的触摸屏装置不具有足够的屏幕尺寸以允许人通过使用多手指触摸键入的常规方法在屏幕上键盘上键入。结果,很多发明寻求提供需要比常规的键盘布局小的物理空间的替代性文本输入方法。
Grover等在美国专利No.5818437中描述了通过在各键上分配多个字母减少需要的不同的键的数量的***。这允许更少的键并因此占用更少的屏幕上空间。其它类似地瞄准减少屏幕上键盘的尺寸和/或使得更容易在较小的屏幕上输入文本的发明包括:Lee,美国专利No.6292179;Kaehler,美国专利No.5128672;Vargas,美国专利No.5748512;Niemeier,美国专利No.5574482;Van Kleeck,美国专利No.6008799;和Perlin,美国专利No.6031525。
虽然这些发明具有用于在小的屏幕上键盘上键入文本的不同的益处,但是它们不能以与在常规键盘上键入的标准“十指”相当的速度键入文本。
为了提高键入速度,Robinson等在美国专利No.7277088描述了消除歧义算法当用户在屏幕上键盘的键上选择单词的各字母时允许用户不那么准确的***。允许不那么准确可能导致用户能够更快地键入。
Kushler等在美国专利No.7098896中描述了允许由用户停留在代表希望的单词的第一个字母的键上导致的单手指(或触笔)文本键入并然后在与触摸表面接触的同时在单词的各随后的字母的键之间滑动的***。这具有不用对于每个字母提升并停留在屏幕上键盘上的益处,由此加快文本键入。消除歧义算法允许用户在选择各字母时不准确,从而进一步加快速度。
作为由Kushler等描述的技术的商业化版本的被用于设定智能手机上的最快键入的世界记录。打破记录的个人以每分钟61个单词的速度输入规定的短语。虽然该速度是不寻常的,但是,假定它基于单手指键入,它仍远远落后于使用十指键入的可能的最快速度。
另一方法是使用声音识别***以通过言语发声输入文本。虽然该技术最近得到明显改善,但是,即使它100%准确地工作,通过言语发声输入的文本也经常不是用户所希望的(诸如在需要私密性或者考虑可听范围内的其它人时)。并且,因此,仍然需要通过一些类型的键盘模式键入文本的替代性的方式。
因此,对于可容纳十指键入的更大的触摸屏,希望找到用于键入更接近地匹配在常规的键盘上掌握的键入触笔的文本的更快的方式。在这样做时,存在三个主要的挑战:首先,克服10手指屏幕上键盘所需要的相对较多的显示空间。其次,克服机械键盘中常见的触觉反馈的缺少。第三,允许用户使他们的手指如常规的电气机械键盘那样停留在屏幕上键盘上的“原位行”位置上。
Marsden等在美国专利申请No.2009/0073128中通过允许用户使他们的手指停留在触摸敏感表面上并通过使用相关地工作的触摸和振动传感器检测意图的键按压克服该问题。但是,该方法假定键盘键处于固定的位置,并因此在便携式装置的动态显示器上占据明显的空间。并且,由于键的位置是固定的,因此,用户必须留心看到他们的手指敲击在正确的位置上。定位键的诸如凹口的触觉标记帮助用户在不看的情况下感觉键。但是,在触摸屏装置上放置触觉标记是不现实的。
常规的电气机械键盘长期使用“原位行”即用户在准备键入时摆放和停留他们的手指的键的概念。该概念对于掌握了不看键的10指键入的用户来说是特别重要的。通过摆放于原位行(包含使用在原位行上的某些键上发现的特殊的“标记”),用户知道将他们的手指移动到哪里以键入希望的字母、符号、数字或功能。这允许用户在不看他们的手指的情况迅速地键入,而可专心于他们创作的文本。
与上一代(那时,键入课程仅提供给希望寻求秘书技能职位的人)相比,计算机、电子邮件和文本消息在当今社会的盛行产生了更高的“触摸打字员”的百分比。事实上,现在在孩子的早期教育课题中常传授这种键盘输入技能。10指(或“触摸”)键入仍是用于创作文本的更快和更可靠的已知的方法。
发明内容
本发明提供允许用户将他们的手指停留于在触摸敏感屏上显示的屏幕上键盘的键上并且动态定义屏幕上键盘的位置、取向、形状和尺寸的***和方法。用户不必注意将他们的手指放在键上(一般会要求在所述键上的触觉标记),***动态地将屏幕上键盘的位置到用户的手指已停留的位置。
在本发明的一个方面中,处理定义“原位行定义事件”,它是由用户执行的导致***重新定义定位屏幕上键盘的原位行的操作。基于用户的操作动态建立该位置。
在本发明的另一方面中,原位行定义事件被定义为用户同时将两个手的所有四个手指停留在触摸敏感表面上预设的时间期间(例如,1秒)。
在本发明的另一方面中,原位行定义事件被定义为用户在触摸敏感表面上双击两个手的所有四个手指并然后在第二次敲击之后使它们停留在表面上。
在本发明的又一方面中,原位行定义事件被定义为用户将两个手的所有四个手指同时停留在触摸敏感表面上并然后短暂地向下按压它们。
这些操作(以下其它操作)由用户启动以向***指示用户的手指处于原位行停留位置。本发明的***然后因此使屏幕上键盘取向。注意,原位行上的键不需要处于连续的线上(在大多数的电气机械键上是这样)。而是,原位行上的各键的位置由通过触摸传感器感测的用户的八个手指在原位行定义事件中的位置定义,然后对于不是“原位行停留键”的键被外推。以这种方式,原位行可以沿两个单独的线,一个用于一个手位置,或者,甚至可以形成两条曲线。
注意,该方法要求本发明的***区分用户在触摸敏感显示表面上放下并停留他们的手指和用户要通过敲击虚拟键键入。在Marsden,美国专利申请No.2009/0073128中描述了这种方法。
一旦发生原位行定义事件,***就以多种方式向用户提供反馈。在本发明的一个方面中,***通过导致屏幕上键盘在用户的手指下出现提供虚拟反馈。在本发明的另一方面中,***提供可听的暗示。在本发明的又一方面中,***导致触摸屏短暂振动。
在本发明的一个方面中,根据用户的偏好,在发生键入的同时,屏幕上键盘保持连续可见。作为替代方案,屏幕上键盘在原位行定义事件之后变得透明。在本发明的另一方面中,屏幕上键盘变得半透明,以允许用户通过键盘看到下面的屏幕上的内容。
在本发明的又一方面中,当用户键入时,屏幕上键盘在可见和不可见之间循环。每当用户敲击“隐藏的”屏幕上键盘,屏幕上键盘短暂出现并在用户可设定的时间量之后隐褪。
在本发明的又一方面中,仅仅某些键在每个键击之后变得可见。变得暂时可见的键是最可能跟随紧挨着前面的文本输入次序(由存储于***中的字词数据库确定)的那些键。
在本发明的又一方面中,当手指停留于原位行位置上的用户用他们的停留的手指下压表面时,屏幕上键盘将变得暂时可见。
在本发明的又一方面中,当用户在触摸敏感区域外侧的外壳的边缘上执行诸如双敲击或者三重敲击的预定的操作时,屏幕上键盘变得可见。
在本发明的一个方面中,原位行停留键被定义为每个手的四个手指停留的八个键。在本发明的又一方面中,停留键可比八个键少,以允许用户可以不使用所有的八个手指。
在本发明的又一方面中,***根据特定手指沿意图方向的移动使意图的键不明确。例如,用户提升他们的无名指并轻微地向下移动它并且敲击。用户可能还没有移动足够远以到达相邻的键的虚拟位置,但是他们的意图很显然是选择它,原因是它们从它们的停留位置移动可定义的阈值距离并沿相邻的键的方向被敲击。即使在本例子可能没有在相邻的键上出现敲击,***也将选择它。
在本发明的又一方面中,***基于紧挨着之前的文本次序调整选择的各键的概率。该概率与在前面的段落中描述的敲击位置算法结合使用,以确定用户最可能敲击的键。
在本发明的又一方面中,当用户在屏幕上键盘上键入时,***自动地应对“用户漂移”。在不受益于各键的触感的情况下,用户很容易地在他们键入时轻微移动他们的手指。***通过比较意图的键的中心与用户敲击的实际位置跟踪该行为。如果在连续键事件的空间上检测到一致的漂移,那么***使键的位置漂移以因此适应漂移。并且,不是使得用户关心键处于哪里,而是***将键移动到已定位用户的手指的位置。
如果用户漂移太远以到达触摸敏感区域的脱离点,那么***用可听、视觉和/或振动暗示警告他们。
在本发明的另一方面中,方法和***监视处于便携式计算装置的表面上但不在触摸传感器的边界内的用户敲击。例如,用户可敲击装置的外壳的边缘以指示空格键致动。关于其它的敲击事件,***使来自触摸传感器和振动传感器的信号相关以确定敲击位置。当通过触摸传感器检测到信号的不存在时,***将事件识别为“外部敲击”(即,装置的表面上的敲击,但在触摸传感器的边界外面)。外部敲击根据它们在外壳上的位置产生唯一振动波形。这些波形的特性存储于数据库中,并被用于唯一地识别外部敲击的一般位置。外部敲击一旦被识别就可被分配给键盘功能(诸如空格或退格)。
附图说明
以下,参照以下的附图详细描述本发明的优选和替代性例子:
图1是表示根据本发明的实施例形成的示例性***的框图;
图2A~2F表示通过图1所示的***执行的示例性处理的流程图;
图3A是具有根据本发明的实施例形成的平坦表面虚拟键盘的平板装置的示意图;
图3B和图3C示出根据本发明的实施例形成的键盘显示器。
具体实施方式
图1表示用于提供数字字母输入的自适应屏幕上键盘用户界面的示例性装置100的框图。装置100包括向CPU(处理器)110提供输入的一个或多个触摸传感器120。当表面被接触时,触摸传感器120向处理器110通知接触事件。在一个实施例中,触摸传感器120或处理器110包含解释由触摸传感器120产生的原信号并且通过可见的数据端口通过使用已知的通信协议向处理器110传送信息的硬件控制器。装置100包括以与触摸传感器120类似的方式在表面被敲击时向处理器110传送信号的一个或多个振动传感器130。处理器110基于从传感器120、130接收的信号产生在显示器140(触摸表面)上呈现的键盘图像。扬声器150也与处理器110耦合,使得任何适当的听觉信号作为指导(例如,错误信号)被传递给用户。振动器155也与处理器110耦合,以向用户提供适当的触摸反馈(例如,错误信号)。处理器110与存储器160数据通信,该存储器160包含暂时和/或永久存储的组合以及只读和可写入存储器(随机存取存储器或RAM)、只读存储器(ROM)、诸如FLASH存储器、硬盘驱动、软盘等的可写入非易失性存储器。存储器160包括包含诸如操作***171、自适应屏幕上键盘(“OKS”)软件组件172和任何其它的应用程序173的所有程序和软件的程序存储器170。存储器160还包括包含字数据库181、用户选项和偏好的记录182和由装置100的任何要素接收的任何其它数据183的数据存储器180。
一旦基于来自传感器120、130的信号由处理器110检测原位行事件,处理器110就在显示器140上在用户的手指下面定位虚拟屏幕上键盘。当用户键入时,处理器110恒定地监视用户的手指的位置以及各键致动的敲击位置,并对各键(和整个键盘)的位置、取向和尺寸进行调整,以确保屏幕上键盘位于用户键入的位置。以这种方式,能够应对用户的“漂移”或者使他们的手指离开屏幕上键盘的原始位置。如果用户沿一个方向漂移得太远以到达触摸传感器区域的边缘,那么处理器110输出可听和/或触觉警告。
在任何时候,用户可通过初始化原位行定义事件(在上面描述)手动重新分配屏幕上键盘的位置。
在一个实施例中,当用户使他们的食指定位于一般称为“原位键”的键(典型的英语键盘上的F键和J键)上时,通过振动器155提供触觉反馈。在一个实施例中,通过对于左右使用稍有不同的频率的振动,当用户使他们的手指停留于键上时,发出瞬间的振动。以这种方式,当用户选择处理器110以不动态改变屏幕上键盘的位置时,用户可选择将他们的手移回固定的原位行位置。在另一实施例中,这些振动的强度可根据相对于固定的原位行的原位键的手指位置改变。
装置100允许用户在不看他们的手指或者虚拟键盘的情况下键入。因而,键盘不需要随时可见。这允许宝贵的屏幕空间用于其它的用途。
在一个实施例中,键盘的视觉外观在以下状态中的一个或多个之间改变:可见、部分可见、不可见和半透明。当出现原位行定义事件时或者当用户使他们的手指在不键入的情况下停留可设定的阈值时间量时,在视觉上出现全键盘。当用户开始键入时,键盘隐褪为不可见,直到用户执行包含但不限于原位行定义事件、暂停键入、同时按压四个手指或者一些其它的唯一识别手势的大量的操作中的任一个。在另一实施例中,键盘不隐褪为完全不可见,而是变得半透明,因此,用户仍可觉察键在哪里,但也可看到处于屏幕上键盘“下面”的屏幕上的内容。
在一个实施例中,键盘暂时“点亮”敲击的键以及以与到敲击的键的距离成比例的半透明方式紧包围敲击的键的键或者使得其可见。这在短时间内示出键盘的敲击的区域。
在一个实施例中,键盘变得“部分”可见,使得具有最高的下一个被选择概率的键与该概率成比例地点亮。只要用户敲击键,可能跟随的键就变得可见或者半可见。更可能被选择的键更可见,反之亦然。以这种方式,键盘“点亮”用户到最可能的下一键的路径。
在一个实施例中,通过用户在包围触摸敏感表面的外壳的外缘上执行敲击手势(诸如迅速连续的双重敲击或三重敲击)使得屏幕上键盘暂时可见。
可在用户界面程序中通过偏好设定由用户选择屏幕上键盘的视觉表现的各种模式。
图2A~2F表示由装置100执行的示例性处理。图2A~2F不是要完全详细描述本发明的软件的全部,而是出于解释的目的。
图2A表示由处理器100基于由OSK软件组件172提供的指令执行的处理200。在块206中,当首先开始处理200时,诸如最小停留时间、手指触摸阈值的数量、漂移距离阈值和键阈值的各种***变量被初始化。在块208中,处理200等待已在触摸屏的区域内出现接触的通知。然后,在块210中,基于来自传感器120、130中的一个或多个的信号,出现原位行检测。在图2B中更详细地描述原位行检测。在块212中,基于传感器信号确定要被显示的虚拟键盘的键的位置。在图2C中更详细地描述键位置确定。然后,在块216中,处理键激活(更多细节参见图2D和图2E)。在块218中,基于传感器信号检测用户的手指漂移。在图2F中更详细地描述手指漂移。然后,在块220中,基于在块210~218中进行的确定中的至少一个,在显示器140上呈现虚拟键盘。当用户移走他们的八个手指并然后与触摸屏接触时,处理200重复。
图2B表示原位行检测处理210。在决定块234中,处理210确定用户是否使他们的手指停留于触摸屏上最小的时间量(即,最小停留阈值)。在决定块236中,处理210确定适当数量的手指是否停留于触摸表面上,由此启动原位行定义事件。如果不满足块234或236中的条件,那么处理210在不改变屏幕上键盘的位置的情况下退出。
当满足停留手指要求的时间和数量时,处理110确定停留手指的位置,见块240。然后在块242中确定KeySpaceIndex(或“KSI”)值。KSI被用于为用户的手指的尺寸和间隔定制屏幕上键盘。
KSI可在不同的原位行定义事件之间改变,即使是对于同一用户。在一个实施例中,每个手的所有四个手指停留于触摸表面上以启动原位行定义事件。在这种情况下,由下式给出KSI:
KSI=(平均停留键间隔)/(模型化标称间隔)=[(a+b+c)/3]/A=(a+b+c)/3A
这里,
A=键之间的模型化标称距离(一般为19mm)
a=停留键1和停留键2之间的测量距离
b=停留键2和停留键3之间的距离
c=停留键3和停留键4之间的距离
如果使用少于四个的停留手指以启动原位行定义事件(在存储于数据库中的一组用户偏好中被定义),那么可因此调整KSI式。在随后的处理中使用KSI。
标准屏幕上键盘的数据模型存储于***的存储器中。在该数据模型中,屏幕上键盘布局被分成两个部分:一般用右手键入的键和一般用左手键入的键。并且,各键与最可能键入该特定的键的手指停留的原位行停留键有关(定义为“有关停留键”)。各键的位置在数据模型中被定义为从其相关的停留键的相对测量。
用于确定各键的位置的示例性公式为:
Key(x′,y′)=KeyModel(x*KSI,y*KSI)
这里,
x=标称的存储的到有关停留键(RRK)的中心的x距离
y=标称的存储的到RRK的中心的y距离
两个或更多个键的修改的键位置可能重叠。如果出现这种情况,那么减小重叠键的尺寸,直到消除重叠。
单独地对于各停留键确定X-Y轴的取向。对于左右扇区中的每一个,曲线适合于该扇区中的停留的键。各键的X-Y轴然后取向为该键的中心上的曲线的切线(对于x轴)和正交切线(对于y轴)。
图2C表示分配键位置处理212。对于键盘的各键,重复处理212。在块252中,相对于形式[RestingKey,Δx,Δy]的其相关停留键位置,从数据库181检索各键的预先存储的位置。例如,代表字母“R”的键与停留键L1(一般为字母“F”)相关,并且位于L1的左上方。因此,其数据组是[L1,-5,19](以毫米为单位进行测量)。从数据库181对于各键检索类似的数据。在块254中,通过将从数据库检索的偏移乘以KSI,对于各键计算新相对偏移。在块258中,然后通过将新的偏移加到在块254中确定的相关停留键的绝对位置上,确定各键的绝对坐标。在决定块260中,处理212测试以观察是否任何键重叠,如果是,那么在块262中调整它们的尺寸和位置,以消除任何重叠。然后,处理212返回处理200。
图2D表示处理键致动处理216,由此实际的键事件被确定和输出。处理216在测试是否出现了有效触摸敲击事件的决定块270中开始。如在Marsden等,美国专利申请系列No.2009/0073128中更完整地解释的那样,通过触摸传感器120和振动传感器130之间的相关关系,确定它。在块272中,通过应用键评分算法,为候选键评分。具有最高的分数的键然后在块274中被输出,并且处理216返回。
图2E表示从图2D的块272的键评分算法的处理。在块280中,由触摸传感器120和振动传感器130接收的信号被相关,以确定在哪里出现用户的敲击并将紧挨着相邻的键定义为“候选键”。通过考虑敲击区域周围的键(不是调整出现敲击的键),处理器110应对用户键入样式的不确定性。在块282中,处理272测试以观察用户是否从停留键移动他们的手指以键入。注意,在典型的键入样式中,甚至10手指触摸打字员也不恒定地随时停留所有的四个手指。因此,为了在有效的键上键入出现停留键的变化不是先决条件。但是,如在块284中解释的那样,如果候选键附近的停留键的状态没有出现变化(或者如它是候选键自身),那么可从这种变化获得有用的信息。在块284中,在块280中计算的检测状态变化的敲击附近的停留键与敲击的位置之间计算虚拟线。虚拟线延伸出敲击位置。在块284中,确定投影线穿过或经过的键,并且,处理器110因此增加这些键的分数。以这种方式,即使不直接在键上出现敲击位置,希望的键的方向的相对移动也与该键相关。在块288中,与存储于数据存储器181中的语言数据相比较,处理器110考虑键入的前面的单词和字符。这包括诸如字母对统计频率、部分匹配预测、词间预测和词内预测的通常已知的消除歧义方法。对于各候选键分配适当的评分。在块290中,确定具有代表用户的意图选择的最高计算概率的最高分数的候选键,并且处理272返回。
图2F表示用于适应当用户在键入时不注意地移动他们的手(或“漂移”)时的漂移检测处理218。处理218在块300中比较实际的敲击位置与显示的意图键的当前中心,并且将X坐标和Y坐标的差值存储为ΔX和ΔY。在块302中,将这些差值加到来自前面的键击的累积总值上。在决定块304中,处理器110测试任意的方向的累积差值是否超过称为“DriftThreshold”的预存储的变量(从用户偏好或存储于数据库182中的缺省数据限定)。如果超过阈值,那么处理器110在块308中自最后的位置定义事件将整个键盘的位置移动所有的Δs和ΔY的平均值。如果累积差值对于整个键盘不超过DriftThreshold,那么在块316中执行单个选择的键的类似的计算。在决定块318中,处理器110测试该单个键的累积差值是否在块316之后超过用户定义的键阈值,并且,如果是,那么在块320中调整其位置。与相关的键的当前位置相比,键阈值是敲击的位置的允许误差量。当超过键阈值时,移动相关的键。在块308之后,如果块318中的决定是No,或者,在块320之后从而在块310中,那么处理器110测试是否新位置中的任一个与任何其它的键重叠以及整个键盘是否仍处于触摸传感器的边界内。如果对于任意的测试存在任何冲突,那么在块312中用“最佳拟合”算法校正它们,并然后退出。并且,如果没有发现冲突,那么处理218返回。
即使本发明的方法允许用户在屏幕上键盘不可见的情况下键入,也仍然存在用户希望观察键的时候。例如,如果他们不知道哪个键与希望的字符相关,或者在某些字符位于单独的数字和/或符号层上的情况下。其它的用户不能通过从记忆知道每个字符处于哪里的死记硬背键入。对于这些情况以及出现于其它的原因,在视觉上在装置的屏幕上呈现屏幕上键盘是十分重要的。
根据存储的用户的偏好,屏幕上键盘可在进行键入时连续地保持可见。作为替代方案,屏幕上键盘在原位行定义事件之后变得透明。在一个实施例中,屏幕上键盘变得半透明,以允许用户通过键盘看到下面的屏幕上的内容。
在键盘被设为不可见的情况下,可在整个屏幕上显示其它的内容。可存在诸如按钮的其它的用户界面元素,这些用户界面元素看起来是活动的而又位于不可见屏幕上键盘下面。在这种情况下,装置100拦截指向这种元素的用户输入,并导致屏幕上键盘变得可见,从而提醒用户它事实上是存在的。用户然后可通过按压键盘上的相应的键选择“收起”键盘。注意,收起键盘与使得其不可见不同。收起键盘意味着一起“最小化”它以使其离开屏幕,这是触摸屏装置的一般实际。
在一个实施例中,屏幕上键盘在用户键入时在可见和不可见之间循环。每当用户敲击“隐藏的”屏幕上键盘,屏幕上键盘短暂出现并在用户可设定的时间量之后隐褪。
在一个实施例中,仅仅某些键在每个键击之后变得可见。变得暂时可见的键是最可能跟随紧挨着前面的文本输入次序(由存储于***中的字词数据库确定)的那些键。
在一个实施例中,当手指停留于原位行位置上的用户基于由触摸传感器120感测的变化用他们的停留的手指下压表面时,屏幕上键盘将变得暂时可见。
在一个实施例中,当用户在触摸敏感区域外侧的外壳的边缘上执行诸如双敲击或者三重敲击的预定的操作时,屏幕上键盘变得可见。
当存在一般在视觉上由***克拉(或类似的指示)代表的文本***条件(由操作***171指示)时,屏幕上键盘如果被设为出现则一般将出现。
在一个实施例中,当用户将他们的手指定位停留于F和J原位行键上时,通过提供触觉反馈(诸如在触摸屏上引起的振动)模拟一般在这些键上使用的触觉标记。以这种方式,用户可对于键盘选择在同一屏幕上位置上保持静止,又仅通过触摸(不看)找到他们的手的正确的位置。
为了增加键盘的精度,使用统计语言模型。如果触摸/敲击事件产生不确定键选择,那么由处理器110调用统计模型以提供用户最可能希望的键。
该“消除不确定”与用于其它的文本输入***的其它方法不同,原因是,在本发明中,必须匆忙进行关于希望的键的永久决定。不存在可向用户显示词选择的词尾描写和修改的输出。事实上,每当用户敲击键,就必须做出决定并且必须向目标应用程序(即,文本键入程序)发送键致动。
可以使用几个统计分析方法:部分匹配字母预测、当前词预测、下一词预测和联合下一词预测。在以下的部分中解释它们。
通过部分匹配预测
公知的最初为在这种情况下有用的数据压缩发明的算法是通过部分匹配预测(或PPM)。当应用于键盘时,给定已出现的字符串(具有长度k),PPM算法被用于预测最可能的下一字符。用k的值计算时间和资源生长指数。因此,最好使用最低而又产生可接受的消除不确定结果k值。
作为例子,使k=2。本发明的处理追忆已键入的前面的两个字符,并然后通过要键入的最可能下一字符的数据库比较概率。例如,下面的带下划线的字母表示被用于预测下一最可能字母的字母:
An
An
An e
An ex
An exa
An exam
An examp
An exampl
An example
对于可能的键A的总数,该算法所需要的数据存储为:
Ak+1
对于典型的屏幕上键盘,该处理消耗小于1MB的数据。
对于各语言构建统计模型(虽然对于k具有较小的值);对于具有共同的根的语言,该表可类似。当用户键入文本时,模型也动态更新。以这种方式,***掌握用户键入模式并且随时间更准确地预测它们。
以通过操作***控制面板配置的语言特定字典的形式提供语言变体。控制面板从***场所识别当前用户的语言,并选择适当的预测字典。通过使用还提供新词识别和通常的单词使用评分的连续运行的“systray”应用,询问字典。
在一个实施例中,使用由语言中的常用词构成的数据库,以将意图的键致动消除不确定。算法仅比较由此这样远地键入的字母与单词数据库,并然后基于数据库中的匹配预测最可能的下一字母。
例如,比方说用户键入了“Hel”。单词数据库中的可能的匹配是:
Hello(50)
Help(20)
Hell(15)
Helicopter(10)
Hellacious(5)
各单词外面的数值代表归一化为100的它们的使用“频率”。(为了方便,本例子中的总频率总计达100;但是一般不是这种情况)。
最可能跟随“Hel”的候选字母是:
L(70)-对于单词“Hello”、“Hell”和“Hellacious”添加的概率
P(20)
I(20)
本例子是特别有用的,原因是,字母L、P和I均相互接近。用户可能甚至很可能敲击到不确定地相邻的几个键(例如,I、O、P或L)的位置上。通过增加单词预测,选择明显得到明确;在本例子中,显然的最可能的下一字母是“L”。
注意,单词预测算法的该实现与常规用于屏幕上键盘的算法不同,原因是它根本不是真正的单词预测***:它是使用单词数据库的字母预测***。
在一个实施例中,使用单词对以进一步明确最可能选择的键。在简单的单词预测中,不存在明确当前单词的第一字母的语境;它是完全不确定的。(对于单词的第二个字母,这种消除不确定稍微降低,对于单词的剩余部分,类似地降低)。通过考虑在紧挨着当前单词前面键入的单词,可明显降低单词的前几个字母的不确定性质;这被称为“下一单词预测”。
例如,如果刚刚键入的单词是“Cleankeys”,那么存储于数据库中的一般的下一单词可能是:
Keyboard(80)
Inc.(20)
Is(20)
Will(15)
Makes(10)
Touch(5)
如果用户对于下一单词的开始不确定地在I和K键之间敲击,那么下一单词预测算法可帮助消除不确定(在这种情况下,“K”将胜出)。
逻辑可指示可对于前面键入的k个单词实施考虑前面键入的单词的概念。例如,对于k=2,***可存储对于数据库中的每个单词具有第2程度的下一单词(或下下单词)的数据库。换句话说,组合追忆前两个单词以确定最可能跟随的单词。但是,关于空间和计算力,这很快变得不灵活。存储这么多的组合是不实际的,也不是非常有用的,原因是大多数的这些组合从不出现。
但是,存在值得考虑的重要的例外:具有非常多的下一单词候选的单词。对于称为连词和冠词的语句的部分,是这种情况。
英语中的七个最常用的连词是:
and,but,or,for,yet,so,nor。
英语中的冠词是:
the,a,an。
通过特殊化这10个单词,***改善第一字母预测。
考虑短语:kick the_
由于数据库中的每个名词最可能是冠词“the”的下一单词候选,因此,很少有用途偏离下一单词预测算法。但是,如果保持冠词“the”之前的“kick”的语境,那么获得更丰富的下下单词选择。有效地,新的“单词”存储于称为“kick_the”的数据库中。该新的实体具有以下的下一单词候选:
Ball(50)
Bucket(20)
Habit(15)
Can(10)
Tire(5)
因此,可以确信地预测跟随短语“kick_the_”的最可能的下一字母是字母“B”。
任何与连词或冠词组合找到的单词与语言的这些部分组合以形成新的单词实体。
这里描述的逐字母预测***和基于单词的预测***之间的明显的差别是动态再教育各字母的预测的能力。例如,如果猜测对于特定的键是错误的并且希望的单词随后变得清楚,那么算法抛弃它对于不正确的字母进行的选择,并基于新确定的目标单词对于剩余的字母应用预测。
例如,
随着单词发展,表示初始的字母“B”应是“H”(这些字母在qwerty键盘布局上彼此相邻,并且很容易与其他弄错)。但是,不是完全托付于该第一字母并且仅考虑以“B”开始的单词,***在预测第二字母时仍考虑其它的候选。因此,B、H和G被视为随后的键的第一字母。以这种方式,错误不被传播,并且用户仅需要进行一次校正而不是可能进行许多次的校正。
因此,对于键入的各新的键,相邻的键以及其它的不确定的候选在确定随后的字母时被视为可能。
当出现错误并且用户退格并且校正它时,***可将数据反馈到算法中并因此进行调整。
例如,用户不确定地键入键盘的中间的键,并且评分算法指示可能的候选是“H”、“J”和“N”;这三个字母的分数落入可接受的范围内,并且,取得最佳的分数。在本例子中,比方说算法将字母“J”返回为最可能的候选,因此它是键盘输出的键。紧接着其之后,用户明确地键入<退格>和“H”,因此校正错误。
该信息被反馈到评分算法,该评分算法在初始键入不明确的键时察看哪个子算法得分比“J”高的“H”。这些算法的加权增加,因此,如果同一不明确输入再一次发生,那么字母“H”会被选择。以这种方式,直接基于用户校正提供反馈循环。
当然,用户可能自身键入不是算法的结果的错误;它正确地输出用户所键入的。因此,当确定是否应初始化用户校正反馈循环时必须小心。它一般仅在讨论中的键不明确时出现。
用户可设定选项可允许键盘发出退格并允许新的字母校正明显错误的单词。在以上的例子中,当预测器确定仅有的逻辑单词选择是“habit”时,键盘可发出退格,将“b”变为“h”,并且重新发出随后的字母(甚至可能整个单词)。
由于太多的因素导致键的明确,因此,潜在地向键的候选资格添加所有的算法。该方法被称为评分;所有算法被加权并然后被加在一起。加权动态改变,以将评价算法调整到用户的键入样式和环境。
图3A表示代表在其面向前的表面上具有根据本发明的实施例的设计和使用的触摸敏感显示器352和键盘354的典型的手持平板计算机350的示意图。键盘354当根据本发明被使用时,产生输出到文本显示区域358的文本***位置360的文本。本申请书中的术语“键盘”指的是在触摸和敲击敏感表面上实现的任何键盘,包括在触摸敏感显示器上呈现的键盘。键盘354表示由用户在各单个键上选择的各语言的字母表的字母,这些字母以在大多数的键盘上发现的标准“QWERTY”排列被配置。
在一个实施例中,根据用户的输入行为自适用地改变键盘的取向、位置和尺寸(以及各单个键)。当用户以一定的方式使他们的手指停留于触摸表面352上时,***将键盘354移动到由停留手指确定的位置。当用户要在键盘354上驱动键时,他们通过提升他们的手指并用不觉察的力敲击表面352“敲击”希望的键。在触摸传感器区域352外面的区域362、364上出现的用户敲击被振动传感器检测,并且也可被分配给诸如退格条的键盘功能。
不存在触摸传感器信号事实上是具有零值的信号,并且,当与敲击(或振动)相关时,传感器可被用于唯一地识别敲击位置。在一个实施例中,诸如在区域362、364上指示的触摸传感器区域352外面的特定区域的振动信号是唯一的,并且通过***存储于数据库中。当结合敲击事件出现触摸信号的不存在时,***比较敲击的振动特性与存储于库中的那些,以确定外部敲击的位置。在一个实施例中,下部外部边界区域362被分配给空格功能,而右部外部边界区域364被分配给退格功能。
图3B是代表示例性的虚拟屏幕上键盘370的示意图。键盘370被分成两半。左面一半372和右面一半374(与用户的左右手相关)。两个单独的半区不相互对准。用户一般停留的八个键378根据一般对于键使用哪个手指被标黑(例如,L1代表左手的食指,L4代表左手的小指,等等)。所有其它的非原位行键由表示哪个手指一般用于通过使用常规的触摸键入技术键入该键的标签表示。但应注意,存在许多不利用图3B所示的手指放置的键入样式,并且,这里包括的那些标签仅是出于解释的目的。
键盘372的左面一半表示所有的键沿水平行对准,如它们在常规的电气机械键盘上那样。在右面一半374所示的一个实施例中,原位行键沿圆弧分散,以更好地配合用户的四个手指的正常停留位置。非原位行键类似地根据它们与原位行停留键的相对位置分散。并且,在一个实施例中,各键的尺寸也可根据用户选择键的统计概率改变(概率越高,则键越大)。
图3C是代表根据本发明的实施例以某角度取向的虚拟屏幕上键盘384的示意图。用户可使他们的手390在他们希望的任何位置和取向上停留于典型的手持平板计算机394的触摸敏感表面392上。在这种情况下,手与正常情况相比进一步分开并且以装置394的直边为基准以某角度取向。用户启动指示“原位行定义事件”的操作,该操作包含但不限于以下操作:停留所有的八个手指短暂的用户可限定的时间;同时在表面392上双敲击所有的八个手指并然后使它们停留于表面392上;或者在八个手指停留于表面392上同时下压所有的八个手指。在另一实施例中,不需要所有的八个手指以启动原位行定义事件。例如,如果某人没有中指,那么可仅通过手上的三个手指启动原位行定义事件。这里,用户使他们的手290以某角度停留于平板计算机394上,由此导致计算机394的处理器产生并以某角度显示虚拟屏幕上键盘384。
Claims (24)
1.一种用于信息处理的方法,包括:
在具有触摸敏感显示器和与所述触摸敏感显示器耦合的多个触摸传感器的电子设备处:
基于由所述多个触摸传感器产生的信号检测原位行定义事件;
响应于检测到所述原位行定义事件:
确定所述触摸敏感显示器上用于显示虚拟键盘的多个键中的每一个键的相应位置;
在所述触摸敏感显示器上呈现所述虚拟键盘,其中所述虚拟键盘的所述多个键中的每一个键被显示在所述触摸敏感显示器上每一个确定的相应位置处;
检测所述虚拟键盘处的用户输入;
确定所述用户输入对应于所述虚拟键盘的所述多个键中的第一键;
检测所述虚拟键盘处的后续用户输入;
响应于检测到所述后续用户输入:
确定所述后续用户输入是不明确的;
至少部分地基于所述第一键与存储的语言数据的比较,来预测所述用户输入至少所述第一键和所述后续用户输入的意图是什么;
基于所述用户输入至少所述第一键和所述后续用户输入的意图是什么的所述预测,确定所述后续用户输入与所述虚拟键盘的所述多个键中的第二键对应;以及
修改所述虚拟键盘的所述多个键中的至少一个键的视觉特性,并且使用修改的视觉特性呈现所述至少一个键。
2.根据权利要求1所述的方法,其中修改所述至少一个键的视觉特性包括:
至少部分基于所述第一键的相应位置和所述触摸敏感显示器上与所述用户输入对应的位置之间的位置的第一改变,确定第一漂移;以及
至少部分基于所述第一漂移超过第一预定阈值,修改所述第一键的所述确定的相应位置。
3.根据权利要求2所述的方法,还包括:
检测与所述虚拟键盘的所述多个键的第二键对应的附加用户输入;
至少部分基于所述第二键的相应位置和所述触摸敏感显示器上与所述附加用户输入对应的位置之间的位置的第二改变,确定第二漂移;
确定位置的所述第一改变和位置的所述第二改变的组合是否满足第二预定阈值;以及
至少部分基于确定位置的所述第一改变和位置的所述第二改变的组合满足所述第二预定阈值,修改所述虚拟键盘的所述多个键中的每一个键的所述确定的相应位置。
4.根据权利要求1所述的方法,其中修改所述至少一个键的视觉特性包括修改所述至少一个键的视觉特性和修改在所述虚拟键盘上与所述至少一个键相邻的第二键的视觉特性。
5.根据权利要求4所述的方法,其中所述至少一个键是所述第一键。
6.根据权利要求1所述的方法,其中所述至少一个键与所述第一键相邻并且与所述第一键不同。
7.根据权利要求1所述的方法,其中修改所述至少一个键的视觉特性包括修改与所述至少一个键相关联的显示尺寸。
8.根据权利要求1所述的方法,其中修改所述至少一个键的视觉特性包括修改与所述至少一个键相关联的显示取向。
9.一种非暂态计算机可读存储介质,其存储用于由电子设备的一个或多个处理器运行的一个或多个程序,所述电子设备具有(i)触摸敏感显示器和(ii)与所述触摸敏感显示器耦合的多个触摸传感器,所述一个或多个程序包括指令,所述指令用于:
基于由所述多个触摸传感器产生的信号检测原位行定义事件;
响应于检测到所述原位行定义事件:
确定所述触摸敏感显示器上用于显示虚拟键盘的多个键中的每一个键的相应位置;
在所述触摸敏感显示器上呈现所述虚拟键盘,其中所述虚拟键盘的多个键中的每一个键被显示在所述触摸敏感显示器上每一个确定的相应位置处;
检测所述虚拟键盘处的用户输入;
确定所述用户输入对应于所述虚拟键盘的所述多个键中的第一键;
检测所述虚拟键盘处的后续用户输入;
响应于检测到所述后续用户输入:
确定所述后续用户输入是不明确的;
至少部分地基于所述第一键与存储的语言数据的比较,来预测所述用户输入至少所述第一键和所述后续用户输入的意图是什么;
基于所述用户输入至少所述第一键和所述后续用户输入的意图是什么的所述预测,确定所述后续用户输入与所述虚拟键盘的所述多个键中的第二键对应;以及
修改所述虚拟键盘的多个键中的至少一个键的视觉特性,并且使用修改的视觉特性呈现所述至少一个键。
10.根据权利要求9所述的非暂态计算机可读存储介质,其中修改所述至少一个键的视觉特性包括:
至少部分基于所述第一键的相应位置和所述触摸敏感显示器上与所述用户输入对应的位置之间的位置的第一改变,确定第一漂移;以及
至少部分基于所述第一漂移超过第一预定阈值,修改所述第一键的所述确定的相应位置。
11.根据权利要求10所述的非暂态计算机可读存储介质,所述一个或多个程序还包括用于以下的指令:
检测与所述虚拟键盘的所述多个键的第二键对应的附加用户输入;
至少部分基于所述第二键的相应位置和所述触摸敏感显示器上与所述附加用户输入对应的位置之间的位置的第二改变,确定第二漂移;
确定位置的所述第一改变和位置的所述第二改变的组合是否满足第二预定阈值;以及
至少部分基于确定位置的所述第一改变和位置的所述第二改变的组合满足所述第二预定阈值,修改所述虚拟键盘的所述多个键中的每一个键的所述确定的相应位置。
12.根据权利要求9所述的非暂态计算机可读存储介质,其中修改所述至少一个键的视觉特性包括修改所述至少一个键的视觉特性和修改在所述虚拟键盘上与所述至少一个键相邻的第二键的视觉特性。
13.根据权利要求12所述的非暂态计算机可读存储介质,其中所述至少一个键是所述第一键。
14.根据权利要求9所述的非暂态计算机可读存储介质,其中所述至少一个键与所述第一键相邻并且与所述第一键不同。
15.根据权利要求9所述的非暂态计算机可读存储介质,其中修改所述至少一个键的视觉特性包括修改与所述至少一个键相关联的显示尺寸。
16.根据权利要求9所述的非暂态计算机可读存储介质,其中修改所述至少一个键的视觉特性包括修改与所述至少一个键相关联的显示取向。
17.一种电子设备,包括:
触摸敏感显示器;
与所述触摸敏感显示器耦合的多个触摸传感器;
与所述触摸敏感显示器和所述多个触摸传感器信号通信的一个或多个处理器;以及
存储被配置用于由所述一个或多个处理器运行的一个或多个程序的存储器,所述一个或多个程序包括指令,所述指令用于:
基于由所述多个触摸传感器产生的信号检测原位行定义事件;
响应于检测到所述原位行定义事件:
确定所述触摸敏感显示器上用于显示虚拟键盘的多个键中的每一个键的相应位置;
在所述触摸敏感显示器上呈现所述虚拟键盘,其中所述虚拟键盘的多个键中的每一个键被显示在所述触摸敏感显示器上每一个确定的相应位置处;
检测所述虚拟键盘处的用户输入;
确定所述用户输入对应于所述虚拟键盘的所述多个键中的第一键;
检测所述虚拟键盘处的后续用户输入;
响应于检测到所述后续用户输入:
确定所述后续用户输入是不明确的;
至少部分地基于所述第一键与存储的语言数据的比较,来预测所述用户输入至少所述第一键和所述后续用户输入的意图是什么;
基于所述用户输入至少所述第一键和所述后续用户输入的意图是什么的所述预测,确定所述后续用户输入与所述虚拟键盘的所述多个键中的第二键对应;以及
修改所述虚拟键盘的多个键中的至少一个键的视觉特性,并且使用修改的视觉特性呈现所述至少一个键。
18.根据权利要求17所述的电子设备,其中修改所述至少一个键的视觉特性包括:
至少部分基于所述第一键的相应位置和所述触摸敏感显示器上与所述用户输入对应的位置之间的位置的第一改变,确定第一漂移;以及
至少部分基于所述第一漂移超过第一预定阈值,修改所述第一键的所述确定的相应位置。
19.根据权利要求18所述的电子设备,所述一个或多个程序还包括用于以下的指令:
检测与所述虚拟键盘的所述多个键的第二键对应的附加用户输入;
至少部分基于所述第二键的相应位置和所述触摸敏感显示器上与所述附加用户输入对应的位置之间的位置的第二改变,确定第二漂移;
确定位置的所述第一改变和位置的所述第二改变的组合是否满足第二预定阈值;以及
至少部分基于确定位置的所述第一改变和位置的所述第二改变的组合满足所述第二预定阈值,修改所述虚拟键盘的所述多个键中的每一个键的所述确定的相应位置。
20.根据权利要求17所述的电子设备,其中修改所述至少一个键的视觉特性包括修改所述至少一个键的视觉特性和修改在所述虚拟键盘上与所述至少一个键相邻的第二键的视觉特性。
21.根据权利要求20所述的电子设备,其中所述至少一个键是所述第一键。
22.根据权利要求17所述的电子设备,其中所述至少一个键与所述第一键相邻并且与所述第一键不同。
23.根据权利要求17所述的电子设备,其中修改所述至少一个键的视觉特性包括修改与所述至少一个键相关联的显示尺寸。
24.根据权利要求17所述的电子设备,其中修改所述至少一个键的视觉特性包括修改与所述至少一个键相关联的显示取向。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US41827910P | 2010-11-30 | 2010-11-30 | |
US61/418,279 | 2010-11-30 | ||
US201161472799P | 2011-04-07 | 2011-04-07 | |
US61/472,799 | 2011-04-07 | ||
CN201180064220.5A CN103443744B (zh) | 2010-11-30 | 2011-11-30 | 动态定位的屏幕上键盘 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180064220.5A Division CN103443744B (zh) | 2010-11-30 | 2011-11-30 | 动态定位的屏幕上键盘 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106201324A CN106201324A (zh) | 2016-12-07 |
CN106201324B true CN106201324B (zh) | 2019-12-13 |
Family
ID=46172548
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610489534.4A Active CN106201324B (zh) | 2010-11-30 | 2011-11-30 | 动态定位的屏幕上键盘 |
CN201180064220.5A Active CN103443744B (zh) | 2010-11-30 | 2011-11-30 | 动态定位的屏幕上键盘 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180064220.5A Active CN103443744B (zh) | 2010-11-30 | 2011-11-30 | 动态定位的屏幕上键盘 |
Country Status (5)
Country | Link |
---|---|
EP (2) | EP2646893A2 (zh) |
JP (2) | JP5782133B2 (zh) |
KR (1) | KR101578769B1 (zh) |
CN (2) | CN106201324B (zh) |
WO (2) | WO2012075197A2 (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103917278B (zh) | 2011-11-08 | 2017-05-17 | 索尼公司 | 传感器装置、分析装置与记录介质 |
JP2017084404A (ja) * | 2012-02-23 | 2017-05-18 | パナソニックIpマネジメント株式会社 | 電子機器 |
WO2014019085A1 (en) * | 2012-08-01 | 2014-02-06 | Whirlscape, Inc. | One-dimensional input system and method |
US8816985B1 (en) | 2012-09-20 | 2014-08-26 | Cypress Semiconductor Corporation | Methods and apparatus to detect a touch pattern |
EP2913325B1 (en) * | 2012-10-25 | 2021-04-21 | Shenyang Sinochem Agrochemicals R & D Co., Ltd. | Substituted pyrimidine compound and uses thereof |
KR20150106397A (ko) | 2012-11-27 | 2015-09-21 | 톰슨 라이센싱 | 적응적 가상 키보드 |
EP2926220A1 (en) | 2012-11-27 | 2015-10-07 | Thomson Licensing | Adaptive virtual keyboard |
JP6165485B2 (ja) * | 2013-03-28 | 2017-07-19 | 国立大学法人埼玉大学 | 携帯端末向けarジェスチャユーザインタフェースシステム |
JP5801348B2 (ja) | 2013-06-10 | 2015-10-28 | レノボ・シンガポール・プライベート・リミテッド | 入力システム、入力方法およびスマートフォン |
US9483176B2 (en) * | 2013-07-08 | 2016-11-01 | Samsung Display Co., Ltd. | Method and apparatus to reduce display lag of soft keyboard presses |
JP6154690B2 (ja) * | 2013-07-22 | 2017-06-28 | ローム株式会社 | ソフトウェアキーボード型入力装置、入力方法、電子機器 |
US9335831B2 (en) | 2013-10-14 | 2016-05-10 | Adaptable Keys A/S | Computer keyboard including a control unit and a keyboard screen |
CN103885632B (zh) * | 2014-02-22 | 2018-07-06 | 小米科技有限责任公司 | 输入方法和装置 |
US10175882B2 (en) * | 2014-07-31 | 2019-01-08 | Technologies Humanware Inc. | Dynamic calibrating of a touch-screen-implemented virtual braille keyboard |
JP6330565B2 (ja) * | 2014-08-08 | 2018-05-30 | 富士通株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
CN104375647B (zh) * | 2014-11-25 | 2017-11-03 | 杨龙 | 用于电子设备的交互方法及电子设备 |
CN105718069B (zh) * | 2014-12-02 | 2020-01-31 | 联想(北京)有限公司 | 信息处理方法及电子设备 |
CN106155502A (zh) * | 2015-03-25 | 2016-11-23 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
JP6153588B2 (ja) * | 2015-12-21 | 2017-06-28 | レノボ・シンガポール・プライベート・リミテッド | 情報処理装置及びセンシングレイアウト更新方法並びにプログラム |
KR101682214B1 (ko) * | 2016-04-27 | 2016-12-02 | 김경신 | 전자잉크 키보드 |
US10234985B2 (en) | 2017-02-10 | 2019-03-19 | Google Llc | Dynamic space bar |
CN107704186B (zh) * | 2017-09-01 | 2022-01-18 | 联想(北京)有限公司 | 一种控制方法及电子设备 |
CN107493365A (zh) * | 2017-09-13 | 2017-12-19 | 深圳传音通讯有限公司 | 一种用于智能设备的拨号盘的切换方法及切换装置 |
US11159673B2 (en) * | 2018-03-01 | 2021-10-26 | International Business Machines Corporation | Repositioning of a display on a touch screen based on touch screen usage statistics |
US10725506B2 (en) * | 2018-08-21 | 2020-07-28 | Dell Products, L.P. | Context-aware user interface (UI) for multi-form factor information handling systems (IHSs) |
CN109582211B (zh) * | 2018-12-25 | 2021-08-03 | 努比亚技术有限公司 | 一种触控区适配方法、设备及计算机可读存储介质 |
JP2020135529A (ja) * | 2019-02-21 | 2020-08-31 | シャープ株式会社 | タッチパネル、複合機、プログラムおよびタッチパネルの制御方法 |
US11150751B2 (en) * | 2019-05-09 | 2021-10-19 | Dell Products, L.P. | Dynamically reconfigurable touchpad |
WO2021054589A1 (en) | 2019-09-18 | 2021-03-25 | Samsung Electronics Co., Ltd. | Electronic apparatus and controlling method thereof |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6525717B1 (en) * | 1999-12-17 | 2003-02-25 | International Business Machines Corporation | Input device that analyzes acoustical signatures |
JP2004341813A (ja) * | 2003-05-15 | 2004-12-02 | Casio Comput Co Ltd | 入力装置表示制御方法及び入力装置 |
CN1666170A (zh) * | 2002-07-04 | 2005-09-07 | 皇家飞利浦电子股份有限公司 | 自适应虚拟键盘 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4725694A (en) * | 1986-05-13 | 1988-02-16 | American Telephone And Telegraph Company, At&T Bell Laboratories | Computer interface device |
JP3260240B2 (ja) * | 1994-05-31 | 2002-02-25 | 株式会社ワコム | 情報入力方法およびその装置 |
US6278441B1 (en) * | 1997-01-09 | 2001-08-21 | Virtouch, Ltd. | Tactile interface system for electronic data display system |
KR100595926B1 (ko) * | 1998-01-26 | 2006-07-05 | 웨인 웨스터만 | 수동 입력 통합 방법 및 장치 |
US7768501B1 (en) * | 1998-05-01 | 2010-08-03 | International Business Machines Corporation | Method and system for touch screen keyboard and display space sharing |
EP1457864A1 (en) * | 2001-09-21 | 2004-09-15 | International Business Machines Corporation | INPUT APPARATUS, COMPUTER APPARATUS, METHOD FOR IDENTIFYING INPUT OBJECT, METHOD FOR IDENTIFYING INPUT OBJECT IN KEYBOARD, AND COMPUTER PROGRAM |
US6947028B2 (en) * | 2001-12-27 | 2005-09-20 | Mark Shkolnikov | Active keyboard for handheld electronic gadgets |
KR100537280B1 (ko) * | 2003-10-29 | 2005-12-16 | 삼성전자주식회사 | 휴대용 단말기에서 터치스크린을 이용한 문자 입력 장치및 방법 |
US20050122313A1 (en) * | 2003-11-11 | 2005-06-09 | International Business Machines Corporation | Versatile, configurable keyboard |
US20050190970A1 (en) * | 2004-02-27 | 2005-09-01 | Research In Motion Limited | Text input system for a mobile electronic device and methods thereof |
JP2006127488A (ja) * | 2004-09-29 | 2006-05-18 | Toshiba Corp | 入力装置、コンピュータ装置、情報処理方法及び情報処理プログラム |
US20060066590A1 (en) * | 2004-09-29 | 2006-03-30 | Masanori Ozawa | Input device |
JP4417224B2 (ja) * | 2004-10-25 | 2010-02-17 | 本田技研工業株式会社 | 燃料電池スタック |
US9019209B2 (en) * | 2005-06-08 | 2015-04-28 | 3M Innovative Properties Company | Touch location determination involving multiple touch location processes |
FR2891928B1 (fr) * | 2005-10-11 | 2008-12-19 | Abderrahim Ennadi | Clavier a ecran tactile universel multilingue et multifonction |
US7659887B2 (en) * | 2005-10-20 | 2010-02-09 | Microsoft Corp. | Keyboard with a touchpad layer on keys |
CN104571719B (zh) * | 2007-09-19 | 2018-05-22 | 苹果公司 | 可清洁的触摸及轻敲敏感表面 |
KR101352994B1 (ko) * | 2007-12-10 | 2014-01-21 | 삼성전자 주식회사 | 적응형 온 스크린 키보드 제공 장치 및 그 제공 방법 |
KR101456490B1 (ko) * | 2008-03-24 | 2014-11-03 | 삼성전자주식회사 | 터치 스크린 키보드 디스플레이 방법 및 그와 같은 기능을갖는 장치 |
TWI360762B (en) * | 2008-09-05 | 2012-03-21 | Mitake Information Corp | On-screen virtual keyboard system |
US8633901B2 (en) * | 2009-01-30 | 2014-01-21 | Blackberry Limited | Handheld electronic device having a touchscreen and a method of using a touchscreen of a handheld electronic device |
CN101937313B (zh) * | 2010-09-13 | 2019-11-12 | 中兴通讯股份有限公司 | 一种触摸键盘动态生成和输入的方法及装置 |
-
2011
- 2011-11-30 KR KR1020137016964A patent/KR101578769B1/ko active IP Right Grant
- 2011-11-30 EP EP11844754.9A patent/EP2646893A2/en not_active Withdrawn
- 2011-11-30 CN CN201610489534.4A patent/CN106201324B/zh active Active
- 2011-11-30 WO PCT/US2011/062721 patent/WO2012075197A2/en active Application Filing
- 2011-11-30 CN CN201180064220.5A patent/CN103443744B/zh active Active
- 2011-11-30 WO PCT/US2011/062723 patent/WO2012075199A2/en active Application Filing
- 2011-11-30 EP EP11844775.4A patent/EP2646894A2/en not_active Withdrawn
- 2011-11-30 JP JP2013542153A patent/JP5782133B2/ja active Active
-
2015
- 2015-07-16 JP JP2015142348A patent/JP6208718B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6525717B1 (en) * | 1999-12-17 | 2003-02-25 | International Business Machines Corporation | Input device that analyzes acoustical signatures |
CN1666170A (zh) * | 2002-07-04 | 2005-09-07 | 皇家飞利浦电子股份有限公司 | 自适应虚拟键盘 |
JP2004341813A (ja) * | 2003-05-15 | 2004-12-02 | Casio Comput Co Ltd | 入力装置表示制御方法及び入力装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2012075199A2 (en) | 2012-06-07 |
WO2012075197A2 (en) | 2012-06-07 |
EP2646894A2 (en) | 2013-10-09 |
CN103443744A (zh) | 2013-12-11 |
KR20140116785A (ko) | 2014-10-06 |
CN103443744B (zh) | 2016-06-08 |
JP6208718B2 (ja) | 2017-10-04 |
JP5782133B2 (ja) | 2015-09-24 |
WO2012075197A3 (en) | 2012-10-04 |
KR101578769B1 (ko) | 2015-12-21 |
WO2012075199A3 (en) | 2012-09-27 |
CN106201324A (zh) | 2016-12-07 |
EP2646893A2 (en) | 2013-10-09 |
JP2014514785A (ja) | 2014-06-19 |
JP2015232889A (ja) | 2015-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106201324B (zh) | 动态定位的屏幕上键盘 | |
US10908815B2 (en) | Systems and methods for distinguishing between a gesture tracing out a word and a wiping motion on a touch-sensitive keyboard | |
US9110590B2 (en) | Dynamically located onscreen keyboard | |
US10126942B2 (en) | Systems and methods for detecting a press on a touch-sensitive surface | |
CN109120511B (zh) | 基于特征的自动校正方法、计算设备和*** | |
JP4527731B2 (ja) | 自動訂正機能を備えた仮想キーボードシステム | |
US9104312B2 (en) | Multimodal text input system, such as for use with touch screens on mobile phones | |
US9547430B2 (en) | Provision of haptic feedback for localization and data input | |
US9547375B2 (en) | Split virtual keyboard on a mobile computing device | |
US8300023B2 (en) | Virtual keypad generator with learning capabilities | |
US20150067571A1 (en) | Word prediction on an onscreen keyboard | |
US20110063231A1 (en) | Method and Device for Data Input | |
US20160077733A1 (en) | Method and device having touchscreen keyboard with visual cues | |
US20150355727A1 (en) | Input method and apparatus of circular touch keyboard | |
US20130285926A1 (en) | Configurable Touchscreen Keyboard | |
EP2954398B1 (en) | Gesture keyboard input of non-dictionary character strings | |
JP2006524955A (ja) | タッチスクリーン及び縮小型キーボードのための曖昧でないテキスト入力方法 | |
Walmsley et al. | Disambiguation of imprecise input with one-dimensional rotational text entry | |
EP2660692A1 (en) | Configurable touchscreen keyboard |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |