南宫28官方网站基于数字摄影测量的虚拟地形生成技术戴晨光张永生摘要阐述了利用DEM和数字正射影像进行地形环境虚拟现实研究的原理、方法和实践。着重论述了运用OpenGL构造真实三维地形模型的有关原理以及在PC机上实现实时动态立体显示的有关技术。关键词虚拟现实;数字摄影测量;数字高程模型;正射影像;OpenGL中国图书资料分类号P283.4TP391.41RenderingTechnologyVirtualTerrainBasedDigitalPhotogrammetryDaiChenguangZhangYongsheng(ZhengzhouInstituteMapping,Zhengzhou,450052)Abstracttheory,methodterrainenvironmentvirtualrealitybaseddigitalorthophoto.realistic3Dperspectiveterrainmodelstereoscopicvisioncomputer.KeywordsVirtualreality;Digitalphotogrammetry;Digitalelevationmodel(DEM);Orthophoto;OpenGL述测绘信息网虚拟现实是一种由计算机生成的高级人机交互系统,是计算机图形图像技术与人类认知理论相结合的一个高新技术领域。其实质是利用计算机生成一个以视觉感受为主,也包括听觉、触觉、嗅觉的可感知的环境。数字摄影测量是基于摄影测量的基本原理并运用计算机技术、数字图像处理、计算机视觉南宫28官方网站、模式识别等多学科的理论与方法,从影像中提取所摄对象用数字方式表达的几何与物理信息的一门学科。在许多模拟人类活动的虚拟现实应用中,虚拟地形环境的建立是一项十分重要的基础性工作。由于虚拟地形环境所面临的是海量的地形数据和地面纹理数据,因此利用这些地理空间数据建立一个逼真的、立体的、可交互的虚拟地形环境并实现具体应用是一项复杂的工程。近年来,一方面航空航天遥感技术和数字摄影测量技术的迅速发展,使得从遥感立体图像中自动获取数字高程模型(DEM)并制作数字正射影像已经成为现实。国际上许多数字摄影测量系统,如Leica/Helava公司的DPW,Zeiss公司的PHODIS,Intergraph公司的ImageStation等中有关DEM自动提取和数字正射影像自动生成的技术已经成熟,这为地形环境虚拟现实研究提供了直观真实且现势性强的基础数据;另一方面,计算机及其相关技术的飞速发展为我们带来了高速运算的CPU,大容量的内存和硬盘,高性能图形加速显示卡以及基于计算机的立体观察设备,为虚拟现实所必须的海量数据计算和图像的快速实时动态立体显示提供了保证。上述两方面的结合为地形环境虚拟现实的研究与应用带来了前所未有的机遇,也必将促进地形环境虚拟现实技术及其应用的进一步发展。有关DEM自动提取和数字正射影像自动生成的原理在文献[1]中已有详细论述,本文着重论述利用DEM数据和正射影像,运用OpenGL构造真实三维地形模型的有关原理以及在PC机上实现动态立体显示的有关技术。利用OepnGL构造真实三维地形模型的原理及方法利用DEM数据和地面纹理数据构造三维地形模型是地形环境虚拟现实中的关键步骤。近几年来,随着计算机技术和计算机图形学的飞速发展,IBM公司、DEC公司、SUN公司、HP司、Microsoft公司和SGI公司在GL(GraphicsLibrary)的基础上联合推出了新的三维图形标准OpenGL,并迅速得到了广泛的认可与运用。OpenGL实际上是一种图形与硬件的接口,它独立于硬件设备,窗口系统和操作系统。OpenGL所具有的模型参数设置、纹理映射、自动消隐、双缓存、显示列表等多项功能为逼真三维模型的构建与显示创造了条件。DEM数据可通过数字影像的自动相关来获取,而正射影像则可以运用数字摄影测量中的数字微分纠正和影像镶嵌技术对遥感影像进行处理而得到。利用OpenGL构造真实三维地形模型的原理如下:测绘信息网基础数据的准备与预处理。DEM数据一般采用规则的格网格式,这有利于数据的存储与计算。但是地形起伏不大的区域(如平坦地区或水域),规则格网格式的DEM中将会存在大量的冗余数据,直接影响到三维模型构造和纹理映射的运算速度,因此从规则格网DEM数据中提取最能表示地形起伏特征的重要格网点来简化DEM数据就显得十分必要,然后再以重要格网点为基础构建TIN三角网或方格网来表示地形。对于数字正射影像,则需要用数字图像处理技术来改善影像的质量,以有利于在立体观察中获得最佳的视觉效果。测绘信息网基本参数的设置与计算。三维地形表面的顶点坐标由DEM数据确定。根据格网顶点的坐标计算出每一格网面的法向量值用于产生地形表面的明暗效应。在用OpenGL绘制三维地形模型和进行纹理映射前,需要用专门的OpenGL函数设定相关的参数。其中包括光照方式、光源位置、颜色模式、明暗处理方式、纹理映射方式等,具体内容参见文献[4]。在此基础上设定视点和观察方向的初值,再分别运用OpenGL的模型变换函数、投影变换函数以及视口变换函数进行模型变换南宫28官方网站、投影变换和视口变换,将三维地面坐标转换成计算机屏幕坐标,并运用OpenGL所具有的Z缓存自动消隐功能就能构造出三维地形模型。真实纹理映射。用正射影像进行纹理映射是建立逼真虚拟地形环境的重要手段。纹理映射的基本思路是把正射影像“贴”到由DEM数据所构成的三维模型上。用OpenGL函数进行纹理映射的基本步骤为:()函数说明所映射的纹理内容。其中包括纹理数据的指针、纹理的大小、纹理的类别(灰度或彩色)等。纹理控制:说明纹理以何种方式映射到三维模型表面上。OpenGL提供了多种映方式,其中包括纹理滤波、重复与缩限,其调用函数为glTexParameter测绘信息网说明纹理的映射方式:在纹理映射过程中,可以用纹理来调整三维模型的颜色或者将纹理与三维模型原来的的颜色进行融合,其调用函数为glTexEnv定义三维模型顶点的纹理坐标与几何坐标,绘制场景:几何坐标决定了顶点在屏幕上的绘制位置,纹理坐标决定纹理图像中哪一个纹素赋予该顶点,其调用函数为glTexCoord通过三维地形模型构造和真实纹理映射就可获得十分逼真的三维地形景观图,其基本流程可用图1来表示:测绘信息网用OpenGL构造三维地形景观流程图基于PC计算机的实时动态立体显示技术三维立体动态显示是虚拟现实中的关键技术。由上述方法在计算机屏幕上所生成的三维地形景观图实际上是一个2.5维的景观图,只有在引入动态立体显示技术后,观察者才能真正感受到虚拟现实所具有的强烈的临场感和亲自控制的参与感。测绘信息网 目前,三维复杂模型的动态显示,从技术上按照由易到难的顺序,可以分为三个 层次:第一是逐帧计算图像、逐帧显示图像、逐帧记录并连续播放;第二是逐帧计算 图像,将结果存放在计算机内存中,计算完毕后再连续显示并连续记录。尽管这种方 法避免了逐帧记录的麻烦,但是和第一个层次的方法一样,图像仍然是逐帧计算的, 并不要求实时计算。对于以上两种方法,由于图像都是逐帧计算好的,因此,在动态 显示时,视点和观察方向不能改变,因而使漫游的灵活性受到限制。与前两个层次不 同的是,在第三个层次中,图像是根据视点及观察方向实时计算、实时显示的,因而, 可以做到对三维复杂环境漫游的实时交互控制,使漫游的灵活性不受限制。这就是 三维复杂模型的实时动态显示,也是本文所采用的方法。 我们知道,形成人工立体视觉必须具备下列条件:1) 所观察的两张像片必须有 一定的左右视差;2) 两眼必须分别观察一张像片(即分像);3) 像片所放置的位置 必须使相应视线成对相交(即消除上下视差)。基于上述考虑,如果在计算机显示屏 上沿水平方向交替显示左右两幅视图,并且使观察者的左右两眼分别只能观察到左 右视图,则就可以产生立体视觉。产生上述条件的方法较多。本文介绍的是利用液 晶眼镜,在显示屏与观察者之间分别设置一个像场遮光同步快门,该液晶快门受逻 辑控制电路控制。逻辑控制电路的同步信号取自于计算机的显示接口。在显示屏显 示左视图期间,打开左眼液晶快门并关闭右眼液晶快门;在显示屏显示右视图期间, 打开右眼液晶快门并关闭左眼液晶快门,从而获得立体视觉。 测绘信息网 采用上述方式时,显示卡必须能够先后交替显示左右视图,并且有足够的显示 内存以容纳高分辨率的彩色图像和为实现图像漫游提供所必须的空间。为了克服图 像闪烁,所采用显示器的显示帧频为120Hz。在本文研究过程中,具有左右视差的两 幅视图的实时显示是通过软件来控制实现的。在立体显示过程中,用鼠标和键盘操 作来实时更改视点位置和观察方向以实现对地形环境漫游的交互控制。整个立体显 示过程可用图2 来表示南宫28官方网站。 实验与结论按照本文论述的原理和方法,利用DEM 数据和数字正射影像,我们成功实现了 基于微机的地形环境虚拟现实研究。本文实验是在Pentium计算机(CPU 233MHz2,内存128M,硬盘8.0GB,AGC-GL Pro 图形加速卡)上进行的。操作系统为 Windows NT4.0,开发语言为Visual C++5.0。通过实验可以得出如下结论: 测绘信息网 利用OpenGL生成三维地形景观图,可以避免大量的数据建模运算,因而具 有很快的生成速度。当正射影像为4M,DEM 为100100 格网,屏幕分辨率为 1024768 时,立体影像显示帧频达20 帧/秒,可满足实时动态观察的需要。 测绘信息网 在立体观察过程中,通过改变模型旋角,能实时实现多视角条件下的虚拟地形观察,如图3 所示;通过交互改变视点位置能实现三维地形的实时缩放与漫游,并 能实时模拟沿线观察和飞行通过某一区域,真正具有很强的临场感和参与感。 测绘信息网 在硬件配置相同的条件下,虚拟地形的生成速度主要取决于DEM数据的大小。因 此,在保持地形特征的前提下对DEM 数据进行简化对提高虚拟地形的生成速度显得十分 重要。为解决这一问题,人们提出了许多有效方法,如倾角阈值法,小波变换法等。数据 模型简化已成为虚拟现实领域的重要研究内容之一,我们在这一方面也进行了有益的尝 试,其中基于多进制小波变换的DEM 数据简化方法在实现数据简化的同时能够很好地保 持原有的地形特征。测绘信息网