CN101356549B - 用于生成对动画模型性态进行近似的膨化组件的方法 - Google Patents

用于生成对动画模型性态进行近似的膨化组件的方法 Download PDF

Info

Publication number
CN101356549B
CN101356549B CN2004800129252A CN200480012925A CN101356549B CN 101356549 B CN101356549 B CN 101356549B CN 2004800129252 A CN2004800129252 A CN 2004800129252A CN 200480012925 A CN200480012925 A CN 200480012925A CN 101356549 B CN101356549 B CN 101356549B
Authority
CN
China
Prior art keywords
model
collection
attitude
component
training
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2004800129252A
Other languages
English (en)
Other versions
CN101356549A (zh
Inventor
J·安德森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PI KESA
Original Assignee
PI KESA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PI KESA filed Critical PI KESA
Publication of CN101356549A publication Critical patent/CN101356549A/zh
Application granted granted Critical
Publication of CN101356549B publication Critical patent/CN101356549B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings

Abstract

模型组件可被用于对人物模型进行姿态设置以创建各种真实的和艺术的效果。本发明的一则实施例分析模型组件的性态以确定该模型组件的统计表示,该统计表示非常近似与该模型组件输出。因为该模型组件的统计表示比原始模型组件执行起来更快速,则可用等价的模型组件的统计表示在动画时间中替换用于对人物模型进行姿态设置的模型组件以提高动画性能。通过对使用一组典型的训练姿态处理过的人物模型进行分析可以获得模型组件的统计表示。模型组件的统计表示是由姿态帧位置的加权组合加上由动画变量的非线性组合所控制的姿态误差集而组成的。

Description

用于生成对动画模型性态进行近似的膨化组件的方法
相关申请的交叉引用 
本申请要求一起于2003年5月14日递交的美国临时专利申请序列号60/470,590,题为“膨化装置”(Rig Baking),和序列号60/470,767,题为“去混淆化”(Defrobulation)的优先权,其结合在此用于各个目的的参考。本申请还结合递交于________的美国专利代理证明序号21751-000910US,题为“用于人物关节表示的去混淆角”(Defrobulated Angles for Character JointRepresentation)用于各个目的的参考。 
背景技术
本发明涉及计算机图形学领域,尤其是用于制作计算机生成人物的动画的方法和装置。本发明涉及计算机图形学领域。许多计算机图形图像是通过从一个给定的视点对光线与三维场景的交互进行数学建模而生成的。该处理(被称为呈现)从给定的视点生成场景的二维图像,并类似于对真实世界景色拍摄一张相片。可通过象场景随着时间逐渐改变那样呈现场景图像的序列来生成动画序列。已经做出了很多努力来制作有真实视感的呈现图像和动画。 
人物的计算机生成动画是通过将人物的三维模型处理为在帧序列上的一系列身体位置、或姿态来完成的。有真实视感的人物模型通常是极度复杂的,具有几百万个表面元素以及成百上千个属性。由于将如此复杂的模型动画化的复杂性,动画工具通常依靠骨架结构(armature)和动画变量来定义人物动画。 
骨架结构是表现人物姿态、或身体位置的“条状图”(stick figure)。通过移动骨架结构片段(segment),也即“条状图”中的“条”,骨架结构可以被处理为所期望的姿态。由于骨架结构是由动画制作者摆设的,动画工具修改人物模型以使人物的身体姿态粗略地表现出骨架结构的身体姿态。 
动画变量是另一种定义复杂人物模型的人物动画的方式。动画变量是修改人物模型外观的函数的参数。动画变量和它们相关联的函数被用于将对人物模型的复杂修改抽象为相对简单的控件。动画变量和它们相关联的函数可以处理骨架结构片段,从而间接改变人物模型的外观,或跳过骨架结构直接处理人物模型。 
例如,单个动画变量可定义人物嘴部打开的程度。在这个示例中,动画变量的值可处理多个不同部分的骨架结构和/或直接修改部分人物模型以创建嘴部打开至所期望程度的修改后的人物模型。 
与动画变量相关联的函数(被称为模型组件)可被用于创建各种真实和艺术效果。例如,模型组件可被用于创建人物模型表面下的骨骼层、肌肉层、以及脂肪层,这样人物模型的表面或皮肤能真实地按摆出姿态变形。模型组件也可被用于模拟非刚性特征(诸如毛发和衣物)的运动。除了复制指定物理现象外,模型组件可被用于根据算法或过程(诸如雕刻整形、球变换、以及物理学仿真)来处理人物模型。 
模型组件可以是极度复杂的并且因此其执行是耗时的。为了创建有艺术效果的人物动画,动画制作者通过创建场景的粗略视图并随后重复微调人物动画以创建最终场景的预期表演和表现。执行模型组件所需的时间(例如动画制作者摆设和重复摆设人物模型姿态)阻碍了动画制作者的效率。在最坏的情况下,动画制作者被迫使用简化的“替身”人物模型来创建最初的动画,并随后等待查看使用最终人物模型的结果动画。在这种情况下,动画制作者本质上是盲目地在工作并只能猜想最终结果。反之,用合理的时间(即使可能的话)处理模型组件所需的额外计算机资源实质上增大了创建动画的开销。 
因此需要一种最优化模型组件性能的系统和方法这样可以用合理的时间执行它们而不花费过量的计算机资源。还需要能够最优化任何类型的模型组件,而不考虑它的功能或复杂度。 
发明内容
模型组件可被用于摆放人物模型姿态以创建各种真实的和艺术的效果。本发明一则实施例分析模型组件的行为以确定模型组件的统计表示,该统计表示非常近似于模型组件的输出。因为该模型组件的统计表示比原始模型组件执行 起来更快速,则可用等价的模型组件的统计表示在动画时间中替换用于对人物模型进行姿态设置的模型组件以提高动画性能。通过对使用一组典型的训练姿态处理过的人物模型进行分析可以获得模型组件的统计表示。模型组件的统计表示是由姿态帧位置的加权组合加上由动画变量的非线性组合所控制的姿态误差集而组成的。 
在本发明的一则实施例中,使用模型组件将至少一部分人物模型处理为姿态的方法包括从模型组件创建统计表示(称为膨化组件(baked component))。该方法识别与膨化组件相关的一部分人物模型并根据姿态确定人物模型中点集的几何设定姿态的位置集。该方法也根据膨化组件和姿态预测与该人物模型的点集相关联的姿态误差集。姿态误差集中的每一个指定了点离开几何设定姿态的位置的位移。随后通过将姿态误差集应用在点集的几何设定姿态的位置集上来形成已处理的人物模型。 
在另一则实施例中,通过至少一个影响一部分人物模型的参考帧来识别与姿态相关联的一部分人物模型。此外,一则实施例通过动画变量集至少部分地定义了姿态。在还有一则实施例中,动画变量(诸如关节旋转角)被表示为去混淆形式。此外,姿态误差集可指定随着时间的经过点离开几何设定姿态的位置的单个位移或一系列位移。 
在另一则实施例中,通过识别与模型组件相关联的至少一部分人物模型从模型组件创建膨化组件。该实施例随后通过训练姿态集中的每一个来处理人物模型。训练姿态集由输入集定义并表示人物模型运动的范围。从训练姿态集,该实施例确定用于人物模型至少一个点的训练姿态误差集并随后分析该训练姿态误差集以确定输入集与训练姿态误差集之间的关系。在还有一则实施例中,分析姿态误差集包括对输入集执行训练姿态误差集的回归分析。 
在另一则创建膨化组件的实施例中,输入集包括动画变量集。动画变量集的一部分是表示为去混淆形式关节旋转角。此外,训练姿态误差集中的每一个是人物模型点的位置中从几何设定姿态的位置到至少一个由人物模型所定义的位置之间的至少一个差值。姿态误差集中的每一个可指定人物模型中的点从几何设定姿态的位置到由模型组件随着时间所指定的位置集之间的单个位移 或随着时间一系列位置差值。 
附图说明
将结合附图描述本发明,其中: 
图1示出适合实现本发明一则实施例的计算机系统的框图; 
图2示出确定关节连接人物模型上的点的姿态位置的模型组件的现有使用; 
图3示出根据本发明的一则实施例确定关节连接人物模型上的点的姿态设定位置的膨化组件的使用; 
图4示出用于根据本发明一则实施例创建姿态设定人物模型的方法和两个阶段; 
图5示出用于根据本发明一则实施例使用与关节连接人物模型相关联的模型组件创建膨化组件的方法; 
图6A-6C示出用于根据本发明一则实施例使用与示例性关节连接人物模型相关联的模型组件创建膨化组件的方法的示例性应用; 
图7示出用于根据本发明一则实施例从膨化组件确定关节连接人物模型上的点的姿态位置的方法;以及 
图8A-8C示出用于根据本发明一则实施例从膨化组件确定关节连接人物模型上的点的姿态位置的方法的示例性应用。 
具体实施方式
图1示出适合实现本发明一则实施例的计算机系统的框图。图1示出能够实现本发明一则实施例的示例性计算机系统100。计算机系统100通常包括监视器110、计算机120、键盘130、用户输入设备140、以及网络接口150。用户输入设备140包括计算机鼠标、轨迹球、轨迹垫、绘图写字板、触摸屏、和/或其它允许用户创建或选择出现在监视器110上的图形、对象、图标和/或文本的有线或无线输入设备。网络接口150的实施例通常使用电子通信网络,诸如局域网、广域网(例如互联网)、和/或虚拟网络(例如 虚拟个人网络VPN)提供有线或无线通信。 
计算机120通常包括组件诸如一个或多个通用处理器160、以及存储器储存设备诸如随机访问存储器(RAM)170、磁盘驱动器180、以及连接上述组件的系统总线180。RAM 170和磁盘驱动器180是实体介质的示例,用于存储数据、音频/视频文件、计算机程序、小应用程序解释器或编译器、虚拟机、文中所述发明的实施例包括几何场景数据、对象数据文件、阴影描述符、呈现引擎、输出图像文件、纹理映射、以及位移映射。计算机120的其它实施例可包括用于处理和输出音频和图形数据的专用音频和视频子系统。其它类型的实体介质包括软盘、可移动硬盘、诸如DVD-ROM、CD-ROM和条码的光学存储介质、诸如闪速存储器的非易失性存储设备、只读存储器(ROM)、电池支持易失性存储器、以及网络化存储设备。 
图2示出确定关节连接人物模型200上的示例点的姿态位置的模型组件的现有使用。图2示出人物模型200的部分肩膀和手臂区域。在一则实施例中,人物模型200是对象的三维计算机模型,虽然为了清晰的原因以二维示出。此外,虽然人物模型200示为人类特征,人物模型200可采取任何类型的对象(包括植物、动物、以及带有真实和/或人形属性的无生命对象)的外形。 
人物模型200可通过任何用于创建三维计算机模型的方法(包括在三维建模软件中手动构建、程序化对象创建、以及对物理对象的三维扫描)来创建。人物模型200可包括多边形、三维像素、高阶曲面(诸如贝塞尔(Bezier)曲面或非均匀有理B样条(NURBS))、构造化固体几何、和/或其它用于表现三维对象的技术的集合。此外,人物模型200可包括定义对象外部外观的属性,包括颜色、纹理、物质属性、透明度、反射率、光亮以及阴影属性、位移映射、以及碰撞映射。 
人物模型200通过骨架结构205而动画化。骨架结构205包括一个或多个骨架结构片段。在图2中,骨架结构205被用于表现人物模型200的上臂姿态。动画制作者处理骨架结构205片段的位置和定向以为人物模型200定义一个姿态。 
骨架结构片段可在大小、位置、或定向上有限制或可被动画制作者随意处理。骨架结构片段的数目可根据角色的复杂度而改变,并且通常角色可含有带有数百个或数千个片段的骨架结构。在一些情况中,骨架结构片段的数目和位置类似于人物的“骨架”;然而,骨架结构片段也可定义微妙的面部变化以及与骨头或其它解剖学特征不必相关的其它人物细节。此外,虽然图2的骨架结构205中的骨架结构片段由线性片段集组成,在本发明的可选实施例中,骨架结构片段可由表面集和/或体积集组成。 
通过创建帧(或静止图像)序列来动画化人物模型205,其中人物模型200从一个姿态逐渐移动到另一个姿态。人物模型200也可在帧与帧之间被整体转移、旋转、缩放、或进行其它处理。动画制作者可为序列中的每个帧手动创建人物模型200的姿态,或为两个或多个关键帧创建姿态,在此后由动画软件进行内插来为每个帧创建姿态。姿态也可通过使用函数、过程、或算法而自动创建。 
不论是所有或部分的姿态由动画制作者手动创建或使用函数、过程、或算法自动创建,人物模型200的姿态可通过动画变量组来定义。一种类型的动画变量指定骨架结构片段围绕一个原点(称为关节)的旋转角。在图2中,骨架结构205的上臂片段围绕关节210的旋转由动画变量215、217、219和221所指定。在这个示例中,动画变量215、217、219和221中的每一个指定关于一个坐标轴的旋转。 
至少部分通过模型组件230确定人物模型200的点的位置。在一则实施例中,动画变量225(其中可包括与关节210有关的动画变量215、217、219和221)被输入至模型组件230中。模型组件230随后从所输入的动画变量中确定人物模型200的一个或多个点的位置。模型组件230可使用任何类型的数据处理函数、过程、或算法来确定人物模型200的点的位置,包括但不限于对皮肤、骨头、脂肪和肌肉层的仿真;动态衣物仿真;雕刻整形;球变换;以及物理仿真。模型组件可被用于为人物模型表面的点、人物模型200内部的点、和/或人物模型200之外的点确定人物模型200的几何配置或其它属性。 
在图2中,模型组件230确定人物模型200中点240和250的位置。模型组件230的输出235指定点240的位置。类似地,模型组件230的输出245指定点250的位置。点240和250的位置可由模型组件230按照离开基位或静止位上的人物模型200的位移来指定。 
或者,人物模型的位置可根据附近的骨架结构片段而旋转以形成几何设定姿态的人物模型260。几何设定姿态人物模型使用一个或多个几何操作来从静止或未摆出姿态的定向转换为姿态定向。几何操作包括位移、缩放、旋转、和其它类似的对人物模型各部分的处理,以及这些操作的加权或未加权组合。几何操作可也包括将人物模型上的点从人物模型的表面突起。模型组件230的输出235和245依次指定点240和250离开它们在几何设定人物模型260上位置的进一步位移。如下所述,无论模型组件如何指定人物模型上点的位置,与几何设定人物模型相关的膨化组件都可被用于近似该模型组件。 
多种类型模型组件的复杂度使人物模型的姿态设置变得耗时和耗费计算。如上所述,这阻碍了动画制作者微调角色动画以制作所需的表演和表现的能力。本发明的一则实施例通过创建用于对人物模型进行姿态设置的模型组件的统计表示来最优化模型组件的性能。模型组件的统计表示(称为膨化组件)非常近似于模型组件的性态并且执行时间大量减少。此外,膨化组件可被用于近似任何类型的模型组件的性态。这样,可以用等价的膨化组件来替代被用于对人物模型进行姿态设置的模型组件,以此提高执行性能并减少对人物模型进行姿态设置所需的计算资源。 
图3示出根据本发明一则实施例确定关节连接人物模型上一个点的姿态位置的膨化组件的使用。人物模型300通过骨架结构305来动画化,在图3中表示人物模型300的上臂姿态。动画制作者对骨架结构305片段的位置和定向进行处理以为人物模型300定义姿态。 
人物模型300的姿态可通过动画变量集来定义,动画变量集包括动画变量315、317、319和321,这些指定了骨架结构305上臂片段围绕关节310的旋转。可至少部分通过模型组件333来确定人物模型300的点的位置。 然而,本发明的一则实施例通过将模型组件333替换为与模型组件333性态近似的对应的膨化组件330而减少创建姿态人物模型的执行时间。膨化组件330从模型组件333获得(334)。膨化组件330可近似于任何类型的数据处理函数、程序或算法以确定人物模型300的点的位置,包括但不限于皮肤、骨头、脂肪和肌肉层的仿真;动态衣物仿真;雕刻整形;球变换;以及物理仿真。 
在一则实施例中,可在对人物模型300进行姿态设置之前从模型组件333获得膨化组件330。此外,一旦从模型组件333获得后,膨化组件330可被用于重复确定人物模型300的多个姿态。 
在一则实施例中,动画变量325(可包括与关节310相关联的动画变量315、317、319和321)被输入至膨化组件330。膨化组件330随后根据所输入的动画变量325确定人物模型200的一个或多个点的位置。 
在图3中,膨化组件330确定人物模型300的点340和350的位置。模型组件330的输出335指定点340的位置。类似地,模型组件330的输出345指定点350的位置。点340和350的位置可由模型组件330按照离开基位或静止位上的人物模型200的位移,或者按照点340和350离开它们在几何设定人物模型360上的位置的位移来指定。 
如上所述,可在对人物模型进行姿势设置之前从模型组件获得膨化组件。此外,一旦计算了膨化组件,可使用膨化组件重复对人物模型进行姿态设置。这样,图4示出用于根据本发明的一则实施例创建姿态人物模型的方法400的两个阶段。在第一阶段410中,在对人物模型进行姿态设置之前从模型组件获得膨化组件。随着膨化组件的创建,可使用膨化组件在第二阶段420中创建姿态人物模型。本发明的一则实施例可重复第二阶段420以生成人物模型的其它姿态而不重新创建膨化组件。 
在第一阶段410的实施例中,通过将人物模型在训练姿态集(称为训练集)中进行分析来创建膨化组件。图5示出用于根据本发明一则实施例从与关节连接人物模型相关联的模型组件创建膨化组件的方法500。 
步骤505识别与模型组件相关联的动画变量和参考帧。所识别的动画变 量是被输入至模型组件用于对人物模型进行姿态设置的动画变量集的一部分。参考帧定义受模型组件输出影响的人物模型区域。在一则实施例中,每个参考帧定义用于一个或多个框架结构片段以及人物模型的邻近部分的局部坐标系统。对于与模型组件相关联的参考帧集,选择一个帧作为母帧。 
在一则实施例中,坐标参考帧由四个矢量组成:第一矢量定义坐标参考帧的原点或位置并且三个矢量定义坐标参考帧的坐标轴。人物模型的每个点通过参考帧权重集与一个或多个参考帧相关联。参考帧权重集定义在给定点上一个或多个参考帧的移动影响的加权平均。在一则实施例中,手动确定所关联的参考帧和动画变量。或者,模型组件的分析可以确定用作输入的动画变量以及人物模型的点集,这样,参考帧潜在地受到它的输出的影响。 
图6A-6C示出用于根据本发明一则实施例从与示例性关节连接人物模型相关联的模型组件创建膨化组件的方法的示例性应用。图6A示出使用在对人物模型605进行姿态设置的示例性人物骨架结构600。骨架结构600包括多个参考帧,诸如与骨架结构600的右下腿相关联的参考帧607以及与骨架结构600右肩相关联的参考帧609。每个参考帧与一个或多个骨架结构片段以及人物模型605的邻近部分相关联。例如,参考帧611关联于人物模型605的躯干区域;参考帧613关联于人物模型605的左肩区域;参考帧615和617分别关联于人物模型605的左上臂和左下臂。 
在步骤505中,识别与模型组件相关联的参考帧和动画变量。例如,用于确定人物模型605手臂变形的肌肉变形模型组件可关联于参考帧611、613、615和617的集合并关联于用于对这些参考帧中的框架结构片段进行姿态设置的动画变量。 
在步骤510,根据训练姿态集对人物模型进行姿态设置。每个训练姿态是将已识别动画变量集设置为示例值的结果。训练序列集理想下覆盖与模型组件相关联的部分人物模型移动的正常区域。在一则实施例中,训练集中的姿态数目至少对应于与模型组件相关联的不同参考帧的数目,如果不超过它的话。在一则实施例中,通常人物模型可含有包括数千个姿态的训练集。 
在一则实施例中,人物模型的点根据训练集中的每个姿态被几何设定姿态。部分人物结构框架的移动或姿态设置也移动了相关联的参考帧。几何设定根据相关联的参考帧的姿态位置移动人物模型中的点,而没有任何离开模型组件的位移。步骤510为每个训练姿态记录动画变量的值和受到建模组件潜在影响的人物模型中的点的对应位置。在一则实施例中,人物模型点的姿态位置表示在参考帧集的每一个中。动画变量值集和人物模型点的对应位置组成了样本数据集。 
继续图6A的示例,图6B示出用于与步骤510所调用的人物模型左臂相关联的参考帧和动画变量集合的训练姿态620的示例集。训练集620包括训练姿态622、624、626、628、630、和632,其中每一个都将与模型组件相关联的人物模型处理为一个不同的姿态。在步骤510的一个示例性应用中,记录用于每个训练姿态的动画变量的值和人物模型的几何设定点以形成样本数据集。 
步骤515分析样本数据集以确定帧基函数的最优化集。表示点的设定姿态位置的部分样本数据集被组合以形成矩阵,并且计算该矩阵的单值分解以查找用于该样本数据集的帧基函数集。在可选实施例中,也可使用其它计算帧基函数集的方法(诸如经典分解)。帧基函数集可被用于表示为使用最小平方探测对样本集最优化的模型点的位置。确定帧基函数的最优化集允许更紧凑地表示样本数据集,这样最小化了方法500的后续步骤所要分析的数据量。在一则实施例中,步骤515使用帧基函数集分解样本数据集以确定样本数据的最优化集。然而,步骤515是可选的并且方法500的一个替代实施例跳过步骤515并在原始样本数据集的基础上执行后续步骤。 
步骤520从样本数据最优化集中确定姿态误差集。在一则实施例中,通过将人物模型点的几何设定姿态的位置与用于同一个动画变量集的来自模型组件的对应的位置输出进行比较来确定用于给定姿态的姿态误差。用于人物模型点的给定姿态的姿态误差是模型组件输出的点的位置与几何设定姿态的位置之间的差值。在还有一则实施例中,由模型组件输出的点的位置随着时间改变。在该实施例中,用于给定训练姿态中的点的姿态误差是随着时间输出的模型组件和点的几何设定姿态的位置之间的一系列差值。 对于训练集中的每个训练姿态,为受到模型组件潜在影响的人物模型中的每个点确定姿态误差。 
在另一个实施例中,几何设定人物模型定义人物模型“皮肤”的位置。模型组件定义关于该皮肤的点的位置。例如,衣物仿真建模组件可定义与该人物模型皮肤有关的人物模型衣物上的点的位置。在这则实施例中,几何设定人物模型定义姿态误差的方向或定向,并且模型组件的输出定义了沿着该定向的姿态误差。 
在一则实施例中,帧权重集被用于表示每个点的姿态误差。每个点的姿态误差被变换为步骤505中所选择的母参考帧。从母参考帧中,每个点的姿态误差根据与该点相关联的参考帧权重集进行加权并根据步骤515中确定的帧基函数从母参考帧变形为每个参考帧。通过将姿态误差从母参考帧变换并分布至其它参考帧,与人物模型的每个点相关联的姿态误差将连同其相关联的参考帧一起移动。 
继续图6A和6B的示例,图6C示出用于示例训练姿态的姿态误差的确定。定义训练姿态的动画变量(包括动画变量640、642、644和646)被输入至模型组件以确定设定姿态人物模型650。人物模型的点(包括点652和654)的位置与它们在几何设定人物模型648上的对应位置相比较。姿态误差656和658是点652和654分别在在姿态人物模型650和几何设定人物模型648上的位置的差值。 
步骤525分析姿态误差的完整集以确定与模型组件性态非常近似的膨化组件。在一则实施例中,使用统计回归分析以将人物模型上点的姿态误差确定为动画变量的函数。在一则实现中,在姿态误差集上执行非线性二次回归分析。在该实现中,动画变量被分割为正值和负值(称为分割动画变量),这被视为是分割回归步骤。在还有一则实现中,如果正分割动画变量小于零,将值箝住为零。类似地,如果负分割动画大于零,则将其箝住为零。在还有一则实现中,分割动画变量、分割动画变量的平方根、以及邻近分割动画变量(其为与同一个关节相关联的动画变量)的乘积的平方根都被用于回归分析以确定近似于模型组件输出的函数。 
在还有一则实施例中,表现关节旋转的动画变量被转换为去混淆形式以防止视觉中断的出现。不象通常角度表现,去混淆角在关节移动的正常范围内不含有任何的角中断。在一些应用中,去混淆角通常显示出与模型组件的高度统计相关性,例如因为去混淆角缺少万向锁并且在关节移动的正常范围内是连续的。关节角从四角度角延展欧拉(Euler)形式到对应的去混淆形式的转换详细描述在相关临时和实用申请证明序号21751-000900US和21751-000910US,题为“去混淆化”(Defrobulation)和“用于人物关节表示的去混淆角”(Defrobulated Angles for Character JointRepresentation)中。 
对去混淆角形式概括而言,由标准四角度角旋转(tw,a,b,c)所表示的对应于右手角度旋转形式(x,y,z,x)的关节旋转被转换为投影集xp=cos(a)cos(b);yp=cos(c)sin(a)+sin(c)sin(b)cos(a);以及zp=sin(c)sin(a)-cos(c)sin(b)cos(a)。由投影集xp、yp和zp,,可定义弦角ch为ch=acos(xp)。弦角ch被用作中间值以确定去混淆角(q,r,et)。在一则实施例中,q=ch*yp,并且r=ch*zp。本质扭曲et定义为: 
et = tw + arctan ( zp yp ) + arctan ( sin ( b ) cos ( b ) sin ( a ) )
在对本发明实施例的应用中,表示关节旋转且还没有为去混淆形式的动画变量如上所述被转换为去混淆形式。随后使用动画变量的去混淆形式执行回归分析。在还有一则实施例中,去混淆动画变量被分割为正值和负值并且这被认为是分割回归步骤。此外,去混淆动画变量、它们的平方根、以及邻近动画变量乘积的平方根可被包括在回归分析中。 
在方法500中确定的膨化组件可被用于在将人物模型设置为任何所期望的姿态中替代模型组件,无论所期望的姿态是否包括在训练集中。此外,多个膨化组件的输出可被组合以确定人物模型的所有部分或一个或多个部分的姿态。 
图7示出用于根据本发明一则实施例从膨化组件确定在关节连接人物模型上点的姿态位置的方法700。对于所期望的人物模型姿态(它在可由动画变量集定义的实施例中)步骤705确定与膨化组件相关联的部分动画变量集。在一则实施例中,该部分动画变量集(称为相关联动画变量)是含有与膨化组件统计相关的动画变量。此外,步骤705确定与膨化组件相关联的参考帧。
图8A-8C示出用于根据本发明从膨化组件确定关节连接人物模型上的点的姿态位置的方法的示例性应用。在图8A-8C的示例中,膨化组件表示肌肉变形操作,该肌肉变形操作被用于确定人物模型的左臂到所期望姿态的变形。图8A示出选择与用于所期望姿态的示例性膨化组件相关联的参考帧集,如步骤705的实施例中所要求的。人物骨架结构800根据动画变量集已经被处理为所期望的姿态。步骤705识别与该膨化组件相关联的部分动画变量集。此外,也选择受到该膨化组件影响的参考帧(诸如参考帧805、810、815和820)。 
在步骤710,人物模型,或是替代的受到该膨化组件潜在影响的部分人物模型,被根据相关联的动画变量进行几何设定设置。人物模型可用任何本领域所知的方法进行几何设定设置。 
图8B示出如步骤710的实施例所要求的确定人物模型上点的几何设定姿态的位置。在图8B中,步骤710根据部分动画变量(包括动画变量835、840、845和850)对受到膨化组件影响的部分人物模型830进行姿态设置。部分动画变量的应用结果是几何设定人物模型830。几何设定人物模型包括点860和865。 
此外,步骤715将相关联的动画变量输入至膨化组件。对于相应于关节角的动画变量,一则实施例将该动画变量转换为去混淆形式以将其输入膨化组件。膨化组件的输出是用于所期望姿态的人物模型上的至少一个点的姿态误差。在一则实施例中,膨化组件输出表示一段时间周期上的人物模型上至少一个点的一系列姿态误差值。 
如果在创建膨化组件中使用一组帧基函数的最优化集来减少样本数据集的大小,则步骤720将帧基函数集应用到与人物模型每个点都相关联的姿态误差。从而,姿态误差被分解为相关联的参考帧中的部分值。 
步骤725将用于每个点的姿态误差加到几何设定人物模型上点的位置上并将结果组合为姿态人物模型。由使用膨化组件产生的设定姿态人物模型非常近似使用相同动画变量集的原始模型组件所产生的结果。 
图8C示出如步骤715-725的实施例所要求的膨化组件输出的姿态误差对人物模型的点的几何设定姿态的位置的应用。部分动画变量集870被输入膨化组件875以产生姿态误差集,包括姿态误差880和885。姿态误差集被用于将几何设定人物模型的点(包括点860和865)分别移动到新的位置(如895和890)。人物模型的点的新的位置非常近似由应用原始模型组件所产生的位置。 
需要注意的是一旦使用一个或多个上述实施例创建了姿态或变形模型,任何呈现技术(例如光线跟踪或扫描行呈现)可根据该模型结合光线、阴影、纹理映射、以及任何其它图像处理信息创建最终图像或帧。 
本领域熟练技术人员在阅读附加的文档后可预想出其它实施例。在其它实施例中,可以方便地得出上面披露的本发明的组合和子组合。已经对体系结构框图和流程图进行分类以方便理解。然而可以理解的是在本发明的可选实施例中考虑到了框图的组合、新框图的增加、框图的重新安排、以及类似情况。 
因此说明书和附图被认为是示例性而不是限制性理解。然而,可以证明的所得到的各种修改和改动不脱离权利要求所提出的本发明的广大的精神和范围。 

Claims (39)

1.一种创建对模型组件的性态进行近似的膨化组件的方法,所述膨化组件用于对人物模型进行姿态设置,该方法包括:
识别与所述模型组件相关联的所述人物模型的至少一部分;
通过训练姿态集的每一个处理所述人物模型,其中,所述训练姿态集表示所述人物模型的位移范围并由输入集所定义;
从用于所述人物模型至少一点的所述训练姿态集确定训练姿态误差集,其中所述训练姿态误差集中的每一个是人物模型点的位置中从几何设定姿态的位置到所述模型组件所指定的至少一个位置差;以及
分析所述训练姿态误差集以确定所述输入集和所述训练姿态误差集之间的关系,
其中,使用从所述训练姿态集确定的基函数集表示所述训练姿态误差集。
2.如权利要求1所述的方法,其特征在于,通过至少一个与所述模型组件相关联的并影响所述人物模型的至少一部分的参考帧识别与所述模型组件相关联的所述人物模型的至少一部分。
3.如权利要求1所述的方法,其特征在于,所述输入集包括动画变量集。
4.如权利要求3所述的方法,其特征在于,所述动画变量集的一部分是表示为去混淆形式的关节旋转角。
5.如权利要求1所述的方法,其特征在于,所述训练姿态误差集中的每一个是所述人物模型的点从所述几何设定姿态的位置到所述模型组件所指定的位置集随着时间的一系列位置差。
6.如权利要求1所述的方法,其特征在于,所述分析包括对所述输入集执行所述训练姿态误差集的回归分析。
7.如权利要求6所述的方法,其特征在于,所述输入集包括分割为分离的正值和负值变量的动画变量集。
8.一种使用膨化组件将至少一部分人物模型处理为姿态的方法,该方法包括:
识别与所述姿态相关联的所述人物模型的部分;
从所述姿态确定所述人物模型的点集的几何设定姿态的位置集;
从所述膨化组件和所述姿态预测与所述人物模型的点集相关联的姿态误差集,其中所述姿态误差集的每一个指定了点离开所述几何设定姿态的位置的位移;以及
将所述姿态误差集应用到所述点集的几何设定姿态的位置集,
其中,应用所述姿态误差集包括将所述姿态误差集中的每一个变换为与基函数集相关联的参考帧集。
9.如权利要求8所述的方法,其特征在于,通过至少一个影响所述人物模型的所述部分的参考帧识别与所述姿态相关联的所述人物模型的所述部分。
10.如权利要求8所述的方法,其特征在于,至少部分通过动画变量集定义所述姿态。
11.如权利要求10所述的方法,其特征在于,所述动画变量集的一部分是表示为去混淆形式的关节旋转角。
12.如权利要求8所述的方法,其特征在于,所述姿态误差集中的至少一个指定了点随时间离开几何设定姿态的位置的一系列位移。
13.如权利要求8所述的方法,其特征在于,所述基函数集从一训练集确定。
14.一种使用模型组件将至少一部分人物模型处理为姿态的方法,该方法包括:
根据所述模型组件创建一膨化组件;
识别与所述膨化组件相关联的人物模型的部分;
从所述姿态确定所述人物模型的点集的几何设定姿态的位置集;
从所述膨化组件和所述姿态预测与所述人物模型的点集相关联的姿态误差集,其中所述姿态误差集的每一个指定了点离开所述几何设定姿态的位置的位移;以及
将所述姿态误差集应用到所述点集的几何设定姿态的位置集,
其中,应用所述姿态误差集包括将所述姿态误差集中的每一个变换为与基函数集相关联的参考帧集。
15.如权利要求14所述的方法,其特征在于,通过至少一个影响所述人物模型的所述部分的参考帧识别与所述姿态相关联的所述人物模型的所述部分。
16.如权利要求14所述的方法,其特征在于,至少部分通过动画变量集定义所述姿态。
17.如权利要求16所述的方法,其特征在于,所述动画变量集的一部分是表示为去混淆形式的关节旋转角。
18.如权利要求14所述的方法,其特征在于,所述姿态误差集中的至少一个指定了点随时间离开几何设定姿态的位置的一系列位移。
19.如权利要求14所述的方法,其特征在于,从所述模型组件创建所述膨化组件包括:
识别与所述模型组件相关联的所述人物模型的至少一部分;
通过训练姿态集的每一个处理所述人物模型,其中,所述训练姿态集表示所述人物模型的位移范围并由输入集所定义;
从用于所述人物模型至少一点的所述训练姿态集确定训练姿态误差集;以及
分析所述训练姿态误差集以确定所述输入集和所述训练姿态误差集之间的关系。
20.如权利要求19所述的方法,其特征在于,通过至少一个与所述模型组件相关联的并影响所述人物模型的至少一部分的参考帧识别与所述模型组件相关联的所述人物模型的至少一部分。
21.如权利要求19所述的方法,其特征在于,所述输入集包括动画变量集。
22.如权利要求21所述的方法,其特征在于,所述动画变量集的一部分是表示为去混淆形式的关节旋转角。
23.如权利要求19所述的方法,其特征在于,所述训练姿态误差集中的每一个是所述人物模型的点从所述几何设定姿态的位置到至少一个所述模型组件所指定的位置的至少一个位置差。
24.如权利要求23所述的方法,其特征在于,所述训练姿态误差集中的每一个是所述人物模型的点从所述几何设定姿态的位置到所述模型组件所指定的位置集随着时间的一系列位置差。
25.如权利要求19所述的方法,其特征在于,使用从所述姿态训练集确定的基函数集表示所述训练姿态误差集。
26.如权利要求19所述的方法,其特征在于,所述分析包括对所述输入集执行所述训练姿态误差集的回归分析。
27.一种使用模型组件将至少一部分人物模型处理为姿态的设备,包括:
用于从模型组件创建膨化组件的装置;
用于识别与所述膨化组件相关联的人物模型的部分的装置;
用于从所述姿态确定所述人物模型的点集的几何设定姿态的位置集的装置;
用于从所述膨化组件和所述姿态预测与所述人物模型的点集相关联的姿态误差集的装置,其中所述姿态误差集的每一个指定了点离开所述几何设定姿态的位置的位移;以及
用于将所述姿态误差集应用到所述点集的几何设定姿态的位置集的装置,
其中,用于应用所述姿态误差集的装置包括用于将所述姿态误差集中的每一个变换为与基函数集相关联的参考帧集的装置。
28.如权利要求27所述的设备,其特征在于,通过至少一个影响所述人物模型的所述部分的参考帧识别与所述姿态相关联的所述人物模型的所述部分。
29.如权利要求27所述的设备,其特征在于,至少部分通过动画变量集定义所述姿态。
30.如权利要求29所述的设备,其特征在于,所述动画变量集的一部分是表示为去混淆形式的关节旋转角。
31.如权利要求27所述的设备,其特征在于,所述姿态误差集中的至少一个指定了点随时间离开几何设定姿态的位置的一系列位移。
32.如权利要求27所述的设备,其特征在于,用于从所述模型组件创建所述膨化组件的装置包括:
用于识别与所述模型组件相关联的所述人物模型的至少一部分的装置;
用于通过训练姿态集的每一个处理所述人物模型的装置,其中,所述训练姿态集表示所述人物模型的位移范围并由输入集所定义;
用于从用于所述人物模型至少一点的所述训练姿态集确定训练姿态误差集的装置;以及
用于分析所述训练姿态误差集以确定所述输入集和所述训练姿态误差集之间的关系的装置。
33.如权利要求32所述的设备,其特征在于,通过至少一个与所述模型组件相关联的并影响所述人物模型的至少一部分的参考帧识别与所述模型组件相关联的所述人物模型的至少一部分。
34.如权利要求32所述的设备,其特征在于,所述输入集包括动画变量集。
35.如权利要求34所述的设备,其特征在于,所述动画变量集的一部分是表示为去混淆形式的关节旋转角。
36.如权利要求32所述的设备,其特征在于,所述训练姿态误差集中的每一个是所述人物模型的点从所述几何设定姿态的位置到至少一个所述模型组件所指定的位置的至少一个位置差。
37.如权利要求36所述的设备,其特征在于,所述训练姿态误差集中的每一个是所述人物模型的点从所述几何设定姿态的位置到所述模型组件所指定的位置集随着时间的一系列位置差。
38.如权利要求32所述的设备,其特征在于,使用根据所述训练姿态集确定的基函数集表示所述训练姿态误差集。
39.如权利要求32所述的设备,其特征在于,分析包括对所述输入集执行所述训练姿态误差集的回归分析。
CN2004800129252A 2003-05-14 2004-05-12 用于生成对动画模型性态进行近似的膨化组件的方法 Expired - Fee Related CN101356549B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US47059003P 2003-05-14 2003-05-14
US47076703P 2003-05-14 2003-05-14
US60/470,590 2003-05-14
US60/470,767 2003-05-14
US10/844,048 US7333112B2 (en) 2003-05-14 2004-05-11 Rig baking
US10/884,048 2004-05-11
PCT/US2004/015119 WO2004104749A2 (en) 2003-05-14 2004-05-12 Method for generating a baked component that approximates the behavior of animation models

Publications (2)

Publication Number Publication Date
CN101356549A CN101356549A (zh) 2009-01-28
CN101356549B true CN101356549B (zh) 2012-01-04

Family

ID=33519830

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004800129252A Expired - Fee Related CN101356549B (zh) 2003-05-14 2004-05-12 用于生成对动画模型性态进行近似的膨化组件的方法

Country Status (5)

Country Link
US (2) US7333112B2 (zh)
EP (1) EP1627282B1 (zh)
JP (1) JP4719155B2 (zh)
CN (1) CN101356549B (zh)
WO (1) WO2004104749A2 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7202869B2 (en) * 2003-01-07 2007-04-10 Lucasfilm Entertainment Company Ltd. System and method of creating and animating a computer-generated image of a creature
FR2854265B1 (fr) * 2003-04-28 2006-05-19 Snecma Moteurs Optimisation de l'ergonomie lors du deplacement d'un mannequin virtuel
US7944449B2 (en) * 2003-05-14 2011-05-17 Pixar Methods and apparatus for export of animation data to non-native articulation schemes
TWI220234B (en) * 2003-10-21 2004-08-11 Ind Tech Res Inst A method to simulate animated images for an object
US7463265B2 (en) * 2005-08-02 2008-12-09 Sony Computer Entertainment America Inc. Constraint schemes for computer simulation of cloth and other materials
JP4662260B2 (ja) * 2005-09-21 2011-03-30 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及び画像生成システム
US20070236496A1 (en) * 2006-04-06 2007-10-11 Charles Keller Graphic arts image production process using computer tomography
US20080158224A1 (en) * 2006-12-28 2008-07-03 National Tsing Hua University Method for generating an animatable three-dimensional character with a skin surface and an internal skeleton
FR2911708B1 (fr) * 2007-01-22 2009-07-10 Total Immersion Sa Procede et dispositif de creation d'au moins deux images cles correspondant a un objet tridimensionnel.
US8379030B1 (en) * 2007-05-07 2013-02-19 Pixar Computer graphics variable transformation interface
KR101230903B1 (ko) * 2010-12-08 2013-02-07 현대자동차주식회사 전기자동차의 등판밀림방지를 위한 크립토크 제어 방법
US9082222B2 (en) * 2011-01-18 2015-07-14 Disney Enterprises, Inc. Physical face cloning
US8860933B2 (en) * 2012-07-12 2014-10-14 Honeywell International Inc. Multi-axis atomic inertial sensor system
US9478058B2 (en) * 2012-08-06 2016-10-25 CELSYS, Inc. Object correcting apparatus and method and computer-readable recording medium
CN104123735B (zh) * 2014-07-24 2017-05-10 无锡梵天信息技术股份有限公司 能实现多种动作混合的方法
CN112102452B (zh) * 2020-09-27 2024-03-22 完美世界(北京)软件科技发展有限公司 一种动画模型处理方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0712097A2 (en) * 1994-11-10 1996-05-15 Matsushita Electric Industrial Co., Ltd. Method and system for manipulating motion units for computer articulated figure animation
CN1140861A (zh) * 1995-05-12 1997-01-22 索尼公司 用于产生动画数据的方法和装置
US5883638A (en) * 1995-12-01 1999-03-16 Lucas Digital, Ltd. Method and apparatus for creating lifelike digital representations of computer animated objects by providing corrective enveloping
US5982389A (en) * 1996-06-17 1999-11-09 Microsoft Corporation Generating optimized motion transitions for computer animated objects
US20020008704A1 (en) * 2000-07-21 2002-01-24 Sheasby Michael C. Interactive behavioral authoring of deterministic animation
CN1383102A (zh) * 2001-04-25 2002-12-04 中国科学技术大学 一种三维人脸动画的制作方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0842682B9 (en) * 1996-06-05 2005-06-08 Sega Corporation Image processor for games
WO1998044458A1 (en) * 1997-03-27 1998-10-08 At & T Corp. Method for defining animation parameters for an animation definition interface
US6088042A (en) * 1997-03-31 2000-07-11 Katrix, Inc. Interactive motion data animation system
JPH114969A (ja) * 1997-06-16 1999-01-12 Konami Co Ltd ゲーム装置、ゲーム方法および可読記録媒体
US6011562A (en) * 1997-08-01 2000-01-04 Avid Technology Inc. Method and system employing an NLE to create and modify 3D animations by mixing and compositing animation data
GB2360183A (en) * 1999-11-18 2001-09-12 Anthropics Technology Ltd Image processing using parametric models
JP3569201B2 (ja) * 2000-06-05 2004-09-22 株式会社スクウェア・エニックス 特定のキャラクタが他のキャラクタに接触するモーションを実行する場面を表示させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体及び方法、並びにゲーム装置
JP3683487B2 (ja) * 2000-09-19 2005-08-17 株式会社ドリームパブリッシング 外殻による3dモデルアニメーション生成方法
US6997882B1 (en) * 2001-12-21 2006-02-14 Barron Associates, Inc. 6-DOF subject-monitoring device and method
US7689994B2 (en) * 2004-01-28 2010-03-30 Microsoft Corporation System and method for specifying and executing temporal order events

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0712097A2 (en) * 1994-11-10 1996-05-15 Matsushita Electric Industrial Co., Ltd. Method and system for manipulating motion units for computer articulated figure animation
CN1140861A (zh) * 1995-05-12 1997-01-22 索尼公司 用于产生动画数据的方法和装置
US5883638A (en) * 1995-12-01 1999-03-16 Lucas Digital, Ltd. Method and apparatus for creating lifelike digital representations of computer animated objects by providing corrective enveloping
US5982389A (en) * 1996-06-17 1999-11-09 Microsoft Corporation Generating optimized motion transitions for computer animated objects
US20020008704A1 (en) * 2000-07-21 2002-01-24 Sheasby Michael C. Interactive behavioral authoring of deterministic animation
CN1383102A (zh) * 2001-04-25 2002-12-04 中国科学技术大学 一种三维人脸动画的制作方法

Also Published As

Publication number Publication date
EP1627282A4 (en) 2011-08-17
US20040257368A1 (en) 2004-12-23
WO2004104749A2 (en) 2004-12-02
CN101356549A (zh) 2009-01-28
EP1627282B1 (en) 2017-08-09
WO2004104749A3 (en) 2007-11-15
JP2007527054A (ja) 2007-09-20
EP1627282A2 (en) 2006-02-22
US7333112B2 (en) 2008-02-19
US7570264B2 (en) 2009-08-04
US20080204457A1 (en) 2008-08-28
JP4719155B2 (ja) 2011-07-06

Similar Documents

Publication Publication Date Title
CN101356549B (zh) 用于生成对动画模型性态进行近似的膨化组件的方法
CN100520827C (zh) 统计动态碰撞方法及设备
Shlyakhter et al. Reconstructing 3D tree models from instrumented photographs
US7515155B2 (en) Statistical dynamic modeling method and apparatus
CN108510577B (zh) 基于已有动作数据的真实感动作迁移和生成方法及系统
US7944449B2 (en) Methods and apparatus for export of animation data to non-native articulation schemes
KR101796190B1 (ko) 디지털 클론 생성 장치 및 방법
AU772276B2 (en) System and method for multi-resolution fairing of non-manifold models
CN111914595A (zh) 一种基于彩色图像的人手三维姿态估计方法和装置
US20020019727A1 (en) System and method for designing, synthesizing and analyzing computer generated mechanisms
CN115661367A (zh) 基于照片采集的动态混合变形的建模方法及系统
Yang et al. Life-sketch: a framework for sketch-based modelling and animation of 3D objects
US7782322B2 (en) Plane shape creation system, plane shape creation method and program recording medium
JP4358752B2 (ja) 統計力学的衝突の方法と装置
McDonnell et al. A novel framework for physically based sculpting and animation of free-form solids
Gladilin et al. Digital Technology in the Design of Nonlinear (Parametric) Objects Environmental Space
Wesche Conceptual free-form styling in virtual environments
Tanaka et al. Bisection refinement-based real-time adaptive mesh model for deformation and cutting of soft objects
Hahne Weighting in Laplacian mesh editing
Hopkins Example-Based Parameterization of Linear Blend Skinning for Skinning Decomposition (EP-LBS)
Milošević et al. An Approach to Designing Architectural Structures Using 3D Graphic Statics
CN117974940A (zh) 一种三维模型处理方法、装置、设备及介质
Wesche Conceptual Free-Form Styling in Virtual Environments
Abouaf Variations on perfection: the Sequin-Collins sculpture generator
Liu et al. A stylistic human motion editing system based on a subspace motion model

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120104

Termination date: 20210512