2007年7月29日
使用杰基龙作为模型生成的计算机模拟刺激。
您好,我叫Kevin w,来自澳大利亚悉尼麦考瑞大学动物行为综合研究中⼼。在本视频文章中,我将介绍计算机动画在动物行为实验中的应用。具体而言,我将讲解我们如何实际制作其中一种模型。
如今,动画在当代文化中正变得越来越流行,但在科学领域或与科学研究相关的应用中,我们却很少见到其身影。然而,早期为科学目的制作动画的尝试确实始于一些非常基础的流程,这些流程通常涉及对某个物体或特定标本的特定部分进行切片和扫描;此外,研究人员也曾采用类似于生物运动的技术,例如使用点光源装置来标记身体上的特定部位,并将其与动画进行匹配。进一步而言,如果我们想要制作一段动画,过去必须完全从零开始由人工完成。
如今,利用动画技术使我们能够研究动物行为中的许多方面,例如交配、求偶,而我在此特别关注的是交流或视觉交流。相较于传统的研究手段,如活体互动或手术等侵入性方法,动画技术的应用要复杂和先进得多。因此,在这篇特定的方法学文章中,我将详细介绍我们如何构建这一特定模型,并探讨该模型的扫描过程。
我们将探讨如何添加纹理、UV映射骨骼、权重着色,如何实际捕获用于动态遮罩的刺激图像,最后,整个渲染过程如何进行,直至获得完整的动画序列。创建完整动画共有八个主要步骤。第一步是获取整个物体的三维扫描数据。
这确定了物体的基本形状。接下来需要添加纹理,这显然会使物体看起来更加真实。随后,该纹理会被分解为一张UV贴图,从而能够将纹理的特定位置精确地映射到物体表面。然后我们需要对物体进行操控,并添加骨骼结构(skegan),这些骨骼结构将被转化为骨骼。
随后加入重量阴影,以在运动中体现物体的整体平衡感。接下来,我们需要捕捉特定的刺激画面,以便据此模拟出物体的运动过程。然后,我们在已拍摄图像的基础上进行逐帧描摹(rotoscope)这些运动,最后将序列渲染为可用于视频播放的可读格式。我们获取了一件动物标本作为模型使用。
在此,我们使用柯尼卡美能达vi dash nine I来复制一个3D物体。柯尼卡美能达采用数字摄影技术,通过使用3D算法将摄影片段连接在一起,实现高精度测量。该设备可获取模型的形状和尺寸,并将图像转换为3D数字数据。
3D 扫描技术将真实物体的特定部分提取出来,并将其导入计算机动画模拟的物体中。随后,通过将这些部分放置在正确的位置来构建该物体,从而生成一个我们可以在动画软件中进行操作的模型。
在此,我们提供了一个模拟设置,展示如何对物体进行拍摄,然后将其转换为三维动画模型。首先从多个角度拍摄该物体,随后将这些照片图像进行正确排列,以实现连接轮廓的平滑过渡。该技术采用摄影测量系统,可实现对物体的高细节还原和高精度重建。
该系统利用涂覆标记物和尺寸受控的标尺条来映射参考标记点的坐标。这些坐标构成一个三维星座图,用于精确测量每张照片切片之间的轮廓和距离。数据通过Raindrop Geomagic采集,并用于获取该数据形态形状的单一多边形网格。
为了制作我们的动画,我们选择使用一款名为 LightWave 3D 的软件。尽管市面上还有其他可用的三维动画软件,但我们选择 LightWave 是因为它具有用户友好的界面,并且能够读取兼容的输出文件。此外,LightWave 还包含两个独立的程序:建模器(Modeler)和布局器(Layout)。
LightWave 建模程序允许通过高亮显示特定多边形以进行修改、创建对象的图层、添加颜色和纹理以及创建骨骼绑定来操控对象。LightWave 布局模块用于创建完成动画序列所需的场景。建模工作是在 Modler 模块中完成的,此处构建对象的各种特性。
在此处,我们可以添加纹理、UV 映射以及初始的骨骼结构(skegan),这些将转化为骨骼,并同时处理权重问题。着色建模器(Shading modeler)是使用 Light Wave 进行场景构建之前的必要步骤,因此对象的各种属性最初都是在此处设置到对象中的。Light Wave Layout 是一个用于实际创建场景的程序,除了对象将被放置其中的网格外,在这个 X、Y 和 Z 平面内,你还拥有另外两个特定的功能。
您拥有用于实际拍摄场景的摄像机,且摄像机本身可以放置在您选择观看的任意角度。此外还有光源,您可以使用一个或多个光源,这些光源有助于照亮场景和物体,并使您能够实现不同的照明效果。
光波布局为我们提供了多种不同的观察场景的方式。我们可以观察到的最多方面是四种不同的视角。在最终输出之前,这是观察场景中物体各个不同角度的最佳方式。
在光波布局中,存在三个不同的旋转轴。第一个是X坐标,即俯仰角;第二个是Y坐标,即偏航角;第三个是Z坐标,即滚转角。
这三个不同的坐标与我们场景中物体、摄像机以及灯光的移动操作相关。我们首先选择了一只在质量和长度上均与标本模型相似的杰克逊变色龙。随后,我们通过拍摄这只活体杰克逊变色龙的表面纹理和图案,获取了该物体的纹理信息。
然后从不同角度(如正面、正交角)和不同位置(如正面、正交、腹面和背面),以及对各种身体部位(如整体、头部、躯干、尾部和四肢)在白色纸张背景下对该蜥蜴进行拍照。为了获得正确的纹理,我们使用一只活体蜥蜴,并从多个不同角度对其进行拍摄。拍摄涵盖了三个角度和三种不同的位置。
三个角度分别为正交、背侧和腹侧,三个位置分别为前部、中部和后部。我们使用佳能ES数码相机对这些蜥蜴进行拍照。随后将照片导入Adobe Photoshop,将较大的部分从实际背景中分离出来。
随后将这些片段匹配为RGB值,并进行白平衡处理,以确保颜色无差异。我们创建了一个图集UV贴图,以便将纹理叠加到物体上。该图集UV贴图是在LightWave Modeler中创建的。
图集UV映射将物体分割为由相连多边形构成的多个碎片。由于该物体并非立方体或圆柱体等简单形状,图集UV映射会将其划分为若干更简单的平面表面,且这些表面不包含90度角。然而,图集UV映射会将物体分割成多个不连续的、由相连多边形组成的片段。
因此,使用名为 Grab 的程序捕获了图集 UV 贴图,以生成一张独立的 JPEG 图像。然后,我们将该 BA 图像作为背景层嵌入到 Adobe Photoshop Elements 中。通过在不缩放图像的情况下捕获 JPEG 文件,我们保持了原有的比例关系,可用于将 Jackie Dragon 模型上的区域映射到对象上。
随后,使用 Adobe Photoshop Elements 将 Jackie Dragons 的各种照片融合在一起,以创建出处于多个位置的完整 Jackie Dragons,例如正面、正交、腹面和背面。然后将多边形与 Jackie Dragon 上的相应局部区域进行匹配。现在在 Light Wave Modeler 中,我们再次在 Atlas UV 贴图上高亮显示这些多边形,从而能够识别 Jackie Dragon 上的特定区域。
随后,将该区域裁剪并叠加到背景图集UV贴图的特定区域上,这些区域对应于 Jackie Dragon 模型上被拍摄、裁剪并叠加到相应多边形的部分。当所有照片片段都被逐层叠加至图集UV贴图的JPEG图像上后,移除背景并生成单个TIF文件。然后将该TIF文件重新导入LightWave建模软件,并分配至相应的UV坐标。
UV映射是指我们将原本从活体蜥蜴拍摄的片段进行实际分割,并将其放置到动画蜥蜴模型上的过程。该操作在LightWave Modeler程序中完成。通过使用LightWave Modeler程序中的UV Atlas贴图工具,我们可以将模型对象分解为多个不同的片段。
通过将其分解为多个不同的片段,我们可以利用从照片中获取的纹理,并将其应用到这些特定的部分上。与那些可能为纯色或圆柱形、且不包含90度角的物体不同,这类物体可被划分为多个不同的段。以下是UV图集映射中一些小多边形片段的特写。
我们可以突出显示这些特定片段,以查看哪些多边形对应于哪些特定部位。将拍摄自浅色蜥蜴照片中的物体片段进行分割后,再放置到我们已拆分的模型部件之上。利用UV图集映射,将这些片段进行匹配,从而将纹理叠加到我们的模型表面。
骨骼和骨架被嵌入到物体中,以实现物体的基本运动和操控。首先,在Light Wave建模器中,骨架(skegan)被嵌入到物体中,作为将在Light Wave布局中创建的虚拟骨骼的占位符。在我们的物体中,总共创建了61根骨骼。
首先,在光波模型器中打开一个图层,对象可以以线框形式显示。在该程序中,模型器允许我们查看多个线框图层,从而在创建骨架时避免意外选中或移动某些多边形。在我们的模型中,构建了一个人工脊柱结构,该结构从颈部的颈椎向下延伸至尾部末端的骶椎。
Skegan 在此重现了真实的 Jackie Dragon 的骨骼结构。然而,我们仅使用了一台大型骨骼枪来制作头部。随后,我们创建了四个肢体,每个肢体由四个 Skegan 组成,然后将 Skegan 融合为胸椎,最终后肢也与骨盆带融合在一起。
随后将骨骼单元融合在一起,形成一个层次化系统,其中脊柱作为所有肢体运动的中心基础。所有骨骼单元创建完毕后,该物体随即与光波布局同步,并将骨骼单元转化为骨骼。每块骨骼如同布局模式中的物体本身一样,也具有三个旋转平面。
骨骼前身是我们的骨骼结构。骨骼最初是使用轻量级建模器创建的。在此处,我们安装这些骨骼装置,随后将在Light Wave布局中将其转换为骨骼。
骨骼工具是初始流程,它赋予我们灵活性和操控能力,使我们能够将物体变换为不同的形状和位置。首先,在 Lightwave 建模器中,我们可以添加骨骼工具,这些工具可帮助我们操控物体。这些骨骼工具将作为定位标记被设置在物体上,随后被转换为骨骼结构。
在 Light Wave 布局中,我们将这些 Skegan 转换为骨骼。在此示意图中,还有一个多边形网格,它精确地展示了我们特定对象在 Light Wave 布局中的尺寸以及所包含的多边形数量。在下一个场景中,您将看到这些骨骼如何协同工作,以帮助操控对象的权重分布,从而使对象实现灵活且受限制的运动。
权重图在运动分布中的取值范围通常为负100%到正100%。例如,指定到物体特定区域的独立权重图需要相互拮抗,以实现物体平滑且逼真的运动。权重值表明,偏离0%(即无影响)的程度越大,对相应身体部位运动产生的影响也越大。
特定区域的权重着色也会影响骨骼的运动。然而,如果权重分配不当,可能导致物体相对于骨骼运动时出现滞后现象,例如当物体运动方向与骨骼运动方向大致相同时,骨骼可能会穿出物体表面;或者产生过度运动,即物体的运动幅度超过骨骼在总体方向上的位置。在 LightWave Modeler 中,我们将透视视图划分为四视图布局。
这使我们能够观察到权重着色的拮抗对。为了近距离向您展示此处权重着色的发生方式,我们首先在尾部添加了权重着色。通过在物体的特定部分添加权重着色,我们需要在相应位置添加一个反向权重着色,以平衡物体的运动。
我们在头部添加了一个配重罩,以平衡尾巴可能产生的过度运动。为了开始动态逐帧描摹,我们首先需要收集可用于建立运动模式的序列。我们首先模拟了圈养个体间的雄性与雄性互动。
将雄性个体放入用于观察的玻璃饲养箱中,随后分别对其社会行为展示进行录像。这些录像序列被存档,以用于其他实验及动态追踪分析。我们从采集的数字视频片段中选取了诸如尾部抽动、俯卧撑、身体摇摆和缓慢举臂等运动模式序列,并将这些片段导出为图像序列,即一系列连续的 JPEG 文件,导入至 Apple QuickTime 中。
我们最初拍摄了活体动物的互动画面,这些画面需要被保存为存档视频资料,以便进行刺激材料的采集。我们将这些存档的蜥蜴视频展示给一只实际存活的蜥蜴,该蜥蜴被安置在围栏中。然后使用数码摄像机记录这只活体蜥蜴的反应,这些记录最终形成了我们用于动态追踪(rotoscoping)的序列素材。
动态遮罩是一种将模型逐帧叠加到背景图像或一系列图像上的技术,使对象在每一帧中都能模仿目标动作。光波布局程序是创建动画序列场景的媒介。在布局阶段,我们可以通过设定灯光、摄像机、对象和背景特征的参数,来控制动画所呈现的环境。
在布局中,该刺激物也用于最终场景,只有当材料处于最终摄像机视图内时才会被捕捉到。首先,将第一张jpeg图像导入摄像机视图的背景中。
随后,利用叠加在背景图像前方的骨骼运动参数来操控该对象。接着对帧进行关键帧设置,以保存该特定帧中对象及所有骨骼的位置。然后移除背景图像,并将其替换为下一张连续的图片。
在该图像序列中,对象将再次被调整至与背景图像相同的位置和姿态,并在每一帧操作完成后进行关键帧设置。当整个场景完成后,该序列即可导出为图像序列,或渲染为一个完整的视频序列。为了演示逐帧描摹技术(rotoscoping),即基于录制的视频序列重现真实运动的过程,我们将首先向您展示通常用作原始背景的内容。
在第一个序列中,您将看到壁虎通常栖息的空波斯地毯。其次,我将向您展示我们将用于逐帧描摹的活体壁虎视频序列。最后,您将看到叠加在活体壁虎之上的动画壁虎序列。
在此,我向您展示对象导入 Light Wave 布局的位置。如您所见,您可以将布局划分为几个不同的屏幕,从而更清晰地操作对象。然而,最重要的视图是顶部的摄像机视图,您可以看到蜥蜴周围矩形框标示的安全区域。
安全区域内所见或放置的任何内容都将被摄像机记录,并最终用于画面渲染。为了构建场景,动态遮罩技术是在背景图像之上逐帧操控物体。
因此,我们在此所完成的逐步操作是:首先将图像序列导出为单独的帧。然后使用这些单独的帧,并将其放置在动画序列的背景上。接着,我们需要移动动画序列,使其与背景中显示的位置相匹配。
因此,通过逐帧匹配,我们能够根据实际的图像序列重现其运动过程。正如我之前提到的,我们需要逐帧导入每个序列,以便对图像进行定格描摹。在此帧中,我们已将第一帧序列导入背景,从而可以观察到我们的对象在背景图像前方的位置。
然后,我们还可以提供骨骼X光视图和光波布局,这使我们能够透过物体的纹理看到其内部骨骼结构。通过观察物体纹理下的骨骼,我们可以调整物体的位置和形态,使其与每一幅特定图像的背景序列相匹配。接下来,我们将导入下一个连续的序列,以便在该序列之上进行逐帧描摹。
这一过程会以逐帧的方式在整个连续序列中重复进行。小段序列可直接从布局中渲染为不同的图像格式,或直接生成视频序列。所有较长的序列均可通过渲染功能进行输出。
来自 Bruce Rain Render 的 Farm Commander。Farm Commander(简称 RFC)可使局域网系统中的所有计算机通过在联网计算机之间分发任务来缩短渲染时间。在我们的实验室中,我们使用了四台苹果 Mac G5 双处理器计算机,共包含八个线程用于分发渲染任务。
例如,处理一段包含 9,000 帧的序列(相当于 PAL 制式 DV 格式的六分钟视频),使用单个 G5 处理器需要 12 小时,而若分配到八个线程或 4 个 G5 双核处理器上并行处理,则可缩短至 4 小时。当仅有不超过两个大序列时,使用 RFC 进行批量处理是高效的。然而,RFC 会生成大量独立的图形文件。
然而,我们选择将我们的长序列和短序列都渲染为单独的 JPEG 图像。为了再次演示,我们在此展示原始序列,原始序列包含一个蜥蜴的展示动作,即标准的俯卧撑式身体摇摆展示,该动作用于社会交流和攻击性互动。现在我们展示了最终序列,即动画蜥蜴,该动画蜥蜴将复制初始蜥蜴视频片段中所见的俯卧撑式身体摇摆动作。
查看完整文字稿并访问数千部科学视频
本文讨论了计算机生成刺激的使用,特别是以杰基龙作为动物行为实验的模型。文章强调了动画在科学研究中日益增长的流行趋势,以及创建这些模型所涉及的技术。
计算机生成的动物模型刺激可精确分离和操控视觉通讯变量,有助于在行为学和感觉生物学中进行假设驱动的发现。该方法通过允许对特定形态和运动特征进行受控且可重复的测试,提高了早期靶点验证中的预测可信度。该方法在不同物种和信号模式中的适应性使其成为生物制药研发项目中转化研究和机制性风险降低的可复用资源。
该方法通过提供标准化的假设检验、行为筛选和定量分析平台,融入从发现到临床前研究的连续过程。