(计算机应用技术专业论文)基于关键姿态插值的皮肤变形技术研究.pdf_第1页
(计算机应用技术专业论文)基于关键姿态插值的皮肤变形技术研究.pdf_第2页
(计算机应用技术专业论文)基于关键姿态插值的皮肤变形技术研究.pdf_第3页
(计算机应用技术专业论文)基于关键姿态插值的皮肤变形技术研究.pdf_第4页
(计算机应用技术专业论文)基于关键姿态插值的皮肤变形技术研究.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(计算机应用技术专业论文)基于关键姿态插值的皮肤变形技术研究.pdf.pdf 免费下载

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

文档简介

摘要 在三维计算机动画中,把人体作为其中的角色一直是研究人员感兴趣的目标,虽然 计算机动画在许多领域占据着越来越重要的地位,但人体动画的许多问题仍未能很好地 解决。原因就在于人体共有2 0 0 个以上的自由度,其运动非常复杂,人的形状不规则, 人的肌肉随着人体的运动而变形,人的头发、皮肤和衣服模拟起来困难,入的个性、表 情干变万化等。另外,由于人类对自身的运动非常熟悉,不协调的运动很容易被观察者 所察觉。可以说人体动画是计算机动画中最富挑战性的课题之一,而其中一个主要的挑 战就是如何快速、逼真地实现虚拟人的皮肤变形。 提出了一种基于姿态和同一性的建模方法。对于不规律的,不完全的,和量少的数 据,算法是非常健壮的。通过合并其他变形,建模了一个能表达出姿态依赖和个体差异 相互关系的模型。提出一种基于实例皮肤变形动画系统的优化方法,通过反转p s d ,能 提供更好的性能和可靠的插值。通过以一个极小值问题来描述反转过程,针对基于实例 的皮肤变形方案,本文提出了一个可以整合形状插值的统一模型。针对皮肤变形算法运 算量大的特点,提出一种适用于s i m d 架构g p u 的加速算法。关节权值可以由样本姿 态自动获取,减少了手动操作,提高了依赖于准确的关节权值的皮肤变形算法的变形质 且 亘。 关键词:皮肤变形,基于实例,计算机动画,同一性,g p u t h er e s e a r c ho fs k i n n i n gm e t h o d b a s e do nk e y - p o s ei n t e r p o l a t i o n w a n gy o n g - q i n g ( c o m p u t e ra p p l i c a t i o nt e c h n o l o g y ) d i r e c t e db yp r o f z h e n gq i u m e i ,a s s o c i a t ep r o f g o n gf a - m i n g a b s t r a c t i n3 dc o m p u t e ra n i m a t i o n , t h eh u m a nb o d ya sar o l eh a sa l w a y sb e e nt h eg o a lo f r e s e a r c h e r st h a tt h e ya r ei n t e r e s t e di n a l t h o u g ht h ec o m p u t e ra n i m a t i o ni sm o r ea n dm o r e i m p o r t a n ti nm a n ya r e a s ,b u ts om a n yp r o b l e m so fh u m a na n i m a t i o nh a ss t i l ln o tb e e na b l et o s o l v ew e l l t h em a i nr e a s o ni st h a tt h e r ea l em o r et h a n2 0 0d o f , t h em o v e m e n ti sv e r y c o m p l e x ,p e o p l e si r r e g u l a ri ns h a p e ,m u s c l ed e f o r mw h e nt h eb o d ym o v e s ,t h ed i f f i c u l t yo f s i m u l a t i n gh u m a n sh a i r , s k i na n dc l o t h i n g ,t h eh u m a np e r s o n a l i t y , e x p r e s s i o ne v e rc h a n g i n g a n ds oo n i na d d i t i o n ,s i n c et h eh u m a na r es of a m i l i a rw i t ht h e m s e l v e s ,s ou n c o o r d i n a t e d m o v e m e n tc a l lb ee a s i l yd e t e c t e db yo b s e r v e r s i tc a l lb es a i dt h a th u m a na n i m a t i o ni st h e m o s tc h a l l e n g i n gi s s u eo fc o m p u t e ra n i m a t i o n ,a n dt 1 1 a to n eo ft h em a i nc h a l l e n g e si sh o w f a s tt oa c h i e v et h er e a lh u m a n ss k i nd e f o r n l a t i o n w ed e v e l o pa p o s e - b a s e da n di d e n t i t y - b a s e dm o d e l i n gm e t h o dw h i c hi sv e r yr o b u s tt o i r r e g u l a r , i n c o m p l e t e ,a n dl e s sd a t ai s b a s e d0 1 1t h ei d e n t i t ya n dp r o f i l em o d e l i n gw a s p r o p o s e d b yi n c o r p o r a t i n g o t h e ri n f o r m a t i o n ,am o d e lw h i c hc a n e x p r e s s t h e i n t e r d e p e n d e n c eo fp o s e - d e p e n d e n td e f o r m a t i o na n di n d i v i d u a lv a r i a t i o nw a sb u i r a n e x a m p l e - b a s e ds k i nd e f o r m a t i o na n i m a t i o ns y s t e mo p t i m i z a t i o nm e t h o dw a sp r o p o s e d ,s o i n v e r s ep s dc a l lp r o v i d eb e t t e rp e r f o r m a n c ea n dr e l i a b l ei n t e r p o l a t i o n d e s c r i b i n gt h ei n v e r s e a sam i n i m u mp r o b l e m ,i nv i e wo fae x a m p l e - b a s e ds k i nd e f o r m a t i o np l a n ,w eh a v ep r o p o s e d au n i f i e dm o d e lt h a ti n c o r p o r a t i n gt h es h a p ei n t e r p o l a t i o n a st h es k i nd e f o r m a t i o nc o s tl a r g e l y o fc o m p u t i n g , aa c c e l e r a t ea l g o r i t h mi sp r e s e n t e dw h i c hi sa p p l i c a b l et og p u 、i t l ls i m d a r c h i t e c t u r e s j 0 硫w e i g h t sf o re a c hv e r t e xa l ea u t o m a t i c a l l yc a l c u l a t e df r o ms a m p l ep o s e s , t h e r e b yr e d u c i n gm a n u a le f f o r ta n de n h a n c i n gt h eq u a l i t yo fs k i nd e f o r m a t i o nw h i c hr e q u i r e s a c c u r a t ej o i n tw e i g h t s k e yw o r d s :s k i nd e f o r m a t i o n ,e x a m p l e - b a s e d ,c o m p u t e ra n i m a t i o n ,i d e n t i t y ,g p u 关于学位论文的独创性声明 本人郑重声明:所里交的论文是本人在指导教师指导下独立进行研究工作所取得的 成果,论文中有关资料和数据是实事求是的。尽我所知,除文中已经加以标注和致谢外, 本论文不包含其他人已经发表或撰写的研究成果,也不包含本人或他人为获得中国石油 大学( 华东) 或其它教育机构的学位或学历证书而使用过的材料。与我一同工作的同志对 研究所做的任何贡献均已在论文中作出了明确的说明。 若有不实之处,本人愿意承担相关法律责任。 学位论文作者签名:皇壶杰日期沙口艿年了月西日 学位论文使用授权书 本人完全同意中国石油大学( 华东) 有权使用本学位论文( 包括但不限于其印刷版和 电子版) ,使用方式包括但不限于:保留学位论文,按规定向国家有关部i 7 ( 机构) 送交学 位论文,以学术交流为目的赠送和交换学位论文,允许学位论文被查阅、借阅和复印, 将学位论文的全部或部分内容编入有关数据库进行检索,采用影印、缩印或其他复制手 段保存学位论文。 保密学位论文在解密后的使用授权同上。 学位论文作者签名:立壶l | :杰 指导教师签名: 日期:列年丐月菇日 日期:溯年g 月扔e 1 中国石油大学( 华东) 硕士学位论文 第一章前言 1 1 研究背景 近些年来,在三维计算机动画中,把人体作为其中的角色一直是研究人员感兴趣的 目标,虽然计算机动画在许多领域占据着越来越重要的地位,但人体动画的许多问题仍 未能很好地解决。原因就在于人体共有2 0 0 个以上的自由度,其运动非常复杂,人的形 状不规则,人的肌肉随着人体的运动而变形,人的头发、皮肤和衣服模拟起来困难,人 的个性、表情千变万化等。另外,由于人类对自身的运动非常熟悉,不协调的运动很容 易被观察者所察觉。可以说人体动画是计算机动画中最富挑战性的课题之一。 1 2 课题的提出、目的及意义 目前人体建模和皮肤变形技术基本分为三大类:基于面模型的方法,基于实体模型 的方法和基于层次式模型的方法。实体模型基本上较少使用,解剖学和医学等应用多采 用多层次模型,而虚拟人动画领域广泛使用的是表面模型。 表面模型分为两个层次,第1 层为骨架层,按照人体各肢体的层次关系排列,形成虚 拟入动画系统的基础;第2 层为皮肤层,由平面或曲面片组成的表面模拟皮肤的几何外 形。皮肤环绕在骨架周围,其变形由底层的骨架驱动。表面模型的优点是速度较快,缺 点是不考虑人体解剖结构,所以取得非常逼真的模拟效果比较困难。提高表面模型皮肤 变形的逼真性是目前的研究热点之一。不同的变形算法只能驱动不同的模型,最常见的 骨骼蒙皮动画就是一种表面模型。骨骼蒙皮动画以其生动的逼真性,较快的速度,特别 适用于对人物和其他的脊椎动物进行动画模拟等优点受到人们的极大关注。 骨骼蒙皮动画的实现思路是从人的身体的运动方式而来的,动画人物的身体是一个 网格( m e s h ) 模型,网格的内部是一个骨架结构。骨骼蒙皮动画就是由经典的骨骼子空间 变形( s s d ) 【l 】算法来驱动的,也叫蒙皮算法。 。 骨骼子空间变形( s s d ) 算法具有适用面广、计算简单等优点,但是s s d 算法存在“塌 陷和“萎缩 等问题,严重影响了生成曲面的真实感。原因如下:在s s d 算法中, 人体模型只是一层皮肤,层次化骨架只提供运动信息而没有对皮肤产生实际的支撑,因 此导致运动过程中,皮肤可以任意内陷;由于皮肤顶点的新坐标只能在几个极限状态 所构成的子空间内取折中值,当新坐标不在子空间中时,必然出现塌陷,这是s s d 算法 第一章前言 固有的缺陷。 针对s s d 算法的“塌陷 和“萎缩”等问题,很多人都在s s d 算法的基础上提出了 各自不同的人体模型和变形算法,如l e w i s 等的s s d 算法,s h e n 和k a l a r a 等人的交叉截面 变形算法等,以期提高虚拟人的逼真性。但往往逼真性提高的同时,速度和实时性又难 以保证,所以在计算机动画的市场化运作中都难以大规模应用。所以,进行基于计算机 动画的人体建模与皮肤变形研究具有很重要的意义。 1 3 国内外研究现状 围绕虚拟人皮肤的逼真变形问题,国内外的专家学者都进行了一系列的研究工作。 1 3 1 骨架子空间变形及其改良算法 骨架子空间变形( s k e l e t o ns u b s p a e ed e f o r m a t i o n ,s s d ) 算法是一种经典的皮肤变形 方法。s s d 是一种插值方法,可以满足各种类型的关节变形,对于变形的控制也全部由 建模人员确定。在s s d 算法中首先要给皮肤网格的每一个顶点关联一组关节,称为影响 关节,并设定相应影响权值,动画中每一帧中的某一皮肤顶点p 的新位置p ,就表示为影 响关节变换的加权组合。根据骨架运动,即关节的动态运动就可以计算得到皮肤顶点p 的新位置p 。,这样便可以模拟人体关节运动中皮肤的变形。 s s d 技术简单、执行速度快且效果较好,通过在关节层次结构中添加新的关节点, 可以实现呼吸引起的胸腔变形或肌肉变形等变形效果。但s s d 方法存在一定的局限性: 首先,指定各控制点的权值冗长乏味,要得到满意的变形效果需要大量手工工作:其次, 对于一些相当灵活的身体区域,例如肩膀,某些骨架姿态下的变形严重失真。产生问题 的原因是某些期望的变形结果并不一定存在于骨架局部坐标系所定义的子空间中,所以 无论怎么改变蒙皮的权值参数,也无法得到满意的结果。 1 9 8 8 年日内瓦大学m i r a l a b 实验室的k a l 盯痢s h e n l 2 1 等人在s d d 算法的基础上提出了 “交叉截面变形的概念,显著提高了变形速度和变形逼真性。交叉截面变形算法的基 本思想是利用人体躯干和四肢具有近似圆柱体形状的特性,将皮肤顶点按轮廓线分组, 通过设置和改变每个轮廓线的方向、大小和位置,得到人体四肢和躯干的平滑变形。这 种方法按轮廓而非针对单独的顶点执行变形计算,速度快,并且不需要繁琐的权值指定 工作。另外通过将轮廓顶点的坐标转换为局部坐标,有效避免了蒙皮算法的典型问题之 一。当手臂扭曲时,横截面执行相应的旋转,因此不会产生手臂的皱缩现象。这种变形 2 中国石油大学( 华东) 硕士学位论文 机制还可以用于粗略地模拟肌肉的收缩和膨胀。 采用交叉截面方法时需要对虚拟人皮肤网格按照交叉截面的方式重构,而且这种重 构方式近似于一种规则的网格划分方法,因此势必影响网格的表示效率。而且轮廓仅由 两个相邻关节确定,这样导致了一些区域例如肩部的不理想效果,无法表示出皮肤的细 节信息。而且皮肤网格需要特殊的组织方式,在肢体和躯干之间就产生了额外的缝补问 题。 1 9 9 9 年s u n 等人采用法向一实体( n o r m a lv o l u m e ) t 3 】的概念将高分辨率网格映射到低 分辨率的控制网格上。控制网格随着骨架姿态变化而变形,并随之驱动高分辨率的皮肤 网格的变形。使用这种方法,他们获得了较快的皮肤变形速度。2 0 0 0 年s i n 曲和k o k k e v i s 【4 】 使用基于表面的f f d 皮肤变形,类似s u n 的工作,建模人员可以定义低分辨率的控制网 格,实现对高分辨率物体的变形控制。 浙江大学的叶大海,庄越挺等2 0 0 4 年针对目前广泛应用的骨骼子空间变形算法本身 常常出现“塌陷”与“萎缩 的固有缺陷,提出一种骨粒串主导的自由曲面变形算法f 5 】, 通过重构曲面模型,将骨骼与曲面相结合,并把虚拟的骨骼实体化,成为可变形的骨粒 串,每个骨粒都拥有数量不等的皮肤顶点。每个骨粒不仅具有空间坐标值,还具有一个 局部坐标系。皮肤顶点的新坐标由骨粒的坐标与皮肤顶点在局部坐标系中的坐标和局部 坐标系的转向矩阵获得。整个运动过程中,皮肤顶点在局部坐标系中的坐标不变,运动 完成后根据转向矩阵来调整皮肤顶点在局部坐标系中的坐标,从而得到皮肤顶点新的坐 标。 这种结构将骨骼实体化,并将皮肤顶点与骨粒相结合,具有以下优点;首先,整个 运动过程中保持,皮肤顶点与骨粒相对位置保持稳定,无论骨骼如何运动,都不影响肢 体的截面形状,防止了“塌陷 与“萎缩的发生:其次,由于变形的任务落到骨粒串 上,三维曲面的变形被简化成三维曲线的变形,变形算法更加灵活,甚至可以方便地针 对人体不同部位采用不同的变形算法。 该算法的缺点是,建模过程中不仅要计算骨粒的世界坐标,而且还要计算附着其上 的以骨粒为圆点的局部坐标系的新方向,并把运动分解为旋转分量和扭转分量,这样就 增加了计算的复杂度,变形速度慢,无法在计算机动画中实现实时变形。而且这种算法 只能驱动肢体的变形,而无法驱动像肩部,胸部,胯部等复杂部位的运动变形。 第一章前言 1 3 2 基于实例的插值算法 由于计算机动画虚拟人变形算法逼真性的不足,基于实例的插值变形越来越成为人 们研究的重点。 l e w i s 于2 0 0 0 年提出一种对s s d 算法进行优化的方法,即姿态空间变形( p o s es p a c e d e f o r m a t i o n ,p s d ) 。s s d 算法是插值方法的典型代表,其思想来源是几种类型的变形都 可以统一地看作是底层骨架或者其他抽象的参数构成的姿态空间向皮肤所在子空间的 偏移的映射。关键姿态形成了一个抽象的空间,新的姿态可以通过对这一空间的内插或 外插得到。给定的每个实例对包含两类数据:表示人物姿态的参数以及相应的皮肤网格 顶点坐标。该方法采用径向基函数作为插值函数,皮肤表面的每个顶点都与计算其在给 定姿态下位置的径向基函数的组合有关,径向基函数可由实例对求出。姿态参数可以是 骨架姿态也可以是其他抽象的参数表示。 p s d 处理皮肤变形非常有效,逼真性好,很好地解决了蒙皮技术中的典型问题,通 过支持矩阵运算的硬件加速卡在配置较高的p c 机上可以实现实时变形。p s d 的主要缺点 是计算皮肤变形局限于计算平滑插值和连贯的形态外插,需要模型具有一致的网格拓扑 结构,即具有相同数量的顶点和相互连接关系。且随着可调参数数量的增加,所需关键 姿态的个数也呈指数级增加,需要大量的数据处理工作。 2 0 0 1 年s l o a n 等人介绍了和p s d 算法相似的技术1 6 ,使用r b f 融合手臂模型取得了较 好的效果,其主要贡献是使用了主基函数的等价物( e q u i v a l e n to f c a r d i n a lb a s i s ) 。这些融 合函数通过求解每个实例而不是每个自由度的线性系统来得出,这就降低了求解的数 量,得到了更好的效果。但是这种方法同样需要模型具有一致的网格拓扑结构。 a l l e n 等于2 0 0 2 年使用k _ 领域插值算法i r l 进行关键姿态插值算法,能够生成逼真的皮 肤变形效果。首先在真实的人体身上设置标记点使用三维激光扫描仪对人体一系列姿势 进行扫描。然后使用优化函数求解每个姿态下的每个关节的配置参数( 平移量和转角量) 以及扫描到的皮肤顶点在其所在的关节局部坐标系下的值。再根据求得的配置参数,绘 制一个模板模型,根据模板对获得的一系列姿态进行参数化,得到不同姿态下的偏移图 ( r ) i s p l m :e m e n tm a p ) 。最后,计算权值( 用于姿态之间插值的权值和用于不同身体部位之 间插值的权值) ,根据权值进行插值,从而得到连续光滑的皮肤变形效果。 k 领域插值算法的主要缺点有:第一,一次只能捕获一个人的特定姿态,很难将其 重定向到新的人体模型上。第二,需要动画师设计一个“模板面( t e m p l a t es u r f a c e ) , 如果模板面和扫描到的模型相差太大,则容易出现匹配问题。第三,无法处理物理约束 4 中阂石油大学( 华东) 预士学位论文 如碰撞检测。因为它只是一种几何插值算法。 1 4 主要研究内容 对基于实例皮肤变形技术进行研究和实践,通过结合现有的s s d 、p s d 算法和形 状融合算法,并对其改进,提高皮肤变形的速度,虚拟人的逼真度,以期能满足计算机 动画中人体皮肤的逼真模拟和实时变形。本文的主要研究内容包括以下几个方面: 1 ) 通过对皮肤变形算法中三维人体模型的分析,提出一种基于姿态和同一性的人 体建模方法,提高三维人体模型的逼真度。 2 _ 整合了p s d 和形状插僮,提出一种反转皮肤变形方法,使其比p s d 更加稳定, 还以一个简单例子论证了反转皮肤变形中变形顶点的方向与关节旋转方向线 性成比例,丽初始p s d 则不能显示出方向信息。 3 ) 针对基于实例的皮肤变形方案,提出了一个可以整合形状插值的统一模型。线 性系统一经解出,合成就可以自动实时进行,而没有额钋计算。 提出了一种适用于s i m d 架构g p u 的加速算法。通过三个渲染通道,独立的 逐顶点变形可以在g p u 中并行进行,提高了基于实例皮肤变形算法的执行速 度。 1 5 论文的组织结构 本文的组织结构如下: 第一章主要介绍本课题的提出、目的及意义,介绍当前皮肤变形中存在的问题, 总结国内外研究现状,并提出关于基予皮肤变形研究的内容与思路。 第二章主要介绍皮肤变形中皮肤表示和入体建模方法,以及常用的皮肤变形算法, 对皮肤变形技术进行了概括和总结。 第三章通过对现有人体模型分析,在其基础上提出一种基于姿态和同一性的人体 建模方法。 第四章针对当前皮肤变形动画系统的不足,提出种反转皮肤变形方法,并对系 统进行优化。 第五章针对皮肤变形算法计算量大的特点,提出一种适用于g p u 的s i m d 架构并 行实现方法,减少了c p u 的计算负担。 总结总结本文的工作,给出下一步研究工作的内容。 第二章皮肤变形技术基础 第二章皮肤变形技术基础 虚拟人是人在计算机生成空闯( 虚拟环境) 中鲍几何特性与行为特性的表示。虚拟人 合成研究的最终目标是便虚拟入能够在任意需要它的虚拟场景中使用,以重构真实的世 界。目前虚拟人已经应用到许多学科和领域中,比如计算机游戏、电影、电视、商业、 虚拟现实、远程会议、人机功效学、医学、生物学等等。 随着虚拟入越来越广泛的应用,实时逼真地显示虚拟人越来越重要。几十年来研究 人员做了大量的研究工作,但是逼真的人体动画模拟这一问题还远远没有满意的解决。 其中一个主要的挑战就是人体运动中皮肤的自动而真实的变形 本章主要介绍皮肤变形技术基础,即虚拟人皮肤表示与几何建模方法和皮肤变形算 法的总结概括和分析。 2 。l 皮肤表示与几何建模方法 2 。l 。l 虚拟人皮肤表示方法 虚拟入皮肤表示方法到圈前为止,三维虚拟人皮肤表示主要有3 种方法:多边形表 示、隐表面表示和参数曲面表示。 1 ) 多边形模型 多边形模型是最简单和最普遍的模型,一般情况下使用三角网格表示物体表面。其 优点是运算速度快,可以表示任意的拓扑结构,适用人体这种复杂的带分支结构。主要 缺点是本身为平面结构,所以表示复杂表面需要大量多边形,且变形通常是通过移动一 个或者多个多边形顶点实现的,顶点间内在的连通性很难保持,变形剧烈时常会出现退 化现象。 2 ) 隐表面 隐表面( 也称等参表面) 由隐函数定义,通过指定函数的标量值获取空间中三维点的 坐标作为隐表面的表面顶点。其优点是隐函数公式篱洁、所需存储空间小;缺点是很难 表示出细节特征,且变形过程难于控制。 3 ) 参数曲面 参数曲面是采用相对较少的控制点来表示光滑表面,如b 样条益面或者b e z i e r 曲 面,一般通过移动控制点来实现变形。其优点是数学表达简单,容易理解,曲面平滑性 好,不会出现多边形表示中的退化问题。缺点是不同曲面问的连续性不好保持,表示人 6 中国石油大学( 华东) 硕士学位论文 体这种复杂分支表面较难。 目前,由于速度和表达能力方面的限制,在虚拟人动画领域皮肤仍以多边形表示为 主,或者是混合的表示法,比如s h e n 等人f 8 】曾经提出一种方法,利用分片b 样条表示 身体各部位皮肤,实现光滑变形后使每片b 样条曲面三角化为三角网格来绘制和显示, 实现了动画速度和显示效果的一个较好的折衷。 2 1 - 2 虚拟人皮肤几何建模方法 三维虚拟人皮肤的几何建模方法主要可分为三类:创造的( c r e a t i v e ) 方法【引、重建的 ( r e c o n v e ) 方法【9 1 【1 0 1 和插值的( i i l t e r l ) o l a t i v e ) 方法【i l l 【1 2 1 。 创造是指建模人员根据人体的解剖结构和外形特性直接绘制虚拟人的骨架、肌肉、 组织、直至皮肤。最早的人体模型都是基于这种方法,现在的建模软件3 d m a x 等就可 以由建模人员手工绘制虚拟人体的皮肤网格。这种方法需要有经验的建模人员才可以得 到逼真的模型,建模的过程复杂,需要的时间较长。 对真实人体直接进行观察和测量是达到真实感的一个可行的方法,随着硬件设备的 出现和相应数据处理技术的成熟,很多研究人员开始使用重建的方法来建模虚拟人皮肤 模型。他们或者直接使用立体照片,三维扫描仪等三维设备,或者利用二维照片和摄像 机图像等二维信息,经过重建获得非常逼真的人体皮肤模型。重建的方法获得的模型视 觉效果好,但是存在一个局限就是不能由用户控制,用户很难通过改变得到的原模型获 得想要的新的模型。 插值方法是使用一组实例模型和一个插值算法创建新的模型,因为插值算法在已有 模型和新模型之间充当了高效和高可控的桥梁,所以在虚拟人皮肤建模方面应用越来越 普遍。近年出现了很多基于插值技术的皮肤几何建模和变形方法。 2 2 皮肤变形算法 2 2 1 刚性变形 刚性变形方法出现在虚拟人应用的早期,对应的虚拟人模型为表面模型。虚拟人由 多个彼此独立的部位组成,每个部位对应的皮肤就是骨架上面固定的一个刚性多边形网 格。通过把每个网格映射到特定关节上,可以获得随骨架一起运动的刚性皮肤。这种方 法只需很少的计算资源便可得到快速的运动序列。但各部位皮肤网格彼此独立,在关节 点附近相互贯通,运动时皮肤分段之间可看到明显的不连贯,同时皮肤网格被当作刚体 7 第= 章皮肤变形技术基础 处理,没有考虑肌肉的隆起等变形效果,所以逼真度不高。图2 - 1 是刚性变形的手臂模 型。 翮 图2 - 1 刚性皮肤变形的不连续现象 f i g u r e 2 - 1d b c o a t i n u i 竹o f r i l i d d e f o r m a t i o n 2 , 22 局部变形算子法 刚性变形的失真使其无法满足日益提高的虚拟人逼真性要求,新的皮肤变形方法逐 渐出现局部表面算子法就是较早的非刚体皮肤变形方法,通过使用关于关节值的连续 变形函数解决表面模型中刚性变形带来的大部分问题。 t h a l m a n n 等人i ”1 首先n a t 依赖于关节的局部变形算子( j o i n td e p e n d e n tl o c a l d e f o r m a t i o n ,j l d ) 的概念,这些j l d 算子控制皮肤表面的变形。每一个j l d 算子应用 于人体皮肤表面上一些特定的区域称为算子域。j l d 算子根据影响它的关节组的自然状 态确定,算子本身的值是所有定义算子的关节角度的函数。, r l d 算子应用于人体和人手 建模都取得了满意的效果,图2 - 2 就是l d 算子控制的虚拟演员: 愕熏| i擎;蒲纛。 图2 - 2 虚粗人玛丽莲梦露 f i g , u r e 2 - 2v m u a l m a 咖m o n r o e k o m a t s u l l ”提出一种类似的局部皮肤变形控制方法。应用1 4 个关节的棒状体表示骨 架结构,然后使用自由表面覆盖在骨架上模拟皮肤。皮肤的每个部分由一组4 次b e z i c r 表面定义,所有的部分都平滑连接。根据关节角度调整表面控制点可以模拟皮肤的弯曲、 扭曲和扩张等效果。 中国石油大学( 华东) 硕士学位论文 局部变形方法存在以下闯题:每个关节都要采用特定的变形函数;对于描述 极具复杂性和可变性的人体解剖结构,单纯使用几个数学函数有很大局限性;对于 确定的算法,建模人员无法方便控制变形。 2 2 3 骨架驱动变形 骨架驱动变形( s d d ) 是。种经典的皮肤变形方法,又器嘈做骨架子空间变形( s s d ) 。不 同于早期的局部表面算子法,s s d 是一种插值方法,可以满足各种类型的关节变形,对 于变形的控制也全部由建模人员确定。 在s s d 算法中首先要给皮肤网格的每一个顶点关联一组关节,称为影响关节,并设 定相应权值。动画中每一帧中的某一皮肤顶点p 的掰位置a 就表示为影响关节变换的 加权组合,如下式所示: 。只= m 似;彪f 1 ,汹) ( 2 一1 ) 其中,m 是权值,m - - l ,对应各影响关节对该顶点的影响程度,m ,何,脚 l = 1 分别是第f 个影响关节在新姿态和初始姿态下的变换矩阵,岛一是顶点p 在初始姿态下 的坐标。依式2 1 ,根据骨架运动,即关节的动态运动可以计算得到皮肤顶点p 的新位 置曩,这样便可以模拟人体关节运动中皮肤的变形。 s d d 技术简单、执行速度快且效果较好,视频游戏和电影制作中常采用这种方法。 通过在关节层次结构中添加新的关节点,可以实现呼吸引起的胸腔变形或肌肉变形等变 形效果。但s d d 方法也存在一定的局限性。首先,指定各控制点的权值冗长乏味,要 得到满意的变形效果需要大量手工工作;其次,对于一些相当灵活的身体区域,例如肩 膀,某些骨架姿态下的变形严重失真。产生问题的原因是某些期望的变形结果并不一定 存在于骨架局部坐标系所定义的子空问中,所以无论怎么改变蒙皮的权值参数,也无法 得到满意的结果。图2 3 示出前臂弯曲和扭曲时肘关节失真的变形效果。 9 第= 章皮肤变形技术基础 图2 - 3 鼙皮算法的典型失真 n p m dd i s t o r t i o n o f s k i n n i n g 尽管s d d 具有上述缺陷,但由于该方法简单有效,所以在皮肤变形领域得到了广 泛使用,已经是三维建模软件中成熟的算法之一。许多研究人员在s d d 的基础上继续 其研究工作,试图提高构造模型的速度,克服典型的失真问题。 s u n 等人唧采用法向一实体( n o r m a l v o l u m e ) 的概念将高分辨率网格映射到低分辨率 的控制网格上。控制网格随着骨架姿态变化而变形,并随之驱动高分辨率的皮肤网格的 变形。使用这种方法他们获得了较快的皮肤变形速度。s i n g h 和k o k k e v i s 4 1 使用基于 表面的f f d 皮肤变形,类似s u n 的工作,建模人员可以定义低分辨率的控制网格,实 现对高分辨率物体的变形控制。f o r s e y ”】使用带有控制点的层次b 样条曲面来实现表面 皮肤变形,克服了平滑关节处的不连续问题。 由于人体的躯干和四肢的切面接近于椭圆形,日内瓦大学m i r a i 盅b 实验室的s h e n 以及k 出a m 等人1 2 通过椭圆形的切面来近似地模拟人体皮肤的变形在s d d 算法的基 础上提出了“交叉截面变形”的概念,显著提高了变形速度和变形逼真性。交叉截面变 形算法的基本思想是利用人体躯干和四肢具有近似圆柱体形状的特性,将皮肤顶点按轮 廓线分组,通过设置和改变每个轮廓线的方向、大小和位置,得到人体四肢和躯干的平 滑变形。这种方法按轮廓而非针对单独的顶点执行变形计算,速度快,并且不需要繁琐 的权值指定工作。另外通过将轮廓顶点的坐标转换为局部坐标,有效避免了蒙皮算法的 典型问题之一。当手臂扭曲时,横截面执行相应的旋转,因此不会产生手臂的皱缩现象。 这种变形机制还可以用于粗略地模拟肌肉的收缩和膨胀。缺点是轮廓仅由两个相邻关节 确定,这样导致了一些区域例如肩部的不理想效果。而且皮肤网格需要特殊的组织方式, 在肢体和躯干之间就产生了额外的缝补问题【l ”。 如图2 4 所示。图中将轮廓线投影成了直线,右图是第i 条轮廓线的正视图。厶和上 分别表示上臂和下臂的方向。m 表示下臂末端切面的法向量,巩表示上臂末端切面的 中国石油大学( 华东) 磺学位论文 法向量,n o 表示肘关节处切面的法向量,其中n 。= ( + 札心。m 和虬之间的其他法 向量m 可以通过插值得到,这些法向量呈均匀分布。当骨骼运动时,_ 和札随之改变, 从而带动m 的改变。m 的变化引起其所对应的轮廓线朝向的改变。这样,改变后的轮 廓线就定义了一个新的皮肤姿态。骨骼不断运动时,皮肤也随之而不断做出相应的变形。 田2 0 交叉截面变形田 f i b m r e 2 - 4 d e f o r m a t i o nb a s e d c r o s sc o n o u r m o h r 等人【1 1 给出了一个扩展s d d 的皮肤变形方法,通过在标准骨架层次结构的已 有关节之间加入虚关节并尽量减少相邻关节之间的不一致性,可以克服s d d 的典型失 真问题,井仿真一些非线性的身体变形如肌肉膨胀等。对于预定义好的s d d 变形模型, 利用给定的一组实例数据求解待定皮肤变形模型的参数,一旦所有的附加关节都被定义 好,他们使用线性回归的方法由一个固定的程序来求解这些关节的蒙皮参数,包括权值 以及标准姿态下顶点的坐标。模型求解以后,丢弃实例数据,使用变形模型直接计算皮 肤变形取得了较好的效果,如图2 - 5 所示: 1 个 圈2 - 5s d d 扩屉方法 f k , u r e 2 5e x t e n d i n g o f s d d 2 24 基于实例的插值变形方法 基于实例的插值变形方法是另一种可以实现实时皮肤变形的有效方法。建模人员首 为 第= 章皮肤变形技术基础 先预定义一组关键形状,然后通过在关键形状间插值获得新的姿态下的皮肤形态。关键 形状一般是特定骨架姿态下的皮肤三角网格网格表面顶点可以通过光学三维扫描仪等 数字化设备获得,或者通过二维图像三维重建和手工建模的方法获得。关键形态由研究 人员任意指定,这些形态在骨架参数空间中不规则分配,形状变形可以看作离散数据插 值问题。研究人员针对不同的关键形状获取方法和不同的插值方法进行了有益的尝试。 姿态空间变形算法( p s d ) 是插值方法的典型代表,结合了关键形状插值和骨架驱动 变形两种方法是一系列关键姿态问的骨架驱动的变形。其思想来源是几种类型的变形 都可以统一地看作是底层骨架或者其他抽象的参数构成的姿态空间向皮肤所在子空间 的偏移的映射。关键形态形成了一个抽象的空间,新的形态可以通过对这一空间的内插 或外插得到。给定的每个实例对包含两类数据:表示人物姿态的参数以及相应的皮肤网 格顶点坐标。该方法采用径向基函数作为插值函数,皮肤表面的每个顶点都与计算其在 给定姿态下位置的径向基函数的组合有关,径向基函数可由实例对求出。姿态参数可以 是骨架姿态也可以是其他抽象的参数表示。p s d 处理皮肤变形非常有效,逼真性好,很 好地解决了蒙皮技术中的典型问题,如图2 - 6 所示。肌肉的收缩扩张可以通过预定义的 实例准确重构,甚至可以通过子空间的外插计算实现夸大的变形效果。通过支持矩阵运 算的硬件加速卡在配置较高的p c 机上可以实现实时变形。 p s d 的主要缺点是计算皮肤变形局限于计算平滑插值和连贯的形态外插需要模型 具有一致的网格拓扑结构,即具有相同数量的顶点和相互连接关系。而且随着可调参数 数量的增加,所需关键姿态的个数也呈指数级增加,需要大量的数据处理工作。最近 k r y 等人l i s 提出了p s d 算法的一个改进,通过使用了p c a 分析,考虑最佳的优化算法 提高了变形的速度。 图2 - 6p s d 变形结果( 上) 与s d d 变形结果f f ) f l g e r e 2 - 6r e s u l b o f p s d ( u p p e r ) a n d s d d ( 1 0 w e r ) 习两蓠琴 中国石油大学( 毕束) 颤学位论文 s l o a n 等人【6 1 介绍了相似的技术,使用r b f 融合手臂模型取得了较好的效果其主 要贡献是使用了主基函数的等价物俩血v a l e n to f c a r d i n a db a s i s ) 。这些融合函数通过求解 每个实例而不是每个自由度的线性系统来得出,这就降低了求解的数量,得到了更好的 效果。但是这种方法同样需要模型具有一致的网格拓扑结构。图2 - 7 是变形的结果。 图2 - 8a l l e n 的实验结果 f i g e r e 2 - 8 r 曲u l t o f a l l e n 基于实例的插值方法建模过程简单有效、逼真性较高,设计者可任意增加关键形状 的个数以实现对变形过程的精确控制。但这也是其缺点所在:关键形状所需的个数箍着 参数个数( 如骨架结构中自由度的个数) 的增加而指数增加;另一个缺点是插值函数对变 镕二章皮肤变骺技术* 础 形的影响并不明确。 当前做的比较好的基于实例的方法应该是k 吡h 吼和m i ”忸嗍提出的方法。因为获 取3 d 医学图像是相当昂贵的,他们提出了一种加权姿态空间变形算法( w p s d ) ,由有限 的姿态样本中就可以产生仿真度极其高的皮肤变形。他们修改了姿态间的距离,用每个 顶点的关节权值来提供一个更为合理的距离量度标准。 2 25 多层模型皮肤变形方法 多层模型采用基于解剖学的皮肤变形方法皮肤变形的基础是符合人体解剖结构的 三维人体模型的构造,变形的逼真性依赖于骨架、肌肉和组织的精确建模。 c h a d w i c k 等人【2 0 1 首先提出了可变形人体的层次构造和动画。在他们的方法中,皮 肤层处于4 层结构中的最外一层。行为层首先产生相应骨架的运动,骨架的运动随之产 生中间层,即肌肉和脂肪组织的变彤,中间层的建模基础是自由变形( f f d ) ,变形控制 点受底层骨架关节的位置( 角度) 和力( 关节扭矩) 的约束。最后,骨架运动和中间层的变 形共同产生环绕在骨架周围的几何皮肤的变形效果。图2 - 9 显示了这种层次法构造的人 体模型。 图2 - 9c r l t t c r 系统设计的人物 f i g a r e 2 - 9 c h a r a c t e r o f c r i n e rs y s t e m c h a d w i c k 等在1 9 8 9 年使用自由形体变形川( f f d ,f r e ef o r md e f o r m a t i o n ) 来进行肌肉 的变形。m o e e o z e t t 2 l 随后在1 9 9 6 年使用d f f d ( d i r i c h l e tf r e ef o r md e f o r m a t i o n ) 技术来模 拟手的变形。这两种方法取得了令人满意的效果。隐式曲面也可用于肌肉造型。文献 1 2 3 ”0 0 0 0 使用椭球形元球( e l l i p s o i d a l m e a t b a l l s ) 来模拟肌肉的变形。s c h e c p p e r s 等1 2 4 1 使用椭 球来表示肌肉,并定义了一般的肌肉形状:将一个大小变化的椭圆沿着一根样条曲线进 行扫描可以得到更为一般化的肌肉形状:肌肉的变形可以根据等张( i s o t o n i c ) 和等长 f i s o m e t r i c ) 收缩的原则解析地计算出来。w i l h e l m s 等鲫使用近心点( o r i g i n ) 、远心点 翮园1i翮翻|一 酉蘑幽刨 中国石油大学( 华东) 硕士学位论文 ( i n s e r t i o n ) 和位于这两点之间的8 个椭圆来近似模拟肌肉的形状,用户可以交互式编辑 这些肌肉的参数。d o w 和s e m w a l 2 6 使用圆柱体来表示肌肉,每个圆柱切面用b 样条来 表示并通过两个参数b a s c s i z e 和g r o w t h f a c t o r 控制切面的形状,前一个参数表示基本 形状,后一个参数来控制变形。 w i l h e l m s 和v a ng e l d c r 27 j 提出了一种单独表示三维身体的各个组成部分建模和皮 肤变形方法。皮肤表示为弹性三角网格,使用锚将其覆盖在底层组织上,相对底层结构 运动。他们用这种方法实现了一个可变形的猴子模型。解剖学基础上的皮肤变形方法建 立在多层次模型基础上,通常效果较好,但计算复杂、速度慢,不适合实时应用的场合。 t e r a n 等【2 8 】提出了一种快速有效的准静力学肌肉变形模拟算法。与传统的隐式迭代 法和准静力学计算法方法相比,该方法能够在相同稳定的条件下达到更快的计算速度。 另外n g t h o w - h i n g 等【2 9 】提出使用b 样条体( b - s p l i n es o l i d s ) 的方法来表示肌肉,其方法 能统一地表示纺锤形、三角形等形状的肌肉。 2 3 本章小结 本章对目前常用的虚拟人皮肤表示与几何建模方法和皮肤变形算法总结、概括和分 析,这些内容是后续章节的基础。本文在前人研究工作的基础上,提出了自己改进的建 模和变形方法,详细内容见下面章节。 1 5 第三章基于姿态和同一性的人体建模 第三章基于姿态和同一性的人体建模 计算机图形学中创造生动人物形象的一个主要的挑战就是人体外形的真实建模问 题。手动建模

温馨提示

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

评论

0/150

提交评论