论文部分内容阅读
人体运动仿真技术是一种对人体运动进行建模、分析和仿真的前沿技术,在人体运动生物力学分析、逼真人体动画制作、辅助体育训练等领域起着重要的作用。本文以仿真人体复杂空中运动为目标,对人体动力学方程的构建、旋转运动的精确拟合、关键帧时间的优化、人体动力学优化模型的构造等四个关键技术进行了深入的研究,取得如下研究成果。
1)提出一种通用、高效的人体动力学方程
人体动力学方程的构建是人体运动仿真的第一步。现有人体动力学方程直接从机器人领域的多刚体动力学方程移植而来。这种做法没有考虑人体复杂空中运动的特性,导致动力学方程在处理人体复杂空中运动时存在严重的“欧拉角奇异性”问题。针对这个问题,本文提出一种基于欧拉角-单位四元数的牛顿-欧拉动力学方程。该方程根据人体肢体的旋转特性决定采用欧拉角或单位四元数描述肢体的旋转,避免了“欧拉角奇异性”问题。计算复杂度分析表明,对于相同人体模型该方程的计算效率比标准的Featherstone多刚体动力学方程高46%。以上两个优点说明基于欧拉角-单位四元数的牛顿-欧拉动力学方程是一种通用、高效的人体动力学方程。
2)提出一种拟合旋转运动的优化算法
由于本文采用基于欧拉角-单位四元数的牛顿—欧拉动力学方程对人体运动进行动力学计算,因此需要拟合表示肢体旋转运动的单位四元数序列。目前已有的单位四元数序列拟合算法不能满足人体运动仿真的要求。例如,拟合算法对单位四元数序列的分布无限制且拟合的单位四元数曲线需要尽可能逼近单位四元数序列。针对这个问题,本文提出一种基于优化的B样条四元数拟合算法。该算法首先应用B样条四元数曲线得到单位四元数序列的一个初始拟合,然后利用B样条四元数曲线具有的局部修改性优化曲线的控制参数,使单位四元数序列到曲线的距离最小。实验表明该优化算法可计算出逼近程度非常理想的拟合曲线,并且具有较快的收敛速度。
3)提出一种基于物理的关键帧时间优化算法
人们在设计复杂空中运动时需要设定人体的起跳速度、人体姿态的关键帧序列和关键帧时间序列。起跳速度和姿态的关键帧序列形象、直观,容易判断它们的合理性。关键帧时间序列不直观,因此不易判断它的合理性。针对这个问题,本文提出一种基于人体运动的受力平衡性来优化关键帧时间的算法。该算法融合了关键帧技术和优化技术,具有优化模型小、无非线性约束条件的特点。实验表明该算法的计算效率较高,优化结果和真实值之间的差距较小且对关键帧时间序列的初值不敏感,适用于快速设计新的人体空中运动。
4)提出一种鲁棒的人体动力学优化模型
轨迹优化方法是目前人体运动仿真技术的一种主流方法,它通过人体动力学优化模型来优化输入的初始人体运动,使其具有物理逼真的性质。该方法的一个缺点是优化模型的收敛性不好。针对这个问题,本文通过理论分析指出优化模型中的力学平衡约束条件难以被满足是导致优化失败的主要原因,并进一步通过实验指出对力学平衡约束条件进行约束松弛无效的原因是约束松弛的合理上界与人体质量参数、运动类型、初始运动数据等因素密切相关,无法在仿真前预测出。基于以上分析,本文提出一种新的优化模型。该模型首先将现有优化模型中的力学平衡约束条件转化为目标函数,扩大了优化模型的可行域;其次将关键帧时间序列加入优化变量集,降低了优化结果对关键帧时间准确程度的依赖;最后结合基于优化的单位四元数序列拟合算法和欧拉角—单位四元数的牛顿—欧拉动力学方程,有效提高了仿真人体复杂空中运动的能力。实验表明该模型对质量不高的初始人体运动仍能优化出质量较高的运动,具有较强的鲁棒性。