首页> 中国专利> 基于深度摄像头的双手三维非接触式动态手势识别方法

基于深度摄像头的双手三维非接触式动态手势识别方法

摘要

本发明涉及一种基于深度摄像头的双手三维非接触式动态手势识别方法,包括以下步骤:1)动态手势训练子方法;2)动态手势识别子方法。与现有技术相比,本发明具有使用范围广、使用方便、识别效果好,可以方便、自然和有效的解决通过手势进行人机交互的任务等优点。

著录项

  • 公开/公告号CN103136541A

    专利类型发明专利

  • 公开/公告日2013-06-05

    原文格式PDF

  • 申请/专利权人 上海交通大学;

    申请/专利号CN201310090720.7

  • 申请日2013-03-20

  • 分类号G06K9/62;

  • 代理机构上海科盛知识产权代理有限公司;

  • 代理人赵志远

  • 地址 200240 上海市闵行区东川路800号

  • 入库时间 2024-02-19 19:15:47

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-08

    未缴年费专利权终止 IPC(主分类):G06K9/62 授权公告日:20151014 终止日期:20180320 申请日:20130320

    专利权的终止

  • 2015-10-14

    授权

    授权

  • 2013-07-10

    实质审查的生效 IPC(主分类):G06K9/62 申请日:20130320

    实质审查的生效

  • 2013-06-05

    公开

    公开

说明书

技术领域

本发明涉及一种手势识别方法,尤其是涉及一种基于深度摄像头的双手三维 非接触式动态手势识别方法。

背景技术

随着计算机技术的不断发展,人们的日常生活已经离不开计算机的帮忙。而要 利用计算机使我们日常生活和工作的方方面面都更加便捷和舒适,首先应该解决好 的问题就是人机交互问题。人机交互的方式也从最开始的键盘和鼠标,逐渐发展为 通过语音和计算机交互,通过人的身体姿态和手势来进行交互。通过声音、身体姿 势和手势的方式进行人机交互的方法,更加简便和自然。本发明中的基于深度摄像 头的双手三维非接触式动态手势识别的方法可以很好的解决通过动态手势和计算 机进行交互。

目前存在的动态手势识别的技术,有基于肤色和移动物体检测的方式来进行手 势识别的,这种方法对于外界环境的要求很高,这并不能适用于一般场景之下,因 此适用起来不方便,并且其日常实用性也不高。还有就是通过辅助工具的,比如带 一个特定的手套,或者是一个类似于无线鼠标的一个控制装置,很显然这样的方法 也是很不方便的,并且不自然。还有的方法可以识别单手三维动态手势或者是双手 二维触摸式动态手势,但是无法识别复杂的三维动态双手手势。而我们提出的基于 深度摄像头的双手三维非接触式动态手势的识别方法,对使用的环境不做苛刻的限 制,使得在一般日常生活的场景下就能够很好的识别手势进行人机交互。另外,也 不需要使用额外的设备。本发明中使用的方法可以识别复杂的三维动态双手手势, 从而能够方便、自然和有效的完成进行人机交互的任务。

经对现有技术文献的检索发现。专利申请号为201010577408.7,名称为:手势 动作识别模型的训练方法和手势动作识别方法。该方法实现了三维动态手势的训练 与识别。但需要借助于手持设备,且只能识别单手手势。

发明内容

本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于深度摄 像头的双手三维非接触式动态手势识别方法,可以方便、自然和有效的解决通过手 势进行人机交互的任务,其一本贩卖那个不需要对外界使用环境做苛刻的限制,一 般的交互方法,对于使用环境中的灯光强弱变化、倒影和场景中的其他移动物体十 分敏感,因此不能够在生活中的一般场景下进行使用;其二本发明不需要增加其他 设备,模仿更自然的交互方式进行人机交互。

本发明的目的可以通过以下技术方案来实现:

一种基于深度摄像头的双手三维非接触式动态手势识别方法,其特征在于,包 括以下步骤:

1)动态手势训练子方法;

2)动态手势识别子方法。

所述的动态手势训练子方法包括以下步骤:

101)利用深度摄像头采集视频骨骼流,获取所需骨骼节点的三维位置,将双 手的骨骼节点三维位置以六维向量的方式存储;

102)通过六维向量和帧率得到双手的速度六维向量;

103)根据速度六维向量判断动态手势是否开始,若未开始,返回步骤101), 若开始,则进入104);

104)在动态手势进行过程中,将双手的骨骼节点以六维向量的方式存储;

105)通过六维向量和帧率得到双手的速度六维向量;

106)对存储的六维速度向量进行特征提取,获得一个手势相应的特征值时间 序列;

107)判断动态手势是否结束,若为是,重复104)到106)获取不同手势对应 的特征值时间序列,否则,将得到这些特征值时间序列作为训练样本库,执行步骤 108);

108)根据步骤107)得到的训练样本库,利用耦合隐马尔科夫进行训练,得 到耦合隐马尔科夫模型。

所述的将双手的骨骼节点三维位置以六维向量的方式存储具体为:

将左右手三维位置R(X1,Y1,Z1)和L(X2,Y2,Z2)以6维向量P(X1,Y1,Z1,X2,Y2,Z2) 的方式存储。

所述的速度六维向量Vt计算如下:

通过双手位置向量Pt(X1,Y1,Z1,X2,Y2,Z2)和视频帧率f计算得到,

Vt(X1,Y1,Z1,X2,Y2,Z2)=(Pt(X1,Y1,Z1,X2,Y2,Z2)-Pt-1(X1,Y1,Z1,X2,Y2,Z2))*f, 其中t是帧的序数。

所述的判断动态手势是否开始或结束具体如下:

设定一个阈值Vmin,当速度Vt大于Vmin,并维持若干帧时,手势开始,但速 度都小于速度Vmin,并维持若干帧时,手势结束。

所述的特征提取具体为:

将位于手势开始和手势结束之间的所有速度六维向量和设定的阈值Vmin进行 比较,若大于Vmin,则将其与预先设定好的特殊方向单位向量进行点乘,选择内积 结果最大的对应的特殊方向单位向量作为特征值存储,并将连续的特征值中相同的 仅保留一个

所述的特殊方向单位向量为六维向量,其每个元素只能取-1,0,1中的一个,然 后将其单位化。

所述的动态手势识别子方法包括以下步骤:

201)利用深度摄像头采集视频骨骼流,获取所需骨骼节点的三维位置,将双 手的骨骼节点以六维向量的方式存储;

202)获得速度六维向量;

203)判断动态手势是否开始,若未开始,回到201),若开始,则进入204);

204)在动态手势进行过程中,将双手的骨骼节点以六维向量的方式存储;

205)获得速度六维向量;

206)对存储的六维速度向量列表进行特征提取,获得待识别手势相应的特征 值时间序列;

207)然后将该特征值时间序列传入已训练好的耦合隐马尔科夫模型中,与标 准手势的特征值时间序列进行匹配,得到待识别手势最接近的标准手势,将其作为 识别结果。

与现有技术相比,本发明具有以下优点:

1、使用范围广,对使用环境的限制条件减少,鲁棒性强,可以在灯光强弱有 变化,环境中存在其他移动物体的环境下使用;

2、使用方便,不需要使用手套或者其他手持设备,使用起来更加方便;

3、识别效果好,可以识别复杂的动态的双手手势;

4、本发明的方法可以广泛地应用于所有需要人机交换的场合,如智能教室、 互动游戏、医疗、智能实验室等领域。在智能教室中,老师不论走在教室的任何角 落,都可以通过手势和计算机设备进行交互从而控制教室内的教学设施,而不需要 一直站在讲台或者是一直随身携带一个额外的设备。通过运动身体来进行控制的游 戏现在已经很多了,但是这多为通过骨骼节点来进行控制,相对于身体来说,手的 范围很小,但是手能够表达的意思却是相当丰富,如果能够有效的进行复杂的动态 手势的识别,对于增加游戏的复杂度和趣味性的潜力将会是无穷无尽的。在医疗方 面,医生可以不通过手的直接接触来实现一些医疗操作,而且可以实现直接通过手 不能完成的医疗操作。在智能实验室方面,通过本专利所提供的方法,便不需要在 对各种复杂的按钮和仪表而头疼,只要通过一些简单的手势操作完成相应的功能。 本专利中提供的方法,并不仅限于以上所述的应用范围,只要需要通过动态手势进 行人机交互的地方,都可以应该本专利所提供的方法。由于本专利所提供的方法方 便、自然、有效,所以可以领域很广,且潜力很大。

附图说明

图1是本发明的流程图;

图2是本发明动态手势训练子方法的流程图;

图3是本发明动态手势识别子方法流程图;

图4是本发明的实施例的添加新手势的流程图。

具体实施方式

下面结合附图和具体实施例对本发明进行详细说明。

实施例

如图1所示,一种基于深度摄像头的双手三维非接触式动态手势识别方法,包 括以下步骤:

1)动态手势训练子方法;

2)动态手势识别子方法。

如图2所示,所述的动态手势训练子方法包括以下步骤:

101)利用深度摄像头采集视频骨骼流,获取所需骨骼节点的三维位置,将双 手的骨骼节点三维位置以六维向量的方式存储;

102)通过六维向量和帧率得到双手的速度六维向量;

103)根据速度六维向量判断动态手势是否开始,若未开始,返回步骤101), 若开始,则进入104);

104)在动态手势进行过程中,将双手的骨骼节点以六维向量的方式存储;

105)通过六维向量和帧率得到双手的速度六维向量;

106)对存储的六维速度向量进行特征提取,获得一个手势相应的特征值时间 序列;

107)判断动态手势是否结束,若为是,重复104)到106)获取不同手势对应 的特征值时间序列,否则,将得到这些特征值时间序列作为训练样本库,执行步骤 108);

108)根据步骤107)得到的训练样本库,利用耦合隐马尔科夫进行训练,得 到耦合隐马尔科夫模型。

如图3所示,所述的动态手势识别子方法包括以下步骤:

201)利用深度摄像头采集视频骨骼流,获取所需骨骼节点的三维位置,将双 手的骨骼节点以六维向量的方式存储;

202)获得速度六维向量;

203)判断动态手势是否开始,若未开始,回到201),若开始,则进入204);

204)在动态手势进行过程中,将双手的骨骼节点以六维向量的方式存储;

205)获得速度六维向量;

206)对存储的六维速度向量列表进行特征提取,获得待识别手势相应的特征 值时间序列;

207)然后将该特征值时间序列传入已训练好的耦合隐马尔科夫模型中,与标 准手势的特征值时间序列进行匹配,得到待识别手势最接近的标准手势,将其作为 识别结果。

所述的将双手的骨骼节点三维位置以六维向量的方式存储具体为:

将左右手三维位置R(X1,Y1,Z1)和L(X2,Y2,Z2)以6维向量P(X1,Y1,Z1,X2,Y2,Z2) 的方式存储。

所述的速度六维向量Vt计算如下:

通过双手位置向量Pt(X1,Y1,Z1,X2,Y2,Z2)和视频帧率f计算得到,

Vt(X1,Y1,Z1,X2,Y2,Z2)=(Pt(X1,Y1,Z1,X2,Y2,Z2)-Pt-1(X1,Y1,Z1,X2,Y2,Z2))*f, 其中t是帧的序数。

所述的判断动态手势是否开始或结束具体如下:

设定一个阈值Vmin,当速度Vt大于Vmin,并维持若干帧时,手势开始,但速 度都小于速度Vmin,并维持若干帧时,手势结束。

所述的特征提取具体为:

将位于手势开始和手势结束之间的所有速度六维向量和设定的阈值Vmin进行 比较,若大于Vmin,则将其与预先设定好的特殊方向单位向量进行点乘,选择内积 结果最大的对应的特殊方向单位向量作为特征值存储,并将连续的特征值中相同的 仅保留一个

所述的特殊方向单位向量为六维向量,其每个元素只能取-1,0,1中的一个,然 后将其单位化。这样的单位向量一共有36=729个。如果想让手势识别的更加精确, 可以增加单位向量的个数,但这会增加运算的复杂度。

如图4所示,使用本专利的方法添加一个新的手势到训练库中并可以识别。步 骤一,输入添加的手势的名称;步骤二,开始录制响应的手势序列;步骤三,判断 是否录制完成,若未完成,则返回步骤二,若完成则继续下面的步骤;步骤四,将 录制好的手势序列添加到手势训练库中;步骤五,用手势训练库去训练耦合隐马尔 科夫模型;步骤六,进行手势识别。

使用本专利的方法,即基于深度摄像头的双手三维非接触式动态手势的识别方 法,进行双手手势识别时的效果,经过试验,本专利的方法可以很好的识别双手动 态手势。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号