APP下载

基于多特征融合的虚拟数字人物动作捕捉技术

2024-03-23吴建美

关键词:姿态人体动作

吴建美

(福州软件职业技术学院 游戏产业学院,福建 福州 350005)

随着虚拟现实技术的飞速发展,虚拟数字人物的运动捕捉逐渐成为近年来的研究热点。目前,在三维空间中捕捉虚拟数字角色的动作被广泛应用于医学、游戏、体育和电影等领域。在传统的方法中,主要采用三维动态流体技术进行运动人物动作的捕捉,但存在捕捉数据精度低的缺陷。因此,越来越多的智能方法被融入虚拟数字人物的运动捕捉中。

田青等[1]采用改进Slow-Only网络通过实时跟踪人物动作与姿态变化,结合自适应角点检测方法进行人物动态特性分析,进而实现动作捕捉。虽然该方法已取得了较为满意的动作捕捉效果,但捕捉速度慢且运算量较大;赵博等[2]采用机器视觉图像对采集的动作图像进行边缘检测,结合不规则模型实现机器视觉分块模板匹配处理,完成动作捕捉优化。但该方法的自适应捕捉能力较差,面向包含复杂背景的数据集则具有较大的局限性。

针对以上分析,本文依托于多特征融合算法,对虚拟数字人物动作捕捉方法展开研究,以弥补以上方法存在的不足,同时进一步提高动作捕捉性能。

1 虚拟数字人物动作捕捉技术设计

1.1 虚拟数字人物动作姿态解算

在虚拟数字角色的运动捕捉之前,需要先检测和确定人物的姿态变化,并描述运动姿势。由于通过运动检测获得的人体运动图像是高维信号,因此在该高维空间中直接进行运动捕捉并不容易[3]。所以,本文使用前景图像的最小边界矩形将高维图像信号转换为人体姿态的低维信号,并使用统一的数据格式来描述载体的姿态信息。

定义人物动作的变化矩形框宽为W,高为H,通过构造姿态评价函数来确定人物动作前景图像的面积为:

(1)

式(1)中,F0表示人物的旋转角度;f(t)表示姿态评价函数。

在进行动作信号获取时,由于人体从中间状态转换到稳定状态的工程并不是真实的信号值,因此定义:

(2)

式(2)中,n0表示采样点个数;i表示采样通道编号;f0(t)表示换阶函数。

将人体姿态帧间的变化率作为人物两个动作之间切换的判定指标[4],计算公式为:

(3)

式(3)中,K0表示尺度因子;T0表示上一个动作的起始时间;k(t)表示偏差函数。

由于人体各部分肢体相对于地理坐标系之间不会发生位置变化[5],因此则有:

(4)

式(4)中,qi表示人体肢体四元数,可反映姿态相对于基准坐标系的变化情况;s0表示位移函数;p0表示位移函数对应权重。

通过将人体躯干节点与坐标系节点的粗略配准,促使人物动作节点的大致重合[6],之后构造最小化函数提升姿态原始数据的准确度为:

(5)

式(5)中,R0表示转置矩阵;H0表示随机矢量;N0表示数据点个数;Pj表示数据点中距离目标数据点最近的点。

引入尺度空间向量,结合近似矩阵检测人体姿态的特征点[7],计算公式为:

(6)

式(6)中,Lxx、Lyy分别表示人体在水平方向和竖直方向上的欧拉角;x表示人体水平运动距离;σ表示动作与水平坐标系的夹角。

计算人物从高维空间转换到低维空间的映射系数为:

A0=ΔHs×D0×L0

(7)

式(7)中,A0表示映射系数;D0表示内部参数;L0表示外部参数。

由此可得到人体动作姿态的目标空间点的表达式为:

(8)

式(8)中,g(t)表示线性函数;v(x)表示粗糙度函数。

以躯干为基准坐标系进行人体动作姿态解算为:

B0=Pb×E1×q-1

(9)

式(9)中,B0表示人物动作相对于躯干的四元数姿态表示;E1表示姿态采样预备点;q-1表示动作分割终止点。

根据虚拟人物在前景矩形框中的运动范围,计算动作姿态变化率,并通过配准人体躯干节点与基准坐标系节点,检测动作姿态特征点,由此完成对人物动作姿态的解算,为后续人物动作跟踪奠定基础。

1.2 人物动作跟踪

根据人物动作和姿势的计算结果,分析人体结构,以确保基于正确的姿势信息进行动作识别[8]。由于人体中的许多骨骼点是相互连接的,而不是独立移动的,因此只需要提取一些关键的骨骼点就可以获得包含运动姿势的信息[9]。同时,为了降低人体骨骼的复杂性,模拟人体动作的真实情况,本文使用10个骨骼点建立人体的层次数据库模型,具体如图1所示。

图1 人体重点骨骼结构

计算人物特征动作与基准动作的匹配适应值为:

mt=a0K1+B0Ct

(10)

式(10)中,a0表示目标图像特征量;K1表示动作数据节点;Ct表示相似度阈值;mt表示相似度匹配函数。

对动作信号进行重构计算[10]公式为:

(11)

式(11)中,xR表示信号离散点的幅值;j(t)表示转换函数。

当信号能量较大时,eR的数值也较大[11],通过下式对其进行归一化处理得:

(12)

式(12)中,ms表示信号频带个数;Ea表示高频次能量;Eb表示低频次能量。

在全局形状模型中,结合边缘轮廓特征分解方法[12],得到人体模型与动作姿态的分层匹配模型为:

(13)

式(13)中,u(x,y)表示动作姿态定位的关键点;j(x,y)表示比较特征点;η(x,y)表示仿射不变矩阵。

对原始目标图像进行层次分解,得到检测系数为:

(14)

式(14)中,V(r/2)表示调整分解函数;r表示分解层数。

由此得到动作图像的边缘轮廓分量为:

(15)

式(15)中,H0(r)表示动作相关性变量;α0表示动作纹理特征匹配值。

随机初始化动作子空间中的姿态预测点元素,根据映射变换关系预测某个特定动作在低维空间中的投影向量为:

(16)

式(16)中,Yi表示系数矩阵;Ni表示单位矩阵;β0表示变换衰减常数。

对所有动作像素点进行预测并计算预测误差,求和后得到所有点的总体预测误差[13],计算公式为:

U0=χtMk

(17)

式(17)中,χt表示拟合函数。

在人物动态变化下,在投影不变区域内,根据动作特征进行动态图像的分解,以此得到人物动态动作跟踪识别的动态特征函数为:

I(t)=U0×ω1×2φ0

(18)

式(18)中,ω1表示动作训练集的样本块;φ0表示动作衔接动态特征;I(t)表示动作跟踪函数。

基于人物动作姿态解算,对人体骨骼结构进行分析,构建人体动作模型,结合动作向量量化解析函数,得到动作边缘轮廓分量,并通过引入运算误差,计算人物动态动作跟踪函数,以此实现人物动作跟踪,便于后续人物动作捕捉的实现。

1.3 基于多特征融合的人物动作捕捉

本文采用多特征融合算法将所有识别出的特征数据融合为一组数据,并将所有特征数据放置在同一空间坐标系中,以获得最终的动作特征[14]。引入多核学习算法构建动作分类器,为最终运动捕捉的实现提供数据基础。基于多特征融合的人物动作捕捉实现流程如图2所示。

图2 基于多特征融合的人物动作捕捉实现流程

通过梯度下降方法将动作特征目标函数进行最小化处理。由此得到多核学习的最佳参数为:

(19)

式(19)中,I(t)表示动作跟踪函数;βj表示权值参数。

将上述动作特征进行核函数线性组合融合,计算公式为:

(20)

式(20)中,mb=[1,2,…,l…,mb]表示动作特征数量;kf表示融合函数权重。

基于逆矩阵,可将多特征融合的核函数表示为:

Ω=λk(Km×Kj)+bs

(21)

式(21)中,Km表示特征签名向量;Kj表示累加边缘特征;bs表示经验常数。

通过图像增强原理提高人物动作捕捉的分辨能力与自适应性[15],由此得到的动作纹理分布函数为:

(22)

式(22)中,ρj表示梯度像素分布集;ε表示振荡因子。

则可利用下式提取人物动作捕捉特征量为:

ξ=f(gi)×wk/Cj

(23)

式(23)中,wk表示动作姿态帧序列估计值[16-17];Cj表示动作轨迹模板匹配系数。

将待捕捉的人物动态图像分割为M×N个子块,分别计算每个子块的动作捕捉特征量,并将计算结果与动作轨迹模板进行匹配,实现虚拟数字人物动作的实时捕捉。至此,完成基于多特征融合的虚拟数字人物动作捕捉方法的设计。

2 实验论证分析

为验证本文提出的方法在虚拟数字人物动作捕捉实际应用中的综合有效性,以公开动作数据集为测试对象,对本文方法展开性能测试,并根据实验结果分析本文方法的应用效果。

2.1 实验准备

实验选取KTH虚拟数字人物动作作为数据集进行测试。该数据包含大约10万张虚拟数字人物动作,且图像背景复杂程度不一,光照强度也不尽相同。其中部分数据集如图3所示。

图3 测试对象

本文中的实验数据是一个复杂环境中的监控视频,其中人物行为、服装和姿态都具有显著差异,图像每帧尺寸为120*220。首先,根据运动的人物动态,利用前景图像的最小边界矩形将高维图像信号降为二维,为了保证检测精度,匹配前景图像的最小像素为500;然后,基于姿势比率来确定人体姿势,并且通过组合姿势变化信息与姿势比率的帧间变化率以及位置变化特性来跟踪人物动作;最后,对两帧进行均值滤波,去除“奇异噪声点”。

实验中使用手臂关节角度描述人物具体动作姿态的重要特征,并将人体运动模型简化为一个七自由度的运动模型,其关节自由度如表1所示。

表1 人体关节自由度

其中,采用专业的运动捕捉设备PERCEPTION NEURON STUDIO对数据集进行动作捕捉,并将此数据作为基准数据。该设备可以导出人体各部位相对于基准坐标系的姿态数据,这与本文设计的运动捕捉数据的逻辑一致。因此,只需将其转换为直观的欧拉角数据,即可进行合理的数据比较。

2.2 实验说明

以图3(a)为例,得到的人物动态姿态解算结果如图4所示。

图4 人物动态状态解算

以人物动态姿态解算结果与人体特征点检测结果为数据基础,利用边缘轮廓特征分解方法进行人物动作跟踪识别,并采用文中所述方法构建人体运动模型,最后通过多特征融合算法实现人物动作捕捉。

2.3 动作捕捉结果分析

以人物大臂运动作为测试数据,以虚拟数字人物动作捕捉系统获取的数据为参考值,利用本文设计的方法对实验数据集进行测试,将得到的人物动作捕捉数据与动捕系统数据相比较,以判断本文方法的动作捕捉效果,对比结果如图5所示。

图5 动作捕捉结果

由图5可知,利用本文方法对虚拟数字人物进行动作捕捉,得到的动捕欧拉角数据与专业动捕系统数据趋势基本一致。相对于动捕系统数据,本文测得的动捕欧拉角数据的平均误差在1.3°~2.2°之间,动捕的相对误差较小。由此可以说明,本文设计的方法能够较为准确地捕捉虚拟数字人物动作,动捕精度较高。

2.4 动捕误差对比实验分析

为进一步验证本文方法在人体动作捕捉方面的精度,本实验引入改进Slow-Only网络(方法1)[1]、机器视觉图像(方法2)[2]作为本文方法的对比方法,并以平均绝对百分比误差表征捕捉数据的准确性,测量误差越小,说明方法的捕捉结果越准确,动捕精度越高,对比结果如表2所示。

表2 动作捕捉误差值结果

由表2中的实验结果可以看出,本文方法相对于对比方法,动作捕捉准确度分别提高了约7%与5%,对于人体四肢运动的不同类型,人物动作捕捉的平均百分比误差均在6%以下。方法1与方法2采用的是运动力学链式模型,因而父节点的捕捉误差会累积叠加到子节点上,故捕捉误差较大。通过实验数据对比结果可以说明,本文方法对于虚拟数字人物动作捕捉具有较高的捕捉精度。

结语

针对当前现有方法对于虚拟数字人物动作捕捉存在捕捉精度低的问题,本文基于多特征融合算法,通过解算人物动态姿态与跟踪识别人物动作特征,并通过模板匹配,进而实现人物动作捕捉。并通过对比实验验证了本文方法的可行性。在未来研究中,将结合图像增强技术提高所提方法的自适应能力,以进一步优化算法。

猜你喜欢

姿态人体动作
人体“修补匠”
人体冷知识(一)
排便顺畅,人体无毒一身轻
攀爬的姿态
全新一代宋的新姿态
跑与走的姿态
奇妙的人体止咳点
动作描写要具体
画动作
非同一般的吃饭动作