查看原文
其他

论文专区▏地理国情信息系统设计与实现

郭忠磊等 溪流之海洋人生 2021-09-20
点击上方“溪流之海洋人生”即可订阅哦

一、引言

作为十二五规划建设的重大项目,地理国情监测迎合了我国社会经济、国防建设的需要,是全面掌握我国各类地理环境要素的重要手段。从技术角度而言,地理国情监测一方面是一项庞大的数据采集工程。利用先进的测绘技术,丰富的数据资源,采集我国地形地貌、地表覆盖等自然和人文地理要素的现状和空间分布情况,普查范围之广,采集要素之全,前所未有。另一方面,地理国情监测也是一项复杂的信息管理工程。地理国情信息涵盖了地形地貌、植被覆盖、交通网络、地理单元等众多信息,具有数据量庞大、来源广泛、多分辨率、多尺度、多时空、多种类等显著特点。解决地理国情信息管理服务和空间表达问题,是充分发挥其在各领域信息支撑作用的前提和关键。鉴于此问题,李德仁院士指出地理信息网络服务技术及空间信息云计算技术是地理国情监测的关键支撑技术之一[1]。其中,空间数据库技术是空间信息云计算的关键技术之一,可用于地理国情信息的存储和管理;空间数据网络服务和三维数字地球技术是地理信息网络服务技术的关键技术,可用于地理国情信息的共享和表达。对于空间数据库而言较为成熟的商业软件有Oracle Spatial、IBM Spatial Extender、Informix Spatial Datablade及ESRI推出的空间数据引擎ArcSDE,已在地下管网、海岛监测、人防工程等领域得到应用[2-6]。对于地理信息网络服务而言,有OGC(Open Geospatial Consortium,开放地理空间信息联盟)标准的WCS(Web Coverage Service,Web地理覆盖服务)、WFS(Web Feature Service,Web要素服务)和WMS(Web Map Service,Web地图服务)等,这些地理信息网络服务被广泛的应用于交通管理、环境监测、生态分析、安全防控等领域[7-10]。对于三维数字地球技术而言,目前较为成熟的商业产品包括GoogleEarth、ArcGlobe、Virtual Earth、Skyline、GeoGlobe、EV-Globe等。开源的数字地球平台有WorldWind、OsgEarth等。相比而言开源平台拓展性、开放性和可移植性方面具有一定的优势[11-13]

本文采用ArcSDE空间数据库存储和管理地理国情信息,通过ArcServer以MapService形式发布地理国情信息服务,最后通过OsgEarth加载地理国情服务实现三维空间表达。

二、系统架构设计

按照CS架构模式,本文将地理信息系统分为服务端和客户端两部分服务端用来存储管理地理国情信息,并发布地理国情信息服务;客户端以系统平台形式提供应用服务,完成用户的交互任务。从信息处理应用角度而言,可以将系统划分为三个层次分别为数据存储层、数据服务层和数据应用层。数据存储和数据服务只是逻辑上的分层,物理上可以置于同一服务器,也可置于多个服务器。数据服务层和数据存储层之间通过IP协议及SQL语句进行连接和数据获取。客户端提供数据应用。数据应用层通过HTTP协议及REST API获取数据服务层符合OGC标准的数据、符合JSON(Java Script Object Notation,JS对象声明)格式的查询分析结果。系统架构图1。

图1 三维地理信息系统架构图

地理国情信息中主要包含DOM、DEM和矢量数据。其中,矢量数据又划分为不同类别,如地表覆盖信息、地理单元信息、道路信息等。数据存储层的作用就是通过构建空间数据库将这些异构、松散的地理国情信息关联管理起来,并通过数据引擎提供管理和检索功能。数据存储层的实现采用Oracle数据库存储空间地理数据,采用ArcSDE作为空间数据引擎。

数据服务层主要是利用ArcSever将存储在空间数据库中的地理国情信息进行发布。ArcServer可发布多种形式服务,例如影像服务、地图服务和查询分析服务,甚至可以发布空间数据库服务。服务标准可以为ArcGIS的标准,也可以是OGC标准。本文中数据服务层的实现采用的是MapService,标准为ArcServer,架构形式为REST。

数据应用层主要基于OsgEarth构建三维地理信息系统客户端,通过REST API访问服务端地理信息数据,利用OSG三维渲染引擎进行信息融合和可视化,基于JSON进行异构数据查询。由于通过HTTP和REST进行数据传输,客户端不使用任何ArcGIS二次开发技术,保证了客户端的独立性和可移植性。

三、地理国情空间数据库及服务

地理国情空间数据库属于数据存储层,地理国情信息被存储在Oracle数据库中,通过ArcSDE实现地理国情信息的添加、删除、修改和查询获取功能。Oracle数据库和ArcSDE可以部署在一个服务器上,也可以部署在不同的服务器上通过TCP/IP协议进行连接。Oracle数据库主要为地理国情信息生成一系列的数据文件、控制文件、口令文件、日志文件等,并提供SQL命令引擎。而ArcSDE则为地理国情信息空间数据提供地理编码、数据模型和地理参考,通过SQL命令对存储在Oracle数据库中的地理国情信息进行管理。

栅格数据存储

地理国情普查的作业数据源是DOM及DEM,这些栅格信息存储到地理国情信息空间数据库中,一方面是为了实现矢栅一体化管理,另一方面在信息综合展示时可以将这些栅格信息作为背景显示,用来表达地形地貌信息,以丰富信息含量。

实现过程中采用六个业务表来对栅格数据进行存储和管理,分别为:栅格数据索引表、栅格数据信息元数据表、栅格数据的波段元数据表、栅格块表、栅格波段辅助表及用户业务表。每当向地理国情信息空间数据库中添加一幅栅格影像时,需要创建一个用户业务表,同时,ArcSDE会自动在栅格数据索引表中为该栅格影像添加一条记录,赋予一个索引值,并根据该值创建元数据表、波段表、块表和辅助表,也就是说每向数据库中添加一幅栅格影像需要创建五个表,并添加一条记录。这些表通过键与外键相互关联,从而保证了所存储栅格影像的信息完整性。

矢量数据存储

地理国情信息中的地表覆盖分类信息和地理国情实体要素信息,从数据格式而言都是矢量数据每一类数据对应一个图层,在空间数据库中存储时对应一个空间数据表。

这种存储对应关系有两个特点:一是每一图层和空间数据表中包含的信息是单一的,即属于同一类信息,比如地表覆盖信息,道路信息,水域面信息等;二是每一个图层和空间数据表中的矢量形状类型是单一的,为点、线、面中的某一类型,不存在包含多种类型的情况。具体存储时,矢量形状采用ST_GEOMETRY数据模型进行存储,下面给出的是一个矢量形状的ST_GEOMETRY描述:

SDE.ST_GEOMETRY(8,16,133.1,22.7,133.2,22.8,'null','null','null','null',0.1,0.1,300006,'oracle.sql.BLOB@a38527')

具体含义为:第一个数字8的二进制表示为00000111,经过掩码处理,表示该几何体的类型为面;16表示该几何体包含16个点,后续8个值描述该几何体的包络矩形,接着用两个数值描述面积和周长,300006表示空间参考编码,最后一个为包含16个点坐标的字节流。

地理国情服务

地理国情信息服务接口采用REST接口规范。其服务架构图2

2  地理国情信息服务架构示意图

本文设计并实现的地理国情信息服务具有如下特点:

地理国情信息服务中,矢量信息、栅格信息和一些典型的业务功能如查询、编辑等均可通过URI来访问。例如地表覆盖分类信息,其在服务中的URI为:

“http://localhost:6080/arcgis/rest/services/VEC_LCA/MapServer/”。

基于REST的MapService使用HTTP协议中的Put(创建)、Get(读取)、Post(更新),Delete(删除)来完成对空间数据的添加,查询,修改,删除等功能。任何服务都可以利用HTTP定义的通用接口来获取和使用。

客户端对服务器的请求结果可以根据参数的不同以不同格式返回HTML、JSON、KMZ及AMF等格式。

四、地理国情空间表达

地理国情信息空间表达的过程实质上是地理国情信息的可视化过程。此过程包含三个关键步骤,分别为数据加载、数据调度和数据绘制。

地理国情数据加载

数据加载通过URL(Uniform Resource Locator,统一资源定位器)实现,即为一个HTTP链接。由于本文中对服务端的空间数据进行了切片,因此其REST请求格式为:http://{服务器}:{端口号}/arcgis/rest/services/{服务名}/MapServer/ tile/{Level}/{X}/{Y},其中MapServer表明该服务为地图服务;Level表示数据层级,整数类型,值域范围为0,19;X、Y表示所请求的瓦片在经纬方向上的索引值,整数类型。通过该URL就可以获取一个数据瓦片。

地理国情信息调度

客户端除了完成数据加载外,另一个重要内容就是实现数据的调度,本文采用排队算法维持一个载入队列。数据调度流程见图3

3   瓦片数据调度流程图

载入线程P1根据用户观察位置和距离,计算位于视椎体内的瓦片三元组信息值{Level、X、Y},按照距离视点投影中心位置的远近指定载入优先度,将这些三元组按照优先度大小顺序放入载入队列中。删除线程P2遍历载入队列中的三元组,将位于视椎体之外的瓦片三元组值删除。绘制线程P3从载入队列中取出栈顶三元组,按其值从服务器端获取对应瓦片。

地理国情信息绘制

地理国情信息大多为空间地理信息,且统一在数字地球框架结构下进行绘制,因此必须将数字地球构建某种网格状数据结构,然后按照纹理贴图的方式将地理国情信息进行空间表达。本文采用四叉树结构将数字地球以椭球四叉树结构进行组织。四叉树结构建立后,数字地球表面被分割为众多四边形网格。对于DOM及栅格化的矢量数据瓦片而言,根据四边形网格顶点纹理坐标,通过纹理映射方式进行表达;对于DEM瓦片而言,根据四边形顶点的纹理坐标获取DEM图像像素值,进而获取高程值作为顶点三维空间坐标中的z值,从而实现地形的起伏表达。图4给出了地理国情信息空间表达实例,其中,为DEM网格表达;为DOM、DEM及部分矢量线地理国情信息表达;为DOM、DEM及矢量线矢量面地理国情信息表达。

 

4 地理国情信息空间表达示例示意图

五、结束语

本文以空间数据库技术、地理信息网络服务技术及数字地球技术为基础,设计并实现了地理国情信息系统。阐述了系统架构设计、地理国情空间数据库存储、地理国情信息服务及地理国情空间表达等关键问题的解决方法。经实际应用表明,该系统能够对地理国情信息进行高效地管理和表达,且具有较好的移植性和拓展性。下一步,以该系统为基础,将特定的军事信息与地理国情信息相结合,对于全面反映部队驻地地形地貌特征、部队安全防控及战场规划建设具有重要的应用意义。

参考文献:

[1]李德仁,眭海刚,单杰.论地理国情监测的技术支撑[J].武汉大学学报·信息科学版,2012,37(5):505-513.

[2]李 黎,李剑.ArcSDE下的地下管线数据组织[J].海洋测绘,2006,26(6):56-58.

[3]韩富江,张济博,田双凤,等.基于ArcSDE 的浙江省海岛管理信息系统设计与实现[J].测绘与空间地理信息,2014,37(12):90-92.

[4]张立朝,王珂珂,王青山,等.Geodatabase 数据模型驱动的人防地理数据库[J].测绘科学技术学报,2008,25(6):443-447.

[5]滕惠忠,闸 旋,辛宪会,等.基于ArcGIS的海图立体修测技术[J].海洋测绘,2015,35(5):63-66.

[6]王锐,白玲,马德涛,等.基于ArcSDE的人防数据入库的应用研究[J].海洋测绘,2008,28(6):56-59.

[7]Han K.Development of an Interoperable Geographic Information System Planform for Transportation Application[D].Department of Civil and Geological Engineering University of Manitoba.2001.

[8]Pundt H, Bishr Y.Domain ontologies for data sharing an example from environmental monitoring using field GIS[J].Computer Geosciences,2002,28(5):95- 102.

[9]龚彩霞,陈新军,高 峰,等.地理信息系统在海洋渔业中的应用现状及前景分析[J].上海海洋大学学报,2011,20(6):903-905.

[10]杨玉莲.基于ArcGIS和Flex的洱海湖泊环境信息服务研究[D].昆明:云南师范大学,2011.

[11]吴小东,许捍卫.基于OSGEarth的城市三维场景构建[J].地理空间信息,2013,11(2):107-110.

[12]熊自明,葛 文,吴绍民,等.城市三维地下管网信息系统研究与实现[J].信息工程大学学报,2010,11(1):59.

[13]吴晓雪.基于OsgEarth的校园虚拟漫游及信息显示系统研究[D].大连:大连海事大学,2013.


【作者简介】第一作者郭忠磊1986年出生,男,山东临沂人,工程师,博士,主要从事海洋大地测量技术研究文章来自《海洋测绘》(2018年第1期),若其他公众平台转载,请备注论文作者,并说明文章来源,版权归《海洋测绘》所有。


相关阅读推荐

学科报告▏地图学与地理信息系统专业发展研究

快讯▏各省的地理国情普查成果陆续公布

测绘论坛▏探讨政府购买测绘地理信息公共服务

新闻追踪▏中国发布世界首部土地覆被地图集

作品展示▏孙玉超:基于国产高分影像的典型海岛监视监测系统设计

公众号

溪流之海洋人生

微信号▏xiliu92899

用专业精神创造价值
用人文关怀引发共鸣
您的关注就是我们前行的动力 

投稿邮箱▏452218808@qq.com

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存