李知菲,陈 苑
(浙江师范大学 数理与信息工程学院,浙江 金华 321004)
摘 要:针对动作捕捉技术教学实验实施不便、实验设备搭建和维护麻烦等问题,提出利用Kinect镜头采集骨骼运动数据,实时驱动三维虚拟角色动作并记录输出动画的方法,论述实时角色动画实验教学设计过程。
教育期刊网 http://www.jyqkw.com
关键词 :实时角色动画;Kinect镜头;实验教学;教学设计
0 引 言
随着增强现实、虚拟现实和动作捕捉等高级计算机视觉技术的发展,计算机三维动画[1]的应用范围日益宽广,在建筑场景交互展示、城市虚拟规划、工业产品展示、角色动画等领域均有较大市场,特别是《阿凡达》《变形金刚》《星球黎明》等一系列融合了三维建模、动作捕捉等计算机三维动画技术的电影热映以后[2-3],以动作捕捉技术为核心,演员实时驱动三维虚拟角色进行动作,记录生成动画的角色动画制作方式变得流行[4]。
目前各个高校开设的三维动画课程在角色动画部分都以讲授传统动画技术为主,大致分为关键帧动画技术和渲染输出技术两大模块,对上述新兴的实时角色动画制作技术较少涉及。
1 动作捕捉与实时角色动画技术的特点
近年来,随着在动画制作、影视特效、体感交互等领域的广泛应用,动作捕捉及实时角色动画技术取得了长足发展。目前普遍应用的运动捕捉方式为电磁式和光学式两大类,无论使用哪种,一般都要求演员穿着专业的运动捕捉服记录动作,如图1所示。
运动捕捉基于计算机图形学原理,通过传感器——光学摄像头或电磁传感器将运动物体(如人)的运动状态记录下来,最终得到基于时间维度的各个观测点的三维空间坐标,其运动数据质量的高低取决于捕捉观测点的准确程度,因此在对运动状态记录精度要求较高的应用(如大型电影、面部表情动画、运动分析、精细肢端动作交互等)中均需使用专业运动捕捉服装并在服装上准确设置观测点标志,如光学式捕捉系统用的反光球或电磁式传感器与电缆。
上述动作捕捉得到的运动状态数据精度较高,实时性好,《变形金刚》《星球黎明》等电影的拍摄普遍采用此种方式。但对于教学实验而言,角色动画实验学时有限,每次实验都穿着服装并进行标定并不现实;同时,动作捕捉服装及其附件价格较高,受设备数量和维护需要等限制也难以在本科生课程实验中应用。
2 基于Kinect镜头的实时角色动画实验环境搭建
微软发布的Kinect价格较低[5],能实时采集RGB彩色图像和深度数据并可同时提供两人的骨骼数据追踪,镜头采用USB口与计算机相连,即插即用,硬件设置简单易行,如图2所示。
Kinect镜头可用于体感捕捉的原因是:设备本身提供了可以采集对象在立体空间中的深度信息的镜头组。基于Kinect镜头和计算机平台的实时角色动画制作实验开发环境可以用图3表示。
上图中层①为硬件基础层,核心部件是Kinect的传感器,包括镜头角度驱动马达、摄像头和麦克风阵列。实验中主要用到的是镜头组。Kinect的镜头共有2个,一个用于RGB彩色图像采集,一个用于深度信息采集。还有一个红外发射器,具体的原理可以参阅微软公司的Kinect产品网页。
层②为镜头设备的驱动层,设备通用性较高,开发系统具有良好的平台移植能力。Kinect镜头的驱动安装非常简单,需要调用的部分主要是设备访问、视频流控制和镜头组堆栈。
层③是自然人机接口NUI的API部分,也包括有音频识别等功能的API。
要实现骨骼数据的实时传输,需要借助微软发布的Kinect SDK,这个二次开发包中提供了软件类库和开发工具,通过它可以捕获体感交互中需要的自然数据,如人体的骨骼信息(动作信息)、深度信息(距离信息)、图像信息等。Kinect镜头采集的骨骼数据如图4所示。
3 Kinect骨骼数据驱动的实时角色动画实验教学设计
笔者以三维动画设计课程中的“角色动画制作实验项目”为例,给出实时角色动画实验教学设计。
3.1 实验项目概述
传统的角色动画实验教学中主要利用3DSMax软件中的骨骼动画技术完成角色动作的关键帧编辑,完成后将动作存储为BIP文件,最后绑定角色模型和BIP动作并渲染生成动画。笔者给出的方法主要是利用Kinect镜头实时采集演员动作并生成BVH动作数据,通过3DSMax脚本加载后实时驱动绑定好骨骼的角色模型,进而记录为动画。使用该方法,学生实验操作简单易行,能体会到流行的实时角色动画制作流程,调动学习热情,为学生进一步学习高级角色动画技术打下基础。
3.2 实验关键步骤
(1)设备连接:Kinect硬件连接后利用系统中安装的Kinect for windows Developer Toolkit进行测试,可以通过调用其中的Skeleton Basic-WPF来进行,以正确显示绿色的骨骼线条。
(2)角色导入:打开3DSMax软件,加载角色模型(已绑定好骨骼BIPED),加载实时BVH脚本。
(3)实时动作捕捉:实验演员在Kinect镜头前的有效范围内(离镜头1.4~3.8米)按预先编排的动作脚本进行动作。
(4)保存动作文件:设置渲染器并渲染输出动画。
Kinect骨骼数据驱动的实时动画制作如图5所示。
3.3 实验设计
本实验需6学时,分两次课进行,中间间隔1周,学生有较充分的课下准备时间。第1次课要求学生熟悉硬件设备环境和操作规程,完成角色模型的骨骼绑定对齐。第2次课要求学生进行实时动作捕捉并输出结果,除了得到动画视频文件外,还可以得到相应的动作文件BIP或BVH。
通过本次实验项目实践,学生将完整掌握Kinect骨骼数据驱动的实时角色动画制作技术,熟悉动作数据文件处理,为将来进行大型或精细动作的角色动画制作打下基础。实验项目同时培养了学生的创新性思维,使学生学习的内容紧跟技术的发展。
4 结 语
实时角色动画制作技术与传统的关键帧编辑制作方法相比,具有效率高、效果好、制作周期短等优势,有较广泛的应用市场。该实验教学设计在学院3个专业、共计4轮的三维动画设计教学中进行了实践,深受师生欢迎。由于Kinect镜头成本低廉,动作捕捉时无须穿着专业捕捉服装,实验容易实施,且设备安装维护方便,实验效果良好;通过结合实际动画制作项目,构造虚拟教学情境,提高了学生学习的主动性和参与度,实现了科技化教学。
第一作者简介: 李知菲,男,讲师,研究方向为图像处理与模式识别、虚拟现实,zjnulzf@163.com。
教育期刊网 http://www.jyqkw.com
参考文献:
[1] 倪聪奇. 浅谈项目化教学在三维动画课程教学中的应用[J].中国教育学刊, 2014(8): 118-120.
[2] 陈熙. 论电影“阿凡达”动画特效制作[J]. 电影文学, 2014(15): 46-47.
[3] 许乐, 朱柏宇. 计算机技术与电影真实感的建立:以动作捕捉技术和奥斯卡视觉特效奖为例[J].北京电影学院学报,2014(1):64-72.
[4] 刘炼, 孙慧佳. 虚拟现实技术在舞蹈教学中的应用现状及设计要求[J]. 中国电化教育, 2014(6): 85-88.
[5] 陈姝, 梁文章, 伍靓. 基于Kinect深度相机的实时三维人体动画[J]. 计算机工程与科学, 2014(8): 1544-1548.
(编辑:孙怡铭)