本发明涉及虚拟现实技术领域,具体来说是一种用于虚拟现实设备的手势识别装置。
背景技术:
目前,在市场上获得应用比较成熟得手势分析系统大多需要在人手上佩戴传感器或光学标记。基于传感器得系统通过讲传感器安置到被跟踪对象上来获取运动数据,这类系统可以保证一定的精度,但通常设备昂贵,需要复杂的校正步骤,且会对被跟踪对象的运动造成妨碍。基于光学标记的系统将光学标记安置在人手的关节上,然后通过相机对这些标记进行跟踪,然而人手在运动过程中得自遮挡会造成部分标记不可见,故此类系统需要人工对所捕获得数据进行后处理。
相比而言,基于计算机视觉的无标记手势跟踪识别方法是一类更自然的、适用性更广的、非接触的方法。因此,开发一种将基于计算机视觉获取的手势跟踪识别的装置并应用到虚拟现实技术中具有重大的意义。
技术实现要素:
针对上述问题,本发明旨在提供一种用于虚拟现实设备的手势识别装置。
本发明的目的采用以下技术方案来实现:
一种用于虚拟现实设备的手势识别装置,包括:
手势采集模块,用于获取用户手部的深度图像;
模型建立模块,用于根据获取的手部深度图像在虚拟空间中建立三维手部模型和状态特征模型;
匹配模块,用于根据手部图像的状态特征,将三维手部模型和手部图像进行状态匹配,获取三维手部模型的状态信息;
跟踪模块,用于对三维手部模型进行跟踪,获取三维手部模型的状态变化,其中所述状态变化包括移动和变形;
手势识别模块,用于根据三维手部模型的状态变化,对三维手部模型表达的手势进行识别,输出相应的识别结果。
优选地,所述手势采集模块为三维深度摄像头。
本发明的有益效果为:本发明通过计算机视觉手段来采集用户手部图像,并且同步建立三维手部模型,将用户手部图像和虚拟空间中的三维手部模型进行匹配,当用户手部状态发生改变时,三维手部模型状态会同步发生变化,在虚拟空间中通过对三维手部模型进行跟踪,获取三维手部模型的手势变化,并对其进行识别,获取最终的识别结果。本发明能够有效地防止传统方法在对手势进行跟踪时,由于遮挡等原因导致识别效果不佳;而且结构简单,适合大部分虚拟现实设备。
附图说明
利用附图对本发明作进一步说明,但附图中的实施例不构成对本发明的任何限制,对于本领域的普通技术人员,在不付出创造性劳动的前提下,还可以根据以下附图获得其它的附图。
图1为本发明的框架结构图。
附图标记:
手势采集模块1、模型建立模块2、匹配模块3、跟踪模块4、手势识别模块5
具体实施方式
结合以下应用场景对本发明作进一步描述。
参见图1,一种用于虚拟现实设备的手势识别装置,包括:
手势采集模块1,用于获取用户手部的深度图像;
模型建立模块2,用于根据获取的手部深度图像在虚拟空间中建立三维手部模型和状态特征模型;
匹配模块3,用于根据手部图像的状态特征,将三维手部模型和手部图像进行状态匹配,获取三维手部模型的状态信息;
跟踪模块4,用于对三维手部模型进行跟踪,获取三维手部模型的状态变化,其中所述状态变化包括移动和变形;
手势识别模块5,用于根据三维手部模型的状态变化,对三维手部模型表达的手势进行识别,输出相应的识别结果。
优选地,其特征在于,所述手势采集模块1为三维深度摄像头。
本申请上述实施例,通过计算机视觉手段来采集用户手部图像,并且同步建立三维手部模型,将用户手部图像和虚拟空间中的三维手部模型进行匹配,当用户手部状态发生改变时,三维手部模型状态会同步发生变化,在虚拟空间中通过对三维手部模型进行跟踪,获取三维手部模型的手势变化,并对其进行识别,获取最终的识别结果。本发明能够有效地防止传统方法在对手势进行跟踪时,由于遮挡等原因导致识别效果不佳;而且结构简单,适合运动到大部分虚拟现实设备用。
优选地,所述状态特征模型包括:三维手部模型状态特征xh包括26个自由度,其中6个全局自由度和20个局部自由度,6个全局自由度包括3个平移和3个旋转自由度,由三维手部模型掌心的一个固定点表示,5个手指的运动对应20个局部自由度,除拇指外,各手指的mcp关节均包含1个屈伸和1个外展内收自由度,而拇指的mcp关节只包含1个屈伸自由度,拇指的ip关节,其余4个手指的pip和dip关节均各包含1个屈伸自由度,拇指的tm关节包含2个自由度。
其中,mcp(metacarpophalangealpoint)表示掌指关节,pip(proximalinterphalangealpoint)表示近侧指间关节,dip(distalinterphalangealpoint)表示远侧指间关节,ip(interphalangealpoint)表示指间关节,tm(trapeziometacarpal)关节表示角骨关节。
本优选实施例,采用上述方式建立三维手部状态特征模型,采用特殊设计的26自由度模型,能够很好地适应模型的精准度和计算的复杂度,为提高整个装置的性能奠定了基础。
优选地,匹配模块3,用于根据手部图像的状态特征,将三维手部模型和手部图像进行匹配,获取三维手部模型的状态信息,具体包括:当手部图像中手部状态特征发生变化时,对三维手部模型做出相应的状态假设,并且计算三维手部模型的状态参数与手部图像之间的状态匹配误差,选取匹配误差最小的状态参数作为三维手部模型对应的最优解,并根据该状态参数更新三维手部模型的状态特征;
其中,采用的状态匹配模型为:
e(z,x′h)=λded(z,x′h)+λses(z,x′h)+λmem(x′h)
式中,e(z,x′h)表示手部图像z与三维手部模型状态假设x′h之间的匹配误差,es(z,xh)表示剪影特征项,其中
优选地,匹配模块3通过使用三位手部模型上一帧所获得的最优解来预测下一帧的状态参数,有效地缩小了状态参数的搜索空间。
本优选实施例,采用上述的方法对手部图像和三维手部模型进行匹配,通过结合三维手部模型的剪影特征、深度特征和平滑状态,在上一状态的基础上搜索匹配度最高的状态作为当前状态的特征参数,并且根据此特征参数更新三维手部模型的状态特征,实现三维手部模型跟随手部图像同步发生状态变化,适应性强,准确度高,实时性良好,为装置后续对三维手部模型手势的跟踪识别奠定了基础。
优选地,所述跟踪模块4,用于对三维手部模型进行跟踪,获取三维手部模型的状态变化,具体包括:
(1)对跟踪模块4进行初始化:从先验分布p(xh,0)采样得n个粒子,权值均为
(2)进行粒子状态转移,具体包括:
(21)获取粒子初始位置,将最新观测值引入待优化目标函数中,具体采用的粒子初始化函数为:
式中,
(22)对粒子进行迭代演化,驱动粒子向高似然概率区域运动,具体采用的迭代函数为:
式中,
(3)利用观测似然更新粒子权值
(4)根据权值大小对样本集
(5)根据样本集变化输出三维手部模型的状态变化,跳转到步骤(2),直到跟踪结束。
优选地,在上述实施例中,为了避免粒子过早收敛,导致效果不好,在步骤(22)后采用下列函数来提高粒子的多样性:
式中,
上述优选实施例,采用上述的方法对三维手部模型的状态特征变化进行跟踪,能够准确地获取三维手部模型的状态特征变化,适应性强,准确度高。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案,而非对本发明保护范围的限制,尽管参照较佳实施例对本发明作了详细地说明,本领域的普通技术人员应当分析,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质和范围。