CN105868326B - 一种管线数据存储方法 - Google Patents
一种管线数据存储方法 Download PDFInfo
- Publication number
- CN105868326B CN105868326B CN201610181341.2A CN201610181341A CN105868326B CN 105868326 B CN105868326 B CN 105868326B CN 201610181341 A CN201610181341 A CN 201610181341A CN 105868326 B CN105868326 B CN 105868326B
- Authority
- CN
- China
- Prior art keywords
- pipeline
- data
- point
- checking
- points
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000013500 data storage Methods 0.000 title claims abstract description 16
- 238000007689 inspection Methods 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 17
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 12
- 238000010586 diagram Methods 0.000 claims description 10
- 239000000463 material Substances 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 238000002372 labelling Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 2
- 230000008094 contradictory effect Effects 0.000 claims description 2
- 238000011179 visual inspection Methods 0.000 claims description 2
- 238000005259 measurement Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 210000004907 gland Anatomy 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000003466 welding Methods 0.000 description 2
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000009933 burial Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012876 topography Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种管线数据存储方法,其特征是,包括步骤:S1、将管线数据根据管线类别进行分类存储成GIS空间数据格式;S2、将步骤S1中所述的GIS空间数据格式的管线数据转换成JSON数据格式;S3、利用Hadoop将步骤S2中所述的JSON数据格式导入到数据存储目录下。它有效避免了大批量管线数据存储、拷贝的耗时的问题,又较好的保护了数据完整性。
Description
技术领域
本发明涉及管线数据存储领域,尤其涉及一种管线数据存储方法。
背景技术
地下管线普查积累了大量的地下管线数据,全国各地都在建设本地的管线GIS(GeographicInformationSystem)系统。伴随这些管线系统的建设,与管线运营安全相关的动态数据,每天有成百上千条甚至几十万条的记录在不断的产生,然而目前的管线数据存储主要采用MySQL、Oracle、SQLServer等关系数据库。快速有效的从海量的数据中挖掘出有用信息成为,让人们越来越感觉到无奈。
发明内容
为了解决上述技术问题,本发明提出一种管线数据存储方法,它有效避免了大批量管线数据存储、拷贝的耗时的问题,又较好的保护了数据完整性。
为了实现上述目的,本发明采用的方案是:
一种管线数据存储方法,包括步骤:
S1、将管线数据根据管线类别进行分类存储成GIS空间数据格式;
S2、将步骤S1中所述的GIS空间数据格式的管线数据转换成JSON数据格式;
S3、利用Hadoop将步骤S2中所述的JSON数据格式导入到数据存储目录下。
所述步骤S1包括步骤:
S11、读取外业数据库的相关配置表,根据管线小类编码判断外业数据库中是否存在对应管线的数据表以及数据表的类型,
S12、如果不存在继续查找下一管线类型;
S13、如果存在点表,则在点表中逐次读取记录,获取每条记录的X坐标和Y坐标生成Point类型;
S14、如果存在线表,则根据起点管线点号和终点管线点号,在对应管线类型的管点外业数据表中查找对应记录的X坐标和Y坐标,分别生成管线段点和管线终点,根据管线段起点和管线终点生成管线段PolyLine类型;
S15、遍历配置表中的所有管线类型重复步骤S12,S13,S14生成所有的管点和管线段空间数据表。
所述步骤S1包括步骤:
S01、采集管线数据,建立管线CAD数据库;
S02、将管线CAD数据库转换为GIS空间数据格式。
所述步骤S01包括步骤:
S011,利用激光扫描仪采集地下管线网络的点云数据;
S012,将步骤S011中所获得的点云数据通过数据配准转到同一个坐标系统中;
S013,剔除同一个坐标系统下的点云数据中的噪点数据;
S014,对步骤S013中剔除噪点数据的点云数据进行抽稀处理;
S015,根据步骤S014处理后的点云数据建立管线表面模型;
S016,根据步骤S015生成的管线表面模型绘制管线模型;
S017,根据步骤S016绘制的管线模型,提取管线信息;
S018,根据步骤S017提取的管线信息,读取系统配置参数对提取的管点,管线数据进行检查,并将检查结果按照错误类型列表;
S019,根据步骤S016绘制的管线模型绘制管线二维平面图,根据步骤S018提取的管线信息标注管线种类、材质以及管径信息,最终得到管线成果图;
S0110,将管线成果图,管线模型的三维图,管线二维平面图保存至管线CAD数据库中。
所述步骤S02包括步骤:
S021、将管线CAD数据分层转换为GIS空间数据,并记录相应的属性项;
S022、将管线CAD数据中的属性信息赋给相对应的GIS空间数据,作为GIS空间数据的属性信息。
所述步骤S2包括步骤:
S21、遍历所有的空间数据表;
S22、判断数据表类型,根据数据表类型生成JSON格式模板并重名为与空间数据表相同的名称;
S23、打开模板在文件开头部分以键值对的形式:“键:值”添加空间数据类型、参考坐标系,每组键值对分别用“,”隔开;
S24、在字段组中添加字段列表,每个字段包括名称,类型,长度三组键值对,每组键值对分别用“,”隔开,三组键值放在“{}”中,相邻的字段用“,”分割;所有字段值用“[]”包括,所有的字段分别与字段值组成键值对;
S25、在数据组中添加数据记录,所有记录与数据组组成键值对,所有记录用“[]”包括,每条记录之间“,”分割;每条记录包括属性组和几何结构两个子分组,属性组中以键值对的形式存放记录的属性列表,每个属性采用:属性:值,键值对形式,相邻键值对之间用“,”分开,所有的属性键值对存放在“{}”中;几何结构中存放geometry类型的JSON格式数据;
S26、遍历当前空间数据表重复S24,S25步骤,保存所有的数据记录,最后在文件的开头和结尾分别添加“{”,“}”,然后保存;
S27、在空间数据库中根据步骤S22,S23,S24,S25,S26处理所有的空间数据表。
所述步骤S3包括:步骤S31、通过Hadoop自带的-put命令将格式化的JSON数据导入到目录下。
所述步骤S31中的Hadoop自带的-put命令以并行的方式工作运行。
所述步骤S011包括步骤:
S111,在地形图上绘制管廊走向,将待测量区域划分为若干个网格;
S112,每个网格内包括一个测站和至少三个标靶点;
A113,对待测量范围内的所有网格,逐一架设三维激光扫描仪;
S114,每个网格内,以激光扫描仪为原点建立三维直角坐标系:其中,X轴在横向扫描面内,Y轴在横向扫描面内与X轴垂直,Z轴与横向扫描面垂直;利用激光扫描仪测量激光扫描仪所在网格内的一个测站和三个标靶点的坐标;
S115,重复步骤S112至步骤S114,直至所有网格均被测量完毕。
所述步骤S012中的数据配准利用布尔沙七参数法进行数据配准;所述步骤S013中利用直观检查法或者曲线检查法或者弦高差法进行噪点剔除;所述步骤S014中的抽稀处理的抽稀距离为5cm,所述步骤S015中建立管线表面模型利用的方法为狄罗尼三角网生长法。
本发明的有益效果为:采取三维激光扫描技术采集复杂管廊数据,提高了办公自动化程度,提高了工作效率,减轻了工作人员作业负担;三维环境下进行管线建模,提高了数据可识别度,降低了人为错误的频率;通过可配置的管线数据表自动提取管线信息数据,减轻了工作人员数据处理的复杂程度;通过配置检查项目内容提高检查准确度,一次性检查所有内容,避免重复检查,节约项目成本。
将CAD数据直接转换为GIS空间数据,相对于直接建立GIS空间数据,节省了时间与工序。同时CAD数据本身也是一个数据库,也是在实际中需求的一个数据库,这意味着该方式的处理,在建立CAD数据库的技术上通过数据转换得到GIS空间数据是个非常简洁高效的。
利用压缩存储管线数据,为管线数据存储技术提供了一种新的思路,最大限度地减少文件系统的负担,这样不仅提高了文件的查找、拷贝、转移的效率,也会有效提高计算机或者各种手持嵌入式可移动备的存储效率,有效提高了各种设备的运行效率。
附图说明
图1管线数据压缩存储流程图;
图2管线数据表组织结构;
图3管线空间生成流程;
图4JSON数据格式化流程;
图5JSON格式数据组织结构图。
具体实施方式
为了更好的了解本发明的技术方案,下面结合附图对本发明作进一步说明。
(1)SO1采集管线数据,建立管线CAD数据库。
S011,利用激光扫描仪采集地下管线网络的点云数据;
通过机载激光扫描仪或地面激光扫描仪获取具有影像真实感的高精度点云数据,点云数据是实际物体的真实尺寸的复原,是目前最完整、最精细和快捷的对物体现状进行档案保存的手段。每个扫描站点数据放置在以仪器为中心的独立坐标系统(以仪器为原点,X轴在横向扫描面内,Y轴在横向扫描面内与X轴垂直,Z轴与横向扫描面垂直)。目标点P坐标公式:Xp=ScosθCosφ;Yp=Scosθsinφ;Zp=Ssinθ。其中,S为测点与扫描仪的距离;φ为激光脉冲的横向扫描角度观测值;纵向角度扫描观测值θ;P为观测以及三位坐标(Xp,Yp,Zp)。
在数据采集之前需要对采集现场进行实际勘察,了解测区范围,管廊走向,管廊类型,管廊宽度信息,在地形图上绘制管廊走向,对测量范围内,分别在横向与纵向上进行等间距的行和列划分,其中行间距与列间距不必等同,定义相邻的两行与相邻的两列交叉形成的区域为网格,每个网格内包括一个测站和至少3个标靶点,每一行作为一个测量带,保证各扫描站最终获取的数据能代表完整的测量区域。在网格内设置测站并编号,编号规则采用:测区编号(XXXX)+行号(XX)+编号(XX),尽量在测量带中心线上设置测站,以减少测站数量。在每个网格内设置标靶,标靶设置在测量带中心线上以及两侧,相邻3个标靶不要在同一直线上,并对标靶统一编号,命名规则采用:测区编号(XXXX)+行号(XX)+列号(XX)+编号(XX)。根据以上实际踏勘情况进行资料采集和分析,资料采集包括掌握测区的范围,管廊走向,管廊长度,管廊类型,管线模型的种类,设备的功能,设备的各种工作状态,设备的操作方式,根据管线成果图比例尺收集对应比例尺的测区地形图,收集到测区清晰的影像图。
通过实际勘察分析的在预先设置的测站上逐一架设三维激光扫描仪对测区进行扫描,获取测区点云数据。在控制标靶中心和测站点安装GPS接收机或者通过全站仪获取控制标靶中心和测站点的三维坐标(x,y,z),记录保存,为数据配准提供控制点信息。同时对扫描测站所在区域内管线转折点、管线压盖处、管线交叉处以及地形起伏大于20厘米的地方拍照,照片命名规则为:测站编号(如:XXXXX2)+类型(转折点,01;压盖,02;交叉03;起伏,04;其他,11)+编号(XXX1)。
S012,将步骤S11中所获得的点云数据通过数据配准转到同一个坐标系统中。任意相邻两个测站点扫描得到的点云数据,没有经过匹配,但是每个网格内具有至少3个以上的标靶点,根据这些相同的参考点进行坐标转换,统一到同一个坐标系统。本处采用布尔莎七参数方法进行数据配准,三个坐标平移量(△X,△Y,△Z),即两个空间坐标系的坐标原点之间坐标差值;三个坐标轴的旋转角度(ωx,ωy,ωz),通过按顺序旋转三个坐标轴到指定角度,可以使两个空间直角坐标系的X1Y1Z1轴重合在一起;尺度因子m,即两个空间坐标系内的同一段直线的长度比值,实现尺度的比例转换。
数据配准过程:
①在每个网格范围内由已知的3个标靶控制点根据以下公式计算七参数:
其中,
把(2)(3)(4)代入(1),由于一般情况下ωx,ωy,ωz为微小旋转角,取:
采用上述条件简化公式(1),得到如下公式:
②计算测区内七参数平均值,即每个网格计算的七参数的均值,防止因局部误差造成精度不均匀,
③根据以上计算的七参数代入公式(6),计算每个测站点扫描点云数据的在目标坐标系中的新坐标,从而实现数据配准。
S013,剔除同一个坐标系统下的点云数据中的噪点数据。噪点删除:在非接触三维扫描测量过程中,受测量方式、被测量物体材料性质、外界干扰等因素的影响,不可避免地会产生误差很大的噪声点和失真点。因此在数据处理中,查找噪声点和可能存在的失真点,对其进行处理。
噪点删除分为3种方法:①直观检查法:通过图形显示终端,用肉眼直接存在于屏幕上的孤点进行删除。②曲线检查法:通过截面的首末数据点,用最小二乘法拟合得到一条样条曲线,曲线的阶次可根据曲面截面的形状决定,通常为3-4阶,然后分别计算中间数据点pi到样条曲线的距离e,如果e大于等于ε(ε为给定的允差),则认为pi是坏点,应予以剔除;③弦高差方法:如图3所示,连接检查点的前后2点,计算中间数据点pi到弦的距离e,如果e≥ε(ε为给定的允差),则认为pi是坏点,应予以剔除。
噪音点删除步骤,⑴打开点云数据和测区影像图,以影像图作为参照,通过肉眼对比观察点云数据中不在管廊范围内的孤立点,进行删除,⑵通过弦高自动计算遍历点云数据依次噪点删除,即对点云数据中检查点逐次连接检查点的前后两点,计算当前检查点P到前后两点连线的距离d,如果d≥ε(ε为给定的最大限差),则认为P是坏点,应予以剔除。
S014,对步骤S013中剔除噪点数据的点云数据进行抽稀处理;数据简化处理:点云扫描数据中,点与点的间隔较小,只有毫米级别,数量较大,在数据处理中速度较慢,造成不必要的麻烦,为了提高数据处理速度,在满足测绘精度要求的前提下对点云数据进行简化处理,提高工作效率。
点云数据是很多具有X、Y、Z坐标的坐标点的集合,相邻两点的坐标数据相差固定数值只有毫米级别。作为管线数据这些点都是多余的,所以对点云数据进行抽稀处理,减少数据量,提高处处理速度。点云数据设定抽稀的间隔点数或抽稀距离(默认抽稀距离5cm),根据《城市地下管线探测规程》中探测管线点解析坐标中误差I级精度要求为±(5+0.02h)cm,在满足数据精度的前提下默认为5cm,其中h为管线埋深,当h≤70cm时,默认70cm。
数据抽稀过程如下:①在打开点云数据txt文件;②在数据处理模块中设置抽稀距离或设置抽稀点数n(间隔点数(n)=抽稀距离(Δl)/点云间隔(d));③根据抽稀距离或者间隔点数n从数据文件的第1条记录开始读取直到最后一条,逐次删除第1条记录到第n+1条记录之间的数据,依次类推,直到最后一条记录。
S015,根据步骤S14处理后的点云数据建立管线表面模型。管线表面建模:通过狄罗尼三角网法建立TIN(TriangulatedIrregularNetwork)管线表面模型。经过数据抽稀后点云数据中相邻2点的最小间隔Δl,相邻2点之间的最大间隔为(√2)Δl,在建立狄罗尼三角网时,如果相邻2点的距离大于(√2)Δl,则放弃构建三角网,以防止相邻管线上的点连接构成错误的表面模型,根据实际情况如果相邻管线的间距小于(√2)Δl,则相应减小抽稀间距,使得最大抽稀距离不大于相邻管线间距的最小值。
三角网建立步骤:①在所采集的离散点中任意找一点,然后查找距此点最近的点,连接后作为初始基线。②在初始基线右侧运用Delaunay法则搜寻第三点,即在初始基线右侧的离散点中查找距此基线距离最短的点,作为第三点。③生成Delaunay三角形,再以三角形的两条新边(从基线起始点到第三点以及第三点到基线终止点)作为新的基线。④重复步骤②,③直至所有的基线处理完毕。
S016,根据步骤S015生成的管线表面模型绘制管线模型;系统图形库提供超过25种的图形库,包括对焊法兰、平焊法兰、螺纹法兰、松套法兰、盲板、法兰盖、等径三通、异径、三通、四通、六通、同心异径管、偏心异径管、管帽、翻边、封头、管台、堵头、45°弯头、90°弯头、变径弯头、圆形管、方直管、弯管、灯杆。用图形界面及参数化的设计,绘制管线模型,可以修改设备的位置及管口的位置,也可以修改设备尺寸、材质、位置。在绘制管线3D模型时可以随时切换到二维视图检查选择的模型管线、管件是否正确。
管线模型编辑流程:①从管线表面模型中选择一条,作为待编辑的管线;②在图形库中手动选择需要添加的模型;③在数据编辑窗口内,管线模型指定特征点(一般把表面模型两端的中间最高点作为模型的起点和终点);④打开已有的影像图、照片、施工图资料检查特征点是否正确,如果不正确,则删除,重新绘制管件;⑤选择输入的管线模型,选择修改属性,在参数设置窗体内,修改模型参数(管线种类、管径、材质、附属物、颜色,其中管线种类为必填项);⑥保存编辑的管线模型。
S017,根据步骤S16绘制的管线模型,提取管线信息;根据测区所包含的管线种类设置系统配置项,根据配置项管线种类配置提取管线信息,保存到管线数据表中。
根据步骤S016中的三维管线模型,读取上述管线表配置的参数,按管线种类提取管点、管线分别保存到不同mdb格式管点数据表中(管点表命名规则:XXPOINT,如给水管点表JSPOINT)和管线数据表(管线表命名规则:XXLINE,如给水管线表:JSLINE)中,其中管线种类按照国家《管线要素分类代码与符号表达》CH/T1036-2015,分为9个大类电力(DL),电信(DX),给水(JS),排水(PS),燃气(RQ),热力(RL),工业(GY),综合管沟(ZH),其他(QT)。管线小类根据测区实际情况进行分类,并以分类的首字母缩写作为管线小类编码。
S018,根据步骤S017提取的管线信息,读取系统配置参数对提取的管点,管线数据进行检查,并将检查结果按照错误类型列表。管线检查流程:①在数据检查项配置中,数据检查内容包括如下:
②根据以上检查项,为检查内容设置检查规范值。
a.结构检查:根据定义的各管线表结构,对表中的字段数量、字段名称、类型、长度、精度进行检查,同时检查非空字段的内容是否存在空属性的情况。b.数据唯一性检查:主要是检查管点管线表唯一值字段中是否存在相同记录,检查出的错误信息以报表的形式表现;c.范围检查,对管点管线数值的最大最小值进行设置。d.管线连通性检查:根据设置的连通性检查表(记录不允许连通的管点特征及附属物,如排水口、进水口)检查提交的数据是否存在在不允许连通的地方出现连通的情况。e.唯一性检查设置管点和管线表中要求数据唯一的字段。f.固定项输入检查:主要是检查在管点管线表规定字段中的填写内容是否按固定输入项内容进行填写,如果没有按规定填写则在错误窗口进行显示,比如:排水的特征字段中只允许填写(窨井材质:砼、砖石、塑料等)如果填写不在之内,则报错;g.点线对应检查:根据点表中的管点编号字段中编号去检查线表中的起点管线点号字段和终点管线点号字段中是否存在,如果不存在则提示检查数据库有误;h.线点对应检查:根据线表中的起点管线点号字段和终点管线点号字段内容去检查点表中的管点编号字段中编号中是否存在,如果不存在则提示缺少某物探点号的点属性记录;i.排水流向检查:主要是检查排水类管线中的水流方向是否合理(一般假设排水从管线井底标高较大的一端流向较小的一端),首先输入最大标高容限(即流向终点标高-流向起点标高的最大容限),然后根据管线中两点的井底标高差值判断线表中“流向”字段内容的合理性,检查出不合理的信息(记录实体ID,所在的信息表,警告信息描述)以报表的形式表现;j.管线超长检查:指定管线允许的最大长度,检查管线的管段长度是否超过设定的最大管线长度,检查出的超长管线以报表的形式表现;k.特征附属物地物构建筑物编码检查:主要检查管点表中的“特征”、“附属物”字段中是否出现了矛盾性的属性值,比如:如果在“特征”填写“变径”,而在“附属物”填写“阀门井”,同时进行编码检查,主要检查各个管类,管点管线表中的管线对象编码是否与管线普查规程中规定的一致(包括线编码、点编码、管点命名规则是否于管类一致);
③根据上述检查配置项中设定的参数遍历管线数据,对数据表中的记录进行检查,并记录错误结果。
④根据检查结果对错误信息逐条修改,修改完成后再次检查,直到没有错误记录。
S019,根据步骤S016绘制的管线模型绘制管线二维平面图,根据步骤S018提取的管线信息标注管线种类、材质以及管径信息,最终得到管线成果图;读取管线数据库生成管线生成二维管线平面图,根据成图要求标注管线种类、材质、管径等信息,生成管线图。
二维平面图生成过程:①根据mdb数据库中的管线种类创建成图图层。图层名称与数据表表名相同(如:排水(PS)类型,创建线PSLINE,点PSPOINT,管点注记PSMark,管线注记PSM四个图层)。②管点图形根据数据表中的X,Y坐标添加实体点,点图形符号根据特征或者附属物字段中类型添加符号样式。③管线图形根据数据表中的起点编号和终点编号,分别读取点表中对应编号的点作为管线起点和终点绘制管线图,管线的样式、颜色为管线分类表中定义的颜色。
S110,将管线成果图,管线模型的三维图,管线二维平面图保存至数据库中。根据工程要求提交输出成果包括管线电子平面图、管线三维图以及管线数据库必要成果。
(2)对管线数据根据管线类别进行分类存储成GIS空间数据库格式。
该步骤可以是直接将管线数据存储为GIS空间数据格式,也可以是将上述步骤中所建立的管线CAD数据转换为GIS空间数据。
其中管线CAD数据转换包括步骤:
S021、将管线CAD数据分层转换为GIS空间数据,并记录相应的属性项。
将能够直接抄写的注记抄写到GIS空间数据的文本中;对于不能够直接抄写的注记,分析文本中注记的ID号、大小以及两字符间的长度,得到文本信息,将删除文本信息中的空格字符作为注记的文本属性,将文本属性写入GIS空间数据的文本中;
S022、将管线CAD数据中的属性信息赋给相对应的GIS空间数据,作为GIS空间数据的属性信息。
直接将管线数据存储为GIS空间数据格式的过程为:
S11、读取外业数据库的相关配置表,根据管线小类编码判断外业数据库中是否存在对应管线的数据表以及数据表的类型,
S12、如果不存在继续查找下一管线类型;
S13、如果存在点表,则在点表中逐次读取记录,获取每条记录的X坐标和Y坐标生成Point类型;
S14、如果存在线表,则根据起点管线点号和终点管线点号,在对应管线类型的管点外业数据表中查找对应记录的X坐标和Y坐标,分别生成管线段点和管线终点,根据管线段起点和管线终点生成管线段PolyLine类型;
S15、遍历配置表中的所有管线类型重复步骤S12,S13,S14生成所有的管点和管线段空间数据表。
具体的实施过程如下:
外业采集管线数据为MicrosoftAccess格式存储的属性数据表格。如图2所示,管点数据表中(管点表命名规则:XXPOINT,如给水管点表JSPOINT)和管线数据表(管线表命名规则:XXLINE,如给水管线表:JSLINE)中,其中管线种类按照国家《管线要素分类代码与符号表达》CH/T1036-2015,分为9个大类电力(DL),电信(DX),给水(JS),排水(PS),燃气(RQ),热力(RL),工业(GY),综合管沟(ZH),其他(QT)。管线小类根据测区实际情况进行分类,并以分类的首字母缩写作为管线小类编码。
管线分类如表1:
表1管线分类表
管线点数据表用于描述管线点的相关属性,命名规则xxPoint(XX为管线小类编码)。管点数据表的结构如表2:
表2管线点采集数据属性字段表
管线段数据表用于描述管线段的相关属性,命名为xxLine。管线段数据表的结构如表3:
表3管线段采集数据属性字段表
如图3所示,根据以上管点、管线段数据表格式,首先通过自编程序生成管线空间数据格式。具体步骤如下:①读取配置表(见表4),根据管线小类编码判断外业数据库中是否存在数据表以及数据表的类型(点或线),②如果存在点表,则获取X坐标和Y坐标生成Point类型;③如果不存在继续查找下一管线类型;④如果存在线表,则根据根据起点管线点号和终点管线点号,在XXPoint表中分别查找对应的X坐标和Y坐标,分别生成管线段的起点S_Point和管线终点E_Point,根据S_Point和E_Point生成管线段PolyLine类型;⑤遍历配置表中的所有管线类型重复②③④生成所有的管点和管线段空间数据表。
表4配置表
将管线数据存储成管线空间数据格式(本处以ArcgisPersonalGeodatabase格式为例),其中,空间数据表命名格式同外业数据采集表名称相同(如图2所示)。空间管线点表格字段格式如表5:
表5空间管线点表
空间管线段表格字段式如表6:
表5空间管线段表
其中,Geometry类型为二进制形式存储的图形信息,包含空间参考坐标系和图形信息,分为点(Point),范围(Extent),圆(Circle),多线(Polyline),面(Polygon)5种类型。
(3)把空间数据库格式的管线图形数据,转换成JSON((JavaScriptObjectNotation))数据交换数据格式。
空间数据格式数据量较大,在数据传输,转移,存储时比较耗时,对数据的快速共享起到了限制作用,需要把这写空间数据转换成占用空间相对较小的文件,提高传输速率。
通过自编程序将空间数据表中的数据按记录的先后顺序转换成格式化数据,每个数据表存储在一个JSON文件中。
如图4所示,①遍历空间数据库中所有数据表;②判断数据表类型(Point或者Polyline),根据属性表类型步骤JSON格式模板并重名为与空间数据表相同的名称;③打开模板在文件开头部分以键值对的形式(“键:值”)添加空间数据类型、参考坐标系,每组键值对分别用“,”隔开;④在字段组(Fields)中添加字段列表,每个字段包括名称(name),类型(fieldtype),长度(length)三组键值对,每组键值对分别用”,”隔开,三组键值放在“{}”中,相邻的字段用“,”分割,所有的字段分别与字段值组成键值对,所有字段值用“[]“包括;⑤在数据组(features)中添加数据记录,所有记录与数据组(features)组成键值对,所有记录用“[]”包括,每条记录之间“,”分割;每条记录包括属性组(attribute)和几何结构(geometry)两个子分组,属性组(attribute)中以键值对的形式存放记录的属性列表,每个属性(属性:值)键值对之间用“,”分开,所有的属性键值对存放在“{}”中;几何结构(geometry)中存放geometry类型的JSON格式数据;⑥遍历当前空间数据表重复④⑤步骤,保存所有的数据记录,最后在文件的开头和结尾分别添加“{”,“}”,然后保存;⑦在空间数据库中根据以上步骤②③④⑤⑥处理所有的空间数据表。
其中,管线点Geometry类型转换JSON格式如下:
{"x":95707.58069493785,"y":66290.38461433914,
“spatialReference”:{wkid:4821}}
其中“x”为X对应X坐标值,“y”对应Y坐标值。
管线段Geometry类型转换JSON格式如下:
{"paths":[[[-122.68,45.53],[-122.58,45.55]],“spatialReference”:
{wkid:4821}}
其中,“paths”对应构成线段的点的数据组以及空间坐标系,每个点的坐标采用[x,y]形式。
(4)通过Hadoop自带工具将数据导入到hdfs数据存储目录下。
通过Hadoop自带-put命令将格式化的JSON数据导入到hdfs目录下。在数据处理时,以并行的工作方式进行数据处理,比单一进程数据处理要快很多。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
Claims (2)
1.一种管线数据存储方法,其特征是,包括步骤:
S1、将管线数据根据管线类别进行分类存储成GIS空间数据格式;如果直接将管线数据存储成GIS空间数据格式,所述步骤S1包括步骤:
S11、读取外业数据库的相关配置表,根据管线小类编码判断外业数据库中是否存在对应管线的数据表以及数据表的类型,
S12、如果不存在继续查找下一管线类型;
S13、如果存在点表,则在点表中逐次读取记录,获取每条记录的X坐标和Y坐标生成Point类型;
S14、如果存在线表,则根据起点管线点号和终点管线点号,在对应管线类型的管点外业数据表中查找对应记录的X坐标和Y坐标,分别生成管线段点和管线终点,根据管线段起点和管线终点生成管线段PolyLine类型;
S15、遍历配置表中的所有管线类型重复步骤S12,S13,S14生成所有的管点和管线段空间数据表;
反之,所述步骤S1包括步骤:
S01、采集管线数据,建立管线CAD数据库;
所述步骤S01包括步骤:
S011,利用激光扫描仪采集地下管线网络的点云数据;
S012,将步骤S011中所获得的点云数据通过数据配准转到同一个坐标系统中;
采用布尔莎七参数方法进行数据配准,三个坐标平移量(△X,△Y,△Z),即两个空间坐标系的坐标原点之间坐标差值;三个坐标轴的旋转角度(ωx,ωy,ωz),通过按顺序旋转三个坐标轴到指定角度,可以使两个空间直角坐标系的X1Y1Z1轴重合在一起;尺度因子m,即两个空间坐标系内的同一段直线的长度比值,实现尺度的比例转换;
数据配准过程:
①在每个网格范围内由已知的3个标靶控制点根据以下公式计算七参数:
其中,
把(2)(3)(4)代入(1),由于一般情况下ωx,ωy,ωz为微小旋转角,取:
采用上述条件简化公式(1),得到如下公式:
②计算测区内每个网格计算的七参数的均值,防止因局部误差造成精度不均匀,
③根据以上计算的七参数代入公式(6),计算每个测站点扫描点云数据的在目标坐标系中的新坐标,从而实现数据配准;
S013,剔除同一个坐标系统下的点云数据中的噪点数据;
噪点删除分为3种方法:①直观检查法:通过图形显示终端,用肉眼直接存在于屏幕上的孤点进行删除;②曲线检查法:通过截面的首末数据点,用最小二乘法拟合得到一条样条曲线,曲线的阶次可根据曲面截面的形状决定,通常为3-4阶,然后分别计算中间数据点pi到样条曲线的距离e,如果e大于等于ε,ε为给定的允差,则认为pi是坏点,予以剔除;③弦高差方法:连接检查点的前后2点,计算中间数据点pi到弦的距离e,如果e≥ε,ε为给定的允差,则认为pi是坏点,予以剔除;
噪音点删除步骤:(1)打开点云数据和测区影像图,以影像图作为参照,通过肉眼对比观察点云数据中不在管廊范围内的孤立点,进行删除;(2)通过弦高自动计算遍历点云数据依次噪点删除,即对点云数据中检查点逐次连接检查点的前后两点,计算当前检查点P到前后两点连线的距离d,如果d≥ε,ε为给定的最大限差,则认为P是坏点,予以剔除;
S014,对步骤S013中剔除噪点数据的点云数据进行抽稀处理;
S015,根据步骤S014处理后的点云数据建立管线表面模型;
S016,根据步骤S015生成的管线表面模型绘制管线模型;
S017,根据步骤S016绘制的管线模型,提取管线信息;
S018,根据步骤S017提取的管线信息,读取系统配置参数对提取的管点,管线数据进行检查,并将检查结果按照错误类型列表;
管线检查流程:
①在数据检查项配置中,数据检查内容包括如下:
a.结构检查:根据定义的各管线表结构,对表中的字段数量、字段名称、类型、长度、精度进行检查,同时检查非空字段的内容是否存在空属性的情况;b.数据唯一性检查:主要是检查管点管线表唯一值字段中是否存在相同记录,检查出的错误信息以报表的形式表现;c.范围检查,对管点管线数值的最大最小值进行设置;d.管线连通性检查:根据设置的连通性检查表检查提交的数据是否存在在不允许连通的地方出现连通的情况;e.唯一性检查设置管点和管线表中要求数据唯一的字段;f.固定项输入检查:主要是检查在管点管线表规定字段中的填写内容是否按固定输入项内容进行填写,如果没有按规定填写则在错误窗口进行显示,则报错;g.点线对应检查:根据点表中的管点编号字段中编号去检查线表中的起点管线点号字段和终点管线点号字段中是否存在,如果不存在则提示检查数据库有误;h.线点对应检查:根据线表中的起点管线点号字段和终点管线点号字段内容去检查点表中的管点编号字段中编号中是否存在,如果不存在则提示缺少某物探点号的点属性记录;i.排水流向检查:主要是检查排水类管线中的水流方向是否合理,首先输入最大标高容限,然后根据管线中两点的井底标高差值判断线表中“流向”字段内容的合理性,检查出不合理的信息以报表的形式表现;j.管线超长检查:指定管线允许的最大长度,检查管线的管段长度是否超过设定的最大管线长度,检查出的超长管线以报表的形式表现;k.特征附属物地物构建筑物编码检查:主要检查管点表中的“特征”、“附属物”字段中是否出现了矛盾性的属性值,同时进行编码检查,主要检查各个管类,管点管线表中的管线对象编码是否与管线普查规程中规定的一致;
②根据以上检查项,为检查内容设置检查规范值;
③根据上述检查配置项中设定的参数遍历管线数据,对数据表中的记录进行检查,并记录错误结果;
④根据检查结果对错误信息逐条修改,修改完成后再次检查,直到没有错误记录;
S019,根据步骤S016绘制的管线模型绘制管线二维平面图,根据步骤S017提取的管线信息标注管线种类、材质以及管径信息,最终得到管线成果图;
S0110,将管线成果图,管线模型的三维图,管线二维平面图保存至管线CAD数据库中;
S02、将管线CAD数据库转换为GIS空间数据格式;
所述步骤S02包括步骤:
S021、将管线CAD数据分层转换为GIS空间数据,并记录相应的属性项;
S022、将管线CAD数据中的属性信息赋给相对应的GIS空间数据,作为GIS空间数据的属性信息;
S2、将步骤S1中所述的GIS空间数据格式的管线数据转换成JSON数据格式;
所述步骤S2包括步骤:
S21、遍历所有的空间数据表;
S22、判断数据表类型,根据数据表类型生成JSON格式模板并重名为与空间数据表相同的名称;
S23、打开模板在文件开头部分以键值对的形式:“键:值”添加空间数据类型、参考坐标系,每组键值对分别用“,”隔开;
S24、在字段组中添加字段列表,每个字段包括名称,类型,长度三组键值对,每组键值对分别用“,”隔开,三组键值放在“{}”中,相邻的字段用“,”分割;所有字段值用“[]”包括,所有的字段分别与字段值组成键值对;
S25、在数据组中添加数据记录,所有记录与数据组组成键值对,所有记录用“[]”包括,每条记录之间“,”分割;每条记录包括属性组和几何结构两个子分组,属性组中以键值对的形式存放记录的属性列表,每个属性采用:属性:值,键值对形式,相邻键值对之间用“,”分开,所有的属性键值对存放在“{}”中;几何结构中存放geometry类型的JSON格式数据;
S26、遍历当前空间数据表重复S24,S25步骤,保存所有的数据记录,最后在文件的开头和结尾分别添加“{”,“}”,然后保存;
S27、在空间数据库中根据步骤S22,S23,S24,S25,S26处理所有的空间数据表;
S3、利用Hadoop将步骤S2中所述的JSON数据格式导入到数据存储目录下;
所述步骤S3包括:步骤
S31、通过Hadoop自带的-put命令将格式化的JSON数据导入到目录下,所述步骤S31中的Hadoop自带的-put命令以并行的方式工作运行。
2.根据权利要求1所述的一种管线数据存储方法,其特征是,所述步骤S011包括步骤:
S111,在地形图上绘制管廊走向,将待测量区域划分为若干个网格;
S112,每个网格内包括一个测站和至少三个标靶点;
S113,对待测量范围内的所有网格,逐一架设三维激光扫描仪;
S114,每个网格内,以激光扫描仪为原点建立三维直角坐标系:其中,X轴在横向扫描面内,Y轴在横向扫描面内与X轴垂直,Z轴与横向扫描面垂直;利用激光扫描仪测量激光扫描仪所在网格内的一个测站和三个标靶点的坐标;
S115,重复步骤S112至步骤S114,直至所有网格均被测量完毕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610181341.2A CN105868326B (zh) | 2016-03-25 | 2016-03-25 | 一种管线数据存储方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610181341.2A CN105868326B (zh) | 2016-03-25 | 2016-03-25 | 一种管线数据存储方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105868326A CN105868326A (zh) | 2016-08-17 |
CN105868326B true CN105868326B (zh) | 2020-06-05 |
Family
ID=56625927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610181341.2A Active CN105868326B (zh) | 2016-03-25 | 2016-03-25 | 一种管线数据存储方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105868326B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107045554A (zh) * | 2017-05-05 | 2017-08-15 | 国家测绘地理信息局四川测绘产品质量监督检验站 | 管线表数据与空间数据转换方法及装置 |
CN107871209A (zh) * | 2017-10-26 | 2018-04-03 | 泰华智慧产业集团股份有限公司 | 一种基于gis的地下管线辅助规划审批的方法 |
CN107679252A (zh) * | 2017-11-06 | 2018-02-09 | 中煤航测遥感集团有限公司 | 地下管线数据共享方法 |
CN108829882B (zh) * | 2018-06-27 | 2021-05-04 | 深圳乐信软件技术有限公司 | 信息收集方法、装置、终端及介质 |
CN108961339B (zh) * | 2018-07-20 | 2020-10-20 | 深圳辰视智能科技有限公司 | 一种基于深度学习的点云物体姿态估计方法、装置及其设备 |
CN110865973B (zh) * | 2018-08-08 | 2021-12-07 | 马上消费金融股份有限公司 | 一种数据处理方法及设备和相关装置 |
CN109766401A (zh) * | 2019-01-14 | 2019-05-17 | 中煤航测遥感集团有限公司 | 管道数据存储方法及装置 |
CN111832259B (zh) * | 2019-04-12 | 2023-09-12 | 中国联合网络通信集团有限公司 | Json数据生成方法及设备 |
CN110415331B (zh) * | 2019-06-14 | 2022-08-19 | 中国电建集团昆明勘测设计研究院有限公司 | 一种基于点云数据的轮廓或孔洞快速检测判别和孔洞修补方法 |
CN110347769B (zh) * | 2019-07-09 | 2021-03-30 | 东方网力科技股份有限公司 | 多层级地图瓦片的处理方法、装置、设备和存储介质 |
CN111382225B (zh) * | 2020-03-18 | 2023-08-04 | 北京山维科技股份有限公司 | 一种建筑规划测量成果数据的存储方法及系统 |
CN112084172A (zh) * | 2020-08-17 | 2020-12-15 | 空间信息产业发展股份有限公司 | 一种快速自动化注册数据库空间关系表方法 |
CN111813886A (zh) * | 2020-09-07 | 2020-10-23 | 成都同飞科技有限责任公司 | 一种基于管道探测成果建立管网数据库的方法及系统 |
CN112380607B (zh) * | 2020-11-18 | 2023-07-07 | 同济大学建筑设计研究院(集团)有限公司 | 管线连接数据生成方法、装置、计算机设备和存储介质 |
CN112364116B (zh) * | 2020-11-25 | 2021-06-01 | 北京京航计算通讯研究所 | 建立地下管线三维模型与目标gis系统关联的方法及系统 |
CN112989527B (zh) * | 2021-01-28 | 2024-06-14 | 上海淀山勘测有限公司 | 一种地下管线快速成图的方法 |
CN113656488A (zh) * | 2021-08-17 | 2021-11-16 | 苏州工业园区测绘地理信息有限公司 | 一种城市地下管线一体化管理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495879A (zh) * | 2011-12-06 | 2012-06-13 | 南京市测绘勘察研究院有限公司 | 基于地面lidar的工业架空管线量测方法 |
CN103927419A (zh) * | 2014-04-18 | 2014-07-16 | 山东泰华电讯有限责任公司 | 基于ArcGIS平台的CAD城市管线竣工图的数据处理方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5129191B2 (ja) * | 2009-05-14 | 2013-01-23 | 大輝測量株式会社 | 管網解析用データ生成方法及び管網解析用データ生成装置 |
CN101770614A (zh) * | 2010-01-06 | 2010-07-07 | 深圳先进技术研究院 | 三维管网安全管理方法 |
US8447721B2 (en) * | 2011-07-07 | 2013-05-21 | Platfora, Inc. | Interest-driven business intelligence systems and methods of data analysis using interest-driven data pipelines |
CN103383556B (zh) * | 2012-05-04 | 2015-09-16 | 天津市地下空间规划管理信息中心 | 综合管线数据内外业一体化实时更新质量控制方法 |
US9183222B2 (en) * | 2014-01-28 | 2015-11-10 | Gas Technology Institute | Mapping and asset lifecycle tracking system |
-
2016
- 2016-03-25 CN CN201610181341.2A patent/CN105868326B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495879A (zh) * | 2011-12-06 | 2012-06-13 | 南京市测绘勘察研究院有限公司 | 基于地面lidar的工业架空管线量测方法 |
CN103927419A (zh) * | 2014-04-18 | 2014-07-16 | 山东泰华电讯有限责任公司 | 基于ArcGIS平台的CAD城市管线竣工图的数据处理方法及系统 |
Non-Patent Citations (1)
Title |
---|
Hadoop支持下的地理信息大数据处理技术初探;王凯 等;《测绘通报》;20151031(第10期);第114-117页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105868326A (zh) | 2016-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105868326B (zh) | 一种管线数据存储方法 | |
Badenko et al. | Scan-to-BIM methodology adapted for different application | |
CN105512287B (zh) | 一种建立综合管廊信息数据库的方法 | |
Weibel | Generalization of spatial data: Principles and selected algorithms | |
CN103699634A (zh) | 一种一站式管线探测的数据建库方法及系统 | |
CN115560690B (zh) | 一种基于三维激光扫描技术的结构物整体变形分析方法 | |
CN106779417A (zh) | 工程勘察信息数字化采集、管理及综合应用方法 | |
CN110398246A (zh) | 基于沙漠地区无人机航拍影像自动生成线划图的方法 | |
CN113436319B (zh) | 城市室内三维语义模型的异形排列矩阵构建方法及其系统 | |
CN103679804A (zh) | 一种地下管线数据三维模型自动构建系统及其构建方法 | |
CN101719127A (zh) | 地质矿产空间数据库数据质量快速系统检查方法 | |
Khayyal et al. | Creation and spatial analysis of 3D city modeling based on GIS data | |
CN115100373A (zh) | 地表与地下环境三维一体化表征方法、装置、介质及设备 | |
CN102495879A (zh) | 基于地面lidar的工业架空管线量测方法 | |
CN112258624A (zh) | 一种三维实景融合建模的方法 | |
Demir | Automated detection of 3D roof planes from Lidar data | |
Hullo et al. | Advances in multi-sensor scanning and visualization of complex plants: The utmost case of a reactor building | |
CN110706340B (zh) | 基于真实地理数据的管线三维可视化平台 | |
CN116578564B (zh) | 一种多测合一生产质检一体化应用服务系统 | |
Gergel'ova et al. | Automation of spatial model creation in GIS environment | |
CN115935561A (zh) | 一种三维管网建模方法、装置、电子设备及存储介质 | |
CN112381941B (zh) | 一种航飞影像坐标纠正的方法 | |
CN104463924A (zh) | 基于散乱点高程采样数据的数字高程地形模型生成方法 | |
Guo et al. | A comparative study of large karst cave point cloud registration in various scanning modes | |
Pang et al. | Design and Implementation of 3D Urban Underground Pipe Network System |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |