手部姿态追踪的方法、装置及系统与流程

文档序号:18901678发布日期:2019-10-18 22:01阅读:345来源:国知局
手部姿态追踪的方法、装置及系统与流程

本发明涉及计算机视觉技术领域,尤其涉及一种手部姿态追踪的方法、装置及系统。



背景技术:

随着深度传感器的普及和人机交互领域的需求,基于深度数据的手部姿态识别和追踪是新型人机交互技术中不可或缺的重要途径之一,有着广泛的应用前景,例如手势遥控无人机,手势操控家用机器人,体感游戏以及辅助医学手术等等。与传统基于rgb图像的手部姿态估计相比,深度数据可以提供手部的三维距离信息。

现有的人机交互中的手部姿态识别要求使用者手部平行于摄像头成像平面,然而人们的手部姿态往往与水平面成一定的角度,使得手部姿态识别和追踪准确性不高。

或者现有的手部追踪方法大多使用固定的手部模型,不同用户具有不同尺寸的手,使用固定模板的手会降低追踪精度,有时需要根据不同的用户使用预先进行手部形状标定,操作繁琐,姿态追踪效率低,降低用户的使用体验。



技术实现要素:

本发明提供一种手部姿态追踪的方法、装置及系统,以提高姿态追踪的准确性、高效性,无需高计算设备资源(例如gpu(graphicsprocessingunit,图形处理器)即可以实现实时的姿态追踪。

第一方面,本发明实施例提供的一种手部姿态追踪的方法,包括:

获取包含手部区域的深度图像;

根据所述深度图像,通过目标网络模型获取目标手部姿态;其中,所述目标网络模型是指预先经过训练的,用于对所述深度图像进行特征提取和特征识别得到目标初始手部姿态,并对所述目标初始手部姿态进行优化以输出目标手部姿态的学习模型。

在一种可能的设计中,获取包含手部区域的深度图像,包括:采用深度摄像头拍摄包含手部区域的深度图像。

在一种可能的设计中,在根据所述深度图像,通过目标网络模型获取目标手部姿态之前,还包括:

构建姿态初始化网络模型,其中,所述姿态初始化网络模型包括手部全局定位支路,手部姿态分类支路;所述手部全局定位支路用于提取所述深度图像中手的特征点,并根据所述特征点输出手部全局姿态;所述手部姿态分类支路用于提取所述深度图像的特征点,且根据预设手部基准姿态的特征点与所述深度图像的特征点进行匹配分类,得到手部当前局部姿态;通过训练数据集训练姿态优化模块得到目标网络模型。

在一种可能的设计中,

所述姿态优化模块具体用于将所述手部全局姿态与所述手部当前局部姿态进行匹配融合得到所述目标初始手部姿态,使用目标方程对所述目标初始手部姿态进行优化,得到目标手部姿态。

在一种可能的设计中,所述姿态优化模块中包含多种优化函数项的目标方程,通过预设约束条件构建所述姿态优化模块的优化函数项,其中优化函数项,包括手部姿态优化对应的多个优化函数项以及手部形状优化对应的优化函数项。

第二方面,本发明实施例提供的一种手部姿态追踪的装置,应用如第一方面中任一项所述的方法,所述目标网络模型包括:由多个卷积层、归一化层和relu激活层、池化层、非池化层、热力图层、全连接层和relu激活层以及softmax层分别组成的手部全局定位支路、手部姿态分类支路。

在一种可能的设计中,所述手部全局定位支路,包括:多个卷积层、归一化层和relu激活层、池化层以及非池化层,其中所述卷积层用于提取深度图像中手的特征点;所述归一化层用于将设置所述特征点的数值范围;所述relu激活层用于将特征点输出为增强表达的特征图;所述池化层对所述增强表达的特征图进行压缩,得到压缩特征图以使特征图变小,所述非池化层用于将所述压缩特征图在尺度上进行放大,且与关节点的最大似然距离密度图输出有关。所述热力图层用于生成手部初始全局位置。

在一种可能的设计中,所述手部姿态分类支路,包括:

多个依次组合的所述卷积层、所述归一化层和所述relu激活层、所述池化层、所述全连接层和所述relu激活层以及所述softmax层。其中,所述卷积层用于提取深度图像的特征点,所述归一化层用于限定所述特征点的数值范围;所述relu激活层用于将所述特征点输出为增强表达的特征图,所述池化层对所述增强表达的特征图进行压缩,得到压缩特征图以使特征图变小,所述全连接层用于将所述压缩特征图进行连接得到局部特征图,softmax层通过输出手的姿势的概率用于对所述局部特征图进行分类获得手部当前局部姿态。

第三方面,本发明实施例提供的一种手部姿态追踪的系统,包括:存储器和处理器,存储器中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行第一方面任一项所述的手部姿态追踪的方法。

第四方面,本发明实施例提供的一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面任一项所述的手部姿态追踪的方法。

本发明提供一种手部姿态追踪的方法、装置及系统,该方法,包括获取包含手部区域的深度图像;根据所述深度图像,通过目标网络模型获取目标手部姿态;其中,所述目标网络模型是指预先经过训练的,用于对所述深度图像进行特征提取和特征识别,以输出目标手部姿态的学习模型。以提高姿态追踪的准确性、高效性,无需高计算设备资源(例如gpu(graphicsprocessingunit,图形处理器))即可以实现实时的姿态追踪。通过目标网络模型能够实现手部姿态优化、手部形状优化和手部姿态形状联合优化等阶段处理过程,可以同时满足姿态追踪的准确性和实时性要求。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例一提供的手部姿态追踪的方法的流程图;

图2为本发明实施例二提供的手部姿态追踪的方法的流程图;

图3为本发明实施例二提供的手部姿态追踪的方法中网络模型的结构示意图;

图4为本发明实施例三提供的手部姿态追踪的方法的流程图;

图5为本发明实施例三提供的手部姿态追踪的方法中部分效果示意图;

图6为本发明实施例四提供的手部姿态追踪的系统的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

下面以具体地实施例对本发明的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。

现有技术中大多使用固定的手部模型来实现手部姿态追踪,降低了手部姿态追踪的准确率,同时降低了用户使用体验。

图1为本发明实施例一提供的手部姿态追踪的方法的流程图,如图1所示,本实施例中的方法可以包括:

s101、获取包含手部区域的深度图像。

具体的采用深度摄像头拍摄包含手部区域的深度图像。

深度图像是包含与视点的场景对象的表面的距离有关信息的图像或者图像通道。其中,深度图像的每个像素值包含传感器距离物体的实际距离,且像素点之间具有一对一的对应关系,存储每个像素所用的位数可以与量度图像色彩的分辨率一一对应。获取深度图像的方法可以包括被动测距传感方法或者主动深度传感方法。被动测距传感中最常用的方法是双目立体视觉,该方法通过两个相隔一定距离的摄像机同时获取同一场景的两幅图像,通过立体匹配算法找到两幅图像中对应的像素点,随后根据三角原理计算出时差信息,而视差信息通过转换可用于表征场景中物体的深度信息。主动测距传感相比较于被动测距传感最明显的特征是:设备本身需要发射能量来完成深度信息的采集。这也保证了深度图像的获取独立于彩色图像的获取。主动深度传感的方法主要包括了tof(timeofflight,飞行时间)、结构光、激光扫描等。

本实施例中,深度图像中包含手部区域的三维表示信息,每个像素点的灰度值可用于表征场景中手部区域某一点距离摄像机的远近。一般通过立体照相机或者tof照相机获取。如果具备照相机的内标定参数,可将深度图像转换为点云。其中,tof相机获取深度图像的原理是:通过对目标场景发射连续的近红外脉冲,然后用传感器接收由物体反射回的光脉冲。通过比较发射光脉冲与经过物体反射的光脉冲的相位差,可以推算得到光脉冲之间的传输延迟进而得到物体相对于发射器的距离,最终得到一幅深度图像。

s102、根据深度图像,通过目标网络模型获取目标手部姿态;其中,目标网络模型是指预先经过训练的,用于对深度图像进行特征提取和特征识别得到目标初始手部姿态,并对目标初始手部姿态进行优化以输出目标手部姿态的学习模型。

本实施例中,目标网络模型不同于经典cnn神经网络,包含多个依次组合的卷积层、归一化层和relu激活层,至少一个池化层、非池化层以及多个依次组合的全连接层和relu激活层。通过对包含手部区域的深度图像进行特征提取和特征识别得到目标初始手部姿态,并对目标初始手部姿态进行优化以输出目标手部姿态的学习模型。

本实施例通过获取包含手部区域的深度图像;根据深度图像,通过目标网络模型对深度图像进行特征提取和特征识别得到目标初始手部姿态并对目标初始手部姿态进行优化以输出目标手部姿态的学习模型。以提高姿态追踪的准确性、高效性,无需高计算设备资源(例如gpu(graphicsprocessingunit,图形处理器)即可以实现实时的手部姿态追踪。

基于上述实施例参考图2,图2为本发明实施例二提供的手部姿态追踪的方法的流程图,本实施例中该方法在根据深度图像,通过目标网络模型获取目标手部姿态之前还包括步骤s201和步骤s202,即本实施例中的方法包括:

s201、构建姿态初始化网络模型,其中,姿态初始化网络模型包括手部全局定位支路,手部姿态分类支路;手部全局定位支路用于提取深度图像中手的特征点,并根据特征点输出手部全局姿态(即手部的全局坐标和朝向);手部姿态分类支路用于提取深度图像的特征点,且根据预设手部基准姿态的特征点与深度图像的特征点进行匹配分类,得到手部当前局部姿态(即手部的各个关节点的旋转角)。手部全局姿态即手部的整体在空间中的3d坐标和3个旋转自由度,且手部形状包含于手部全局姿态。手部当前局部姿态指手部的各个关节点的旋转角。

具体参考图3,图3为本发明实施例二提供的手部姿态追踪的方法中网络模型的结构示意图,如图3所示,1为卷积层、归一化层和relu激活层,2为池化层,3为非池化层,4为热力图层,5为全连接层和relu激活层,6为softmax层。其中构建姿态初始化网络模型,该姿态初始化网络模型包括手部全局定位支路、手部姿态分类支路以及姿态优化模块,其中,手部全局定位支路可以依次包含多个组合的卷积层、归一化层和relu激活层、池化层以及非池化层,其中卷积层用于提取深度图像中手的特征点,归一化层用于将这些特征点的数值限定至一定范围内,从而消除奇异特征点导致的不良影响,relu激活层用于将特征点输出为增强表达的特征图,池化层对该特征图进行压缩,得到压缩特征图以使特征图变小,非池化层用于将压缩特征图在尺度上进行放大,且与关节点的最大似然距离密度图输出有关。最终通过热力图层用于生成手部初始全局位置。

手部姿态分类支路可以依次包含多个组合的卷积层、归一化层和relu激活层、池化层、全连接层和relu激活层、以及softmax层(softmaxlayer),其中卷积层用于提取深度图像的特征点,归一化层用于将这些特征点的数值限定至一定范围内,从而消除奇异特征点导致的不良影响,relu激活层用于将特征点输出为增强表达的特征图,池化层对该特征图进行压缩,得到压缩特征图以使特征图变小,全连接层用于将压缩特征图进行连接得到局部特征图,softmax层通过输出手的姿势的概率用于对局部特征图进行分类获得手部当前局部姿态。

姿态优化模块用于将手部全局姿态与手部当前姿态进行匹配融合作为初始值得到目标初始手部姿态即生成手部初始模型,然后使用目标方程对目标初始手部姿态进行优化,最终得到目标手部姿态。s202、通过训练数据集训练姿态优化模块得到目标网络模型。

具体的,姿态优化模块用于将手部全局姿态与手部当前局部姿态进行匹配融合得到目标初始手部姿态,使用目标方程对目标初始手部姿态进行优化最终得到目标手部姿态。

本实施例中,训练数据集包含大量用户张开、闭合、捏取、握拳以及剪刀等手部动作的深度图像,将训练数据集的这些深度图像输入姿态初始化网络模型,经过多次迭代训练姿态优化模块得到目标网络模型。

s203、获取包含手部区域的深度图像。

s204、根据深度图像,通过目标网络模型获取目标手部姿态。

本实施例中,步骤s203~步骤s204的具体实现过程和技术原理请参见图1所示的方法中步骤s101~步骤s102中的相关描述,此处不再赘述。

本实施例中,获取包含手部区域的深度图像,通过训练姿态初始化网络模型得到目标网络模型,进而根据深度图像,通过目标网络模型获取目标手部姿态。以提高姿态追踪的准确性、高效性,无需高计算设备资源(例如gpu(graphicsprocessingunit,图形处理器))即可以实现实时的姿态追踪。

具体参考图4,图4为本发明实施例三提供的手部姿态追踪的方法的流程图。如图4所示,本实施例手部姿态追踪的方法可以在通过目标网络模型获取目标手部姿态的步骤之前,还包括步骤s300获取包含手部区域的深度图像,步骤s300的具体实现过程和技术原理请参见图1所示的方法中步骤s101中的相关描述,此处不再赘述。

s301、提取所述深度图像中手的特征点,并根据所述特征点输出手部全局姿态。

具体的,根据手部根节点(其中包括关节点的三维坐标)及其位置输出手部根节点位置的heatmap(热力图),然后使用高斯概率模型拟合得到根节点的空间坐标(即手的3个空间坐标自由度),然后使用主成分分析(pca)方法计算出特征点云的朝向,即手的三个全局旋转朝向自由度。其中根节点即手的手腕处的坐标。

s302、提取所述深度图像的特征点,且根据预设手部基准姿态的特征点与所述深度图像的特征点进行匹配分类,得到手部当前的局部姿态。具体的,将深度图像中提取的特征点与预设手部基准姿态的特征点进行匹配,分类得到手部当前局部姿态。其中手部基准姿态可以包括手部张开,手部闭合,手部捏取等动作姿态,但不包括手部全局姿态。

其中,步骤s301~步骤s302不限定先后顺序。

s303、将所述手部全局姿态与所述手部当前局部姿态进行匹配融合得到所述目标初始手部姿态,使用目标方程对所述目标初始手部姿态进行优化,得到目标手部姿态。

具体的,步骤s303中将所述目标初始手部姿态进行手部姿态优化处理之后,进行手部形状和手部姿态形状联合优化;得到优化手部姿态、目标手部形状、目标手部姿态。

且姿态优化模块中包含多种优化函数项的目标方程,通过预设约束条件构建述姿态优化模块的优化函数项,其中优化函数项包括手部姿态优化对应的各种优化函数项以及手部形状优化对应的优化函数项;迭代训练所述姿态优化模块得到目标网络模型。

本实施例中,姿态优化模块将手部全局姿态与手部当前局部姿态进行融合估计出目标初始手部姿态结合可变尺寸的手部模型即生成手部初始模型,并依次进行手部姿态优化处理,进行手部形状和手部姿态形状优化,得到优化手部姿态、目标手部形状、目标手部姿态即目标手部模型。

具体参考图5,图5为本发明实施例三提供的手部姿态追踪的方法中部分效果示意图。如图5所示,黑色部分(未带有黑色点状)表示该特征点处深度图像在手部初始模型之前(即手部初始模型未覆盖深度图像),带有黑色点状的黑色部分表示该特征点处的手部初始模型在深度图像之前,白色部分表示该特征点处的手部初始模型与深度图像之间匹配融合,且误差在±5毫米之内。因此较好的优化结果是手部初始模型与深度图像匹配(即白色部分越多越好)。

具体的,从左往右,第一张图表示通过目标网络模型后输出的目标初始手部姿态,即估计出一个粗略的手部姿态,构造生成手部初始模型,从图中可以看出,该手部初始模型与深度图像的匹配存在较大的匹配误差。第二张图是只进行姿态优化的结果,可以看出,手部初始模型的大拇指在优化后已经和深度图像匹配上,得到优化手部姿态,但其他手指由于在长度上的原因没有匹配上。第三张图是只进行手部形状的优化,可以看出,手部初始模型中手的长度经过优化,已经和深度图像匹配上,得到目标手部形状。最后一张图是经过手部姿态形状联合优化后,得到目标手部姿态即生成目标手部模型。

同时在优化过程中,引入了多种手部的先验约束,例如手的碰撞,关节旋转,时序信息等,在依次进行手部姿态优化处理,进行手部形状和手部姿态形状联合优化过程中,将各个优化处理过程包含的优化函数项设定权值,且考虑了不同手部的各种不同状态(例如是否自遮挡严重,是否丢失,是否运动模糊较大)。并通过预设上述先验约束条件构建所述姿态优化模块的优化函数项,迭代训练姿态优化模型得到目标网络模型。

通过一系列连续的深度图像序列it,t是对应的时间索引,手部模型表示为h(θt,β),其中θt是t时刻手的姿态参数,β是手的形状参数,手部姿态估计的算法的目的在于找到一个θt满足下列目标方程(即公式一):

表示手部区域,使用x表示中的一点,使用姿态初始化网络模型可以得到该方程的一个初始解则将该初始解代入方程可以列为:

利用公式(二)使用优化方法可以求解到当前的手部姿态,但是由于手的高自由度导致的自遮挡以及深度图像噪声,得到的解可能不符合现实环境中的真实情况,所以可以使用多种手的先验约束对姿态进行限制,主要使用了手的关节旋转限制,手的碰撞限制,手的时序约束限制,其公式分别如下:

手的关节旋转限制ebound:

其中,表示第i个关节的旋转角的范围,ω1表示手部关节旋转角对应的最小角度的权重系数,ω2表示手部关节旋转角对应的最大角度的权重系数,λ3代表该目标函数项对应的权重系数

手的碰撞限制ecol:

其中λ4代表该目标函数项对应的权重系数,δ代表求取对应的积分符号,d代表xi与xj指尖的距离,χ(i,j)用于指示第i个关节是否和第j个关节碰撞,jskel(xi)表示该关节对应的雅可比矩阵,雅可比矩阵以一定方式排列的一阶偏导数的矩阵,其行列式称为雅可比行列式,在一种可选的实施例中,雅可比矩阵的前三行称为位置雅可比矩阵,代表手部全局姿态,后三行称为方位矩阵,代表手部当前局部姿态,且可以利用反向动力学相关内容进行计算。

手的时序约束限制etemp:

其中ki表示第i个关节当前的坐标,则表示其前一帧估计的位置。

参考下表1,手部姿态优化处理,手部形状和手部姿态形状联合优化过程中,不同阶段设置各个优化函数项的权限。

表1

本实施例中,手部姿态(主要针对手部关节旋转角)和手部形状(主要针对手部各个骨骼的长度)具有不同的量纲,直接同时进行优化,易陷入局部最小解。通过目标网络模型设置分阶段优化过程中各优化函数项的权值,能够同时满足手部姿态优化和手部形状优化的估计,例如估计出哪些关节骨骼被遮挡不需要优化等等。同时实现了姿态追踪的准确性和实时性。

图6为本发明实施例四提供的手部姿态追踪的系统的结构示意图,如图6所示,本实施例的手部姿态追踪的系统40可以包括:处理器41和存储器42。

存储器42,用于存储计算机程序(如实现上述手部姿态追踪方法的应用程序、功能模块等)、计算机指令等;

上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器42中。并且上述的计算机程序、计算机指令、数据等可以被处理器41调用。

处理器41,用于执行存储器42存储的计算机程序,以实现上述实施例涉及的方法中的各个步骤。

具体可以参见前面方法实施例中的相关描述。

处理器41和存储器42可以是独立结构,也可以是集成在一起的集成结构。当处理器41和存储器42是独立结构时,存储器42、处理器41可以通过总线43耦合连接。

本实施例的服务器可以执行图1、图2、图4所示方法中的技术方案,其具体实现过程和技术原理参见图1、图2、图4所示方法中的相关描述,此处不再赘述。

本发明提供一种手部姿态追踪的方法、装置及系统,该方法,包括获取包含手部区域的深度图像;根据深度图像,通过目标网络模型获取目标手部姿态;其中,目标网络模型是指预先经过训练的,用于对深度图像进行特征提取和特征识别得到目标初始首部姿态,并对目标初始手部姿态进行优化以输出目标手部姿态的学习模型。以提高姿态追踪的准确性、高效性,无需高计算设备资源(例如gpu(graphicsprocessingunit,图形处理器))即可以实现实时的姿态追踪。通过目标网络模型能够实现手部姿态优化、手部形状优化和手部姿态形状联合优化等阶段处理过程,可以同时满足姿态追踪的准确性和实时性要求。

此外,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当用户设备的至少一个处理器执行该计算机执行指令时,用户设备执行上述各种可能的方法。

其中,计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于asic中。另外,该asic可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于通信设备中。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1