石吉宝,张小波,张俊,陈军胜,白晓明
(成都市勘察测绘研究院,四川成都 610081)
利用CASSSME实现GIS数据质量检查的方法研究
石吉宝∗,张小波,张俊,陈军胜,白晓明
(成都市勘察测绘研究院,四川成都 610081)
从分析数据加工中的错误来源入手,在研究数据特性的基础上,介绍了利用SME软件进行基础地理信息数据质量检查的方法,具体阐述了房屋要素和其他要素穿越检查方案的编写过程,利用真实数据检验编写的检查方案,从运行结果看,利用南方CASSSME质检模块进行数据质量检查的方法是可行的,结果是正确的。
SME;基础地理信息;质量检查
当前地理信息公共平台建设,在各地正如火如荼地开展,作为平台支撑的地理信息数据建设,越来越受到各方重视。数据质量控制更是数据建设的重中之重,通过长期以来的实践发现,数据错误来源主要是以下三个方面,原始数据质量因素、数据标准差异因素、生产过程的人为因素。进行数据质量控制,主要是控制这三个主要产生错误的因素[1]。传统人工查错的方式对大批量的数据显得力不从心,特定数据编写特定程序又不是能很好适应数据各种复杂多变的情况,通过对CASS软件的研究发现利用SME可以克服上述两种方法的不足。
南方CASS 9.1软件是基于AutoCAD进行二次开发的普遍适用于测绘等各行业的数据生产和处理软件,因此本文讨论的数据格式都是CAD的dwg数据格式。
2.1 CASS数据特性
南方CASS采用骨架线和实体扩展属性来组织实体的技术[2]。
骨架线是CASS的一种底层数据结构。这种数据结构使得CASS的地图编辑可以直接对骨架线进行。任何线状和面状地物,只要骨架线的数据发生改变,与骨架线相关的所有符号也会发生相应的变化,因此数据检查时复杂数据可以只考虑骨架线,省去很多数据运算量。
实体扩展属性数据可存储地物编码和大量的属性信息。采用这种方式,扩展属性与图形对象能紧密地结合在一起,有利于图形和属性的一体化操作,维护数据逻辑一致性。
2.2 数据错误分析[1]
按照数据错误的类型来分,错误大致可以分为属性错误、逻辑错误和拓扑错误三类。
属性错误:属性错误是指图元的相关属性没有按照数据标准中规定赋予而产生的错误。如:一个编码为砼结构房屋的要素,其结构属性却被赋值为“砖”,产生的编码与属性不对应的错误,这种错误我们称其为属性错误,这种错误在传统的数据检查中很难发现。
逻辑错误:逻辑错误是指图元本身存在逻辑上或者图元的存在与现实逻辑不符的错误,如:道路上出现水池,即道路与水池发生相交关系,出现与现实情况明显不符的逻辑问题,又如,铁路的产生过小的夹角等等,这些都称之为逻辑错误。传统的数据检查方法基本是不能发现。
拓扑错误:顾名思义拓扑错误是指图元与图元之间存在的错误。如:同一位置有两个路灯、两栋房屋发生相交、围墙穿越房屋、两块相邻花圃产生裂缝等,都属于拓扑错误,基础地理信息数据生产重点关注的拓扑错误主要有重叠、相交、裂隙等。
南方CASS软件提供了数据质量检查模块SME, SME是基于ObjectArx开发的数据处理和质检的基础平台,模块提供了常用处理和检查的基本函数和方法,用户只需根据需要进行组合就可达到自己的目的,方便快捷。
3.1 检查标准配置
在CASS软件中有两文件index.ini和codefield.mdb,这两个文件包含了CASS数据的各种特性和属性,如编码、字高、颜色和图层等,因此,对CASS数据进行质量检查,需要配置好这两个文件,下面对这两个配置文件进行详细阐述。
(1)Index.ini配置
该配置文件定义了每个要素的图层、线型等属性,是对要素进行基本特性正确性检查的基础,文件格式如下:
CASS编码,类型名,参数,要素名称,要素GIS编码,要素GIS图层。内容如下:
131100-1,text,2.4,三角点高程注记,110102104,ControlA
131100-2,text,2.4,三角点点名注记,110102104,ControlA
131200,gc014,0,土堆上三角点符号,110102201,ControlP
131100,gc113,0,三角点符号,110102101,ControlP
131100-3,continuous,0,三角点分数线,110102106,ControlL
其中,若要素为点,类型名为对应的块名,参数为块符号的XYZ比例值,文件中该值默认为0,程序内部自动根据系统初始化时的比例尺自动设定,如1∶500则设为0.5;若要素为线,类型名为对应的线型名称,参数为线宽;若要素为文本,类型名为text(代表是文字),参数为文本高度。
(2)Codefield.mdb配置
该文件定义了每个要素的颜色和属性结构,是对要素进行颜色和属性结构检查的基础和标准,文件格式如图1所示。
图1 Codefield配置文件格式图
以“建成房屋”为例,用Casscode作为基础,规定其他所有的属性信息,比如Color、Name、Status、Style和Structure等等,从图1中可看出“建成房屋”的Casscode为141101相当于要素的标识码,Color字段值为“7”表示使用要素使用CAD颜色系的7号颜色,Structure字段值“C,砼,混,砖,钢,木,玻璃,土,其他”,(C表示该字段为必填字段,后面用逗号分隔的值表示该字段的值域取值范围)。
3.2 质检方案实现
南方CASSSME提供了包括检查、编辑、过滤和消息输出等基础功能,为了实现某项检查目的,我们需要综合应用这些功能的不同函数来组合,下面以实现房屋与其他要素相交检查为实例,来详细说明实现过程。
在现实世界中,房屋都是独立存在的,除遇架空的电力线、管道和高架桥等要素有空间相交外,不应与其他要素发生相交,要实现该检查首先确定房屋面要素集合,然后确定不能与房屋相交的线要素集合,最后通过SME的线穿越检查函数得出结果。
(1)确定被穿越集合
本例中被穿越集合即为房屋面要素集合,在基础地理信息数据中,房屋面是存在某个图层中,且具有某些特定的要素编码,只有通过对要素进行过滤才能确定出房屋面要素集合,南方CASSSME软件提供了很好的要素过滤方式,包括使用图层、要素几何类型和编码等方式。
图2 要素集合过滤设置对话框
图2 为SME进行要素过滤的窗口,在图层和几何类型过滤区可设置图层和几何类型过滤,其中,几何类型支持点、线、注记、块;在编码过滤区进行编码过滤,同时设置数据源,也可以组合各种过滤条件进行过滤;针对编码过滤方式,软件提供导入已写好的过滤表(∗.txt);软件提供4种编码类型选择以适应不同数据存储方式,包括按CASS码、用户码、厚度和针对块的块名方式,可满足不同数据的过滤要求。
要实现房屋面要素集合,如图2所示,在图层和几何类型过滤区中输入房屋面所在图层“JMD”和限定几何类型为“∗Polyline(任意多段线)”;这样还不足以过滤出房屋面,还需继续过滤,首先在编码类型选择中选定“使用CASS编码”,然后在编码过滤区中输入房屋面要素的编码,建成房屋:141101;地下房屋:141101-2;突出房屋:141104等等,如图2所示,在本例中笔者直接使用导入功能导入已做好的房屋编码文件。用户也可选择“使用国标码”(国标码为用户自定义要素编码),此时在编码过滤区中输入对应的国标码即可,如建成房屋:310301003。
(2)确定穿越线集合
除前文提到的几种要素外,所有其他线要素都不应与房屋相交,因此本方案中的穿越集合,即为除例外的要素外的所有线要素集合。在地理信息数据中一般都存在着大量的线面要素,因此如果采用图层方式过滤会产生其他几何类型要素,用编码方式则需要人工输入大量的要素编码,这样既不利于程序执行又增加工作量;所以可以利用SME软件提供的集合运算来解决,通过上面介绍可以了解本方案中的穿越集合可以通过差集运算来确定,即选择所有的线要素集合和例外数据集合做减法,所得到的差集就是穿越线集合。例外数据集合按照编码方式过滤,在本方案中例外的数据包括,门洞下跨道骨架线:143200、门洞下跨道边线:143200-1、门洞下跨短线:143200-2、门顶: 143800、所有管线:17∗、雨罩:143801和门廊等:1431∗,为减少过滤编码的输入,这里使用了通配符。由于所有线要素集合不是按照编码过滤,因此可能产生空编码的不合理数据,所以必须对集合进行属性筛选,即将空编码的数据去掉,以免影响检查结果。
经过以上步骤最终得出如图3所示的检查方案。
图3 房屋面与其他要素相交的检查方案图
(3)执行检查
如图4所示,要实现检查应按以下步骤进行,第一步,点击“+”按钮加载检查方案文件;第二步,勾选要进行检查方案项,本例中勾选房屋与其他要素相交检查项;第三步,点击开始按钮后,检查方案会自己执行。检查完成后,所有错误会按照每个检查方案分类显示在错误列表窗口中,用户可以将错误保存或者导出,以备后期使用,用户可双击错误记录,系统会自动将该错误涉及的要素选中并放大到屏幕中央,如图4所示,检查到了房屋与道路有相交关系,这样,用户可根据需要进行修改,同时在错误列表窗口中还提供标记错误位置的功能,如图上的红旗符号即为标注的错误位置。
图4 房屋面与其他要素相交的检查结果图
本文是在实际的数据生产加工项目中,利用SME软件进行质量检查得出的关于检查方案编写和数据过滤方面的一些经验和方法总结,通过对SME数据质量检查和处理软件功能的研究,发现利用该软件确实可以减少大量的工作量,编写的方案对数据质量检查起到了较好的效果,检查的准确率较高,本文对基础地理信息数据加工和处理过程中的质量控制可以起到一定的借鉴,但是若要进行地物要素的图属一致性检查,在实现方式上还很繁琐和局限,有待在后续工作中对SME软件本身进行相应的扩展,以便达到更加灵活的应用效果。
[1] 石吉宝,张俊,邓芳.基于规则的组件式数据监理系统设计[J].城市勘测,2010(2):38~40,45.
[2] 许茵,刘云波.南方CASS数据向清华山维EpsW 2005的转换方法[J].民营科技,2011(5).
[3] 张帅,刘邦兵,胡建艺等.CASS数据向ArcGis转换解决方案[J].地理空间信息,2011(4):48~50.
[4] 黄海英,钟生伟,胡景海.DLG质量检查探究[J].地理空间信息,2009,7(6):135~137.
[5] 仝江岭,石吉宝,张俊等.地理空间信息共享关键问题研究[J].城市勘测,2012(2):47~50.
[6] 王磊.面向规划的城市空间数据质量检查[J].地理空间信息,2011,9(1):25~27,30.
Research on the M ethod of GIS Data Quality Check Using CASS SME
Shi Jibao,Zhang Xiaobo,Zhang Jun,Chen Junsheng,Bai Xiaoming
(ChengDu Institute Of Surveying and Investigation,Chengdu 610081,China)
This paper analyzes the data processing errors,and introduces a method of checking the quality of geographic information data by using SME software based on data characteristics.And spatial addressed the preparation process of the data check program about building features intersect other features.Finally,this paper proves it is feasible and correct thatwe perform data quality checks using South CASSSME module.
SME;basic geographic information;quality checks
1672-8262(2013)06-63-04
P209,P208.1
B
2013—03—14
石吉宝(1977—),男,高级工程师,主要从事测绘和GIS应用研究。