本技术涉及电子,尤其涉及一种手势操作识别方法及设备。
背景技术:
1、随着科技发展趋势,手机、平板、笔记本等终端演进过程中,手写笔成为常用的器件。部分手写笔在笔身上设置有感应区,感应区下面对应设置有电容式触摸传感器,通过该电容式触摸传感器可以对手指在手写笔上的感应区执行的手势操作进行识别。在手写笔识别到用户手势之后,可以与电子设备端操作系统配合,完成用户手势执行相应操作,如一键切换橡皮擦等,从而为用户使用提供便利。
2、相关技术中,手写笔通常使用一个固定的数值作为基准值。结合用户使用过程中手写笔的触摸传感器检测到的电容数据,来确定用户在手写笔的感应区的接触信息。进而可以识别手指执行的手势。然而,用户使用手写笔时通常是多个手指接触笔身上的感应区,且握笔姿势和使用环境较为复杂。在这种情况下,使用固定的基准值识别手势操作,容易导致手势操作识别的误判,无法准确的识别用户的手势。
技术实现思路
1、本技术实施例提供一种手势操作识别方法及设备,用于解决多个手指接触电子设备且距离较近时,电子设备无法准确的识别手指信息和手势信息。
2、为达到上述目的,本技术的实施例采用如下技术方案:
3、第一方面,提供了一种手势操作识别方法,该方法应用于电子设备,电子设备的表面设置有感应区域,电子设备包括与感应区域对应的传感器。该方法包括:
4、获取传感器上报的检测数据,该检测数据用于反映感应区域中的感应位置以及感应位置对应的感应值。根据检测数据、感应区域中的感应位置对应的基准值,得到感应区域中的感应位置对应的感应变化值。其中,基准值根据获取到的最新的检测数据得到且实时更新,感应变化值为感应位置对应的感应值与感应位置对应的基准值的差值。根据第一预设时长内统计得到的感应变化值,确定用户在感应区域的操作是否符合预设手势操作。
5、由于用户通常在电子设备上执行部分手指的手势操作时,只有其中一只手指在移动,而其他手指是保持不动的。在该方案中,根据传感器上报的检测数据可以知道各感应位置对应的感应值,根据实时获取的检测数据确定各感应位置对应的基准值,使得各感应位置对应的基准值随检测数据实时更新。然后在每一个时刻,计算各感应位置对应的感应值与基准值的差值,作为感应区域中每一个感应位置对应的感应变化值。如果用户在电子设备上没有进行任何操作,如保持按压不动或者没有按压的状态,那么感应位置对应的感应值不会发生变化,从而基准值、感应变化值也不会发生变化。而如果用户在电子设备上进行按压或者抬起操作,那么就会引起所在感应位置的感应值、基准值和感应变化值的变化。也就是说,可以通过感应值和基准值的差值,确定用户在电子设备上的操作。最后的电子设备可以根据第一预设时长内的感应变化值,确定用户在感应区域的操作是否符合预设操作。这样,可以区分出是否长期按压在电子设备上的手指位置和用户正在执行操作的手指位置,从而识别用户执行的手势操作时,可以提高识别率和识别准确率。
6、在一些可能的实施方式中,在根据检测数据、感应区域中的感应位置对应的基准值,得到感应区域中的感应位置对应的感应变化值之前,该方法还包括:获取并缓存传感器上报的最新的检测数据;其中,最新的检测数据包括:传感器在最近的预设时间段内上报的检测数据,或者传感器上报的最新的预设数量对应的检测数据。基于最新的检测数据得到感应位置对应的基准值。这样,便于根据最新的多帧检测数据确定感应位置的基准值。
7、在一些可能的实施方式中,电子设备内设置有缓存区,缓存区包括多个子区,一个子区用于缓存一帧检测数据,缓存传感器在一段时间内上报的最新的检测数据,包括:按照检测数据的上报时间顺序,将检测数据缓存到子区;在缓存区最后一个子区被占用的情况下,将获取到的最新的检测数据从第一个子区开始缓存。这样,仅缓存部分最新的检测数据,可以减少占用存储空间。
8、在一些可能的实施方式中,基于最新的检测数据得到感应位置对应的基准值,包括:选择最新的检测数据中的m个第一检测数据;其中,m大于或者等于2。计算m个第一检测数据的感应平均值,并将m个第一检测数据的感应平均值作为感应位置对应的基准值。在该方案中,以多个最新的检测数据的感应平均值作为初始基准值,可以减小因其他因素导致检测数据的波动给确定基准值带来的影响。并且,每一时刻都以当前时刻的最新的m个检测数据确定基准值,在感应变化值中可以体现出相邻时刻之间的感应值的变化,便于区分没有操作和有操作的感应位置。有利于提高手势操作的识别准确率。
9、在一些可能的实施方式中,计算m个第一检测数据的平均值,并将最新的检测数据的感应平均值作为感应位置对应的基准值,包括:在首次获取到传感器在预设时间段内上报的最新的检测数据时,计算m个第一检测数据的感应平均值,并将m个第一检测数据的感应平均值作为感应位置在当前时刻对应的基准值。
10、在一些可能的实施方式中,基于最新的检测数据得到感应位置对应的基准值,还包括:在非首次获取到传感器在预设时间段内上报的最新的检测数据时,基于最新的检测数据对感应位置在上一时刻对应的基准值进行更新,得到感应位置在当前时刻对应的基准值。
11、在该方案中,电子设备仅在首次获取到传感器在预设时间段内上报的最新的检测数据时,利用m个检测数据的感应平均值作为感应位置对应的基准值。在之后的每一个时刻中,可以根据当前时刻对上一时刻的基准值进行更新,来得到当前时刻的基准值。这样,可以将相邻两个时刻的感应值的变化体现在基准值中,也可以在感应变化值中可以体现出相邻时刻之间的感应值的变化,便于区分没有操作和有操作的感应位置。有利于提高手势操作的识别准确率。
12、在一些可能的实施方式中,基于最新的检测数据对感应位置在上一时刻对应的基准值进行更新,得到感应位置在当前时刻对应的基准值,包括:选择感应位置在上一时刻对应的最新的检测数据中的m个第二检测数据;当上一时刻是首次获取到传感器在预设时间段内上报的最新的检测数据的时刻时,m个第二检测数据为m个第一检测数据;计算m个第二检测数据的第一和值;获取当前时刻最新的检测数据中的最后一个第三检测数据;计算任意一个第二检测数据与第三检测数据的第一差值;计算感应位置在上一时刻对应的基准值,与第一差值的和值,作为感应位置在当前时刻对应的第二和值;计算第二和值与m的商值,作为感应位置在当前时刻对应的基准值。
13、在该方案中,在基于当前时刻的感应值对上一时刻的基准值进行更新,具体是借助上一时刻的m个检测数据的和值来进行更新的。更新得到当前时刻的和值之后,再利用当前时刻的和值计算当前时刻的感应平均值,作为当前时刻感应位置的基准值。这样,可以将相邻两个时刻的感应值的变化体现在基准值中,也可以在感应变化值中可以体现出相邻时刻之间的感应值的变化,便于区分没有操作和有操作的感应位置。有利于提高手势操作的识别准确率。
14、在一些可能的实施方式中,根据第一预设时长内统计得到的感应变化值,确定用户在感应区域的操作是否符合预设手势操作,包括:计算第一预设时长内相邻两个时刻之间的感应变化值的第二差值;若在第二预设时长内目标感应位置对应的第二差值的绝对值均大于预设阈值,则确定用户在目标感应位置执行了预设操作;预设操作包括用户在电子设备上按压或抬起;若第一预设时长内用户在感应区域的操作包括连续的按压、抬起和按压,且两次按压对应的感应位置的距离小于第一预设距离阈值,则确定用户在感应区域的操作符合双击手势操作,预设手势操作包括双击手势操作。
15、在该方案中,通过计算相邻两个时刻的感应变化值的差值,来确定用户在感应位置是否执行了按压或抬起的预设操作。并且如果在第一预设时长内,用户在相近的感应位置连续执行了按压、抬起和按压,那么可以确定用户在感应区域执行了双击手势操作。由于根据感应变化值可以区分哪些感应位置用户是没有执行操作的,哪些感应位置是执行了操作的。因此通过该方案可以快速准确的识别用户在感应区域的手势操作。
16、在一些可能的实施方式中,根据第一预设时长内统计得到的感应变化值,确定用户在感应区域的触摸操作是否符合预设手势操作,还包括:在第一预设时长内,若在同一时刻存在两个感应位置对应的第二差值均大于预设阈值,且其中一个第二差值大于0,另一个第二差值小于0,以及两个第二差值对应的感应位置之间的距离小于第二预设距离阈值,则确定用户在感应区域的操作不符合双击手势操作。
17、在该方案中,为了避免用户的其他动作影响手势识别,例如用户的多个手指同时在电子设备上执行操作,其中一个手指在电子设备上抬起的同时另一个手指按压到电子设备上。这种情况下,可能检测到连续两次按压操作,是分别属于两个不同手指的,这样可能产生手势识别误判。因此在该方案中,通过判断是否同时存在两个第二差值的绝对值都大于预设阈值的条件,并且一个第二差值是正数另一个是负数,以及两个第二差值对应的感应位置相近,如果满足上述条件,则很有可能是用户的多个手指在同时操作的状态。因此,此时应当判定为不符合双击手势操作。这样,可以减少手势识别失误的可能,提高识别准确性。
18、在一些可能的实施方式中,电子设备包括手写笔。
19、第二方面,提供了一种电子设备,包括:处理器和存储器;该存储器用于存储计算机执行指令,当该电子设备运行时,该处理器执行该存储器存储的该计算机执行指令,以使该电子设备执行如上述第一方面中任一项的手势操作识别方法。
20、第三方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机可以执行上述第一方面中任一项的手势操作识别方法。
21、第四方面,提供了一种包含指令的计算机程序产品,当其在电子设备上运行时,使得电子设备可以执行上述第一方面中任一项的手势操作识别方法。
22、第五方面,提供了一种装置(例如,该装置可以是芯片系统),该装置包括处理器,用于支持电子设备实现上述第一方面中所涉及的功能。在一种可能的设计中,该装置还包括存储器,该存储器,用于保存电子设备必要的程序指令和数据。该装置是芯片系统时,可以由芯片构成,也可以包含芯片和其他分立器件。
23、其中,第四方面至第七方面中任一种设计方式所带来的技术效果可参见第一方面中不同设计方式所带来的技术效果,此处不再赘述。
1.一种手势操作识别方法,其特征在于,所述方法应用于电子设备,所述电子设备的表面上设置有感应区域,所述电子设备包括与所述感应区域对应的传感器,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在根据所述检测数据、所述感应区域中的感应位置对应的基准值,得到所述感应区域中的感应位置对应的感应变化值之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述电子设备内设置有缓存区,所述缓存区包括多个子区,一个子区用于缓存一帧检测数据,所述缓存所述传感器上报的最新的检测数据,包括:
4.根据权利要求2或3所述的方法,其特征在于,所述基于所述最新的检测数据得到所述感应位置对应的基准值,包括:
5.根据权利要求4所述的方法,其特征在于,所述计算所述m个第一检测数据的感应平均值,并将所述最新的检测数据的感应平均值作为所述感应位置对应的基准值,包括:
6.根据权利要求5所述的方法,其特征在于,所述基于所述最新的检测数据得到所述感应位置对应的基准值,还包括:
7.根据权利要求6所述的方法,其特征在于,所述基于所述最新的检测数据对所述感应位置在上一时刻对应的基准值进行更新,得到所述感应位置在当前时刻对应的基准值,包括:
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述根据第一预设时长内统计得到的感应变化值,确定用户在所述感应区域的操作是否符合预设手势操作,包括:
9.根据权利要求8所述的方法,其特征在于,所述根据第一预设时长内统计得到的感应变化值,确定用户在所述感应区域的触摸操作是否符合预设手势操作,还包括:
10.根据权利要求1-9中任一项所述的方法,其特征在于,所述电子设备包括手写笔;所述预设手势操作包括双击手势操作或三击手势操作。
11.一种电子设备,其特征在于,所述电子设备包括:处理器和存储器;所述存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如权利要求1-10中任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-10中任一项所述的方法。
