用于减少敲击抖动的技术的制作方法

文档序号:6477515阅读:147来源:国知局
专利名称:用于减少敲击抖动的技术的制作方法
技术领域
本发明涉及被用作计算系统的输入设备的触摸传感器面板,并且 更具体地涉及用于确定在触摸传感器面板处检测到的具有某个滑动移 动量的触摸事件是否应当被解释为"敲击"手势还是"滑动"手势的技 术。
背景技术
当前可获得用于在计算系统中执行操作的许多类型的输入设备, 诸如按钮或按键、鼠标、轨迹球、触摸传感器面板、操纵杆、触摸屏 等。尤其是触摸屏由于其容易和多样的操作以及其不断下降的价格正 在变得日益流行。触摸屏可包括可以是具有触摸敏感表面的清澈面板
(clear panel)的触摸传感器面板以及显示设备,该显示设备可被定 位在该面板后面,从而触摸敏感表面可大体覆盖显示设备的可视区域。 触摸屏可允许用户通过使用手指、触笔或其它物体在显示设备所显示 的用户界面(UI)所规定的位置处触摸该触摸传感器面板来执行各种 功能。 一般来说,触摸屏可识别触摸传感器面板上的触摸事件以及触 摸事件的位置,并且计算系统然后可根据在该触摸事件的时刻所呈现 的显示解释该触摸事件,并且此后可基于该触摸事件执行一个或多个 动作(或行为)。
当使用触摸屏时,用户可以通过直接点取(通常以输入笔或手指) 显示在屏幕上的对象(诸如GUI对象)和在该位置触摸屏幕,在显示 屏上做出选择。为了提供附加功能,可以实现手势识别以便不只识别 筒单的手指触摸。作为例子,当检测到触摸屏表面上的一个或多个敲 击时,可以进行诸如选择功能的各种操作。除了敲击之外,当检测到 触摸屏表面上的滑动动作时,可以进行诸如拖动或滚动功能的各种操作。在提交于2007年6月13日的题目为"Detecting Gestures on Multi-Event Sensitive Devices,,的申请人的共同待决美国专利申请No. 11/818,341中描述了敲击和滑动手势,通过引用将其内容结合在此。
然而,用户难以控制产生具有少量或没有滑动动作的敲击动作的 手指动作。具有某个滑动动作量的敲击手势,即,所谓的"随便敲击
(sloppytap)",可能难以与用户有意的真正滑动手势区分开。
区分随便敲击和滑动动作的问题可能产生矛盾的目标响应包括 某个量的手指滑动动作或滚动动作的随便敲击,可靠地产生点击(例 如,选择操作),相对于响应有意的滑动,足够快地发生点取/拖动/ 滚动事件,从而用户感到很少或没有延迟或无效动作。某些触摸传感 器面板系统试图通过在检测到触摸事件之后将所有动作或一部分手指 动作抑制某段时间(例如,几百毫秒)来区分随便敲击和滑动动作。 然而,这种方法可能导致对有意的滑动动作的过度抑制,尤其是对短 持续时间的快速滑动动作。

发明内容
本发明涉及使用可将时间不稳定因子和触摸不稳定因子两者考 虑在内的算法区分随便敲击和滑动动作。可以在检测到触摸事件后紧 接着的时间段中减去或消去有限的每帧动作量。可以抑制指示随便敲 击的小的横向运动,而指示迅速、长的光标移动的快速手指动作可以 立刻通过滤波而不纟皮抑制显著的量。
可以相减地将动作通行(pass - through )抑制因子应用于X方 向的运动AX。具体地,可以根据如下的公式以tpress的函数修改原始 AX值
AXsuppr (tpress) = AX - max(Zinst, Tinst) (如果AXX)并且 max(Zinst, Tinst);£|AX|),或
=AX + max(Zinst, Tinst) (如果AXO并且 max(Zinst, Tinst)^|AX|),或
=0 (如果max(Zinst, Tinst)>|AX|),
其中Zinst可以表示以针对每帧Z的特定百分率改变的X方向的 手指速度给出的抑制值,并且Tinst可以表示以针对特定tpress的X 方向的手指速度给出的抑制值。因此,应当理解,Zinst和Tinst可以 具有与AX相同的单位,它们可以是距离测量值,诸如毫米(mm)。 Zinst和Tinst两者可以将随便敲击在X方向上的行程的最大量作为上 界。可以给Y方向的运动应用相同的抑制。


图1示出了根据本发明的一个实施例的用于实现区分随便敲击和 滑动动作的算法的示例计算系统; 图2示出了示例的触摸图像;
图3a示出了 一系列触摸事件的时间相对于Z的示例图; 图3b示出了图3a所示的一系列触摸事件的时间相对于AX和AY 的示例图3c包含根据本发明的一个实施例的图3a所示的一系列触摸事 件的随时间改变的触摸通行因子、时间通行因子和组合动作通行因子 的示例图4示出了输入AX (AXin)相对于输出AX ( AXout, AX输出)的 示例图,其中该图表示根据本发明的一个实施例的在时间(tpress) 的特定时刻的AXsuppr函数;
图5a示出了根t告本发明的一个实施例的表示Tinst函数的tpress 相对于每帧位置改变的示例图5b示出了根据本发明的一个实施例的时间tpress中的各个时 刻的相应于图5a的Tinst函数的AXin ( AX输入)相对于AXout ( AX输出) 的示例图6a示出了根据本发明的一个实施例的表示Zinst函数的每帧Z (手指触摸区域)的不稳定性相对于每帧位置改变的示例图6b示出了根据本发明的一个实施例的、对应于图6a的Zinst函数在每帧Z的各种百分率(% )改变下的AXin相对于AXout的示例 图7是示例的触摸图像,以及由于系统噪声产生X和Y坐标改 变时,实际的和报告的触摸屏坐标的图示;
图8示出了根据本发明的一个实施例的示例的软件分层 (stackup),该软件分层可以包括X和Y抑制函数(其利用Tinst 和Zinst函数)和滞后滤波,并且可由图l的计算系统执行;
图9a示出了根据本发明的一个实施例的可以包括触摸传感器面 板、显示设备和可以执行X和Y抑制函数和滞后滤波的图1的计算系 统中的其它计算系统模块的示例移动电话;
图9b示出了根据本发明的一个实施例的可以包括触摸传感器面 板、显示设备和可以执行X和Y抑制函数和滞后滤波的图1的计算系 统中的其它计算系统模块的示例数字音频/视频播放器。
具体实施例方式
在对优选实施例的下列描述中参考了附图,这些附图构成该描述 的一部分,并且以说明的方式示出了可以实现本发明的特定实施例。 应当理解,可以使用其它实施例,并且可以做出结构改变而不脱离本 发明的实施例的范围。
本发明涉及使用将时间不稳定性因子和触摸不稳定性因子两者 考虑在内的算法区分随便敲击和滑动动作。可以在检测到触摸事件后 紧接着的时间段中减去或消去有限的每帧动作量。可以抑制指示随便 敲击的小的横向运动,而指示迅速、长的光标移动的快速手指动作可 以立刻通过滤波而不被抑制显著的量。
虽然此处以从在传感器面板上检测到的单个触摸中识别敲击或 滑动手势描述本发明的某些实施例,但是应当理解,本发明的实施例 不限于单触摸传感器面板,而是可以一般地应用于单触摸或多触摸传 感器面板,在提交于2004年5月6日并且在2006年5月11日作为美 国乂^开申i青No.2006/0097991 ^>开的题目为"Multipoint Touchscreen"的申请人的共同待决美国申请No. 10/842,862中描述了多触摸传感器 面板,通过引用将其内容结合在此。另外,虽然此处可以按照具有行 和列的触摸传感器正交阵列描述触摸传感器面板中的触摸传感器,但 是应当理解,本发明的实施例不限于正交阵列,而是可以一般地应用 于被安排在包括对角线、同心圆以及三维和随机取向的任意数目的维 度和取向中的触摸传感器。
图1示出了根据本发明的实施例的用于实现区分随便敲击和滑动 动作的算法的示例计算系统100。计算系统100可以包括一个或多个 面斧反处理器102和外设104,以及面才反子系统106。 一个或多个面玲反处 理器102可以包括例如ARM968处理器或具有类似功能和能力的其它 处理器。然而,在其它实施例中,可由诸如状态机的专用逻辑取代实 现面板处理器的功能。 一个或多个面板处理器102或主机处理器128
的软件或固件。外设104可以包括但不限于随机存取存储器(RAM) 或其他类型的存储器或存储设备、看门狗计时器等。面板子系统106 可以包括但不限于一个或多个;f莫拟通道108、通道扫描逻辑110和驱 动器逻辑114。通道扫描逻辑110可以访问RAM112、自主地从模拟 通道读取数据并且给模拟通道提供控制。另外,通道扫描逻辑110可 以控制驱动器逻辑114,以便以一个或多个频率和相位产生可被有选 择地施加到触摸传感器面板124的行的激励信号116。在某些实施例 中,面板子系统106、面板处理器102和外设104可被集成到单个专 用集成电路(ASIC)内。
虽然还可以使用其它感测介质,触摸传感器面板124可以包括具 有多个行迹线或驱动线路和多个列迹线或感测线路的电容感测介质。 虽然还可以使用其它透明和诸如铜的非透明材料,行迹线和列迹线可 由诸如氧化铟锡(ITO)或氧化锑锡(ATO)的透明导电介质形成。 在某些实施例中,行迹线和列迹线可以」波此垂直,虽然在其它实施例 中其它非笛卡儿取向也是可能的。例如,在极坐标系中,感测线路可 以是同心圆,并且驱动线路可以是径向延伸的线路(反之亦然)。因
16此应当理解,此处使用的术语"行"和"列","第一维度"和"第二维度" 或"第一轴"和"第二轴"旨在不仅包括正交网格,而且包括具有第一维 度和第二维度的其它几何配置的交叉迹线(例如,极坐标布置的同心
圓和径向线)。行和列例如可被以基本透明的电介质材料分隔开地形 成在大体透明的衬底的单个侧面上、形成在衬底的相对侧面上或形成 在以电介质材料分隔开的两个分离的村底上。
在迹线彼此上下穿过(相交)(但彼此不形成直接电接触)的迹 线的"交叉"处,迹线本质上可以形成两个电极(虽然还可以是多于两 个迹线交叉)。行迹线和列迹线的每个交叉可以呈现出一个电容感测
节点,并且可被视为图像元素(像素)126,当触摸传感器面板124 被视为捕捉一帧(对面板的一次完整扫描)的触摸"图像"时,这可能 特别有用。(换言之,在面板子系统106已经确定是否已经在触摸传 感器面板中的每个触摸传感器处检测到了触摸事件之后,多点触摸面 板中发生了触摸事件处的触摸传感器的图案可被视为是触摸的"图像" (例如,触摸面板的手指的图案))。当给定行被保持为直流(DC) 电压电平时,行电极和列电极之间的电容可表现为寄生电容,并且当 以交流(AC)信号激励给定行时,行电极和列电极之间的电容可以表 现为互信号电容Csig。可以通过测量出现在被触摸的像素处的信号电 荷Qsig的改变,检测触摸传感器面板附近或之上的手指或其它对象的 出现,该信号电荷的改变是Csig的函数。触摸传感器面板124的每个 列可以驱动面^反子系统106中的一个或多个才莫拟通道108 (此处还#皮 称为事件检测和解调电路)。
计算系统100还可以包括用于接收来自面板处理器102的输出, 并且执行基于该输出的动作的主机处理器128,所述动作可以包括但 不限于移动对象诸如光标或指针、滚动或摇动、调整控制设置、打开 文件或文档、观看菜单、进行选择、执行指令、操作连接到主机设备 的外围设备、应答电话呼叫、进行电话呼叫、终止电话呼叫、改变音 量或音频设置、存储与电话通信有关的信息诸如地址、常拨号码、已 接来电、未接来电、登录计算机或计算机网络、允许被授权的个体访问计算机或计算机网络的受限制区域、装载与计算机桌面的用户优选
布置相关联的用户简档、允许对Web内容的访问、启动特定程序、加 密或解码消息和/或等等。主机处理器128还可以执行可能与面板处理 无关的附加功能,并且可被连接到程序存储设备132和显示设备130, 诸如用于给设备的用户提供UI的LCD显示器。
图2示出了示例的触摸图像200,触摸图^象200可被定义为具有 触摸图像的"质量中心"(X, Y)处的质心202,该触摸图像具有定义 触摸区域的近似边界的长轴204和短轴206。 Z 208可被定义为在触摸 区域上积分的总的手指信号(被计算为由模拟通道检测到的手指的所 有电容的总和)。
图3a示出了一系列触摸事件的时间相对于Z的示例图300。可 由明晰的(crisp)手指敲击引起图3a中的第一隆起(bump) 302, 第一隆起302可以在手指触击触摸表面和从触摸表面抬起时产生Z的 陡峭上升和下降。可以用时间dtl中的Z的上升dZ表征明晰的敲击。 可由滑动手指敲击引起第二隆起304,第二隆起304可以产生更加緩 和的Z的上升和下降。在随便敲击中,时间dt2中的Z的上升dZ可 能较慢。注意,滑动动作可表现为图3a中较长持续时间的隆起,很可 能具有緩和的上升和下降时间。
图3b示出了图3a所示的一系列触摸事件的时间相对于AX和AY 的示例图。AX和AY可以表示每帧(一次完整面板扫描的时间)触摸 区域内的质心的位置X和Y的改变。注意,清楚或明晰的手指敲击一 般可以具有较小的AX和AY值(见306 ),这是由于这种手指敲击可 以具有较少的X方向和/或Y方向上的滑移或滑动。然而,随便的手 指敲击一般可以具有较高的AX和AY值(见308)。注意,取决于运 动方向,滑动触摸可以在滑动过程中产生高的AX和/或AY值。
为了区分随便敲击和滑动动作,可以抑制一个或多个方向中的横 向运动。例如,在X方向,可以通过以某个因子修改原始AX值计算"AX suppr (AX抑制),,值。某些触摸传感器面板系统可以按照下列公式以 检测到触摸事件以来的时间tpress (t按压)的函数修改原始AX值△Xsuppr (tpress) = AX*(Z/(Z+|dZ|))*(tpress/(50+tpress)) 其中Z是时间tpress的总的手指信号,并且ldZI是时间tpress的Z的 改变量值。(Z/(Z+|dZ|))可被称为触摸通行因子,并且 (tpress/(50+tpress)) 可 #皮称为 时间通 4亍因子 。 (Z/(Z+ldZI)"(tpress/(50+tpress))可被总地称为动作通行因子。因此, 对于小的tpress,时间通行因子可以接近0,并且抑制可以为最大。 随着tpress增加,时间通行因子可以接近l,并且抑制可以为最小。 另外,对于指示明晰的敲击的小的dZ值,触摸通行因子可以接近l。 随着Z增加,IdZI的影响可以减小。对于Z不再大时的较大的dZ值, 触摸通行因子可以接近O,并且抑制可为最大。
图3c示出了根据本发明的实施例的图3a所示的一系列触摸事件 的随时间改变的触摸通行因子310 (点划线)、时间通行因子312 (虚 线)和组合动作通行因子314 (实线)的示例图。图3c示出对于X方 向的运动,当首先在316检测到敲击时,触摸通行因子可以为最低(即, 抑制可以为最大),以便抑制任意无意的滑动动作,并且在抬起318 处,当再次可能存在某些无意的滑动时也是如此。由于较大的ldZI值, 随便敲击304 —般可以导致比明晰的敲击302低的触摸通行因子(见 抑制区域320和322)。另外,触击或抬起处的抑制可以帮助抑制这 样的质心位置改变,该质心位置改变不必然是由于滑动引起的,而是 由于在触击或抬起过程中发生滚入或滚出(roll on or off)时迅速改变 形状所引起的质心的质量中心的改变。
另外,图3c还示出了时间通行因子312,示出当首先在316检测 到触摸时,时间通行因子312可以为最低(即,抑制可以为最大), 并且在该点之后时间通行因子可以增加。如果检测到 一个手指的抬起 或触击,并且获得了随时间改变的图3c的触摸通行因子和时间通行因 子,在一个手指的抬起或触击可以引起其它手指的不稳定的手位置和 滑动的假设下,还可将总的动作通行因子314应用于相同手的所有其 它手指。
上述方法的一个缺点可以是动作通行抑制因子可被倍增地应用于AX。由此,在迅速挥击中,大部分挥击可能由于时间通行因子而被 忽略,并且对挥击的响应可能太慢。另外,对于时间通行因子不真正 影响挥击的慢速挥击,抑制量可能较大以便避免将随便敲击检测为滑 动。
因此,根据本发明的实施例,动作通行抑制因子可被减法地应用 于AX。具体地,可以根据下列公式以tpress的函数修改原始AX值
△Xsuppr (tpress) = AX - max(Zinst, Tinst) (如果AX>0并且 max(Zinst, Tinst)5网),或
=AX + max(Zinst, Tinst) (如果AXO并且 max(Zinst, Tinst)S网),或
=0 (如果max(Zinst,
Tinst)〉网),
其中Ziiist表示针对每帧Z的特定百分比改变的X方向的手指速度给 出的抑制值,并且Tinst可以表示针对特定tpress的X方向的手指速 度给出的抑制值。因此,应当理解,Zinst和Tinst可以具有与AX相 同的单位,它们可以是距离测量值,诸如毫米(mm)。 Zinst和Tinst 两者可以将随便敲击在X方向上的行程的最大量作为上界(例如, 2mm )。
图4示出了输入AX (AXin)相对于输出AX (AXout)的示例图 400,其中该图可以表示才艮据本发明的实施例的在时间tpress中的特 定时刻的AXs叩pr函数。注意,在没有输入AX值的抑制的稳定情况 402,对于AXin的所有值,AXin - AXout。然而,在不稳定情况下, 在y轴任意一侧上可以有"静(dead),,区404,其中AXsuppr可被保 持为O(最大抑制)以便忽略随便敲击。静区的边界可以等于时间tpress 的Zinst和Tinst中的当前最大值。在任意一侧在静区404之外,图示 可被假设为是线性函数。因此,在静区之外的附近处,AXin的特定值 可以产生小的AXout,指示仍然发生大量的抑制。然而,随着AXin变 大,AXout可以至少基于一个百分率地逼近AXin,指示用户可能不会 非常注意的不断减小的抑制百分率。注意,图4可以随时间而改变,从而随着不稳定性减小,图示趋于向着稳定情况402移动,从而具有 不断减小的静区404。
图5a示出了根据本发明的实施例,表示Tinst函数的tpress相 对于每帧位置改变的示例图500。对于给定的时间tpress,由图500 表示的Tinst函数可以返回表示每帧抑制位置改变量的值。图5a还示 出了一种示例情况,其中触摸的图像在以图500表示的方向上以恒定 速度移动(即,每帧lmm的恒定位置改变)。直到每帧抑制位置改 变Tinst小于特定tpress时触摸图像的每帧位置改变(在这个例子中 每帧lmm;见510 ),可以存在完全抑制和为零的报告的每帧位置改 变(见502 )。因此,在检测到手指触摸之后立刻可以有用于抑制随 便手指敲击的滑动的明显位置改变抑制量。
随着tpress增加并且每帧抑制位置改变Tinst变得小于触摸图像 的每帧位置改变,报告的每帧位置改变开始变为是正的(见504)。 报告的每帧位置改变(见506)继续是触摸图像的每帧位置改变和每 帧抑制位置改变Tinst的函数,直到Tinst达到零(在这个例子中,在 tpress = 312ms时),此时不再存在任何抑制,并且报告的每帧位置改 变可以等于触摸图像的每帧位置改变(见508)。注意图500仅是例 子。本发明的实施例可以利用可被实现为查找表或者当需要时可被计 算的、比图5a所示更复杂的函数。
图5b示出了根据本发明的实施例在时间tpress中的各个时刻的 相应于图5a的Tinst函数的AXin相对于AXout的示例图。注意,随 着时间tpress增加,不稳定性减小,并且在tpress = 312达到稳定状 态。
图6a示出了根据本发明的实施例的表示Zinst函数的每帧Z的 不稳定性(触摸不稳定性)相对于每帧位置改变的示例图。如此处所 称的,触摸不稳定性Z可以表示可以在敲击过程中展现出不稳定性的 若干参数中的任意一个。例如,Z可以表示触摸区域,该触摸区域可 以在用户向传感器面板施加敲击的时间期间极大地变化。然而,触摸 区域之外的其它接触测量可以在敲击过程中展现出明显的触摸不稳定性,并且因此根据本发明的实施例,可以使用其不稳定性测量来影响
静区宽度和对位置改变的抑制。 一个这种接触测量是"片密度(Patch density)",其可被一般地定义为特定片的总信号除以片的半径。在 提交于2007年1月3日的题目为"Multi-Touch Input Discrimination" 的美国专利申请No. 11/619,464中公开了片密度,通过引用将其内容 结合在此。可用于抑制运动改变的其它接触测量包括长半径、离心率 (长轴/短轴的比)或片优角(major angle )、接触力(contact force ) (对于具有顺应力感测层(compliant force-sensing layer)的触摸传 感器面板),所有这些都可以在敲击过程中表现出不稳定性。此处所 有这些接触测量不稳定性一般地被称为触摸不稳定性。
在图6a中,对于给定的每帧Z的百分率(% )改变,由图600 表示的Zinst函数可以返回表示每帧抑制位置改变量的值。非常小的 每帧Z的百分率(% )改变(在图6a的例子中低于6。/。)可以指示非 常小的触摸不稳定性,并且因此指示滑动动作,其中用户保持手指恒 定地与触摸表面接触。在Zinst函数的这个区域中,可以不存在特定 方向上的每帧抑制位置改变。
较大的每帧Z的百分率(% )改变(在图6a的例子中高于12% ) 可以指示大的触摸不稳定性,并且因此可以指示敲击动作,其中手指 仅与触摸表面进行瞬间接触。在Zinst函数的这个区域中,可以存在 特定方向上的最大每帧抑制位置改变(例如,大约2mm/帧)。中间 的每帧Z的百分率(% )改变(在图6a的例子中在6°/。和12%之间) 可以是"灰色区域",其中特定方向上的对每帧位置改变的抑制的量可 以相对于每帧Z的百分率(% )改变线性地变化。注意图600仅是例 子。本发明的实施例可以使用可被实现为查找表或者当需要时被计算 的比图6a所示更为复杂的函数。
图6b示出了根据本发明的实施例的、对应于图6a的Zinst函数 在每帧Z的各种百分率(% )改变下的AXin相对于AXout的示例图。 注意随着每帧Z的百分率(% )改变减小,不稳定性可以减小,并且 可以在6%或更小的每帧Z的百分率(% )改变达到稳定状态。注意,可以为Y方向重复上述所有内容,以^^计算Y方向的抑 制位置改变AYsuppr (AY 抑制,。
图7是示例的触摸图像700,以及由于系统噪声作为X和Y坐标 的实际触摸屏坐标702和报告的触摸屏坐标704的图示。在使用绝对 报告情况的系统中(报告X和Y值,以便与相对位置相反,指示触摸 图像的质心的精确位置),对触摸图像的坐标的准确报告可能是重要 的。然而,由于系统噪声,手指触摸的质心可能略微改变(见706 )。 换言之,由于系统噪声,质心可能表现为前后移动。
为了避免将这种噪声解释为滑动动作,可以采用滞后,其中建立 位置改变延迟。例如,如果检测到等于3个像素的位置改变,可以应 用滞后滤波,从而可以仅报告一个像素的位置改变(换言之,存在2 个像素的延迟)。因此,报告的位置可以总是落后2个像素。通过忽 略位置改变的前两个像素,可以忽略噪声。
图7示出可以如何将X方向的3个像素的实际移动报告为仅仅1 个像素的移动(见704)。这种方法对于抑制稳态噪声抖动是足够的, 但是它可能不足以用于可以引起多于3个像素的移动的随便敲击(例 如,5-IO个像素的移动)。换言之,3个像素的随便敲击可以通过滞 后滤波,并且可被报告为1个像素的移动,这可被错误地解释为滑动 动作。
因此,根据本发明的实施例,可以位于主机处理器中的应用层之 下的滤波器插件可以报告绝对位置,包括滞后滤波的影响。换言之, 应用层不报告原始位置数据,而是报告滞后滤波处理后的像素位置(滞 后中心)。因此,如果确定了触摸位置,并且它经历了可被滞后滤波 器滤除的明显位置改变,则报告的位置可以是原始触摸位置。然而, 如果该触摸位置经历了大于可被滞后滤波器滤除的明显位置改变,则 可以产生报告的位置改变。
可以并行地识别和才艮告"可作用(actionable)"的4立置改变。可 以使用可作用的位置改变,以便控制是否将明显的位置改变解释为滑 动动作。当可作用的位置改变非零时(即,当设置了事件标记,并且AX值和AY值指示非零的可作用的位置改变时),应用可将明显的位 置改变解释为滑动动作。可以使用绝对位置信息确定敲击的位置或拖 动/滚动手势开始的位置,但是由可以将明显位置改变证实为可作用的 平行通道控制是否进行拖动。
例如,如果触摸位置具有3个像素的明显位置改变,并且它通过 具有2个像素延迟的滞后滤波,则报告的位置将是l个像素。通常, 还将报告1个像素的可作用的位置改变。然而,可能存在l个像素的 报告的位置将不使得可作用的位置改变被报告的情况。例如如果报告 的位置改变完全被上述的Tinst和/或Zinst函数抑制,将不报告可作 用的位置改变。在另一个例子中,悬停的手指可被检测为弱触摸图像, 并且可以报告一个绝对位置,但是如果弱触摸图像被解释为悬停的手 指,将不设置事件标记,报告的位置改变将不被证实为"可作用",并 且可作用的位置改变为零。可以有利地阻止悬停的手指产生可作用的 位置改变,以便防止将悬停的手指的颤动解释为滑动动作。
图8示出了根据本发明的实施例的示例的软件分层,该软件分层 可以包括上述的X和Y抑制函数(其利用上述的Tinst和Zinst函数) 和上述的滞后滤波,并且可由图1的计算系统执行。本发明的实施例 可被实现在由主机处理器802执行的插件800中,但是还可被实现在 由面板处理器804或任意其它层执行的固件中。
图9a示出了根据本发明的实施例的可以包括触摸传感器面板 924、显示设备930和可以执行X和Y抑制函数和滞后滤波的图l的 计算系统100中的其它计算系统模块的示例移动电话936。
图9b示出了根据本发明的实施例的可以包括触摸传感器面板 924、显示设备930和可以执行X和Y抑制函数和滞后滤波的图l的 计算系统100中的其它计算系统模块的示例数字音频/视频播放器 938。
虽然参考附图完整描述了本发明的实施例,应当注意本领域的技 术人员将会明了各种改变和修改。这些改变和修改被认为包括在由所 附的权利要求定义的本发明的实施例的范围内。
权利要求
1.一种用于抑制检测到的触摸图像中的位置改变以便帮助区分触摸传感器面板上的敲击动作和滑动动作的方法,所述方法包括根据Tinst函数计算时间不稳定值Tinst,所述Tinst函数提供针对检测到所述触摸图像以来的给定时间tpress的第一每帧抑制位置改变量;和从所述检测到的触摸图像的第一每帧位置改变值中减去所述第一每帧抑制位置改变量,以便获得所述检测到的触摸图像的每帧抑制位置改变。
2. 如权利要求1所述的方法,所述Tinst函数开始于tpress = 0时 的最大每帧抑制位置改变值,并且逐渐减小到大于或等于预定延迟的 tpress的最小每帧抑制位置改变值。
3. 如权利要求1所述的方法,其中所述第一每帧位置改变量是检 测到的每帧位置改变。
4. 如权利要求1所述的方法,还包括对检测到的每帧位置改变应用滞后滤波,以便产生将所述检测到 的每帧位置改变延迟预定数目的像素的报告的每帧位置改变; 其中所述第一每帧位置改变是所述报告的每帧位置改变。
5. 如权利要求4所述的方法,还包括如果设置了事件标记,则将 所述报告的每帧位置改变标识为可作用的每帧位置改变。
6. 如权利要求5所述的方法,还包括如果所述报告的每帧位置改 变不是来自检测到的悬停事件,则设置所述事件标记。
7. 如权利要求5所述的方法,还包括如果所述每帧抑制位置改变 不为零,则设置所述事件标记。
8. —种用于抑制检测到的触摸图像中的位置改变以便帮助区分 触摸传感器面板上的敲击动作和滑动动作的方法,所述方法包括根据Zinst函数计算Z不稳定值Zinst,所述Zinst函数提供针对 给定每帧触摸不稳定性量的第一每帧抑制位置改变量;和从所述检测到的触摸图像的第 一 每帧位置改变值中减去所述第 一每帧抑制位置改变量,以便获得所述检测到的触摸图像的每帧抑制 位置改变。
9. 如权利要求8所述的方法,所述Zinst函数开始于每帧Z的零 百分率改变的最小每帧抑制位置改变值,并且达到大于或等于预定百 分率的每帧Z的百分率改变的最大每帧抑制位置改变值。
10. 如权利要求8所述的方法,其中所述第一每帧位置改变量是 检测到的每帧位置改变。
11. 如权利要求8所述的方法,还包括对检测到的每帧位置改变应用滞后滤波,以便产生将所述检测到 的每帧位置改变延迟预定数目的像素的报告的每帧位置改变; 其中所述第一每帧位置改变是所述报告的每帧位置改变。
12. 如权利要求11所述的方法,还包括如果设置了事件标记,则 将所述报告的每帧位置改变标识为可作用的每帧位置改变。
13. 如权利要求12所述的方法,还包括如果所述报告的每帧位置 改变不是来自检测到的悬停事件,则设置所述事件标记。
14. 如权利要求12所述的方法,还包括如果所述每帧抑制位置改 变不为零,则设置所述事件标记。
15. —种用于抑制检测到的触摸图像中的位置改变以便帮助区分 触摸传感器面板上的敲击动作和滑动动作的方法,所述方法包括根据Tinst函数计算时间不稳定值Tinst,所述Tinst函数提供针 对检测到所述触摸图^f象以来的给定时间tpress的第一每帧抑制位置改根据Zinst函数计算Z不稳定值Zinst,所述Zinst函数提供针对 给定每帧触摸不稳定性量的第二每帧抑制位置改变量;和从所述检测到的触摸图像的第一每帧位置改变值中减去所述第 一每帧抑制位置改变量和所述第二每帧抑制位置改变量中的较大的一 个,以便获得所述检测到的触摸图像的每帧抑制位置改变。
16. 如权利要求15所述的方法,所述Tinst函数开始于tpress = 0的最大每帧抑制位置改变值,并且逐渐减小到大于或等于预定延迟的tpress的最小每帧抑制位置改变值。
17. 如权利要求15所述的方法,所述Zinst函数开始于每帧Z的 零百分率改变的最小每帧抑制位置改变值,并且达到大于或等于预定 百分率的每帧Z的百分率改变的最大每帧抑制位置改变值。
18. 如权利要求15所述的方法,其中所述第一每帧位置改变是检 测到的每帧位置改变。
19. 如权利要求15所述的方法,还包括对检测到的每帧位置改变应用滞后滤波,以便产生将所述检测到 的每帧位置改变延迟预定数目的像素的报告的每帧位置改变; 其中所述第一每帧位置改变是所述报告的每帧位置改变。
20. 如权利要求19所述的方法,还包括如果设置了事件标记,则 将所述报告的每帧位置改变标识为可作用的每帧位置改变。
21. 如权利要求20所述的方法,还包括如果所述报告的每帧位置 改变不是来自检测到的悬停事件,则设置所述事件标记。
22. 如权利要求20所述的方法,还包括如果所述每帧抑制位置改 变不为零,则设置所述事件标记。
23. —种用于抑制检测到的触摸图像中的位置改变以便帮助区分 触摸传感器面板上的敲击动作和滑动动作的方法,所述方法包括根据Tinst函数计算时间不稳定值Tinst,所述Tinst函数在检测 到所述触摸图像之后立刻提供第一最大每帧抑制位置改变量,以便说 明触击过程中的位置改变,并且随后逐渐减小;根据Zinst函数计算Z不稳定值Zinst,所述Zinst函数提供针对 多个每帧触摸不稳定性量的第二最大每帧抑制位置改变量,以便说明 触击和抬起过程中的位置改变;和从所述检测到的触摸图像的第一每帧位置改变值中减去所述第 一每帧抑制位置改变量和所述第二每帧抑制位置改变量中的较大的一 个,以便获得所述检测到的触摸图像的每帧抑制位置改变。
24. 如权利要求23所述的方法,所述Tinst函数开始于tpress - 0的最大每帧抑制位置改变值,并且逐渐减小到大于或等于预定延迟的tpress的最小每帧抑制位置改变值。
25. 如权利要求23所述的方法,所述Zinst函数开始于每帧Z的 零百分率改变的最小每帧抑制位置改变值,并且达到大于或等于预定 百分率的每帧Z的百分率改变的最大每帧抑制位置改变值。
26. 如权利要求23所述的方法,其中所述第一每帧位置改变是检 测到的每帧位置改变。
27. 如权利要求23所述的方法,还包括对检测到的每帧位置改变应用滞后滤波,以便产生将所述检测到 的每帧位置改变延迟预定数目的像素的报告的每帧位置改变; 其中所述第一每帧位置改变是所述报告的每帧位置改变。
28. 如权利要求27所述的方法,还包括如果设置了事件标记,则 将所述报告的每帧位置改变标识为可作用的每帧位置改变。
29. 如权利要求28所述的方法,还包括如果所述报告的每帧位置 改变不是来自检测到的悬停事件,则设置所述事件标记。
30. 如权利要求28所述的方法,还包括如果所述每帧抑制位置改 变不为零,则设置所述事件标记。
31. —种包括程序代码的计算机可读介质,所述程序代码用于抑 制检测到的触摸图像中的位置改变以便帮助区分触摸传感器面板上的 敲击动作和滑动动作 所述程序代码使得执行一种方法,所述方法包 括根据Tinst函数计算时间不稳定值Tinst,所述Tinst函数提供针 对检测到所述触摸图像以来的给定时间tpress的第一每帧抑制位置改 变量;和从所述检测到的触摸图像的第一每帧位置改变值中减去所述第 一每帧抑制位置改变量,以便获得所述检测到的触摸图像的每帧抑制 位置改变。
32. 如权利要求31所述的计算机可读介质,所述Tinst函数开始 于tpress = 0时的最大每帧抑制位置改变值,并且逐渐减小到大于或等于预定延迟的tpress的最小每帧抑制位置改变值。
33. 如权利要求31所述的计算机可读介质,其中所述第一每帧位 置改变量是检测到的每帧位置改变。
34. 如权利要求31所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括对检测到的每帧位置改变应用滞后滤波,以便产生将所述检测到 的每帧位置改变延迟预定数目的像素的报告的每帧位置改变; 其中所述第 一每帧位置改变是所述报告的每帧位置改变。
35. 如权利要求34所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果设置了事件标记,则将所述报 告的每帧位置改变标识为可作用的每帧位置改变。
36. 如权利要求35所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果所述报告的每帧位置改变不是 来自检测到的悬停事件,则设置所述事件标记。
37. 如权利要求35所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果所述每帧抑制位置改变不为零, 则设置所述事件标记。
38. —种包括程序代码的计算机可读介质,所述程序代码用于抑 制检测到的触摸图像中的位置改变以便帮助区分触摸传感器面板上的 敲击动作和滑动动作,所述程序代码使得执行一种方法,所述方法包 括根据Zinst函数计算Z不稳定值Zinst,所述Zinst函数提供针对 给定每帧触摸不稳定性量的第一每帧抑制位置改变量;和从所述检测到的触摸图像的第一每帧位置改变值中减去所述第 一每帧抑制位置改变量,以便获得所述检测到的触摸图像的每帧抑制 位置改变。
39. 如权利要求38所述的计算机可读介质,所述Zinst函数开始 自每帧Z的零百分率改变的最小每帧抑制位置改变值,并且达到大于 或等于预定百分率的每帧Z的百分率改变的最大每帧抑制位置改变值。
40. 如权利要求38所述的计算机可读介质,其中所述第一每帧位 置改变量是检测到的每帧位置改变。
41. 如权利要求38所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括对检测到的每帧位置改变应用滞后滤波,以便产生将所述检测到 的每帧位置改变延迟预定数目的像素的报告的每帧位置改变; 其中所述第一每帧位置改变是所述报告的每帧位置改变。
42. 如权利要求41所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果设置了事件标记,则将所述报 告的每帧位置改变标识为可作用的每帧位置改变。
43. 如权利要求42所述的计算机可读介质,所述程序代码还用于 使得执行 一种方法,所述方法包括如果所述报告的每帧位置改变不是 来自检测到的悬停事件,则设置所述事件标记。
44. 如权利要求42所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果所述每帧抑制位置改变不为零, 则设置所述事件标记。
45. —种包括程序代码的计算机可读介质,所述程序代码用于抑 制检测到的触摸图像中的位置改变以便帮助区分触摸传感器面板上的 敲击动作和滑动动作,所述程序代码使得执行一种方法,所述方法包 括根据Tinst函数计算时间不稳定值Tinst,所述Tinst函数提供针 对检测到所述触摸图像以来的给定时间tpress的第一每帧抑制位置改变量;根据Zinst函数计算Z不稳定值Zinst,所述Zinst函数提供针对 给定每帧触摸不稳定性量的第二每帧抑制位置改变量;和从所述检测到的触摸图像的第一每帧位置改变值中减去所述第 一每帧抑制位置改变量和所述第二每帧抑制位置改变量中的较大的一 个,以便获得所述检测到的触摸图像的每帧抑制位置改变。
46. 如权利要求45所述的计算机可读介质,所述Tinst函数开始 于tpress-O的最大每帧抑制位置改变值,并且逐渐减小到大于或等 于预定延迟的tpress的最小每帧抑制位置改变值。
47. 如权利要求45所述的计算机可读介质,所述Zinst函数开始 于每帧Z的零百分率改变的最小每帧抑制位置改变值,并且达到大于 或等于预定百分率的每帧Z的百分率改变的最大每帧抑制位置改变 值。
48. 如权利要求45所述的计算机可读介质,其中所述第一每帧位 置改变是检测到的每帧位置改变。
49. 如权利要求45所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括对检测到的每帧位置改变应用滞后滤波,以便产生将所述检测到 的每帧位置改变延迟预定数目的像素的报告的每帧位置改变; 其中所述第一每帧位置改变是所述报告的每帧位置改变。
50. 如权利要求49所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果设置了事件标记,则将所述报 告的每帧位置改变标识为可作用的每帧位置改变。
51. 如权利要求50所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果所述报告的每帧位置改变不是 来自检测到的悬停事件,则设置所述事件标记。
52. 如权利要求50所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果所述每帧抑制位置改变不为零, 则设置所述事件标记。
53. —种包括如权利要求45所述的计算机可读介质的计算系统。
54. —种包括如权利要求53所述的计算系统的移动电话。
55. —种包括如权利要求53所述的计算系统的数字音频播放器。
56. —种包括包含程序代码的计算机可读介质的移动电话,所述 程序代码用于抑制检测到的触摸图像中的位置改变以便帮助区分触摸 传感器面板上的敲击动作和滑动动作,所述程序代码使得执行一种方法,所述方法包括根据Tinst函数计算时间不稳定值Tinst,所述Tinst函数提供针 对检测到所述触摸图像以来的给定时间tpress的第一每帧抑制位置改根据Zinst函数计算Z不稳定值Zinst,所述Zinst函数提供针对 给定每帧触摸不稳定性量的第二每帧抑制位置改变量;和从所述检测到的触摸图像的第一每帧位置改变值中减去所述第 一每帧抑制位置改变量和所述第二每帧抑制位置改变量中的较大的一 个,以便获得所述检测到的触摸图像的每帧抑制位置改变。
57. —种包括包含程序代码的计算机可读介质的数字音频播放 器,所述程序代码用于抑制检测到的触摸图像中的位置改变以便帮助 区分触摸传感器面板上的敲击动作和滑动动作,所述程序代码使得执 -f亍一种方法,所述方法包括根据Tinst函数计算时间不稳定值Tinst,所述Tinst函数提供针 对检测到所述触摸图像以来的给定时间tpress的第一每帧抑制位置改 变量;根据Zinst函数计算Z不稳定值Zinst,所述Zinst函数提供针对 给定每帧触摸不稳定性量的第二每帧抑制位置改变量;和从所述检测到的触摸图像的第一每帧位置改变值中减去所述第 一每帧抑制位置改变量和所述第二每帧抑制位置改变量中的较大的一 个,以便获得所述检测到的触摸图像的每帧抑制位置改变。
58. —种用于抑制检测到的触摸图像中的位置改变以便帮助区分 触摸传感器面板上的敲击动作和滑动动作的设备,所述设备包括用于根据Tinst函数计算时间不稳定值Tinst的装置,所述Tinst 函数提供针对检测到所述触摸图像以来的给定时间tpress的笫一每帧 抑制位置改变量;用于根据Zinst函数计算Z不稳定值Zinst的装置,所述Zinst 函数提供针对给定每帧触摸不稳定性量的第二每帧抑制位置改变量, 其中,Z表示所述检测到的触摸图像的总手指信号;和用于从所述检测到的触摸图像的第一每帧位置改变值中减去所 述第一每帧抑制位置改变量和所述第二每帧抑制位置改变量中的较大的一个,以便获得所述检测到的触摸图像的每帧抑制位置改变的装置。
59. —种包括程序代码的计算机可读介质,所述程序代码用于抑 制检测到的触摸图像中的位置改变以便帮助区分触摸传感器面板上的 敲击动作和滑动动作,所述程序代码使得执行一种方法,所述方法包 括:根据Tinst函数计算时间不稳定值Tinst,所述Tinst函数在检测 到所述触摸图像之后立刻提供第一最大每帧抑制位置改变量,以便说 明触击过程中的位置改变,并且随后逐渐减小;根据Zinst函数计算Z不稳定值Zinst,所述Zinst函数提供针对 多个每帧触摸不稳定性量的第二最大每帧抑制位置改变量,以便说明 触击和抬起过程中的位置改变;和从所述检测到的触摸图像的第一每帧位置改变值中减去所述第 一每帧抑制位置改变量和所述第二每帧抑制位置改变量中的较大的一 个,以便获得所述检测到的触摸图像的每帧抑制位置改变。
60. 如权利要求59所述的计算机可读介质,所述Tinst函数开始 于tpress-O的最大每帧抑制位置改变值,并且逐渐减小到大于或等 于预定延迟的tpress的最小每帧抑制位置改变值。
61. 如权利要求59所述的计算机可读介质,所述Zinst函数开始 于每帧Z的零百分率改变的最小每帧抑制位置改变值,并且达到大于 或等于预定百分率的每帧Z的百分率改变的最大每帧抑制位置改变 值。
62. 如权利要求59所述的计算机可读介质,其中所述第一每帧位 置改变是检测到的每帧位置改变。
63. 如权利要求59所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括对检测到的每帧位置改变应用滞后滤波,以便产生将所述检测到 的每帧位置改变延迟预定数目的像素的报告的每帧位置改变;其中所述第一每帧位置改变是所述报告的每帧位置改变。
64. 如权利要求63所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果设置了事件标记,则将所述报 告的每帧位置改变标识为可作用的每帧位置改变。
65. 如权利要求64所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果所述报告的每帧位置改变不是 来自检测到的悬停事件,则设置所述事件标记。
66. 如权利要求64所述的计算机可读介质,所述程序代码还用于 使得执行一种方法,所述方法包括如果所述每帧抑制位置改变不为零, 则设置所述事件标记。
全文摘要
本发明涉及用于减少敲击抖动的技术。公开了使用可将时间不稳定因子Tinst和触摸不稳定因子Zinst两者考虑在内的算法区分随便敲击和滑动动作。可以在检测到触摸事件后紧接着减去有限数量的每帧的运动。可以抑制指示随便敲击的小的横向运动,而指示迅速、长的光标运动的快速手指运动可以立刻通过滤波而不被抑制显著的量。可以将动作通行抑制因子以Zinst和Tinst的函数相减地应用于特定方向的运动,其中Zinst可以表示以针对每帧触摸不稳定性的特定百分率改变的手指速度给出的抑制值,并且Tinst可以表示针对特定tpress的手指速度给出的抑制值。
文档编号G06F3/048GK101689091SQ200880019858
公开日2010年3月31日 申请日期2008年6月12日 优先权日2007年6月13日
发明者W·C·维斯特曼 申请人:苹果公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1