CN111259555B - 一种基于线程池的石油管线等间距线生成方法 - Google Patents
一种基于线程池的石油管线等间距线生成方法 Download PDFInfo
- Publication number
- CN111259555B CN111259555B CN202010066187.0A CN202010066187A CN111259555B CN 111259555 B CN111259555 B CN 111259555B CN 202010066187 A CN202010066187 A CN 202010066187A CN 111259555 B CN111259555 B CN 111259555B
- Authority
- CN
- China
- Prior art keywords
- pipeline
- longitude
- point
- thread pool
- coordinate data
- 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
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种基于线程池的石油管线等间距线生成方法,首先根据石油管线经纬度坐标数据进行了去除重复坐标处理,创建最大个数不超过200个线程的线城池,然后对管线数据按照一定数据量进行分割装载线程池,最后对于处理后的数据进行交叉点检测和修剪,本发明不仅能计算出中线的等间距线坐标值,减轻人工修改的工作量,同时采用线程池有很好的并发计算和运行速度快的优势,能够进行大数据量处理。
Description
技术领域
本发明涉及石油管线巡检领域,具体为一种基于线程池的石油管线等间距线生成方法。
背景技术
目前我国石油管道的安全状况检查需求与日俱增,主要是由于我国现役油气长输管道80%以上超过设计寿命,已进入事故多发期,再加上人为破坏等因素,管道事故频繁发生。各大油田都非常重视石油管道巡检工作,通常是由巡线工人携带设备定期对管线周围进行检查并记录、汇报、排查问题等。石油管线距离长,有的部分会穿过居民区,农田,工厂,学校等场所附近,所处的地形有时也会很复杂,给巡线工作的开展带来极大的不便。
近年来无人机发展迅速,随着无人机在航拍领域的兴起,采用无人机进行石油管线巡检一方面可以极大的减轻了巡线工人的工作量,另一方面通过航拍地图能够清晰的了解到管线周围的环境状况,对实施安全措施,有助于进一步研究。由于石油管线大部分埋于地下,在用无人机巡检时,通常是航拍管线周围环境,然后无人机航拍后的地形图片通过后期的合成处理,再使用一些软件工具,例如奥维互动地图将合成后的图替换到地图的对应区域,使得地图显示更加直观,很方便进行标记处理和高后果区识别,同时也方便后期的管线勘察和维护。
在做航拍图标记时根据需求往往要考虑管线两侧等间距划线问题,对于成千上万的坐标数据,采用现有软件的等间距偏移功能进行标注的时候,由于平移算法较为简单,对于管线夹角处往往只能照顾到夹角的一条边,生成的等间距线会出现很多交叉,再加上管线的走向曲折多变,而对于几百公里乃至上千公里的管线进行等间距线生成操作时,问题更加明显,如果用这些软件的手动编辑功能来修正的话将会是一项十分繁琐的工作,常见的等间距线问题如图2所示,左边是右边中线的等间距线。
发明内容
针对现有软件不能进行复杂管线走向等间距标记的问题,本发明提供一种基于线程池的石油管线等间距线生成方法,通过应用线程池技术,实现了复杂管线等间距线的快速生成。
本发明是通过以下技术方案来实现:
一种基于线程池的石油管线等间距线生成方法,包括以下步骤:
步骤1、对管线的经纬度坐标数进行过滤,得到管线轴线的经纬度坐标数据;
步骤2、计算相邻两个经纬度坐标组成的向量,然后根据相邻的两个向量计算对应的角平分线向量;
步骤3、以角平分线对应夹角的交点为旋转点,将角平分线向量顺时针或者逆时针旋转90°,将旋转后每个角平分线向量的终点坐标依次连接,得到带有交叉点的等间距线;
步骤4、设定每次遍历的线段量,以带有交叉点的等间距线的起始点为起点,对设定数量的线段逆序依次遍历;
步骤5、当出现交叉点,则删除相交两条线段之间的线段,并设该交叉点为转折点,再次以该转折点为起点,再次遍历设定数量的线段,重复该过程,直至遍历整个等间距线;
步骤6、重复步骤5,直至带有交叉点的等间距线中的交叉点为0,将所有的转折点依次连接,形成管线的最终的等间距线。
优选的,步骤1中所述对管线的经纬度坐标数进行过滤的方法为,查找管线轴线经纬度坐标数据中相邻两个经纬度坐标是否相同,相同则保留一个。
优选的,步骤2中,创建线程池,通过线程池计算角平分线向量。
优选的,所述线程池的线程小于等于200。
优选的,将管线的经纬度坐标数据由管线的起点到终点,分为多个坐标数据组,每个坐标数据组中包涵N个连续的经纬度坐标,线程池分组计算每个坐标数据组中的角平分线向量。
优选的,相邻两个坐标数据组衔接点的两个经纬度坐标重合。
优选的,对每个坐标数据组设置一个键值key,并创建一个全局map,根据全局map的排序功能,把得到的多个组的角平分线数据按照键值key进行排序,得到整个管线排序后的角平分线向量。
优选的,步骤4中设定每次遍历的线段量为,带有交叉点的等间距线的2/3长度范围内的线段数量。
与现有技术相比,本发明具有以下有益的技术效果:
本发明提供了一种基于线程池的石油管线等间距线生成方法,首先计算管线轴线上的相邻坐标的向量,在通过相邻两个相邻得到角平分线向量,然后对角平分线向量进行旋转,得到管线轴线的等间距线,通过遍历等间距线中的交叉点,并将交叉点依次连接,形成管线最终的等间距线,解决了现有软件生成的等间距线带有交叉点的问题。
进一步,将坐标数据进行分组,通过创建线程池对坐标数据进行处理,然后将处理后的数据进行交点检查处理,最终得到计算后的左右管线经纬度坐标点,实现了复杂管线等间距线的生成,能够一次性计算出复杂管线走向的等间距线坐标,该方法采用线程池进行经纬度数据处理,在效率和精确度方面都有一定的保证,与现有市场上奥维互动地图使用的方法对比,操作起来更加方便,而且处理效果好,效率高,同时可被开发成动态链接库使用到任何等间距线计算的场合。
附图说明
图1为奥维互动地图生成的带有交叉的线;
图2为本发明方法的算法流程图;
图3为本发明方法的逻辑框图;
图4为本发明方法生产的管线等间距线图。
具体实施方式
下面结合附图对本发明做进一步的详细说明,所述是对本发明的解释而不是限定。
地球是个椭球体,本发明所提出的算法,在计算等间距线的时候用到了向量运算,故假设将整个管线平铺到直角坐标系中进行计算,具体是将经纬度平铺到一个假设的直角坐标系中,设横轴为经度,纵轴为纬度,两两相邻坐标点之间的走向和矢量运算都按照假设的直角坐标系进行,因此本发明的矢量运算可以看作是在同一直角坐标系下进行的。
参阅图2和3,一种基于线程池的石油管线等间距线生成方法,包括以下步骤:
步骤1、对管线轴线的经纬度坐标数据进行预处理,既全局遍历删除相同的坐标数据,得到管线的经纬度坐标数据。
具体为,检查相邻坐标点是否相同,如果相同则只保留一个,其余均删除。
步骤2、创建包含最大200个线程的线程池。
为了提高计算效率,创建一个适当数量线程的线程池,任务提交到线程池后,线程池会根据当前池中线程的处理情况,自动分配空闲的线程给当前任务,很大程度上减少了线程的创建(线程的创建和销毁的开销是巨大的),采用这种线程复用的方式可极大的提高数据处理速度。
步骤3、对管线的经纬度坐标数据,由管线的起到到终点分为m个坐标数据组,每个坐标数据组中包括N个连续的经纬度坐标,最后一组坐标数据组根据实际个数分为一组,m个坐标数据组,并且相邻两个数据组的衔接点的两个经纬度数据相同。
具体为,以500个经纬度坐标数据为一组进行分割,并将分割后的N组数据装载线程池,第一数据组包括1.2.3…500,第二数据组包括499.500.502…999,第三数据组包括998.999.1000…1498,依次类推。
步骤4、在每个线程中计算相邻两个经纬度坐标组成的向量,然后计算相邻两个向量的角平分线向量。将得到的角平分线向量封装成一个数组。
向量的方向按照遍历顺序由第一个点指向第二个点,向量的大小是相邻两个经纬度坐标的实际距离。
步骤5、对每组坐标数据设置一个键值key,索引来标记该组数据在整个管线数据段中的位置,并创建一个全局map。
将每各坐标数据组得到的角平分线向量封装成一个角平分线向量数据组,根据键值key将角平分线向量数据组向量存入全局map对象中。
由于相邻两组坐标数据的衔接点重合,这样既可保证各个线程独立求得的相邻向量之间的角平分线向量,同时使所有的角平分线向量数据组组合形成管线完整的角平分线数据,而不会出现中间断开的情况。
步骤6、利用标准模板库map容器的排序功能,把收集到的若干份角平分线数据集按照步骤5中的键值key进行排序,从而获得到整个管线排序后的角平分线向量。
步骤7、将排序后的角平分线向量顺时针或者逆时针旋转90°,旋转点为角平分线对应夹角的交点,取旋转后每个角平分线向量的终点坐标值作为等间距线的坐标值,将等间距线的坐标值依次连接,得到由多个线段依次连接形成的管线的带有交叉点的等间距线。
步骤8、如图1所示,由于带有交叉点的等间距线中存在多个叉的地方,针对这种情况,需要消除交叉点,方法如下:
步骤8.1、设定每次遍历线段量,也就是每次遍历的范围,以等间距线的起始点为起点逆序对设定数量的线段逆序依次遍历。
其中,逆序为沿管线的终点至起点的顺序。
步骤8.2、当出现交叉点,则设定为交叉点即为转折点,并删除相交两条线段之间的线段和对应的经纬度坐标值,再次以该转折点为起点,再次遍历设定的线段量,重复该过程,直至遍历整个带有交叉点的等间距线。
步骤8.3、重复步骤8.2,直至带有交叉点的等间距线中的交叉点为0。
具体的,参阅图4,经过该第一次遍历后会查找到大部分交叉点,等间距线内的交叉点数量会急剧下降,但是还是会存在一些交叉点,因此,这里需要反复循环遍历,直到交叉点个数为0,将所有查找到的转折点和带有交叉点的等间距线的起始点和终点依次连接,从而得到石油管线的等间距线。
具体为,根据当前带有交叉点的等间距线的长短,设定每次遍历的线段为50条,线段自起点的编号分别为1.2.3.4…50。
以带有交叉点的等距离线的起始点为起点,每次遍历连续的50条线段,遍历时自第50条线段向第1条线段方法遍历,假设当第17条线段和第8线段出现交叉点,并删除第9到第16条线段的数据,设该交叉点为转折点,以转折点为起点,再次遍历50条线段,其线段编号为17.18.19.20…67,重复该过程直至遍历整个带有交叉点的等距离线。
优选的,根据当前带有交叉点的等间距线的长短,以带有交叉点的等间距线的起始点2/3位置处为第一次遍历的起点,每次遍历的线段数量为连续的50条线段,从检查点开始逆序往管线的起点方向遍历交叉点,当出现两个线段的交叉点,则设定该交叉点为转折点,以转折点为再次遍历的起点,再次遍历。
附图3为本发明管线等间距线的算法流程图,该基于线程池的石油管线等间距线生成方法,首先根据石油管线经纬度坐标数据进行了去除重复坐标处理,创建最大个数不超过200个线程的线城池,然后对管线数据按照一定数据量进行分割装载线程池,最后对于处理后的数据进行交叉点检测和修剪,本发明不仅能很好的计算出中线的等间距线坐标值,减轻人工修改的工作量,同时采用线程池有很好的并发计算和运行速度快的优势,能够进行大数据量处理。
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。
Claims (5)
1.一种基于线程池的石油管线等间距线生成方法,其特征在于,包括以下步骤:
步骤1、对管线的经纬度坐标数进行过滤,得到管线轴线的经纬度坐标数据;
步骤2、创建线程池,通过线程池计算相邻两个经纬度坐标组成的向量,然后根据相邻的两个向量计算对应的角平分线向量;
具体方法为,将管线的经纬度坐标数据由管线的起点到终点,分为多个坐标数据组,每个坐标数据组中包涵N个连续的经纬度坐标,线程池分组计算每个坐标数据组中的角平分线向量;
对每个坐标数据组设置一个键值key,并创建一个全局map,根据全局map的排序功能,把得到的多个组的角平分线数据按照键值key进行排序,得到整个管线排序后的角平分线向量;
步骤3、以角平分线对应夹角的交点为旋转点,将角平分线向量顺时针或者逆时针旋转90°,将旋转后每个角平分线向量的终点坐标依次连接,得到带有交叉点的等间距线;
步骤4、设定每次遍历的线段量,以带有交叉点的等间距线的起始点为起点,对设定数量的线段逆序依次遍历;
步骤5、当出现交叉点,则删除相交两条线段之间的线段,并设该交叉点为转折点,并以该转折点为起点,再次遍历设定数量的线段,重复该过程,直至遍历整个等间距线;
步骤6、重复步骤5,直至带有交叉点的等间距线中的交叉点为0,将所有的转折点依次连接,形成管线的最终的等间距线。
2.根据权利要求1所述的一种基于线程池的石油管线等间距线生成方法,其特征在于,步骤1中所述对管线的经纬度坐标数进行过滤的方法为,查找管线轴线经纬度坐标数据中相邻两个经纬度坐标是否相同,相同则保留一个。
3.根据权利要求1所述的一种基于线程池的石油管线等间距线生成方法,其特征在于,所述线程池的线程小于等于200。
4.根据权利要求1所述的一种基于线程池的石油管线等间距线生成方法,其特征在于,相邻两个坐标数据组衔接点的两个经纬度坐标重合。
5.根据权利要求1所述的一种基于线程池的石油管线等间距线生成方法,其特征在于,步骤4中设定每次遍历的线段量为,带有交叉点的等间距线的2/3长度范围内的线段数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010066187.0A CN111259555B (zh) | 2020-01-20 | 2020-01-20 | 一种基于线程池的石油管线等间距线生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010066187.0A CN111259555B (zh) | 2020-01-20 | 2020-01-20 | 一种基于线程池的石油管线等间距线生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111259555A CN111259555A (zh) | 2020-06-09 |
CN111259555B true CN111259555B (zh) | 2022-03-29 |
Family
ID=70949069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010066187.0A Active CN111259555B (zh) | 2020-01-20 | 2020-01-20 | 一种基于线程池的石油管线等间距线生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111259555B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101034072A (zh) * | 2007-04-13 | 2007-09-12 | 中国第一重型机械集团大连加氢反应器制造有限公司 | 确定压力容器焊缝射线检测射线束透照方位的方法及装置 |
CN103105609A (zh) * | 2013-01-31 | 2013-05-15 | 北京师范大学 | 一种利用探地雷达数据构建树木根系三维图像的方法 |
CN104008252A (zh) * | 2014-06-12 | 2014-08-27 | 福建省电力勘测设计院 | 地下电缆管线平断面图自动生成方法 |
CN106095590A (zh) * | 2016-07-21 | 2016-11-09 | 联动优势科技有限公司 | 一种基于线程池的任务分配方法及装置 |
CN107169239A (zh) * | 2017-06-16 | 2017-09-15 | 中国水利水电科学研究院 | 基于角平分线的接触搜索方法 |
CN109027186A (zh) * | 2018-08-03 | 2018-12-18 | 武汉理工大学 | 转向器变速比齿条的离散化包络设计方法 |
CN110046456A (zh) * | 2019-04-26 | 2019-07-23 | 中国人民解放军陆军工程大学 | 一种群智能建筑仿真模型仿真运行实现方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103177034B (zh) * | 2011-12-23 | 2016-03-30 | 上海优途信息科技有限公司 | 一种路网中平行线的生成方法及装置 |
CN108427842B (zh) * | 2018-03-13 | 2022-02-22 | 厦门理工学院 | 基于插值点缓冲区的电力管网管线核查方法 |
CN108549579B (zh) * | 2018-03-20 | 2020-12-22 | 南京朝焱智能科技有限公司 | 基于gpu的多目标区域限制预警方法与装置 |
CN108648248B (zh) * | 2018-05-08 | 2022-05-06 | 绵阳市维博电子有限责任公司 | 一种缝纫花样等距生成方法及系统 |
CN109035364B (zh) * | 2018-07-23 | 2023-12-05 | 山东省地质矿产勘查开发局第五地质大队(山东省第五地质矿产勘查院) | 一种基于cad地形图快速绘制剖面图的方法 |
-
2020
- 2020-01-20 CN CN202010066187.0A patent/CN111259555B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101034072A (zh) * | 2007-04-13 | 2007-09-12 | 中国第一重型机械集团大连加氢反应器制造有限公司 | 确定压力容器焊缝射线检测射线束透照方位的方法及装置 |
CN103105609A (zh) * | 2013-01-31 | 2013-05-15 | 北京师范大学 | 一种利用探地雷达数据构建树木根系三维图像的方法 |
CN104008252A (zh) * | 2014-06-12 | 2014-08-27 | 福建省电力勘测设计院 | 地下电缆管线平断面图自动生成方法 |
CN106095590A (zh) * | 2016-07-21 | 2016-11-09 | 联动优势科技有限公司 | 一种基于线程池的任务分配方法及装置 |
CN107169239A (zh) * | 2017-06-16 | 2017-09-15 | 中国水利水电科学研究院 | 基于角平分线的接触搜索方法 |
CN109027186A (zh) * | 2018-08-03 | 2018-12-18 | 武汉理工大学 | 转向器变速比齿条的离散化包络设计方法 |
CN110046456A (zh) * | 2019-04-26 | 2019-07-23 | 中国人民解放军陆军工程大学 | 一种群智能建筑仿真模型仿真运行实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111259555A (zh) | 2020-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105043382B (zh) | 无人机巡航方法及装置 | |
CN105783810A (zh) | 基于无人机摄影技术的工程土方量测量方法 | |
CN103679804A (zh) | 一种地下管线数据三维模型自动构建系统及其构建方法 | |
CN113963120B (zh) | 基于gis系统的自动参数化三维管线建模方法和系统 | |
CN111251934B (zh) | 一种基于无人机无线充电的高压线路巡检调度方法 | |
CN107688908A (zh) | 研判施工安全风险的方法及装置 | |
CN107918953A (zh) | 基于三维空间的激光扫描电力线点云的提取方法及装置 | |
CN103426153B (zh) | 一种无人机遥感影像快速拼接方法 | |
Lemenkova | Topology, homogeneity and scale factors for object detection: application of eCognition software for urban mapping using multispectral satellite image | |
CN111259555B (zh) | 一种基于线程池的石油管线等间距线生成方法 | |
CN113360990A (zh) | 一种适用于展示工程进度的三维显示系统 | |
Wen et al. | Study on the key technology and application of UAV surveying and mapping data processing | |
Li | An algorithm for compressing digital contour data | |
Son et al. | Automatic 3D reconstruction of as-built pipeline based on curvature computations from laser-scanned data | |
CN110363844A (zh) | 一种煤矿巷道三维建模方法及系统 | |
CN113609691B (zh) | 一种面向智慧交通仿真的交叉路口建模处理方法 | |
Che et al. | Inspection of Electric Transmission Line Fault Based on UAV Lidar. | |
Herbert et al. | Sensor-based interior modeling | |
KR100980282B1 (ko) | 복원도시기법을 이용한 래스터 지도 자동 제작방법 및 그를 실행시키기 위한 프로그램을 기록한 컴퓨터 판독가능한 매체 | |
Aringer et al. | Calculation and Update of a 3d Building Model of Bavaria Using LIDAR, Image Matching and Catastre Information | |
Szombara et al. | Cartographic Generalization of the River Network Including Standards of the Objects Recognition | |
CN113254566B (zh) | 一种基于地理信息线路交叉跨越点的自动识别方法及系统 | |
CN108062794A (zh) | 一种建筑物模型的获取方法、装置、服务器及存储介质 | |
Melekhov et al. | ECLAIR: A High-Fidelity Aerial LiDAR Dataset for Semantic Segmentation | |
Joubran et al. | A METHOD FOR CONSTRUCTION OF 2D HULL FOR GENERALIZED CARTOGRAPHIC REPRSENTATION |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |