CN100428281C - 基于运动脚本的三维人体动画自动生成方法 - Google Patents

基于运动脚本的三维人体动画自动生成方法 Download PDF

Info

Publication number
CN100428281C
CN100428281C CNB2006100533961A CN200610053396A CN100428281C CN 100428281 C CN100428281 C CN 100428281C CN B2006100533961 A CNB2006100533961 A CN B2006100533961A CN 200610053396 A CN200610053396 A CN 200610053396A CN 100428281 C CN100428281 C CN 100428281C
Authority
CN
China
Prior art keywords
motion
path
human body
behavior
point
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
CNB2006100533961A
Other languages
English (en)
Other versions
CN1996395A (zh
Inventor
庄越挺
肖俊
吴飞
吴伊自
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.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
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 Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CNB2006100533961A priority Critical patent/CN100428281C/zh
Publication of CN1996395A publication Critical patent/CN1996395A/zh
Application granted granted Critical
Publication of CN100428281C publication Critical patent/CN100428281C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明公开了一种基于运动脚本的三维人体动画自动生成方法。在虚拟场景中指定三维人体角色运动的起点与终点,根据场景信息与预先定义的运动偏好参数自动生成起点与终点之间的运动路径,并决定每段路径上对应的角色行为方式;之后,将路径与行为选择信息转换为采用可扩展标记语言XML格式表示的运动脚本数据进行编辑与存储;生成动画时,根据运动脚本数据从运动捕获数据库中检索出符合要求的人体运动数据进行适当编辑,并采用运动缝合算法生成得到最终的三维人体动画序列。使用该方法与系统能够自动、灵活、智能、高效的生成三维人体动画序列,大大提高了三维人体动画制作效率。

Description

基于运动脚本的三维人体动画自动生成方法
技术领域
本发明涉及计算机三维动画技术领域,尤其涉及一种基于运动脚本的三维人体动画自动生成方法。
背景技术
三维人体动画生成技术一直以来都受到广泛关注,并且在近十年得到快速发展。随着运动捕获系统的推广,出现了越来越多的具有高度真实感的人体运动捕获数据及商用数据库,并在运动仿真、视频游戏、影视特技等领域得到广泛应用。因此,近年来围绕基于运动捕获数据生成三维人体动画的研究与系统开发工作已经取得了一些进展,但是作为实际运用的系统,它们还存在某些不足。
在三维人体动画制作领域,使用较多的软件系统有Maya,3D Max,Kaydara MotionBuilder,SoftImage等。使用上述软件制作虚拟场景中的三维人体动画时需要动画师手工拼接人体运动捕获数据甚至是手工生成每一帧人体运动数据,并根据不同场景要求对得到的三维人体运动序列进行手工调整,最后将三维人体角色、运动数据序列、虚拟场景整合在一起得到最终三维人体动画序列。这个过程需要动画师具有较高的经验性且动画生成过程繁琐、效率低下。
此外在研究领域也有一些方法被提出来用于三维人体动画生成。《美国计算机学会图形学学报》(Motion Graphs,ACM SIGGRAPH’02 Conference Proceedings,2002,21(3),473-482)公布了一种基于运动图的三维人体运动生成技术,基于人体运动捕获数据库与运动图模型,用户能够交互式的生成最终的三维人体运动序列。但是该方法没有将虚拟场景的信息与约束考虑进去,因此不能直接用于虚拟场景中三维人体动画的生成。
《美国计算机学会图形学学报》2003年第二期中(Planning biped locomotion using motioncapture data and probabilistic roadmaps,ACM Transactions on Graphics 2003,22(2):182-203)公布了一种在虚拟场景中生成三维人体动画序列的方法,采用概率模型在场景表面生成三维人体角色可用的足迹图并利用人体运动捕获数据生成最终三维人体动画序列。但该方法只能处理平面场景模型且用户对生成的三维人体动画序列不能进行编辑。
发明内容
本发明为克服上述现有技术的缺点和不足,提供了一种智能、高效、灵活的三维人体动画生成方法,采用多种方式(自动,半自动,交互式)生成三维人体动画序列,提高三维人体动画制作效率。
基于运动脚本的三维人体动画自动生成方法包括以下步骤:
(1)首先采用运动足迹图生成技术生成虚拟场景中数字角色可用的运动路径图;
(2)基于运动足迹图与用户定义的运动偏好表,系统自动进行数字角色运动路径规划与行为选择;
(3)根据系统给出的自动路径规划与行为选择结果,用户使用交互界面对其进行修改与编辑,并可交互式生成数字角色的最终运动路径;
(4)将步骤(2)、(3)中得到的路径规划与行为选择结果转换为XML格式的运动脚本数据,并可对其进行修改与编辑;
(5)根据运动脚本中的运动类型、物理限制等要求,从已有运动捕获数据库中检索所需人体运动数据片断;
(6)基于检索出的人体运动数据片断,在运动状态机的指导下应用运动缝合技术生成最终的人体动画序列。
所述的一种虚拟场景中运动路径图生成方法是指将虚拟场景中法向量小于阈值T的相邻三角面片连接起来形成连续运动平面,并利用运动捕获数据库中平均人体运动长度参数L在连续运动平面上进行随机采样生成人体运动足迹点,然后将相互之间距离小于等于参数L的路径点相互连接起来形成路径图。此外,对于场景中狭窄区域采样退化的情况使用概率模型 P ( v | V ) = 1 i v + 1 / Σ u ∈ V 1 i u + 1 进行修正。
所述的自动数字角色路径规划与行为选择方法主要包括以下几个步骤:
(1)为数字角色定义运动偏好表,即为每一种类型的运动指定运动偏好系数,且系统为各种基本类型的运动定义了默认的运动偏好系数表,如下:
运动类型 偏好系数
    走     0.1
    跑     0.2
    跨下     0.3
    跳下     0.4
    跨上     0.5
    跳上     0.6
    跨越     0.7
    跳跃     0.9
    飞跃     0.8
    站立     0.0
(2)对运动路径图中每一条边,采用公式c=αwd+βwb计算该边上的运动成本并为该边选择运动成本最低的行为方式,其中wd表示路径图中边的长度,wb表示代表偏好系数,α和β表示归一化系数;
(3)按照上述方法为路径图中每条边选择行为方式并计算上面的运动成本c后,运动路径图变成一张具有权重的运动规划图。此时采用经典Dijkstra算法搜索整个运动规划图就可以得到介于起点和终点之间的一条运动路径,并且路径上的每一段(路径点之间的边)都已经被指定了相应的行为方式。
所述的XML格式运动脚本生成方法是指得到运动路径与行为选择结果后,将运动路径上具有相同行为方式的相邻边组合在一起,生成由XML格式表示的运动脚本,如下:
<?xml version=”1.0”encoding”UTF-8”?>
<!DOCTYPE MotionSequences SYSTEM“ms.dtd”>
<MotionSequences>
<Motion type=”walk”>
 <Path>
   <Point>X1,Y1,Z1</Point>
   <Point>X2,Y2,Z2</Point>
       ......
   <Point>Xn,Yn,Zn</Point>
 </Path>
</Motion>
   ......
<Motion type=”stepover”>
 <Path>
   <Point>XX1,YY1,ZZ1</Point>
   <Point>XX2,YY2,ZZ2</Point>
   <Point>XX3,YY3,ZZ3</Point>
   <Point>XX3,YY3,ZZ3</Point>
 </Path>
</Motion>
</MotionSequences>
对应的DTD文件如下:
<?xml version=”1.0”encoding”UTF-8”?>
<!ELEMENT MotionSequences(Motion+)>
<!ELEMENT Motion(Path)>
<!ATTLIST Motion type(walk|run|leapover|stepup|stepdown|stepover|jumpup|jumpdown
jumpover)>
<!ELEMENT Path(Point,Point+)>
<!ELEMENT Point(#PCDATA)>
所述基于运动脚本的运动数据检索方法包含以下几个步骤:(1)将运动脚本文件中的运动单元(标签<Motion>和</Motion>之间的部分)作为检索样本输入运动数据检索引擎;(2)通过提取<Motion>标签的type属性获得运动类型信息,确定运动数据检索子集;(3)从运动路径信息中(标签<Path>与</Path>之间的部分)提取运动所必须满足的物理限制与特征,从运动数据检索子集中匹配得到最满足要求的人体运动数据片断。
所述基于运动状态机的运动缝合方法包括以下几个步骤:
(1)利用运动状态机指导不同类型运动数据之间的连接方法。不同类型之间的运动片断进行连接时,有的可以直接过渡,有的不能直接过渡,必须插入中间过渡类型的运动数据才能将其连接在一起,本发明采用运动状态机来指导不同类型运动数据之间的过渡连接;
(2)采用如下公式计算相邻两段运动片断进行缝合时的过渡时间:
T trans = ( t e m 1 - t s m 1 ) + ( t e m 2 - t s m 2 ) 2
Figure C20061005339600072
Figure C20061005339600073
分别表示运动片断m1和m2的起始和结束时间;
(3)采用单调递减融合函数α=0.5cos(βπ)+0.5用来在过渡时间内对两个运动片断进行融合(即加权平均),参数β在0到1之间线性变化,得到相应的加权参数α的取值。
附图说明
图1是生成连续运动平面;
图2是生成得到的足迹图,其中(a)是存在采样点退化现象的足迹图,狭窄区域采样点分部较少,(b)是最终得到的足迹图;
图3是场景中的路径与行为规划结果,黄色小球表示运动路径点,它们之间的彩色连线表示不同的行为方式;
图4是交互式运动路径编辑,(a)是系统生成的原始运动路径,黑点表示用户指定的新路径点,(b)是系统自动生成的过用户指定路径点的新运动路径;
图5是交互式运动路径生成,(a)是用户顺序指定的一组路径点,(b)是系统自动生成的运动路径;
图6是基于脚本的运动数据检索引擎体系结构;
图7是运动状态机;
图8是系统工作流程结构示意图;
图9是一个虚拟场景中三维人体动画序列生成实例,(a)系统输入的三维虚拟场景与用户指定的人体运动起点与终点,(b)系统进行路径规划与行为选择的结果,不同颜色的路径表示不同的行为方式,(c)系统生成的虚拟场景中三维人体动画序列。
具体实施方式
本发明的基于运动脚本的三维人体动画自动生成方法具体实施的技术方案及步骤如下:
1.运动路径图生成
虚拟场景由细小的三角面片组成,为了让虚拟角色能够在场景中运动,首先将法向量小于阈值T的三角面片标记为可用面片,并将相邻可用面片连接起来形成连续运动平面(附图1)。法向量大于阈值T的三角面片其倾斜度较大,虚拟角色较难在上面进行正常运动,因此作为不可用运动平面。
得到场景中连续运动平面集合后,应用随机采样方法在连续运动平面上生成足迹点。在足迹点随机采样时利用运动捕获数据库中平均人体运动长度参数L(即人体运动一步的平均距离)控制采样密度,避免采样过密或采样稀疏的情况发生。然后将相互之间距离小于等于参数L的路径点相互连接起来形成路径图。
实际应用过程中表明,在场景中比较狭窄的区域会出现采样点退化的情况(即采样点过于稀疏),此时采用公式(1)中的概率模型调整采样密度并得到最终的路径图(附图2)。
P ( v | V ) = 1 i v + 1 / &Sigma; u &Element; V 1 i u + 1 - - - ( 1 )
公式(1)中V表示足迹采样点集合,v表示足迹采样点,iv表示连接到足迹采样点v的边数。
最终得到的足迹图表示虚拟角色可以沿着足迹图中的采样点和采样点之间的连接边进行运动。
2.运动路径自动规划与行为选择
生成运动足迹图后,要为每条边选择一种行为方式(如走、跑、跳跃等),便于虚拟角色在上面进行运动。在本发明的方法与系统中,行为选择受到三方面因素的影响:
(1)人体运动的物理限制,对于特定的物理障碍,必须选择相应的行为方式。例如,在本方法中当障碍物的高度大于阈值H或宽度大于阈值W时,应当采用“跳跃”行为;当障碍物高度或宽度较小时,采用“跨越”行为等;
(2)用户的运动偏好,不同用户对于相同运动路径可能会选择不同行为方式。本方法采用可配置的运动偏好表来指定用户的运动偏好,便于系统自动选择满足用户要求的行为方式,系统默认运动偏好表如下:
  运动类型   偏好系数
    走     0.1
    跑     0.2
    跨下     0.3
    跳下     0.4
    跨上     0.5
    跳上     0.6
    跨越     0.7
    跳跃     0.9
    飞跃     0.8
    站立     0.0
(3)路径长度。同样在两点之间进行运动,选择不同的运动路径会导致不同的路径长度,进而导致不一样的运动成本。
对于运动路径图中的每一条边,系统结合上述三条原则并按照公式(2)为其选择行为方式,其目标是使得运动成本c最小:
c=αwd+βwb    (2)
其中wd表示路径图中边的长度,wb表示代表偏好系数,α和β表示归一化系数。
按照上述方法为路径图中每条边选择行为方式并计算上面的运动成本c后,运动路径图变成一张具有权重的运动规划图。此时采用经典Dijkstra算法搜索整个运动规划图就可以得到介于起点和终点之间的一条运动路径,并且路径上的每一段(路径点之间的边)都已经被指定了相应的行为方式(附图3)。
可以看到,如果用户想要在同样的虚拟场景下得到不同的行为动画序列,只要通过配置运动偏好表就能实现。
3.交互式运动路径、行为选择结果编辑与生成
得到运动路径自动规划结果后,本系统可以采用交互式方法对已有运动路径及其对应的行为选择结果进行编辑或者是生成。
(1)交互式运动路径与行为选择结果编辑
用户使用鼠标拖动已有运动路径上的某个路径点Pi到新位置,系统根据前面介绍的路径规划原则重新生成路径点Pi-1到Pi,以及Pi到路径点Pi+1之间的新路径(附图4)。用户也可以在系统可视化界面中交互式的对路径上的行为选择结果进行替换
(2)交互式运动路径生成
用户使用鼠标顺序点击场景中的一组路径点,系统按照前面介绍的路径规划原则生成一条路径,该路径顺序经过用户指定的那一组路径点,并指定或者让系统自动选择该路径上所对应的行为方式(附图5)。
4.运动脚本生成与编辑
得到运动路径与行为选择结果后,将运动路径上具有相同行为方式的相邻边组合在一起,生成由XML格式表示的运动脚本,如下:
<?xml version=”1.0”encoding”UTF-8”?>
<!DOCTYPE MotionSequences SYSTEM“ms.dtd”>
<MotionSequences>
<Motion type=”walk”>
 <Path>
   <Point>X1,Y1,Z1</Point>
   <Point>X2,Y2,Z2</Point>
       ......
   <Point>Xn,Yn,Zn</Point>
 </Path>
</Motion>
   ......
<Motion type=”stepover”>
 <Path>
   <Point>XX1,YY1,ZZ1</Point>
   <Point>XX2,YY2,ZZ2</Point>
   <Point>XX3,YY3,ZZ3</Point>
   <Point>XX3,YY3,ZZ3</Point>
 </Path>
</Motion>
</MotionSequences>
对应的DTD文件如下:
<?xml version=”1.0”encoding”UTF-8”?>
<!ELEMENT MotionSequences(Motion+)>
<!ELEMENT Motion(Path)>
<!ATTLIST Motion type(walk|run|leapover|stepup|stepdown|stepover|jumpup|jumpdown|
jumpover)>
<!ELEMENT Path(Point,Point+)>
<!ELEMENT Point(#PCDATA)>
运动脚本文件实际上是系统中三维人体运动路径和行为选择结果的一种文本表现形式,它与系统中可视化的三维人体运动路径和行为选择结果严格对应。因此本系统向用户提供两种方式对运动脚本进行编辑,分别如下:
(1)用户通过系统提供的可视化界面对运动路径和行为选择结果进行编辑,例如前面介绍的交互式运动路径与行为选择结果编辑,编辑结果会及时反映到所生成的运动脚本中;
(2)直接对运动脚本XML文件进行编辑,编辑结果会及时反映到系统的可视化界面中,用于生成新的运动路径和行为选择结果。
5.基于脚本的运动数据检索
基于运动脚本文件,需要从预先准备好的人体运动捕获数据库中获取需要的三维人体运动数据,用于最终的人体动画序列生成。
首先,将运动脚本文件中的运动单元(标签<Motion>和</Motion>之间的部分)作为检索样本输入运动数据检索引擎;通过提取<Motion>标签的type属性获得运动类型信息,确定运动数据检索子集;从运动路径信息中(标签<Path>与</Path>之间的部分)提取运动所必须满足的物理限制与特征,从运动数据检索子集中匹配得到最满足要求的人体运动数据片断(附图6)。
6.基于运动状态机的运动缝合
获取对应于运动路径和行为选择结果的运动数据片断后,对其进行缝合产生最终行为动画序列。
(1)利用运动状态机指导不同类型运动数据之间的连接方法。不同类型之间的运动片断进行连接时,有的可以直接过渡,有的不能直接过渡,必须插入中间过渡类型的运动数据才能将其连接在一起。本发明采用运动状态机来指导不同类型运动数据之间的过渡连接(附图7)。
(2)采用公式(3)计算相邻两段运动片断进行缝合时的过渡时间:
T trans = ( t e m 1 - t s m 1 ) + ( t e m 2 - t s m 2 ) 2 - - - ( 3 )
Figure C20061005339600122
Figure C20061005339600123
分别表示运动片断m1和m2的起始和结束时间。
(3)一个如公式(4)所示的单调递减融合函数用来在过渡时间内对两个运动片断进行融合(即加权平均):
α=0.5cos(βπ)+0.5    (4)
参数β在0到1之间线性变化,得到相应的加权参数α的取值。
附图8显示本发明的基于运动脚本的三维人体动画自动生成方法工作流程结构。该人体动画自动生成系统包括人体运动捕获数据库10、用户可视化交互模块20、运动自动规划模块30、交互式运动规划模块40、脚本生成与编辑模块50、基于脚本的运动检索模块60以及动画序列生成模块70。
人体运动捕获数据库10,利用背景技术中提到的光学运动捕获设备,如本例采用美国Motion Analysis公司生产的捕获设备MotionAnalysis Hawk,采集运动偏好表和运动状态机中所涉及的10种常见人体运动数据,针对每种类型的人体运动采集多个具有不同物理参数值的样本数据并存储在人体运动捕获数据库中,本例使用SQL Server 2000数据库管理系统存储人体运动捕获数据。
用户可视化交互模块20,使用计算机图形系统提供虚拟场景装载、浏览功能,并能够接受来自于鼠标和键盘的用户输入。如本例采用Open GL接口实现了一个交互式虚拟场景浏览器,并能够接受来自于用户的鼠标、键盘输入,比如实现场景中运动起点、终点的选取以及交互式的路径指定等功能。
运动自动规划模块30,包括路径图生成模块31、运动规划图生成模块32以及路径生成及行为选择模块33,用来从用户可视化交互模块20中读取用户交互输入的运动起点与终点信息,自动生成人体角色在三维虚拟场景中的运动路径及对应的行为方式。
路径图生成模块31,其功能是在三维虚拟场景中构建连续运动曲面,并在连续运动平面上根据平均人体运动长度参数随机采样生成虚拟角色运动路径点,进而构成路径图。
运动规划图生成模块32,其基于路径图与用户定义的运动偏好表,为路径图上每一条连接边选择行为方式与计算运动成本,形成运动规划图。
路径生成及行为选择模块33,基于运动规划图,采用Dijkstra算法搜索运动规划图,得到人体角色运动的最佳路径及该路径上所对应的行为方式。
交互式运动规划模块40,包括交互式路径编辑与生成模块41及交互式行为选择模块42,用于从用户可视化交互模块20中读取用户的键盘、鼠标输入,对路径及行为选择结果进行交互式编辑或生成。
交互式路径编辑与生成模块41,用于从用户可视化交互模块20中读取键盘、鼠标输入,对人体角色运动路径进行编辑与生成。例如,使用者可以对已有的人体角色运动路径进行局部修改,或者是根据使用者的鼠标数据,重新生成一条人体角色可用的运动路径。
交互式行为选择模块42,用于从用户可视化交互模块20中读取用户指令,为生成的人体角色运动路径指定相应的行为方式。
脚本生成与编辑模块50,其功能在于从运动自动规划模块30或交互式运动规划模块40中读取人体角色在三维虚拟场景中的运动路径和与其对应的行为方式,自动生成XML格式的运动脚本文件。此外,还可以对生成的运动脚本文件进行编辑。
基于脚本的运动检索模块60,其核心是一个基于脚本的运动数据检索引擎(见附图6),其功能在于从运动脚本文件中读取运动类型与路径信息,进而提取运动数据特征,从已有的人体运动捕获数据库10中检索满足动画生成需要的人体运动数据片断。
动画序列生成模块70,其功能是从基于脚本的运动检索模块60读取生成最终动画序列所需的人体运动数据片断,根据运动状态机及运动缝合算法对这些人体运动数据片断进行连接,从而生成最终的三维人体动画序列。
实施例
通过前述的基于运动脚本的人体动画自动生成方法,以附图9(a)所示的虚拟场景为例,欲进行人体动画生成时其步骤如下:
(1)首先,用户利用可视化交互模块20装载虚拟场景进行浏览,并通过鼠标为虚拟角色指定运动起点与终点;
(2)其次,运动自动规划模块30获取三维虚拟场景数据并从可视化交互模块20中读取用户指定的运动起点与终点信息;
(3)运动自动规划模块30调用路径图生成模块31中的方法在虚拟场景中生成虚拟角色可用的路径图G;
(4)运动规划图模块32读取路径图G,并基于用户配置或系统默认的运动偏好表生成带有权重及行为方式信息的运动规划图M;
(5)路径生成及行为选择模块33读取运动规划图M,采用经典Dijkstra算法在运动规划图中搜索得到最终的带有行为方式虚拟角色运动路径P(见附图9(b));
(6)步骤(3)-(5)的实施过程(也就是运动自动规划模块30的工作流程)是全自动的,在其实施过程中,用户可以自己调用交互式运动规划模块40来交互生成运动规划结果,或者是对模块30自动生成运动规划结果进行交互式编辑;
(7)用户在系统中通过菜单或工具按钮调用交互式路径编辑与生成模块41,利用鼠标、键盘等输入设备为虚拟角色在虚拟场景中指定运动路径,或对模块33自动生成的结果路径进行交互式修改;
(8)用户在系统中通过菜单或工具按钮调用交互式行为选择模块42,利用鼠标、键盘等输入设备为虚拟角色在运动路径上选择不同的行为方式,或者对模块33自动生成的行为选择结果进行修改;
(9)然后,脚本生成与编辑模块50读取虚拟场景数据,并从运动自动规划模块30或者交互式运动规划模块40中获取人体运动规划结果(包括虚拟角色的运动路径及与路径对应的行为方式信息),生成XML格式的运动脚本文件;此外,系统还提供专门的窗口对生成的运动脚本文件进行编辑并将编辑结果通过可视化交互模块20实时反映出来;
(10)此后,基于脚本的运动检索模块60获取生成的运动脚本文件,并以运动脚本中包含的运动类型及路径信息为基础,提取检索特征,从人体运动捕获数据库10中检索需要的三维人体运动数据;
(11)最后,动画序列生成模块70从基于脚本的运动检索模块60中获取一组具有先后顺序的三维人体运动数据;以运动状态机为指导,采用运动缝合算法对其进行连接形成最终的三维人体动画序列并通过可视化交互模块20对动画序列进行播放(见附图9(c))。

Claims (6)

1.一种基于运动脚本的三维人体动画自动生成方法,其特征在于包括以下步骤:
(1)首先采用运动足迹图生成技术生成虚拟场景中数字角色可用的运动路径图;
(2)基于运动足迹图与用户定义的运动偏好表,系统自动进行数字角色运动路径规划与行为选择;
(3)根据系统给出的自动路径规划与行为选择结果,用户使用交互界面对其进行修改与编辑,并可交互式生成数字角色的最终运动路径;
(4)将步骤(2)、(3)中得到的路径规划与行为选择结果转换为XML格式的运动脚本数据,并可对其进行修改与编辑;
(5)根据运动脚本中运动类型和物理限制的要求,从已有运动捕获数据库中检索所需人体运动数据片断;
(6)基于检索出的人体运动数据片断,在运动状态机的指导下应用运动缝合技术生成最终的人体动画序列。
2.根据权利要求1所述的一种基于运动脚本的三维人体动画自动生成方法,其特征在于:所述的一种虚拟场景中运动路径图生成步骤是指将虚拟场景中法向量小于阈值T的相邻三角面片连接起来形成连续运动平面,并利用阈值L在连续运动平面上进行随机采样生成人体运动足迹点,然后将相互之间距离小于等于阈值L的路径点相互连接起来形成路径图,此外,对于场景中狭窄区域采样退化的情况使用如下概率模型进行修正:
P ( v | V ) = 1 i v + 1 / &Sigma; u &Element; V 1 i u + 1 ,
其中v表示当前需要进行修正的路径点,V表示所有路径点构成的集合,iv表示连接到当前路径点v的边的数目,iu表示连接到路径点u的边的数目。
3.根据权利要求1所述的一种基于运动脚本的三维人体动画自动生成方法,其特征在于:所述的自动数字角色路径规划与行为选择步骤主要包括以下几个步骤:
(1)为数字角色的每一种类型的运动指定运动偏好系数,其中“走”的运动偏好系数为0.1,“跑”的运动偏好系数为0.2,“跨下”的运动偏好系数为0.3,“跳下”的运动偏好系数为0.4,“跨上”的运动偏好系数为0.5,“跳上”的运动偏好系数为0.6,“跨越”的运动偏好系数为0.7,“跳跃”的运动偏好系数为0.9,“飞跃”的运动偏好系数为0.8,“站立”的运动偏好系数为0.0;
(2)对运动路径图中每一条边,采用公式c=αwd+βwb计算该边上的运动成本并为该边选择运动成本最低的行为方式,其中wd表示路径图中边的长度,wb表示代表偏好系数,α和β表示归一化系数;
(3)按照上述方法为路径图中每条边选择行为方式并计算上面的运动成本c后,运动路径图变成一张具有权重的运动规划图,此时采用经典Dijkstra算法搜索整个运动规划图就可以得到介于起点和终点之间的一条运动路径,并且路径上的每一段都已经被指定了相应的行为方式。
4.根据权利要求1所述的一种基于运动脚本的三维人体动画自动生成方法,其特征在于:所述的XML格式运动脚本生成步骤主要包括以下几个步骤:
(1)基于运动路径规划与行为选择结果,将运动路径上具有相同行为方式的相邻边组合在一起,形成具有相同运动类型的路径片断;
(2)将路径片断对应的行为类型、构成路径片断的点坐标转化为可扩展标记语言XML格式表示的运动脚本。
5.根据权利要求1所述的一种基于运动脚本的三维人体动画自动生成方法,其特征在于:所述基于运动脚本的运动数据检索步骤包含以下几个步骤:(1)将运动脚本文件作为检索样本输入运动数据检索引擎;(2)从运动脚本文件中提取运动类型信息,确定运动数据检索子集;(3)从运动路径信息中提取运动所必须满足的物理限制与特征,从运动数据检索子集中匹配得到最满足要求的人体运动数据片断。
6.根据权利要求1所述的一种基于运动脚本的三维人体动画自动生成方法,其特征在于:所述基于运动状态机的运动缝合步骤包括以下几个步骤:
(1)利用运动状态机指导不同类型运动数据之间的连接方法,不同类型之间的运动片断进行连接时,采用运动状态机来指导不同类型运动数据之间的过渡连接;
(2)采用如下公式计算相邻两段运动片断进行缝合时的过渡时间:
T trans = ( t e m 1 - t s m 1 ) + ( t e m 2 - t s m 2 ) 2
Figure C2006100533960003C3
Figure C2006100533960003C4
Figure C2006100533960003C5
分别表示运动片断m1和m2的起始和结束时间;
(3)采用单调递减融合函数α=0.5cos(βπ)+0.5用来在过渡时间内对两个运动片断进行融合,参数β在0到1之间线性变化,得到相应的加权参数α的取值。
CNB2006100533961A 2006-09-14 2006-09-14 基于运动脚本的三维人体动画自动生成方法 Expired - Fee Related CN100428281C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006100533961A CN100428281C (zh) 2006-09-14 2006-09-14 基于运动脚本的三维人体动画自动生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100533961A CN100428281C (zh) 2006-09-14 2006-09-14 基于运动脚本的三维人体动画自动生成方法

Publications (2)

Publication Number Publication Date
CN1996395A CN1996395A (zh) 2007-07-11
CN100428281C true CN100428281C (zh) 2008-10-22

Family

ID=38251470

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100533961A Expired - Fee Related CN100428281C (zh) 2006-09-14 2006-09-14 基于运动脚本的三维人体动画自动生成方法

Country Status (1)

Country Link
CN (1) CN100428281C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018050001A1 (zh) * 2016-09-14 2018-03-22 厦门幻世网络科技有限公司 一种用于生成动画数据的方法和装置

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101515373B (zh) * 2009-03-26 2011-01-19 浙江大学 竞技性交互式动画生成方法
CN101840586B (zh) * 2010-04-02 2012-04-11 中国科学院计算技术研究所 虚拟人运动规划的方法及其系统
CN102136154B (zh) * 2010-11-18 2012-12-12 彭浩明 一种动漫制作方法及装置
CN102117179A (zh) * 2010-12-31 2011-07-06 杭州乐港科技有限公司 一种通过鼠标单键控制角色跳跃、移动的方法
CN102222425A (zh) * 2011-07-15 2011-10-19 西安电子科技大学 3d可视应急预案自动演练系统和实现方法
CN102289835A (zh) * 2011-08-30 2011-12-21 北京瑞信在线系统技术有限公司 微动画效果查看方法及装置
CN103793934B (zh) * 2014-01-21 2016-10-19 北京工业大学 基于Xml的数字皮影动画脚本文件的非线性拼接方法及装置
CN116630486B (zh) * 2023-07-19 2023-11-07 山东锋士信息技术有限公司 一种基于Unity3D渲染的半自动化动画制作方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040246255A1 (en) * 2003-06-06 2004-12-09 Tsang-Gang Lin Method for converting high level motion scripts to computer animations

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040246255A1 (en) * 2003-06-06 2004-12-09 Tsang-Gang Lin Method for converting high level motion scripts to computer animations

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
Motion Graphs. Lucas Kovar,Michael Gleicher,Frederic Pighin.ACM SIGGRAPH '02 Conference Proceedings. 2002
Motion Graphs. Lucas Kovar,Michael Gleicher,Frederic Pighin.ACM SIGGRAPH '02 Conference Proceedings. 2002 *
Motion Patches: Building Blocks for Virtual EnvironmentsAnnotated with Motion Data. Kang Hoon Lee, Myung Geol Choi, Jehee Lee.ACM Transactions on Graphics,Vol.25 No.3. 2006
Motion Patches: Building Blocks for Virtual EnvironmentsAnnotated with Motion Data. Kang Hoon Lee, Myung Geol Choi, Jehee Lee.ACM Transactions on Graphics,Vol.25 No.3. 2006 *
Planning Biped Locomotion Using Motion Capture Data andProbabilistic Roadmaps. Min Gyu Choi,Jehee Lee,Sung Yong Shin.ACM Transactions on Graphics,Vol.22 No.2. 2003
Planning Biped Locomotion Using Motion Capture Data andProbabilistic Roadmaps. Min Gyu Choi,Jehee Lee,Sung Yong Shin.ACM Transactions on Graphics,Vol.22 No.2. 2003 *
多角色与虚拟场景的运动融合. 罗忠祥,庄越挺等.软件学报,第14卷第3期. 2003
多角色与虚拟场景的运动融合. 罗忠祥,庄越挺等.软件学报,第14卷第3期. 2003 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018050001A1 (zh) * 2016-09-14 2018-03-22 厦门幻世网络科技有限公司 一种用于生成动画数据的方法和装置

Also Published As

Publication number Publication date
CN1996395A (zh) 2007-07-11

Similar Documents

Publication Publication Date Title
CN100428281C (zh) 基于运动脚本的三维人体动画自动生成方法
Sung et al. Fast and accurate goal-directed motion synthesis for crowds
US8271962B2 (en) Scripted interactive screen media
US6011562A (en) Method and system employing an NLE to create and modify 3D animations by mixing and compositing animation data
Pettré et al. Real‐time navigating crowds: scalable simulation and rendering
Waser et al. World lines
US5731821A (en) Computer user interface for step-driven character animation
Bares et al. Virtual 3D camera composition from frame constraints
KR102294134B1 (ko) 하이브리드 슬라이드-캔버스 프리젠테이션을 합성하기 위한 저작 도구
CN102077202A (zh) 分析图模型
US20210392278A1 (en) System for automatic video reframing
Cantrell et al. Modeling the environment: techniques and tools for the 3D illustration of dynamic landscapes
EP1640920A1 (en) Process animation automatic generation method and system
CN108108194A (zh) 用户界面编辑方法以及用户界面编辑器
McCrae et al. Sketch-based path design
Deng et al. eFASE: expressive facial animation synthesis and editing with phoneme-isomap controls
Jiang et al. Camera keyframing with style and control
CN114359501A (zh) 可配置3d可视化平台及场景搭建方法
US20080165189A1 (en) Method and system for automatically generating process animations
US9396574B2 (en) Choreography of animated crowds
CN102292749A (zh) 用于确定将两个干扰对象分离的平移向量的系统、方法和计算机程序产品
CN111930997A (zh) 一种智能生成故事线可视化的系统和方法
Jovane et al. Topology-aware camera control for real-time applications
Soga et al. Motion description and composing system for classic ballet animation on the Web
Gouvatsos 3D storyboarding for modern animation.

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081022

Termination date: 20120914