一种基于双视角Kinect关节点融合的人体骨架重建方法与流程

文档序号:19144820发布日期:2019-11-15 23:23阅读:651来源:国知局
一种基于双视角Kinect关节点融合的人体骨架重建方法与流程

本发明属于人体运动识别技术领域,具体涉及一种基于双视角kinect关节点融合的人体骨架重建方法。



背景技术:

近年来,以kinect为代表的深度图像传感器在人体动作识别领域中得到广泛应用。kinect传感器可以根据深度图构建出拍摄人体的关节点骨架图,通过骨架的时空特征可以判断人体动作,然而传统单视角传感器采集的人体关节点数据由于自身遮挡、外物遮挡、传感器数据错误或丢失等问题导致人体骨架数据不准确,直接影响识别准确率。以往重建人体主要是人体点云重建和关节点标记:点云重建需要多个传感器,每个传感器采集人体点云数据,通过坐标转换、数据配对、数据融合重建人体表面点云,点云数据计算量庞大,时空对准容易出现误差;关节点标记方法是使用穿戴式传感器对关节点运动进行采集,设备灵活度差,对实验环境要求严格,费用较高。



技术实现要素:

本发明的目的是提供一种基于双视角kinect关节点融合的人体骨架重建方法,解决了现有人体骨架采集过程中容易发生遮挡或者关节点丢失的问题。

本发明所采用的技术方案是,一种基于双视角kinect关节点融合的人体骨架重建方法,具体按照以下步骤实施:

步骤1、使用两台kinect设备采集同一运动人体关节点三维坐标数据,拍摄速度为30帧每秒,构建包含n个类别的多视角人体运动序列数据库,其中,主视角关节点三维坐标数据库为daskeleton=v1,v2,...,vi,...,vn、辅助视角关节点三维坐标数据库为dbskeleton=u1,u2,...,ui,...,un,其中i的取值为1到n;

步骤2:对步骤1中两视角提取到的关节点进行时空统一,使用旋转矩阵和平移矩阵将辅助视角采集到的关节点坐标转换到主视角坐标系中;

步骤3:基于卡尔曼滤波的滤波修正,将两视角采集到的关节点数据进行滤波修正,去除数据中的振动,使每个关节点运动轨迹更加平滑,接近关节点的真实运动轨迹;

步骤4:将主视角丢失或者不准确的关节点用辅助视角经过时空统一和滤波修正后的关节点坐标进行补齐,使得主视角的骨架完整;

步骤5:两视角都采集到的关节点使用卡尔曼滤波变权重融合进行融合,使所有关节点坐标数据保持唯一,在骨架完整的情况下保证避免数据冗余。

本发明的特点还在于,

步骤2具体按照以下步骤实施:

步骤2.1、使用kinect传感器获取主视角和辅助视角两个视角下运动人体的主要关节点三维坐标序列,其中主视角关节点序列为pna,表示主视角a中的n帧序列,辅助视角关节点序列为pnb,表示主视角b中的n帧序列;

步骤2.2、在两个视角数据库daskeleton和dbskeleton选取同一时刻相同帧关节点数据vi和ui中选取六个以上主视角关节点坐标和辅助视角都采集到的同名部位关节点三维坐标联立方程,求解辅助视角b到主视角a的旋转矩阵rab和平移矩阵tab,将辅助视角坐标系下的关节点坐标转换到主视角坐标系下,两视角关节点空间统一。

步骤2.2具体按照以下步骤实施:

步骤2.2.1、设为主视角摄像机采集到的j关节点坐标为辅助视角摄像机采集到的j关节点坐标

步骤2.2.2、旋转矩阵rab为:

其中,α、β、γ分别为辅助视角b中的点转换到主视角a绕x、y、z轴旋转的角度;

步骤2.2.3、平移矩阵tab为:

tab=[tx,ty,tz]t

其中,tx、ty、tz分别为在x、y、z轴上的位移;

步骤2.2.4、将上述旋转矩阵rab和平移矩阵tab带入坐标转换方程,得到辅助视角b中j关节点坐标在主视角a坐标系下的坐标

步骤2.2.5、将选取的两个视角的同名关节点带入公式(1),求解出旋转矩阵rab和平移矩阵tab带入坐标转换方程,将辅助视角坐标系下的关节点坐标转换到主视角坐标系下,两视角关节点空间统一,将原辅助视角关节点序列全部按照上述方法经过坐标变换后的关节点序列记为

步骤3具体按照以下步骤实施:

步骤3.1、首先,将关节点运动轨迹利用系统的状态方程进行表示,卡尔曼滤波可根据上一时刻的状态对当前时刻的状态进行估计,关节点状态方程如下:

其中,表示利用系统上一时刻k-1对系统当前时刻k的先验状态估计,即当前状态的预测值,xk-1表示k-1时刻的后验状态估计,即上一时刻系统的最优估计值,系统状态为[x,vx,y,vy,z,vz],关节点的坐标用x,y,z表示,vx,vy,vz为关节点的运动速度,g为噪声驱动矩阵,此处取值为单位矩阵i,uk-1为k-1时刻测量噪声,f为状态转移矩阵,f表示如下:

其中,dt为采样的时间间隔;

步骤3.2、对系统当时刻k的状态预测之后,对系统的协方差p进行更新,p的初始值设为6×6的零矩阵,系统协方差p的更新方式如下公式:

其中,表示先验估计误差的协方差,pk-1表示k-1时刻后延估计误差的协方差,q表示状态变化的不确定性,q为:

步骤3.3、获得系统的状态预测值后,综合观测值和预测值,得到当前状态下最优值xk:

式中,表示k时刻系统的对关节点位置预测值,zk表示k时刻系统的关节点的观测值,h表示观测矩阵,ht为其转置,kk表示卡尔曼滤波增益,kk求解公式如下:

其中,表示先验估计误差的协方差,r表示测试过程的不确定性,r为:

观测矩阵h为:

获得k时刻的最优估计值xk后,需要继续求解对应的误差协方差,计算公式如下:

其中,i表示单位矩阵,表示先验估计误差的协方差,进入下一个时刻时,pk相当于公式(1)中的pk-1。

步骤3.1中dt=33ms。

步骤4具体按照以下步骤实施:

步骤4.1、设主视角第n帧采集的关节点序列为其中不包含因遮挡而丢失的关节点坐标;

步骤4.2、设辅助视角第n帧采集的关节点序列为其中包含主视角缺失的关节点,该序列经过步骤2、步骤3后,转换到主视角坐标系下并经过修正,记为

步骤4.3、将并计算,得到完整骨架序列

步骤5具体按照以下步骤实施:

步骤5.1、在完整骨架序列中存在两个视角都采集到的关节点,对这类关节点进行融合,计算需要融合的两视角同名关节点的权值,设a1为主视角参与数据融合的权值,a2为辅助视角融合的权值,是最终融合的无偏估计,其中权值a1、a2的计算如下:

a1=(q2-q21)(q1+q2-q12-q21)-1(7)

a2=(q1-q12)(q1+q2-q12-q21)-1(8)

其中,q1、q2分别为相应kinect传感器采集关节点的局部滤波误差方差阵,q12为第1个kinect传感器滤波误差与第2个kinect传感器滤波误差的互协方差阵,q21为第2个kinect传感器滤波误差与第1个kinect传感器滤波误差的互协方差阵;

步骤5.2、将权值a1、a2代入公式:

其中,分别是主视角关节点序列pna和辅助视角转换坐标系后关节点序列中k时刻关节点位置的无偏估计,a1和a2为进行融合时每个传感器数据对于数据融合的权值,是最终融合关节点坐标的无偏估计。

步骤5.1具体按照以下步骤实施:

步骤5.1.1、最优融合误差方差阵为:

p0=p1-(p1-p12)(p1+p2-p12-p21)-1(p1-p12)t(10)

步骤5.1.2、两个kinect传感器相互独立操作获取关节点数据,因此,局部估计误差互不相关,即p12=0,p21=0按照矩阵加权线性最小方差融合公式则权重(7)、(8)简化为:

a1=p2(p1+p2)-1,a2=p1(p1+p2)-1(11)

同时最优融合误差方差阵(10)简化为:

p0=p1-p1(p1+p2)-1p1t或p0=p2-p2(p1+p2)-1p2t(12)

步骤5.1.3、当存在精度关系trp0<trp1、trp0<trp2,即融合估计精度高于每个局部估计精度时,最优加权阵(7)、(8)简化为:

a1=(p1-1+p2-1)p1-1,a2=(p1-1+p2-1)p2-1(13)

最优融合误差方差阵(10)简化为:

p0=(p1-1+p2-1)-1(14)

经过条件化简,每个视角关节点权重以及最优融合误差方差阵都更加容易计算,最优融合误差方差阵越小说明融合误差越小,权值融合将两个视角都采集到的同名部位关节点进行融合,保证完整骨架无冗余。

本发明的有益效果是,分为三个阶段:两视角运动人体关节点骨架的获取、辅助视角关节点坐标转换到主视角坐标系中、双视角关节点的滤波融合。本发明提出的方法能够快速准确地将两视角的关节点融合重建出完整准确无冗余的人体骨架,有效避免了单视角发生遮挡或关节点丢失时人体骨架不全的情况。将本发明提出的算法与现有模型进行比较,验证该重建结果具有良好的精确性和有效性。

附图说明

图1是本发明的总体流程图;

图2为本发明步骤2的旋转矩阵和平移矩阵构建;

图3为本发明步骤(51)的用于关节点数据融合的算法流程。

具体实施方式

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

本发明一种基于双视角kinect关节点融合的人体骨架重建方法,流程图如图1所示,具体按照以下步骤实施:

步骤1、使用两台kinect设备采集同一运动人体关节点三维坐标数据,拍摄速度为30帧每秒,构建包含n个类别的多视角人体运动序列数据库,其中,主视角关节点三维坐标数据库为daskeleton=v1,v2,...,vi,...,vn、辅助视角关节点三维坐标数据库为dbskeleton=u1,u2,...,ui,...,un,其中i的取值为1到n;

步骤2、如图2所示,对步骤1中两视角提取到的关节点进行时空统一,使用旋转矩阵和平移矩阵将辅助视角采集到的关节点坐标转换到主视角坐标系中,具体按照以下步骤实施:

步骤2.1、使用kinect传感器获取主视角和辅助视角两个视角下运动人体的主要关节点三维坐标序列,其中主视角关节点序列为pna,表示主视角a中的n帧序列,辅助视角关节点序列为pnb,表示主视角b中的n帧序列;

步骤2.2、在两个视角数据库daskeleton和dbskeleton选取同一时刻相同帧关节点数据vi和ui中选取六个以上主视角关节点坐标和辅助视角都采集到的同名部位关节点三维坐标联立方程,求解辅助视角b到主视角a的旋转矩阵rab和平移矩阵tab,将辅助视角坐标系下的关节点坐标转换到主视角坐标系下,两视角关节点空间统一。

步骤2.2具体按照以下步骤实施:

步骤2.2.1、设为主视角摄像机采集到的j关节点坐标为辅助视角摄像机采集到的j关节点坐标

步骤2.2.2、旋转矩阵rab为:

其中,α、β、γ分别为辅助视角b中的点转换到主视角a绕x、y、z轴旋转的角度;

步骤2.2.3、平移矩阵tab为:

tab=[tx,ty,tz]t

其中,tx、ty、tz分别为在x、y、z轴上的位移;

步骤2.2.4、将上述旋转矩阵rab和平移矩阵tab带入坐标转换方程,得到辅助视角b中j关节点坐标在主视角a坐标系下的坐标

步骤2.2.5、将选取的两个视角的同名关节点带入公式(1),求解出旋转矩阵rab和平移矩阵tab带入坐标转换方程,将辅助视角坐标系下的关节点坐标转换到主视角坐标系下,两视角关节点空间统一,将原辅助视角关节点序列全部按照上述方法经过坐标变换后的关节点序列记为

步骤3、基于卡尔曼滤波的滤波修正,将两视角采集到的关节点数据进行滤波修正,去除数据中的振动,使每个关节点运动轨迹更加平滑,接近关节点的真实运动轨迹,具体按照以下步骤实施:

步骤3.1、首先,将关节点运动轨迹利用系统的状态方程进行表示,卡尔曼滤波可根据上一时刻的状态对当前时刻的状态进行估计,关节点状态方程如下:

其中,表示利用系统上一时刻k-1对系统当前时刻k的先验状态估计,即当前状态的预测值,xk-1表示k-1时刻的后验状态估计,即上一时刻系统的最优估计值,系统状态为[x,vx,y,vy,z,vz],关节点的坐标用x,y,z表示,vx,vy,vz为关节点的运动速度,g为噪声驱动矩阵,此处取值为单位矩阵i,uk-1为k-1时刻测量噪声,f为状态转移矩阵,f表示如下:

其中,dt为采样的时间间隔;

步骤3.2、对系统当时刻k的状态预测之后,对系统的协方差p进行更新,p的初始值设为6×6的零矩阵,系统协方差p的更新方式如下公式:

其中,表示先验估计误差的协方差,pk-1表示k-1时刻后延估计误差的协方差,q表示状态变化的不确定性,q为:

步骤3.3、获得系统的状态预测值后,综合观测值和预测值,得到当前状态下最优值xk:

式中,表示k时刻系统的对关节点位置预测值,zk表示k时刻系统的关节点的观测值,h表示观测矩阵,ht为其转置,kk表示卡尔曼滤波增益,kk求解公式如下:

其中,表示先验估计误差的协方差,r表示测试过程的不确定性,r为:

观测矩阵h为:

获得k时刻的最优估计值xk后,需要继续求解对应的误差协方差,计算公式如下:

其中,i表示单位矩阵,表示先验估计误差的协方差,进入下一个时刻时,pk相当于公式(1)中的pk-1。

步骤3.1中dt=33ms。

步骤4、将主视角丢失或者不准确的关节点用辅助视角经过时空统一和滤波修正后的关节点坐标进行补齐,使得主视角的骨架完整,具体按照以下步骤实施:

步骤4.1、设主视角第n帧采集的关节点序列为其中不包含因遮挡而丢失的关节点坐标;

步骤4.2、设辅助视角第n帧采集的关节点序列为其中包含主视角缺失的关节点,该序列经过步骤2、步骤3后,转换到主视角坐标系下并经过修正,记为

步骤4.3、将并计算,得到完整骨架序列

步骤5、如图3所示,两视角都采集到的关节点使用卡尔曼滤波变权重融合进行融合,使所有关节点坐标数据保持唯一,在骨架完整的情况下保证避免数据冗余,具体按照以下步骤实施:

步骤5.1、在完整骨架序列pnc中存在两个视角都采集到的关节点,对这类关节点进行融合,计算需要融合的两视角同名关节点的权值,设a1为主视角参与数据融合的权值,a2为辅助视角融合的权值,是最终融合的无偏估计,其中权值a1、a2的计算如下:

a1=(q2-q21)(q1+q2-q12-q21)-1(7)

a2=(q1-q12)(q1+q2-q12-q21)-1(8)

其中,q1、q2分别为相应kinect传感器采集关节点的局部滤波误差方差阵,q12为第1个kinect传感器滤波误差与第2个kinect传感器滤波误差的互协方差阵,q21为第2个kinect传感器滤波误差与第1个kinect传感器滤波误差的互协方差阵;

步骤5.2、将权值a1、a2代入公式:

其中,分别是主视角关节点序列和辅助视角转换坐标系后关节点序列中k时刻关节点位置的无偏估计,a1和a2为进行融合时每个传感器数据对于数据融合的权值,是最终融合关节点坐标的无偏估计。

步骤5.1具体按照以下步骤实施:

步骤5.1.1、最优融合误差方差阵为:

p0=p1-(p1-p12)(p1+p2-p12-p21)-1(p1-p12)t(10)

步骤5.1.2、两个kinect传感器相互独立操作获取关节点数据,因此,局部估计误差互不相关,即p12=0,p21=0按照矩阵加权线性最小方差融合公式则权重(7)、(8)简化为:

a1=p2(p1+p2)-1,a2=p1(p1+p2)-1(11)

同时最优融合误差方差阵(10)简化为:

p0=p1-p1(p1+p2)-1p1t或p0=p2-p2(p1+p2)-1p2t(12)

步骤5.1.3、当存在精度关系trp0<trp1、trp0<trp2,即融合估计精度高于每个局部估计精度时,最优加权阵(7)、(8)简化为:

a1=(p1-1+p2-1)p1-1,a2=(p1-1+p2-1)p2-1(13)

最优融合误差方差阵(10)简化为:

p0=(p1-1+p2-1)-1(14)

经过条件化简,每个视角关节点权重以及最优融合误差方差阵都更加容易计算,最优融合误差方差阵越小说明融合误差越小,权值融合将两个视角都采集到的同名部位关节点进行融合,保证完整骨架无冗余。

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