一种基于比特串行的点云数据近邻搜索优化方法技术

技术编号:39317369 阅读:5 留言:0更新日期:2023-11-12 15:59
一种基于比特串行的点云数据近邻搜索优化方法,针对搜索点集中的每个点采用比特串行的运算方式计算其相对于参考点集的近邻点,在两点间欧式距离计算过程中初始化临时最小欧式距离平方数以及临时近邻点的必要信息;基于比特串行方式按序计算一比特搜索点和参考点的欧式距离平方数;判断是否截止条件,若否,则继续处理下一比特数据,若计算至最后一位仍不满足截止条件,则根据欧氏距离平方数和临时最小欧式距离平方数的数值大小关系更新相关数据;最后,将近邻点加入到搜索结果集中,并进行下一个搜索点的近邻计算迭代过程。本发明专利技术使用加、减、移位简化欧式距离计算过程的乘法操作,并根据数值关系提前截止,提高点云数据近邻搜索的计算效率。索的计算效率。索的计算效率。

【技术实现步骤摘要】
一种基于比特串行的点云数据近邻搜索优化方法


[0001]本专利技术涉及点云数据近邻搜索的
,具体涉及一种基于比特串行的点云数据近邻搜索优化方法。

技术介绍

[0002]点云是表示物理对象或三维场景的点的集合。点云可以反映物体的空间特征,因此在机器人、自动驾驶、增强现实(AR)和虚拟现实(VR)等领域有着广泛应用。与图像处理领域类似,点云处理也有多种具体应用,如即时定位与地图构建(SLAM)、物体分类、语义分割以及目标检测等。
[0003]然而,典型的自动驾驶情景需要程序在有限时间内处理数万个点规模的点云,对点云处理的实时性要求很高。同时,随着技术的进步,需要处理的点云的规模也在不断增大。目前,最新一代传感器每秒生成高达480万个点。如此大规模的点云又进一步对点云处理的实时性、计算效率以及硬件能耗提出了更高要求。
[0004]大规模点云处理中,近邻搜索是必不可少的步骤。而目前点云近邻搜索往往采用基于KD树的近邻搜索方法,即先使用KD树把点云数据划分为不同的子空间,再根据搜索点与KD树当前节点的距离关系等遍历KD树的部分子空间。这种方法虽比传统的双重循环算法处理效率高,但点与点之间的欧式距离计算和比较过程采用比特并行方式执行,忽略了点云数据在比特数据层级的特性,存在进一步优化的空间。本专利技术提出一种基于比特串行的点云数据近邻搜索方法,可使用一系列的加、减、移位等简单运算过程简化欧式距离计算过程的乘法操作,并在运算过程根据数值关系提前截止,提高点云数据近邻搜索的计算效率。

技术实现思路
/>[0005]针对现有点云近邻搜索方法在未充分利用点云数据比特数据层次的特性问题,本专利技术提供一种基于比特串行的点云数据近邻搜索优化方法。
[0006]本专利技术解决技术问题所采用的技术方案为:
[0007]记算法的输入数据为搜索点集和参考点集,初始化近邻点集合为空集,点云的近邻搜索过程即为每一个搜索点集中的点在参考点集中查找距离最近的点,具体而言,每次从搜索点集中取出一个搜索点,并从参考点集中选出一部分或全部数据点作为该搜索点的近邻点参考点集合,初始化临时最小欧式距离平方数以及临时近邻点的必要信息,针对搜索集合内的每个点,使用比特串行的方式更新临时最小欧式距离平方数以及临时近邻点的必要信息。当遍历完近邻点参考集合中的所有点后,临时近邻点的必要信息即为所求,将其按搜索点处理顺序依次加入近邻点集。当遍历完搜索点集中的所有点后,近邻点集中第i个数据即为第i个搜索点所对应的最近邻点。
[0008]优先地,使用比特串行的方式更新临时最小欧式距离平方数以及临时近邻点的必要信息过程的方法包括:基于比特串行方式逐比特计算欧式距离平方数,判断是否满足截止条件,若满足条件,说明该点和搜索点间的欧式距离平方数大于临时最小欧式距离平方
数,否则,进行下一比特的距离计算,若计算至最后一位,仍不满足截止条件,则将当前计算的欧式距离平方数更新至临时最小欧式距离平方数并将当前搜索点的必要信息更新至临时近邻点。
[0009]进一步地,基于比特串行方式逐比特计算两点间欧式距离平方数的过程的方法包括:基于比特串行方式逐比特计算欧式距离平方数,判断是否满足截止条件,若满足条件,说明该点和搜索点间的欧式距离平方数大于临时最小欧式距离平方数,否则,进行下一比特的距离计算,若计算至最后一位,仍不满足截止条件,则将当前计算的欧式距离平方数更新至临时最小欧式距离平方数并将当前搜索点的必要信息更新至临时近邻点。
[0010]进一步地,基于比特串行方式逐比特计算两点间欧式距离平方数的过程,方法包括:对于计算至第i位比特数据的n维点,对每一维度的第i位数据基于比特串行方式计算距离平方数,再将n个维度的距离平方数求和。
[0011]进一步地,基于比特串行方式逐比特计算欧式距离平方数过程所涉及的数值数据类型,包括:支持相同数据类型的两点间计算欧式距离平方数,包括:有符号定点数、无符号定点数、有符号整数、无符号整数类型。数据的比特数量为m。
[0012]进一步地,基于比特串行方式逐比特计算欧式距离平方数时,截止条件的判断方法包括:记第k维度自高至低的前i位(包括第i位)比特的欧式距离平方数和辅助数分别为r
i,k
,s
i,k
,当前最小欧式距离平方数为d,记计算至第i位时的截止阈值若e>d,则满足截止条件,反之则不满足。
[0013]进一步地,每一维度采用基于比特串行方式计算距离平方数的方法包括:记自高向低的前i位(包括第i位)比特的欧式距离平方数和辅助数分别为r
i
,s
i
,两点间每一维的第i比特数值之差为t
i
,则s
i
=s
i
‑1+t
i
<<1,其中r0,s0为0。
[0014]进一步地,支持相同数据类型的两点间基于比特串行方式计算距离平方数的过程中自高向低的第i比特数值之差为t
i
,方法包括:记第i比特位数值分别为a,b,可知,a和b的取值范围为0或1。若数据类型为有符号定点数、有符号整数且i等于1时,w
i
=b

a,否则,w
i
=a

b;则t
i
=w
i
<<(m

i)。
附图说明
[0015]图1是本专利技术所提供的基于比特串行的点云数据近邻搜索优化方法的流程图。
[0016]图2是本专利技术一个实施例的第一个搜索点与前两个参考点进行搜索迭代的整体示意图。
[0017]图3是本专利技术一个实施例第1个搜索点第1次近邻搜索迭代的运行过程示意图。
[0018]图4是本专利技术一个实施例第1个搜索点第2次近邻搜索迭代过运行过程示意图。
具体实施方式
[0019]下面结合本申请实施例的附图,对本专利技术中的技术方案进行清楚、完整地描述。应当注意,所描述的实施例只是本申请一部分实施例,而不是全部的实施例,基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请的保护范围。
[0020]参照图1所示的流程图,本专利技术提供了一种基于比特串行的点云近邻搜索优化方法,包括:首先从输入获取搜索点集和参考点集;然后,判断搜索点集中是否还有尚未进行计算的点,若无则结束搜索过程,反之则从中取出一个未计算的搜索点,从参考点集中选出一部分或全部数据点作为该搜索点的参考点集,初始化临时最小欧式距离平方数以及临时近邻点的必要信息;如果尚未遍历该搜索点所对应参考点集中所有的参考点,则从中取出一个尚未遍历到的参考点,基于比特串行方式按序计算一比特搜索点和参考点的欧式距离平方数,每计算一位,判断一次截止条件的满足情况,若满足截止条件,则直接结束本参考点的计算;若不满足截止条件,则继续对下一位数据重复上述计算及截止条本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于比特串行计算方式的点云数据近邻搜索优化方法,其特征在于,包括以下步骤:记算法的输入数据为搜索点集和参考点集,初始化近邻点集合为空集,点云的近邻搜索过程包括为每一个搜索点集中的点在参考点集中查找距离最近的点;每次从搜索点集中取出一个搜索点,并从参考点集中选出一部分或全部数据点作为该搜索点的近邻点参考点集合,初始化临时最小欧式距离平方数以及临时近邻点的必要信息,针对搜索集合内的每个点,使用比特串行的方式更新临时最小欧式距离平方数以及临时近邻点的必要信息;当遍历完近邻点参考集合中的所有点后,临时近邻点的必要信息即为所求,将其按搜索点处理顺序依次加入近邻点集;当遍历完搜索点集中的所有点后,近邻点集中第i个数据即为第i个搜索点所对应的最近邻点,i为正整数。2.根据权利要求1所述的基于比特串行计算方式的点云数据近邻搜索优化方法,其特征在于,所述使用比特串行的方式更新临时最小欧式距离平方数以及临时近邻点的必要信息包括以下过程:基于比特串行方式逐比特计算欧式距离平方数,判断是否满足截止条件,若满足条件,说明该点和搜索点间的欧式距离平方数大于临时最小欧式距离平方数,否则,进行下一比特的距离计算,若计算至最后一位,仍不满足截止条件,则将当前计算的欧式距离平方数更新至临时最小欧式距离平方数并将当前搜索点的必要信息更新至临时近邻点。3.根据权利要求2所述的基于比特串行计算方式的点云数据近邻搜索优化方法,其特征在于,包括基于比特串行方式逐比特计算两点间欧式距离平方数的过程,对于计算至第i位比特数据的n维点,对每一维度的第i位数据基于比特串行方式计算距离平方数,再将n个维度的距离平方数求和,n为正整数。4.根据权利要求3所述的基于比特串行计算方式的点云数据近邻搜索优化方法,其特征在于,包括针对每一维度采用基于比特串行方式计算距离平方数,记自高向低的前i位比特的欧式距...

【专利技术属性】
技术研发人员:肖利民韩萌王良徐家乐张昊徐向荣张晨浩
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1