GIS数据库中面状要素更新方法研究与实现

2011-08-10 04:46黄欣
城市勘测 2011年4期
关键词:空间数据数据库空间

黄欣

(沈阳市勘察测绘研究院,辽宁 沈阳 110015)

1 引言

地理信息系统(GIS)是一种采集、管理、处理、分析、显示、存储和应用地理信息的计算机系统。现实世界中的空间实体处于不断的变化之中,能够及时地进行GIS空间数据库更新,保持地理空间数据的完整性,一致性以及拓扑关系的正确,这对GIS来说至关重要,同时也对人们实际应用具有重要意义。

目前,我国已经建立了1∶250000国土基础信息数据库,研究对其更新的理论和方法,更新运行机制,以便时刻保证为人们提供准确的信息,显得格外重要。本文主要从理论上探讨GIS数据库更新的方法,并且进行Arc-GIS二次开发,实现了一些对面状要素进行处理的功能。

如今通过全站仪,数字摄影测量,全球卫星定位技术(GPS),遥感(RS)可以方便获得地理空间数据,为进行GIS数据库更新提供了数据源。目前,结合待更新数据的实际情况,来安排数据采集工作,在内业经过GIS软件处理,来达到地理信息系统数据库更新的目的,是一个切实可行的方案。这样做不但可以节省人力和物力,而且将测绘外业数据采集和地理信息系统的内业数据处理很好的结合起来,并且发挥了各自的优势。

GIS数据库的更新是一项长期而艰巨的工作,也是一个复杂的系统工程,需要进行广泛的、多方面的研究工作。

2 GIS空间数据库更新目的和意义

GIS数据的现势性是衡量其使用价值的重要标志之一。当前GIS的核心已经从数据生产转为数据更新,数据更新关系着GIS的可持续发展。

数据更新体系是GIS理论和技术研究的首要问题。GIS空间数据库的现势性直接制约着其使用价值和使用范围。一个数据库如果缺乏有效的数据更新机制,很容易变成一个死库,逐步失去其应用价值。进行地理信息系统空间数据更新方式、实现技术方法的分析,是当前GIS研究中急需解决的问题。

3 GIS空间数据库更新方法

GIS空间数据库的更新是测绘信息工程中一项长期而繁重的任务。当前对GIS空间数据库的更新方法存在的问题是:劳动强度大,更新周期长。这主要是因为缺乏有效的更新手段。

GIS空间数据更新可以通过GIS信息服务平台,用现势性强的现状数据或变更数据更新GIS数据库中非现势性的数据,达到保持GIS现状数据库中空间信息的现势性、准确性和提高数据精度的目的。同时将被更新的数据存入历史数据库供查询检索、时间序列分析、历史状态恢复,为决策管理和研究服务。空间数据更新不是简单删除替换,而是更新的同时要记录历史。

GIS空间数据库的更新主要是对地物数据的更新。包括点、线、面数据。地物的更新主要有两种方法:重测,即对特定区域内的地物重新测绘,建立一个新的数据库去取代老数据库。这种方法速度慢,适合于为一个新区域建立一个新的数据库。修测,即检测、识别和更新地物数据的变化部分。显然,第二种方法更新速度快,更适合于更新现有的数据库,通常被我们所采用。

3.1 利用3S技术更新GIS空间数据库

3S是在上个世纪70年代产生和发展起来的技术,随着技术的发展和应用的深入,RS、GIS和GPS三者综合利用成为一种必然,三者彼此互为手段构成为整的实时和动态的对地观测、分析和应用的运行管理系统,可以大大提高应用工效,3S技术的集成构成了对空间数据适时进行采集、更新、处理、发现及为各种实际应用提供科学决策咨询的强大技术体系。

1∶250000数据库更新步骤:

(1)利用ERDAS进行影像处理;

(2)1∶50000车载GPS骨干交通网数据和相关现势资料处理;

(3)1∶50000地名数据处理。

图1 更新1∶250000数据库数据流程图

4 ArcGIS实现更新GIS空间数据库

(1)数据格式转换,ArcToolbox的数据转变工具(Conversion Tools),可以实现 Coverage,Geo Database,TIN,Shape File、Raster,Table的转换。由于在后面要采用Coverage这种数据格式,需要将现有的2006年Shape File转换成Coverage的数据格式。

(2)用 ArcToolbox—>Analysis Tools—>Overlay—>Erase,实现两个Coverage重叠部分擦除。即采用2006年的数据作为输入层,2008年的数据作为擦除层,输出层是2006年输入层中不包含2006年和2008数据重叠部分的内容,这种方式可以称为Differencs方法,如图2所示。

图2 Differencs方法表示图

(3)ArcMap—>tools—>Geo Processing Wizard,打开GeoProcessing Wizard对话框,先将最终擦除(Erase)完的Coverage数据和更新的2008年数据进行合并(Union Two Layers),然后进行融合(GeoProcessing Wizard Features Based on a Attribute),Dissolve是除去有相同属性值的相邻多边形的边界的过程。通过以上的步骤,实现使用2008年面状数据更新2006年面状数据目的。

在用ArcGIS软件进行更新处理的时候,采用Arc-Toolbox进行数据擦除(Erase)处理这一步时,Erase数据层的选择是非常重要的。由于待更新的数据层(Input)与更新数据层(Erase)的重叠事先没确定,所以操作过程中要计划好需要更新的数据层,确立好各层之间的对应关系,在对应关系中,有一对一的关系(如道路层),也有多对一的关系(如水田,旱田,菜田都对应农田层),层的对应关系由项目的具体设计要求来确定,确定好各层的对应关系后,然后逐个层,依次进行待更新的数据层(Input)与更新数据层(Erase)的擦除操作。在这里,当有多个(既多对一的关系)待更新的数据层(Input)与一个更新数据层(Erase)批量处理,既处理依次改变更新数据层(Erase),完成了重叠数据的擦除处理。从上面的处理过程可以看出,擦除(E-rase)操作有些繁琐,自动化程度不够。

(4)针对ArcGIS中,擦除(Erase)操作有些繁琐,自动化程度不够。在这里利用ArcMap集成编程环境―VBA(Visaul Basic for Apllications),通过ActiveX(OCX)控件技术,通过编写代码,实现了异或(Differences)命令。

(Differences)异或命令的代码:

图3 更新前数据图

图4 更新后数据

(5)在ArcGIS软件中使用开发的异或操作,实现异或命令面状数据更新成果事例如图3、图4所示。

5 结语

采用已经进行先期分层的数据,并且确定好更新层与擦除层对应关系的不同时期的数据,通过ArcGIS软件进行异或命令处理,就可以完成数据的更新。这里主要是对面状要素进行操作,我们先期在实施技术路线的时候,使用手工逐步操作时发现,当在进行面状数据重叠部分的擦除时,在ArcGIS软件中处理起来有些繁琐,需要选择不同擦除数据层,与输入数据层进行擦除操作,自动化水平不高。ArcGIS软件没有提供异或操作,在数据编辑时,不能进行数据重叠部分的擦除,本次开发的异或命令,来完成这样的操作。

[1]张保钢,袁燕岩.城市大比例尺地形图数据库中地物变化的自动发现[J].武汉大学学报(信息科学版),2005,30(7)

[2]潘瑜春,钟耳顺,赵春江.GIS空间数据库的更新技术[J].地球信息科学,2004,6(1)

[3]付治河,王品,房玉华.3S技术在数据库数据更新中的应用[J].测绘与空间地理信息,2005,28(3)

猜你喜欢
空间数据数据库空间
空间是什么?
创享空间
数据库
数据库
元数据驱动的多中心空间数据同步方法研究
数据库
数据库
基于文件系统的分布式海量空间数据高效存储与组织研究
QQ空间那点事
空间