一种基于空间匹配的3D骨骼动作识别方法与流程

文档序号:16088772发布日期:2018-11-27 22:45阅读:965来源:国知局

本发明涉及3D骨骼动作识别领域,即基于空间匹配的动作识别方法。



背景技术:

动作识别在诸如智能安防、人机交互、无人驾驶等应用领域具有关键作用。很长一段时间,RGB图像都是动作识别的信息来源。随着深度相机的出现以及深度图像估测技术的发展,动作识别中出现了新的分支,即3D骨架动作识别。3D骨架关节点数据是在深度图像的基础之上通过估测技术得到的,具有光照变化不敏感的特性。

当前存在的3D骨骼动作识别大多都专注与提取具有区分度的特征以描述每个骨骼部位的变化特点,再计算对应部位的动作特征相似性,用以进行动作识别。然而,动作在执行时,各个部位之间不是独立存在,而是协同配合以完成某个动作。这些协同信息在以往的方法中常被忽略。3D骨骼动作识别准确率还具有上升的空间。



技术实现要素:

本发明的目的是提供一种基于空间匹配的3D骨骼动作识别方法,该方法通过简单有效的步骤挖掘出能够表达动作模式的骨骼关节点对,通过匹配的方法获取有效特征,实现3D骨骼动作识别准确率的提升。

本发明的目的是这样实现的:

一种基于空间匹配的3D骨骼动作识别方法,特点是通过计算骨骼关节点之间的相关性,选取具有代表动作模式的top-k个关节点对,并对这些关节点对进行特征匹配,匹配后的特征与之前的特征使用级联进行动作识别;具体包括以下步骤:

步骤1:以经过预处理后的深度相机获取的动作骨骼关节点序列为输入;

步骤2:每个关节点的坐标和时间帧级联成特征;

步骤3:计算每一个动作序列中,骨骼关节点之间的空间相对距离;

步骤4:根据降序,选取top-K个骨骼关节点对,并得到对应的指示矩阵;

步骤5:根据指示矩阵,使用平均池化的方法获取匹配后的特征;

步骤6:根据指示矩阵和匹配后的特征计算MSCKernel;

步骤7:计算匹配前的特征对应的MSCKernel,并与匹配后计算的MSCKernel进行融合,最后放入SVM进行动作分类。

所述步骤1中的动作骨骼关节点序列为各关节点的三维空间坐标。

所述步骤3中计算每一个动作序列中,骨骼关节点之间的空间相对距离公式为:

其中,表示N帧时长的动作序列上点关节点i和关节点j之间的距离均值;而且,Dist(t,(i,j))表示在t时刻,骨骼关节点i和j之间的空间距离,即:

xi(t),yi(t),zi(t)表示关节点i在t时刻的坐标值。

所述步骤4中得到对应的指示矩阵,具体包括:

1)将所有的关节点对对应的空间相对距离进行降序排列;

2)选取第K大的空间相对距离为阈值ε,大于等于该阈值则为1,否则为0,得到指示矩阵H,其中,对角元素皆为0:

所述步骤5中的平均池化为:

其中,Ci表示动作序列中骨骼t时刻第i个骨骼关节点的坐标,ti表示第i个关节点的时间帧;Cj表示动作序列中骨骼t时刻第j个骨骼关节点的坐标,tj表示第j个关节点的时间帧。

所述计算MSCKernel,具体为:

其中,表示动作序列a的指示矩阵i行j列的值,其意义是关节点i和j之间的空间相对距离是否在top-k中,即动作关节点对(i,j)是否参与动作执行;同理,表示序列b的对应含义;λi,j表示的是动作序列a和b对应的点对是否都参与了动作执行;分别表示的是动作序列a和b中,关节点i和j平均池化后的特征;Kernel(a,b)是表征动作序列a和b之间相似距离的核函数值;Gσ1是参数为σ1的径向量积核函数;σ1参数控制径向量积核函数作用范围的参数,表示的是两个动作序列中对应关节点的坐标特征相似的程度;Gσ2表示的是参数为σ2的径向量积核函数;σ2参数控制径向量积核函数作用范围的参数,表示的是两个动作序列中对应关节点的时间特征相似的程度;t1,t2,N1,N2分别表示序列1中关节点i所在的时间帧,序列2中关节点i所在的时间帧,序列1的长度,序列2的长度;m表示需要计算的关节点的数量,n表示的是骨骼的关节点数。

步骤7中,所述进行融合,具体为:

FKernel=α*K1+β*K2

其中,FKernel表示放入SVM进行分类的核函数,K1表示匹配前特征的核函数,K2表示的是步骤6计算出的核函数kernel,α表示K1的权重参数,β表示的是K2对应的权重参数。

本发明所述的SVM(Support Vector Machine)是支持向量机,为常见的一种判别方法。在机器学习领域,是一个有监督的学习模型,通常用来进行模式识别、分类以及回归分析。

本发明的有益效果:通过空间匹配选择具有表达动作模式有关节点对,获得匹配后的特征。该特征具有描述执行某一动作时骨骼关节点协同信息的能力,弥补了已有特征对骨骼相互之间协同信息挖掘不充分的缺陷。本方法完善3D骨骼关节点的特征信息,能够提升3D骨骼动作识别的准确率。

附图说明

图1为本发明流程图。

具体实施方式

本发明公开了一种基于空间匹配的3D骨骼动作识别方法,下面对所述的方法结合MSRAction 3D公共数据集为例,进一步具体说明。

MSRAction 3D公共数据集中,每个骨骼用20个关节点来描述人体。为了实现归一化处理,使用动作幅度不大的hip-center关节点作为坐标原点,建立坐标系。所以,某一时刻的骨骼的状态可以用3*19的向量来表示。而且,一个时间长度为T的动作序列可以使用57*T的矩阵进行表示。

本发明的整个动作识别分为两个流程,如图1所示,首先计算每个对应关节点之间的相似性;参考《Human Action Recognition by Representing 3D Skeletons as Points in a Lie Group》进行相似性计算;首先,将每个关节点的坐标和时间节点组合作为描述该关节点的特征,即(x,y,z,t)。使用逐个计算对应关节点的匹配程度,使用MSCKernel计算两个动作序列间的相似性。

其中,M1,M2表示两个动作序列,表示M1序列中关节点i在t1时刻的坐标,N1表示的是序列M1的总时长;表示M2序列中关节点i在t2时刻的坐标,N2表示序列M2的总时长。Gσ1是参数为σ1的径向量积核函数;σ1参数控制径向量积核函数作用范围的参数,表示的是两个动作序列中对应关节点的坐标特征相似的程度。Gσ2表示的是参数为σ2的径向量积核函数;σ2参数控制径向量积核函数作用范围的参数,表示的是两个动作序列中对应关节点的时间特征相似的程度。

接着,由于上述匹配是对应关节点之间的匹配,关节点之间的协同信息没有挖掘出来,因此,使用基于空间匹配的方法进行弥补。运动动作关节点之间距离变化方差大,说明关节点对于动作执行的参与程度高。基于这一点,计算所有点对空间相对距离。如下公式所示:

其中表示N帧时长的动作序列上点对(i,j)的距离均值。Dist(t,(i,j))表示在t时刻,关节点i和关节点j之间的距离:

然后,将这些距离由大到小进行排序,选取出top-k个关节点对,用这k个点对来表征该动作模式。选取第K大的空间相对距离为阈值ε,大于等于该阈值则为1,否则为0,得到指示矩阵H,其中对角元素皆为0。

其中H(i,j)=1,表示在该序列中关节点i,j参与动作执行,并且关节点i和j的协同信息能够表征动作运动模式。

根据指示矩阵,将具有表征动作的联动信息的关节点特征,使用平均池化方法进行匹配,得到空间匹配特征:

其中,Ci表示第i个骨骼关节点的坐标,ti表示第i个关节点的时间帧;Cj表示第j个骨骼关节点的坐标,tj表示第j个关节点的时间帧。

然后,先使用匹配前特征计算出K1,再使用得到的空间匹配特征和指示矩阵计算核K2:

接着,使用融合的方式,获取Final Kernel:

FKernel=α*K1+β*K2

其中,FKernel表示放入SVM进行分类的核函数,K1表示匹配前特征的核函数,K2表示的是步骤6计算出的核函数kernel,α表示K1的权重参数,β表示的是K2对应的权重参数。

最后,将得到的Final Kernel放入SVM中进行分类,实现对于3D骨骼动作的识别。

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