《虚拟人运动控制技术研究》由会员分享,可在线阅读,更多相关《虚拟人运动控制技术研究(3页珍藏版)》请在金锄头文库上搜索。
1、1虚拟人运动控制技术研究摘要:论述虚拟人运动模型的建立和虚拟人运动控制技术。 关键词:虚拟人 运动控制 关键帧 运动捕捉 虚拟人是人在计算机生成空间中几何特性与行为特性的逼真表示。虚拟人的运动生成及控制主要研究虚拟人在计算机生成空间中的动态特性,它应符合人体运动的基本规律,并能提供简单直观的控制方式。 1 虚拟人运动模型的建立 人体有二百多个关节,如果对人体进行关节化的建模生成三维人体模型,并提供所有关节的位置量和旋转角,产生模型的驱动数据进行仿真是一项艰巨的任务。为了有效的应用动力学方法进行虚拟人仿真,几何建模时应考虑三维人体的运动特性和动力学特性。将人体各部位体抽象为简单的刚性几何实体,即
2、它们具有质量和转动惯量,这样可以避免人体各部位任意表面形状的复杂计算。描述人体的模型主要涉及人体的头、躯干、四肢等部位。人体模型各肢体之间存在运动连带关系,将关节看成点,将关节之间的骨骼看成是链,就可以按运动关系将各肢体连接起来。三维虚拟人体模型是由相应的部位体和关节组合而成的链状层次结构 ,其运动是由整体的平移、旋转以及各关节的旋转产生的。用树结构来表达人体模型的关节层次化结构如图 1: 2 虚拟人运动控制 2.1 基于关键桢技术的运动控制 2在应用关键帧技术产生虚拟人的运动时,应注意所插值的参数,否则会产生不恰当的运动。由于关键帧插值不考虑人体的物理属性以及参数之间的相互关系,因此插值得到
3、的运动不一定是合理的,通常需要动画师对运动进行仔细的调整。尽管如此,由于关键帧技术的使用简便,因此仍然是最常用的动画生成方法。 从原理上说关键帧插值问题可归结为参数插值问题,传统的插值方法都可应用到关键帧方法中。但关键帧插值又与纯数学的插值不同,它有其特殊性。一个特定的运动从空间轨迹来看可能是正确的,但从运动学或动画设计角度来看可能是错误的或者不合适的。用户必须能够控制运动的运动特性,即通过调整插值函数来控制速度的变动。为了很好地解决插值过程中的时间控制问题,用双插值的方法来控制运动参数。其中之一为位置样条,它是位置对关键帧的函数,另一条为运动样条,它是关键帧对时间的函数。 关键帧的位置插值可
4、以由样条驱动插值和速度曲线插值实现。样条驱动动画是指先设计好物体的运动轨迹,然后指定物体沿该轨迹运动。通常,物体的运动轨迹为三次样条曲线,并且由用户交互给出。在利用速度曲线实现关键帧插值中,物体的运动可由速度曲线来控制。对于给定的时间,先由速度曲线得到弧长,然后由弧长计算出轨迹曲线上的点,最终实现位置插值。 关键帧插值系统中要解决的另一个问题是物体朝向的插值问题。物体的朝向一般可由 Euler 角来表示,因此朝向的插值问题可简单地转化为 3 个 Euler 角的插值问题。但 Euler 角又有它的局限性,因为旋转矩阵是不可交换的。Euler 角的旋转一定要按某个特定的次序进行,等量的 Eule
5、r 角变化不一定引起等量的旋转变化导致了旋转的不均匀性。Shoemake 为了解决因采用 Euler 角表示引起的麻烦,最早把四元数引入了动画中并提出了用单位四元数空间上的 Bezier 样条来插值四元数。 32 运动捕捉技术 运动捕捉方法是指通过传感设备记录人体在三维空间中的运动轨迹,并将其转化为抽象运动数据,然后根据这些数据驱动虚拟人运动的方法。为了达到虚拟人运动与控制的目的,通常还需要对运动捕捉数据进行编辑与合成。同时,运动编辑与合成还可以提高运动捕捉数据的可重用性、建立超乎实际的运动、突出次要运动以及生成新的复杂运动等。运动捕捉方法最大的优点在于虚拟人的运动基本上是真实人运动的复制品,
6、因而效果非常逼真。但同时这种方法也存在运动捕捉设备昂贵、附加在表演人员身上的传感设备限制了人体的自由运动等缺陷。 从技术的角度来说,运动捕捉的实质就是要测量、跟踪、记录物体在三维空间中的运动轨迹。典型的运动捕捉设备一般由以下几个部分组成: (1)传感器:被固定在运动物体特定的部位,向系统提供运动的位置信息。 (2)信号捕捉设备:负责捕捉和识别传感器信号。 (3)数据传输设备:负责将运动数据从信号捕捉设备快速准确地传送到计算机系统。 (4)处理设备:负责处理系统捕捉到的原始信号,计算传感器的运动轨迹,对数据进行修正、处理,并与三维角色模型相结合。 基于运动捕捉的虚拟人控制大致可以分为以下几类:
7、(1)运动捕捉数据直接驱动 运动捕捉数据直接驱动就是将运动捕捉数据的空间坐标或者关节角赋给虚拟人模型,让模型根据原始数据运动。但是由于运动捕捉错误数据的存在,再加上表演者和模型的骨干匹配问题等,这种方法往往会产生很大的误差,致使人体运动变4形。 (2)与关键桢综合 利用纹理和综合的方法,让动画师先设置少数的关键帧,根据运动捕捉数据来帮助制作动画。这样做的原因是由于在人和动物的运动中,关节之间有很多关联。这种关联在重复动作中更为明显。 (3)动力学匹配 动力学匹配是用有人性特点的动力仿真和跟踪控制器来跟随运动数据,因为在被捕捉的演员和虚拟人之间有很多的动力学匹配。人的运动数据被转成连接的角度且被
8、用来作为轨迹控制器的期望值。控制器计算转动力矩,是基于系统状态和期望得到的连接角度的误差。得到的转动力矩应用于动力学模型,同时通过运动方程,就可以计算新的系统状态。 用动力学控制虚拟人的运动体现了人体运动的真实性,但运动规律性太强。在基于动力学的模拟中,也要考虑两个问题:正向动力学问题和逆向动力学问题: 正向动力学问题是根据引起运动的力和力矩来计算末端效应器的轨迹。逆动力学问题更有用,用户通过指定末端关节的位置,计算机自动计算出各中间关节的位置,即关节角是自动确定的,可以确定产生系统中规定运动的力和力矩。 3 基于物理的仿真技术 与关键帧技术不同,基于物理的仿真技术是利用动力学、生物力学等物理
9、定律产生运动的。我们通常采用有关节的基于动力学的模型来实现动态仿真,即构建角色的动力学模型,通过仿真计算它们的运动。这就意味着物体的运动受物理规律的支配,以便创作自然逼真的动画。基于物理的仿真技术优越于其它运动控制技术的优点主要表现在:首先,利用基于物理的仿真技术可以生成用关键帧技术无法实现5的完全符合物理特性的理想的运动,基于物理的仿真技术在体育训练方面的应用最为广泛;其次,在与用户的交互方面,基于物理的仿真技术能实现比关键帧或是运动捕获技术更精确的交互。 4 结语 虚拟人的运动控制需要解决的主要问题是:各种方法的组合以及现存运动的参数化。以上方法在运用时都存在利弊,体现在自动生成和手工控制之间。因此,将这几种技术融合使用,充分发挥每种技术的优势,就成为了目前一个很好的解决方法。参考文献 1 吴家铸,党岗,刘华峰,程志全,阳明.视景仿真技术及应用M.西安:西安电子科技大学出版社,2001. 2 徐孟,孙守迁,潘云鹤.虚拟人运动控制技术的研究J.系统仿真学报,2003 年. 3 黄波士,陈福民.人体运动捕捉及运动控制的研究J.计算机工程与应用2005.