矿产图储量数据智能匹配与更新关键技术

2020-08-26 07:07邓吉秋李晨菡方青磊路馥毓
关键词:图例储量新旧

邓吉秋,李晨菡,方青磊,路馥毓

(中南大学地球科学与信息物理学院,湖南长沙,410083)

矿产资源利用现状调查成果反映我国资源供应能力和供应趋势,现阶段成果数据多以MAPGIS与Access 数据库格式存储。地质矿产数据具有数据种类多、数据量大、存储组织格式复杂等特点[1],难以按通用方式进行管理与更新,不利于矿产资源可持续发展[2]。矿产储量图更新类似于GIS地图更新。FRITSCH等[3]认为当前GIS的核心已经从数据生产转为数据更新,数据更新关系着GIS的可持续发展,国内外众多学者对高效数据更新机制进行了研究,并应用于实际生产工作中。蒋捷等[4]提出了基础地理信息数据库更新的若干关键技术问题,分别从更新策略、变化信息获取、变化信息采集等方面进行了论述;陈军等[5]针对基础地理信息动态更新技术体系,提出了基础地理信息数据“应适时更新”的观点。数据匹配与更新的前提是存在已有数据,其必然包含一定的先验知识,韩敏等[6]提出以GIS 数据为先验知识,对拐点位置进行更新的矢量边界更新方法;COBB 等[7]提出了一种基于知识的非空间属性数据匹配策略;BAILLOEUL 等[8]基于GIS 数据提供的先验知识和数字表面模型的输入,以卫星图像更新城市数字地图。GIS数据包含一定的空间拓扑关系,可利用空间拓扑对数据进行更新;周晓光等[9]通过对地籍数据库进行研究,提出了一种表达不同地块间空间拓扑关系的双四元交模型;SUN 等[10]提出了一种基于空间位置和几何特征唯一识别矢量地理对象的方法;张丰等[11]提出了一种基于时空过程的地籍数据更新模型,并根据时空对象的拓扑关系实现了地籍特征的回溯与更新。目前,对矿产资源现状调查成果数据库更新方面的研究较少。吴晓萍[12]研究了四川省矿产资源利用现状调查成果与储量库两库衔接的方法、关键技术与精度评价方法。与矿产资源现状调查成果有关的国土资源数据更新多采用人工为主的更新方式,林文忠[13]在制定更新方案和流程基础上,对电子或矢量数据逐项进行人工修改;杨辉山等[14]基于构建统一数据模型建立“一纵一横”的国土资源数据联动更新机制;许扬[15]利用“3S”集成技术实现国土资源数据更新;唐权等[16]在理论上对空间数据更新进行探讨,但未能形成可实际应用的系统。尽管空间数据更新理论研究与技术开发得到较大发展,但现有研究与实践主要是针对基础地理信息、土地资源等基础类数据,对专业性程度较高的矿产资源数据更新尤其是数据生产与管理相分离模式下的数据更新仍无有效解决方法[17-24]。为此,本文作者结合先验知识与空间拓扑对矿产图储量数据进行智能匹配与更新,以便提高工作效率,降低更新成本。

1 矿产图储量数据特征及其更新思路

1.1 矿产图储量数据内容与特征

矿产图储量数据在不同国家或地区、不同部门有其固有内容与特征,其内容与表达形式隐含了专业领域范围的先验知识,从中提取具体构成与形式是设计更新技术路线与方法的前提,对其进行深入分析是矿产图储量数据更新的关键。

1.1.1 数据内容与整体特征

在我国,矿产储量数据一般由基层矿山或矿业公司采用MapGIS软件处理,其矿产资源利用现状数据在未统一入库处理前,多基于文件系统以矿区为单位进行管理。每个矿区的所有数据单独存储至1个独立目录,并按其专题与种类分别存储至不同子目录。数据可分为空间图形数据、属性数据以及少量文档数据(如报告文件、说明文件),其中矿产图储量数据涉及其中部分的图形数据及其相关属性数据(图1 中最右边框内容是与储量相关的数据文件)。

1.1.2 矿产图储量图形数据

图1 文件存储组织格式Fig.1 Format of file storage organization format

储量图形数据为基于MapGIS 格式的地图文件,一般包括工程文件(即地图文档)及所包含的图层文件。地图文件的组织分为2种:一种是数据按类别(如地层、断层等)与实体类型(点、线、面、注记)被分成多个图层,不同类别与实体类型的要素数据根据相应分类被存储在不同图层,如块段图层、注记圆图层、图例图层等;另一种是仅按实体类型分点、线、面、注记4个图层,每个实体类型图层文件中包含所有可能的类别,如线图层中包含地层界线、断层线、标注线、图框等。MapGIS图形数据一般未建立空间拓扑关系,线存在过头、未连接等现象,多边形存在未封闭、重叠等问题。

储量块段及其注记圆是储量图形的主要要素。储量块段在图层中是一个具有一定面积的不规则多边形,块段数据记录了矿块储量的相关信息,块段多边形内中会出现注记圆(当多边形内部空间不够时亦可能出现在多边形外)、文本标签(记录块段名称或编号)等。注记圆被圆中直线分割成多个子块,每个子块内由1个标注信息记录对应储量块段的某个属性信息,如图2所示对应关系。注记圆的组成也分2种情形:一种是线模式,由一系列线要素组成,圆形区域中线要素将圆形区域从形式上分割为若干子块;另一种是注记圆整体是1个子图,该子图以点的符号形式存储,子图的构成与线模式一致。图件中一般存在对注记圆分块进行说明的图例圆,图例圆存在于图件图例部分中(见2(b))。图例圆也是1 个被分割成多块的圆形区域,图例圆的组成有与注记圆相似的2 种情形(线分割和子图)。图例圆中被分割的每个子块上注记1 个数字编号(AnnoID),并在图例圆右侧有编码说明,每个编码子块均对应一个储量块段的属性。在1个地图文档中注记圆与图例圆的子块分割模式相同,注记圆中每个子块的注记对应于图例圆子块编码指示即储量块段属性。

每个注记圆均与1个块段对应,一般注记圆与对应块段在空间上是最临近的(与其他块段的距离更远);注记圆可能在块段多边形内部,否则会有1条引线将注记圆与其对应的块段相连接,此引线会同时跨越对应块段的边界与注记圆外接矩形的边界;也有可能注记圆最近的块段与此注记圆无引线连接;此外,注记圆的第1或第2个子块记录对应块段编号。

1.1.3 矿产图储量属性数据

具体矿种或金属的储量信息存储有2 种形式:一种是在图形数据中以储量块段注记形式存储具体块段某种矿种或金属的储量,另一种是在Access数据库中以属性表存储。Access数据库针对不同数据类型设计不同的属性表,主要包括储量块段表、块段新旧编码对照表、矿种/金属储量表等,各表之间通过主键关联。

所有矿产图储量数据的内容、形式与特征均可作为智能数据匹配与更新的先验知识与空间拓扑控制准则。

图2 注记圆与图例圆Fig.2 Annotation circle and legend circle

1.2 矿产图储量数据智能匹配、更新整体思路及方法

更新时,先对文件系统下的原始目录与新目录按照矿区进行匹配,并遍历不同矿区下的新、旧目录,以其大小和时间为依据进行变化检测[25]。对于发生变化的矿区目录,递归该目录下的子目录及文件,对其变化进行检测,直至识别出变化的文件及其类型为止。

文件的更新有2种情形:一种是对文件及目录进行整体更新,此类情形一般较少出现,只需用新文件替换旧文件或者用新矿区目录替换旧矿区目录即可实现更新;另一种是对文件进行局部增量更新,其中储量数据更新主要是对此类文件中注记圆与块段进行更新。

增量更新先检测文件是否根据数据类别与实体类型分为多个图层,之后遍历文件各图层,根据空间位置及特征识别并提取出图例圆、注记圆及储量块段,将图例圆与其相对应的注记圆匹配,根据两者的坐标偏移量提取注记圆中的标注信息,根据规则对新旧注记圆、新旧块段以及注记圆与块段进行匹配,最终对块段储量信息进行更新。块段储量信息更新包括对Access 属性表更新、注记圆更新以及块段图形更新,更新思路流程如图3所示。

2 基于制图规则与空间拓扑的储量数据智能匹配与更新

在文件系统中,矿区目录包含该矿区所有数据文件,分别设某矿区原始目录与新目录为Ms={ms1,ms2,…,msn},Mp={mp1,mp2,…,mpn},矿区目录中图形文件所包含的图层集合设为C ={c1,c2,…,cu},储量块段集合、注记圆集合分别用B ={b1,b2,…,bn}和N ={n1,n2,…,nr}表示。其中,每个注记圆子块集合为S ={s1,s2,…,sm},子块内的标注信息集合为T ={t1,t2,…,tm}。此外,N 中每个注记圆均对应1个标注字典,以子块编号为字典的键,对应的标注信息为字典的值。对于属性文件,该矿区的属性表集合为Z ={z1,z2,…,zx},每张表中所包含的属性名集合为P ={p1,p2,…,py}。

2.1 新旧矿产储量文件智能匹配

将新旧文件进行正确匹配是后续数据更新操作的基础,步骤如下。

1)遍历原始目录Ms中文件,其中Msi为Ms中任意文件。

2) 遍历新目录Mp中文件,其中Mpi为Mp中任意文件,以文件名作为匹配依据。若msi与mpi的文件名匹配,则msi与mpi匹配成功。

3)若Mp中没有与msi文件名匹配的文件,则以文件类型为依据;若msi和mpi分别为Ms与Mp中同类型单一文件,则msi与mpi匹配成功。

4)重复步骤2)和3),若新目录中没有与msi匹配的文件,则msi未能实现匹配。

5)重复步骤1)至4),实现新旧文件的匹配。

2.2 基于制图规则的单一图件储量注记圆、储量块段多边形智能发现

图3 更新思路流程图Fig.3 Flow chart of update idea

由于图形数据种类多、结构复杂且一般未建立空间拓扑关系,因此,在进行数据识别前,需将图形数据进行预处理,包括数据质量检查、坐标变换、拓扑检查等,之后通过识别要素图层对要素进行识别。

1)计算文件中图层数量card(C)。

2)若card(C)>4,则文件数据按类别与实体类型被分成多个图层,遍历各个图层,根据图层的命名规则识别要素所在图层(块段一般出现在图层名包含“块段”字符串的图层中,图例圆出现在图层名包含“图例”字符串的图层中),直接从相关的图层中识别出块段集合与图例圆。

3) 若card(C)=4,图层集合为C ={c1,c2,c3,c4},则根据要素类型确定其所在图层,遍历图层中每一个要素,根据储量块段以及图例圆的特征判断各要素,识别出块段集合与图例圆。

4)由于注记圆与图例圆的子块分割模式相同,根据相同的分割模式,识别出图例圆对应的注记圆集合。最后,通过注记圆与块段的空间关系与对应规则,对所有注记圆与块段进行匹配。

2.3 新旧矿产图储量注记圆、储量块段多边形智能匹配与更新

2.3.1 新旧注记圆的智能匹配与更新

在进行匹配与更新前,需要将新数据根据原始数据坐标系进行坐标变换。此外,注记圆与图例圆由线或点要素组成,需要对它们进行拓扑构面再进行提取。拓扑构面过程如下:遍历图例圆子图和注记圆集合中的注记圆,得到组成图例圆或注记圆的各个要素数据,将此部分数据提取出来存储至临时数据库;若图例圆或注记圆以子图形式组成,则根据提取的要素构建图例圆或注记圆数据;对提取的要素数据进行数据处理及拓扑检查,最后将生成具有拓扑关系的面。提取的图例圆与注记圆集合分别D 和N,即为所需的匹配数据。

根据相同子图定位,将提取的新旧注记圆进行匹配,提取标注信息后,通过建立关系字典将新旧标注信息进行匹配,实现注记圆的更新。具体更新步骤如下。

1) 遍历原始文件中注记圆集合Ns={ns1,ns2,…,nsr},nsi为Ns中任意注记圆。

2) 遍历新文件中注记圆集合 Np={np1,np2,…,npr},npi为Np中任意注记圆,计算

式中:d()为距离计算函数。若t<dt(其中,dt为新旧注记圆相匹配时它们之间距离的阈值),则认为原始注记圆nsi与新注记圆npi相匹配,以此实现新旧注记圆的匹配。

3)计算原始数据中图例圆D 与注记圆的坐标偏移量(圆心间距离):

式中:Ox和Oy分别为x 和y 方向的偏移量;(Dx和Dy)为D 圆心坐标;(nsi,x,nsi,y)为注记圆nsi圆心坐标。

4)将D的外包矩形R根据坐标偏移量移动,并计算其所在区域范围:

5) 遍历注记圆nsi中的所有子块S,若Sj在R中,则提取Sj中标注信息tsj,查询新旧注记圆对应的标注字典,得到对应的新标注信息,记为tpj,因此,tsj与tpj相匹配,实现新旧标注信息的匹配。

6)用新注记信息tpj替换旧注记信息tsj,并将其填至原始注记圆对应的子块中。

7) 重复步骤5)和6),将注记圆中所有标注信息替换,实现注记圆nsi更新。

8)重复步骤1)至7),完成所有注记圆的更新。

记原始标注信息集合为Ts={ts1,ts2,…,tsm},新标注信息集合为Tp={tp1,tp2,…,tpm},由于新旧标注信息已实现匹配,因此,两者存在映射关系Ts→Tp,将映射关系写至标注项关系字典中(见表1)。当字典中映射关系覆盖所有新旧标注信息时,新旧标注信息匹配可直接通过查找标注项关系字典实现。与表1对应的某个实例矿产图的新旧图例圆及其编码说明见图4。

2.3.2 新旧块状多边形的匹配与更新

首先遍历块段集合,判断每个块段要素的面积是否大于阈值at(一般为10),若是,则对该储量块段进行提取,并其加至块段集合B;之后对提取的新旧块段进行匹配,采用GIS空间叠加分析的方法,通过计算面积比权值构建关系决策树,实现新旧数据的匹配,具体步骤如下。

1)将新旧数据进行叠加,如图5(a)所示。

2) 遍历原始块段的集合Bs={bs1,bs2,…,bsn},其中,bsi为Bs中任意块段。

图4 新旧图例圆及其说明Fig.4 New and old legend circle and its description

图5 叠加分析与关系决策树Fig.5 Overlay analysis and relation decision tree

3)遍历新文件中块段集合Bp={bp1,bp2,…,bpn},bpi为Bp中任意块段,并计算原始块段与新块段重叠部分在原始块段中所占面积比v为

式中:boi为bsi与bpi相交部分;A( )为面积计算函数。

若v>vt(vt为面积比阈值,一般设为0.1),则认为新块段bpi与原始块段bsi相交。

4)重复步骤3),找出所有与原始块段bsi相交的新块段。

5) 重复步骤2)至4),找出所有原始块段与新块段的对应关系(存在一对多、多对一、多对多、一对一关系),将所有对应关系均拆分为1 个原始块段对应1 个新块段的映射关系f:bsi→bpi,建立映射关系集F ={f1,f2,…,ft}。

6)遍历F,计算综合面积比权值:

式中:bsj为原始块段;bpj为与之一一对应的新块段,因此,存在映射fj:bsj→bpj;boj为bsj与bpj重叠部分。

7) 若u>100%,则将fj:bsj→bpj及比例构成写至关系决策树,如图5(b)所示。

8) 重复步骤6)和7),将所有映射关系均写至关系决策树。遍历决策树每个节点,确定块段之间对应关系:

①若原始数据中多个块段对应新数据中的同一个块段,则认为此多个块段被合并成1 个新块段,如图5(b)中块段A与块段C在新数据中合并为块段E。

②若原始数据中某个块段对应新数据中多个块段,则认为该块段被分割,如图5(b)中块段B在新数据中被分割为块段G与块段K;

③若块段边界发生变化且面积增加,则认为块段发生外延。

④若叠加后若块段的边界变化不是十分明显且面积变化不大,则认为该块段没有变化,如图5(b)中块段D与块段H。

⑤若块段的储量类型变为采空,则需对块段进行采空区标记,以便于后续更新。

块段多边形图形的更新基于增量更新、采取“挖补”[26]的更新技术。“挖补”指从旧数据中“挖”出已显著变化部分,根据变化部分从新数据中提取对应数据,再将提取的新数据“补”回原始数据。其中,对于块段储量类型变为采空区的情形,根据块段采空区标记,在更新图层数据文件时,同步更新图层文件中的采空区文件图层,核查块段图层和储量类型图层。

2.4 储量属性数据的更新

1)对于在Access 数据库中以属性表存储的属性数据,遍历属性表集合Z,利用数据库的事务机制对属性表zi进行更新。在更新过程中,录入相关更新信息,如更新时间、更新原因、负责人操作员等信息,便于更新后的质检工作。

2)对于以储量块段注记形式存储的属性数据,记其属性名为pi,匹配其所在的储量块段bi,并找到bi所对应的属性表zi,表中属性名集合为P。若pi∈P,则将pi对应属性值用该属性数据替换,否则,将pi添加至入P,并将该属性数据写至pi对应属性字段。

3 矿产资源利用现状调查储量数据智能匹配与更新技术实验

3.1 实验数据

本次实验数据采用全国矿产资源利用现状普查成果中的部分湖南省矿区数据,新储量成果数据由基础单位(如矿山等)基于往年全国矿产资源利用现状普查成果进行更新而来,或者来自于新开采矿产资源数据。

3.2 原型系统的设计

原型系统包括GIS 基础功能模块(包含图形编辑、属性编辑、查询等)、文件数据更新模块(包含文本数据更新、图片数据更新、图层文件更新等)、图形数据更新模块(包含几何图形更新、注记圆更新、标注更新等)与属性表数据更新模块。

系统主界面主要分为菜单栏、工具栏、原始图层管理区、新图层管理区、原始地图显示区、新地图显示区、结果显示区、状态栏等多个部分,可实现新旧数据对比显示。子界面整体以文件列表的式对文件数据进行管理展示,分为工程文件管理区域与数据显示区域,可对MPJ文件、Access文件以及附件文件进行管理与显示。

3.3 更新过程与效果

以东岗山矿区储量数据更新为例,在系统中打开匹配的新旧工程文件,识别文件中新旧注记圆及块段,并进行匹配。图6所示为某个匹配的新旧储量块段及其对应的注记圆,左侧为原始图形数据,右侧为新图形数据。通过自动比对可见:新旧注记圆的分割方式及圆中的标注数据有差异,块段形状及其块段多边形中文本标签亦不同。

对注记圆中标注信息进行匹配,图7所示为新旧注记圆中标注信息的对应关系。通过自动比对可见:新旧标注信息不相同,Access 属性表中新旧字段名及属性值亦不等同。

最后,将匹配后的数据进行更新。图8所示为数据更新前后对照图,经人工核实与对比发现:更新后注记圆中标注信息发生改变,即其对应块段属性发生变化,如注记圆中第2个子块对应块段的属性由储量类型变为资源储量类别,值由‘122b’变为‘采空’,此外块段的外形与文本标签亦发生变化。

图6 更新前新旧注记圆Fig.6 New and old annotation circle before update

图7 标注信息的匹配Fig.7 Matching of label information

图8 更新前后对照效果Fig.8 Comparison effect before and after update

此外,系统也能检查出原始新旧数据中存在的注记与属性表不匹配的问题。通过图7中的2个对照表可查看新旧对照关系及注记与数据库的对应关系,通过界面直接定位其所对应注记圆中的标注信息,为数据检查提供便利。但系统仍存在一些不足之处,如由于目录命名的随意性很难形成统一规则,目录的匹配暂未实现,新旧目录需人为指定等。

3.4 算法分析

通过理论分析,储量块段及注记圆的自动匹配与更新算法的时间复杂度均为O(n2),空间复杂度均为O(1),从理论上验证了该算法对于数据更新切实可行,且在一定程度上提高了更新效率。以东岗山矿区的储量数据作为实验数据,分别利用原型系统以及人工方法进行数据更新实验。

1) 采用人工方法,要求操作人员非常熟悉MapGIS软件操作,熟悉储量数据库表结构及表之间的关系,熟练操作人员需要2个工作日才能完成各种图形及属性信息的更新与核对。

2)采用原型系统,操作人员在10 min 之内可以完成数据的更新与核对。

实验对比结果表明:自动更新算法大大节省了时间,证明自动更新算法对更新效率的提升有很大作用。自动更新算法结果与人工更新结果完全一致,证明自动更新算法具有通用性与可靠性。

但自动更新算法依然存在不足,图层类别的识别依赖于文件名,若图形文件文件名上没有图例、注记等字样,则需对算法进一步优化,将更多的先验知识与规则纳入算法。

4 结论

1)针对矿产图储量数据更新,提出了一种基于先验知识与空间拓扑的储量数据匹配与更新方法,对其中注记圆与储量块段的识别、匹配与更新等关键技术进行了研究,并设计、开发了自动更新系统。

2)基于全国矿产资源利用现状普查成果实现了对其中储量数据的更新,更新效果良好,提高了数据更新的工作效率与精度,说明该方法与系统具有通用性与可靠性,对矿产资源数据的更新具有重要的指导与现实意义。

3)现阶段所实现的效果仍存在一些不足之处,如由于MapGIS数据规范性差,会出现标注数据缺失、属性数据与图形要素不匹配等情况,从而导致一些数据无法实现自动化匹配与更新,因此,后续工作需对图形数据识别与匹配进行优化。

猜你喜欢
图例储量新旧
13.22亿吨
基于三维软件资源储量估算对比研究
全球钴矿资源储量、供给及应用
耕读事 新旧人
2019 年世界油气储量与产量及其分布
新旧全球化
找拼图
找照片
看看山东新旧动能转换怎么干
新旧桂系决裂之变