[发明专利]一种适用于高维散乱点云的索引查询方法在审
| 申请号: | 201410301833.1 | 申请日: | 2014-06-27 |
| 公开(公告)号: | CN104050283A | 公开(公告)日: | 2014-09-17 |
| 发明(设计)人: | 刘仁义;张丰;杜震洪;陈明;宣伟浩;郭绿奕 | 申请(专利权)人: | 浙江大学 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 张法高 |
| 地址: | 310027 浙*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 适用于 散乱 索引 查询 方法 | ||
技术领域
本发明涉及空间索引技术领域,尤其涉及一种适用于高维散乱点云的索引查询方法。
背景技术
空间索引是一种依据空间对象的位置、形状或空间对象之间的某种空间关系而组织、排列的数据结构,其中包含空间对象的标识、外接矩形以及指向空间对象实体的指针等概要信息。高维散乱点云数据具有数据量大、空间分辨率高等特点,在后续的数据处理中需要对其进行频繁地范围查询。为此有必要预先对其进行有效的组织和索引,以提高后续的查询效率。目前针对点云数据采用较多的索引有2n叉树索引、格网索引、R树索引等。2n叉树索引实现简单,适用于分布相对均匀的数据;格网索引查询效率较高,但其分辨率单一,通用性不高;R树索引具有较高的通用性,但其中的最小外包矩形有可能交叠,造成一定的数据冗余,且随着空间维度的扩展,其查询用时显著增加。
发明内容
本发明的目的是克服现有高维点云数据索引方法存在的不足,根据降维、并行处理的思想,提供一种适用于高维散乱点云的索引查询方法。
适用于高维散乱点云的索引查询方法包括如下步骤:
1)根据给定的高维散乱点云数据(含m个点,维度为n)构建点集P={p1,p2,...,pm},点集中任意一点pi的坐标为(ai1,ai2,...,ain),存于逻辑主节点;
2)一个逻辑主节点配套n个逻辑子节点(个数与点云维数相等),前者将点集P中每一个点p1,p2,...,pm的id及其第j(j=1,2,...,n)维坐标信息(a1j,a2j,...,amj)分别发送至编号为j的逻辑子节点,后者接收后根据各点第j维坐标的大小顺序建立B+树索引;
3)对于n维查询区域R=((s1,t1),(s2,t2),...,(sn,tn)),逻辑主节点将其在第j(j=1,2,...,n)维上的投影(sj,tj)分别发送至编号为j的逻辑子节点,后者接收后基于之前创建的B+树索引查找位于范围(sj,tj)之内的点,并将点的id返回给逻辑主节点;
4)逻辑主节点计算所有逻辑子节点返回的点id的交集,该交集即为高维散乱点云针对范围R的查询结果。
步骤2)、3)和4)所述的n个逻辑子节点在物理上可部署于数量少于n个的机器上,即一台机器可部署多个逻辑子节点程序。
步骤3)所述逻辑子节点查找位于范围(sj,tj)之内点的方法为:获取关键字sj在B+树索引中的位置,再顺着连接B+树叶子节点的双向链表向右扫描,直到关键字大于tj为止,扫描所及的叶子节点对应位于范围(sj,tj)之内的点。
步骤4)所述逻辑主节点计算n个逻辑子节点返回点id交集的方法为:获取返回点个数最少的逻辑子节点返回的点id集合K,对于其中的每一个点id,判断它是否也在其它逻辑子节点返回的点id集合中出现。只要有一个逻辑子节点返回的点id集合不包含这个点id,就将它从K中删除,继续判断K中下一个点id。K中每一个点id都经过如此判断之后,最终剩下的点id即为n个逻辑子节点返回点id的交集。
本发明与现有高维点云数据索引方法相比具有的有益效果:
将n维空间的范围查询转换为n个并行的一维空间范围查询,大幅提高了高维散乱点云的查询效率,有效解决了现有索引方法存在的分辨率单一、通用性不高、数据冗余等问题。
附图说明:
图1为本发明索引创建阶段的流程图;
图2为本发明范围查询阶段的流程图。
具体实施方式:
适用于高维散乱点云的索引查询方法包括如下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410301833.1/2.html,转载请声明来源钻瓜专利网。





