论文部分内容阅读
地形作为地理信息的承载体,它的三维可视化是三维地理信息系统(Three-dimensional Geographic Information System,3DGIS)发挥功能的关键,可视化效果直接影响着3DGIS功能的实现。地理信息数据具有多源、多主题、多尺度、多分辨率、多时相等特征,这些特征都加大了数据组织管理难度、影响了可视化的效率。地形数据特别是DEM和DOM数据是地理信息系统的基本空间数据,已经广泛应用到测绘、地理信息系统、国土资源管理、城乡规划、虚拟战场环境、数字地球等各领域。随着地形数据数字化采集技术不断提高,高质量高精度的地形数据量与日俱增,合理组织和有效管理这些数据并对其进行可视化,成了各行业各部门急需解决的关键问题之一。
本文针对海量多尺度、多分辨率的数字高程模型(Digital Elevation Model,DEM)与数字正射影像(Digital Orthophoto Map,DOM)数据组织管理难、实时渲染效率低、交互性差等问题,从建立地形数据库角度出发,针对地形数据结构的特点,分析并设计地形空间数据的表达与存储结构,采用模型简化、动态调度和多分辨率表示等方法,构建地形和影像金字塔,运用基于视点变化的调度策略,并结合虚拟现实技术以提高地形绘制的连贯性和交互性,增强其可视化效果,为“面向解决空间有关的问题”提供定量与定性结合的空间决策支持。论文的主要研究工作如下:
(1)地形数据在场景视图中显示除了需要设置合理的相机位置、方向和观察角度外,还需要将数据坐标经过正确的模型变换、视口变换、投影变换等。研究Open Scene Graph开源库中的一些方法,正确设置相机配置和模型、视图、投影变换等参数,进行地形场景观察。
(2)除了利用相关数据构建地形场景的数据模型外,还需要有能对模型进行旋转、平移、缩放等的操作,分析研究了Open Scene Graph库中提供的变换操作(如矩阵变换和四元组变换等)的方法。
(3)海量地形数据的可视化的速度很大程度上依赖于对数据的组织和管理,由于在地形漫游的过程中时常发生内、外存之间的数据交换,如果数据没组织管理好,就很容易造成频繁的磁盘I/O,延缓计算机处理过程,降低其工作效率,甚至影响到整个可视化的绘制过程。针对海量的三维地形可视化中如何合理组织数据的问题,研究DEM和DOM数据的分层、分块组织管理方法确立相应的数据结构,并根据一定规则自动对基础数据进行转换生成所需精度的数据,建立地形及影像金字塔。
(4)由于地形数据和影像原始数据有一定的重叠和冗余,为满足不同的业务流程和建库需求,需要根据实际情况去除数据冗余,建立无缝的地形和影像数据库,因此首先研究DEM和DOM数据块的裁剪、拼接以及地形和影像金字塔的构建过程和方法,然后建成了两种类型的金字塔。另外,将对应的数据块进行套合,以达到在三维可视化环境中正确绘制的目的。
(5)针对数据调度过程中需要哪些数据和如何调度的问题,研究简单的上下楼梯的碰撞检测算法,以及应用数据库分页技术将构建好的地形和影像金字塔进行多细节层次显示,通过改变视点位置,调用满足条件的细节模型进行绘制,同时调出所需地形和影像数据快构建新的地形子场景,卸载过期的子场景。
(6)研究虚拟现实和地形漫游中常用技术,为场景漫游增加常用的操作,同时研究抬头显示(HeadUpDisplay,HUD)及烘焙纹理技术在QuantView3D平台框架下的构建方法,制作导航定位窗格,提高用户地形漫游过程的交互性,另外,还通过在地形场景中添加雨、雪、雾等效果达到增强地形可视化效果,给用户较为真实的体验。
(7)通过对开发的地形建库及可视化功能模块进行建库效率和可视化情况分析,总结归纳出其中一些特点,为满足不同用户需求,不同规模、不同尺度的地形数据建库及可视化提供依据。
本次研究主要创新之处在于:
(1)通过利用无效高程值、数据块有效性标识等一些特殊地形数据结构参数,构建一些与数据量无关的抽象管理对象,并根据一定格网大小进行坐标计算和插值运算或世界坐标与像素坐标转换,在数据递交时进行块有效性判断以及对需拼接数据块进行逐网格点或逐像素值判断、赋值和修改,实现地形及影像数据块无缝拼接。在显示时通过合理设置纹理映射方式和正确构建场景树模型,达到套合和无缝显示效果。
(2)根据实际建库要求和不同的用户需求,通过增加特殊存储参数,对递交地形数据范围进行计算和记录,开发并实现了DEM与DOM在一致建库构建金字塔的构建,建立一致索引实现地形与影像数据块套合,避免了繁杂的坐标转换运算,提高了查询和可视化效率。同样针对更为广泛的独立建库方式,通过分辨率计算、像素块大小计算、坐标转换计算,数据块对应范围查询,对不同大小地形块和影像块进行套合处理等工作,构建出独立的地形库和影像库。开发并实现一致建库和独立建库方式下构建金字塔模型,并通过配置文件指定平台当前采用的建库方式。
(3)在QuantyView3D平台下,通过改变从相机的渲染顺序等一些参数,针对特定模型数据以及定位节点进行实时渲染,生成出烘焙纹理且将其映射到HUD节点的表面。在每次更新回调时,进行重新定位和刷新烘焙纹理,实现地形场景漫游及漫游过程中的导航定位等功能。