一种GIS数据点线映射方法与系统技术方案

技术编号:34903629 阅读:13 留言:0更新日期:2022-09-10 14:14
本发明专利技术公开了一种GIS数据点线映射方法与系统,方法包含步骤1:获取GIS数据中的点表数据与线表数据;步骤2:分别对点表数据与线表数据进行对象化处理生成节点对象字典与管道对象字典;步骤3:节点对象字典中的各节点ID在管道对象字典中进行映射并更新;步骤4:步骤3更新后的节点对象字典中的各坐标值在更新后的管道对象字典中进行映射并更新;步骤5:步骤4更新后的节点对象字典中的各坐标值在更新后的管道对象字典中进行坐标值模糊映射并更新;步骤6:步骤5中更新后的管道对象字典,将管道端点中映射状态为False的端点生成新的普通节点对象;步骤7:将普通节点对象整合至步骤5更新的节点对象字典中的点表对象中。新的节点对象字典中的点表对象中。新的节点对象字典中的点表对象中。

【技术实现步骤摘要】
一种GIS数据点线映射方法与系统


[0001]本专利技术涉及GIS数据点线映射领域,具体涉及一种GIS数据点线映射方法与系统。

技术介绍

[0002]GIS,即地理信息系统,是能源行业必备的信息处理系统,以城市燃气行业为例,庞大复杂的城市天然气管网系统,连接着数以万计的用户和调压设施,如果管网的拓扑数据(即GIS数据)存在偏差,则无法进行准确有效的天然气管网仿真,那么燃气调度的数字化将会步履维艰,为此,进行城燃管网数据的检查和修复操作,是目前构建天然气管网仿真的基础;管网拓扑数据,一般以点表和线表构成,前者代表拓扑中各种类型的节点,点表中包含节点的ID、位置名称、类型、坐标等属性信息;后者代表连接节点的管道,线表中包含管道的ID、位置名称、管长、管径、壁厚、起点ID、终点ID、坐标等属性信息。正常情况下,线表包含的所有节点与点表中的节点,在数量、ID、位置等方面应该完全一样,但现实情况是,治理再好的GIS数据,也存在点、边无法对应的问题,而如果管道上的端点无法准确映射到点表中的点,则不能确定管道端点是气源、用户、调压站还是普通节点,在发起仿真计算时,边界条件赋值便无从下手。因此,构建点边映射的自动化修复工具,是GIS修复的重点之一;目前燃气公司基本使用人工校核的方式进行点边映射;在常见的自动化方法中,大多使用相同节点ID进行点表与线表端点的映射,也有部分咨询机构针对相同坐标的节点和管道端点,进行映射。
[0003]现有技术的缺点:1.人工进行点边映射,在准确率和效率方面,无法满足数据治理的时效化需求;2.直接使用ID映射的问题在于,点和线端点在ID相同的情况下,坐标仍可能不同,因此映射到管道端点的节点,在GIS编辑和查看的软件中,可能发现距离相隔较远,给人以不连接的视觉感受。另外,点、线表自动生成的节点ID,在人工维护的过程中可能存在大量删减和增加,因此点线表在节点ID方面,可能彼此的差集很大,因此这种映射方式可能导致漏掉很多本该映射成功的情况;3.直接使用坐标映射的问题在于,在人工维护GIS系统的过程中,可能新建了一个用户,但操作人员没有把管道直接拉到用户上,而只是拉到用户附近,这样,用户节点与管道的端点坐标便不可能完全一致。这种情况对于数据治理较差的燃气公司,是普遍存在的。因此,纯粹的坐标映射,同样会漏掉很多本该映射成功的情况。

技术实现思路

[0004]本专利技术要解决的技术问题是现有的人工进行点边映射,在准确率和效率方面,无法满足数据治理的时效化需求,本专利技术提供一种GIS数据点线映射方法,本专利技术还提供一种GIS数据点线映射系统,通过ID映射、坐标精准映射和坐标模糊映射,可以尽力还原客观的点边连接情况,最大程度的将管网稳态、瞬态仿真计算所需的气量值,赋值到正确的管道端
点上,从基础数据层面提升了仿真计算的可靠性;相较于人工校核、纯ID映射、纯坐标映射,考虑的方面更多,通过利用节点类型,逐级映射,逐方法映射的方式,可以使点边映射的准确率和召回率均具有较高保障,以该自动修复工具的映射结果为基础再进行人工校核,可缩短GIS治理时间,提升后续仿真实施的可行性,用以解决现有技术导致的缺陷。
[0005]为解决上述技术问题本专利技术提供以下的技术方案:第一方面,一种GIS数据点线映射方法,其中,包含以下步骤:步骤1:获取GIS数据中的点表数据与线表数据;步骤2:分别对所述点表数据与所述线表数据进行对象化处理生成节点对象字典与管道对象字典,在所述节点对象字典中扩展各对象属性,在所述管道对象字典中扩展各对象属性;步骤3:依据所述节点对象字典中的各节点ID在所述管道对象字典中进行映射,并更新所述节点对象字典与所述管道对象字典;步骤4:依据步骤3更新后的所述节点对象字典中的各坐标值在更新后的所述管道对象字典中进行映射,并更新所述节点对象字典与所述管道对象字典;步骤5:依据步骤4更新后的所述节点对象字典中的各坐标值在更新后的所述管道对象字典中进行坐标值模糊映射,并更新所述节点对象字典与所述管道对象字典;步骤6:依据步骤5中更新后的所述管道对象字典,根据管道端点的映射状态,将映射状态为False的端点生成新的普通节点对象;步骤7:将所述普通节点对象整合至步骤5更新的所述节点对象字典中的点表对象中。
[0006]上述的一种GIS数据点线映射方法,其中,步骤2中分别对所述点表数据与所述线表数据进行对象化处理生成节点对象字典与管道对象字典的具体方法如下:遍历所述点表数据对所述点表数据中的各节点进行对象化,对象属性继承节点的原始属性,生成所述节点对象字典;所述节点对象字典中扩展的各对象属性包含pos属性、matched属性、desc属性、mark_pos属性、mark_id属性;pos属性为x, y坐标构成的元组;matched为该节点的映射状态,默认为False;desc为方便后期人工校核填写的描述;mark_pos为对该节点的坐标备注,mark_id为对该节点的id备注;遍历所述线表数据对所述线表数据中的各管道进行对象化,对象属性继承管道的原始属性,生成所述管道对象字典;所述管道对象字典中扩展的各对象属性包含pos_source属性、pos_target属性、source_matched属性、target_matched属性、desc属性;pos_source为管道起点的x、y坐标构成的元组,pos_target为管道终点的x、y坐标构成的元组,source_matched为管道起点的映射状态,默认为False;target_matched为管道终点的映射状态,默认为False;desc为方便后期人工校核时填写的描述;点表与线表一般为二维数组,其中第一个维度代表不同的节点或管道,第二个维度代表节点或管道的属性,为了编程的便利化,采用基于对象的方式,将各节点、管道对象化,并对每个对象化后的节点/管道增加少量属性,以方便点线自动化映射后的人工校核。
[0007]上述的一种GIS数据点线映射方法,其中,步骤3中依据所述节点对象字典中的气源、用户、调压站、阀门四类型节点ID在所述管道对象字典中进行映射,并更新所述节点对象字典与所述管道对象字典的具体步骤如下:加载所述节点对象字典,依次获取所述气源、所述用户、所述调压站、所述阀门四种类型节点的ID集合:首先选取所述气源类型节点的ID集合,在所述管道对象字典中进行遍历,并依据映射条件判断管道端点在不在同类型节点的ID集合中;若不在,则跳过该管道不做处理,若在,且所述管道端点matched属性为False,则将所述管道对象的source_matched属性或target_matched属性(视在ID集合中的管道端点为source还是target而定)由False改为True,并将对应节点对象的matched属性,由False改为True,将所述对应节点对象坐标与所述管道端点坐标对齐,从而完成映射成功后所述节点对象字典与所述管道对象字典的更新,如此循环,直到该类型节点完成全部管道的遍历;随后依次选取所述调压站、所述用户、所述阀门按照上个步骤在所述管道对象字典中进行遍历,并在遍历中更新所述节点对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种GIS数据点线映射方法,其特征在于,包含以下步骤:步骤1:获取GIS数据中的点表数据与线表数据;步骤2:分别对所述点表数据与所述线表数据进行对象化处理生成节点对象字典与管道对象字典,在所述节点对象字典中扩展各对象属性,在所述管道对象字典中扩展各对象属性;步骤3:依据所述节点对象字典中的各节点ID在所述管道对象字典中进行映射,并更新所述节点对象字典与所述管道对象字典;步骤4:依据步骤3更新后的所述节点对象字典中的各坐标值在更新后的所述管道对象字典中进行映射,并更新所述节点对象字典与所述管道对象字典;步骤5:依据步骤4更新后的所述节点对象字典中的各坐标值在更新后的所述管道对象字典中进行坐标值模糊映射,并更新所述节点对象字典与所述管道对象字典;步骤6:依据步骤5中更新后的所述管道对象字典,根据管道端点的映射状态,将映射状态为False的端点生成新的普通节点对象;步骤7:将所述普通节点对象整合至步骤5更新的所述节点对象字典中的点表对象中。2.如权利要求1所述的一种GIS数据点线映射方法,其特征在于,步骤2中分别对所述点表数据与所述线表数据进行对象化处理生成节点对象字典与管道对象字典的具体方法如下:遍历所述点表数据对所述点表数据中的各节点进行对象化,对象属性继承节点的原始属性,生成所述节点对象字典;所述节点对象字典中扩展的各对象属性包含pos属性、matched属性、desc属性、mark_pos属性、mark_id属性;遍历所述线表数据对所述线表数据中的各管道进行对象化,对象属性继承管道的原始属性,生成所述管道对象字典;所述管道对象字典中扩展的各对象属性包含pos_source属性、pos_target属性、source_matched属性、target_matched属性、desc属性。3.如权利要求2所述的一种GIS数据点线映射方法,其特征在于,步骤3中依据所述节点对象字典中的气源、用户、调压站、阀门四类型节点ID在所述管道对象字典中进行映射,并更新所述节点对象字典与所述管道对象字典的具体步骤如下:加载所述节点对象字典,依次获取所述气源、所述用户、所述调压站、所述阀门四种类型节点的ID集合:首先选取所述气源类型节点的ID集合,在所述管道对象字典中进行遍历,并依据映射条件判断管道端点在不在同类型节点的ID集合中;若不在,则跳过该管道不做处理,若在,且所述管道端点matched属性为False,则将所述管道对象的source_matched属性或target_matched属性由False改为True,并将对应节点对象的matched属性,由False改为True,将所述对应节点对象坐标与所述管道端点坐标对齐,从而完成映射成功后所述节点对象字典与所述管道对象字典的更新,如此循环,直到该类型节点完成全部管道的遍历;随后依次选取所述调压站、所述用户、所述阀门按照上个步骤在所述管道对象字典中进行遍历,并在遍历中更新所述节点对象字典和所述管道对象字典,直到所有类型节点均
完成遍历为止。4.如权利要求3所述的一种GIS数据点线映射方法,其特征在于,步骤4中依据步骤3更新后的所述节点对象字典中的所述气源、所述用户、所述调压站、所述阀门四类型节点的坐标值在更新后的所述管道对象字典中进行映射,并更新所述节点对象字典与所述管道对象字典的具体方法如下:加载步骤3更新后的所述节点对象字典,依次获取所述气源、所述用户、所述调压站、所述阀门四类型节点的坐标值

节点ID字典,其中坐标值为Key,节点ID为Value;首先选取所述气源类型节点的坐标值,在步骤3更新后的所述管道对象字典中进行遍历,并依据映射条件判断所述管道端点在不在每一种类型节点的坐标集合中;若不在,则跳过该管道不做处理,若在,且所述管道端点matched属性为False,则将管道对象的matched属性改为Ture,利用坐标值

节点ID字典得到节点对象,将所述节点对...

【专利技术属性】
技术研发人员:栾星栾东晓王子峥孟辉王英鹏
申请(专利权)人:上海叁零肆零科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1