APP下载

基于MIF格式的地图数据存储方法研究

2016-02-06孟凡姿宣丙龙

长春大学学报 2016年12期
关键词:平面坐标图元经纬度

孟凡姿,宣丙龙

(吉林建筑大学城建学院 电气信息工程系,长春 130114)

基于MIF格式的地图数据存储方法研究

孟凡姿,宣丙龙

(吉林建筑大学城建学院 电气信息工程系,长春 130114)

在分析地图数据模型和实际需求的基础上,设计一种二进制数据存储方式存储地图数据。针对经纬度坐标到平面坐标转换计算较为复杂的情况,本文建立线性转化模型实现地心地固(Earth-centered, Earth-fixed, ECEF)坐标系下经纬度坐标到本地坐标系下平面坐标的快速转换,分开存储属性信息和几何数据信息,建立两种数据的交互索引关系。在保证地图精度的条件下,提出整型数据代替浮点数据的存储方式,减小数据存储的物理空间的同时,提高了地图几何数据到屏幕坐标的转换效率,加快了地图绘制的速度。

地图数据;坐标转化;数据存储

随着工业自动化程度的日益提高,可编程控制器和组态软件相结合[1]的使用越来越普遍。在目前的很多自控系统中,常常选用PLC作为现场级的控制设备,用于数据采集和控制。而在系统上位机上利用工控组态软件来完成工业流程及控制参数的显示实现生产监控和管理等功能[2]。

1 地图数据模型

地图数据包含几何数据和属性数据两类子数据,由它们共同组成的一条记录代表电子地图中的一个具体图元[1]。几何数据反映了图元所对应的实物在地理实体中的实际空间位置,它通过坐标形式给出,如经纬度坐标形式。按形状划分,几何数据可以分为点型数据、线型数据以及区域型数据;按类型划分,几何数据可分为固有数据和拓扑数据[2]。属性数据反映了地图图元位置以外的其他信息,它是对图元的具体描述,属性数据与几何数据的结合构成了完整的地图图元数据[2]。

地图按照组织结构的不同可分为矢量地图和栅格地图,相应地,地图数据形式包括矢量形式和栅格形式两种[2]。在栅格形式的地图数据中,采用横竖交织的网格线对地图进行分割处理,且一般要满足一个条件,即平行相邻的网格线之间的跨度是相等的。这样地图会被分为一个个的小的正方形区域,每个小正方形区域代表一个信息,单位地图区域内网格线的数量越多,则被分割出的正方形区域越多,这意味着栅格地图的分辨率越高。

不同于栅格形式地图数据的离散化效果,矢量形式的地图数据将地图看作是一个连续的整体,地图中的任意小的一个点都有自己唯一的坐标,且其一定在地图所跨越的坐标范围内。

很显然,栅格形式地图数据和矢量形式地图数据在表达方式上差别很大,但它们都能有效地完成地图的绘制,且能够反映出地图图元的空间分布情况。由于栅格形式数据有固定分辨率特性,决定了它不适于对地图进行缩放操作,而且它的数据离散特点也令其很难满足地图匹配和路径寻优等算法的需求,所以在导航系统中,地图应该采用矢量数据形式进行表达。

2 MapInfo地图数据

MapInfo软件在地图数据处理方面技术成熟,它能够与很多其他地图数据文件兼容,是目前应用最为广泛的地图绘制软件之一。按照基本的地图数据模型,在MapInfo软件中,也是将地图图元分为点图元、线图元和区域图元三种不同的类型[3],它们对应的地图数据则为点型、线型和区域型,这些数据是以矢量形式进行组织的。

2.1 TAB型数据

MapInfo对地图数据的组织分为两种形式,一种为TAB型数据形式,另一种为MIF型数据形式。前者所包含的数据信息更加全面,相比于前者,后者只包含了部分数据信息。TAB型数据是MapInfo软件存储地图的原始数据形式,它是一种专用的数据格式,其必须要在MapInfo软件上才能顺利地绘制地图,同时,它也作为MapInfo公司的商业机密而存在,这就决定了它的具体格式和结构是对外保密的。由此引入对MIF数据格式的研究。

2.2 MIF型数据

为了对原始的TAB型数据进行保护,同时方便用户利用地图数据开发出更多的功能,MapInfo公司提供了一种对用户公开的数据文件,并将之命名为MIF格式数据文件,它是对原始数据进行了裁剪的结果,去除了TAB型数据所拥有的拓扑数据,MIF格式数据的优点就是以ASCII方式进行存储,令人一目了然,方便与其他地图软件交换信息。

MIF格式数据对图元的存储是分为两个文件进行的,一个是扩展名为.MID的文件,该文件用于存储图元的名称、ID号等属性数据信息,一个是扩展名为.MIF的文件,与属性数据对应,该文件主要存储图元的几何数据信息[3]。

3 地图数据处理技术研究

3.1 二进制数据存储

根据数据存储方式的不同,数据存储包括二进制方式存储和ASCII方式存储,它们都可以完成对地图数据的存储任务,不同的是ASCII方式存储要占用较大的存储空间,造成不必要的空间浪费,而二进制存储占用的空间相对较小,且对所存储内容存在加密效果。因此,针对嵌入式系统来说,二进制存储更能满足要求,能提高其数据处理效率。在具体的存储过程中,对不同类型的数据进行有针对性的处理,保证其占用的存储空间为最小。在坐标信息的存储过程中,不采用浮点型数据进行存储的方式,而是用32位无符号整形代替浮点型进行存储,在存储前对原始数据进行相应的放大处理,确保其有足够的精度来满足导航系统的相应要求。针对不同的图元信息,将它们区分为点、线、区域三大类别,对每种类别又分别采用两个文件来存储它们的地图数据信息,一个是属性索引文件,另一个是几何数据文件。属性索引文件存储的是各个图元的基本属性信息,几何数据文件存储的是相应图元的空间数据信息和详细属性信息,对于两个文件中的同一图元,分别设置了偏移信息来进行相互索引,保证其对相同的图元能够快速的实现信息融合,无论是对地图绘制,还是对信息搜寻,这样的结构都有很大的好处。

3.2 坐标的线性转化法

因为从MIF格式地图数据中只能得到基于WGS-84坐标系的经纬度坐标,而经纬度坐标是不能直接用于地图绘制的[4],要进行地图绘制,就必须将经纬度坐标转换为平面坐标,然后再将平面坐标转换为屏幕像素坐标[5]。本文研究处理的地图数据是哈尔滨市地图数据,所以用Beijing-54坐标系的平面坐标最为符合[6]。将经纬度坐标转换为平面坐标之后,就可以经过进一步的转换而绘制电子地图。

在WGS-84坐标系下,令某一点的经纬度坐标转换为平面坐标,可以通过高斯投影,但运算较为复杂,不适于在嵌入式设备上进行。针对这种情况,本文设计了一种坐标的线性转化法来实现经纬度坐标到平面坐标的转换工作,在地图数据处理阶段,可以用该方法将数据转换后进行存储,在导航定位期间,可以用该方法对卫星接收模块接收到的定位经纬度信息进行转换,以此减轻嵌入式设备的运算压力,若已知某点的经纬度坐标为(lon,lat),则该转化方法如下

(1)

式中,east代表完成坐标转换后的东向坐标,north表示完成坐标转换后的北向坐标,a,b,c,d,e,f为转化模型的6个参数。

MapInfo软件有各坐标之间的转换模块,应用软件模块可以完成WGS-84坐标系下的经纬度坐标到Beijing-54坐标系下的平面坐标的转换[7],为了使利用线型转化法转换后的坐标误差较小,选取一定数量的有代表性的参考点,它们的经纬度坐标信息为已知信息,然后,应用MapInfo软件的坐标转换得到它们在Beijing-54坐标系下的平面坐标信息,将这些坐标信息代入到公式1中,运用最小二乘法求出模型中相应的6个参数。

3.3 数据处理过程

本文对哈尔滨市地图进行了数据处理,其中的两个关键技术就是线性坐标转换和二进制数据存储。前文已经做了详尽的阐述,这里只对数据处理的过程进行描述,它在总体上分为两个步骤来进行。

(1)第一步数据处理

第一步数据处理的目的是把MIF格式地图数据不同图层的数据信息进行提取,保存有用信息并根据数据类型的差别分为点、线和区域三个文本文件进行存贮,初步实现地图数据的压缩。

(2)第二步数据处理

第二步数据处理的目的是把第一步得到的每个文本进行信息提取并保存为二进制形式的索引文件和数据文件,进一步实现地图数据的压缩。在数据处理过程中涉及到经纬度坐标到东北坐标的坐标转换工作。

经过本文的地图数据处理,文件得到了较大的压缩,且最后存储的文件为二进制形式,既方便机器阅读,又具有加密特性。

3.4 平面坐标到屏幕坐标的转换

在前面的地图数据处理过程中,我们已经将WGS-84坐标系下的经纬度坐标转换成了Beijing-54平面坐标下的东北坐标,并且是以东北坐标的形式存储在地图数据文件中,但这样的坐标在地图绘制中是不能直接采用的,必须将其转换为屏幕坐标后才能进行地图的绘制。电子地图在显示过程中往往都是将其一部分绘制在屏幕上,所以为了加快显示速度,没有必要将所有地图数据都进行坐标转换,只要将需要显示的部分进行坐标转换即可,如图1所示。

图1 地图显示示意图

本文存储的平面东北坐标以厘米为单位,原点在左下角,向右为x轴正方向,向上为y轴正方向,而屏幕坐标以像素为单位,其原点在左上角,向右为X轴正正向,向下为Y轴正方向[8]。坐标转换如图2所示。

图2 地图坐标转换示意图

(2)

式中,xScale、yScale分别代表屏幕上在X方向和Y方向一个像素所代表的地图范围,即横纵坐标的比例系数,因为本文所用ARM嵌入式系统的屏幕规格为480×272,所以xScale和yScale的具体实现如下:

(3)

经过这样的处理,虽然能充分利用屏幕资源显示当前截取的地图区域,但是由于比例系数xScale和yScale的不同,会使地图存在横向或纵向的拉伸状况。为了更加真实地还原地理状况,同时又要包含截取地图区域,所以选取xScale和yScale中较大的一个作为比例系数,替换掉原来较小的比例系数,从而使比例系数统一,将统一后的比例系数记为Scale,则:

(4)

利用统一后的比例系数,通过如下公式改变原来截取的地图范围:

minX=minX

minY=minY

maxX=minX+272×Scale

maxY=minY+480×Scale

(5)

将公式4中的Scale和公式5中的新范围代入公式2,则原式变为:

(6)

通过上面的坐标转换,会使地图在原有基础上增加一部分区域,拉伸现象消失。

4 结论

路径导航需要依靠电子地图作为支撑,地图数据作为电子地图的基础,不仅应该包含完整的地理信息,而且应该具有良好的数据结构,以便减小地图数据占用的空间,加快地图的绘制速度。从而能够快速准确的帮助驾驶员进行路径规划。

[1] 王三军. GPS导航电子地图的应用研究[D].上海:同济大学,2007.

[2] 胡卫民,徐雪仁,郭建恩,等. 空间数据库引擎(SDE)在地图资源数据库管理中的应用[J]. 国土资源遥感,2000(4):67-70.

[3] 杨伦,彭春光,黄健,等.兵棋推演中地形量化算法研究与实现[J].计算机仿真,2008(9):96-99.

[4] 斯亮.嵌入式GPS/GIS导航系统的研究与设计[D].哈尔滨:哈尔滨工业大学,2009.

[5] 王开拓.基于电子纸的嵌入式电子地图设计与开发[D].西安:西安电子科技大学,2011.

[6] 周文彬,朱德好.GPS坐标成果空间坐标系转换及精度分析[J].测绘与空间地理信息,2007(3):147-149.

[7] 张勇刚.电子海图快速拼图显示技术研究[D].哈尔滨:哈尔滨工程大学,2004.

[8] 刘毅.车载定位导航系统的研究与实现[D].镇江:江苏大学,2007.

责任编辑:程艳艳

Research of Map Data Storage Method Based on MIF Format

MENG Fanzi, XUAN Binglong

(Department of Electrical and Information Engineer, City College of Jilin Jianzhu University, Changchun 130114, China)

Based on analyzing map data model and the actual needs, this paper designs a binary data storage method to store map data. In view of the situation that the calculation of conversing the longitude and latitude coordinates to plane coordinate is complex, it establishes a linear transformation model to converse rapidly the longitude and latitude coordinates in ECEF to the plane coordinate in local coordinate system, separating attribute information from geometric data information in an interactive indexing storage way. Integer data type is used to take place of floating-point data under the condition of ensuring the accuracy of map, which can further reduce the data storage space, improve the efficiency of conversing geometric data of map to the screen coordinate and speed up the map rendering speed.

map data; coordinate transformation; data storage

2016-08-21

孟凡姿(1982-),女,山东诸城人,讲师,硕士,主要从事控制理论与控制工程方面研究。

P208

A

1009-3907(2016)12-0029-04

猜你喜欢

平面坐标图元经纬度
奥维互动地图CAD中线坐标精度分析
学术出版物插图的编排要求(一):图注
联锁表自动生成软件的设计与实现
濮阳市拟建立相对独立的平面坐标系统
基于经纬度范围的多点任务打包算法
自制中学实验操作型经纬测量仪
常用GPS软件实现平面坐标与WGS84经纬度转换精度探讨
澳洲位移大,需调经纬度
电气CAD接线图快速转换G图形的技术应用研究
长大连续梁上CPIII控制点实时坐标计算方法研究*