标签:
微软亚洲研究院实物数字化虚拟世界游戏体验kinectxbox3dit |
分类: 技术 |
编者按:Kinect最初是针对Xbox
360推出的交互式体感游戏设备,然而这种交互技术不仅在家庭娱乐领域,而且在健康医疗、教育、自动化及零售商业领域显示出了它巨大的发展潜力。而在Kinect游戏中,如何将实物虚拟化,并通过3D模型引入游戏,使游戏内容更加丰富、逼真而生动,是研究者非常关心的问题。
视频游戏正越来越多的为用户提供通过自己创建3D内容对游戏过程进行个性化的机会。他们通常会使用游戏内置的编辑工具创建这些内容。例如,微软Halo系列的最新版本就包含了一个地图编辑器;通过Spore生物创造工具(Spore Creature Creator),用户可以为时下流行的美国艺电(Electronic Arts)游戏制作属于自己的生物。
这些工具让很多玩家能够发挥他们的创造力,并丰富各自的游戏体验。然而,对大多数用户而言,操作这些工具是有一定难度的,所以只有一小部分用户可以为自己创建游戏内容,并且也只是有限的几种类型。
对于更广泛的游戏内容,如任意3D模型、纹理和动画,往往需要熟练的专业人士花上几天甚至几个星期的时间,借助Autodesk 3ds Max(以前叫做3D Studio Max)和Maya等昂贵的软件工具,来创建个人化游戏资源。这些工具的成本和技能要求对于大多数用户是很难达到的。
尽管存在游戏个性化实现的困难,但是,设法让所有用户都能够创建自己的游戏内容仍然是一件很值得尝试的事情。因为它可以带来全新的游戏体验,并且具有为使用这种产品的用户带来海量可用内容的增长潜力。
对象数字化
为对象数字化成为一项极有吸引力的替代方法,与大多数现有工具相比,它的功能更加强大,而使用过程却更加简单。数字化过程通过摄像头和其它输入设备来度量真实世界物体表面的3D位置,并自动为这些观察对象构造3D模型。
其中有一项技术是利用3D激光扫描仪将激光投射到需要数字化的对象上,并根据光线返回摄像头所需要的时间长短来度量表面点的距离。研究人员已经使用这种方法构造了非常细致的文物模型用于研究和保存。例如斯坦福大学的“数字化米开朗基罗项目”(Digital Michelangelo Project)。
在电影和游戏制作中经常使用另一种方法,即美术师为人物和道具构建一比一实体模型,然后用坐标测量仪器对模型创建数字化的虚拟版本。典型的坐标测量仪器是一个类似于机器人手臂的接触式探针,用户手工操作它去接触对象表面各点,通过关节的角度变化,这个仪器就可以推断出每个点的3D位置。
当传统建模方法不可行或成本效益较差时,对象数字化技术是相当有帮助的。然而,上述两种方法都需要昂贵的硬件和细致的用户交互,因而对大多数人来说还是很难应用的。
对象的“KINECT”化
最近,在对象数字化硬件和软件两方面的创新已经可以让任何人能够在家里进行对象数字化。在硬件方面,用户可以借助微软Kinect的色彩和深度摄像头,捕获需要数字化对象的表面颜色和形状,而这种摄像头的购买成本不足此前摄像头的几分之一。在软件方面,研究人员已经在解决利用此类摄像头的输入信息重建3D模型难题中取得重大进展。
1
微软开发人员发明了一种快速、价格低廉且易于实现的对象数字化解决方案。Xbox 360的Kinect,Kinect Fun Labs所提供的“Build a Buddy”和“Googly Eyes”这两个应用就是很好的证明。通过"Build a Buddy"工具,用户可以扫描各种各样的对象,如动物的标本和自己喜欢的玩具等,把它们变成虚拟好友,并在游戏中与之互动。“Googly Eyes”则利用身体姿势和手势,使这些数字化的对象“活”起来。
这些新的应用程序采用一个很简单的数字化流程。如图1所示,首先,用户手持一个现实世界对象,把它的正面朝向Kinect,然后调转对象,把它的背面朝向Kinect。经过简单处理后,系统就能构建一个用户可以与之互动的3D模型。整个操作过程耗时不到一分钟。
2
虽然拍摄过程看起来很简单,但从摄像头捕捉图像到最终生产3D模型的过程需要大量的计算。首先,系统从Kinect摄像头收集对象的正面和背面的多幅图像。因为这些图像中包含着多余数据,比如关于用户身体的数据,所以处理过程需要一个分割过程,其结果如图2a所示,删除了不需要的数据。
图2:将摄像头所捕捉的图像转换成3D模型: (a) 通过分割,从所捕捉图像中删除非目标部分;(b) 利用摄像头数据创建的点云;(c)在点云之上适配3D表面;(d) 对最终的数字化对象进行风格化渲染和动画
然后,系统合并图像,并把它们转换成代表着对象的正面和背面表层的3D点区域。如图2b所示,系统对这些区域进行对齐,形成覆盖虚拟物体表面的一组点集,我们称之为“点云”。
接下来,表面重建算法在点云上适配一个光滑的3D表面,如图2c所示。快速执行表面重建是一项艰巨的任务,它使用了微软亚洲研究院开发的一项新技术(K. Zhou等,“Data-Parallel Octrees for Surface Reconstruction”,IEEE Trans. Visualization and Computer Graphics,2011年5月,第669 – 681页)。
最后,如图2d所示,Kinect系统将捕捉到的图像颜色数据映射到3D表面上,并且在虚拟对象内部适配一副动画骨架,让它能够弯曲、扭转和左右移动。
“Build a Buddy”和“Googly Eye”仅仅是对象数字化开发巨大潜力的冰山一角。这项技术让用户拥有非凡的能力——创造他们的游戏体验,将现实世界带入虚拟世界,并与他人分享更多的游戏内容。
试想,数百万用户创建并共享海量3D模型,将会怎样?他们可以用这些模型做什么,我们又怎样才能使这些模型更丰富、更生动、更容易编辑?这项技术与正接近普通人群消费能力的3D印刷技术相结合时,又会发生什么?
一个充满了各种可能性的世界正等待着用户通过创新的游戏和应用去探索。
相关阅读:
_____________________________________________________________________
欢迎关注
微软亚洲研究院人人网主页:http://page.renren.com/600674137
微软亚洲研究院微博:http://blog.sina.com.cn/msra