三维地景仿真概述
地形是自然界最复杂的景物之一,对地形的仿真一直是计算机图形学的重要研究内容。伴随现代数学、计算机图形学、计算机科学等理论和技术的不断发展,该领域已经历了线划二维地形图、模拟灰度三维地形图、高度真实感三维地形图等几个发展阶段。在计算机图形学技术发展初期,由于计算机处理速度、存贮空间、颜色数、显示器分辨率等限制,人们只能绘制以线划符号表示的二维线划图,其内容单调、信息贫乏、真实感差。20世纪60年代以来,人们通过引用光照模型,绘制具有表而明暗灰长连续变化的地形实体地形图,这种立体图,立体效果更强,有一定真实感,但信自变量仍不足,实用性不强。随着计算机图形显示设备性能的改进,真实感图形的生成算法的不断完善,使地形的三维显示技术进入了高度真实感立体绘制的发展时期。1
三维地景仿真的作用三维地景是虚拟自然环境中不可缺少的因素,也是虚拟仿真领域中视景系统的重要组成部分。由于三维地形通常与虚拟环境中物体的运动直接有关,更由于它的数据量庞大,因此在建模和实时显示两个方面都有较高的要求。人们在不断提升硬件处理能力的同时,也努力研究如何通过软件算法和技术来降低处理的数据量,以实现虚拟效果和硬件能力之间的平衡。2
地形生成与仿真技术基于真实地形数据的地形生成及实时显示技术简单的地形生成技术根据真实地形数据进行地形生成是实际工作中使用最多的一类。其核心思想是通过减少实时绘制的顶点数据量来加快绘制速度。基于真实地形数据的地形生成及实时显示渲染效果如图1和图2。2
大多采用数字地面模型(Dig-ital Terrain Model, DTM)来生成,DTM数据由在规则网格地形图上采样所得的高程值构成,与飞机或卫星上所拍摄的遥感纹理图象数据相对应,这些纹理图象在重构地形表面时被映射到相应的部位。
基于分形技术的地景仿真技术分形几何(fractal)是Mandelbrot于1975年造出的一个名词,分形几何关注的是物体的随机性、奇异性和复杂性,他试图透过混乱现象和不规则构型揭示隐藏在背后的局部与整体的本质联系和运动规律。分形几何具有细节无限以及统计自相似性的典型特性,它用递归算法使复杂的景物可用简单的规则来生成,在现代的计算机图形学中,分形几何在对自然现象的真实绘制和建模方面起着重要作用。
地景建模是自然景物建模中很重要的一类,许多分形地景建模都与分数维布朗运动(fractionalBrownian motion, fBm)这一数学模型有关。fBm是现代非线性时序分析中的重要随机过程,它能有效地表达自然界中许多非线性现象和描述真实地形的随机过程。
分形地景建模大致可归纳为泊松阶跃法(Pois-son faulting)、傅里叶滤波法(Fourier filtering)、中点位移法(midpoint displacement)、逐次随机增加法(Successive random additions)和带限噪声累积法(Summing band limited noises)5类。
基于数据拟合的地形仿真技术最简单且常用的地形仿真方法是由稀疏分布点的高程值构成一些简单的三角形平面,从而形成地形框架,并贴以纹理图象的方法。这种方法显示速度很快,但基本框架过于简略,且常有很强的卡通效果,因此,地景的真实感受到影响。很多情况下,地形仿真也用曲面(如二次、三次曲面等)进行拟合。曲面不需作分段线性近似,仍可以保证相邻面的斜率连续性,因此非常灵活。但由于其数学计算的复杂性,对于复杂场景来说,计算量较大。另外,为了增加逼真效果,也可以用分形技术直接对用上述方法生成的光滑平面或曲面进行噪声扰动,从而形成真实感较强的地形表面。后来又出现了用小波技术进行地形数据拟合的算法。
另一类方法,则注重根据地学图形数据的精确描述,来进行真实地形的仿真,如张继贤等提出的一种根据地形特征参数进行地形生成的方法,这些特征参数包括平均高程、最大/最小高程及其位置、高程标准差、相关长度、地形粗糙度等。在地形分析领域中。地形则被看做是一种随机统计过程。如平稳正态均方连续的马尔可夫过程。该算法将这一观点与分形几何模型、随机点生成技术以及实用回归技术相结合,首先利用给定的地形参数,通过模拟符合地形统计特征的随机过程,形成一定数量用来表示地形骨架的特征点,再进行一定的处理,统一为用规则网格分布形式表示的地形整体骨架。然后利用分形技术中的中点位移法产生地形局部细节。从而生成与某个真实地形非常相似的仿真地景。并且,该类方法还进一步地将小波技术引入到地形的多细节生成中,即利用小波机制产生多尺度地形局部细节信号,与已生成的表示地形骨架的特征点相综合,再通过小波多尺度合成,以获得符合要求的具有任意细节水平的真实三维仿真地形,因而这是真实地景仿真中的一种连续LOD技术。3
三维地形的可视化技术三维地形的可视化技术分为两种,面绘制技术和体绘制技术。由于体绘制技术具有离散及计算和存贮量大的特性,对硬件的性能要求很高,所以地形的实时绘制主要采用面绘制技术。
基于面绘制的三维地形建模技术可以归纳为三类:基于真实地形数据的多边形模拟、曲面拟合地形仿真和分形地景仿真。基于真实地形数据的多边形模拟是指利用对真实地形的采样点,通过插值、剖分等方法建立多边形集合,并用此多边形集合模拟地形表面。数字高程模型DEM便是典型的也是基于真实采样点的二维地表模型主要表示方法,是人们对三维地形实时显示算法进行研究的基础。曲面拟合地形仿真是根据控制点选择合适的曲面对地形进行拟合,其优点是保证了相邻面的斜率连续性,缺点是曲面方程及参数不易控制,且生成地形过于光滑,真实感较差,这种建模技术应用的较少。分形地景仿真是利用分形几何所具有的细节无限和统计自相似的典型特性,通过递归算法使复杂景物可用简单的规则来生成。它的优点是数据量小,缺点是算法的复杂度高,且没有与实际所需的真实地形、地貌相联系,因此在应用上受到一定的限制。1
相关三维仿真软件随着三维可视化仿真技术的飞速发展,三维仿真软件如雨后春笋般不断涌现。MultiGen-Paradigm公司在2005年开发了专门针对大地形场景仿真环境的构建与渲染工具Creator Terrain Studio和Vega Prime。其中Creator Terrain Studio是创建大场景地形的工具,而Vega Prime则是三维大地形的视景仿真渲染工具。
Creator Terrain Studio 地形建模技术Creator地形模块可以满足一般形式的地形建模需求。它对创建出来的地形进行基本的边界修改,提供了Polymesh、Delaunay、CAT、TCT四种地形生成算法,每种算法都有各自很强的适用针对性,都能根据DED格式的高程数据自动地生成基本的地形曲面。
Creator Terrain Studio地形模块的主要功能是创建,编辑地形,并且使得可视化的仿真地形能够运动起来。 通过操作简单但流程复杂的向导, 进程和工作流程,CTS提供了一个有序的结构化的环境,使得可以创建并且反复创建任何尺寸和细节的地形。因为最后是产生 openflight 格式的地形文件。所以CTS的数据库都以openflight作为其数据输入格式。
CTS在地形建模方面功能非常强大,它提供了一个自动化的工作流程,通过这个工作流程可以管理地形产生过程的每一个环节,并且每一个数据和流程作为一个对象保存在POD(持续对象数据库)里,以便随时的查阅和编辑。通过这个功能可以在任何部分重复工作流程,重建部分或者全部的数据库,并且运用个别或整个工作流程来建立新的数据库生成项目。
CTS 中还提供一个软件开发工具包(SDK)可以使得CTS使用任何与组件兼容的编程语言,如Visual Basic, Visual C++, Delphi 等。通过SDK也编写适合自己的组件,向导和浏览界面,并且还可以把它们插入到工作流程里面去。所以通过CTS中提供的自动化的工作流程和向导,会使得创建地形的步骤变得很方便和简单,并且CTS 支持映射分辨率很高的虚拟纹理,大大提高了模型的可视化仿真程度。
CTS在地形创建之前,首先会自行地检查相关的数据来源,并且进行整理和细分。参照数据源来创建相关的数据集,如创建一个Elevation文件夹来存放所有的地形文件,而创建一个culture文件夹来存放所有的文化文件。根据数据集再来创建工作流程,按照预期的顺序来进行数据处理,在数据转换和创建过程中,可以在在操作界面里观看和确认产生的数据库,如果产生了错误的数据,则可以单独重新进行出现错误的工作流,并且由机器自行完成,创建的便捷度和工作效率大大提高,而创建的错误率则控制到最低。4
Vega Prime 仿真渲染技术MultiGen-Paradigm 公司开发的 Vega Prime 系列视景仿真渲染工具软件, 用来渲染战场仿真、娱乐、城市仿真、训练模拟器和计算可视化等领域的视景数据库,实现环境效果的加入和交互控制。Vega Prime具有诸多高级视景仿真功能,可以迅速地创建各种实时交互的三维视觉环境,它拥有一些特定的功能模块,如大面积地形管理等。Vega Prime使视景仿真应用程序的开发具有更好的适应性和扩展性。
针对于大地形场景的渲染,Vega Prime提供了大规模数据库管理工具LADBM,用于解决超过图像生成器硬件处理能力的图形数据调度问题的技术和方法。为了能够方便地控制覆盖大面积范围的场景模型数据库,或者场景数据库包含了密度较大的模型数据,这时就需要对场景数据库按照一定的规则进行适当的分割并且重新组织其结构,否则图形硬件无法一次性地处理整个场景数据库。Vega Prime LADBM模块中的“区域”就是提供了一种将场景数据库元素按照严格的空间关系进行分组的机制。大规模数据库通过区域进行重新分组和组织后,Vega Prime系统通过“兴趣区域”机制来随时确定当前视点位置上所有的可见区域。“兴趣区域”与“区域”机制都是用边界体及其空间位置来描述的,在实时仿真进行过程中,那些场景中暂时用不到的部分在进入图形处理管道之前就会被忽略掉,从而可以提高图形硬件的实际吞吐量,提高Vega Prime系统对于大地形场景模型数据库的处理能力。4