面向异构骨架的动画角色运动融合研究.pdf_第1页
面向异构骨架的动画角色运动融合研究.pdf_第2页
面向异构骨架的动画角色运动融合研究.pdf_第3页
面向异构骨架的动画角色运动融合研究.pdf_第4页
面向异构骨架的动画角色运动融合研究.pdf_第5页
已阅读5页,还剩49页未读 继续免费阅读

面向异构骨架的动画角色运动融合研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

合肥工业大学 硕士学位论文 面向异构骨架的动画角色运动融合研究 姓名:王玉培 申请学位级别:硕士 专业:计算机应用技术 指导教师:郑利平 2011-04 面向异构骨架的动画角色运动融合研究面向异构骨架的动画角色运动融合研究 摘摘 要要 传统运动融合仅处理相同角色的运动数据,已有运动数据库无法得到充分 复用。为了突破动画角色的骨架结构限制,合成更加丰富多样的运动数据,提 出一种面向异构骨架的角色运动融合方法。归纳总结异构骨架运动数据的差异 和特征,引入异构骨架运动重定向技术,建立一套完整的运动融合方案,最后 在此基础上实现了动画角色运动合成。 本文的研究工作主要包括以下几个方面: (1) 提出一种基于关键姿态映射的运动重定向方法。针对原始运动数据的 高维特性,采用主成分分析(pca, principal component analysis)方法对 运动数据进行降维,获取运动序列的主要特征,并采用姿态聚类法 (clustering)提取运动的关键姿态,通过源角色与目标角色骨架的映射 关系,实现目标角色关键姿态的自动生成,最后通过多元插值技术重 构运动序列。 (2) 探索基于动态时间扭曲(dtw, dynamic time warping)的角色运动融合 方法。以四元数形式表示运动数据,在此基础上定义相似帧的计算方 法,构造时间扭曲曲线,变形运动序列;通过四元数球面插值实现运 动局部姿态的融合,并重构根关节运动轨迹,合成角色在世界坐标下 的运动;最后,设计了一种基于反向运动学和插值技术的运动交互编 辑方式,实现运动片段的快速修正。实验结果表明,该算法具有良好 的交互性和较好的视觉效果。 (3) 以上述工作为基础,设计了运动融合原型系统。通过对骨骼动画角色 的研究与分析,定义了角色骨架层次及运动序列的数据结构,在此基 础上实现了各个相关模块,完成骨骼动画文件的解析、运动数据的导 出导入及运动的实时交互编辑等。 关键词:关键词:运动融合;异构骨架;动画角色;运动重定向 基金项目:国家自然科学基金(61070124),中央高校基本科研业务费专项基金 资助(2010hgzy0001) research on motion blending oriented to heterogeneous skeletons of animation characters abstract traditional motion blending methods can only process motion data of the homogeneous characters, which make existing motion database can not be reused fully. in order to break through the limitation of skeleton structure of characters and synthesize diverse motion data, a new motion blending method oriented to heterogeneous skeletons is proposed. based on the summary of the differences and characteristics of motion data, motion retargeting technique for heterogeneous skeletons is introduced, and then a complete solution to motion blending in heterogeneous skeletons is established, at last motion synthesis of animation characters is achieved. the main work of this dissertation is listed as follow: (1) a method of motion retargeting based on key-postures mapping is put forward. with consideration of the characteristics of high-dimensions of original motion data, principal component analysis is applied to reduce the dimensions and obtain the main features of motion sequence. posture clustering is applied to extract key-postures of motion sequence. according to the mapping relation between the original skeleton and target skeleton, the key-postures of target character are built automatically. at last, motion sequence is reconstructed by multivariate interpolation method. (2) a method of motion blending based on dynamic time warping(dtw) is explored. motion data is represented by quaternion. on this basis, a method of calculating similar frames is defined, and a curve for time warping is constructed to warp motion sequence. local posture blending is achieved by quaternion spherical interpolation, and the trajectory of root joint is reconstructed, then the character motion under world coordinate is synthesized. finally, a new method of motion editing based on inverse kinematics and interpolation is established, in order that motion clip can be modified and corrected fast. the experiments results demonstrate the excellent interaction and satisfactory vision effect of this algorithm. (3) on the basis of the above work, a prototype system of motion blending is implemented. by analysis of animation characters, skeleton frames and data structure of motion sequence are defined. then some related functional modules are achieved, including skeleton animation files parsing, motion data exporting and importing, and real-time interactive motion editing. keywords: motion blending; heterogeneous skeleton; animation character; motion retargeting 图图 表表 目目 录录 图 2-1 人体骨架模型示意图.8 图 2-2 跑步运动序列9 图 2-3 异构骨架运动融合总体框架11 图 3-1 运动重定向算法流程图 13 图 3-2 关键姿态集合.16 图 3-3 人体骨架与恐龙骨架之间的关节对应关系 .19 图 3-4 对齐初始姿态20 图 3-5 运动数据后处理 .21 图 3-6 采集的人体运动序列.22 图 3-7 运动序列对应的特征值大小.22 图 3-8 运动重定向的目标角色.22 图 3-9 运动重定向后的若干帧姿态.23 图 3-10 不同角色左小腿运动轨迹对比.24 图 4-1 运动序列时间扭曲示意图25 图 4-2 四元数间距示意图.26 图 4-3 路径规则示意图 .27 图 4-4 路径优化示意图 .28 图 4-5 下一个可选单元格(l=4).28 图 4-6 融合运动路径29 图 4-7 四元数混合示意图.29 图 4-8 重构根关节运动轨迹.30 图 4-9 正向与反向运动学示意图31 图 4-10 反向运动学解析法示意图.32 图 4-11 ccd 算法的一次迭代过程33 图 4-12 左脚运动的失真及修正 33 图 4-13 恐龙的行走运动序列.34 图 4-14 帧间距的灰度图表示及时间扭曲曲线 34 图 4-15 运动融合并修正 35 图 5-1 系统结构图36 图 5-2 系统运行界面37 图 5-3 运动的骨架序列显示.38 图 5-4 运动融合实例一 .38 图 5-5 运动融合实例二 .39 表 1-1 不同运动捕捉技术的比较3 独独 创创 性性 声声 明明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成 果。据我所知,除了文中特别加以标志和致谢的地方外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得 合肥工业大学 或其他教育机构的学位或证书 而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确 的说明并表示谢意。 学位论文作者签字:王玉培 签字日期:2011 年 4 月 20 日 学位论文版权使用授权书学位论文版权使用授权书 本学位论文作者完全了解 合肥工业大学 有关保留、使用学位论文的规定,有权 保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅或借阅。本人 授权 合肥工业大学 可以将学位论文的全部或部分论文内容编入有关数据库进行检 索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 (保密的学位论文在解密后适用本授权书) 学位论文作者签名:王玉培 导师签名: 郑利平 签字日期:2011 年 4 月 20 日 签字日期:2011 年 4 月 20 日 学位论文作者毕业后去向: 工作单位: 电话: 通讯地址: 邮编: 1 第一章 绪第一章 绪 论论 本章主要介绍本文的研究背景及其相关研究现状。首先简要介绍了计算机 动画的应用背景;其次介绍国内外在运动生成技术、运动编辑及运动重用方面 的研究状况及相关成果;最后给出本文的研究内容和全文的组织结构。 1.1 研究背景研究背景 在近十几年里,作为计算机图形学与计算机技术结合产物的计算机动画得 到了突飞猛进的发展,在影视制作、娱乐互动、广告传媒、训练仿真及医学研 究等诸多领域有着广泛的应用,已成为一个年产值数以千亿美元的行业,被称 之为 21 世纪最具希望的朝阳产业1。利用计算机动画技术,不仅能够制作如电 影指环王中气势磅礴的士兵战争场面,也可制作泰坦尼克号中巨轮撞 冰山、乘客逃生等高难度、危险的场景。除了在影视行业占有举足轻重的地位 外,计算机动画在游戏娱乐、虚拟现实等领域更是发挥了不可忽视的作用。 角色动画是计算机动画的核心,是其中发展最快的一个方向。角色动画就 是特指拟人动画。在角色动画制作过程中,包括角色的造型、材质纹理设置、 运动调整以及最后渲染等。其中,角色运动调整和造型是角色动画中的关键和 难点2。当前有两种角色动画方式:顶点动画和骨骼动画。顶点动画中,每帧 动画其实是角色特定姿态的一个“快照” ,通过帧之间插值的方式实现平滑的动 画效果;骨骼动画是一种基于骨架结构的角色动画,源于 1988 年 thalmann 的 论文3,将网格顶点关联到骨架结构,网格变形由骨架的运动带动。骨骼动画 比顶点动画对硬件的处理性能要求更高,但相比之下它也具有更多的优点:骨 骼动画创建容易、快捷;可以对骨骼动画进行编辑操作,如混合、重定向等; 可与环境进行交互,提高对动画的控制力。基于以上优点,骨骼动画成为当前 最流行的一种角色动画方式。本文主要关注于角色骨骼动画,所以在后续讨论 中一般均指三维角色骨骼动画。 角色动画制作是艺术创作的过程,涉及到动画设计者的主观意识以及对现 实世界的抽象思维,需要大量的手工操作。目前,动画制作仍是一个劳动密集 型的行业。这种效率十分低下的动画制作流程严重影响着整个行业的发展,不 仅使得动画制作成本异常昂贵,而且造成获取新的角色动画十分困难4。所以, 如何有效的对已有运动数据进行编辑,提高运动数据的复用率显得尤为重要。 综上所述,研究角色运动序列内在机理,提高运动数据的复用率是计算机动画 发展的必然选择。 1.2 问题的提出问题的提出 作为计算机动画的核心,角色动画的研究显得十分有必要。当前角色动画 2 方面存在很多亟待解决的问题:制作效率低下,用户手动操作,已有运动数据 难以复用。针对以上问题国内外众多学者做出了不少研究与探索,并取得了一 定的成果。 当前角色动画的研究热点集中在运动数据的复用上,通过建立庞大的运动 数据库,研究运动重定向、运动合成、运动融合等。运动数据复用的一个主要 方式是运动融合,通过多个已有运动数据加权混合生成新的运动数据,且能够 继承源运动数据的特征,极大提升运动的多样性。由于人体运动是最熟悉且是 用处最广泛的角色动画,所以传统运动融合的研究基本上针对人体运动。虽然 人有高矮胖瘦之分,但其骨架结构是一致的,属于同构骨架的运动融合,且融 合生成的运动仍然保留人体运动特征。在实际应用中,可能需要更加随意的运 动融合,以生成灵活多变的角色运动,如某一角色在保持人体运动的同时,具 备蛇的扭动特征,即需要不同类型角色的运动融合。 为了拓宽运动融合的广度,使得生成的运动序列更加多样化,本文提出一 种面向异构骨架的运动融合,探索并研究其中的关键问题。异构骨架的运动融 合具有更加实际的意义和重要的研究价值。首先,将运动融合由局限在人体运 动范畴内扩展到任意两足、四足角色运动,运动数据的复用程度明显提高;其 次,不同角色运动的融合能够生成丰富多样的运动序列,启迪动画设计者的创 新思维;最后,异构骨架运动融合是一种全新的角色运动数据复用思路,对它 的研究能够带动运动编辑技术的发展,促进角色动画研究领域的发展进步。 1.3 国内外研究现状国内外研究现状 1.3.1 运动生成技术 当前运动生成方法可以分为以下三类: (1) 基于关键帧插值方法 关键帧动画的思想来源于传统的手工动画制作。在早期的手工动画制作期 间,熟练的动画师设计动作的关键画面,即所谓的关键帧,然后由一般的动画 人员绘制中间的画面5。在计算机动画中,运动的关键帧还是由用户设定,计 算机根据关键帧插值得到中间帧, 计算机插值计算代替了设计中间帧的动画师。 通过插值参数的设置,可以生成各种效果的运动,保持了动画设计的主观性。 关键帧技术是计算机动画中最基本并且运用最广泛、最成熟的方法。 关键帧动画在一定程度上减轻了动画师绘制中间帧的负担,只需设定若干 个关键帧即可生成动画,提高了动画制作效率。但是,需要有经验的动画师设 定关键帧,其制作过程仍然比较低下,需要很大的工作量和成本。 (2) 物理模拟的方法 首先,建立动画角色的物理学模型,然后施加外力驱动角色的物理模型, 生成运动。这种方法往往将生物运动学和动力学约束相结合,在生成具有一定 3 目标导向的运动方面比较好,比如行走和跑步运动的生成6。 基于物理模拟的一个主要优点是能够响应用户的交互行为。例如,在视频 游戏中,动画师不可能预知游戏玩家会有怎样的行为,就无法为每一种情况设 计一套动作。基于物理模拟的方法可以通过实时计算实现运动的生成7。 物理模拟方法存在一定的缺陷。生物是一个复杂的动力学系统,建立一个 完善的物理学模型是一个很大挑战。由于实际的需要,当前人体物理学模型研 究较多,由于其与机器人学的研究较为相近,目前发展较快,取得了不少成果 8910。物理学模拟求解速度慢,实际应用中与其它几种运动生成技术相结合, 优势互补。潘志庚11等人将运动捕捉技术与物理模拟方法相结合,提出一种人 体运动中受扰的平衡保持算法,真实地模拟出虚拟人在运动过程中恢复平衡的 反应动作。 (3) 基于运动捕捉技术的运动生成方法 运动捕捉(motion capture)技术起源于上个世纪 70 年代,目前已经被广泛 用于三维动画制作领域12。首先采集表演者的真实运动数据,其次对运动数据 进行分析处理,最后将得到的数据赋予到动画角色之上。一般来说,运动捕捉 的对象是人体运动,将特殊的标记紧贴在人体的固定关节之上,然后利用特定 的硬件设备采集这些标记的空间位置,从而生成一系列运动数据。 从原理上分析,常用的运动捕捉设备可分为以下四类:电磁式、光学式、 声学式和惯性式13。不同原理的设备各有其优缺点,一般可从几个方面进行评 价:定位精度;使用方面程度;捕捉范围大小;实时性;抗干扰性;多目标捕 捉能力;以及与相应领域专业分析软件的兼容程度。表 1-1 列出了不同捕捉技 术优缺点。 表 1-1 不同运动捕捉技术的比较 捕捉技术 成本 精度 捕捉范围 环境要求和灵敏度 电磁式 较低 高 对表演者的动作有一定限 制约束,对于比较剧烈的 表演和运动不适用 环境要求苛刻,附近不能有金 属,否则会造成电磁场发生畸 变,影响捕捉数据的精度。速 度快,实时性较好 光学式 高 高 活动范围大,无电缆长度 限制,使用方便 对表演场地的光线、反射有一 定的要求。实时性好 声学式 较低 低 表演者和信号接收装置之 间不能有较大的遮挡物体 受噪声和声波反射等的干扰较 大。实时性较差 惯性式 高 较高 活动范围受到电缆或无线 信号覆盖区间的影响 不受环境影响,但设备使用前 需校正。实时性好 4 1.3.2 运动重定向 运动重定向的主要研究内容是如何将原始角色的运动映射到目标角色之 上,在保持源运动特征的同时符合目标角色自身结构的特点。 gleicher 在文献14中首次提出动画角色运动重定向的概念, 定义时空约束 描述运动序列,并采用全局优化算法求解。该方法仅适用于同构骨架角色,无 法处理不同角色之间的运动重定向。monzani15等人针对具有不同骨架结构的 角色提出借助中间骨架模型的重定向方法。 通过中间骨架映射降低了计算误差, 重定向后的运动更加逼真、自然。但是,中间骨架模型的构建难以形式化,主 观性很强。 choi16等人根据实际需要提出了一种实时运动重定向算法。由于运动捕捉 设备获取的运动数据采样率高,通过源运动序列每一帧姿态的空间位置强制约 束目标角色的运动姿态,并采用逆向率控制(inverse rate control)技术,约束 目标角色相邻帧之间的关节角度差异最小。 由于运动捕捉数据本身具有的特征, 目标角色的关节角度变化具有连续性。同时,因其每次仅计算一帧的优化解, 所以可满足实时重定向的要求。由于采用源角色运动序列中的末端效应器强制 约束目标角色姿态,势必会造成目标角色运动不连续的现象,影响重定向运动 的品质。文献17针对 choi 等人提出的重定向算法作了改进,将每一帧中源角 色关节的空间位置作为目标角色骨架姿态的非强制约束,根据源角色骨架姿态 的位置指引目标角色姿态,通过调节关节的权重值,实现运动的平滑过渡。但 由于该算法无法保证目标角色关节的强制约束,可能会出现在能达到的时候目 标角色关节也无法达到源角色关节位置的情况。 raibert18等人另辟蹊径,提出一种基于约束求解的运动重定向方法。动画 师预先设定运动学及动力学约束,该方法可将运动捕捉设备获取的数据重定向 到不同角色之上,生成可以理解的运动。与传统的基于时空约束的优化方法相 比,该方法在卡尔曼滤波器的基础上,将问题转化为约束的状态求解问题。通 过构造滤波器,持续扫描输入的运动帧,计算输出重定向的运动序列。动画师 通过调节滤波器参数,可输出不同风格的运动序列,增强了系统的交互性。 为了加快动画制作效率,同时又能兼顾动画师艺术创作的需求,学者们在 交互式的运功重定向方面做了许多研究与探索。park19等人提出了一种基于样 例的交互式运动克隆方法,辅助动画师快速生成新角色的运动雏形。通过提供 运动样本,该方法能够自动提取有代表性的关键姿态,然后动画师设定目标角 色对应的关键姿态,通过插值技术完成运动重定向。hsieh20等人设计了一个 交互式的运动重定向系统,根据关节之间的对应关系及初始姿态实现具有不同 骨架结构的角色之间的运动重定向。 国内的运动重定向研究尚处于初步探索阶段。杨熙年21等人采用反向运动 学实现了运动捕捉数据的实时运动重定向。 根据源角色与目标角色的身材比例, 5 推算出目标角色末端效应器的位置,利用反向运动学求得目标角色各关节的旋 转角度。该算法仅适用于具有相似骨架的角色。浙江大学的罗忠祥22等人提出 了一种基于时空约束的运动编辑和重定向方法,角色能够根据复杂场景生成协 调多样的动画。王兆其23等人采用偏移映射构建目标角色末端效应器的轨迹, 并利用卡尔曼滤波方法求解约束,实时生成与源角色相似的运动序列。该方法 能够将源运动特征很好地保留下来,但是无法保证生成的运动具有连续性及平 滑过渡的特征。 1.3.3 运动融合 运动融合的本质是对多个运动序列加权混合,通过多目标插值生成新的运 动序列,其关键问题是合理地实现多个运动序列之间的时间配准2425。 从采用技术的角度,当前运动融合方法主要可分为以下三类: (1) 信号处理方法 此类方法将运动序列视为时序信号,从这个角度处理运动融合。unuma26 将运动数据映射到频域空间,在频域空间采用傅里叶变换,实现运动的插值, 通过滤波、重采样等技术实现运动序列的融合。rose27采用时空优化方法,建 立动力学约束,结合反向运动学,求解最小化关节的转矩,实现多个运动之间 的融合与平滑过渡。bruderlin28采用多分辨率运动滤波、时间变形、多目标运 动插值、偏移映射等信号处理方法对运动序列进行融合,生成丰富多样的运动。 (2) 参数化实例运动方法 该方法的主要思想是首先采用权值计算函数参数化运动序列,在此基础上 对运动序列融合、平滑过渡等。文献29采用小波分析将运动序列参数化,使 得动画师对运动有更加直观的认识,便于定量调节运动参数;再使用多分辨率 融合与时间变形等技术生成平滑的运动序列。文献30将普通的人体运动参数 化,定义以下运动属性描述运动序列:运动轨迹、运动速度、旋转角度等。通 过对参数的加权混合生成新的运动,并根据姿态相似度对齐运动序列使得运动 更加平滑、自然。该方法易于控制,可实时生成用户所需的运动序列。文献31 以海量运动数据库为样本,构建了一个参数化的运动空间,进而计算运动权值, 并通过定义运动距离度量函数,检索距离“最近”的运动序列进行融合。 (3) 约束求解法 基于约束求解法的基本思想是根据源运动序列的某些特征建立约束,在运 动融合过程中,对其约束进行加权求解,生成运动序列。角色的约束条件主要 包括时空约束、物理真实感约束、能量约束、几何约束等32。witkin33最早提 出了时空约束的运动融合方法, 采用目标最优化求解满足条件的最优运动序列。 时空约束法通常以能量消耗最小为最优准则。gleicher 提出一种可以在满足用 户需求的同时保留原有运动特征的运动融合方法 34。为了处理复杂的角色模 6 型,anthony35等人通过分析约束目标方程组的一阶导数来进行运动融合。这 种方法既兼顾了物理上的真实性,同时由于其快速迭代优化求解的特点,可以 处理复杂的模型。文献36提出一种基于物理约束的角色运动生成方法,引入 了一种称之为非线性反向最优化算法,计算出最优化参数,然后应用时空优化 算法定义不同风格的运动,实现运动序列的融合。 基于信号处理的运动融合方法的优点在于快速高效, 支持实时的交互编辑; 精度较高,运动特征能够很好的保留下来;不受运动类型的限制,各种类型的 运动都可采用相似的方法处理。但是信号处理方法不能直观地描述运动特征, 因此不便于理解,难以对其编辑要求给以直接的支持;同时,该方法通常只对 运动数据的单个自由度操作,在整体运动协调方面效果不是很好。参数化实例 运动方法的优点在于直观,将运动参数化为若干个可以理解的属性,用户只需 调节其参数即可实现运动的编辑。但是运动参数的设定以及属性的量化问题目 前还没有一个统一的标准,而且,对于不同类型的运动其权值计算函数的选择 也会有所不同。约束求解法的优点在于生成的运动不仅能够保证在物理上的正 确性,而且能够处理各种复杂的动画角色。缺点在于空间约束的建立及求解比 较困难,而且计算量很大,效率比较低37。 为了更大程度的丰富运动数据库,国内外研究学者在肢体部件级的运动融 合方面做了些探索。文献38根据拓扑结构将人体预分割为若干部分,将不同 的肢体部件组合生成新的运动。但是,这种基于肢体部件组合方式生成的运动 可能有悖于人体运动规律。为了区分失真运动,根据人体运动特征定义规则库, 用以评判生成的运动是否合理。文献39提出了一种任意两足、四足动物肢体 部件级的运动融合方法,更进一步提高了运动数据的复用率,丰富运动数据的 多样性。文献40基于自定义角色部件库提出一种全新的动画角色制作方案。 系统以独立于骨架形态的形式记录运动数据,角色被完全设定好之后,运动数 据被赋予到角色骨架上,并使用内置的反向运动学约束生成目标姿态。该方法 本质上是部件库中角色肢体运动融合,所以,合理的角色部件语义的定义及部 件库的丰富性是该方法优劣的关键所在。 1.4 课题来源课题来源 本论文主要得到了国家自然科学基金项目“面向样例创新的动画角色重构 研究” (61070124)以及上海久之游信息技术公司高校合作项目“角色融合生成 技术”的共同资助。 1.5 论文内容及组织结构论文内容及组织结构 1.5.1 研究内容 为了更大限度的提高运动数据复用率,本文在人体运动融合的基础上,提 7 出了一种异构骨架的运动融合,并设计了一套完整的运动融合方案,将运动融 合扩展到任意两足、四足动画角色。 本文主要围绕异构骨架运动融合过程中的关键技术展开了探索, 具体如下: (1) 使用运动重定向技术实现不同角色之间的运动映射,将异构骨架之间 的运动融合问题转化为同一角色不同运动序列融合的问题。为了实现不同拓扑 结构角色的运动重定向,提出了一种基于关键姿态映射的运动重定向方法,在 保留源运动序列主要特征的基础上,保证重定向运动的平滑连续性。 (2) 对于相同角色的不同运动序列,提出一种基于动态时间扭曲的融合方 法。定义角色姿态距离度量标准,寻找运动序列的相似帧,构造时间扭曲曲线, 通过四元数混合实现角色局部姿态的融合,并重构根关节运动轨迹,合成最终 的融合运动序列。 (3) 修正运动序列,消除失真现象,使得运动序列符合物理学规律;探索 一种运动平滑机制,在尽可能小的改变运动序列的基础上使其更加平滑、自然, 以满足一定的视觉要求。 1.5.2 本文的组织结构 本文分为六章: 第一章主要介绍了相关的背景知识,以及相关内容的国内外研究现状,并 介绍论文的大体构架。 第二章首先介绍了角色骨架结构表示方法,并围绕角色骨架层次结构模型 建立了运动数据的四元数表示方法,然后介绍本文提出的面向异构骨架的运动 融合方法的研究思路,最后提出了论文的关键技术,并对其进行了分析。 第三章主要围绕如何实现不同拓扑结构角色的运动重定向,对于高维运动 数据,采用主成分分析方法对其降维,为了提取运动序列关键姿态,引入一种 自适应姿态聚类法,探讨运动权值计算方法及运动合成,最后介绍了基于约束 的运动失真的消除方法。 第四章借鉴人体运动融合思想,分析建立一种更加通用、支持任意两足、 四足动画角色的运动融合算法,并在此基础上建立角色姿态间距度量标准,采 用动态时间扭曲算法对齐相似帧,使得不同频率的运动序列能够同步,通过四 元数混合算法实现运动序列中对应姿态的融合,最后介绍了基于反向运动学的 运动编辑方法,消除运动失真现象。 第五章在前三章的理论基础上,进行了原型系统的设计与实现,介绍了系 统的框架结构、各个功能模块以及基本界面功能。 第六章总结概括本论文的创新点,并对今后需着重解决的问题和扩展前景 做了进一步的展望。 8 第二章 基于四元数表达的异构骨架运动融合框架第二章 基于四元数表达的异构骨架运动融合框架 基于骨架层次结构模型的运动数据格式简洁,且便于处理。考虑到四元数 的性质及其优点,本文采用四元数形式表达层次关节之间的旋转信息。分析、 总结传统运动融合思路,设计了一种面向异构骨架的动画角色运动融合总体框 架,并提出其中涉及到的关键技术。 2.1 运动数据表达运动数据表达 运动数据记录的是角色在一个连续时间段的空间位置,所以角色模型的建 立方式直接影响到运动数据的表达形式。基于层次骨架模型的动画角色建立其 虚拟的骨架,骨架的运动带动角色姿态变化产生动画,因此运动数据只需记录 骨架的空间位置。 2.1.1 骨架层次结构模型 运动数据实际上是角色关节点的空间信息集合,采用三维坐标的方式描述 运动直观、易于理解,但是由于其是一种非层次化方法,运动描述中各个关节 点的位置参数相互独立,其中某一个关节点的变动不会影响其它关节,显然与 现实中角色关节运动变化关系不符,而且,在运动编辑过程中很容易违背骨骼 长度不变的约束,导致角色运动失真。 hips chest neck head rightcollar rightshoulder rightelbow rightwrist leftcollar leftshoulder leftelbow leftwrist lefthip leftknee leftankle righthip rightknee rightankle 图 2-1 人体骨架模型示意图 为了克服非层次化运动描述的不足之处,本文采用一种层次化的角色关节 运动描述。该方法将角色骨架看成一颗树结构,骨架的根关节作为树的根,角 色关节抽象为点,各个关节点之间由骨架相互连接,构成一个有层次关系的链 9 状结构,图 2-1 所示为人体骨架层次化结构模型示意图。在这样一个树状结构 中,某个关节的运动都会影响其所有子关节的空间位置,与真实的骨架关系相 符,并可在此基础上快速实现运动学和动力学方程的建立、求解,大大简化了 运动编辑中的数据处理。 为了层次化地表示骨架结构,每个节点包含相对父节点的位移和节点自身 的朝向。节点位移指定关节点在父节点的局部坐标系下的位置,将骨骼视为刚 体,其长度不变,所以关节相对父关节的位移量保持不变;朝向记录该节点的 局部坐标系在父节点局部坐标系下的方位变化,其等价于一个旋转矩阵。由于 骨骼长度保持不变,实际上只需记录各个关节朝向的变化及角色根关节在世界 坐标系下的位移即可。运动序列可看成角色骨架姿态的集合,图 2-2 所示为人 体跑步运动序列的关节姿态集合表示。所以,一个有n帧的运动序列m可表示 为: (1),(2),( )mn= ? (2.1) 其中,( ),1iin 表示运动序列第i帧的姿态。对于一个有m个关节的角 色,其运动姿态( ) i表示为: 1 ( ) ( ),( ),( ) m ip i q iqi=? (2.2) 其中, 3 ( )p ir表示第 i帧根关节在世界坐标系的位置, 3 ( )(1) j q isjm表 示每个关节相对父关节的旋转信息。旋转表示方法主要有:欧拉角表示法、矩 阵表示法和四元数表示法,其中四元数相对其它两种表示方法有很多的优点, 所以本文采用四元数表示角色关节的旋转。 图 2-2 跑步运动序列 2.1.2 四元数及其优点 四元数的概念最早是由hamilton于1843年提出,将复平面的概念推广到 四维空间中。近十多年来,由于机器人学和计算机图形学等领域的快速发展, 四元数在机器人路径规划、计算机动画等方面得到了广泛的应用。 设swr=, 3 ( , , )vx y zr= ? ,四元数 4 qr定义为 , , , , qs vw x y z= ? ,其中 s、v ? 分别表示四元数q的标量部分和矢量部分。四元数q的模长q定义为 2 22222 qsvwxyz=+=+ ? 。如果1q =,则称q为单位四元数。记所有单位 四元数组成的集合为 3 s,则 3 s为四维空间上的单位超球面(hypersphere)41。 10 在涉及运动编辑与合成算法中,研究者引入了四元数的概念。之所以不采 用欧拉角或者旋转矩阵表示物体旋转,主要是因为相比较而言四元数表示旋转 有如下的优点: (1) 欧拉角表达方式不唯一,受旋转次序的影响;四元数对旋转的表达方 式只有两种,但它们仅有正负之分,可以通过限制为正获得唯一的表 达方式。 (2) 使用矩阵表示旋转,至少需要9个分量,而使用四元数表述旋转只需 要4个分量,运动序列包含大量的旋转信息,使用四元数可以大大减 少存储空间。 (3) 在对欧拉角插值中,等量欧拉角的变化不能引起等量的选择变化,从 而造成运动的抖动、不连续的现象;旋转矩阵的插值计算量大、过程 复杂,并不是各个分量的简单插值;而四元数的球面线性插值算法可 以实现平滑的效果,且计算简单,易于理解。 (4) 在欧拉角表示中,如果第二次的旋转角度为90 ? ,则造成第三次的旋 转轴与第一次的相同,导致其自由度的丧失,被称之为“万向节死锁” 现象42;而使用四元数表示旋转则不会出现这种现象。 2.2 异构骨架运动融合思路异构骨架运动融合思路 传统运动融合针对同一角色的运动序列,不同运动序列的每帧姿态记录的 是同一结构骨架的空间信息。在同一标准的基础上,计算每帧姿态的间距,根 据姿态距离最近的原则对齐两个源运动序列,然后通过混合对应的姿态帧合成 最终运动序列。 然而,在研究异构骨架的融合过程中,两个源运动数据记录的是不同结构 骨架的空间信息,即运动数据的参照对象是不同的,所以无法按照传统运动融 合的思路进行。但是,进行运动融合必须要解决运动序列的对齐问题,找到合 理的对应姿态帧是决定运动融合效果优劣的关键所在。所以,在进行异构骨架 运动融合过程中,首先要解决的是运动数据在不同骨架之间的转换。 按照这样的思路,异构骨架的运动融合可以分为两个步骤进行:运动数据 的转换,解决运动数据的参照骨架不一致的问题;同一角色的运动数据的融合。 第一步骤即为运动重定向,为了实现不同骨架结构的角色运动重定向,本文提 出一种基于关键姿态映射的运动重定向,将在第三章详细叙述;第二步骤借鉴 传统的人体运动融合方法思想,但是有所改进,因为本文的运动融合是针对任 意两足、四足动画角色,其运动融合方法需要有更加普遍的适用性,本文提出 一种基于动态时间扭曲的运动融合,将在第四章详细叙述。异构骨架运动融合 总体框架如图2-3所示。 11 异构骨架 运动重定向 异构骨架 运动重定向 同一角色 运动融合 同一角色 运动融合 后处理 运动修正 后处理 运动修正 将人体运动与恐龙运动融合 融合生成的恐龙运动 图 2-3 异构骨架运动融合总体框架 异构骨架的运动差异性较大,而且不同角色需要满足的约束条件不同,将 其融合可能会造成运动不满足角色应具有的约束条件,导致合成的运动失真。 为了尽量避免这种情况,对融合的运动序列加以限制,要求输入的两个源运动 序列的类型大致相同,运动风格差异不大,如不同角色的跑步、行走与跳跃动 作的混合。这种限制是必要且合理的,如果两个运动序列差别很大,或者风格 完全不同,它们之间就没有融合的必要,合成的运动序列无实际意义。即使限 定了输入的源运动序列,融合之后依然可能会出现失真现象。所以,运动融合 之后需进行后处理,对运动序列进行编辑,修正部分运动片段,消除运动失真。 在后处理阶段,本文采用基于反向运动学的交互式运动编辑,并通过插值的方 式提高编辑效率。通过以上的一整套方案,可初步实现异构骨架的运动融合。 2.3 关键技术关键技术 研究面向异构骨架的运动融合方法,涉及如下三个方面的关键技术: (1) 异构骨架的运动重定向方法 如上所述,由于异构骨架运动融合处理的运动数据参照骨架不一致,为了 实现合理的运动融合,必须建立不同骨架运动数据之间的映射关系。所以研究 异构骨架之间的运动重定向是进行异构骨架运动融合的基础,重定向后的运动 序列作为下一阶段运动融合的输入,因此运动重定向算法的好坏直接影响最后 融合运动的效果。 (2) 任意两足、四足动画角色的运动序列融合方法 运动重定向解决了骨架结构不一致问题,其输出作为运动融合的输入。以 往运动融合的研究仅是针对人体运动,本文作为异构骨架运动融合的探索和研 究,运动融合对象扩展至任意两足、四足动画角色,所以面向任意两足、四足 动画角色的运动融合方法的研究是本文的一个至关重要的关键技术问题。 (3) 运动失真的消除方法 运动受角色自身条件与外界环境的影响,且被它们所约束,所以任何有悖 于角色生理与物理规律的运动都被认为是不合理的,称之为运动失真。正如前 12 文所述,异构骨架的运动融合包括运动重定向和同一角色多个运动序列之间的 融合,这两个过程都可能会造成运动的失真,从而影响角色动画的品质,所以 在运动数据后处理阶段消除运动失真现象非常重要。 2.4 本章小结本章小结 本章首先简要介绍了骨架层次结构模型,并阐述其优点,以及在此基础上 的角色运动数据表示,分析并总结采用四元数表示运动数据的优点;然后介绍 传统运动融合的主要思想,分析异构骨架运动融合的特点,并给出异构骨架运 动融合的总体思路;最后提出了其中涉及到的关键技术,并对其进行了分析, 从而也指出了本文的主要研究内容。 13 第三章 基于关键姿态映射的运动重定向第三章 基于关键姿态映射的运动重定向 3.1 总体思路总体思路 为了实现异构骨架之间的运动融合,本章通过运动重定向将不同角色的运 动序列进行转换映射。在文献19基础上,提出一种基于关键姿态映射的运动 重定向方法,该方法尽可能的减少了运动失真,保留了运动主要特征,并克服 了需要用户大量设定参数的缺陷,其基本流程如图3-1所示。首先对获取的原 始运动数据进行分析、预处理,通过采用主成分分析(pca)方法对运动数据降 维,提取运动的主要特征;其次采用姿态聚类提取运动序列的关键姿态,并计 算运动权值;再次根据源角色与目标角色关节之间的对应关系求解目标角色的 关键姿态,根据运动权值重构运动序列;最后修正根关节的位移并消除运动失 真,生成较为真实的重定向运动。本章以下各节将主要围绕运动分析、运动合 成以及运动失真消除进行展开。 提取关键 姿态 运动数据 预处理 计算权值 聚类分析 关节映射 目标角色 关键姿态 局部运动 合成 修正根关 节位移 源角色运动序列 目标角色运动序列 源 角 色 骨 架 目 标 角 色 骨 架 运动分析 运动合成 图 3-1 运动重定向算法流程图 3.2 运动分析运动分析 对源运动序列进行分析,通过主成分分析、姿态聚类分析提取运动序列的 关键姿态,使用离散的数据概括运动的主要特征,并对原始运动序列参数化, 寻找运动序列内部规律。 3.2.1 运动数据预处理 运动序列m由根关节的位移与各个关节的旋转表示,为了后续运动数据处 理方便,先忽略根关节在世界坐标下的位移信息,仅考虑关节的选择,即对运 动数据进行局部化处理。在运动合成的后续阶段,再对角色的运动路径重新规 划,计算根关节的位移。m表示局部化处理后的运动序列: (1),(2),( )mn= ? (3.1) 其中,( ) i表示为: 12 ( )0,( ),( ),( ) m iq i q iqi=? (3.2) 14 由于单位四元数集合 3 s是非线性的,主成分分析是线性处理方法,所以必 须将四元数映射到线性空间中,本文使用指数对数映射方式将四元数映射到三 维线性空间 3 r中。 单位四元数cos, sin 22 qn = ? ,定义如下的规则: 2n qe = ? (3.3) 根据指数对数之间的关系,显然有: 2 lnln 2 n qen = ? ? (3.4) 规定0, 2 ,单位四元数集合 3 s与三维线性空间 3 r之间存在一一对应的 关系。利用上式即可将四元数表述的运动数据线性化。线性化后的运动序列 ? m 表示为: ? (1),(2),( )mn= ? (3.5) 每个运动姿态 ?( ) i 为: ? 1 ( )0,( ),( ) m iv ivi=? (3.6) ( )(1) j v ijm表示单位四元数( )(1) j q ijm经过对数映射后所得的线性向量, 即( )ln( ) jj v iq i=。 3.2.2 运动序列主成分分析 由于运动数据记录的是链状关节的旋转信息,各个关节之间存在很大的相 关性,所以姿态向量 ? m中包含很多冗余信息。例如,当人体前后摆动臂膀时, 其脊椎关节会相应做出运动,类似的运动相关性也存在于其它关节之间。如果 直接在高维姿态空间中对运动数据进行分析,会导致失真,且数据对噪声敏感, 不能有效地发现运动数据内在的规律。因此,采用主成分分析方法43对运动数 据进行降维,在低维特征空间中对运动数据进行分析。 给定已线性化的运动序列 ? m,计算其样本的协方差矩阵 33mm c 及相应的特 征值和特征向量,根据特征值累积贡献率选取前3rm,说明 * q与q不在同一半球面上,可令qq= 。 通过指数映射 *exp( ) qqv=再将v转换为相应的四元数。参考四元数 * q定义为距 30 离 1 q、 2 q最近的四元数,它又被称之为四元数均值25。求解四元数 11 , n q qq?的 均值 * q算法如下: step 1 i q的四个分量

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论