摘 要:为了对二维图像实现人物动画,对人物图像进行轮廓提取、贴图,给模型添加骨骼并进行骨骼绑定,最后进行人物动画模拟。实验结果表明,基于Maya的人物动画能够以较高真实度生成人物动画。
关键词:Maya动画; 轮廓提取; 骨骼绑定; 人物动画
随着生物学、光学和图形图像学等科技不断发展壮大,逐渐形成了现在的动画行业。近几年动画行业突飞猛进,使得不少人加入到动画这个行业中[1]。可以很容易看出,动画的发展与同时代的科学技术的发展是息息相关的。
动画又可以分为二维动画和三维动画。二维动画和三维动画制作的过程事实上都是在对现实的三维世界进行一个模拟,三维动画中的贴图是二维的,而二维动画一直在绘制真实的三维空间,三维的建立离不开二维,而二维动画的世界是建立在三维世界中的,它们互相之间是不可分割的。只有将这两种技术结合起来,才能更好地模拟真实空间,制作出更有视觉效果的动画。作为主流的二维动画是研究的一个重点[2]。
本文直接对信息量较少的手绘图以及很难完整、精确提取图画信息的古画、油画等经典画作中的人物在原先的背景状态下实现动画。值得注意的是,这些人物图像的动画仅仅是通过一张图片来完成的。实验结果表明,通过该方法能够让图片中的人物数字化,并且能够让人物做出一些较为简单的动作,展现人物的行为动作,感受人物运动状态。
1 Maya动画
Maya是目前世界上最为优秀的动画制作软件之一,它被广泛应用于电影、电视、广告、计算机游戏和电视游戏的数位特效创作中。自Maya问世以来,已经获得了多项国际大奖。在好莱坞的大片中几乎都有它的身影,如《黑客帝国》、《蜘蛛侠》等。Maya的应用领域主要包括:平面图形可视化、网站资源开发、电影特技和游戏设计与开发4个方面,具有极大的市场潜力。
Maya共提供了5种类型的动画制作方式:(1)关键帧动画,通常用在角色动画中;(2)路径和约束动画,主要做一些沿特定路径运动和受目标物体约束的动画;(3)动力学动画,可以在模拟自然物理现象中完美地运用;(4)表达式动画,这是需要专业的Mel编程基础的动画;(5)属性驱动动画,这种动画比较独特,靠物体之间属性相关联来间接驱动物体运动,通常用在角色骨骼绑定过程中。
2 动画仿真和结果分析
2.1 动画系统选择
首先,选择是基于网格的还是基于骨骼的动画系统[3]。 在基于网格的动画系统中,对于每一个动画帧,需要定义模型网格的每个点在世界中的位置。例如,一个包含200个多边形的手的模型,有300个顶点,动画有10帧,那么就需要在内存中存储300个顶点位置的数据,总共有300×10=3 000个顶点,每个顶点由x、y、z和颜色alpha信息组成。
相比之下,在骨骼动画系统中,网格是由骨架组成的骨骼。网格顶点和骨架本身相关,它们在模型中的位置都是相对于骨架的。因此,移动骨架,组成多边形顶点的位置也相应改变,只需使骨骼运动即可。很明显,它极大地节省了内存空间。模型着眼于世界中的事件[4],或使模型的“脚部”在他们站着的地面保持水平,这有助于增强视觉的真实感。此外,骨骼动画的另一个优点是能够定义权重值,可反映骨架对每个顶点的影响程度。
总的来说,角色模型能够更加流畅和真实地实现动画,且只需要更少的内存便可达到双赢的效果,因此,本文选择基于骨骼的动画系统。
2.2 轮廓
图像轮廓具有图像的原始信息特征,根据轮廓建模速度快、失真小。因此,本文在view中选择image plane载入原始图像,根据原始图像进行建模。轮廓截图如图1所示。
2.4 添加骨骼、骨骼绑定
切换到animate模块,在skeleton中选择joint tool添加骨骼。Maya骨架的活动与真实物体是有联系的,因此本文根据人体主骨架的构造给模型添加骨骼,即头骨、手骨、手腕骨和胸骨几大部分,骨骼添加完成后按Enter键进行确定。接下来对模型和骨骼进行绑定,选择skin下的bind skin对其绑定。添加骨骼并绑定完成,效果如图3所示。
2.5 动画初始参数设置
因为动画最终是以不同的格式并在不同的硬件平台上播放的,所以在制作动画开始前,首先需要对动画的制作和播放参数进行设置。单击动画时间范围滑块最右端的“Maya参数预设”按钮,弹出设置窗口,对物体的初始状态进行设定,如图4所示。
2.6 动画仿真
Maya动画是由帧生成的,通过对模型的x、y、z等属性设置关键帧,设置的参数属性会变成红色。图5是对人物双手设置关键帧的参数,图6是动画截图。
2.7 结果分析
由图6可以出,女孩的双手发生了变化,在Maya的动画模式下可以明显地看到女孩双手摆动的动画效果,说明仿真结果是正确的。不过在形状变化较大处或边缘处(比如手腕、肩膀)有轻微的分叉,并且还是可以看到女孩的骨骼,同时动画的效果不是特别逼真。在此基础上,可以对该模型加以改进,对人物骨架模型提取和对纹理贴图进行更细致的处理,就可以形成真实感较强的人物模型动画。这也是要进一步研究的内容。
本文对基于Maya的人物骨骼动画进行了研究和模拟,对人物手臂挥动动画过程进行了截图,给出了实验结果和分析。二维动画具有存储和计算量小、易于制作及生成动画逼真等一些优势,Maya骨骼动画的应用相当广泛,在影视动画和虚拟现实等方面的应用十分普遍,这也是目前动画技术的一个重要分支。今后Maya动画在计算机动画、电影和电视领域将大放异彩。
参考文献
[1] 铁钟,高昂,方叶. Maya 8.5从新手到高手[M].北京:清华大学出版社,2009.
[2] 鲁东明,潘云鹤, 陈任.敦煌石窟虚拟重现与壁画修复模拟[J]. 测绘学报, 2002(1):12-16.
[3] AGARWAL A, TRIGGS B. 2006. Recovering 3D human pose from monocular images[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2006,28(1):44-58.
[4] 吴莉婷,张宇,杨一平,等.深度图像中基于轮廓曲线和局部区域特征的三维物体识别[J].中国图象图形学报,2012,17(2):269-546.
[5] 宋玉远, 张光帅, 张克博.光影与贴图的艺术[M].北京:清华大学出版社,2008.