《用于检测和定位接触和振动敏感平坦表面上的按键事件的方法.pdf》由会员分享,可在线阅读,更多相关《用于检测和定位接触和振动敏感平坦表面上的按键事件的方法.pdf(22页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103154860 A(43)申请公布日 2013.06.12CN103154860A*CN103154860A*(21)申请号 201180039270.8(22)申请日 2011.06.2861/359,235 2010.06.28 USG06F 3/03(2006.01)G06F 3/02(2006.01)(71)申请人清洁之匙公司地址加拿大艾伯塔(72)发明人 RJ玛尔斯登 S霍勒(74)专利代理机构中国国际贸易促进委员会专利商标事务所 11038代理人叶勇(54) 发明名称用于检测和定位接触和振动敏感平坦表面上的按键事件的方法(57) 摘要用于使得能够使用固。
2、定于触敏表面上的振动传感器以同时检测和定位表面上的手指接触事件的系统和方法。本发明特别区分有意的键入事件和源自正常的键入操作的偶然或不希望的接触,由此允许用户使手指停留在键上并允许他们如在规则的键盘上那样键入。来自接触和振动传感器的信号被转换成一系列的输入事件。输入事件然后有时间上被关联,以确定手指接触的位置和相应的键的激活。关联事件然后被过滤,以去除不希望的事件并分解模棱两可或相反的结果。(30)优先权数据(85)PCT申请进入国家阶段日2013.02.08(86)PCT申请的申请数据PCT/US2011/042225 2011.06.28(87)PCT申请的公布数据WO2012/00610。
3、8 EN 2012.01.12(51)Int.Cl.权利要求书2页 说明书7页 附图12页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书2页 说明书7页 附图12页(10)申请公布号 CN 103154860 ACN 103154860 A1/2页2要求排他的性能或特权的本发明的实施例被限定如下:1.一种检测固态平面触敏表面上的用户输入以确定用户输入的位置的方法,该方法由与包含于触敏表面中的多个传感器信号通信的处理器装置执行,该方法包括:基于多个接触传感器记录触敏表面的用户接触;基于通过三个或更多个振动传感器感测的敲打事件从与触敏表面耦合的一个或多个振动传感器接收敲打事件信。
4、号;和在基于记录的用户接触接收敲打事件信号之后,断定选择。2.根据权利要求1的方法,其中,断定包含将接触和振动传感器信号转换成与固定的时间基准点结合的一系列的离散接触和敲打传感器数据事件。3.根据权利要求2的方法,其中,断定包含基于超过固定阈值的来自一个或多个振动传感器的信号的振幅检测敲打传感器数据事件信号的出现。4.根据权利要求2的方法,其中,断定包含基于使用斜率和值的振动波形最小值的位置检测敲打传感器数据事件信号的出现时间。5.根据权利要求2的方法,其中,断定包含将传感器数据事件转换成一系列的离散输入事件,其中,一系列的离散输入事件通过与传感器数据相关的类型被分类,并且其中,一系列的离散输。
5、入事件包含一组候选键和相关的位置信息。6.根据权利要求5的方法,其中,断定包含基于多个振动传感器上的敲打事件的到达时间差三角测量表面上的敲打传感器数据事件的物理坐标。7.根据权利要求6的方法,其中,断定包含通过将多点定位计算结果映射到已知的表面坐标并选择一组可能的坐标调整物理材料和组件的差异,其中,一组可能的坐标被分配作为敲打事件的原点的坐标的01之间的概率。8.根据权利要求5的方法,其中,三角测量包含使用多个振动传感器上的敲打事件的振幅微分和线性力响应近似,以三角测量物理坐标。9.根据权利要求8的方法,其中,断定包含通过将振幅微分计算结果映射到已知的表面坐标并选择一组可能的坐标调整物理材料和。
6、组件的差异,其中,一组可能的坐标被分配作为敲打事件的原点的坐标的01之间的概率。10.根据权利要求5的方法,其中,断定包含通过与一组示例性波形相比基于敲打波形的识别来检测敲打传感器数据事件信号的出现时间。11.根据权利要求10的方法,其中,通过使用波形的计算的特性而不是整个波形进行信号波形的识别。12.根据权利要求5的方法,其中,断定包含通过使用多个规则关联输入事件,以产生包含原事件的所有数据的一组相互支持复合输入事件。13.根据权利要求12的方法,其中,关联包含通过接近时间位置关联。14.根据权利要求12的方法,其中,关联包含基于传感器数据的源关联。15.根据权利要求12的方法,其中,关联包。
7、含基于输入事件表示的候选键激活的共性关联。16.根据权利要求12的方法,其中,断定包含通过多个滤波器从一组输入事件去除不希望的输入事件。17.根据权利要求16的方法,其中,断定包含检测和去除源自希望的键下面的键的无权 利 要 求 书CN 103154860 A2/2页3意激活的不希望的键激活。18.根据权利要求16的方法,其中,断定包含作为在紧挨着键入之前使人手停留于键盘的原位行位置上的结果检测和去除键激活。19.根据权利要求16的方法,其中,断定包含检测选择性检测并抑制修改器键的偶然或部分激活中的至少一个,以与CAPS LOCK相比有利于SHIFT键的最常使用。20.根据权利要求16的方法,。
8、其中,断定包含在激活键入的过程中选择性地检测和抑制多个同时的修改器。21.根据权利要求16的方法,其中,断定包含基于历史接触激活数据来检测用户的键入样式作为“接触”或“悬停”打字员并将该信息反馈到其它的过滤机构。22.根据权利要求16的方法,其中,断定包含将一组的输入事件转换成一系列的键向上和键向下激活。权 利 要 求 书CN 103154860 A1/7页4用于检测和定位接触和振动敏感平坦表面上的按键事件的方法技术领域0001 本发明涉及易于清洁并允许用户将他们的手或手指停留在表面上而不导致事件驱动的平滑、固态接触和振动敏感表面。具体而言,表面可被用作用于输入文本和指令的计算机键盘。背景技术。
9、0002 作为用于由人向机器输入文本和数据的主要方法的当代键盘的起源追溯至19世纪早期的打字机。随着计算机的开发,自然发展为使打字机键盘适于用作用于输入文本和数据的主要方法。虽然打字机和随后的计算机键盘上的键的实现从机械方式发展为电气方式并最终发展为电子方式,但是,键自身的尺寸、位置和机械性质在很大程度上保持不变。0003 计算机以及伴随的键盘已遍及各行各业,其中的许多处于计算机和键盘设计原本没有考虑的恶劣环境中。例如,计算机现在被用于餐馆的厨房中、制造设施的生产地板上和钻油设备上。存在很多这样的环境,即,由于极端污染条件,常规的键盘在不清洁的情况下不能长期工作。0004 为了克服键盘的可清洁。
10、性的问题,直觉上似乎如果键盘表面自身是平坦或者几乎平坦的表面就更加易于擦拭键盘以使其清洁。但是,这意味着,需要找到键盘的物理机械或膜片键的替代方案。0005 在部分的响应中,新计算机形状因素已发展为完全消除外部键盘,只包括具有用于数据键入的基于软件的“虚拟”键盘的触敏平坦显示屏。对于训练成使他们的手停留在键盘上的打字员来说,接触屏虚拟键盘难以在高速下使用,原因是停留的动作导致来自键盘的不希望的键激活。0006 因此,需要以便于清洁、允许用户感觉键、允许用户将手指停留在键上、如在标准键盘上那样需要相同或更小的力以按压键、响应人接触并允许用户如常规的机械键盘那样快或更快地打字的方式改善上述的用于键。
11、盘键入的方法。发明内容0007 本发明提供用于使得能够使用固定于触敏表面上的振动传感器以同时检测和定位表面上的手指接触事件的系统和方法。本发明特别区分有意的键入事件和源自正常的键入动作的偶然或不希望的接触。本发明使得能够允许用户使他们的手指停留在键上,从而允许他们如在规则的键盘上那样键入。0008 当用户将他们的手指放在表面上时,接触传感器(每个键一个或多个)和振动传感器被同时激活。来自接触和振动传感器的信号被转换成一系列的输入事件。输入事件然后在时间上被关联,以确定手指接触的位置和相应的键的激活。没有相应的“敲打”(即,振动)的接触事件被忽略。关联的事件然后被过滤,以去除不希望的事件并分解模。
12、棱两可或矛盾的结果。例如,本发明能够检测有意的键按压与用户将他们的手放在键盘上以准备键入之说 明 书CN 103154860 A2/7页5间的不同。0009 本发明与常规的触敏装置相比具有明显的优点。一个这样的优点在于,用户可使他们的手指停留在键上而不导致出现键驱动。另一个优点是用户可通过接触而不必观看键盘进行键入。附图说明0010 以下参照以下的附图详细描述本发明的优选和替代性的例子:0011 图1是表示根据本发明的实施例形成的系统的典型的硬件部件的硬件框图;0012 图2A2E是由图1所示的系统执行以检测和定位手指在表面上的按压并计算相应的键盘输入键的示例性过程的流程图。0013 图3表示。
13、为了检测有效的键激活并从敲打(振动)传感器数据产生接触和敲打输入事件实现本发明的方法的软件算法的实施例;0014 图4A4E表示执行接触和敲打输入事件关联的软件算法的实施例;0015 图5A5D表示执行关联的输入事件的过滤的软件算法的实施例。具体实施方式0016 图1表示接触/敲打敏感键盘装置100的实施例的硬件部件的简化框图。装置100包括容纳接近度传感器120、电容接触传感器130和振动传感器140的平坦表面。传感器部件120、130和140提供对于CPU110(处理器)110的输入。CPU基于从传感器部件120、130和140接收的原始信号的解释,提供键盘表面被用户的手接近或接触时的接触。
14、事件的通知。0017 存储器170与CPU110数据通信。存储器170包含程序存储器180和数据存储器190。程序存储器180包含操作系统软件181、敲打/接触检测软件182和其它的应用软件183。数据存储器190包含接触电容传感器历史阵列191、用户选项/偏好192和其它的数据193。0018 当用户的手指接触平坦表面时,电容接触传感器130被断定。周期性地,执行键盘操作系统软件181的CPU110从接触传感器130和敲打传感器140收集原始传感器数据,并且在数据存储器191中存储原始传感器数据。0019 在单独的执行线程中,CPU110连续地执行这里描述的敲打和接触检测和定位软件(算法)1。
15、82,以将由键盘产生的传感器数据处理成一系列的键“向上”和“向下”状态。算法的每次执行构成作为算法的基本定时单位的“循环”。当有效的键激活被检测时,由接触/敲打检测软件182支持的CPU110执行包含于存储器191中的传感器数据的算法分析,以确定平坦表面的哪个区域被接触和敲打。当有效的敲打/接触位置通过算法182被计算时,它被转送到键盘操作系统软件181,在这里,它被映射为特定的键盘功能代码。典型的键盘功能包含标准键盘文字数字键、功能和导航键。映射的功能代码然后通过USB或PS/2那样的标准外围/主机接口被发送到连接的主机计算机终端194。0020 图2A表示实现在接触和敲打敏感表面上定位用户。
16、键激活的示例性方法的软件的实施例的流程图。方法被分成五个不同的阶段,每个由称为“管理器”的单独的系统软件部件指导:说 明 书CN 103154860 A3/7页60021 阶段1传感器数据收集200;0022 阶段2传感器数据分析和输入事件产生300;0023 阶段3输入事件关联400;0024 阶段4输入事件过滤500;和0025 阶段5键状态改变分析600。0026 在阶段1(图2A200)中,数据从接触和敲打(振动)传感器140被收集并被放入存储器中以用于将来的处理。图2B表示用于从接触和敲打传感器收集和概括信号值的软件算法的实施例的流程图。CPU110由传感器信道管理器200控制,并且。
17、通过SCM_GetSensorData方法200被调用。传感器信道管理器200调用收集、概括和存储传感器数据的一个或多个传感器信道部件。传感器信道向传感器信号施加特定的收集和概括算法以产生接触或敲打传感器数据记录。传感器数据记录与相关的时间戳一起被存储,以供将来在下一阶段中的处理。0027 由SC_Tap_CaptureData方法200调用的敲打传感器信道识别表面上的手指起始的敲打的时间出现。图3表示用于检测敲打事件的软件算法的实施例的流程图。敲打传感器信道方法220将对于当前的循环存储于振动传感器数据记录221中的敲打模拟数据采样。收集的一组数据表现为各振动传感器的波形,开始时间固定于当前。
18、的循环的开始时间。如果收集的信号值与平均信号之间的差值超过阈值(从平均值的差值偏离)222,那么信号波形中的相应的点表示可能的事件。算法启动同步执行的两个状态机。第一个抑制(过滤)通过原始敲打的回响产生多个敲打事件,参见块223。第二个尝试通过检测超过阈值的波形上的第一最小值(最低点)计算敲打出现的确切时间。通过在各采样点上计算波形的“第二斜率和”,检测最小值的时间位置。CPU计算各采样点224上的波形线的瞬时斜率。如果采样点上的斜率从负(向下)变为正(向上),那么采样表示可能的最小值,并且,采样时间是敲打事件的时间。CPU然后检测最小值是否描述为真实最小值。它通过将前五个采样点的斜率加到当前。
19、的采样点斜率上,计算采样点的“第一斜率和”。系统然后通过将前五个采样点的第一斜率和加到当前采样点第一斜率和上计算“第二斜率和”,参见块227。结果是,放大容易与阈值相当的采样点上的斜率差以及识别作为最小值的典型的主斜率反向(下降到上升),参见块228。如果超过阈值,那么敲打事件产生并通过信道存储为敲打传感器数据对象,参见块229。0028 在阶段2(图2A300)中,历史传感器数据被分析,以产生表示表面上的可能的键激活的“输入事件”对象的流。图2C表示用于分析传感器数据并产生输入事件的软件算法的实施例的流程图。CPU110被输入信道管理器控制,并被ICM_GetInputEvents方法300。
20、调用。输入信道管理器300调用分析在阶段1中收集、概括和存储的传感器数据的一个或多个输入信道部件。输入信道向传感器数据施加特定的分析算法,以检测用于产生输入事件的条件。0029 由IC_Touch_GetEvents方法310调用的接触输入信道过程搜索用户接触输入事件。执行接触输入信道过程的CPU110分析存储的接触电容传感器数据,从而对于超过阈值的各信号产生接触输入事件。0030 由IC_TapMultilateration_GetEvents方法330调用的敲打多点定位输入信道使用各振动传感器上的敲打事件的相对到达时间差(TDOA),以计算键盘上的敲打位置的坐标说 明 书CN 103154。
21、860 A4/7页7并产生输入事件。给定处于固定的已知的位置上的信号的三个或更多检测器,CPU110使用多点定位的技术以三角测量该信号的源位置。使用多点定位的CPU110取得存储于敲打事件记录中的到各加速计的相对到达时间,并且,基于表面上的振动波的传播的实验测量速度,计算出现敲打的键盘上的最可能的位置。选择接近计算的敲打位置的键作为产生的输入事件中的候选键。0031 图4A表示用于敲打多点定位的软件算法的实施例的流程图。在块322上计算传感器中的每一个上的敲打事件的到达时间的时间或差值。从表面上的敲打产生的声波以大致恒定的速度通过表面材料行进到各传感器。实际上,波的传播速度不是恒定的,随表面上。
22、的位置以及在实施例的各单个实例之间改变。为了适应变化,过程可使用相对到达时间作为进入将相对到达时间的三倍映射到键坐标的位置检查表中的指数,参见块324。表的值在经验上通过重复试验和表面上的测量得到。当确切的匹配不可能或者不可靠性时,过程选择最接近地匹配相对到达时间的一组记录。一组记录限定包含与由非恒定的速度产生的统计误差范围对应的一组候选键的区域位置。区域内的候选键从区域的边缘到中心具有增加的概率梯度,最大可能的键在区域的中心。过程320用由映射的区域规定的候选键产生输入事件,参见块326。0032 在一个实施例中,敲打多点定位算法包含用于从作为敲打事件的考虑检测和消除外部(关键盘)振动的方法。
23、。当用户在外部振动源正在激活振动传感器时在键盘的表面上移动手指但不敲打时,出现常见的问题。除非外部敲打被过滤,否则,由于振动与接触传感器的变化相关,因此,这导致错误的正量。因此,重要的是能够检测外部振动并滤除它们。敲打多点定位算法利用表面的物理结构的特性以检测外部敲打。由于外部振动在传播到中心检测器之前通过键盘的左右脚传输到左右加速计中心检测器是最后,因此,任何外部敲打导致左右加速计在中心加速计之前唤醒。如果满足两种方法的条件,那么信号具有很高的源自外部振动的可能性,并且可作为敲打事件被消除。0033 由IC_TapAmplitude_GetEvents方法330调用的敲打振幅输入信道过程使用。
24、敲打信号振幅中的相对差值,以计算键盘上的敲打位置的坐标,并产生输入事件位置。振幅方差算法取得由加速计中的每一个记录的相对振幅,以基于表面材料中的振动波的实验测量的线性力响应近似,三角测量和计算键盘上的敲打位置的坐标。选择处于计算的振幅敲打位置附近的键作为候选输出键。0034 在一个实施例中,敲打振幅微分过程330包含用于检测作为敲打事件的外部振动并取消其资格的方法。当在键盘的表面上出现敲打时,除了表面上的几个已知的坐标以外,通常在由各加速计检测的振幅中存在大的微分,这是作为敲打振幅微分过程330的基础的特性。但是,当出现外部敲打时,由各传感器检测的振幅常常非常接近,并且可被用于将敲打识别为可能。
25、的外部敲打,并且不再加以考虑。0035 图4B表示用于敲打振幅微分(330)的软件算法的实施例的流程图。计算传感器中的每一个上的敲打事件的振幅差异,参见块332。从表面上的敲打产生的声波以信号振幅的大致线性衰减(力劣化)通过表面材料传播到各传感器。振幅微分算法330使用存储于敲打记录中的相对振幅,并且,基于作为当信号波穿过表面时由传送材料中的吸收导致的信号振幅的假定的线性恒定衰减的线性力响应近似,计算键盘上的最可能出现敲打的位置。信号源到信号检测器越远,则信号越小。实际上,波的衰减不是恒定的,随表面上的位置以及说 明 书CN 103154860 A5/7页8在实施例的各单个实例之间改变。为了适。
26、应方差,过程可使用振幅值作为进入将振幅微分的三倍映射到键坐标的位置检查表中的指数,参见块334。表的值在经验上通过重复试验和表面上的测量得到。当确切的匹配不可能或者不可靠性时,过程选择最接近地匹配振幅微分的一组记录。一组记录限定包含与由非恒定的衰减产生的统计误差范围对应的一组候选键的区域位置。区域内的候选键从区域的边缘到中心具有增加的概率梯度,最大可能的键在区域的中心。在块336中,过程320用由映射的区域规定的候选键产生输入事件。0036 由IC_Press_GetEvents方法340调用的按压输入信道过程检测当停留的手指实实在在地按压到键盘表面上时出现的输入事件。它识别并回忆停留的手指的。
27、接触信号强度,并测量停留的手指与按压的手指之间的差值。如果信号强度差超过阈值,那么产生输入事件。0037 由IC_TapWaveform_GetEvents方法350调用的敲打波形输入信道过程比较敲打信号波形的形状,以识别已知的形状并由此计算键盘上的敲打位置的坐标并产生输入事件。对于多重使用环境中的表面上的各位置,记录和存储示例性的振动波形。在一个实施例中,分析记录波形中的每一个,并且,存储波形的许多唯一特性(“指纹”)而不是完整的波形。各用户起动的敲打出现的特性与数据库中的各键的存储特性相比较,并且找到最好的匹配。可有助于唯一地识别各敲打位置的波形的特性包含但不限于以下方面:波形的最小峰值;。
28、波形的最大峰值;波形的衰减速率、波形的标准偏差;波形的快速傅立叶变换;波形的平均频率;波形的平均绝对振幅等。0038 在阶段3(图2A400)中,输入事件基于激活的位置、内容和持续时间的相互一致性被关联成限定键激活的时间和空间相关事件。图2D表示用于关联输入事件的软件算法的实施例的流程图。系统由输入关联管理器控制并由ICOR_CorrelateInputEvents方法400调用。关联将由接触、按压和敲打输入信道产生的相关的输入事件合并成单一的关联输入事件。关联在六个不同的阶段中进行:0039 在块410中表示的关联阶段1分析输入事件以确定历史上多少事件是可用的以及它们的相对时间差是多少;00。
29、40 在块420中表示的关联阶段2产生作为可能的组合的多对事件(多个二倍体);0041 在块430中表示的关联阶段3从一组计算的二倍体产生元组(三个或更多事件);0042 在块440中表示的关联阶段4减少候选元组和二倍体的组,从而消除不完全反身支持的组合中的任一个;0043 在块450中表示的关联阶段5从一组元组产生新的关联输入事件,从而用单一关联输入事件代替构成元组的各单个输入事件。0044 输入关联管理器过程400从输入事件管理器请求历史输入事件,从输入事件历史消除冗余的事件,并且,产生新的关联的输入事件。从输入事件历史数据库去除有助于关联的事件的所有输入的事件。图5A5D详细表示关联过程。
30、。0045 图5A表示阶段2输入事件成对算法的实施例。运行对规则方法420在块421中产生一组输入事件对组合(二倍体),并然后施加一系列的规则以评价它们作为关联对的可能。用于对关联的规则包括:时间关联(块422)检查以确认事件是否在时间上相互接近;键相交关联(块424)检查以确认输入的事件是否共享候选键;信道关联(块426)检查以确保产生事件的输入的信道是相容的。规则执行的结果在逻辑上被组合成该对的总分数。在块说 明 书CN 103154860 A6/7页9428中,如果分数超过阈值,那么二倍体是有效的关联对并被添加到二倍体的输出列表。0046 图5B表示阶段3输入事件组合算法的实施例。由成对。
31、算法420产生的二倍体进一步在块430中组合成三个或更多个事件的组合,从而产生一系列的“元组”。各元组在块432中被评价以确保元组内的输入事件的组合对于各有贡献的二倍体是完全反身的。例如,给定三个事件A、B和C,如果关联二倍体存在AB、BC和AC,那么元组ABC是有效的。在块436中,元组评价的结果附加于有效二倍体的列表上。在块437上附加原二倍体,并在块438中附加未关联的各单个事件,从而导致所有可能的关联事件的列表。具有更多的有贡献的事件的元组具有更强的关联性并因此具有(一般)更高的分数。0047 图5C表示阶段3输入事件减少算法(块)440的实施例。基于输入事件的关联性和可靠性的强度,元。
32、组、二倍体和单体事件被评价并被分配数值分数。如果输入事件是两个或更多个元组或二倍体的成员,那么具有最高的分数的元组或二倍体主张事件,并且,从候选组444消除(减去)分较低的元组或二倍体。减去在块444中继续,直到剩余的元组、二倍体和单体事件的组不包含共享的单一输入事件,从而具有与任何其它的组合不同的唯一输入事件成员资格。然后,在块446中,以递减的分数次序将剩余的元组、二倍体和单体事件分类。0048 图5D表示阶段4关联输入事件产生(块450)的实施例。在块452中,一组的减少的元组、二倍体和单体事件的各要素被测试,以确认它们是否可被释放,使得具有约束的那些对于后面的处理被延缓。通过块452的。
33、那些在块454中被转换成新的关联输入事件。有助于元组、二倍体和单体事件的原输入信道产生的输入事件在块456中被标记为被处理,使得它们将不再被重新处理。得到的一组关联事件表示用户键激活的真实候选。0049 在阶段4(图2A500)中,关联的事件的流被分析,以去除不希望的事件并分解事件内的模棱两可的键候选。图2E表示用于过滤输入事件的软件算法的实施例的流程图。CPU110被输入过滤管理器控制,并被IFM_FilterInputEvents方法500调用。输入管理器调用输入过滤管理器以从输入事件流消除不希望的关联事件,并使事件内的候选键减少到单个键。输入过滤管理器将最终确定的一系列的输入事件转送到键。
34、状态管理器,以供处理成适于传送到主机计算机操作系统的键激活代码。0050 实施例实现用于依次向关联的输入事件组施加过滤器规则的规则执行引擎。各过滤器被定义为在输入事件组的特定的方面上操作从而改变分数并更新输入管理器系统的长期状态的规则。过滤器访问输入事件的完整的组,并被允许从处理的考虑去除事件并且/或者减少事件内的候选键的组。在长期趋势和行为分析的支持下,过滤器还被允许访问和更新输入管理器的长期(多循环)状态。长期状态反馈到输入事件处理的其它阶段中。0051 由输入关联管理器计算的一组关联输入事件通过IFM_FilterEvents(块500)方法被转送到输入过滤管理器。规则引擎以规则登记的次。
35、序在块520中向输入事件的各要素施加过滤器规则。规则的结果是在块530中被施加到(过滤的)输入事件并在块540中被输出到下一处理阶段的一组修改。实施例实现针对键输入的特殊情况的许多规则。0052 实施例包含垂直接触过滤器规则。垂直接触过滤器调整用于具有垂直相邻的候选键的事件的键概率。当用户在原位行(home row)之上的键上打字时,手指在键盘上伸开并且“伸出”,常常激活原位行之上的期望的键和原位行上面在其下面紧挨着的键。过滤器检测该情况的签名,并且将垂直相邻的最上面的候选键的分数提升为最可能键入的一个。提说 明 书CN 103154860 A7/7页10升因子被适当地缩减,使得垂直相邻键之间。
36、的错误键入不会强过下面的键上的强信号。因此,提升足够小以有利于更高的键,但是,当部分错误键入到较高的键边界上时,不排除选择下面的键。0053 实施例包括下一键过滤器。下一键过滤器调整具有模棱两可(分数相同)的候选键的事件的键概率。过滤器使用简单的概率数据库,该概率数据库对于任何给定的字符限定最可能跟随当前目标语言中的字符的字符。当前的语言由键盘的目标国家语言键布局规定。下一字符概率与目标语言的单词或语法结构没有关系。它是目标语言中的字符对的概率分布。0054 在一个实施例中,置放(set down)过滤器检测源自用户将手置于键盘的原位行上的停留位置中的输入事件的签名。在键盘的未使用的某周期之后。
37、或者在活动键入暂停的过程中,可出现“置放”。过滤器消除当手指在置放过程中与原位行键接触时出现的不希望的键激活。0055 置放过滤器是更新并依赖于输入管理器和输入事件队列的长期状态的多循环过滤器。置放过滤器在两个不同的阶段中处理。阶段1是检测阶段,它分析关联输入事件组,以寻找两个或更多个同步的包含具有时间接近性的原位行上的多次接触激活的原位行事件。如果检测到置放,那么对于随后的处理循环和向键激活的事件转换断定长期置放状态。一旦断定置放状态,所有的输入事件就被延缓,直到完成置放。阶段2是完成阶段,它分析延缓的和新的事件,并且赋予或取消事件参与置放的资格。通过以下过程中的任何一个确定置放终止:超过置。
38、放的最大持续期、超过置放内的各单个事件之间的最大时间持续期(间隙阈值)或者检测到非原位行输入事件。当满足置放终止条件中的任一个时,通过过滤器清除置放状态。任何延缓的事件作为置放的一部分被去除或者对于处理被释放。由于置放完成可检测取消原位行事件参与置放的资格的终止,因此,置放检测不总是导致事件被去除。0056 在一个实施例中,键入样式过滤器分析输入事件和输入管理器的长期状态,以确定当前的用户正在使用什么键入样式。它然后设定各种控制参数和反馈包含置放和特殊情况的其它过滤器(被它们使用)的长期状态值。0057 在一个实施例中,多重修改过滤器防止由于错误键入导致的两个或更多个修改键的偶然的激活。修改键。
39、一般占据键盘的外围并且难以适当地激活,特别是对于接触打字员。多重修改过滤器调整具有修改键的事件的键概率,从而有利于shift键作为最常用的修改器,并降低作为很少使用的键的caps lock键的分数。调整的分数避免到达shift键时的caps lock的许多无意的激活。0058 在阶段5(图2A600)中,受键状态管理器控制并由KSM_CalculateKeyStates方法600调用,过滤的事件的次序被转换成键上下激活的流,这些激活随后被转送到主机计算机。0059 虽然这里对于键盘应用描述了本发明的要点,但是,本领域技术人员可以想到,系统也可被成功应用于任何类型的接触屏装置。0060 虽然以上示出和描述了本发明的优选的实施例,但是,可以在不背离本发明的精神和范围的情况下提出许多的修改。因此,本发明的范围不受优选的实施例的公开的限制。事实上,本发明应完全由以下的权利要求确定。说 明 书CN 103154860 A10。