基于LOD的三维地形可视化_第1页
基于LOD的三维地形可视化_第2页
基于LOD的三维地形可视化_第3页
基于LOD的三维地形可视化_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于LOD的三维地形可视化摘要本文根据实测地形高程差数据,运用可视化技术中的LOD建模方法绘制具有真实感的三维地形。关键词科学计算可视化;LOD建模;四叉树1引言虚拟现实技术是二十世纪末才兴起的一门崭新的综合性信息技术,它融合了数字图像处理、计算机图形学、多媒体技术、传感器技术等多个信息技术分支,并且可以逼真地模拟人在自然环境中视觉、听觉、触觉及运动等行为的人机交互技术,其应用领域和交叉领域非常广泛。然而考虑到虚拟现实和交互式可视化等交互式图形应用系统要求图形生成速度达到实时(尤其是大规模的场景绘制),而计算机所提供的计算能力往往不能满足复杂三维场景的实时绘制要求,因而研究人员从软件着手(减少

2、图形画面的复杂度)提出多种图形生成加速方法,而LOD模型就是在虚拟现实技术中经常被采用的一种加快图形生成速度的主要方法。本文就是利用LOD模型在计算机上精确的重构了地理信息,实现具有真实感的三维地形。2LOD技术概况在运用虚拟现实技术对大规模场景进行绘制时,常见的做法是用大量的三角面片来描述场景中的几何模型,随着描述场景的三角形面片的数目的增多,所绘制的图像质量会越来越高,但是绘制速度也会变得越来越慢,有时甚至会因为绘制的场景过于复杂而出现场景漫游不流畅,画面跳变等现象,这些现象都会严重影响实时绘制的效果。为了解决这一问题,从20世纪90年代初开始,研究人员就在这方面展开了大量工作,而多层次细

3、节(LevelsofDetails)模型技术就是在这样的情况下提出并发展起来的。2.1LOD的基本原理LOD技术作为虚拟现实技术中的图形生成加速方法,其基本原理是:在不影响画面视觉效果的条件下,通过逐次简化景物的表面细节来减少场景的几何复杂性(即对景物的细节部分用更多的三角片来描绘,非细节部分用较少的三角片描绘),从而提高绘制算法的效率。该技术通常对每一原始多面体模型建立几个不同逼近精度的几何模型。与原模型相比,每个模型均保留了一定层次的细节。在绘制时,根据不同的标准选择适当的层次模型来表示物体。2.2虚拟场景生成中LOD模型的选择恰当地选择细节层次模型能在不损失图形细节的条件下加速场景显示,

4、提高系统的响应能力。选择的方法可以分为如下几类:一类是侧重于去掉那些不需要用图形显示硬件绘制的细节;一类是去掉那些无法用图形硬件绘制的细节,如基于距离和物体尺寸标准的方法;另一类是去掉那些人类视觉觉察不到的细节,如基于偏心率,视野深度,运动速度等标准的方法;此外还有一种方法考虑的是保持恒定帧率。3利用LOD技术进行大规模三维地形的绘制31数据预处理在进行三维地形绘制之前,我们首先要对已有的原始高程数据进行处理。本文所采用地形高程差数据是按照一维矩阵格式存储,各个数据空间信息以一种隐含的关系给出。在规则的矩形网格中,数据按照从北到南,从东到西顺序存放。如图1所示,数据在一维序列中的位置与经纬度的

5、关系为:图1由于以文本格式存储的原始数据数据量较大,为了缩短数据预处理的时间开销,所以本文采用内存映射的方法来打开文件,将文本格式的原始数据转换为二进制格式存储的数据文件,并且以二维数组的形式存放,以便于计算机在实时绘图过程中调用数据。3.2LOD建模的方法所谓的LOD建模,其实质就是采用一定的算法思想将原有的网格地形数据进行重组,得到一种更加便于实时绘制使用的数据结构。现在应用比较广泛的LOD建模方法有:基于二叉树的LOD建模,基于四叉树的LOD建模,基于八叉树的LOD建模。本文所采用的是基于四叉树的LOD建模方法。3.2.1基于四叉树的LOD建模方法基于四叉树的LOD建模,就是按照一定的评

6、价系统(标准)利用四叉树这种数据结构方式对原来的网格数据进行重新划分和组合。3.2.2网格地形的四叉树分层在利用四叉树方法进行LOD建模的过程中,其关键就在于怎样对原有的网格数据进行四叉树分层。本文所采用的四叉树分层方法是:从整个完整的地形出发,递归的把地形不断的分割(Sub-divide)成相等的四个区域,分割的深度越大,贝I得到的分辨率越高。如图2所示是一个地形的四叉树表示,下图中每一个正方形为四叉树的一个节点。每个节点保存了一定区域的信息,包括:经纬度,中心点的高度,边节点的高度等。图2在网格地形的四叉树分层过程中,我们还必须建立一个节点评价系统来决定哪一个节点需要被继续进行分割,哪一个

7、节点已经不需要再分割了。这里我们采用两种评价标准,一个是基于视点的节点评价标准,另一个是基于曲率度量的评价标准。对于基于视点的节点评价标准而言,其基本原理就是根据观察者的视点到节点的距离来判断节点是否要被继续划分。例如距离观察者近的地方细节越多,反之则越少。我们可以利用公式(3.1):L/dn(n为一个可以调节的因子)(3.1)来判定一个节点何时需要被继续分割,何时被直接丢弃。其中L为节点的中心位置到视点的距离,d为节点的大小,n为一个可以调节的因子,n越大,细节越多。反之则细节越少。当n、d、l满足这个公式的时候,节点需要继续分割。反之,节点就不用继续分割了。而基于曲率度量的评价标准,则是在

8、用三角网格描述物体的表面时,根据曲率来区分表面的一些特征(如地形数据中的峰、谷、脊),以决定三角网格是否需要继续细分。即平滑的区域可以采用较少的大三角片来表现,变化幅度较大的区域采用较多的小三角片来逼近。3.2.3四叉树分层的标准在进行四叉树分层的过程中我们还需要注意以下几点:首先,由于四叉树分层是针对(2n+1)x(2n+1)的规则网格而言的,所以我们所采用的数据格式应尽量满足(2n+1)x(2n+1)的规则网格的要求,即网格数据必须是一间隔均匀的正方形区域。如果网格数据的大小不满足该条件,则需要扩展其几何图形,让其大小尽可能接近(2n+1)x(2n+1),扩展部分的像素用空值填充。其次在四

9、叉树分层过程中,还必须满足以下规则,即四叉树中相邻的两个节点的层次最大不能相差1,否则在LOD模型连续拼接的地方就会出现裂缝。图3表示的就是四叉树分层过程中,其中a是合法的分层,b是非法的分层。33网格的渲染地形网格的渲染最终是通过一个递归的过程来实现的。首先对整个四叉树进行深度遍历,确定当前视点所在的网格,然后从当前网格所在的节点(可能是整个四叉树的根节点也可能不是)一直遍历到四叉树的叶子节点(即一个节点不再被分割的时候),当遍历结束时再将当前网格的所有节点数据信息存储起来。之后,利用OpenGL中的glBegin(GL_TRIANGLE_FAN)函数把这些节点所组成的三角片绘制出来,形成用三角片连接起来的三维地形,网格渲染的效果图如图4所示。4结束语LOD技术具有广泛的应用领域。目前在实时图像通信、交互式可视化、虚拟现实、地形绘制、飞行模拟、碰撞检测、限时图形绘制等领域都得到了广泛的应用,并且已经逐步成为提高图形绘制速度的一项关键技术。很多造型软件和VR开发系统都开始支持LOD模型表示。随着气象三维动态预报分析技术的兴起,LOD技术将会更多的运用到模拟复杂气象要素的可视化中去。本文采用四叉树算法建立的动态LOD模型,在VC/OpenGL开发平台上

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论