赵 裴,赵刘飞,吴芳华,张龙星,王 磊,康 栋
(1.西安航天天绘数据技术有限公司,西安 710199;2.西安测绘研究所,西安 710054)
当前越来越多的行业采用基础地理信息空间数据作为行业决策制定的依据,其数据质量的好坏直接决定着决策的正确性与可靠性[1]。20 世纪国内多采用人工检查的方式对基础地理信息数据进行检查,这种检查方法费时费力且对作业员经验要求较高,无法保证检查标准的一致性和准确性[2]。21 世纪初期,中国解放军信息工程大学率先开发出国内首款基础地理信息数据质量检查软件MapCheck,该软件针对矢量地图数据进行了包括控制精度检查、几何精度检查及文件形式检查等11 类检查项,开辟了基础地理信息空间数据计算机自动检查的先河[3]。地理信息产业近二十年的蓬勃发展涌现了一大批优秀质检软件,但这些软件多基于数据库集成化设计[4-5],每次更改都需要修改底层代码,这使得软件更新极为不便,严重制约了基础地理信息数据质量检查软件的更新与发展。本文提出了一种全新的基础地理信息数据质量检查软件的数据库结构,将基础地理信息质量检查软件数据库拆分为算法库、模型库、模板库及规则库,各数据库中基本单元遵循国家标准[6-11],在进行数据质量检查时,各数据库之间以并行插件的形式统一调用但互不影响,极大地增加了数据库的可维护性与扩展性。
模型被用来以数据化的方式来表达各类质量缺陷,模型的作用就是表达各类质量缺陷识别概念性质,对研究对象进行必要时的建模,并用适当的规则把它的主要特征描述出来。基础地理信息数据质量检查模型主要是用数学语言描述的一类模型,定性或者定量的描述缺陷识别的概念、规则和方法;面对矢量地图、DEM 数据产品的质量特征,通过各种质量元素、缺陷类型、检查要求共同作用形成的数据质量评价模型,主要有缺陷扣分模型和图幅评分模型2 种[12]。
1.1.1 缺陷扣分模型
以幅为单位对基础地理信息数据进行缺陷扣分评价,扣分表见表1。
表1 缺陷扣分表
根据缺陷值、缺陷个数、带权求和的计算公式统计产品质量分数,公式如下
式中:M 为单位产品质量得分;P1为重缺陷质量特性权;P2为次重缺陷质量特性权;P3为轻缺陷质量特性权;n1为单位产品中重缺陷个数;n2为单位产品中次重缺陷个数;n3为单位产品中轻缺陷个数。
产品质量实行优级品、良级品、合格品和不合格品四级评定制。优级品:M=90~100 分;良级品:M=75~89分;合格品:M=60~74 分;不合格品:M=0~59 分。
1.1.2 图幅评分模型
将图幅错误类型分为A 类错漏、B 类错漏和C 类错漏3 个等级,图幅质量满分为100 分,按照质量子元素缺陷分类的对应分值采取减分计分制计分,减分累计不能超过该检查项的分值,即得分最低为0 分,不能为负数。图幅缺陷以人工抽样验收确认结果为准,以目标数作为区分图幅难易程度的标准,单位成果质量得分按式(2)计算。其中严重缺陷作为数据质量因素的固定指标,与图幅难易程度无关。
式中:S 为单位成果质量得分;a1为A 类错漏个数;a2为B 类错漏个数;a3为C 类错漏个数;r2为B 类错漏合格错误率,通常取0.2%;r3为C 类错漏合格错误率,通常取0.8%;t 为比例尺调整系数;N 为基础地理信息数据要素总数,以实际要素总数计算。
基础规则一般是指数据的本质特征,是通过沉淀、抽象和总结多类型、多格式、多尺度数据的内在逻辑关系而形成的。规则库包括空间关系规则、拓扑关系规则及冲突关系规则等。内容覆盖矢量地图数据、数字高程模型数据等基础地理信息产品质量检查所需的全部规则。
1.2.1 完整性检查规则
数据完整性是指地理数据在范围、内容及结构等方面的完整度,完整性检查规则的检查内容有:①图幅文件完整性检查,检查图幅文件是否有缺失、重复或名称错误;②图层完整性检查,图层目录是否符合国家规范,图层是否有缺失或重复;③文件内容完整性检查;④文件属性记录项完整性检查。
1.2.2 逻辑一致性规则
逻辑一致性规则包括属性值与属性项的检查,其检查内容主要有:①检查居民地层、交通层要素的行政区划代码与境界层的一致性;②国道编号检查,国道编号与国道名称不符;③省道编号检查,省道编号与省道名称不符;④车站编号检查,车站编号与车站名称不符;⑤交通层地名相同属性不同检查,交通层名称相同,只检查连贯性、主编号;⑥交通层道路编号首位与编码匹配检查,建通层道路编号首位与编码匹配检查,G、S、X 对应相应编码;⑦检查居民地层、交通层要素的行政区划代码与境界层的一致性;⑧前六位河流代码检查,只检查注记一致但河流代码前六位不一致的部分;⑨深度值与危险值一致性检查,深度值与危险级别不一致则报错。
1.2.3 属性规则
属性检查是指对矢量地图数据要素的属性信息进行的检查,多项要素自身属性信息的检查,具体检查内容有:①铁路名称代码检查,用模板检查铁路名称的正确性;②国省道代码检查,与国省道模板比对检查合理性,具体要用人机交互检查;③公路里程检查,属性里程和实际要素长度的差超出检查指标的则报错;④桥梁属性检查,检查桥梁属性是否输入全面,如桥长、桥宽、载重吨数等属性;⑤桥长差检查,线状桥梁实际桥长与属性桥长超过检查指标,实际桥长超出检查阈值范围则报错;⑥居民地行政区划代码检查,全国1∶10000地形图改化工程作业细则对检查要素的补充完善;⑦属性缺省值格式检查,交换格式缺省的字符属性项不为NULL,如果为其他缺省值或无缺省值则报错;⑧街道名称检查,街道名称含有“-”或高速等字符;⑨地名相同检查,检查注记文件中相同的注记并列出相同注记个数;⑩线要素图形特征代码不为LS,除等高线以外,线要素的图形特征代码要求为LS;⑪线要素误输入高程检查,不应输入高程值的线状要素例如高程,输入则报错;⑫高程缺省值为0 检查,高程缺省为NULL或-32767 报错;⑬公路宽度为0 检查,公路宽度属性为0 则报错;⑭水深数值小数位数正确性检查,水深数值小数位数超限则不合理,以31 m 为界限;⑮国道与省道编号检查,检查国道与省道编号是否为空,首字母是否符合规范,不符合规范则报错;⑯桥梁、隧道编号检查,国道省道上桥梁、隧道编号与所在道路编号一致,不一致则报错;⑰测控点理论坐标检查,检查测量控制点理论坐标是否为空,如果测控坐标为空则报错;⑱深水区水深值超限检查,深度区水深值不在阈值范围内则报错;⑲通航性质检查,水域陆地层要素通航性质不为缺省值(0 或NULL)且不在编码模板中则报错。
1.2.4 表征质量规则
表征质量检查是指对矢量地图数据要素的实际合理信息进行的检查,多指要素属性信息显示符合实际情况的检查。具体检查内容有:①公路互相交检查,端点限差在0.1 mm 内认为合理;②线目标长度检查,线目标表示的图上实际长度是否达到标准;③等高线自动检查,用网格法检查等高线的正确性;④伪节点检查,检查节点是否为伪节点;⑤最小山头检查,检查山头的最小面积是否小于规定限差;⑥最小面积检查,检查面要素的最小面积是否小于规定限定差;⑦居民地指针检查,不挂指针则报错;⑧面边线指针检查,要查的边线挂指针报错;⑨等高线连贯性检查,检查等高线是否连续且编码与高程相同;⑩等深线连贯性检查,等深线首末点的距离坐标是否在范围内;⑪曲线两点距离过大检查,曲线目标两点间距超出检查指标则报错;⑫指针对应文字说明检查,检查指针对应的注记文件;⑬角度异常检测,线目标坐标间不应出现尖角;⑭等深线互相交,断电限差在0.1 mm 内认为合理;⑮要素重复检查,检查点、线、面目标是否重复;⑯图边强制闭合线的检查,线要素到图边距离应在限差范围内且闭环;⑰注记重复检查,检查两注记名称、编码、定位坐标是否完全相同。
1.2.5 空间关系规则
空间关系规则检查是指对矢量地图数据要素的几何空间关系信息进行的检查,多项要素自身空间信息和相邻要素几何空间关系信息的检查。具体检查内容有:①要素落水检查,检查要素是否在水中;②水域面入植被面检查,水域不能入植被面;③线要素非法进入面区域,公路进入面居民地超过限差则报错;④线状桥落水检查,线状桥梁有一端点在水中则报错;⑤点与线相交检查,点状目标是否落在线目标上,如:公路桥应位于公路线上;⑥工农业层面要素落于居民地层面要素检查,限制工农业要素落入居民地,落入则报错;⑦河宽水深点检查,河宽水深点不在单线河上则报错。
1.2.6 拓扑关系规则
拓扑关系检查实质上是检查点、线、面目标与其组成弧段、节点、坐标之间的相交、链接、连通和包含关系,具体包括线拓扑关系检查和面拓扑关系检查。拓扑关系检查是空间分析和网络分析的基础。拓扑质量检查项主要包括自相交、打折、悬挂点、拓扑面、悬挂线、地物重叠和两线相交。
①自相交检查,检查折线或曲线自身存在交点的情况;②打折检查,检查线要素是否存在2 个连续的锐角或直角且线段节点数大于等于6 个;③悬挂点检查,当一条线的端点(起点或重点)位置上没有其他线对象的节点时,该端点就为悬挂点;④拓扑面检查,在矢量化过程中所产生的小的闭合多边形,而在拓扑关系的构建过程中构成不合法的面;⑤悬挂线检查,检查在数据采集过程中是否存在由于主观或客观的原因所产生的孤立的线;⑥地物重叠检查,地物重叠是指点、线、面、注记等实体在某容差范围内重叠;⑦线相交检查,对不合理的线相交情况进行检查,如等高线相交等。
1.2.7 冲突关系规则
①交通重线检查,交通层中有关目标坐标重合;②隧道桥梁重复检查,隧道和桥梁坐标完全重合的检查;③点要素重合检查,检查同层点要素是否重合;④微短线检查,检查是否存在小于等于最小长度限差的线要素;⑤单一地名对应多实体检查,检查单一地名是否对应多个实体。
模板匹配法是借助模板文件来识别数据缺陷的方法。模板是由各种质检规则的集合,是为了处理特定种类地理信息空间质量数据的质检人为制定的方案,具体检查模板如下:①数据结构检查模板,是对基础地理信息数据文件的整体结构进行动态检查;②属性检查模板,一般包括单属性类型检查和多属性类型检查,检查数据文件中所有要素的属性项是否符合规范且完整准确;③图形检查模板,检查不同数据图层质检的图形相关性是否合理,包括单一图层检查和多图层检查,单一图层检查较为简单,只需检查各要素之间是否存在重叠关系,而多图层检查较为复杂,需要检查不同图层之间是否存在图形不合理;④属性图形约束检查模板,图形之间不仅存在空间拓扑关系,由于特殊地物的存在导致图形之间的属性亦有可能存在特殊关系,比如悬挂点只能存在与线要素为铁路网格,其他道路属性不可存在单一悬挂点。
按照基础地理信息产品质量检查算法进行分类归纳形成算法库。具体分为拓扑关系检查、数学基础、属性数据检查、接边检查和空间关系合理性检查等5 类。基本算子是各种地图数据缺陷,尤其是空间关系缺陷识别算法建立的基础。具体算子分类如下。
1.4.1 拓扑关系检查算子
①线段自相交检查算子,读入线要素并判断该要素是否存在重叠现象;②线段打折检查算子,读入线要素并依次选择3 个相邻的节点计算夹角,若角度值为锐角则存在打折错误;③两线相交检查算子,依次读入2 个线要素,并计算其外接矩形范围,将线要素两两对比判断是否存在两线相交;④公共边重复检查算子,按属性代码依次读入每条面边线要素,将要素范围进行两两对比,如存在范围重叠且端点一致则存在公共边重复。
1.4.2 数学基础检查算子
①坐标系统检查算子,检查数据文件坐标系统是否存在于数据库中且合理。②图幅范围检查算子,检查数据文件地理范围是否符合规范。③投影参数检查算子,通过对图廓点坐标进行校验实现坐标系统正确性的检查。④平面精度检查算子,以固定点为基础检查图幅与实际地物的平面精度,是否偏移过大。
1.4.3 属性数据检查算子
①属性项检查算子,检查基础地理信息数据的属性项是否正确,包括属性字符数、属性类型与属性合理性。②属性值检查算子,属性值检查算子是检查图层各要素属性值是否正确,是否存在空值、超限值或非法字符等。
1.4.4 数字高程模型精度评估算子
数字高程模型的精度一般是指数字高程模型栅格数据高程值与实际高程值的差异,具体如下。
1)误差均值
2)标准差
3)均方根误差
N 为栅格数量,Hi为第i 个栅格的高程数值,Href为第i 个栅格所在位置的实际高程数值。
算法库是各种地图数据缺陷尤其是空间关系缺陷识别算法建立的基础,是基础地理信息产品质量检查基本算子的集成。规则库是对各类基础地理信息产品的完整性、一致性、空间关系与属性信息的正确性进行检查的逻辑规则。规则库的构建需要对各类地理信息产品的质量要求进行充分调研并抽象为相应的检查规则,建立正确的、完备的、可灵活扩展的规则库。模板库是根据作业细则、图示规范、数据模型、地理信息要素编码和制图规则等确立的质量检查流程,是对规则库的有机集成,其中涉及对算法库中基础算子的调用。模板库可以辅助空间关系缺陷、数据形式缺陷等的自动识别,达到灵活的自动识别各类基础地理信息产品缺陷和应用的目的。模型库是针对各类缺陷识别和各类基础地理信息产品质量特征进行定性或定量描述的模型集合,4 种数据库的互联关系图如图1 所示。
图1 数据库互联关系图
以多幅矢量地图数据为例,数据库调用方法如图2 所示,根据质检任务选择待检图层及质检方案,质检方案由4 种数据库共同确定,模型库根据任务需求配置相应的评价模型并设定模型评价因子及各因子权重。规则库按照质检任务配置质检规则,选择空间关系检查规则(要素落水检查、水域面进入植被面检查和街道出街区等)和拓扑关系检查规则(悬挂点检查、拓扑面检查、悬挂线检查和地物重叠检查等),模板库依照质检任务配置相应模板,选择属性检查模板(属性值域检查、属性内容一致性检查和属性值唯一性检查等),然后算法库匹配相应算子,4 种数据库共同构成质检方案与流程。最后经过计算机自动检查和人工检查后输出质检结果。
图2 矢量地图数据质量检查数据库联动流程
基础地理信息数据的质量是行业应用的基石,面对目前爆炸式增长的基础地理信息数据量,如何利用自动化检查软件对基础地理信息数据高效地进行数据质量检查是当前面临的难点问题[13]。本文对传统的基础地理信息数据质量检查软件数据库进行重新设计,提出了模型库、模板库、算法库和规则库并行的数据库设计方案,该设计使得基础地理信息质量检查软件可以灵活应对不同种类数据的复杂质检任务,极大地增加了数据质量检查软件的质检效率、扩展性与可维护性,该数据库设计方案可为后续基础地理信息数据质量检查软件提供参考。