具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,术语“内侧”、“外侧”、“纵向”、“横向”、“上”、“下”、“顶”、“底”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明而不是要求本发明必须以特定的方位构造和操作,因此不能理解为对本发明的限制。
下面将参照附图来详细说明根据本发明的多点旋转运动的识别方法和装置。
下面将首先说明根据本发明实施例的多点旋转运动的识别方法,其中图1显示了本发明的一个实施例的多点旋转运动的识别方法的流程图。该方法包括:
步骤A:沿着至少一个方向检测触控装置上由物体触碰所引起的感应波形,在本发明的一个实施例中,该感应波形可由物体的触碰引起,或者也可由声波引起,再或者也可由图像投影所引起;
步骤B:根据检测的感应波形确定触碰触控装置的物体数目;
步骤C:判断检测的物体数目是否为多个;
步骤D:如果判断检测的所述物体数目为多个,则判断所述多个物体是否执行旋转运动;以及
步骤E:如果多个物体执行旋转运动,则触控装置生成控制信号,并根据控制信号在触控装置上执行控制操作。
由此根据沿着至少一个方向获得产生的感应波形,并根据感应波形的数目识别,从而可以准确地识别物体的数目。
需要说明的是,此处该感应波形可以通过触碰产生、也可以通过其他例如声学传感、光学传感、电学传感等来获得所述感应波形,这也落入本发明的保护范围之内。
在上述步骤A中,可以包括沿着所述触控装置的触控面上的第一方向检测物体触碰所引起的第一感应波形;以及沿着所述触控装置的触控面上的第二方向检测物体触碰所引起的第二感应波形。
需要说明的是,在下述说明中将以触控装置作为示例性实施例来说明本发明的识别方法和装置,但是普通技术人员在阅读了本发明的下述详细说明之后,显然也可以将本发明的识别方法和装置应用/结合到其他的方法和设备中,该方法和装置的保护范围由所附权利要求及其等同手段来进行限定。
图2是本发明的一个实施例的触控装置上的感应线的示意图,其中触控装置由X方向感应线11和Y方向感应线12组合而成,并利用此X方向感应性线11和Y方向感应线12来获得感应波形,F1和F2为触碰物体。
需要说明的是,感应线只是用来传感触碰波形的一种方法和/或者装置,其他例如利用声波、光波等的传感器也可以被采用,其也落入本发明的保护范围之内。
需要说明的是,X方向感应线11和Y方向感应线12之间可以形成预定的夹角。且优选地,该夹角为直角。
此外,在下述说明中,术语“上升趋势波形”指的是该段的感应波形从感应波形的下方穿越至参考波形的上方的波形;术语“下降趋势波形”指的是该段的感应波形从感应波形的上方穿越至参考波形的下方的波形,此处并未将该波形局限到任何具体的波形形状,其可以是普通技术人员理解的任何波形形状,只要其满足前述的“上升趋势波形”和“下降趋势波形”的定义。此外,术语“参考波形”可以是任何预设的波形,在本发明中,该参考波形为直线,但是普通技术人员显然可以根据实际应用的需要选择所需的参考判断基准,这也落入本发明的保护范围之内。
在检测物体触碰时,先检测X方向各条感应线得到X方向的感应波形,并将X方向的感应波形与参考波形(图4-6中的虚线)进行比较判断得到X方向上升和/或下降趋势波形的次数,通过计算X方向上升和/或者下降趋势波形的次数进而得到X方向触碰物体的数目。然后检测Y方向各条感应线得到Y方向的感应波形,并将Y方向的感应波形与参考波形值进行比较判断得到Y方向上升和/或下降趋势波形的次数,进而得到Y方向触碰物体的数目。
可选地,接着将X方向触碰物体的数目与Y方向触碰物体的数目进行比较,得到的大者为实际触控装置上触碰物体的数目。
需要说明的是,为了增强感应波形的检测精度,可以沿着触控装置的触控面的更多的方向(例如3个、4个或者5个等)采集沿着这些方向触碰所产生的感应波形,这也落入本发明的保护范围之内。
下面将详细描述本发明的识别方法的各步骤。图3是本发明的一个实施例的多点旋转运动的识别方法中步骤B的流程图,图4是本发明的第一实施例的感应波形与参考波形的示意图。
如上所述,在步骤A中可以检测并获得由物体引起的感应波形。在步骤B中,包括:
B1:将所述感应波形的每个感应值与参考波形值比较,以判定感应波形是否包括上升趋势波形和/或者下降趋势波形;以及
B2:根据感应波形中上升趋势波形和/或下降趋势波形的数目确定物体的数目。
下面结合图3对多点旋转运动的识别方法中步骤B进行详细说明。在步骤B中,包括:
步骤300:将感应波形的当前感应值与参考波形值进行比较,判断感应波形的当前感应值是否大于参考波形感应值;若判断为是,执行步骤301,如果判断为否则执行步骤303;
步骤301:进一步判断感应波形的前一感应值是否小于参考波形感应值,判断为是,则执行步骤302且得到该处感应波形是上升趋势波形,并记录该上升趋势波形;如果判断为否,则执行步骤305;
步骤303:进一步判断感应波形的前一感应值是否大于参考波形感应值,如果判断为是,则执行步骤304并得到该处感应波形是下降趋势波形,并记录该下降趋势波形,判断为否执行步骤305;
步骤305为:判断当前感应值是否是最后一个,若判断是最后一个,则执行步骤306:根据上升和/或下降趋势波形的次数来决定该方向的物体触碰数量,若判断为否,重新执行步骤300。其中,该实施例只是给出了两个物体触碰时的波形,显然该方法也可以用于大于两个触碰物体时的情况。
根据本发明的一个实施例,在图1中的步骤B之前还可以包括:设置第一初始感应值,其中,第一初始感应值根据所述感应波形的感应方向设置。其中,在本发明的实施例中所述感应波形的感应方向为由物体引起的变化量方向。例如图4中感应波形的感应方向为向上,而在图5中感应波形的感应方向为向下。在本发明的实施例中,如果感应波形的感应方向向上,则第一初始感应值应小于参考波形值,反之,如果感应波形的感应方向向下,则第一初始感应值应大于参考波形值。以及在将感应波形的初始感应值与参考波形值进行比较之后,根据第一初始感应值与所述参考波形值的比较结果确定感应波形是否包括上升趋势波形或下降趋势波形。
根据本发明的一个实施例,在图1中的步骤B之前还可以包括:设置第二初始感应值,其中,第二初始感应值根据所述感应波形的感应方向设置。在本发明的实施例中,如果感应波形的感应方向向上,则第二初始感应值应小于参考波形值,反之,如果感应波形的感应方向向下,则第二初始感应值应大于参考波形值。以及在将感应波形的最终感应值与参考波形值进行比较之后,根据第二初始感应值与参考波形值的比较结果确定感应波形是否包括上升趋势波形或下降趋势波形。其中,在本发明的实施例中上述的感应峰值是指由物体所引起的最大感应变化量。
通过在感应波形的初始感应值之前和最终感应值之后分别增加第一初始感应值和第二初始感应值,触控装置上第一条感应线感应值将与预设的第一初始感应值进行比较,最后一条感应线感应值将与预设的第二初始感应值进行比较,这样可以防止依次进行相邻两个感应线感应值进行判断时出现第一条或者最后一条感应线感应值没有相应对象进行比较判断的情况,且这样可以得到上升趋势波形的数目和下降趋势波形的数目相等,从而可以将上升趋势波形的数目作为触碰物体的数目,或者将下降趋势波形的数目作为触碰物体的数目。
如果得到上升趋势波形的数目和下降趋势波形的数目不相等,则重新执行步骤A以重新进行数目的识别。
根据本发明的一个实施例,可以通过判定感应波形与参考波形的交点之间的距离来进一步判断触碰物体的数目。
当物体触碰的感应波形的局部在参考波形之上时,需判断感应波形与参考波形上升交点和紧跟其后的下降交点之间的距离是否大于第一预定阈值,这样可以进一步判断该触碰物体的实际存在,若物体触碰的感应波形的局部在参考波形之下,则判断感应波形与参考波形下降交点和紧跟其后的上升交点之间的距离是否大于第一预定阈值,若大于则认定触碰物体实际存在。根据本发明的一个实施例,该阈值可以为触控装置上受单个手指触碰影响的最小宽度;这样可以减少误触碰的发生。
如前所述,在该方法中还包括检测其他方向感应线的感应值,从而得到其他方向触碰物体的数目,进一步得到物体触碰触控装置的数目是各方向触碰物体的数目中的最大值。
图4为当有物体触碰时X或Y任一方向产生的波形图。400为扫描感应线得出的感应波形图,401为预设的参考波形。A、B、C、D四个点为感应波形400与参考波形401的交点;其中A、C为上升点,B、D为下降点。这四个点的识别可判断触碰物体的数目。判断A、B之间的距离或C、D两点之间的距离是否大于第一预定阈值,若大于,认定触碰物体实际存在。
其中,参考波形401是由物体触碰触控装置上的X感应线或Y感应线,其所触碰位置的感应量,进行量测、平均并依评估所求得的一种参考设定值或参考范围。根据本发明的一个实施例,上述触控装置可以是电容式触控装置。其中X、Y感应线的方向不一定为垂直,可为任意角度,需要根据实际装置中感应线形状来决定。
图5是本发明的第二实施例的感应波形与参考波形的示意图。如图5中所示,当触控装置上有物体触碰时,由于检测方法以及检测值的处理方法不同而得到如图5所示波形;其中501为预设的参考波形,500为扫描感应线得出的感应波形图。A’、B’、C’、D’四个点为参考线501与感应波形500的交点;其中A’、C’为下降点,B’、D’为上升点;这四个点的识别可判断触碰物体的数目;其具体的运算方法与上述相似,此处不再赘述。其中,该实施例只是给出了两个物体触碰时的波形,该方法也可以用于大于两触碰物体时的情况。
图6本发明第三实施例的感应波形与参考波形的示意图,其中感应波形为表面声波触控装置的接收器所接收到的波形。该装置配有发射声波的发射换能器和接收声波的接收换能器。工作时发射换能器将触控面板控制器送来的电信号转换成声波能,通过触控面板四边刻的反射表面超声波的反射条纹反射后,由接收换能器接收后转换成电信号。当有物体触碰屏幕时,部分声波能量被吸收,于是改变了接收信号,经过该触控装置中的控制器进一步处理,从而得到所需的触碰感应波形。
在图6中,601为某一时间段接收换能器接收到的声波能量叠加成的波形信号,该波形是在有物体触碰时的波形,波形中存在两个衰减缺口602和603;该衰减缺口602是由于物体靠近或触碰时,被触碰位置的部分声波能量被吸收,声波出现衰减所造成的。600为预设参考波形。由上述方法可以判断出M、E为下降趋势中感应波形601与参考波形的交点,N、F为上升趋势中感应波形601与参考波形的交点,可以得到上升趋势波形的数目和下降趋势波形的数目均为两次,并得到有两个物体触碰该表面声波触控装置。本实施例只是给出了两个物体触碰时的情况,但是不局限于两个物体。
根据步骤B中检测得到的在触控装置上触碰的物体的数目,执行步骤C和步骤D:判断物体数目是否为多个,当物体数目为多个时,进一步判断多个物体是否执行旋转运动。
下面结合图7和图8以两个物体(如手指)绕着感应区域顺时针旋转运动为例对步骤D进行说明。需要说明的是,在普通技术人员阅读了本发明的下述技术方案之后,显然可以很容易地将例如两个物体绕感应区域顺时针的旋转运动应用到多个物体绕感应区域进行顺时针或者逆时针旋转运动的情况中来,由此本发明的保护范围由所附的权利要求限定,此处两个物体仅出于示例的目的,而不是为了限制本发明的保护范围。
图7显示了两个物体(如手指)绕着感应区域做顺时针旋转运动的示意图。图7中F1和F2为两个触碰物体。首先,通过硬件感应装置检测一定时间内,两个物体(如手指)在装置的感应区域里进行的旋转操作,从而进行信息采集。硬件感应装置例如可以为触摸板、笔记本电脑触控面板、手机触控面板或可触摸电视机等。
采集该两个物体运动时的位置信息。设触碰物体F1的坐标为(xa,ya),触碰物体F2的坐标为(xb,yb),根据公式D2=(yb-ya)2+(xb-xa)2判断该两个物体运动时不同时刻两两间相对位置,即两个物体之间的相对位置变化量。当该两个物体不同时刻两两相对位置的变化量小于第二预定阈值时,则可确认为多物体移动手势。
在确认为多个物体在触控装置上触碰后,进一步根据多个物体的至少三个相邻位置关系判断多个物体是否执行旋转运动。
下面以两个触碰物体为例对判断物体是否执行旋转运动进行说明。
图8显示了两个物体(如手指)绕着感应区域做顺时针旋转运动的等效示意图。如图8中所示,计算所述当前时刻位置信息得到一个等效坐标(X0,Y0)并标记为第一等效坐标,将当前时刻之前的第一时刻的等效坐标(X1,Y1)标记为第二等效坐标,将第一时刻之前的第二时刻的等效坐标(X2,Y2)标记为第三等效坐标。其中,第一等效坐标、第二等效坐标和第三等效坐标可以是该两个物体的质心坐标,亦可以是该两个物体其中一个物体的位置坐标或其他形式计算的等效坐标。由此,术语“等效坐标”指的是可以等效地代替物体在所述感应区域上的位置的有效坐标,即所述等效指标应理解为最广义上的坐标,而非局限于此处所举出的示例。而后,根据第一、二等效坐标间的坐标差值,产生第一斜率量K1,将第二、三等效坐标得到的斜率量K2标记为第二斜率。
其中,K1=(Y0-Y1)/(X0-X1),K2=(Y1-Y2)/(X1-X2)。由以下反正切函数关系式可以分别得到其对应的倾斜角θ1和θ2的值:
θ1=arctan[(Y0-Y1)/(X0-X1)];以及
θ2=arctan[(Y1-Y2)/(X1-X2)]。
当且仅当X1=X2且Y1>Y2时,其对应的倾斜角为90度;X1=X2且Y1<Y2时,其对应的倾斜角为-90度,且有θ=θ1-θ2。如8图所示,θ为该多物体所旋转的角度,该角度差θ可以方便地作为例如软件对象的旋转控制参考量。如图8中所示,当θ>0时,表示该多物体逆时针旋转;当θ<0时,表示该多物体顺时针旋转。
当然本领域技术人员可以理解的时,当两个物体(如手指)绕着感应区域做逆时针旋转运动时,也可以采用本发明上述实施例的多点旋转运动的识别方法对旋转动作进行识别。
下面结合图9和图10对多物体的数目和触碰动作的识别进行说明。
如图9所示,从步骤91开始执行,然后执行步骤92。
步骤92:检测由物体引起的感应波形;
步骤93:根据参考波形判断感应波形的上升趋势波形和/或下降趋势波形,并分别得到上升和/或下降趋势波形的数目;
步骤94:根据上升趋势波形和/或下降趋势波形的最大数目,确定物体的数目;
步骤95:判断步骤94中得到的物体的数目是否大于或等于两个,当物体的数目大于或等于两个时,则确认为多物体事件,执行步骤96,否则,执行步骤97;
步骤96:判断物体是否运动,当物体运动时,则执行步骤98,否则,执行步骤97;
步骤97:如果物体未运动时,仅根据物体的数目判断进行操作,并执行步骤99,结束本次流程;
步骤98:如果物体发生运动,则根据物体的数目和运动来进行判断操作,然后执行步骤99,结束本次流程。
下面将结合图10来详细描述上述步骤98。如图10所示,根据物体的数目和运动判断操作包括如下步骤:
从步骤981开始执行。然后,执行步骤982;
步骤982:判断多物体运动时两两之间的相对位置变化量是否小于第二预定阈值,当两两间相对位置的变化量小于第二预定阈值时,则执行步骤983,否则,执行步骤985,其中第二预定阈值可以根据触控装置的敏感度来设定;
步骤983:处理该多物体运动的位置信息并产生控制信号,如旋转控制信号、缩放控制信号等。
步骤984:该触控装置根据上述控制信号执行相应的控制操作,例如控制软件对象的行为表现、旋转角度控制、拨号等;以及
步骤985:流程结束。
在本发明的一个实施例中,在步骤983中,根据多物体运动的位置信息,可以通过以下三种方式之一识别多物体执行旋转动作。
1)根据第一等效坐标和第二等效坐标之间的斜率以及第二等效坐标和第三等效坐标之间的斜率的差值大小关系,判断多个物体执行逆时针旋转运动或者顺时针旋转运动。
2)根据第一等效坐标和第二等效坐标的连线与第二等效坐标和第三等效坐标之间的连线的角度大小关系,判断多个物体执行逆时针旋转运动或者顺时针旋转运动。
3)根据第一等效坐标、第二等效坐标和第三等效坐标的物理坐标关系,判断多个物体执行逆时针旋转运动或者顺时针旋转运动。
下面结合图11和图12对第一种方式的利用等效坐标斜率的差值大小关系判断多物体的旋转动作的流程进行说明。
如图11所示,流程从步骤101开始执行;
步骤102:采集当前时刻多物体的位置信息,处理该位置信息得到当前时刻的第一等效坐标(X0,Y0);
步骤103:将当前时刻之前的第一时刻的等效坐标(X1,Y1)标记为第二等效坐标,将第一时刻之前的第二时刻的等效坐标(X2,Y2)标记为第三等效坐标;
步骤104:根据第一等效坐标(X0,Y0)、第二等效坐标(X1,Y1)间的坐标差值,产生第一斜率量K1;
步骤105:根据第二等效坐标(X1,Y1)、第三等效坐标(X2,Y2)间的坐标差值,产生第二斜率量K2;
步骤106:判断第一斜率量K1和第二斜率量K2的差值是否为0,即判断第一斜率量K1和第二斜率量K2是否相等,当K1=K2时,则执行步骤102,再次读取另一组位置信息数据;否则,根据下述条件判断多物体的旋转动作为顺时针旋转或逆时针旋转:
1)当X0>X1>X2时,0<K1<K2或者K1<K2<0或者K2>0>K1则识别多物体执行顺时针旋转动作;0<K2<K1或者K2<K1<0或者K2<0<K1则识别多物体执行逆时针旋转动作;
2)当X0<X1<X2时,0>K2>K1或者K2>K1>0或者K2>0>K1则识别多物体执行顺时针旋转动作;K1>K2>0或者0>K1>K2或者K2<0<K1则识别多物体执行逆时针旋转动作;
3)当X0<X1>X2且K1>0>K2时,或当X0>X1<X2且K2<0<K1时则识别多物体执行顺时针旋转动作;当X0<X1>X2且K1<0<K2时,或当X0>X1<X2且K2>0>K1时则识别多物体执行逆时针旋转动作;
4)当X0=X1或X1=X2时,X0<X1且Y0<Y1<Y2,或X1>X2且Y0<Y1<Y2,或X0>X1且Y0>Y1>Y2,或X1<X2且Y0>Y1>Y2,则识别多物体执行顺时针旋转动作;X0<X1且Y0>Y1>Y2,或X1>X2且Y0>Y1>Y2,或X0>X1且Y0<Y1<Y2,或X1<X2且Y0<Y1<Y2,则识别多物体执行逆时针旋转动作;
步骤107:根据步骤106中识别得到的多物体的旋转动作向触控装置输出相应的控制信号;
步骤108中:流程结束。
图12(a)示出了两个物体在触控装置上绕着感应区域执行顺时针旋转动作的示意图,图12(b)示出了两个触碰物体在触控装置上绕着感应区域执行逆时针选择动作的示意图。其中,图12(a)和图12(b)中的F1和F2为两个触碰物体。
下面结合图13和图14对第二种方式的利用等效坐标角度的大小关系判断多物体的旋转动作的流程进行说明。
如图13所示,流程从步骤111开始执行;
步骤112:采集当前时刻多物体的位置信息,处理该位置信息得到当前时刻的第一等效坐标(X0,Y0);
步骤113:将当前时刻之前的第一时刻的等效坐标(X1,Y1)标记为第二等效坐标,将第一时刻之前的第二时刻的等效坐标(X2,Y2)标记为第三等效坐标;
步骤114:根据第一等效坐标(X0,Y0)、第二等效坐标(X1,Y1)间的坐标差值,产生第一斜率量K1;
步骤115:根据第二等效坐标(X1,Y1)、第三等效坐标(X2,Y2)间的坐标差值,产生第二斜率量K2;
步骤116:根据步骤115中得到的第一斜率量K1和第二斜率量K2利用反正切函数关系式可以分别得到其对应的倾斜角θ1和θ2的值:
θ1=arctan[(Y0-Y1)/(X0-X1)];
θ2=arctan[(Y1-Y2)/(X1-X2)]。
结合图8所示,当且仅当X1=X2且Y1>Y2时,其对应的倾斜角为90度;X1=X2且Y1<Y2时,其对应的倾斜角为-90度;
步骤117:判断θ1-θ2是否为0,即判断θ1和θ2是否相等,当θ1=θ2时,则执行步骤112,再次读取另一组位置信息数据;否则根据下述条件判断多物体的旋转动作为顺时针旋转或逆时针旋转:
1)当θ=θ1-θ2<0时,则识别多物体执行顺时针旋转动作;
2)当θ=θ1-θ2>0时,则识别多物体执行逆时针旋转动作。
步骤118:根据步骤117中识别得到的多物体的旋转动作向触控装置输出相应的控制信号;
步骤119:流程结束。
图14(a)示出了两个物体在触控装置上绕着感应区域执行顺时针旋转动作(θ<0)的示意图,图14(b)示出了两个触碰物体在触控装置上绕着感应区域执行逆时针选择动作(θ>0)的示意图。其中,图14(a)和图12(b)中的F1和F2为两个触碰物体。
在本发明的一个实施例中,识别多物体在触控装置上执行旋转动作还可通过下述步骤:
(1)获得多个物体的前后相邻的第一等效坐标、第二等效坐标和第三等效坐标,其中,第一等效坐标(X0,Y0)为当前时刻多物体的位置信息,第二等效坐标(X1,Y1)为当前时刻之前的第一时刻的等效坐标(X1,Y1),第三等效坐标(X2,Y2)为第一时刻之前的第二时刻的等效坐标(X2,Y2);
(2)根据第一等效坐标、第二等效坐标和第三等效坐标的物理坐标关系,判断多个物体执行逆时针旋转运动或者顺时针旋转运动及其旋转幅度。
在本发明的一个实施例中,第一等效坐标、第二等效坐标和第三等效坐标为多个物体中的质心坐标或者至少一个的物理坐标。
根据上述实施例提供的识别方法可以识别多个物体执行的旋转动作,然后执行步骤984,触控装置生成与上述旋转动作对应的控制信号,并根据该控制信号在触控装置上执行相应的控制操作,例如控制触控装置内部的软件对象的行为表现。其中,软件对象的行为表现为响应多物体在触控装置的感应区域上的运动轨迹。
据该控制信号在触控装置上执行相应的控制操作,例如:当检测到多个物体在触控装置执行左旋转行为时,则触控装置生成左旋转信号,并控制软件对象执行左旋转行为。举例来说,触控装置根据生成的左旋转信号控制触控装置显示的影像图像的向左旋转;触控装置根据生成的左旋转信号调整触控装置的音频参数,如降低(或增高)触控装置的音量。
相应地,当检测到多个物体在触控装置执行右旋转行为时,则触控装置生成右旋转信号,并控制软件对象执行右旋转行为;当检测到多个物体在触控装置执行内螺旋式旋转行为时,则触控装置生成内螺旋旋转信号,并控制软件对象执行内螺旋式旋转行为;当检测到多个物体在触控装置执行外螺旋式旋转行为时,则触控装置生成外螺旋旋转信号,并控制软件对象执行外螺旋式旋转。
通过本发明的多点旋转运动的识别方法,根据沿着触控装置的触碰面上的至少一个方向获得所产生的感应波形,可以准确地识别物体的数目。并且,当检测有多个物体在触控装置上触碰时,可以进一步准确地识别多个物体的旋转运动,并在触控装置上执行与旋转运动对应的控制操作。
本发明的多点旋转运动的识别方法识别触控装置上物件的旋转手势,算法简单,程序简洁,并且大部分使用加减法来进行运算,减少了乘除法的使用,从而达到指令精简,可扩展性好的特点。本发明的多点旋转运动的识别方法在相应嵌入式系统中对处理器运行速度和程序存储空间大小要求低。在满足嵌入式系统功能、性能的前提下能够大幅度降低系统成本,同时使触控装置的小型化可以让用户操作起来更加丰富和人性,满足了用户追求多点手势操作的流行风潮。
下面参考图15至图17描述根据本发明实施例的用于触控装置的多点旋转运动的设备装置150。
如图15所示,根据本发明实施例的用于触控装置的多点旋转运动的设备装置150包括检测模块151,所述检测模块151沿着至少一个方向检测触控装置上由物体触碰所引起的感应波形;触碰物体数目确定模块152,所述触碰物体数目确定模块152根据检测的感应波形确定触碰触控装置的物体数目;物体旋转运动确定模块153,所述物体旋转运动确定模块153在触碰物体数目确定模块识别出物体数目为多个时、用于判断多个物体是否执行旋转运动;和信号产生模块154,所述信号产生模块154在物体旋转运动确定模块确定多个物体执行旋转运动时生成控制信号,且根据控制信号在所述触控装置上执行控制操作。
检测模块151中还包括在感应波形的初始感应值之前和最终感应值之后分别增加第一初始感应值和第二初始感应值,该第一初始感应值和第二初始感应值可以根据所述感应波形的感应方向设置。其中,在本发明的实施例中所述感应波形的感应方向为由物体引起的变化量方向。例如如图4中感应波形的感应方向为向上,而在图5中感应波形的感应方向为向下。在本发明的实施例中,如果感应波形的感应方向向上,则第一初始感应值应小于参考波形值,反之,如果感应波形的感应方向向下,则第一初始感应值应大于参考波形值。在本发明的实施例中,如果感应波形的感应方向向上,则第二初始感应值应小于参考波形值,反之,如果感应波形的感应方向向下,则第二初始感应值应大于参考波形值。
检测模块151包括发射换能器,所述发射换能器发射声波;和接收换能器,所述接收换能器接收来自发射换能器的声波,触控装置在被触碰后吸收部分的声波,接收换能器根据吸收后的声波产生有效感应波形。具体而言,工作时发射换能器将触控装置的触控面板控制器送来的电信号转换成声波能,通过触控面板四边刻的反射表面超声波的反射条纹反射后,由接收换能器接收后转换成电信号。当有物体触碰屏幕时,部分声波能量被吸收,从而改变了接收信号。改变后的接收信号经过该触控装置中的控制器进一步处理,从而得到所需的有效感应波形。
在本发明的一个实施例中,检测模块151可以声波传感器、电信号传感器或光波传感器,从而可以相应地通过声学地、电学地或者光学地获得感应波形。
下面参考图16描述根据本发明实施例的触碰物体数目确定模块152。
如图16所示,触碰物体数目确定模块152包括运算模块1521,所述运算模块1521将感应波形中的每个感应值与参考波形值进行比较,以判断感应波形是否包括上升趋势波形和/或下降趋势波形,并根据包括上升趋势波形和/或下降趋势波形的所述感应波形的数目确定触碰触控装置的物体的数目;和判断模块1522,所述判断模块判断触碰触控装置的物体的数目是否为多个并输出触碰触控装置的物体的数目。
在本发明的一个实施例中,运算模块1521还可以包括比较单元(未示出),用于将感应波形与参考波形值进行比较,若感应波形的当前感应值大于参考波形值且感应波形的前一感应值小于参考波形值,得到该处感应波形是上升趋势波形;若感应波形的当前感应值小于参考波形值且感应波形的前一感应值大于参考波形值,得到该处感应波形是下降趋势波形。由此可以进一步得到感应波形中上升和/或下降趋势波形的数目。
在运算模块1521中将第一条感应线感应值与预设的第一初始感应值进行比较,最后一条感应线感应值将与预设的第二初始感应值进行比较。这样可以防止依次进行相邻两个感应线的感应值进行判断比较时出现第一条和/或者最后一条感应线的感应值没有相对应的比较对象进行比较判断的情况。这样得到上升的次数和下降的次数相等,可以将上升的数目作为触碰物体的数目,或者将下降的数目作为触碰物体的数目。
运算模块1521还可以用于判断所述包括上升趋势波形和/或下降趋势波形的感应波形与所述参考波形的两个交点之间距离是否大于第一预定阈值,且在判断所述两个交点之间的距离大于第一预定阈值时,将所述包括上升趋势波形和/或下降趋势波形的感应波形作为有效感应波形,以根据有效感应波形的数目确定触碰所述触控装置的物体的数目。由此,当物体触碰的感应波形的局部在参考波形之上时,判断感应波形与参考波形上升交点和紧跟其后的下降交点之间的距离大于第一预定阈值才能进一步判断该触碰物体实际存在,若物体触碰的感应波形的局部在参考波形之下,则判断感应波形与参考波形下降交点和紧跟其后的上升交点之间的距离是否大于第一预定阈值,若大于则认定触碰物体实际存在。如前所述,该阈值为触控装置上受单个手指触碰影响的最小宽度,这样可以减少误触碰的发生。该运算模块1521还可以对触控装置上各方向的感应线感应值进行检测并运算,最终得到触控装置上触碰物体的数目是各方向触碰物体数量的最大值。
具体而言,所述检测模块151可以沿着第一方向检测物体触碰所引起的第一感应波形;以及沿着第二方向检测物体触碰所引起的第二感应波形。且所述第一方向和所述第二方向具有预定的夹角。优选地,所述夹角为直角。接着,所述运算模块1521可以根据所述第一和第二感应波形中上升趋势波形和/或下降趋势波形的最大数目来确定触碰物体的数目。
下面参考图17描述根据本发明实施例的物体旋转运动确定模块153。
如图17所示,物体旋转运动确定模块153包括相对位置变化量确定模块1531,所述相对位置变化量确定模块1531检测多个物体在预定的时间内彼此之间的相对位置变化量;和旋转运动判断模块1532,所述旋转运动判断模块1532在相对位置变化量小于第二预定阈值时、根据多个物体的至少三个相邻位置关系判断所述多个物体是否执行旋转运动。
旋转运动判断模块1532根据相对位置变化量确定模块1531获得多个物体的相对位置变化量判断多个物体是否执行旋转运动及执行何种旋转动作。
旋转运动判断模块1532可以通过以下三种方式之一识别多物体执行旋转动作。
1)旋转运动判断模块1532根据第一等效坐标和第二等效坐标之间的斜率以及第二等效坐标和第三等效坐标之间的斜率的差值大小关系,判断多个物体执行逆时针旋转运动或者顺时针旋转运动。
2)旋转运动判断模块1532根据第一等效坐标和第二等效坐标的连线与第二等效坐标和第三等效坐标之间的连线的角度大小关系,判断多个物体执行逆时针旋转运动或者顺时针旋转运动。
3)旋转运动判断模块1532根据第一等效坐标、第二等效坐标和第三等效坐标的物理坐标关系,判断多个物体执行逆时针旋转运动或者顺时针旋转运动及其旋转幅度。
旋转运动判断模块1532根据采集当前时刻多物体的位置信息,得到当前时刻的第一等效坐标(X0,Y0)、当前时刻之前的第一时刻的第二等效坐标(X1,Y1)和第一时刻之前的第二时刻的第三等效坐标(X2,Y2)。并根据第一等效坐标(X0,Y0)、第二等效坐标(X1,Y1)间的坐标差值,产生第一斜率量K1,以及根据第二等效坐标(X1,Y1)、第三等效坐标(X2,Y2)间的坐标差值,产生第二斜率量K2。判断第一斜率量K1和第二斜率量K2的差值是否为0。当K1=K2时,则读取另一组位置信息数据;否则,根据下述条件判断多物体的旋转动作为顺时针旋转或逆时针旋转:
1)当X0>X1>X2时,0<K1<K2或者K1<K2<0或者K2>0>K1则旋转运动判断模块1532判断多物体执行顺时针旋转动作;0<K2<K1或者K2<K1<0或者K2<0<K1则旋转运动判断模块1532判断多物体执行逆时针旋转动作;
2)当X0<X1<X2时,0>K2>K1或者K2>K1>0或者K2>0>K1则旋转运动判断模块1532判断多物体执行顺时针旋转动作;K1>K2>0或者0>K1>K2或者K2<0<K1则旋转运动判断模块1532判断多物体执行逆时针旋转动作;
3)当X0<X1>X2且K1>0>K2时,或当X0>X1<X2且K2<0<K1时则旋转运动判断模块1532判断多物体执行顺时针旋转动作;当X0<X1>X2且K1<0<K2时,或当X0>X1<X2且K2>0>K1时则旋转运动判断模块1532判断多物体执行逆时针旋转动作;
4)当X0=X1或X1=X2时,X0<X1且Y0<Y1<Y2,或X1>X2且Y0<Y1<Y2,或X0>X1且Y0>Y1>Y2,或X1<X2且Y0>Y1>Y2,则旋转运动判断模块1532判断多物体执行顺时针旋转动作;X0<X1且Y0>Y1>Y2,或X1>X2且Y0>Y1>Y2,或X0>X1且Y0<Y1<Y2,或X1<X2且Y0<Y1<Y2,则旋转运动判断模块1532判断多物体执行逆时针旋转动作。
信号产生模块154根据旋转运动判断模块1532判断得到的多物体的旋转动作向触控装置输出相应的控制信号,并且根据控制信号在触控装置上执行控制操作。
旋转运动判断模块1532根据采集当前时刻多物体的位置信息,得到当前时刻的第一等效坐标(X0,Y0)、当前时刻之前的第一时刻的第二等效坐标(X1,Y1)和第一时刻之前的第二时刻的第三等效坐标(X2,Y2)。并根据第一等效坐标(X0,Y0)、第二等效坐标(X1,Y1)间的坐标差值,产生第一斜率量K1,以及根据第二等效坐标(X1,Y1)、第三等效坐标(X2,Y2)间的坐标差值,产生第二斜率量K2。根据第一斜率量K1和第二斜率量K2利用反正切函数关系式可以分别得到其倾斜角θ1和θ2的值:
θ1=arctan[(Y0-Y1)/(X0-X1)];θ2=arctan[(Y1-Y2)/(X1-X2)]。
判断θ1-θ2是否为0。当θ1=θ2时,则再次读取另一组位置信息数据;否则根据下述条件判断多物体的旋转动作为顺时针旋转或逆时针旋转:
1)当θ=θ1-θ2<0时,则识别多物体执行顺时针旋转动作;
2)当θ=θ1-θ2>0时,则识别多物体执行逆时针旋转动作。
信号产生模块根据步骤117中根据旋转运动判断模块1532判断得到的多物体的旋转动作向触控装置输出相应的控制信号,并且根据控制信号在触控装置上执行控制操作。
在本发明的一个实施例中,旋转运动判断模块1532根据采集当前时刻多物体的位置信息,得到当前时刻的第一等效坐标(X0,Y0)、当前时刻之前的第一时刻的第二等效坐标(X1,Y1)和第一时刻之前的第二时刻的第三等效坐标(X2,Y2)。并根据第一等效坐标(X0,Y0)、第二等效坐标(X1,Y1)间的坐标差值,产生第一斜率量K1,以及根据第二等效坐标(X1,Y1)、第三等效坐标(X2,Y2)间的坐标差值,产生第二斜率量K2。然后,根据第一等效坐标、第二等效坐标和第三等效坐标的物理坐标关系,判断多个物体执行逆时针旋转运动或者顺时针旋转运动。
在本发明的一个实施例中,第一等效坐标、第二等效坐标和第三等效坐标为多个物体中的质心坐标或者至少一个的物理坐标。
信号产生模块154根据旋转运动判断模块1532判断得到的多物体的旋转动作向触控装置输出相应的控制信号,并且根据控制信号在触控装置上执行控制操作。例如控制触控装置内部的软件对象的行为表现。其中,软件对象的行为表现为响应多物体在触控装置的感应区域上的运动轨迹。
通过本发明的用于触控装置的多点旋转运动的识别装置,根据沿着触控装置的触碰面上的至少一个方向获得所产生的感应波形,可以准确地识别物体的数目。并且,当检测有多个物体在触控装置上触碰时,可以进一步准确地识别多个物体的旋转运动,并在触控装置上执行与旋转运动对应的控制操作。
图18显示了多点旋转运动的识别装置进行人机交互的示意图。
如图18所示,多点旋转运动的识别装置150进行与外围应用设备的触控装置进行数据采集(人机交流)。其中触控装置可以为触摸板、笔记本电脑触摸屏或手机触摸屏等便携式设备的触控面板、PDAs(Personal Digital Assistant System,个人数字助手系统)、ATM(Automatic Teller Machine,自动取款机)、GPS(Global Positioning System,全球定位系统)或可触摸电视机触控面板等硬件装置。
检测模块151检测X方向感应线和Y方向感应线。当触控装置工作时,每一方向感应线都会产生一个感应量。检测模块151例如为声波传感器、电信号传感器或光波传感器。触碰物体数目确定模块152、物体旋转运动确定模块153和信号产生模块154可以由嵌入式处理器和程序储存器等所构成,读取所有感应线产生的感应量,并根据预定的算法分析、计算物体旋转移动的参数,由此可以实现旋转手势的检测。
信号产生模块154具有I/O接口,从而可以实现与外围应用设备的双向数据通信,进行人机对话和交流。
本发明的用于触控装置的多点旋转运动的识别装置识别触控装置上物件的旋转手势,设备方法简易、可操作性强。并且,实现本发明识别装置的算法简单,程序简洁,并且大部分使用加减法来进行运算,减少了乘除法的使用,从而达到指令精简,可扩展性好的特点。本发明在相应嵌入式系统中对处理器运行速度和程序存储空间大小要求低。在满足嵌入式系统功能、性能的前提下能够大幅度降低系统成本,同时使触控装置的小型化可以让用户操作起来更加丰富和人性,满足了用户追求多点手势操作的流行风潮。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、单元或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。