地形三维场景实时变换及可视化方法研究
2010-11-15李玉东
李玉东,张 军
(1.辽宁工程技术大学 测绘与地理科学学院,辽宁 阜新 123000;2.中国测绘科学研究院,北京 100039)
地形三维场景实时变换及可视化方法研究
李玉东1,2,张 军2
(1.辽宁工程技术大学 测绘与地理科学学院,辽宁 阜新 123000;2.中国测绘科学研究院,北京 100039)
地形数据的三维可视化技术一直是3DGIS领域一项重要的研究技术。从地形实时渲染的需求出发,提出大地坐标系下的多分辨率地形组织模型,并对可视化过程中的坐标空间变换方法进行研究,提出一种适合大区域地形可视化的坐标空间变换方案,使可视化的三维地形场景尽可能真实反映其自然的分布形态,使影像纹理、地物与地形之间进行精确的映射与匹配。
实时三维可视化;坐标空间变换;纹理映射;地物匹配
地形的分布在三维地理空间内呈现连续性,传统的二维地图将其投影至平面,不可避免地对其带来变形甚至是在投影带之间的断裂。要直观真实地反映地形场景分布状况,需要改变对地形的二维表达方式,将其还原至三维空间,实现地形的三维可视化。但大尺度范围的地形分布受地球曲率影响较大,局部的平面坐标系很难适应在椭球体表面进行的地形三维可视化。选择适合的坐标参考系统,并通过正确的空间变换过程将其框架下的地形实体映射至计算机显示窗口坐标系下,同时实现影像纹理与地形几何数据的精确匹配是实现大区域地形三维可视化的关键。
1 大地坐标系下的地形数据组织
1.1 大地坐标系
地形场景在大尺度范围内受地球曲率影响较大,而且往往具有庞大的数据量。这些方面都决定了在三维可视化过程中不可能将其当作一个整体进行渲染,需要对地形进行分块处理,而且为了减少数据冗余提高场景渲染速度,还需要建立多层次的细节模型。组织起这些数据需要一个统一的坐标系统,并且使其能够适应椭球体地球表面各地形块的无缝衔接,同时还要使选择的坐标系适宜在地形上的空间量算。
对于实现局部三维地形建模中经常使用的平面坐标系,无法适应全球范围的地形数据建模需求,使用它最直接的问题表现在大范围内的地形分布形态变形严重,在其上无法进行精确的量算,如方位角、面积、长度等,所以不能用作全球地形数据组织的统一坐标系来使用。
要突破局部坐标系带来的弊端,需改变传统地图投影带来的局限,在地球参考椭球体上建立地理信息空间。空间直角坐标系虽然能满足地球椭球体表面地形建模需求,实现地形之间的无缝衔接,摆脱地形变形与断裂,但它并不能直观地标识出参考椭球体表面地物的空间位置,尤其不能很好的反映地球表面点与点之间的距离与方位角,在生产生活中并没有得到很广泛的应用,大多来源的数据都需要额外的坐标系转换过程。
大地坐标系是一个在全球范围内统一的,能准确、唯一描述地球上任一点的位置,并能动态适应历史的、现代的越来越精密的各种参考椭球体,可以作为大型 GIS和数字地球最适当的坐标系[1]。而且它也是球心极坐标系,地球上每一点都能用一个唯一的极坐标表示,在球面上坐标(B,L,H)呈现空间的连续分布性,进行空间量算直观性强,数据来源面广,比较适合组织地形数据。
由于当前地形测绘手段的多样化,需要使用不同参考坐标系统下的地形数据,这样就需要将不同参考椭球不同参考坐标系统下的地形数据统一到某一特定的大地坐标系统下[2],论文实验中 W GS84大地坐标系使用的椭球体与全球范围内大地水准面最为重合,在世界范围内得到广泛应用,很适合大范围地形三维可视化的数据组织。对于在WGS84坐标系下经过投影的地形数据,需要将其坐标系统反算到大地坐标系下,具体的反算公式在文献2中可查阅。而不同参考椭球体下的数据,需要根据参考椭球体参数将其坐标修正到WGS84中。当前在理论与实践中有许多针对不同参考椭球体系下的坐标系转换模型与公式,其中布尔莎七参数模型使用已知坐标点求解三个平移参量、三个旋转参量与一个缩放参量Δx、Δy、Δz、ε、σ、τ、k的方法将空间坐标系转换到另一个坐标系下,可得到较高的数据转换精度。
1.2 地形数据存储结构
大尺度的地形三维场景数据量庞大,如果没有合理的数据组织方式,对其进行直接处理会极大地占用计算机内存,同时造成计算机I/O巨大的吞吐量[3]。而且实时的地形可视化系统对计算机渲染帧速要求较高,只有合理组织全球范围内的三维地形数据,减轻计算机图形硬件负担才能实现系统的实时浏览与交互。根据确定的坐标系统建立科学合理的数据组织模型,降低渲染时计算机内存中的冗余数据量,实现地形数据的分层分块与快速检索,可以说是全球三维地形建模工作中必不可少的一项。
数字高程模型(DEM)是当前对地形进行三维表达的最主要方法,从其表示方式分类,DEM主要包括规则格网(RSG)与不规则三角网(TIN)两种。规则格网模型由于存储数据量相对较小,结构简单,分层与分块的难度较小,适宜作为大区域地形的表达方法与存储方式[4]。
为了减少内存空间的数据冗余,实现地形数据的高效调度,还需要对地形数据进行分块与分层的预处理。在对地形的横向分块中,使用一定间隔的等分经纬格网将地形划分为若干个地形子块,从而有利于地形数据在大地坐标下的快速调度,减轻大数据量对计算机内存空间造成的负担。在纵向的分层方面,需要对划分出的地形块进行细节层次简化,建立地形的多分辨率模型,在渲染时通过计算与视点之间的距离决定渲染的细节层次,从而减少地形数据在计算机屏幕空间的数据冗余。
按多层次细节的建立方式分类,地形LOD算法分为离散与连续LOD两类。相对于离散LOD,连续LOD需要在场景时花费额外的时间用于对DEM与纹理数据进行插值,可能会造成渲染效率低下。所以,对大尺度的地形场景而言,离散LOD模型是最好的选择。考察各种离散LOD模型的生成算法,等分四叉树模型能与大地坐标系实现较好的统一,在经纬度下使用逐级四叉树分裂的方式,能够通过较少的计算量对地形与影像纹理进行规则采样。
经过对地形进行分层与分块,将地形块数据以数组的形式存储至计算机。有必要在不同层次之间的地形块之间建立空间索引,从而能够视点位置实现地形块数据的快速检索。如图1所示使用四叉树方式将不同层次的地形数据进行统一的组织,建立四叉树状的数据存储结构,一方面能够与大地坐标系统实现统一,另一方面采用树状的分支结构,有利于进行有效的数据裁剪,可有效地进行视锥体裁剪,降低程序运行的时间复杂度[5]。
图1 地形数据存储的金字塔模型与四叉树结构
除了表现地形起伏效果的DEM数据,在构建大尺度的地形场景时,影像纹理数据的存储方法也是一个必须要考虑的问题。相似于对DEM数据建立LOD模型,对影像纹理数据也需要通过建立多分辨率模型来降低在纹理贴图中存在的数据冗余。为了保持与DEM分块管理上的一致性,对影像纹理也使用四叉树结构的数据存储方式。同层节点对应影像纹理可使用相同大小的数组进行表示,不同层次的节点之间数据精度有所不同。四叉树的每一个节点对应该区域的DEM影像纹理块,四叉树的根节点对应于整个地形区域,4个子节点分别为父节点的1/4区域,依次类推,每个子节点产生4个子节点,直到达到原始数据的最佳分辨率。
2 地形实时三维可视化
2.1 坐标空间变换
要实现大尺度地形数据的可视化,地形渲染程序需要经过投影变换将处于大地坐标系下的地形数据变换到二维的屏幕坐标系下,如图2所示。也就是需要在大地坐标系和屏幕坐标系统之间建立一种空间变换模型,才能保证地形场景得到正确的渲染。大地坐标系并非是空间直角坐标系,大地高 H与经纬度B、L存在尺度上的不统一,不能被当作渲染过程中的世界坐标系进行使用。对于在大地坐标系下组织起来的地形数据,只有将大地坐标系下的地形数据转换到空间直角坐标系下使用。
图2 三维模型的显示与绘制过程
对于使用四叉树存储结构的地形数据,四叉树上的每个节点对应于一个数据文件。整个四叉树上的所有节点形成一个多分辨率的金字塔模型[6]。将地形数据以划分为若干地形块的方式组织起来以后,每个地形块数据都记录块内区域采样点坐标,为了能够在三维空间内还原地形的真实分布形态,需要将坐标统一到空间直角坐标系下。
由于地形数据的组织过程在大地坐标系下进行,在地形块数据文件中记录地形块模型中顶点的大地坐标(B,L,H)。在最终的渲染过程中将每一个顶点的大地坐标转换成空间直角坐标系下的(X,Y,Z),转换公式为
其中e是所使用地球参考椭球体的扁率,N为顶点所在卯酉圈平均半径,具体计算公式为
场景渲染中的世界坐标系是空间直角坐标系,而各个地形块是在大地坐标系下组织起来的,在对地形块进行调度的过程中,需要事先把空间直角坐标转换到大地坐标系下,用(B,L,H)进行表示,然后根据建立的四叉树索引机制找到对应的地形块,将其地形块调入内存,添加至绘制管线进行实时渲染。
2.2 多分辨率地形纹理映射
在地形可视化过程中,除了利用光照模型使地形产生阴暗起伏的效果外,还需要通过贴加纹理图像的方法来提供更丰富的信息来弥补几何数据复杂描述的不足,提高地形的真实性。然而如果不能采用适当分辨率的纹理图像进行映射,就会造成图形显示质量的下降,降低系统的渲染效率[7]。
对于已经建立起来的多分辨率纹理模型,如何确定映射到地形模型的纹理级别是实现纹理映射的关键。一般来说,分辨率的选择与视点,地形块位置、大小和纹理的原始分辨率都存在关系。根据纹理映射的原理,如果同一区域的两个不同分辨率的纹理作为该区域表面的纹理属性,该区域所对应的颜色空间会存在一定的变化,并且该变化同样会在投影面上产生一定的投影值,在一定的观察条件下,如果该变化没有引起视觉效果的变化,则可使用其中较低的分辨率作为该表面纹理属性。根据视点与模型之间的关系建立影像与观察位置之间的关系,设定一定的阈值判断视觉效果是否发生变化,就可以动态的确定影像分辨率。
由透视投影平面与视点之间的几何关系,参考
式中:k为纹理图像的分辨率级别,d为纹理分块距视点的距离,w为纹理分块的大小,l为地形数据行间距与列间距的几何平均值。通过对其设定阈值ρmin即可计算出对应的纹理级别。
2.3 地物模型匹配
在三维地形可视化系统中,地形作为建筑物、树木等其他地物的载体与定位依据,必须与这些三维地物模型相匹配[8]。而每一个地物模型都具有自己的独立坐标系统,如图3所示 P-UVW为地物的独立坐标系,O-XYZ为世界坐标系,要实现地物与地形的正确匹配必须将地物坐标系转换到世界坐标系下,也就是将独立坐标系经过一定的空间变换与世界坐标系实现在方向、位置与尺度上的统一。文献[6]中纹理误差的计算方法,可得到
图3 地物坐标系与世界坐标系
如图3中 P(xp,yp,zp)点,经过匹配地物坐标系的竖直轴即图中的 PW必须处在O P的延长线上。β角为 PW与世界坐标系OZ轴之间的夹角,α为P点所在的子午平面与起始子午面之间的夹角。
从模型独立坐标到世界坐标的转换等价对独立坐标系做几何平移、旋转与缩放操作。变换过程如下:
1)如果存在独立坐标系与大地坐标系尺度上的不统一,对其进行缩放。
s为尺度缩放因子,例如厘米为地物模型的场景单位,而世界坐标系又定义成以米为标准单位,那么就需要将模型单位从厘米转换到米,则缩放因子s=0.01。
2)对独立坐标系坐标轴进行旋转,使其对应到世界坐标轴。
在 P点做与参考椭球相切的平面,作为建立地物模型的基准面,并且经过 P点存在参考椭球体大圆平面 POZ与基准平面相交,将相交形成的向量 u作为独立坐标系中的x轴。以OP两点连线形成的向量w作为独立坐标系的z轴。通过 z轴与x轴方向向量的叉乘可确定唯一向量v作为独立坐标系的 y轴。
通过对向量 u、v与w向量进行归一化处理可得到旋转变化矩阵
3)平移模型坐标系原点到世界坐标系原点。
对于图3中的 P(xp,yp,zp)点,独立坐标系到大地坐标系的平移矩阵
完整的变换矩阵为
3 实验与结论
基于以上的地形数据组织方法,论文使用重庆市南川地区的DEM与高分辨率遥感影像数据建立区域内三维地形模型。所使用数据的分布区域投影面积为10 700 km2,DEM采样点间隔为80 m,采用对应区域遥感影像总数据量为1.18 G。如图4所示,通过使用四叉树结构对地形数据进行多分辨率的数据组织,实现了区域内三维地形场景的实时交互可视化。
图4 多分辨三维地形格网
为了构建多分辨率的纹理映射模型,首先对遥感影像进行分块处理,然后对每一块影像子块根据不同的采样分辨率构建纹理金字塔,根据地形与视点之间的位置选择其所使用的纹理级别。图5为使用多分辨率与统一分辨率纹理映射效果对比,图5(a)为使用全局统一分辨率进行映射的效果,随着视点推近,纹理细节越来越不能适应表现模型细节的需要,图5(b)使用的多分辨率纹理模型充分考虑视点位置、角度信息,纹理细节能够得到较好的体现。
图5 多分辨率纹理映射效果
实验使用WGS84参考椭球参数建立三维地球模型,将区域内的三维地形加入到地球模型中,发现区域内的地形能够保持较真实的空间分布形态,地球曲率对地形分布的影响得到较好的体现。通过对地表建筑物进行空间变换,地物与地形实现较好的匹配,如图6所示。
图6 大区域地形场景与地物匹配效果图
[1]胡鹏,吴艳兰,杨传勇,等.大型 GIS与数字地球的空间数学基础研究[J].武汉大学学报:信息科学版,2001,26(4):296-302.
[2]成英燕,李夕银.适用于不同椭球的高斯坐标正反算的实用算法[J].测绘科学,2004,29(4):26-27.
[3]温菊屏.三维地形数据存储与调度方法研究[D].武汉:华中科技大学,2004.
[4]S.Deb.Real-time Streaming and Rendering of Terrains[A],ICVGIP[C].国际图形图像处理学会,2006,276-288.
[5]赵文吉,胡卓玮,陈永良,等.基于四叉树的多分辨率地形数据三维可视化[J].中国图形图像学报,2007,12(8):1457-1462.
[6]黄全品.基于四叉树和分块调度技术的海量地形数据实时可视化研究[D].成都:成都理工大学,2005.
[7]韩振东.多分辨率地形与影像纹理模型构造与可视化的方法研究[D].阜新:辽宁工程技术大学,2005.
[8]李惠,崔磊,林诚凯,等.一种超大规模地形的实时渲染方法[J].系统仿真学报,2004,16(4):736-739.
The real-time transformation and visualization method of large-scale terrain 3D scene
L IYu-dong1,2,Zhang Jun2
(1.School of Geomantic,Liaoning Technical University,Fuxin 123000,China;2.Chinese Academy of Surveying and Mapping,Beijing 100039,China)
Terrain 3D visualization isalwaysa hot research spot in 3DGIS,thispaper,w ith the needsof terrain’s real-time rendering,combined w ith the multip le solution organization methods of terrain model under geographical coo rdination system,made a serious research on spatial transfo rmation methods in visualization pipeline,and put fo rw ard a resolution on large scale terrain’s transfo rmation.Besides,themethods of p recise mapping and matching betw een image texture,features and terrain w as established,so that the visualized terrain 3D scene can reflect their real and natural distribution.
real-time 3D visualization;spatial transformation;texture mapping;feature distribution
TP391
A
1006-7949(2010)06-0043-05
2009-09-07
李玉东(1984-),男,硕士研究生.
[责任编辑张德福]