计算机生成角色仿真的目的是使用虚拟角色配合给定的动作来模拟现实世界中的角色运动。人的视觉系统对运动的物体十分敏感,而对物体的运动之间的细微差别也十分敏感。因此改进虚拟角色的动作数据真实感是运动角色仿真中的重要内容。准确的动作数据,包括动作状态数据、动作时间数据以及两者的准确对应。在虚拟运动角色仿真中,骨骼角色是应用最普遍的一种角色,骨骼结构比较复杂而且相连骨骼之间互相影响,最容易出现不真实的配置结果。一般来说,角色的动作状态较易设定,而动作状态对应的时间却很难设定,一个细微的动作差别都会引起视觉上的巨大反差。
最真实的动作是我们所处的现实世界中的动作,真实的动作数据必须要借鉴或者是来自于现实生活,动作获取常作为角色仿真的动作驱动数据来源。角色动作获取是虚拟现实领域的重要内容,在娱乐、电影和游戏等领域有广泛应用。为更好的模拟人物或动物动作,获取更接近于真实的动作数据尤为重要。传统的运动动作数据建立方法有关键帧技术[8]、专业设备运动捕捉[9]、基于物理的仿真[10]三类方法,基于视频的动作获取方法[27]是新近几年发展起来的低成本的动作数据建立方法。
基于关键帧技术[8]的动作数据建立方法是由操作员设定关键帧中的动作状态和动作发生时间,使用插值算法计算关键帧之间的中间动作状态,实现角色的连续运动。这种方法对于单个动作的骨骼状态,一般可以实现准确的配置,但对于各动作状态的发生时间配置,要想获得满意的仿真效果,需要进行仔细配置与调整,耗费很多时间,而且往往会出现活动动作生硬板滞、明显卡通化的问题,影响虚拟角色的真实感。
为降低动作状态发生时间设定难度,一般通过专用设备捕捉动作数据[9],在记录动作源角色动作姿态的同时,自动记录该姿态的动作时间,从而获得良好的视觉连续动作序列,并在娱乐、电影和游戏应用中得到广泛应用。目前的大多数运动动作数据也是使用专业设备捕捉获得的[11]。几乎所有的运动捕捉设备,都需要在被获取对象身上放置光学或磁性标记,并使用三角测量的方法取得标记点的空间位置。2005年Naksuk[26]使用运动捕捉设备捕捉人体运动数据,并通过关节点间的位置关系将运动迁移到机器人上。设备捕捉到的动作数据一般具有很高的准确性,但专用的捕捉设备受使用环境的制约,大多只能在实验室环境下进行捕捉,在很多场景中无法进行捕捉,不能够广泛应用,而且捕捉过程也受被捕捉对象的运动能力制约。
基于物理的仿真[10]通过正运动学或逆运动学,计算角色运动过程中的动作姿态,不受设备限制也不受目标对象的运动能力限制,通过对关节旋转角设置关键帧,得到相关连各个肢体的位置,这种方法一般称为正向运动学方法。对于一个具有多年经验的专家级动画师,能够用正向运动学方法生成非常逼真的运动。但对于一个普通的动画师来说,通过设置各个关节的关键帧来产生逼真的运动是非常困难的。一种实用的解决方法是通过实时输入设备记录真人各关节的空间运动数据。由于生成的运动基本上是真人运动的复制品,因而效果非常逼真,且能生成许多复杂的运动。
为减少专业设备依赖和弥补动作配置繁琐的缺陷,研究者们提出基于视频的动作捕捉方法[30],录制现实世界中的人物或动物运动,然后结合所跟踪目标的形状特征和纹理信息,跟踪角色各标定点的位置,从而得到运动数据。该方法有一定的限制,如数据精度不如设备捕捉好,但拥有获取容易、成本低、动作连贯性好、视觉效果真实的特点。2006年Li[30]系统地介绍和总结了基于视频的人体运动捕捉研究的技术方法。Brett[122]使用标志点定位捕捉人体动作,并创建动作的骨骼模型,然后基于样本状态实现骨骼体插值变形。2003年Yoshimoto[27]使用视频图像提取方法估算特征点的位置,获取人体姿态。Wu[28]基于视频学习方法实现效果十分逼真的鸟类飞行模拟,效果十分逼真。2005年Kehl[29]使用多台摄像机捕获人体标定关节点的运动轨迹,建立人体骨骼模型的运动序列。2006年Wan[31]使用3D Graph-cuts和人体形状模板匹配估算视频中人体姿态。2007年Pei[32]基于ISO-map的非线性降维和K-means聚簇方法,从演讲视频中提取嘴部动作,并通过控制形状向量实现面部变形。Cheung[123]实现了无标识点的视频角色动作迁移。(www.xing528.com)
本章提出一种基于关节点旋转角的动作迁移方法,与以往的动作获取与驱动方法相比,该方法的主要不同之处在于:
(1)将已拥有的动作数据转换为基于关节点旋转角的动作数据,可以很方便地实现两角色的动作状态迁移;
(2)通过旋转角叠加,解决不同拓扑结构的角色之间的动作迁移;
(3)通过2D→3D→2D转换,配准两个二维角色的姿态,使动作迁移可以在两个二维角色之间进行。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。