无标记的光学测量与惯性测量融合动作捕捉技术研究*

2021-02-05 07:00陈曦黄昌正周言明梁铭成陈明
广东科技 2021年1期
关键词:卡尔曼滤波表演者惯性

文/陈曦 黄昌正 周言明 梁铭成 陈明

0 引言

近些年来,随着全球范围内虚拟现实(virtual reality,VR)商业化、普及化快速推进,VR 交互方式也由平面界面发展到虚拟空间追踪交互,极其强调沉浸感,而要完全沉浸进入虚拟世界,动作捕捉系统必不可少,可以说动作捕捉技术是VR 产业隐形钥。

VR 动作捕捉技术就是对真人进行实时地准确地测量并记录在真实三维空间中的运动轨迹和姿态,并将每一时刻运动状态还原到虚拟三维空间中的过程,使虚拟角色的动作和表情能像真人一般自然逼真。

VR 中应用的动作捕捉系统根据技术原理分为惯性动捕和光学动捕两大类。光学动作捕捉系统是通过光学相机捕捉物体的连续运动图像,通过图像处理识别物体运动姿态;惯性动作捕捉系统 是通过惯性传感器捕捉运动物体的运动信息,通过航姿参考 系AHRS(attitude and heading reference system)解算获得运动物体姿态信息。

1 光学动作捕捉与惯性动作捕捉的结合

光学动作捕捉与惯性动作捕捉两种动作方案都存在一些缺点:光学动作方案容易因为遮挡导致丢失关键信息,而惯性传感器会出现数据漂移而带来误差。针对上述两种方案的问题,本研究提出采用惯性动作捕捉与无标记光学视觉动作捕捉技术相结合对目标人物进行动作捕捉(以下简称“光惯混合动捕”),在数据算法处理上把两种动作捕捉数据进行相互融合补充,结合视觉信息中空间位置的准确性以及惯性传感器的灵敏度高、动态性能好的特点,获取更为精确的动作信息。

2 整体思路

如图1所示,光惯混合动捕主要由惯性动捕套件、深度摄像头、无线数据收发单元以及计算单元组成。

图 1 光惯动捕系统组件

惯性动捕套件(图1中①)由多个惯性传感器模组组成,每一个模组带有独立的供电模块、无线传输模块,可以维持一段时间内的数据获取及数据传输,利用惯性传感器的高采样率,可以得到实时的人体姿态数据。深度摄像头(图1中②)可以选用双目摄像头或是结构光深度摄像头,表演者无需事先安装标记点,仅从深度摄像头获取的图像数据中检测到表演者,通过人体姿态估计算法得到表演者的关节点三维坐标,进而得到整个人体模型。无线数据收发单元(图1中③)用于接收所有惯性传感器的数据以及深度摄像头的图像数据,并转发给中央主机,该设备保证了数据传输的实时性。计算单元(图1中④)用来处理惯性动捕数据以及深度摄像头的图像数据,通过对两者数据的融合,得到更为准确的动作姿态数据。

整个过程中最为关键的步骤是两种数据的融合,当前采用经典的卡尔曼滤波算法对两者数据融合。相较于独立的数据来源,融合后的数据一定程度消除了数据中的误差,使数据更加准确和更有用。

如图2所示光惯融合数据处理流程,惯性动捕数据需要对套件中N个传感器数据组合为一帧(当前使用了17个传感器数据),并对N个传感器数据根据校准数据进行修正,修正后的数据记做Q1,用以表示人体模型的骨骼姿态旋转。

采用视觉人体姿态估计算法检测出深度图像数据中的表演者,并估计出表演者的关节点是三维坐标以及坐标的置信度值,将置信度高的关节点坐标根据人体骨骼的相互连接关系,计算出骨骼的姿态旋转值,记做Q2。

图2 分级光学与惯性数据融合处理流程

由于惯性动捕数据的更新速度比视觉动捕数据快,因此将惯性动捕数据看作为卡尔曼滤波器中的预测数据,而视觉动捕数据看作为观测数据。

卡尔曼滤波器的操作包括两个阶段:预测与更新。预测阶段,滤波器使用上一状态的预测值(即惯性动捕数据Q1),作出对当前状态的预测;更新阶段,滤波器利用当前状态的观测值(即视觉动捕数据Q2)优化在预测阶段获得的预测值,获得更精确的估计值,即最终的姿态数据Q。由于视觉动捕数据的更新速度较慢的原因,当视觉动捕数据未更新时,将采用上一帧的视觉动捕数据。

3 惯性动捕的姿态解算

惯性动作捕捉是使用多个惯性传感器准确地反映出人体的运动姿态。在姿态解算过程中涉及到的坐标系分别有:载体坐标系、导航坐标系、骨骼坐标系、世界坐标系。载体坐标系是指惯性传感器物体本身的坐标系,由传感器模块中IMU(inertial measurement unit)摆放的方式决定;导航坐标系是指IMU 在融合了陀螺仪、加速度计、磁力计之后的原始坐标系,当前使用的IMU 采用的是“东北天”坐标系作为导航坐标系;骨骼坐标系是指单个骨骼的坐标系,每个肢体均有自己的骨骼坐标系,该坐标系在创建骨骼的时候决定;世界坐标系是指一个虚拟的坐标系,表演者在行走时参考的坐标系(见图3)。

惯性动捕姿态解算的目的是,利用惯性传感器的姿态来获得骨骼的局部坐标系相对于世界坐标系的姿态变化。简而言之,就是把载体坐标系转换为世界坐标系。

图3 世界坐标系与骨骼姿态坐标系

在进行姿态解算前需要进行校准的工作,目的是确定导航坐标系与世界坐标系之间的转换关系。校准的过程是表演者穿戴好惯性动捕套件,并作出规定的动作,例如Z-Pose 或I-Pose(如图4),软件将会记录此时的传感器数据。

图4 Z-Pose(左)与I-Pose(右)

4 视觉动捕的姿态估计

本次采用的 人体姿态估计算法采用自顶而下的 设计方式,即先检测出多个人,再对每一个人进行姿势估计。

首先采用ACNet(attention complementary Net)对深度图像数据进行语义分割,其特点是采用集成了注意力机制的三平行分支架构对彩色图像和深度图像分别采样,并同时进行融合。两个独立分支根据每一层特征所包含的信息量设计多个注意力辅助模块来平衡特征的分布,使网络更加关注图像的有效区域,第三个独立分支用于融合彩色图像特征和深度信息特征,最后经过多次上采样得到分割结果。三分支架构和注意力辅助模块较好地平衡了深度图像数据中彩色图像特征和深度图像特征,可以得到一个较好的人物分割对象,为后续的关节点的检测提供一个好的依据。

在检测得到行人之后,通过CPM(convolutional pose machine)进行关键点的检测。CPM 使用多阶段顺序化的卷积架构来表达空间信息和纹理信息,在每一个阶段下,输出不同尺度的特征图并计算各个关节点的响应图,对于每个关节点累加所有尺度的响应图得到总响应图,在每个关节点的总响应图上找出响应最大的点,该点便是关节点位置坐标及置信度。图5展示的则是在深度图像中,检测并估计出的人体姿态模型。

图5 利用深度摄像头构建的地图以及识别到的表演者模型

该算法还在手部姿态估计上得到了应用,并部署在手机等移动端上(如图6)。

图6 人体姿态计算法对移动端的手部姿态估计

5 卡尔曼滤波进行数据融合

卡尔曼滤波器由一系列递归数学公式描述,它提供了一种高效可计算的方法来估计过程的状态,并使估计均方误差最小。卡尔曼滤波器应用广泛且功能强大:它可以估计信号的过去和当前状态,甚至能估计将来的状态,即使并不知道模型的确切性质。

在卡尔曼滤波预测步骤中,卡尔曼滤波算法会根据前期已采集数据计算出一个目前状态的估计值,此估算值存在一定的不确定性;在更新步骤中,根据新采集数据结果(包括一定程度的随机噪声),使用加权平均来更新估计值,并赋予确定性更高的权重,使得更新的估计值更稳定并与实际情况更接近。卡尔曼滤波算法可以在实时控制系统中执行,仅使用当前输入测量值和先前计算的状态及其不确定性矩阵即可,不需要其他以往的信息。

由于惯性动捕数据的更新速度相较于视觉动捕数据的更新速度更快,因此假定惯性动捕数据为卡尔曼滤波器中的预测数据,视觉动捕数据作为卡尔曼滤波器中的观测数据。每次在进行数据处理时,都会执行卡尔曼滤波算法的两个步骤,当视觉动捕数据未及时更新时,则对上一次的数据进行更新。

需要注意的是,在卡尔曼滤波器中需要给定预测数据(惯性动捕数据)以及观测数据(视觉动捕数据)的噪声协方差矩阵,因此,在前期分别对两种动捕方法独立运行一段时间,表演者做单一动作或是规定的动作序列后,通过这段时间的数据与预期数据进行对比计算,得到两种数据的噪声协方差矩阵。

如图7,是根据对惯性动捕和视觉动捕数据进行降维仿真实验的结果,黑色曲线为惯性动捕的数据,绿色曲线为视觉动捕数据,黄色曲线为经过卡尔曼滤波得到的实时数据。惯性动捕数据的更新时间约为视觉动捕数据更新时间的1/5,表演者的左臂做抬起和放下的动作,在骨骼坐标系中的X轴上,数据理论上应表现为与正弦函数相近,实际测量的结果如图,而在经过数据融合后可以看到数据随着时间的推移,通过不断的迭代趋于平滑,并与满足理论数据基本相符。

图7 惯性动捕数据与视觉动捕数据仿真

6 结语与展望

在实际操作中,将光学动作捕捉得到的数据与惯性动作捕捉得到的数据通过卡尔曼滤波器进行融合,使最终的数据更加稳定且准确,在一定程度消除掉两种传感器的误差数据并形成优势互补。

光学动作捕捉中,对比普通二维摄像头,深度摄像头在解决遮挡问题上虽然有很大的提升,但如果遮挡比较严重的时候依然会有较大的影响;同时,由于采用了深度学习的方案,对于硬件资源要求较高。

根据目前各大增强现实(AR)眼镜设备发展情况看,AR 移动环境下的实时人体运动姿态捕捉与识别将是未来AR 交互的重要发展方向。在未来的工作中,希望可以对光学动作捕捉下的姿态估计算法作进一步提升,或者是随着硬件资源的不断升级,将计算单元改为移动设备,并与光学传感器做成一个设备,结合SLAM(simultaneous localization and mapping, 同步定位与建图)算法,在表演者运动的同时不断移动设备,寻找更优的拍摄角度,这样既可解决遮挡问题,同时也能增加运动的空间范围。

猜你喜欢
卡尔曼滤波表演者惯性
你真的了解惯性吗
冲破『惯性』 看惯性
基于递推更新卡尔曼滤波的磁偶极子目标跟踪
无处不在的惯性
妙猜两数
普遍存在的惯性
基于模糊卡尔曼滤波算法的动力电池SOC估计
基于扩展卡尔曼滤波的PMSM无位置传感器控制
基于自适应卡尔曼滤波的新船舶试航系统
2012年龙年网络春晚节目单