触控操作识别和响应方法、装置及游戏操控方法、装置的制造方法_3

文档序号:9546853阅读:来源:国知局
的平均时间间隔(平均点击间隔时长),从抬起到按下可以 用来指导双击。所述平均点击间隔时长乘以系数N作为所述灵敏度图上对应的关键点位置 的时间间隔阈值,其中,1彡N彡1. 5。
[0127] 在获取每一关键点位置的灵敏度信息(包括时长阈值和时间间隔阈值)后,通过 插值来计算灵敏度图上其他位置的灵敏度信息,包括两种方式:矩形网格以及三角形网格。 可以理解的,根据不同的插值方式,所获取的关键点位置有所不同。
[0128] 例如,若采用矩形网格计算所述灵敏度图上其他位置的时长阈值和时间间隔阈值 时,所获取的关键点位置如图2所示,在获取每一关键点位置的灵敏度值后,可通过线性、 双线性或各向异性插值函数计算其他位置的灵敏度值。
[0129] 通过图2可知,利用矩形网格的方式根据规则的矩形空间网格,在网格上选取关 键值的点。这种方式对网格的所有交叉点都需要(且必须)进行用户信息的采样,缺失则 不能进行插值,如果网格稀疏,那么网格上的关键点位置通常不是用户操作的关键点位置 或者容易漏掉用户的关键点位置。也就是说。采用矩形网格的方式存在的问题在于网格上 的交叉点与用户实际的关键点很难形成一一对应的关系。
[0130] 我们观察了人在手机屏幕上操作的几个关键点,也就是关键的姿势:(1)手指完 全放松,伸展状态;(2)手指伸展,但是扭曲;(3)手指弯曲同时扭曲;(4)手指完全蜷缩。这 几个状态涵盖了最灵敏,最不灵敏的情况,同时关键的几个姿势也都包含了。利用这几个关 键点的插值结果,能得到不错的效果。然而这几个姿势并不能形成矩形网格,也通常不在矩 形网格的关键点上。如果网格密集,则用户则需要输入大量的数据。而采用三角形网格则 可以解决这个问题。
[0131] 参考图3~图4,当利用三角形网格计算所述灵敏度图上其他位置的时长阈值和 时间间隔阈值时,除了触摸屏的四个角所对应的关键点位置外,所采集的关键点位置不必 是规则矩形网格上的点,而可以随意指定关键点位置,这样就允许我们根据用户手指的特 性指定具有关键信息的点的位置,并根据精度的需要随意的增加和减少关键点位置的数 量。因此,所述关键点位置可以指定用户手指在不同姿势下(包括用户手指处于弯曲、半弯 曲以及伸展状态)进行点击所能到达的任意位置。
[0132] 如图3所示,当采用三角形网格方式时,我们通过分析了用户输入的关键点位置, 分别选取了用户在操作是手指弯曲的三个程度:弯曲(如P 1),半弯曲(如P2,P3, P4),伸展 (如P5, P6, P7),其次还选取屏幕上三个极限位置的敏感度(如Ps,P9, P1J。一些情况下并 不需要太高的精度,这时P2, P4点可以不需要采样,同时,当手指足够长时,P 8, P9, Pw中的一 个或多个也是不需要的。
[0133] 需要说明的是,当采用三角形网格计算所述灵敏度图上其他位置的时长阈值和时 间间隔阈值时,三角形网格的关键点位置不是我们预先设置的,而是根据用户的自己的习 惯而来的,例如,我们只提示用户做弯曲、半弯曲以及伸展等动作,具体的位置要根据用户 输入的情况而确定。也就是说,对于不同的用户Pl~P9的具体位置都是不同的,但是形状 都是类似的
[0134] 在采集了图3所示的关键点位置的灵敏度值后,则可通过三角形网格来计算其他 位置的灵敏度值。结合图4,具体通过以下公式计算所述灵敏度图上其他位置的灵敏度值:
[0135] Θ d= w Θ a+v Θ b+u Θ c
[0137] 其中,0a、0b、Θ。分别为a、b、c三个关键点位置或已知位置的灵敏度值,Θ为 a、b、c三个位置的中心点位置d的灵敏度值;Sdab、Sda。、Sdb。、S ab。分别为三角形dab、三角形 dac、三角形dbc、三角形abc的面积。
[0138] 这样,则可计算得到灵敏度图上的所有位置的灵敏度值,从而生成所述灵敏度图。 在响应用户的触控操作时,根据用户在触摸屏上的接触位置,则可确定该位置上的灵敏度 值(包括时长阈值和时间间隔阈值),并根据该位置上的灵敏度值来识别用户的触控操作 是单击、双击还是长按操作,从而提高识别的准确度。
[0139] 在本实施例中,所述灵敏度图与所述触摸屏上的位置是一一对应的,且精确到像 素点。灵敏度图上每个像素都记录了有关用户灵敏度的信息。因为用户与触摸屏接触的点 可能是任意像素,所以对于任意像素来说,我们都应该反馈一个用户在该像素的灵敏度信 息,以指导下一步的处理。
[0140] 如果灵敏度图采用了和屏幕分辨率完全相同,则灵敏度图与屏幕上的像素都是 一一对应的。当然,如果不需要那么精确,灵敏度图可以采用低一些的分辨率。例如仅为触 摸屏的1/4大小(长和宽都是触摸屏分辨率的一半),这样触摸屏上任意一个像素的灵敏度 值可以根据放大4倍后的灵敏度图上的相应像素的灵敏度值来获得。
[0141] 具体地,本发明实施例还包括如下用于计算触控操作的操作距离的步骤:
[0142] 响应于用户的触控操作,以一定采样周期采集触屏点的位置;
[0143] 根据所述触屏点在t时刻的位置、所述触屏点在t 一 1时刻的位置以及在t 一 1 时刻触控操作的操作距离,计算在t时刻触控操作的操作距离并存储;t为正整数。
[0144] 具体地,先根据所述触屏点在t时刻的位置和所述触屏点在t 一 1时刻的位置计 算触屏点从t 一 1时刻到t时刻的移动距离;再将t 一 1时刻触控操作的操作距离加上触 屏点从t 一 1时刻到t时刻的移动距离得到在t时刻触控操作的操作距离。
[0145] 如果只当达到某个条件时才根据之前触屏点的所有位置计算操作距离,会产生很 大的计算量。因此在本实施例的方案中,每当采集到触屏点的一个位置,即可计算当前触控 操作的操作距离并且存储,存储是为了方便下一时刻计算触控操作的操作距离,即将计算 量分摊,从而不至于使得系统在一瞬间的计算量负荷太大。因此,上述计算触控操作的操作 距离的方案是具备更准确、更方便以及更有效率的优点。
[0146] 另外,由于点击操作是在时间维度上是快速的且在空间维度上是静止的操作,因 此,所述预设的距离阈值尽可能小。
[0147] 本实施例优选为对用户在移动终端触摸屏的触控操作进行识别,以判定用户的触 控操作为单击、双击还是长按操作。
[0148] 可见,本实施例的触控操作识别方法通过预先生成的灵敏度图记录用户在触摸屏 上的每一个位置的灵敏度值(包括时长阈值和时间间隔阈值),并根据用户当前的触控操 作在所述触摸屏上的位置所对应的时长阈值和时间间隔阈值,以识别用户的触控操作为单 击、双击还是长按,从而可以快速、准确地识别出触控操作是单击、双击还是长按操作。
[0149] 参考图5,是本发明实施例2中一种触控操作识别方法的流程示意图。该方法包括 步骤:
[0150] S201、响应于用户在触摸屏上的触控操作,开始记录用户的操作时长,并判断用户 执行所述触控操作的操作姿势为左手或右手;
[0151] S202、获取所述触控操作在所述触摸屏上的初始位置,并根据判断结果获取预先 生成的用户左手或右手操作的灵敏度图,从而得到所述初始位置的灵敏度值;其中,所述灵 敏度图与所述触摸屏上的位置一一对应,且所述灵敏度图上的每一位置存储对应的灵敏度 值,所述灵敏度值包括时长阈值和时间间隔阈值;
[0152] S203、在所述操作时长达到所述时长阈值情况下,若所述触控操作在所述触摸屏 上的操作距离小于预设的距离阈值时,判定所述触控操作为长按操作;
[0153] S204、在所述操作时长小于所述时长阈值情况下,若响应于用户的触控操作结束 到再次触控之间的间隔时间以及位置距离分别小于所述时间间隔阈值以及小于所述距离 阈值时,判定所述触控操作为双击操作,否则判定所述触控操作为单击操作。
[0154] 本实施例与实施例1的不同在于:在步骤S201中,还需要判断用户执行所述触控 操作的操作姿势为左手或右手,并获取预先生成的用户左手或右手操作的灵敏度图,从而 得到所述初始位置的灵敏度值。例如,当判断用户执行所述触控操作的操作姿势为左手时, 则获取预先生成的用户左手操作的灵敏度图,并根据用户左手操作的灵敏度图确定所述初 始位置的灵敏度值。由于用户使用左手/右手在所述触摸屏上的操作习惯有所不同,因此 有必要预先记录用户左手以及右手的输入习惯,从而得到用户左手和右手的灵敏度图。而 用户左手和右手的灵敏度图的生成过程请参考实施例1,在此不再赘述。
[0155] 参考图6,是本发明实施例3中一种触控操作识别方法的流程示意图。该方法包括 步骤:
[0156] S301、响应于用户在触摸屏上的触控操作,开始记录用户的操作时长,并判断用户 执行所述触控操作的操作姿势为横向或纵向;
[0157] S302、获取所述触控操作在所述触摸屏上的初始位置,并根据判断结果获取预先 生成的用户横向或纵向操作的灵敏度图,从而得到所述初始位置的灵敏度值;其中,所述灵 敏度图与所述触摸屏上的位置一一对应,且所述灵敏度图上的每一位置存储对应的灵敏度 值,所述灵敏度值包括时长阈值和时间间隔阈值;
[0158] S303、在所述操作时长达到所述时长阈值情况下,若所述触控操作在所述触摸屏 上的操作距离小于预设的距离阈值时,判定所述触控操作为长按操作;
[0159] S304、在所述操作时长小于所述时长阈值情况下,若响应于用户的触控操作结束 到再次触控之间的间隔时间以及位置距离分别小于所述时间间隔阈值以及小于所述距离 阈值时,判定所述触控操作为双击操作,否则判定所述触控操作为单击操作。
[0160] 本实施例与实施例1的不同在于:在步骤S301中,还需要判断用户执行所述触控 操作的操作姿势为横向或纵向,并获取预先生成的用户横向或纵向操作的灵敏度图,从而 得到所述初始位置的灵敏度值。例如,当判断用户执行所述触控操作的操作姿势为横向时, 则获取预先生成的用户横向操作的灵敏度图,并根据用户横向操作的灵敏度图确定所述初 始位置的灵敏度值。由于用户使用横向和纵向在所述触摸屏上的操作习惯有所不同(参考 图7a~7b),因此有必要预先记录用户横向以及纵向的输入习惯,从而得到用户横向和纵 向的灵敏度图。而用户横向和纵向的灵敏度图的生成过程请参考实施例1,在此不再赘述。
[0161] 图8是本发明实施例4中一种触控操作识别方法的流程示意图。该方法包括步 骤:
[0162] S401、响应于用户在触摸屏上的触控操作,开始记录用户的操作时长,并判断用户 执行所述触控操作的操作姿势为左手或右手,以及手持所述触摸屏的姿势为横向或纵向;
[0163] S402、获取所述触控操作在所述触摸屏上的初始位置,并根据判断结果获取预先 生成的用户左手或右手以及横向或纵向操作的灵敏度图,从而得到所述初始位置的灵敏度 值;其中,所述
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1