一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

面向海量机载激光点云的分布式多级空间索引方法与流程

2022-02-20 12:41:54 来源:中国专利 TAG:

技术特征:
1.一种面向海量机载激光点云的分布式多级空间索引方法,其特征在于:所述面向海量机载激光点云的分布式多级空间索引方法包括以下步骤:1)基于虚拟格网对激光点云空间进行划分,形成激光点云分区;2)基于四叉树和三维r树构建激光点云分区局部索引;3)将各个激光点云分区局部索引的根节点,作为全局空间索引的叶子节点,利用str树建立全局空间索引。2.根据权利要求1所述的面向海量机载激光点云的分布式多级空间索引方法,其特征在于:所述步骤1)的具体实现方式是:根据激光点云密度和单条点云数据占用的存储空间大小,确定虚拟格网大小,根据激光点云覆盖范围和虚拟格网大小,计算各激光点云分区的覆盖范围,利用激光点云的平面坐标,实现对应激光点云分区的快速划分。3.根据权利要求2所述的面向海量机载激光点云的分布式多级空间索引方法,其特征在于:所述步骤1)是采用hadoop hdfs实现的,所述步骤1)的具体实现方式是:a)利用公式(1)计算虚拟格网边长l:其中:b为hdfs文件块默认大小,在hadoop2.x版本中,所述b大小是128m;α为索引所占空间系数,按经验取值0.2;r为单条激光所占的字节数,激光点主要信息为x、y、z坐标、强度intensity、时间gpstime以及类别;d为机载激光点云密度,一般不超过50点/m2;b)扩展spark的空间数据处理功能,实现pointrdd,能够对point类型的空间数据提供弹性计算能力,利用spark中的textfile读取存储到hadoop hdfs的激光点云文件,并生成激光点云的pointrdd;c)利用spark中的aggregate算子,对激光点云pointrdd中每个点的最小外接矩形mbr进行聚合运算,最终确定整个工程激光点云的mbr,记为mbr

;d)根据mbr

和虚拟格网边长l,确定每个虚拟格网的坐标范围{x
min
,x
max
,y
min
,y
max
},去除无激光点的空格网,得到最终的虚拟格网列表grids;e)利用虚拟格网列表grids构建partitioner并输入给激光点云pointrdd,对激光点云进行分区,得到新分区的激光点云pointrdd,记为pointcloudrdd。4.根据权利要求1或2或3所述的面向海量机载激光点云的分布式多级空间索引方法,其特征在于:所述步骤2)的具体实现方式是:采用四叉树对激光点云分区中的激光点进行二维剖分,对剖分得到的四叉树格网先按hilbert空间填充曲线进行一维排序,然后对排序后的四叉树格网构建r树,完成激光点云分区的局部索引构建;将激光点云分区的激光点数据和局部索引序列化到单个hdfs文件中进行保存。5.根据权利要求4所述的面向海量机载激光点云的分布式多级空间索引方法,其特征在于:所述步骤2)中采用四叉树对激光点云分区中的激光点进行二维剖分的具体实现方式是:a)设定四叉树节点允许包含的最大激光点数目t,将整个分区的激光点云数据作为四
叉树根节点压入四叉树节点缓冲区队列;b)获取四叉树节点缓冲区队列的首节点,统计该节点的激光点数目,设为m,如果m<t,则将该节点压入r树叶节点缓冲区队列;如果m≥t,进入步骤c);c)按四叉树方式分裂该节点,计算该节点的四个孩子节点对应的mbr,并将该节点内的激光点划分到四个孩子节点中,依次将四个孩子节点从四叉树节点缓冲区队列尾部逐个插入,执行完成后,继续执行步骤b);d)待四叉树节点缓冲队列为空时,表明分区激光点云按四叉树划分完毕。6.根据权利要求5所述的面向海量机载激光点云的分布式多级空间索引方法,其特征在于:所述步骤2)中对排序后的四叉树格网构建r树的具体实现方式是:a)设置r树的阶数和叶节点点云数目的下界值min,新建两个数组a和b;b)对r树叶节点缓冲区队列中的节点按照hilbert码进行一维排序,并按如下规则对其分组:激光点数量大于min的节点整体保存到数组a,激光点数量小于min的节点,将该节点中的激光点逐个保存到数组b;c)对数组a中的节点,批量构建r树索引;d)对数组b中的各个激光点,按自上而下的方式,逐点插入到步骤c)所构建的r树索引中,生成激光点云分区最终的r树索引。7.根据权利要求6所述的面向海量机载激光点云的分布式多级空间索引方法,其特征在于:所述步骤2)中所述将激光点云分区的激光点数据和局部索引序列化到单个hdfs文件中进行保存的具体实现方式是:利用spark的foreachpartition算子,将激光点云分区中的激光点数据和分区r树索引存储为单个hdfs文件;该文件包括用于存放分区r树索引结构信息的文件头以及各节点按照分区r树索引深度遍历顺序并存放在r树存储的各节点信息;所述文件头包括总点数、树高度、空间范围mbr、中心坐标以及索引大小;所述r树存储的各节点信息包括节点所在层号、节点对应的mbr、子节点数目以及各子节点地址。8.根据权利要求7所述的面向海量机载激光点云的分布式多级空间索引方法,其特征在于:所述步骤3)中利用str树建立全局空间索引的具体实现方式是:a)设置r树节点的子节点数值n,计算整个激光点云的mbr,根据长边所在坐标轴的方向,确定点云的大致走向,并将各激光点云分区的根节点为叶子节点构建str树全局索引;b)将步骤a)构建得到的str树全局索引,以单个hdfs文件的方式存储在hadoop集群中的名字节点namenode,整个激光点云在分布式存储环境hadoop hdfs中被组织为一个融合格网、四叉树和r树多种索引的多级r树结构。9.根据权利要求8所述的面向海量机载激光点云的分布式多级空间索引方法,其特征在于:所述步骤a)中构建str树全局索引的具体实现方式是:1)各激光点云分区的根节点为叶子节点,将同一列或同一行的所有激光点云分区组织为一个切片,作为上一层的一个节点;2)在x轴方向或y轴方向上,将步骤1)中生成的新一层的节点,每n个节点合为一组,形成上一层的一个节点,最后剩余的不足n个节点合并为一个节点;3)计算新的一层节点个数n
n
,如果n
n
≥n,则重复2)和3),否则退出。

技术总结
本发明属于激光扫描测量数据处理领域,涉及一种面向海量机载激光点云的分布式多级空间索引方法,该方法包括以下步骤:1)基于虚拟格网对激光点云空间进行划分,形成激光点云分区;2)基于四叉树和三维R树构建激光点云分区局部索引;3)将各个激光点云分区局部索引的根节点,作为全局空间索引的叶子节点,利用STR树建立全局空间索引。本发明提供了一种可以实现海量机载激光点云在集群节点上的分布式存储以及高效查询与调度的面向海量机载激光点云的分布式多级空间索引方法。的分布式多级空间索引方法。


技术研发人员:吴颖丹 吕辉 田德生 刘花璐 胡在铭 兰琰茜
受保护的技术使用者:湖北工业大学
技术研发日:2021.03.22
技术公布日:2022/1/13
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献