移动终端GIS地图数据模型研究

2015-02-19 02:27张文诗马宏斌
测绘通报 2015年3期
关键词:数据模型图层实体

王 柯,王 腾,张文诗,马宏斌

(1. 信息工程大学地理空间信息学院,河南 郑州 450052; 2. 光艺微电子有限公司,美国加州 米尔皮塔斯 95035)

Research on the Data Model of Mobile Terminal GIS Map

WANG Ke,WANG Teng,ZHANG Wenshi,MA Hongbin



移动终端GIS地图数据模型研究

王柯1,王腾2,张文诗1,马宏斌1

(1. 信息工程大学地理空间信息学院,河南 郑州 450052; 2. 光艺微电子有限公司,美国加州 米尔皮塔斯 95035)

Research on the Data Model of Mobile Terminal GIS Map

WANG Ke,WANG Teng,ZHANG Wenshi,MA Hongbin

摘要:介绍了移动终端GIS的应用概况和发展前景;研究了移动GIS地图数据模型的相关知识,包括数据表达与数据结构等内容,设计了一种基于自定义瓦片格式的地图数据模型;通过对数据管理和空间索引等内容的研究,提出了一种改进的移动GIS空间索引结构和数据管理模式,并对其进行了比较和分析。该地图数据模型可以为移动GIS地图应用提供高效、快速、准确的操作平台和技术支持,具有较高的实用性和参考价值。

关键词:移动终端;地图数据模型;移动GIS;自定义瓦片;空间索引

一、引言

移动终端GIS是指运行于移动终端设备上的、具备PC版GIS部分功能的、拥有移动计算能力的地理信息系统。随着嵌入式操作系统、移动智能终端、无线互联网等软硬件技术的飞速发展,移动GIS逐渐具备了提供地理空间信息公共服务“4A”的能力,移动终端GIS应用已经成为GIS应用领域的研究热点和发展趋势[1]。

传统GIS主要依托服务器端硬件和桌面开发平台软件的强大性能实现数字地图的服务应用,而移动GIS的服务指数主要取决于硬件配置和嵌入式操作系统性能[2]。面向移动终端的移动GIS地图服务应用逐渐得到普及,基于移动地图的数据模型成为了研究热点,相对于桌面GIS的静态GIS和静态地图特性,移动GIS的动态GIS和动态地图在数据模型上依托于移动式数据库的数据模式,伴随着移动式信息服务需求不断增长,如何依托移动终端有限的平台资源实现移动GIS地图数据的有效存储、高效检索与快速应用成为了一个亟待解决的问题[3]。

本文针对移动终端GIS地图数据模型进行相关理论研究和技术探索,提出了一种实用、有效的移动GIS地图数据模型,设计了模型中的数据表达、数据结构与数据存储等理论框架,构建了一种移动GIS地图数据模式,设计了相关技术框架,可应用于移动GIS地图服务、移动式数据采集、路径动态导航等领域。

二、移动终端GIS概述

移动终端GIS的描述有狭义与广义之分。狭义上,移动终端GIS特指应用于移动终端上的GIS,是一个客户端即服务器端的应用软件;广义上,移动终端GIS泛指客户端为移动终端平台的各种GIS,既可以是单纯的应用软件,也可以是拥有客户端/服务器端架构的应用组件式平台。移动终端GIS应用平台由3部分组成:操作系统(桌面系统和嵌入式系统)、应用平台(移动终端和服务器硬件设备)和GIS软件[4],具体内容如图1所示。

图1 移动终端GIS组成

三、移动GIS地图数据模型

移动终端GIS在应用范畴上属于移动GIS应用,基于地图的各种应用,尤其是在地理空间信息服务方面,移动终端GIS应用得到了普及[5]。移动终端硬件资源的有限性使得目前很多移动GIS地图服务功能受到性能限制,这就需要设计出一种高效的移动GIS地图数据模型,以最大限度发挥移动终端GIS基于地图服务的应用。

1. 数据表达

移动GIS可基于多种地图服务模式进行数据表达,本文主要研究基于自定义瓦片地图的数据表达。作为移动GIS地图表达的显示格式,数据模型包含地理实体与地理实体间的拓扑关系。数据模型的数据结构由矢量数据与栅格数据组成,前者以点状、线状和面状等几何属性加上描述语言表达地理要素,其单一要素的空间位置通过有序二维坐标值(x,y)进行描述,地理实体间的空间属性由拓扑图决定;后者以网格的形式规则描述地理实体,通过每个网格的属性值表达地理空间数据,可根据网格行列号,结合地图分辨率(行与列)得出当前栅格单元的实体数据[6]。如图2所示,可逐行逐列顺序表达数据栅格单元,数据栅格单元二维坐标值(x,y)的计算公式为

x=j×GRID_WIDTH+x0

(1)

y=i×GRID_HEIGHT+y0

(2)

图2 数据栅格单元坐标计算

2. 数据结构

自定义瓦片地图数据采用分层分块格式,地理实体依照分辨率按比例显示,其数据结构定义如下:①点状实体,设置网格坐标、几何大小与颜色搭配等对应属性;②线状实体,设置起始二维坐标、形状等级与色调融合等对应属性;③面状实体,设置组成线段二维坐标集、网格面特征列表与像素点区域色调等对应属性;④每一地理实体匹配瓦片层标识、网格坐标标识与分层比例标识等,使得对应实体线或无规则多边形中涵盖的网格像素点依据对应标识符有序组合;⑤每个地理实体可以添加对应语义信息和几何图形信息,还可以关联相关多媒体信息,添加的信息被赋予相应地理属性[7]。

在本文设计的数据结构中,瓦片层标识符FLayerID表示实体对象所处图层;网格坐标标识符GridID表示空间实体坐标对应的网格区域;像素点标识符PixelID表示地理实体空间PolylineID;地理实体标识符SolidID表示地理实体的点状、线状与面状等属性;GA标识符表示地理实体的图形特征,如几何形状、色调和线宽等;Dir表示面状地体实体区域属性(内/外);SerialNO表示空间地理实体的构成元素次序号;X、Y用于表示二维坐标值。采用此数据结构可以实现对地图数据的多尺度表达和高效存储,数据结构构成如图3所示。

图3 数据结构构成

3. 数据模型

移动终端GIS地图应用面向的主体为地理实体,这类实体的数据模型基于实体间的概念抽象与逻辑关系。有效的数据模型实现机制既可以准确表达地理空间现象,又能提供完整的地理景观[8]。针对移动终端的软硬件特性,结合GIS地图服务功能需求,本文提出了一种面向地图应用的移动GIS数据模型,此类数据模型主要针对移动数据库而设计,便于实现基于移动终端GIS的地理空间分析功能与空间索引操作。

移动GIS数据模型中,每一地物都匹配对应的基类,每一基类衍生出3种地物类别:点、线和面。基于每一基类,可以面向不同应用需求派生出功能各异的衍生类。基于地图数据的基类中,根据图形操作的要求不同与逻辑关系的属性不同,可将同一操作性质和应用属性的基类封装为同一图层类,这类数据既具有地理实体物理属性,也具有其逻辑属性[9]。本文中的数据模型是基于数据图层对地理实体进行操作的,具体运作程序如下:

1) 获取数据图层的对象集合,然后基于对应数据图层的指针,进行遍历操作。

2) 依据图层中实体对象的几何分类,进行遍历操作:对点实体集合进行遍历操作,获取对应点对象;对线状实体集合和面状实体集合分别进行遍历操作,获取对应指针对象,然后取得指针对象对应的点集合规模、形状、坐标等数据。

对于属性相近或数据差异不大的数据图层,移动GIS地图数据模型对其附带了一个复合图层,利用其自身包含的唯一标识ID,可以实现对数据图层的精确操作,从而避免了误操作。在移动终端平台上,GIS地图数据模型采用SQLite数据库进行图层驱动,与地理实体相关联的地图属性数据、图形图像数据等通过唯一身份标识符ID进行匹配,实现了对移动GIS地图数据的高效读取和快速显示。移动GIS数据模型如图4所示。

四、移动GIS地图数据模式

移动终端GIS地图数据采用自定义瓦片金字塔模型,按照地理实体类别与属性特征进行分层显示,每一图层依据分辨率级别匹配对应参数。移动GIS地图数据模式采用网格式布置,图层数据在同一显示级别中以网格形式存在,网格中的每一块对应着相应的地理实体数据单元,每一个数据单元按分辨系数进行数据组织,以此实现地图数据的应用功能和多级表达。

1. 数据管理

移动GIS地图的数据管理主要基于瓦片金字塔模型进行操作。自定义瓦片地图数据的管理模式采用类似于金字塔形状的存储格式,依据图层数据的LOD(levelofdetail)级别进行地理空间实体的多重显示和分层表达。本文中地图数据管理采用的瓦片金字塔模型如图5所示。

图4 移动GIS数据模型

地图数据文件在瓦片金字塔模型中主要以数据图层的形式进行管理与组织,每一数据图层根据地理实体的几何属性又划分为点实体图层、线实体图层和面实体图层等。不同图层对应不同实体对象,如点实体图层对应点状对象,线实体图层对应线状对象,面实体图层对应面状对象,见表1。每一数据图层又包含着对应实体对象的几何、属性等特征数据,特别情况下还包含数据拓扑特征等,见表2。

图5 瓦片数据金字塔模型

数据图层类型实体对象类型点数据图层(PointLayer)点状对象(PointShape)线数据图层(LineLayer)线状对象(LineShape)面数据图层(PolygonLayer)面状对象(PolygonShape)

表2 实体对象数据内容

2. 空间索引

移动终端GIS地图数据采用网格化管理模式,其网格数据的空间索引与数据检索等性能决定着移动GIS的整体应用效果[10]。作为移动GIS的一项关键技术,数据的空间索引性能取决于数据的空间索引结构。而传统的数据空间索引结构对移动GIS应用有很大的平台局限性,不能有效满足移动GIS地图应用的响应速度要求。

移动GIS地图数据采用网格索引,其特征是一个实体对象可能涉及数个单元网格,同时,一个单元网格也可能包含数个实体对象。对于这种数据的空间索引结构,传统的网格索引结构,如四叉树结构,会导致网格数据的重复操作和记录冗余,从而降低了数据索引的运行精确度,增加了硬件设备的工作量和能耗[11-12]。面向动态变化的地理实体数据应用,本文提出了一种改进的动态四叉树空间索引结构,实现了对移动GIS地图数据空间索引的高效率运行和低能耗操作。针对新增实体对象的空间索引,图6验证了动态四叉树空间索引结构的高效率和低能耗等特征,虚线部分为新增实体对象。

动态四叉树空间索引结构的具体算法如下:

1) 依据首个插入的实体对象,确定索引空间的中心点。

2) 对实体对象的MBR进行计算。

图6 四叉树空间索引结构举例比较

3) 依据图6获取涵盖新插入实体对象的所有叶子节点。

4)判断步骤3)中叶子节点对应的实体对象数是否超过阈值,如果超值,分两种情况进行操作:

a. 如是开放边界的节点,如图6中的d节点,则需对该节点内所有实体对象的MBR值进行计算,并分成4个新叶子节点。

b. 反之,如图6中的e节点,其为非开放节点,则只需将其分解成4个叶子节点即可。

5) 对新出现的节点中涵盖的实体对象进行重新计算。

6) 重复步骤1)—5)的操作。

五、结束语

移动终端GIS地图在日常生活中逐渐得到普及,尤其是基于LBS的服务应用,基于移动终端的移动GIS地图应用成为了GIS领域的发展趋势和应用热点。虽然移动终端硬件配置越来越强大,针对海量地理实体数据的应用操作在一些领域还存在着制约因素,高效的移动GIS地图数据模型成为一个研究热点和难点。本文提出了一种移动GIS地图数据模型,该模型在数据结构、数据管理和空间索引等方面与传统的移动GIS地图数据模型有着明显的不同,具有较高的技术参考价值和实际应用前景。

参考文献:

[1]周侗,龙毅. 我国近期移动地图与互联网地图发展综述[J].地理与地理信息科学,2012,5(28):1-5.

[2]张俊杰, 张海燕,罗锐. 基于Android平台的移动GIS研究与实现[J]. 计算机工程与设计, 2013,34(9): 3322-3326.

[3]裴凌,王庆,王慧青. 嵌入式GIS的数据模型构造方法[J]. 东南大学学报:自然科学版,2005,35(3):480-483.

[4]李成名.移动GIS概念与数据模型[J].测绘科学,2004,29(7):73-75.

[5]陈建斌, 朱宝山. 嵌入式环境下跨平台地图显示技术[J]. 测绘科学, 2009,34(2):170-174.

[6]盛喜玉, 张小垒,韩勇. 面向多源数据融合的移动GIS的设计与实现[J]. 地理空间信息, 2012,10(3):48-50.

[7]田根,童小华,张锦.移动地理信息系统数据模型与3S集成关键技术[J].同济大学学报:自然科学版,2006,34(11):1556-1562.

[8]何炎祥,胡文生,李飞.一种改进的移动GIS服务渐进查询方法[J].计算机工程, 2009,35(9): 77-81.

[9]李鲁群,李成名,林宗坚.服务于PDA的矢量数据分块存储数据结构的研究[J].测绘学报,2002,31(2): 170-174.

[10]蔡苗红, 王庆. 移动GIS的嵌入式空间索引框架的构建[J]. 计算机工程,2006,32(23):91-93.

[11]赵波,边馥苓. 面向移动GIS的动态四叉树空间索引算法[J].计算机工程, 2007, 33(15):86-88.

[12]VITTER J S. External Memory Algorithms and Data Structures: Dealing with Massive Data [J]. ACM Computing Surveys, 2001, 33(2):209-213.

引文格式: 王柯,王腾,张文诗,等. 移动终端GIS地图数据模型研究[J].测绘通报,2015(3):53-57.DOI:10.13474/j.cnki.11-2246.2015.0074

作者简介:王柯(1986—),男,博士生,研究方向为战场环境分析。E-mail:erqitadegushi007@163.com

收稿日期:2014-04-04

中图分类号:P208

文献标识码:B

文章编号:0494-0911(2015)03-0053-05

猜你喜欢
数据模型图层实体
为《飞舞的空竹龙》加动感
前海自贸区:金融服务实体
面板数据模型截面相关检验方法综述
解密照片合成利器图层混合模式
实体的可感部分与实体——兼论亚里士多德分析实体的两种模式
两会进行时:紧扣实体经济“钉钉子”
振兴实体经济地方如何“钉钉子”
经济全球化对我国劳动收入份额影响机制研究——基于面板数据模型
基于数据模型的编程应用
用Photoshop图层技术制作精美邮票