发明内容
本发明的目的在于提出一种手势识别方法及装置,通过对识别对象中距离可变的两个特定点的三维数据进行分析,对手势进行识别,以执行预定的手势对应的指令。
为达此目的,本发明采用以下技术方案:
一种手势识别方法,包括:
获得识别对象手部距离可变的两个特定点的三维数据,当所述两个特定点之间的距离值小于预设的距离判定阈值时,则判定所述识别对象的手部状态为第一状态,否则判定所述识别对象的手部状态为第二状态;
当捕获到所述识别对象的手部状态为第一状态后,则在后续的预设时长内监测所述识别对象的手部状态并获取所述两个特定点的三维数据,计算所述两个特定点在所述预设时长内移动的方向和距离,依据所述方向和距离以及所述识别对象的手部状态情况判断是否捕获到预设手势,若是,则执行所述预设手势所对应的指令。
优选地,所述依据所述方向和距离以及所述识别对象的手部状态情况判断是否捕获到预设手势具体包括:在所述预设时长内,监测到各时刻所述识别对象的手部状态均为第一状态,且所述两个特定点向预设方向移动的距离不小于预设的移动判定阈值,则判定为捕获到预设手势。
优选地,当所述预设方向为第一方向,且所述预设的移动判定阈值为预设的第一移动判定阈值,则判定为捕获到第一手势;
当所述预设方向为第二方向,且所述预设的移动判定阈值为预设的第二移动判定阈值,则判定为捕获到第二手势。
优选地,所述第一手势所对应的指令为复制文件操作;所述预设的第二手势所对应的指令为粘贴文件操作。
优选地,所述依据所述方向和距离以及所述识别对象的手部状态情况判断是否捕获到预设手势具体包括:
在所述预设时长内,当所述两个特定点向第三方向移动,且在所述预设时长的初始时间段所述识别对象的手部状态保持第一状态,直至所述预设时长的结束时间段所述识别对象的手部状态转变为第二状态,则判定为捕获到第三手势。
优选地,所述两个特定点向第三方向移动具体为:所述两个特定点的中心点向第三方向沿直线移动。
优选地,所述第三手势所对应的指令为删除文件操作。
优选地,所述预设的距离判定阈值不大于0.5厘米,所述预设时长不小于0.8秒且不大于2秒。
优选地,所述两个特定点分别为手部拇指指尖和食指指尖。
本发明还公开了一种手势识别装置,包括:
手部状态判定模块,用于获得识别对象手部距离可变的两个特定点的三维数据,当所述两个特定点之间的距离值小于预设的距离判定阈值时,则判定所述识别对象的手部状态为第一状态,否则判定所述识别对象的手部状态为第二状态;
手势捕获与执行模块,用于当捕获到所述识别对象的手部状态为第一状态后,则在后续的预设时长内监测所述识别对象的手部状态并获取所述两个特定点的三维数据,计算所述两个特定点在所述预设时长内移动的方向和距离,依据所述方向和距离以及所述识别对象的手部状态情况判断是否捕获到预设手势,若是,则执行所述预设手势所对应的指令。
优选地,所述手势捕获与执行模块在所述预设时长内,当监测到各时刻所述识别对象的手部状态均为第一状态,且所述两个特定点的中心点向预设方向移动,且移动距离不小于预设的移动判定阈值,则判定为捕获到预设手势。
优选地,所述手势捕获与执行模块包括:
第一手势捕获单元,用于在所述预设时长内,当各时刻所述识别对象的手部状态均为第一状态,且所述两个特定点向预设第一方向移动,且移动距离不小于预设的第一移动判定阈值,则判定为捕获到第一手势;
第二手势捕获单元,用于在所述预设时长内,当各时刻所述识别对象的手部状态均为第一状态,且所述两个特定点向预设第二方向移动,且移动距离不小于预设的第二移动判定阈值,则判定为捕获到第二手势。
优选地,所述第一手势所对应的指令为复制文件操作;所述预设的第二手势所对应的指令为粘贴文件操作。
优选地,所述手势捕获与执行模块包括:
第三手势捕获单元,用于在所述预设时长内,当所述两个特定点向第三方向移动,且在所述预设时长的初始时间段内所述识别对象的手部状态保持第一状态,直至所述预设时长的结束时间段所述识别对象的手部状态转变为第二状态,判定为捕获到第三手势。
优选地,所述两个特定点向第三方向移动具体为:所述两个特定点的中心点向第三方向沿直线移动。
优选地,所述第三手势所对应的指令为删除文件操作。
优选地,所述预设的距离判定阈值不大于0.5厘米,所述预设时长不小于0.8秒且不大于2秒。
优选地,所述两个特定点分别为手部拇指指尖和食指指尖。
本发明提出了一种手势识别方法及装置,通过对识别对象中距离可变的两个特定点的三维数据进行分析,判定所述识别对象的手部状态,计算所述两个特定点在预设时长内移动的方向和距离,依据所述方向和距离以及所述识别对象的手部状态情况判断是否捕获到预设手势,能快速地获得特定意义的手势。特别是判断是否捕获到识别对象针对操作***进行文件操作的手势,特别是对文件进行复制、粘贴和/或删除操作手势,以实现在任何位置进行文件复制、粘贴和/或删除的空中操控,具有较强的环境适应性。
具体实施方式
实施例一
如图1所示,本实施例所述的手势识别方法包括:
S101、获得识别对象手部距离可变的两个特定点的三维数据,计算两个特定点之间的距离值。
在本实施例的一个优选实施方式中,通过识别器实时获得识别对象手部的三维数据,所述两个特定点分别为识别对象某只手的拇指指尖和食指指尖。通过识别器可以把反光物直接提取出拇指指尖和食指指尖三维信息。
例如采用专利号为200910108185.7,名称《一种物体三维定位方法及摄像机》的专利所述的识别器,或者通过kinect以及tof方法,获取手部的三维信息,通过分析手指跟手掌的位置信息分析出食指拇指中指等,任何一个手指都可以取得指尖坐标信息,比如取手指离手掌最远的那个点为指尖点,标记拇指指尖为A,食指指尖为B。实时计算各时刻所述拇指指尖为A和食指指尖为B之间的距离。
S102、判定距离是否小于预设的距离判定阈值,若是则执行步骤S104,否则执行步骤S103。
在本实施例的一个优选实施方式中,所述预设的距离判定阈值不大于0.5厘米。
S103、判定手部状态为第二状态,返回步骤S101。
S104、判定手部状态为第一状态。
此时有捕获到本实施例预设手势的可能性,此时执行步骤S105,开始提取后续的数据用于继续判断,确认是否能捕获到手势。
S105、开始提取所述两个特定点在后续的预设时长内的三维数据。
在本实施例的一个优选实施方式中,所述预设时长不小于0.8秒且不大于2秒,优选为1秒。
S106、进行手势判断。
在所述预设时长内,当各时刻所述识别对象的手部状态均为第一状态,且所述两个特定点向预设第一方向移动,且移动距离不小于预设的第一移动判定阈值,则判定为捕获到第一手势。
具体地,可以利用两个特定点的中心点的移动状况来监控所述两个特定点的移动状况。所述两个特定点的中心点是指两个特定点连线的中点。
在本实施例的一个优选实施方式中,当所述识别对象手部状态为第一状态时,取预设时间(比如1秒)段内的数据,监测到所述识别对象的手部状态一直保持第一状态且所述两个特定点向预设第一方向移动了第一移动判定阈值,比如13cm,则表示复制操作。
在所述预设时长内,当各时刻所述识别对象的手部状态均为第一状态,且所述两个特定点向预设第二方向移动,且移动距离不小于预设的第二移动判定阈值,则判定为捕获到第二手势。
在本实施例的一个优选实施方式中,当所述识别对象手部状态为第一状态时,取预设时间(比如1秒)段内的数据,监测到所述识别对象的手部状态一直保持第一状态且所述两个特定点的中心点向预设第二方向移动了第二移动判定阈值,比如13cm,则表示粘贴操作。
在所述预设时长内,当所述两个特定点持续向第三方向移动,且在所述预设时长的初始时间段内手部状态保持第一状态,在所述预设时长的结束时间段之内手部状态转变为第二状态,则判定为捕获到第三手势。所述初始时间段是指预设时长开始后的一个预定时间段,所述结束时间段是指在预设时长的初始时间段后直至预设时长结束的时间段。手部状态只要在结束时间段内发生变化即可,例如,可以在最后一瞬间发生变化,本实施例也会判定为在所述预设时长的结束时间段之内手部状态转变为第二状态。
进一步地,所述两个特定点的中心点向第三方向移动具体为:所述两个特定点的中心点向空间某一方向沿直线移动。所述两个特定点的中心点是指两个特定点连线的中点。
在本实施例的一个优选实施方式中,所述预设的第三手势所对应的指令为删除文件操作。
具体地,手部状态为第一状态下,判断所述两个特定点的中心点是否在直线方向移动的方法为:设定一个角度偏移阈值为p(一般设定为5-20度),实时计算相邻两点间的角度偏移值,角度偏移值计算方法是获取相邻采样时间顺序采样得到的3个所述中心点的三维位置,前两个中心点三维位置构成第一方向向量,后两个中心点三维位置构成第二方向向量,用立体几何方法计算出两个方向向量的偏移角度。将所述偏移角度与所述角度偏移阈值p进行比较,如果偏移角度持续0.5秒(该范围可扩展为0-1秒)保持小于阈值p,则认定中心点沿直线运动。比如持续0.5秒保持偏移角度小于阈值p,0.5秒后保持偏转角度小于阈值p的情况下侦测到松开消息,则提示删除。
S107、执行捕获到的手势所对应的指令。
在本实施例的一个优选实施方式中:
当所述预设的第一手势所对应的指令为复制文件操作,捕获到该手势时,进行复制操作,完成后可在操作***上提示:“已成功复制”。
当所述预设的第二手势所对应的指令为粘贴文件操作,捕获到该手势时,进行粘贴操作,完成后可在操作***上提示:“已成功粘贴”。
当所述预设的第三所对应的指令为删除文件操作,捕获到该手势时,进行删除操作,完成后可在操作***上提示:“已成功删除”。
实施例二
根据本发明的同一构思,本发明还提供了手势识别装置,如图2所示,本实施例所述的手势识别装置包括:
手部状态判定模块201,用于获得识别对象手部两个特定点的三维数据,并计算所述两个特定点之间的距离值,当所述两个特定点之间的距离值小于预设的距离判定阈值时,则判定所述识别对象的手部状态为第一状态,否则判定所述识别对象的手部状态为第二状态,其中所述两个特定点为识别对象手部距离可变的两个特定点。
在本实施例的一个优选实施方式中,所述手部状态判定模块201通过识别器实时获得识别对象手部的三维数据,所述两个特定点分别为识别对象某只手的拇指指尖和食指指尖。通过识别器可以把反光物直接提取出拇指指尖和食指指尖三维信息。
例如采用专利号为200910108185.7,名称《一种物体三维定位方法及摄像机》的专利所述的识别器,或者通过kinect以及tof方法,获取手部的三维信息,通过分析手指跟手掌的位置信息分析出食指拇指中指等,任何一个手指都可以取得指尖坐标信息,比如取手指离手掌最远的那个点位指尖点,标记拇指指尖为A,食指指尖为B。实时计算各时刻所述拇指指尖为A和食指指尖为B之间的距离。
在本实施例的一个优选实施方式中,所述预设的距离判定阈值不大于0.5厘米。
手势捕获与执行模块202,用于当捕获到所述识别对象的手部状态为第一状态,则在后续的预设时长内监测所述识别对象的手部状态并提取所述两个特定点的三维数据,计算所述两个特定点在所述预设时长内移动的方向和距离,依据所述方向和距离以及所述识别对象的手部状态判断是否捕获到预设手势,若是,则执行预设的所述手势所对应的指令。
具体地,当手势捕获与执行模块202捕获到所述识别对象的手部状态为第一状态时,有进一步捕获到本实施例预设手势的可能性,此时开始提取后续的数据用于继续判断,确认是否能捕获到手势。
在本实施例的一个优选实施方式中,所述预设时长不小于0.8秒且不大于2秒,优选为1秒。
对所述预设时长内的三维数据进行分析,依据所述方向和距离以及所述识别对象的手部状态判断是否捕获到预设手势。
例如,手势捕获与执行模块202在所述预设时长内,当各时刻所述识别对象的手部状态均为第一状态,且所述两个特定点向预设方向移动,且移动距离不小于预设的移动判定阈值,则判定为捕获到预设手势。
在另一种情况下,手势捕获与执行模块202也可以根据手部状态的变化结合所述两个特定点的移动状况来确定是否捕获到预设手势。
在本实施例的一个具体实施方式中,手势捕获与执行模块202包括第一手势捕获单元2021、第二手势捕获单元2022、第三手势捕获单元2023。
第一手势捕获单元2021用于在所述预设时长内,当各时刻所述识别对象的手部状态均为第一状态,且所述两个特定点向预设第一方向移动,且移动距离不小于预设的第一移动判定阈值,则判定为捕获到第一手势,执行预设的第一手势所对应的指令。
在本实施例的一个优选实施方式中,所述预设的第一手势所对应的指令为复制文件操作,当所述识别对象手部状态为第一状态时,取预设时间(比如1秒内)段内的数据,监测到所述识别对象的手部状态一直保持第一状态且所述两个特定点向远离识别器方向移动了第一移动判定阈值,比如13cm,则表示复制操作,并在操作***上提示:“已成功复制”。第二手势捕获单元2022用于在所述预设时长内,当各时刻所述识别对象的手部状态均为第一状态,且所述两个特定点向预设第二方向移动,且移动距离不小于预设的第二移动判定阈值,则判定为捕获到第二手势,执行预设的第二手势所对应的指令。
在本实施例的一个优选实施方式中,所述预设的第二手势所对应的指令为粘贴文件操作,当所述识别对象手部状态为第一状态时,取预设时间(比如1秒)段内的数据,监测到所述识别对象的手部状态一直保持第一状态且所述两个特定点向靠近识别器的方向移动了第二移动判定阈值,比如13cm,则表示粘贴操作,并在操作***上提示:“已成功粘贴”。
第三手势捕获单元2023,用于在所述预设时长内,当所述两个特定点持续向第三方向移动,且在所述预设时长的初始时间段内手部状态保持第一状态,在所述预设时长的结束时间段之内手部状态转变为第二状态,则判定为捕获到第三手势,执行预设的第三手势所对应的指令。
所述初始时间段是指预设时长开始后的一个预定时间段,所述结束时间段是指在预设时长的初始时间段后直至预设时长结束的时间段。手部状态只要在结束时间段内发生变化即可,例如,可以在最后一瞬间发生变化,本实施例也会判定为在所述预设时长的结束时间段之内手部状态转变为第二状态。
进一步地,所述第三手势捕获单元2023捕获的所述两个特定点向第三方向移动具体为:所述两个特定点的中心点向空间某一方向沿直线移动。判断所述两个特定点的中心点是否在直线方向移动的方法为:
设定一个角度偏移阈值为p(一般设定为5-20度),实时计算相邻两点间的角度偏移值,角度偏移值计算方法是获取相邻采样时间顺序采样得到的3个所述中心点的三维位置,前两个中心点三维位置构成第一方向向量,后两个中心点三维位置构成第二方向向量,用立体几何方法计算出两个方向向量的偏移角度。
将所述偏移角度与所述角度偏移阈值p进行比较,如果偏移角度持续0.5s(该范围可扩展为0-1秒)保持小于阈值p,则认定中心点沿直线运动。
在本实施例的一个优选实施方式中:所述预设的第三手势所对应的指令为删除文件操作,当捕获到该手势时,进行删除操作,完成后可在操作***上提示:“已成功删除”。比如持续0.5秒保持偏移角度小于阈值p,0.5秒后保持偏转角度小于阈值p的情况下侦测到松开消息,则提示删除。
本发明实施例一所述的手势识别方法和实施例二所述的手势识别装置,通过拇指尖和食指尖的状态捕获针对操作***进行文件操作的手势,特别是对文件进行复制、粘贴和/或删除操作手势,能实现在任何位置进行文件复制、粘贴和/或删除的空中操控,具有较强的环境适应性。
以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存储在可读取的存储介质中,存储介质例如:计算机中的硬盘、光盘或软盘。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。