基于SGOG瓦块的数字地球真三维可视化技术与应用

  • 王金鑫 , * ,
  • 李耀辉 ,
  • 郑亚圣 ,
  • 邹煚 ,
  • 杨晶
展开
  • 郑州大学水利与环境学院, 郑州 450001

作者简介:王金鑫(1968-),男,副教授,主要从事空间信息网格及3S理论与应用研究。E-mail:

收稿日期: 2014-08-07

  要求修回日期: 2014-11-30

  网络出版日期: 2015-04-10

基金资助

测绘遥感信息工程国家重点实验室开放基金项目(12I02)

矿山空间信息技术国家测绘地理信息局重点实验室开放基金项目(KLM201203)

郑州大学研究生教育专项基金项目(ZYJ2014050)

郑州大学大学生创新实验项目(2014xjxm056)

True 3D Global Visualization Technology Based on SGOG Bricks and Its Application

  • WANG Jinxin , * ,
  • LI Yaohui ,
  • ZHENG Yasheng ,
  • ZOU Jiong ,
  • YANG Jing
Expand
  • School of Water Conservancy & Environment of Zhengzhou University, Zhengzhou 450001, China
*Corresponding author: WANG Jinxin, E-mail:

Received date: 2014-08-07

  Request revised date: 2014-11-30

  Online published: 2015-04-10

Copyright

《地球信息科学学报》编辑部 所有

摘要

以Google Earth为代表的第一代数字地球平台,利用球面剖分瓦片,构建了2.5维静态的数字地球表面,实现了地表空间数据的集成、建模和应用,但没有涉及地表上下的空间。本文阐述了球体大圆弧QTM八叉树剖分的规则、瓦块体系的几何特征及其编码原理,设计并实现了瓦块编码到空间直角坐标之间的互换算法,并利用C++和OSG等主流语言,构建了真三维数字地球可视化平台的雏形框架;实现了球面和球体的任意剖分、地表上下空间实体的可视化建模及简单三维空间分析。初步展示了球体瓦块的新一代数字平台在天地一体化空间大数据集成、管理、建模与应用中的优势及前景。研究表明,球体大圆弧QTM八叉树网格,具有简单、规整、几何特征明晰、适宜作为全球离散空间的坐标基准,利于空间实体建模与可视化等特点,可作为构建新一代数字地球平台的数据模型基础。

本文引用格式

王金鑫 , 李耀辉 , 郑亚圣 , 邹煚 , 杨晶 . 基于SGOG瓦块的数字地球真三维可视化技术与应用[J]. 地球信息科学学报, 2015 , 17(4) : 438 -444 . DOI: 10.3724/SP.J.1047.2015.00438

Abstract

3D visualization is a key supporting technology of modern geographic information science. The spherical surface subdivision bricks were employed to build 2.5D static digital earth surface in the first generation of Digital Earth platforms represented by Google Earth. These platforms implemented earth surface data integration, model developments and applications, but did not involve the spaces above the surface and subsurface spaces. Therefore, the study of true 3D visualization technology based on spherical solid subdivision bricks is essential and necessary. The subdivision rules of Sphere Geodesic QTM Octree Grid, the geometric features, and the coding principle of brick system were described in this research. The transition algorithm between a brick code and its 3D Cartesian coordinate were designed and conducted. A prototype framework of true 3D digital earth visualization platform under C++ and OSG language environment was developed to achieve the arbitrary subdivision of a sphere, the visual modeling of underground, the surface and aerial entities, and the simple 3D spatial analysis. The advantages and prospect of the new generation Digital Earth platform in integration, management, model development and application of integrated space-ground spatial big data were demonstrated. The results indicate that the Sphere Geodesic Octree Grid has advantages such as simplicity, regularity, clear geometric features, being suitable as a global discrete space datum, and being conducive to the spatial entity modeling and visualization, etc. It can be used as the basis of data model to develop a new generation of Digital Earth platform.

1 引言

可视化是包含计算机图形、图像、视觉和虚拟现实等多个技术领域的一门重要交叉学科[1]。地理信息可视化,经历了从二维、局部、静态到多维、全球、动态的发展过程,其内在驱动引擎就是底层的空间数据模型。传统地学三维可视化领域的空间数据模型归根结底只有2种:面元模型和体素模型[2-3],且均为局部的、小范围的欧氏模型。面元模型加纹理往往可以达到较好的地形和建筑可视化效果,在3DGIS领域应用广泛;而体素模型常用来表达地质体垂向的多个界面,并方便水平与垂直剖面的制作,在3DGMS(三维地学模拟信息系统)中应用广泛[2-3]。面模型不能很好表达洞穴、拱桥和悬崖等复杂的地理实体,难以实现地形体数据表达和实时编辑,基本上不可能实现地理空间过程的模拟[4]。而基于体素的模型可以实现虚拟地理场景的快速构建与多分辨率实时拆分,以及体素模型与表面模型、多维地理对象与地理过程的一体化表达,利于复杂地学分析[5],能较好地表示空间粒子之间的相互作用关系[2],适用于表达地理空间过程的动力学机制,进而实现对多尺度地理现象与过程的模拟、分析与预测。就三维建模而言,面模型的静态表达已经成熟,而对体素的时空模型数据的可视化仿真比较少[2],尤其是面向数字地球的真三维可视化技术研究更少。要研究真三维数字地球可视化技术,首先要解决的关键问题是底层体素模型的设计,以及基于体素的地理空间表达。
数字地球是一个可以嵌入海量空间数据的、多分辨率的、三维的地球虚拟表示[6]。21世纪以来,随着计算机、网络和三维可视化等技术的发展,人们已建立了50余种数字地球平台[7](包括我国开发的GeoGlobal[8]和GeoBeans[9]等),已成为当代地理信息技术的重要标志[8]。这些平台各具特色[8-10],但在三维可视化方面,它们都是基于面元模型。即利用球面剖分面片构建三维地球表面框架,在其上叠加影像数据和地图数据,形成虚拟的地表环境,进而实现地表空间数据的集成、建模、共享和应用。本文把应用于全球的、顾及地球曲率的面元(球面网格)和体素(球体网格)形象地称为瓦片和瓦块。随着科学技术的发展,人们对地球系统的认知范围,横向上覆盖了整个地球表面,纵向上从大气层顶向地表之下纵深发展。地理空间大数据背景下,上述利用全球离散网格(Discrete Global Grid Systems, DGGS)[11]瓦片,构建的第一代数字地球沿袭了面元模型的局限,存在以下2个重要缺陷:(1)它仅恢复了地球表面的流形性质,并不涉及地表上下的空间,无法实现天地一体化的空间数据集成;(2)它是一个静态的表现模型(数字地球仪),仅是对地表在某段时间内外观状态的近似描述,无法实现地理过程的动态模拟,不能应用社会与环境过程模型模拟地球的将来状态[12],不支持面向大区域和全球尺度的、综合的大型地理计算,不利于揭示地球系统的动力学机制。本文利用球体大圆弧QTM八叉树剖分(SGODG)瓦块,构建了数字地球真三维可视化平台原型系统,实现了天地一体化的地理实体建模与可视化,在建立面向地理空间大数据的新一代数字地球平台方面进行了初步的尝试。

2 真三维数字地球平台的数据模型设计

2.1 剖分体系设计

球体三维网格(Earth System Spatial Grid, ESSG)[13]的研究,缘起于地球物理和地球系统科学,针对中大尺度及全球性问题,例如:地壳板块运动、地幔对流、大气环流等;且与球面网格的研究是并行发展的。在该领域人们已经提出了经纬网格、阴阳网格(Yin-Yang)[14]、立方体网格(cubed sphere)[15]、球面三角网径向延伸网格[16]、适应性细分网格(Adaptive Mesh Refinement,AMR)[17]、球面三角网和径向不连续面划分网格[18]、退化八叉树网格(Spheroid Degenerated Octree Grid, SDOG)[19]、球体圈层空间网格(Sphere Shell Space Grid,S3G)[20]和球体大圆弧QTM八叉树网格(Sphere Geodesic Octree Grid, SGOG)[21-22]9种剖分方案。其中,前6种除了经纬网格外,都是面向特定专业领域的“一次性设计网格”,基本不涉及或不强调地球场域的统一定位框架及一体化空间数据的组织与管理;而球体经纬网格变形过大,不适宜作为构建数字地球平台的空间数据模型。后3种网格实现了整个重力场的剖分,彻底恢复了地理空间的流形性质,反映了地球系统的整体性和系统性,面向空间大数据的集成与融合,且相对均匀,变形适中,适宜作为构建数字地球平台的空间数据模型。
上述3种网格模型各有特点。SGOG方案可分为2个相对独立的步骤[21-22]:(1)球面剖分。首先,把地球沿赤道和从0°开始的2个相互垂直的大圆经圈,把球面分为相等8个球面三角形。接着对每个三角形分别取三边的中点,并用大圆弧连接,形成4个二级的球面三角形;然后,遵照此方法依次对后面各级球面三角形进行递归剖分,直到满足应用为止(递归的层次数为n)。(2)径向剖分。从网格的的每个节点向球心引直线(球半径),并进行等长或变长二叉树递归剖分(本文主要研究等长剖分)。比较而言,SGOG方案,规则简洁明了,层次清晰,灵活性强;测地线网格应用于全球尺度专业建模可很好地避开极点问题[23];网格瓦块形体简单,几何要素的数学公式明晰,排列规整,空间关系一致,与地心三维坐标对应整齐;同层瓦块形变较小,变长剖分整个瓦块体系体积变形最小;变长方案很容易实现地球圈层的精准剖分[22]。尤其是,椭球测地线与大圆弧具有类似性质,SGOG方案可以推广到椭球,进而实现地理空间的精准建模;而属于经纬网格的SDOG和S3G方案,因定义大地纬度的椭球法线一般不经过椭球的几何中心,因而其不能推广到椭球。

2.2 瓦块编码设计

与传统笛卡尔坐标系使用连续的坐标串来标识空间位置不同,离散网格使用离散的网格编码来标识空间位置。网格编码是一个将多维离散空间映射到一维离散空间的过程,蕴含着网格的位置、尺度和空间关系,是网格具有多分辨率空间数据组织能力的重要体现[24]。从上面的介绍可看出,SGOG方案实际上是一个完全八叉树剖分,适用于八叉树规则。地球系统是一个多圈层的流形空间,16倍的地球半径就可以满足包含地球系统所有圈层、基本覆盖人类活动空间的要求[13]。考虑到定位和计算的方便,SGOG方案采用“圈层码(十六进制)+八分体标识码(八进制)+球面位置编码(四进制)+径向深度码(二进制)”的编码模型。这里的圈层并不是实际的地球圈层划分,而是以整数倍地球半径表示的从地心和磁层的距离。球面的四叉树码可以采用已有的各种编码方案,本研究采用方向编码[25]。径向二叉树编码按靠近球心位置为0,靠近球面位置为1的原则进行[22]

3 系统总体架构与关键技术

3.1 总体技术架构

目前,可用于开发三维场景系统的工具很多,比较常见的有D3D(Direct3D)、OpenGL(Open Graphics Library)、OSG(Open Scene Graph)和OGRE(Object-Oriented Graphics Rendering Engine)等图形开发语言或图形接口。D3D和OpenGL是比较底层的接口库,OSG和OGRE是二次封装过的三维引擎,可更简易的实现具体效果。OGRE偏重渲染效果,而OSG则更侧重科学计算可视化。
OSG是一个开放源码、跨平台的图形开发包,为诸如飞行器仿真、游戏、虚拟现实、科学计算可视化等高性能图形应用程序开发而设计。它把开发者从实现和优化底层图形的调用中解脱出来,并且为图形应用程序的快速开发提供很多附加的实用工具。C++是当今主流的编程开发语言之一,是一种优秀的面向对象程序设计语言。它完美地体现了面向对象的各种特性,并且利用其STL (Standard Template Library)机制,可方便地实现各种算法的功能,在计算机科学的各个领域中得到了广泛的应用。VS 2010由微软公司推出,是目前流行的Windows平台应用程序开发环境。拖曳式开发,操作简便,功能强大,支持C#、C++等语言。本研究以OSG作为图形引擎,以VS 2010为平台,以标准C++作为开发语言,基于SGOG方案的原理与方法,实现真三维数字地球平台的雏形结构与简单应用。其总体技术架构如图1所示,从下向上,可分为数据、技术支撑、功能和界面4个层次。剖分数据主要存储在建模过程中生成的相关层次的网格瓦块的顶点坐标数据和相应的网格编码数据,用于空间实体建模和空间索引。模型数据主要是实体模型数据,如DEM数据、空间实体数据,还包括仿真的纹理数据等。功能上,主要实现了球面、球体的任意剖分、网格编码到空间直角坐标的相互换算、瓦块几何特征计算、任意地理实体的网格建模及纹理仿真、简单空间查询等。
Fig. 1 The system architecture

图1 系统总体技术架构

3.2 系统功能应用过程

实现系统功能应用的主要步骤包括:(1)基础功能(如求弧中点,绘制弧线、单个QTM瓦块等)实现;(2)判断一个点是否在指定空间内(坐标转QTM瓦块编码的一个关键);(3)QTM瓦块编码与坐标的互转换;(4)基于八叉树规则的球面和球体编码集计算与模拟;(5)大范围真实地表数据输入与输出;(6)不规则空间形体编码集计算与模拟;(7)三维坐标投影到二维;(8)模型贴图仿真。

3.3 瓦块结构体实现关键技术

3.3.1 瓦块结构体设计
SGOG网格体系包括球面三棱台和球面三棱锥2种瓦块。瓦块是离散网格的基本单位,也是地理空间建模的基础。因而,对瓦块结构体的设计与实现是首要的关键技术。本文的瓦块绘制程序基于C++平台的应用程序接口OSG开发,其结构体如下:
struct OrtTriPri_Struct
{
double ExternalRadius; //外半径
osg::Vec3 ExternalPoint0; //3个外层顶点,坐标为(x,y,z)
osg::Vec3 ExternalPoint1;
osg::Vec3 ExternalPoint2;
double InternalRadius; //内半径
osg::Vec3 InternalPoint0; //3个内层顶点,坐标为(x,y,z)
osg::Vec3 InternalPoint1;
osg::Vec3 InternalPoint2;
};
由结构体绘制线框模型共需3步:(1)外层3个顶点两两之间绘制大圆弧;(2)内层3个顶点两两之间绘制大圆弧;(3)内外层对应顶点之间绘制直线。
3.3.2 网格编码与空间直角坐标的换算
由瓦块结构体可知,要绘制瓦块,必须求出瓦块顶点的坐标。SGOG方案由于采用了大圆弧中分的剖分规则,整个网格体系与空间直角坐标对应十分整齐。下一层网格新增的节点就是上一层网格节点的中点,通过求弦的坐标,将其投影到球面即可。在可视化时,采用多段弦来逼近弧。
本研究在算法设计时,对上面的编码模型做了一些改动:将整个码用A和B标识为3个码段。A之前的为圈层码,由若干个1构成。若没有1,则表示是固体地球本身(即1倍的地球半径),每多一个1,球的半径就乘以2,依此类推。A和B之间的二叉树码表示网格瓦块的径向位置;B之后的第1位八进制码为瓦块所在的八分体标识码,其余的四进制码表示瓦块在球面的横向位置。根据以上编码和剖分规则,给定初始条件,设计八叉树编码与空间直角坐标相互转换的算法思路如图2所示。在直角坐标到编码转换时,算法默认点所在的层即为剖分时的最外层。
Fig. 2 Conversion algorithm between octree code and 3D coordinates

图2 八叉树编码到空间直角坐标映射的算法思路

在直角坐标到网格编码的转换过程中,一个重要的技术环节就是判定某个空间点的位置,即判断它在那个瓦块内。其判断原理如图3所示,在平面图形AOB中,若点P在∠AOB内,向量a和向量b为AO、BO的垂线,则: a × c ≥0、 b × c ≥0成立。这个结论可以推广到三维空间。图4为一些瓦块及其编码的示意图。
Fig. 3 Method for judging a point location

图3 空间点位置的判断方法

Fig. 4 Voxel bricks and their codes

图4 体元瓦块及其编码示意图

3.3.3 瓦块的几何特征计算
SGOG剖分方案充分利用了大圆弧和球心的性质,剖分网格体系形状简单,所有瓦块的底面为球面三角形,侧面均为平面。这样瓦块各面的面积,以及体积都无需积分计算,由瓦块顶点坐标、弧长和弦长公式、扇形和球面三角形的面积公式及径向半径,很容易推导出瓦块几何中心点的坐标、上下底面边长、径向棱长、上下底面面积、侧面积,以及体积的数学表达式。已知瓦块编码,也很容易算出其几何特征值。图5所示的是编码为11A0101B00000的瓦块的各几何特征值(地球半径取6371 km)。
Fig. 5 Geometric characteristic values of a voxel brick

图5 体元瓦块的几何特征值计算

3.3.4 球面和球体剖分编码集的计算
SGOG的球面剖分遵循递归大圆弧中分四叉树规则,在此基础上,同时进行径向二叉树剖分,从而实现球体八叉树剖分。通过对剖分层次和球面位置双重循环,剖分计算得到球面四叉树编码集,类似地,通过对剖分层次、径向位置和球面位置三重循环,剖分计算得到球体八叉树编码集。通过上述换算,可实现对球面或球体的任意剖分及其可视化。
3.3.5 天地一体化的空间实体建模与可视化
(1)真三维数字地球模型
基于给定层次的球体八叉树剖分,可构建三维数字地球的网格模型。通过编码操纵瓦块,可实现三维地球分割。经过纹理贴图,实现仿真模拟,如图6所示。这是第一代数字地球所不能达到的。
Fig. 6 Arbitrarily divided of true three-dimensional Digital Earth based on voxel bricks

图6 真三维数字地球的分割

(2)中大尺度DEM建模
从共享网站(http://srtm.csi.cgiar.org/)下载了覆盖中国大陆地区的1144幅90 m分辨率的DEM数据。基本参数:UTM/WGS-84,GeoTIF格式,3601×3601像元。利用第9层QTM网格(网格球面边长约为19.5 km)建模。通过经纬度坐标实现网格节点与DEM行列号的匹配,然后进行高程采样,最终实现DEM的可视化。图7表示的是高程放大30倍后的效果。
Fig. 7 Large area DEM visualization

图7 大区域DEM可视化效果

(3)天地一体化空间实体建模
通过实体尺寸和表达精度,确定瓦块的大小,进而确定剖分的层次;根据实体的外围特征点坐标确定瓦块的数量、编码和位置,展绘所有网格即可实现地理实体可视化。如图8所示,本文利用假设数据实现了地下(矿体)和空中实体(台风和卫星轨道)的一体化建模。本例展示了SGOG网格具有一体化整合任意地理空间数据的能力。
Fig. 8 The integrative geographic entity modeling

图8 天地一体化地理实体建模

4 结论与讨论

研究表明,SGOG球体剖分方案,充分利用了球心和大圆弧的特性,剖分规则简单,网格体系规整,体元瓦块的几何特征明晰,适宜作为全球离散空间的坐标基准,方便三维空间计算与分析,利于空间实体的建模与可视化,可作为构建新一代数字地球平台的数据模型基础。
全球离散网格具有层次性、规则性、多分辨率和全球一致性等特性。理论上讲,任何一种剖分方案都可以无限细分,以任意精度去“逼近”任意的地理实体。但地理空间存在着球面和平面一体化的问题,地理实体与现象也存在着多尺度表达的问题,地理空间剖分组织可以提供较为理想的解决方案[26]。其实,问题的本质还是一个表达“精度”的问题。测量学上,方圆10 km范围内,地球的曲率一般不考虑,可看作为一个平面。SGOG第10层网格的球面边长约9.75 km,一般的应用场合,可用欧氏三棱台来代替,也可以说此时的球体瓦块退化为欧氏体素。因此,对于局部小区域、小尺度的地理现象,可以用欧氏体素来代替球体瓦块,其前提是满足所需的精度要求。可见,球体网格与欧氏网格存在着辩证的统一。
全球三维离散网格是面向空间大数据的模型框架。因此,新一代数字地球平台具有三重涵义:空间大数据无缝集成与应用平台、空间真三维可视化平台、空间地理过程动态模拟平台。本文仅是三维可视化的初步研究,数字地球领域的很多问题,例如,异源异构地理大数据的融合集成方法及其数据结构、大空间数据服务、大场景精细实体模型构建、地理过程的动力学模型构建与模拟,以及椭球测地线三维剖分扩展等,都是亟待解决的重要问题,也是我们今后的研究方向。

The authors have declared that no competing interests exist.

[1]
王成恩. 网格划分与可视化技术[M].北京:科学出版社,2011.

[2]
蒋秉川,游雄,夏青,等.体素在虚拟地理环境构建中的应用技术研究[J].武汉大学学报信息科学版,2013,38(7):875-878.

[3]
郑佳荣,王强,占文锋.三维建模方法研究现状综述[J].北京工业职业技术学院学报,2013,12(4):5-7,36.

[4]
蒋秉川,游雄,夏青. 一种基于体素的三维地形可视化方法研究[J].测绘通报,2013(3):46-49.

[5]
闾国年. 地理分析导向的虚拟地理环境:框架、结构与功能[J].中国科学:地球科学, 2011,41(4):549-561.

[6]
李德仁. 信息高速公路、空间信息基础设施与数字地球[J].测绘学报,1999,28(1):1-5.

[7]
庞新华,石俊成. 三维虚拟地球发展回顾与展望[J]. 测绘通报,2010(增刊):441-444.

[8]
龚健雅. 3维虚拟地球发展及应用[J].地理信息世界,2011,9(2):15-17.

[9]
张立强. 构建三维数字地球关键技术研究[D].北京:中国科学院遥感应用研究所,2004.

[10]
李晶. 三维数学地球构建关键技术研究[D].成都:电子科技大学,2012.

[11]
Sahr K, White D. Discrete global grids systems[C]. In: Computing Science and Statistics (Volume 30): Proceedings of the 30th Symposium on the Interface, Computing Science and Statistics. Fairfax Station: Interface Foundation of North America, 1998:269-278.

[12]
Goodchild M F.Discrete global grids: Retrospect and propect[J]. 地理与地理信息科学, 2012,28(1):1-6.

[13]
吴立新,余接情.地球系统空间格网及其应用模式[J].地理与地理信息科学,2012,28(1):7-13.

[14]
Kageyama A, Sato T.The “Yin-Yang Grid”: An overset grid in spherical geometry[J]. Geochemistry Geophysics Geosystem, 2004,5(9):1-15.

[15]
Tsuboi S, Komatitsch D, Ji C, et al. Computations of global seismic wave propagation in three dimensional earth model[C]. In: High-performance Computing. Berlin: Springer Berlin Heidelberg, 2008:434-443.

[16]
Baumgardner J R.Three-dimensional treatment of convective flow in the earths mantle[J]. Statistical Physics, 1985,39(5):501-511.

[17]
Stadller G, Gurnis C, Burstedde C.The dynamics of plate tectonics and mantle flow: From local to global scales[J]. Science, 2010,329(5995):1033-1038.

[18]
Ballard S, Hipp J R, Young C J.Efficient and accurate calculation of ray theory seismic travel time through variable resolution 3D earth models[J]. Seismological Research Letters, 2009,80(6):989-999.

[19]
吴立新,余接情.基于球体退化八叉树的全球三维网格与变形特征[J].地理与地理信息科学,2009,25(1):1-4.

[20]
曹雪峰. 地球圈层空间网格理论与算法研究[D].郑州:解放军信息工程大学,2012.

[21]
王金鑫,禄丰年,陈杰.球面离散网格与球体离散网格的比较研究[J].测绘科学,2012,37(6):34-36.

[22]
王金鑫,禄丰年,郭同德,等.球体大圆弧QTM八叉树剖分[J].武汉大学学报(信息科学版),2013,38(3):344-348.

[23]
David A R, Todd D R, Ross R H, et al. Climate modeling with spherical geodesic grids[J]. Computing in Science & Engineering, 2002(4):32-41.

[24]
余接情,吴立新.球体退化八叉树网格编码与解码研究[J].地理与地理信息科学,2012,28(1):14-18.

[25]
Goodchild M F, Yang S.A hierarchical data structure for global geographic information systems[J]. Computer Vision and Geographic Image Processing, 1992,54(1):31-34.

[26]
程承旗,任伏虎,濮国梁,等.空间信息剖分组织导论[M].北京:科学出版社,2012.

文章导航

/