System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及机器视觉,尤其涉及一种3d骨骼坐标系与vr头显坐标系对齐的方法。
技术介绍
1、在当前的机器视觉技术中,通过对人体动作进行捕捉,可以有效地提取出人体3d骨骼坐标。当这种技术与虚拟现实(vr)相结合时,它能够为vr头显提供全身追踪的功能,从而使用户在虚拟环境中获得更真实和沉浸式的体验。
2、目前市场上的多数vr头显都具备自己的空间定位功能。例如,vive index头显基于htc基站来实现其6dof空间坐标的定位;而oculus和pico头显则结合其自带的摄像头和惯性传感器来进行slam重建,以确定自身在周围环境中的6dof空间坐标。这种方式为vr头显提供了准确的空间位置和方向信息。
3、然而,当我们希望将机器视觉提取出的3d骨骼坐标应用到vr头显中进行全身追踪时,一个关键的问题是坐标系的对齐。骨骼坐标系与vr头显的坐标系可能存在偏差,如果不进行适当的转换,用户的身体某些部位(如脚)在vr环境中的位置可能会出现偏差。
4、针对上述问题,现有的视觉坐标对齐方法大致分为以下几个步骤:
5、step1:采用相机进行三维人体姿态估计,特定寻找头部骨骼并确定其四元数。如果头部骨骼未提供准确的四元数旋转值,或提供的值存在偏差,可以通过数学方法重新计算头部旋转,从而得到更准确的头部骨骼四元数。这一步的姿态估计算法可以根据实际应用需要进行选择。
6、step2:在姿态估计结果中找到头部坐标,并与此同时确定vr头显的头部坐标及其四元数。
7、step3:利用两组四
8、step4:通过第三步得到的外参将深度相机的坐标系与vr坐标系对齐。
9、但这种方法存在明显的缺陷。首先,由于姿态估计算法可能对空间坐标的估计存在不准确性,或者提供的四元数可能有误,这会直接影响到后续的对齐步骤。在第三步中,由于前期提供的数据可能存在不准确,所使用的点云配准算法可能无法完美地实现骨骼坐标系与vr坐标系之间的对齐。在实际应用中,这会导致对齐成功率低下,并且准确度不够高。因此,当用户在vr中观察自己的骨骼时,可能会发现骨骼出现明显的偏差或歪斜。
10、综上,对于机器视觉人体姿态估计算法提取的3d骨骼点与vr头显的坐标系对齐,仍需要更加准确的方法来解决上述问题。
技术实现思路
1、本专利技术针对传统的视觉坐标系对齐方法存在的缺陷,提出了一种3d骨骼坐标系与vr头显坐标系对齐的方法,适用于单个或者多个相机,也适用于基于rgb相机或者基于rgb-d相机的人体姿态估计。
2、为实现上述目的,本专利技术提供了一种3d骨骼坐标系与vr头显坐标系对齐的方法,包括:
3、通过三维人体姿态估计,获取姿态估计结果,同时记录vr头显坐标和手柄的坐标,以及所述vr头显和所述手柄的四元数;其中,所述姿态估计结果包括人体骨骼坐标及骨骼四元数;
4、根据所述姿态估计结果,以及所述vr头显坐标和手柄的坐标,分别获得深度相机坐标系及vr头显坐标系中的对应特征点;
5、筛选所述对应特征点,计算所述深度相机坐标系与所述vr头显坐标系之间的外参,通过所述外参,实现所述深度相机坐标系与所述vr头显坐标系的对齐;其中,所述对应特征点为骨骼四元数及所述vr头显和所述手柄的四元数点集。
6、优选地,通过所述三维人体姿态估计前包括:对相机进行外参标定,利用标定好的相机基于单位人体姿态估计算法进行所述三维人体姿态估计。
7、优选地,获取所述姿态估计结果,包括:
8、通过所述三维人体姿态估计,找到人体头部骨骼坐标和手部骨骼坐标,并提取头部骨骼四元数和手部骨骼四元数;
9、若所述四元数不提供或不准确,则通过姿态估计算法重新计算,获取所述头部骨骼四元数和所述手部骨骼四元数;其中所述姿态估计算法包括基于深度学习的实时人体姿态估计方法、alphapose、spin和3dmppe法。
10、优选地,筛选所述骨骼四元数及所述vr头显和所述手柄的四元数点集,包括:
11、通过滑动窗口和移动平均线的方法进行筛选;
12、选择固定长度为的窗口,获取相邻 t个时刻当中头显坐标系和深度相机坐标系对应的点;
13、对于每个窗口,计算相邻数据点之间的距离,并存储在一个数组中,计算所述数组的标准差;
14、若所述标准差小于稳定系数,则认为当前窗口内的数据点为稳定点,对所述稳定点进行筛选,获得筛选后的点集;
15、其中,计算所述相邻数据点之间的距离的方法为:
16、
17、式中,为在vr头显坐标系下点 i与点 i-1的三维空间的距离,为在vr头显坐标系下点 i的三维空间位置,为在vr头显坐标系下点 i-1的三维空间位置,为在深度相机坐标系下点 i与点 i-1的三维空间的距离,为在深度相机坐标系下点 i的三维空间位置,为在深度相机坐标系下点 i-1的三维空间位置,为欧氏距离的计算方法。
18、优选地,对所述稳定点进行筛选,获得筛选后的点集,包括:
19、计算所述稳定点所在数组之间的坐标的平均值,将所述平均值的坐标点作为代表点;
20、在所述代表点中选择距离相差较大的点通过聚类算法进行坐标系配准,并将所有数据点输入到k-means中,运行后获得p个聚类中心,作为可靠点一;
21、所述代表点和所述可靠点一即为筛选出的点集。
22、优选地,计算所述深度相机坐标系与所述vr头显坐标系之间的外参,包括:
23、基于所述代表点和所述可靠点,通过点云配准方法计算出深度相机坐标系与vr头显坐标系之间的外参。
24、优选地,计算所述外参的方法包括:
25、计算当前帧取出的点与前若干帧的可靠点之间的距离,当所述距离大于预设阈值时,则选择此点为可靠点二,所述预设阈值的具体取值即为所述外参。
26、与现有技术相比,本专利技术具有如下优点和技术效果:
27、本专利技术通过结合滑动窗口、移动平均线、聚类算法等策略,显著提高了基于机器视觉人体三维姿态估计算法提取出的骨骼坐标系,和头显坐标系对齐的精度和准确率,极大的提高了鲁棒性,满足了高级vr全身追踪系统及其多头显混搭的需求。
本文档来自技高网...【技术保护点】
1.一种3D骨骼坐标系与VR头显坐标系对齐的方法,其特征在于,包括:
2.根据权利要求1所述的3D骨骼坐标系与VR头显坐标系对齐的方法,其特征在于,通过所述三维人体姿态估计前包括:对相机进行外参标定,利用标定好的相机基于单位人体姿态估计算法进行所述三维人体姿态估计。
3.根据权利要求1所述的3D骨骼坐标系与VR头显坐标系对齐的方法,其特征在于,获取所述姿态估计结果,包括:
4.根据权利要求1所述的3D骨骼坐标系与VR头显坐标系对齐的方法,其特征在于,筛选所述骨骼四元数及所述VR头显和所述手柄的四元数点集,包括:
5.根据权利要求4所述的3D骨骼坐标系与VR头显坐标系对齐的方法,其特征在于,对所述稳定点进行筛选,获得筛选后的点集,包括:
6.根据权利要求5所述的3D骨骼坐标系与VR头显坐标系对齐的方法,其特征在于,计算所述深度相机坐标系与所述VR头显坐标系之间的外参,包括:
7.根据权利要求6所述的3D骨骼坐标系与VR头显坐标系对齐的方法,其特征在于,计算所述外参的方法包括:
【技术特征摘要】
1.一种3d骨骼坐标系与vr头显坐标系对齐的方法,其特征在于,包括:
2.根据权利要求1所述的3d骨骼坐标系与vr头显坐标系对齐的方法,其特征在于,通过所述三维人体姿态估计前包括:对相机进行外参标定,利用标定好的相机基于单位人体姿态估计算法进行所述三维人体姿态估计。
3.根据权利要求1所述的3d骨骼坐标系与vr头显坐标系对齐的方法,其特征在于,获取所述姿态估计结果,包括:
4.根据权利要求1所述的3d骨骼坐标系与vr头显坐标系对齐的方法,其...
【专利技术属性】
技术研发人员:王哲,板俊荣,李昊燃,韦宝,刘方超,
申请(专利权)人:南京起源跃动科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。