CN107679127A - 基于地理位置的点云信息并行提取方法及其系统 - Google Patents
基于地理位置的点云信息并行提取方法及其系统 Download PDFInfo
- Publication number
- CN107679127A CN107679127A CN201710860187.6A CN201710860187A CN107679127A CN 107679127 A CN107679127 A CN 107679127A CN 201710860187 A CN201710860187 A CN 201710860187A CN 107679127 A CN107679127 A CN 107679127A
- Authority
- CN
- China
- Prior art keywords
- data
- geographical position
- point cloud
- hadoop
- extraction method
- 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.)
- Pending
Links
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/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于地理位置的点云信息并行提取方法及其系统,它解决了现有技术中对海量点云数据处理效率不够高等问题。包括以下步骤:S1:通过基于地理位置的数据划分模块对Hadoop HDFS分布式文件系统中的点云数据进行数据划分处理得到基于地理位置划分的子区域数据文件;S2:将每个子区域数据文件传入一个Hadoop集群的计算节点进行信息抽取;S3:通过通信模块分发不同编程语言的代码到Hadoop集群的计算节点用于信息提取。本发明具有以下优点:能够提高数据处理效率,并且实现了多种程序语言对Hadoop集群数据的访问等。
Description
技术领域
本发明涉及地理空间数据处理以及大数据处理技术,尤其涉及一种基于地理位置的点云信息并行提取方法及其系统。
背景技术
激光雷达技术可以快速获取高密集、高精度的激光点云数据,通过后期处理点云数据,能够建立精度为厘米级的三维立体模型。这种精细化技术已经应用于军事、民用各个层次,例如,无人驾驶、虚拟现实、建筑工程等。然而,由于这种技术采集的数据量巨大(通常为TB级),如何有效存储和管理这些海量数据、基于海量数据的快速处理及三维立体模型的建模,基于海量空间数据的实时检索还存在技术瓶颈,成为激光雷达技术广泛应用的一种障碍。
为了解决上述技术问题,人们进行了长期的探索,例如中国专利公开了一种基于摆动激光雷达的可变视野三维重建装置[申请号:CN201610444260.7],包括激光雷达摆动机构、机构运动控制模块和三维点云重建模块,其中:单线激光雷达为三维点云数据采集设备,激光雷达中心固定机构承受激光雷达重量并固定激光雷达中心,激光雷达摆动控制机构实现激光雷达视野范围的调节并带动其全向摆动,三者组成激光雷达摆动机构;机构运动控制模块控制激光雷达摆动机构的运动,并对激光雷达位姿进行实时测量;三维点云重建模块对多帧激光雷达测量数据进行拼接,重建空间三维点云。
上述方案能够通过对三维环境的测量与重建,根据需求对视野范围和点云分布进行调节,以实现对不同位置空间信息的重点测量,具有精度高、可靠性强、适应性好特点。但是仍然存在部分不足,例如,基于这些海量数据的快速处理及三维立体模型的建模还处于技术瓶颈期。
此外,Hadoop是一种在互联网行业广泛使用的大数据架构,Hadoop非常适合存储和处理海量数据,具有高扩展、可伸缩性,HBase数据库提供了对Hadoop文件的实时检索能力,借助Hadoop能够解决前述对海量数据的实时检索过程中存在的技术问题。但是,虽然Hadoop在互联网行业已经广泛应用,但是Hadoop技术在地理信息系统行业的成功应用还不多,特别是在激光雷达领域,Hadoop处理激光雷达数据的主要困难在于:1.Hadoop典型应用为对文本信息的处理,对地理信息数据的处理应用还没有实现无缝集成;2.行业内三维建模算法很多是通过c++、java以及Matlab编程语言实现。特别是Matlab因为包含很多成熟的图像处理、机器学习等数据建模和处理算法在本领域中被广泛使用。Hadoop Streaming虽然实现了Python、C++、Shell等不同编程语言对Hadoop集群数据的访问,但是无法实现Matlab对集群数据的访问。
发明内容
本发明的目的是针对上述问题,提供一种方法简单,能够实现基于地理位置的数据分割和并行处理的基于地理位置的点云信息并行提取方法;
本发明的另一目的是针对上述技术问题,提供一种基于地理位置的点云信息并行提取方法的基于地理位置的点云信息并行提取系统。
为达到上述目的,本发明采用了下列技术方案:
本发明基于地理位置的点云信息并行提取方法,包括以下步骤:
S1:通过基于地理位置的数据划分模块对Hadoop HDFS分布式文件系统中的点云数据进行数据划分处理得到基于地理位置划分的子区域数据文件;
S2:将每个子区域数据文件传入一个Hadoop集群的计算节点进行信息抽取;
S3:通过通信模块分发不同编程语言的代码到Hadoop集群的计算节点用于信息提取。
通过上述技术方案,实现了基于地理位置的数据分割和并行处理,使Hadoop能够处理激光雷达收集到的海量点云数据,提高数据处理效果。
在上述的基于地理位置的点云信息并行提取方法中,在步骤S1中,所述的数据划分模块为基于Map Reduce的数据划分模块,且获得基于地理位置划分的子区域数据文件的方法包括:
S1.1:根据划分请求计算请求区域和对应的子区域;
S1.2:根据点云数据文件名中包含的地理位置顶点坐标判断该区域是否和查询区域相交,若相交则选为候选文件,否则过滤该文件;
S1.3:使用Hadoop缺省的文本数据分片机制,把候选文件按行拆分为若干数据片,每个数据片传入一个Map进行分析并输出分析结果(Key,Value),其中,
Key:为所在子区域的多边形定义;
Value:为点数据信息;
S1.4:使用Reduce把具有相同Key的点进行合并,以将在一个子区域的所有点合并到一个文件中得到子区域数据文件。
在上述的基于地理位置的点云信息并行提取方法中,在步骤S2中,每个子区域数据文件作为一个处理单元在Hadoop集群的一个计算节点单独处理,且多个子区域在不同的计算节点进行并行处理。
在上述的基于地理位置的点云信息并行提取方法中,每个计算节点的处理方法包括以Matlab和C++实现的信息提取算法,提取的信息包括地理位置信息。
在上述的基于地理位置的点云信息并行提取方法中,在步骤S3中,不同编程语言包括Python编程语言、C++编程语言、Shel l编程语言、java编程语言和Matlab编程语言中的任意一种或多种语言的组合。
在上述的基于地理位置的点云信息并行提取方法中,不同编程语言之间的进程通过采用二进制流数据格式的Hadoop
Streaming进行通信。
在上述的基于地理位置的点云信息并行提取方法中,Hadoop Streaming接收的数据保存于数据节点的本地目录中。
在上述的基于地理位置的点云信息并行提取方法中,在步骤S3中,处理完成的数据通过数据上传接口传回HDFS分布式文件系统。
在上述的基于地理位置的点云信息并行提取方法中,所述的Map Reduce还对Hadoop HDFS分布式文件系统中的点云数据进行任务调度和数据管理操作。
一种采用基于地理位置的点云信息并行提取方法的基于地理位置的点云信息并行提取系统。
本发明基于地理位置的点云信息并行提取方法及其系统相较于现有技术具有以下优点:1、通过基于Map Reduce的数据划分模块在Hadoop集群上实现对点云数据进行并行划分,从而缩短运行时间;2、划分后的多个子区域数据文件在不同的计算节点进行并行处理,提高处理效率;3、实现多种程序语言对Hadoop集群数据的访问。
附图说明
图1是本发明方法流程图;
图2是本发明获得基于地理位置划分的子区域数据文件的方法流程图;
图3是本发明并行提取框架结构示意图。
具体实施方式
以下采用本发明的优选实施例并结合附图,对本发明的技术方案作进一步的描述,但本发明并不限于这些实施例。
如图1至图3所示,本发明基于地理位置的点云信息并行提取方法,包括以下步骤:
S1:将从激光雷达收集到的点云数据写入Hadoop HDFS分布式文件系统中,通过Map Reduce对Hadoop HDFS分布式文件系统中的点云数据进行数据划分处理得到基于地理位置划分的子区域数据文件;
其中,获得基于地理位置划分的子区域数据文件方法包括:
S1.1:获取包括需要划分的区域和划分后子区域大小的划分请求,并根据划分请求计算请求区域和请求区域对应的子区域;划分请求中需要划分的区域以区域多边形顶点坐标的形式给出,划分请求和划分大小可以为:需要划分的区域:POLYGON((3975006949500,398000 6949500,398000 6950000,397500 6950000,397500 6949500)),划分后子区域的大小500平方米,POLYGON:多边形,是一个计算机用语;
S1.2:根据点云数据文件名中包含的地理位置顶点坐标判断该区域是否和查询区域相交,若相交则选为候选文件,否则过滤该文件;
S1.3:使用Hadoop缺省的文本数据分片机制,把候选文件按行拆分为若干数据片,每个数据片传入一个Map,由Map对相应的数据片进行判断,如果数据片中对应的点在查询区域内,则进一步判断该点属于哪个子区域,对在查询区域内的点以(Key,Value)的输出格式进行输出,其中,
Key:为所在子区域的多边形定义,比如,POLYGON((397500 6949500,3980006949500,398000 6950000,397500 6950000,397500 6949500));
Value:为点数据信息;
所属技术领域人员应当知道,Hadoop为一个分布式文件系统,Hadoop的框架通常具有以下两个设计:HDFS和MapReduce,其中,HDFS为海量的数据提供了存储,MapReduce为海量的数据提供了计算,而且,HDFS用于在Hadoop集群中存储大量的文件,能提供高吞吐量的数据访问,非常适合大规模数据集上的应用,MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算,其中,Map:映射,Reduce:归约,MapReduce在本实施例中主要担任文件切分、任务调度和数据管理等功能。
其中,Hadoop集群同时有多个不同的Data Node(数据节点),在存储的过程中每份点云数据文件写入Hadoop集群中的多个不同的数据节点(DataNode),且每个数据节点对应有至少一个物理服务器,使不同的应用可以并行访问一份数据,且数据冗余可以保证数据的安全性。
S1.4:使用Reduce把具有相同Key的点进行合并,以将在一个子区域的所有点合并到一个文件中,该文件包含了子区域所有点的数据信息,得到子区域数据文件。
S2:将每个子区域数据文件传入一个Hadoop集群的计算节点进行信息抽取;
在步骤S2中,每个子区域数据文件作为一个处理单元在Hadoop集群的一个计算节点单独处理,且多个子区域数据文件在不同的计算节点进行并行处理,每个计算节点的处理方法包括以Matlab和C++实现的信息提取算法,提取的信息包括有地理位置信息。
S3:通过通信模块分发不同编程语言的代码到Hadoop集群的计算节点用于信息提取。
进一步地,不同编程语言包括Python编程语言、C++编程语言、Shell编程语言、java编程语言和Matlab编程语言中的任意一种或多种语言的组合,且不同编程语言之间的进程通过采用二进制流数据格式的Hadoop Streaming进行通信,上述机制保证数据使用的就近原则,减少了网络传输。
这里的每个数据节点可以同时运行多个Mapper(映射器),整个系统同时运行Mapper的个数取决于数据节点的个数,以及每个数据节点能同时运行Mapper的个数(由数据节点总体资源量、Mapper占用的CPU、内存资源决定),对于一个Mapper的运行过程包括:a、一个Hadoop Streaming数据流接收模块用于不同编程语言之间的进程通信,使系统可以处理不受限制的数据格式,比如H5格式或TXT格式的数据,便于整个系统的扩展,该模块没有采用Hadoop Streaming默认的Text数据格式,而是二进制流数据格式,这样做的好处是Mapper可以处理不受限制的数据格式,比如H5格式或TXT格式的数据,使整个系统的扩展不受限制;b、接收的数据保存在Mapper所在数据节点的本地目录;c、由通信模块分发Matlab、C++程序或其他程序到数据节点用于处理接收到的数据,解决了现有技术无法实现Matlab对集群数据的访问的技术问题;d、处理完成的数据通过HDFS提供的数据上传接口传回HDFS文件系统。
进一步地,本实施例还公开了一种采用基于地理位置的点云信息并行提取方法的基于地理位置的点云信息并行提取系统。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
尽管本文较多地使用了子区域、计算节点、数据节点等术语,但并不排除使用其它术语的可能性。使用这些术语仅仅是为了更方便地描述和解释本发明的本质;把它们解释成任何一种附加的限制都是与本发明精神相违背的。
Claims (10)
1.一种基于地理位置的点云信息并行提取方法,其特征在于,包括以下步骤:
S1:通过基于地理位置的数据划分模块对Hadoop HDFS分布式文件系统中的点云数据进行数据划分处理得到基于地理位置划分的子区域数据文件;
S2:将每个子区域数据文件传入一个Hadoop集群的计算节点进行信息抽取;
S3:通过通信模块分发不同编程语言的代码到Hadoop集群的计算节点用于信息提取。
2.根据权利要求1所述的基于地理位置的点云信息并行提取方法,其特征在于,在步骤S1中,所述的数据划分模块为基于Map Reduce的数据划分模块,且获得基于地理位置划分的子区域数据文件方法包括:
S1.1:根据划分请求计算请求区域和对应的子区域;
S1.2:根据点云数据文件名中包含的地理位置顶点坐标判断该区域是否和查询区域相交,若相交则选为候选文件,否则过滤该文件;
S1.3:使用Hadoop缺省的文本数据分片机制,把候选文件按行拆分为若干数据片,每个数据片传入一个Map进行分析并输出分析结果(Key,Value),其中,
Key:为所在子区域的多边形定义;
Value:为点数据信息;
S1.4:使用Reduce把具有相同Key的点进行合并,以将在一个子区域的所有点合并到一个文件中得到子区域数据文件。
3.根据权利要求1所述的基于地理位置的点云信息并行提取方法,其特征在于,在步骤S2中,每个子区域的数据文件作为一个处理单元在Hadoop集群的一个计算节点单独处理,且多个子区域在不同的计算节点进行并行处理。
4.根据权利要求3所述的基于地理位置的点云信息并行提取方法,其特征在于,每个计算节点的处理方法包括以Matlab和C++实现的信息提取算法,提取的信息包括地理位置信息。
5.根据权利要求1所述的基于地理位置的点云信息并行提取方法,其特征在于,在步骤S3中,不同编程语言包括Python编程语言、C++编程语言、Shell编程语言、java编程语言和Matlab编程语言中的任意一种或多种语言的组合。
6.根据权利要求5所述的基于地理位置的点云信息并行提取方法,其特征在于,不同编程语言之间的进程通过采用二进制流数据格式的Hadoop Streaming进行通信。
7.根据权利要求6所述的基于地理位置的点云信息并行提取方法,其特征在于,HadoopStreaming接收的数据保存于数据节点的本地目录中。
8.根据权利要求1所述的基于地理位置的点云信息并行提取方法,其特征在于,在步骤S3中,处理完成的数据通过数据上传接口传回HDFS分布式文件系统。
9.根据权利要求1所述的基于地理位置的点云信息并行提取方法,其特征在于,所述的Map Reduce还对Hadoop HDFS分布式文件系统中的点云数据进行任务调度和数据管理操作。
10.一种基于权利要求1-9任意一项所述的基于地理位置的点云信息并行提取方法的基于地理位置的点云信息并行提取系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710860187.6A CN107679127A (zh) | 2017-09-21 | 2017-09-21 | 基于地理位置的点云信息并行提取方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710860187.6A CN107679127A (zh) | 2017-09-21 | 2017-09-21 | 基于地理位置的点云信息并行提取方法及其系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107679127A true CN107679127A (zh) | 2018-02-09 |
Family
ID=61136824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710860187.6A Pending CN107679127A (zh) | 2017-09-21 | 2017-09-21 | 基于地理位置的点云信息并行提取方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107679127A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111338804A (zh) * | 2020-05-19 | 2020-06-26 | 北京数字绿土科技有限公司 | 激光雷达点云数据的解算方法、装置及多线程处理系统 |
CN111782348A (zh) * | 2019-04-04 | 2020-10-16 | 北京沃东天骏信息技术有限公司 | 应用程序的处理方法、装置、系统和计算机可读存储介质 |
CN112365399A (zh) * | 2020-10-09 | 2021-02-12 | 北京星闪世图科技有限公司 | 基于深度学习的风机叶片图像全景拼接方法和系统 |
CN117056088A (zh) * | 2023-10-11 | 2023-11-14 | 武汉大学 | 一种基于MapReduce的多模态测图数据分布式并行计算方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567391A (zh) * | 2010-12-20 | 2012-07-11 | 中国移动通信集团广东有限公司 | 一种分类预测混合模型的建立方法及装置 |
CN103458032A (zh) * | 2013-09-03 | 2013-12-18 | 武汉大学 | 一种空间数据访问规律动态统计及信息压缩的方法及系统 |
CN106600570A (zh) * | 2016-12-07 | 2017-04-26 | 西南科技大学 | 一种基于云计算的海量点云滤波方法 |
-
2017
- 2017-09-21 CN CN201710860187.6A patent/CN107679127A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567391A (zh) * | 2010-12-20 | 2012-07-11 | 中国移动通信集团广东有限公司 | 一种分类预测混合模型的建立方法及装置 |
CN103458032A (zh) * | 2013-09-03 | 2013-12-18 | 武汉大学 | 一种空间数据访问规律动态统计及信息压缩的方法及系统 |
CN106600570A (zh) * | 2016-12-07 | 2017-04-26 | 西南科技大学 | 一种基于云计算的海量点云滤波方法 |
Non-Patent Citations (1)
Title |
---|
KALPA GUNARATNA ET AL: ""A Study in Hadoop Streaming with Matlab for NMR Data Processing"", 《2010 IEEE SECOND INTERNATIONAL CONFERENCE ON CLOUD COMPUTING TECHNOLOGY AND SCIENCE》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782348A (zh) * | 2019-04-04 | 2020-10-16 | 北京沃东天骏信息技术有限公司 | 应用程序的处理方法、装置、系统和计算机可读存储介质 |
CN111338804A (zh) * | 2020-05-19 | 2020-06-26 | 北京数字绿土科技有限公司 | 激光雷达点云数据的解算方法、装置及多线程处理系统 |
CN112365399A (zh) * | 2020-10-09 | 2021-02-12 | 北京星闪世图科技有限公司 | 基于深度学习的风机叶片图像全景拼接方法和系统 |
CN112365399B (zh) * | 2020-10-09 | 2024-05-03 | 江苏星闪世图科技(集团)有限公司 | 基于深度学习的风机叶片图像全景拼接方法和系统 |
CN117056088A (zh) * | 2023-10-11 | 2023-11-14 | 武汉大学 | 一种基于MapReduce的多模态测图数据分布式并行计算方法及系统 |
CN117056088B (zh) * | 2023-10-11 | 2024-01-19 | 武汉大学 | 一种基于MapReduce的多模态测图数据分布式并行计算方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107515952A (zh) | 点云数据存储、并行计算和实时检索的方法及其系统 | |
Li et al. | Big data in smart cities | |
CN104199986B (zh) | 基于hbase和geohash的矢量数据空间索引方法 | |
CN104657436B (zh) | 基于MapReduce的静态瓦片金字塔并行构建方法 | |
Neelakandan et al. | Large scale optimization to minimize network traffic using MapReduce in big data applications | |
CN107679127A (zh) | 基于地理位置的点云信息并行提取方法及其系统 | |
CN105893628A (zh) | 一种数据实时收集系统及方法 | |
Hongchao et al. | Distributed data organization and parallel data retrieval methods for huge laser scanner point clouds | |
CN111586091A (zh) | 一种实现算力组配的边缘计算网关系统 | |
CN107194533B (zh) | 一种配电网全信息模型构建方法及系统 | |
CN115129795A (zh) | 一种基于地球空间网格的数据空时存储方法 | |
CN113934686B (zh) | 面向海量机载激光点云的分布式多级空间索引方法 | |
CN105071994B (zh) | 一种海量数据监控系统 | |
CN104820708A (zh) | 一种基于云计算平台的大数据聚类方法和装置 | |
CN105117497A (zh) | 基于Spark云网络的海洋大数据主从索引系统及方法 | |
CN104809244A (zh) | 一种大数据环境下的数据挖掘方法和装置 | |
CN103593433A (zh) | 一种面向海量时序数据的图数据处理方法及系统 | |
Sarwat | Interactive and scalable exploration of big spatial data--a data management perspective | |
CN107590260A (zh) | 点云数据实时检索方法及其系统 | |
Bannister et al. | Windows into geometric events: Data structures for time-windowed querying of temporal point sets | |
Liang et al. | A Survey on Spatio-temporal Big Data Analytics Ecosystem: Resource Management, Processing Platform, and Applications | |
CN107679126A (zh) | 激光三维点云数据存储和管理方法及其系统 | |
CN102902739B (zh) | 云计算环境下面向不确定数据源的工作流视图构造方法 | |
CN112905571A (zh) | 一种列车轨道交通传感器数据管理方法及装置 | |
CN107908696A (zh) | 一种并行高效的基于网格与密度的多维空间数据聚类算法griden |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180209 |