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

基于希尔伯特曲线编码的检测目标获取方法、介质及设备与流程

2023-02-06 17:50:02 来源:中国专利 TAG:


1.本发明涉及目标检测领域,特别是涉及一种基于希尔伯特曲线编码的检测目标获取方法、介质及设备。


背景技术:

2.随着技术点的发展,目标检测技术也更加的成熟,且被广泛应用至生活生产的多个领域中,如自动驾驶领域。现有的检测目标的获取方法为:利用卷积神经网络对对应场景中3d信息进行识别检测,在卷积神经网络中通过大量的卷积运算后,可以寻找到对应的检测目标。进而,实现对整个三维空间内的任何方向任何位置的物体进行无差别检测的目的。但是,由于其受限于算法本身的计算复杂度、硬件设备的运算能力以及实际应用的场景中图像信息的复杂程度。当输入卷积神经网络中的3d信息数据量极大时,该方法需要耗费大量的时间及资源进行计算,无法及时的输出检测结果。
3.而在机场机坪安全监视领域,由于航空器尺寸巨大,机坪场景较为复杂,且机坪上存在灯杆、廊桥固定端、廊桥移动端等众多干扰物。由此,使得在该场景中产生的3d信息数据量极大,现有的检测方法难以及时输出检测结果,实时性较低。


技术实现要素:

4.针对上述技术问题,本发明采用的技术方案为:
5.根据本发明的一个方面,提供了一种基于希尔伯特曲线编码的检测目标获取方法,本方法包括如下步骤:
6.获取目标区域的背景点云集,背景点云集包括背景中的固定目标的点云子集及至少一个可移动目标的位置点云集,位置点云集包括至少一个位置点云子集。位置点云子集为对应的可移动目标在预设移动路径中的任一位置时对应的点云集。
7.对背景点云集进行希尔伯特曲线空间编码处理,以得到背景点云编码集a=(a1,a2,

,ai,

,an),其中,ai为第i阶希尔伯特曲线对目标区域进行分割后,得到的背景点云对应的背景编码子集。i=1,2,

,n,n为背景编码子集的总数量。
8.获取目标区域的待测点云集,待测点云集中包括背景点云集及待识别目标点云集,待识别目标点云集包括至少一个待识别目标对应的目标点云子集。
9.对待测点云集进行希尔伯特曲线空间编码处理,以得到待测点云编码集b=(b1,b2,

,bi,

,bn)。其中,bi为第i阶希尔伯特曲线对目标区域进行分割后,得到的待测点云对应的实时编码子集。
10.根据预设精度值c1,确定目标空间误差值em。其中,em《c1,且c
1-em≤y1。y1为第一阈值。em为第m阶希尔伯特曲线对目标区域进行分割后,任一两个相邻的希尔伯特曲线上构造点之间的距离。m∈[1,n]。
[0011]
从a与b中分别确定出空间误差值为em的第一目标编码子集am与第二目标编码子集bm。
[0012]
将bm中的每一编码与am中的编码进行一一匹配。当bm中的任一编码与am中的所有编码均不相同时,编码匹配失败。
[0013]
将bm中所有匹配失败的编码放入同一集合中,以得到目标编码集。
[0014]
根据本发明的第二个方面,提供了一种非瞬时性计算机可读存储介质,非瞬时性计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述的一种基于希尔伯特曲线编码的检测目标获取方法。
[0015]
根据本发明的第三个方面,提供了一种电子设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的一种基于希尔伯特曲线编码的检测目标获取方法。
[0016]
本发明至少具有以下有益效果:
[0017]
本技术通过希尔伯特曲线的空间编码方法分别对机场环境中的目标区域的背景点云进行空间编码,以得到背景点云编码集;以及对目标区域的待测点云(也即目标区域的实时环境点云)进行空间编码,以得到待测点云编码集。本方法中使用的希尔伯特曲线的空间编码方法对目标区域内的点云进行编码。由于,使用希尔伯特曲线对空间进行编码时,每一阶希尔伯特曲线中的每一个编码均会有一个对应的正方体空间区域,且随着希尔伯特曲线阶数的增加,每一阶中的编码对应的正方体空间区域逐渐缩小。对应的,随着希尔伯特曲线阶数的增加,在目标区域内存在的正方体空间区域的数量会增加,由此,可以对目标区域进行更加细致的分割,进而提高编码与空间位置的对应精度。并且,由于每一个编码会对应一个正方体空间区域,所以一个编码可以代表该正方体空间区域内所有的点云。由此,通过该方法对点云进行编码可以大幅降低数据量。
[0018]
同时,本技术中通过设定y1,可以确定出空间误差值与预设精度值最接近的第一目标编码子集am与第二目标编码子集bm。由此,可以在保证计算精度的基础上,进一步降低希尔伯特曲线的阶数,也即可以进一步的减少编码的数量,进而进一步减少计算时使用的数据量。
[0019]
另外,本技术中通过将待测点云编码集与背景点云编码集中的编码进行一一匹配,并将所有匹配失败的编码放入同一集合中,以得到目标编码集。该目标编码集即为所要寻找的检测目标,由此完成了检测目标的获取工作。由于,对编码进行进行的匹配计算的算法更加简单,所以其计算效率更高,可以更加及时的输出计算结果。
[0020]
综上,由于本技术在进行计算时使用的数据量较少,且算法更加简单高效,由此可以大幅提高计算效率,可以更加及时的输出计算结果,以提高实时性。
附图说明
[0021]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022]
图1为本发明实施例提供的一种基于希尔伯特曲线编码的检测目标获取方法的流程图。
[0023]
图2为本发明实施例提供的多阶基于希尔伯特曲线分割目标方形平面的流程图。
[0024]
附图标记
[0025]
1、一阶构造点;2、二阶构造点;3、三阶构造点;4、目标方形平面。
具体实施方式
[0026]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0027]
作为本发明的一个实施例,提供了一种基于希尔伯特曲线编码的检测目标获取方法,如图1所示,本方法包括如下步骤:
[0028]
步骤s100:获取目标区域的背景点云集,背景点云集包括背景中的固定目标的点云子集及至少一个可移动目标的位置点云集,位置点云集包括至少一个位置点云子集;位置点云子集为对应的可移动目标在预设移动路径中的任一位置时对应的点云集;
[0029]
具体的,目标区域可以为机坪中的某一区域,在此目标区域的背景点云集中,包括的固定目标可以为固定建筑物、灯杆、廊桥固定端等。包括的可移动目标可以为廊桥移动端以及一些工作车辆。
[0030]
在进行背景点云采集时,可通过如下步骤进行实现
[0031]
步骤s101:确定多个目标时间点;该目标时间点为一天中的多个时间点,如从0:00开始每个30分钟,确定一个目标时间点。通过在一天内设置多个目标时间点来进行点云的采集,由此,可以获取到在不同的太阳光照条件下的背景点云数据。
[0032]
步骤s102:获取目标区域在每一目标时间点时的背景点云数据帧;背景点云数据帧为在目标时间点时,背景中的固定目标及可移动目标的位置点云集;优选的,通过激光雷达获取。更优选的,激光雷达使用视距超过450米、180线、180度视场角的激光雷达,该设备能够以10帧的速度采集机坪上的点云数据,每帧数据量超过100万个点,由此,可以保证获取的点云数据更加密集,进而可以获取到待识别物体的更多细节特征,以保证后期的计算精度。
[0033]
步骤s103:根据多个背景点云数据帧,生成目标区域的背景点云集。
[0034]
由于,激光雷达在进行背景点云的采集过程中,更容易受到环境光(主要为太阳光)的影响与干扰,进而使得激光雷达采集到的背景点云数据存在误差。所以,通过设置多个目标时间点来进行点云的采集,由此,可以获取到在不同的太阳光照条件下的背景点云数据。然后,再通过现有的点云去噪方法,将无用的点云数据去除,并将确实部分进行补全,由此,可以得到更加完成精准的背景点云集。
[0035]
步骤s200:对背景点云集进行希尔伯特曲线空间编码处理,以得到背景点云编码集a=(a1,a2,

,ai,

,an),其中,ai为第i阶希尔伯特曲线对目标区域进行分割后,得到的背景点云对应的背景编码子集;i=1,2,

,n,n为背景编码子集的总数量;
[0036]
希尔伯特曲线为一种可以将一个方形空间完全填充的曲线。具体的,每一阶希尔伯特曲线的生成方法为现有技术,在此不再赘述。多尺度的hilbert曲线的生成也是递归的,如n阶hilbert曲线的构造过程是先生成n-1阶的hilbert曲线,然后把4个n-1阶的hilbert曲线首尾相连后形成n阶hilbert曲线。
[0037]
以hilbert曲线对一个目标方形平面4进行分割为例进行说明,如图2所示,从左至右依次为一阶、二阶、三阶hilbert曲线的生成过程,。具体的,先将目标方形平面4通过水平中心线及竖直中心线划分为四个小正方形,然后再将四个小正方形的中心点作为一阶构造点1,并将4个一阶构造点1连接后,形成一阶hilbert曲线。然后再对一阶hilbert曲线中的4个一阶构造点1对应的正方形重复上述操作,以生成4个小正方形分别对应的二阶构造点2,同时生成每一个小正方形对应的一阶hilbert曲线,再将4个一阶hilbert曲线首尾连接后生成二阶hilbert曲线。重复上述操作后可生成三阶hilbert曲线对应的三阶构造点3,并生成对应的三阶hilbert曲线。
[0038]
同理,按照上述步骤可以生成与目标方形平面4相互垂直方向上的多阶hilbert曲线,将两个相互垂直方向上的hilbert曲线结合后即可对一个正方体的空间进行分割。
[0039]
由此,每一阶hilbert曲线上的构造点会对应一个方形空间,并且随着hilbert曲线阶数的升高,对应的方形空间会逐渐减小。在进行编码时,每一个构造点对应一个编码,也即每一个编码对应一个方形空间。
[0040]
每当对应的方形空间中存在背景点云时,将该方形空间对应的编码加入背景点云编码集中,由此来建立每一阶hilbert曲线对应的背景点云编码集。同理,可以以同样的方法可以得到每一阶hilbert曲线对应的待测点云编码集。
[0041]
另外,希尔伯特曲线空间编码的方法还可以被替换为八叉树的空间编码方法。尔伯特曲线空间编码的方法的聚拢性更好,所以其编码的精度对更高。
[0042]
步骤s300:获取目标区域的待测点云集,待测点云集中包括背景点云集及待识别目标点云集,待识别目标点云集包括至少一个待识别目标对应的目标点云子集;
[0043]
步骤s400:对待测点云集进行希尔伯特曲线空间编码处理,以得到待测点云编码集b=(b1,b2,

,bi,

,bn);其中,bi为第i阶希尔伯特曲线对目标区域进行分割后,得到的待测点云对应的实时编码子集;
[0044]
步骤s500:根据预设精度值c1,确定目标空间误差值em;其中,em《c1,且c
1-em≤y1;y1为第一阈值;em为第m阶希尔伯特曲线对目标区域进行分割后,任一两个相邻的希尔伯特曲线上构造点之间的距离;m∈[1,n]。
[0045]
本技术通过希尔伯特曲线的空间编码方法分别对机场环境中的目标区域的背景点云进行空间编码,以得到背景点云编码集;以及对目标区域的待测点云(也即目标区域的实时环境点云)进行空间编码,以得到待测点云编码集。本方法中使用的希尔伯特曲线的空间编码方法对目标区域内的点云进行编码。由于,使用希尔伯特曲线对空间进行编码时,每一阶希尔伯特曲线中的每一个编码均会有一个对应的正方体空间区域,且随着希尔伯特曲线阶数的增加,每一阶中的编码对应的正方体空间区域逐渐缩小。对应的,随着希尔伯特曲线阶数的增加,在目标区域内存在的正方体空间区域的数量会增加,由此,可以对目标区域进行更加细致的分割,进而提高编码与空间位置的对应精度。并且,由于每一个编码会对应一个正方体空间区域,所以一个编码可以代表该正方体空间区域内所有的点云。由此,通过该方法对点云进行编码可以大幅降低数据量。
[0046]
同时,本技术中通过设定y1,可以确定出空间误差值与预设精度值最接近的第一目标编码子集am与第二目标编码子集bm。由此,可以在保证计算精度的基础上,进一步降低希尔伯特曲线的阶数,也即可以进一步的减少编码的数量,进而进一步减少计算时使用的
数据量。
[0047]
步骤s600:从a与b中分别确定出空间误差值为em的第一目标编码子集am与第二目标编码子集bm;
[0048]
步骤s700:将bm中的每一编码与am中的编码进行一一匹配;当bm中的任一编码与am中的所有编码均不相同时,编码匹配失败;
[0049]
步骤s800:将bm中所有匹配失败的编码放入同一集合中,以得到目标编码集。
[0050]
另外,本技术中通过将待测点云编码集与背景点云编码集中的编码进行一一匹配,并将所有匹配失败的编码放入同一集合中,以得到目标编码集。该目标编码集即为所要寻找的检测目标,由此完成了检测目标的获取工作。由于,对编码进行进行的匹配计算的算法更加简单,所以其计算效率更高,可以更加及时的输出计算结果。
[0051]
综上,由于本技术在进行计算时使用的数据量较少,且算法更加简单高效,由此可以大幅提高计算效率,可以更加及时的输出计算结果,以提高实时性。
[0052]
作为本发明的另一个实施例,本方法应用于第一系统,第一系统包括第一缓存空间及第二缓冲空间,第一缓冲空间与第二缓冲空间相互独立设置;
[0053]
第一缓存空间用于对背景点云集进行希尔伯特曲线空间编码处理,并存储背景点云编码集a;
[0054]
第二缓存空间用于对实时获得的待测点云集进行希尔伯特曲线空间编码处理,并存储对应时刻的待测点云编码集b。
[0055]
本实施例中当本方法应用于第一系统时,需要在内存中开辟两个相互独立的缓存空间。该两个缓存空间分别对背景点云集及实时获得的待测点云集进行希尔伯特曲线空间编码处理,以获得并存储对应的编码集。进而便于后期进行对编码的匹配处理。由于,一个目标区域对应的背景点云集通常为固定不变的,所以在进行一次编码后,即可存储在第一缓存空间内,以供后期进行编码匹配时使用。由于在后期对编码进行匹配时,不需要重新对背景点云集进行重新编码计算,所以,可以将大量的计算资源分配给对待测点云集进行希尔伯特曲线空间编码处理的进程中,进而可以提高对待测点云集进行希尔伯特曲线空间编码处理的效率;进一步提高计算效率,可以更加及时的输出计算结果,以提高实时性。
[0056]
作为本发明的另一个实施例,步骤s500:根据预设精度值c1,确定目标空间误差值em,包括:
[0057]
步骤s501:获取每一阶希尔伯特曲线对目标区域进行分割后对应的空间误差值d1,d2,

,di,

,dn,其中,di为第i阶希尔伯特曲线对目标区域进行分割后对应的空间误差值;
[0058]
步骤s502:每当di≤c1时,确定di为初始目标空间误差值;
[0059]
步骤s503:从所有的初始目标空间误差值d
c1
,d
c2
,

,d
cv
,

,d
cu
中,确定目标空间误差值em,em满足如下条件:
[0060]em
=max(d
c1
,d
c2
,

,d
cv
,

,d
cu
);
[0061]
其中,max()为最大值函数;d
cv
为第v个初始目标空间误差值;u为初始目标空间误差值的总数量;v=1,2,

,u,u≤n。
[0062]
优选的,di满足如下条件:
[0063][0064]
其中,x
i1
、y
i1
及z
i1
为第i阶希尔伯特曲线对目标区域进行分割后对应的目标构造点的空间坐标的坐标值;x
i2
、y
i2
及z
i2
为第i阶希尔伯特曲线上与目标构造点相邻的任一点的空间坐标的坐标值;目标构造点为第i阶希尔伯特曲线上的任一构造点。
[0065]
将每一阶希尔伯特曲线上的任意两个相邻的构造点之间的距离值作为对应的空间误差值。并且从多个初始目标空间误差值中选最大的取空间误差值对应的希尔伯特曲线的阶数作为目标阶数。并从a与b中分别确定出目标阶数对应的第一目标编码子集am与第二目标编码子集bm。由此,可以在保证满足精度要求的前提下,进一步减少选用的am与bm中编码的数量,进而减少在进行计算时使用的数据量,由此可以大幅提高计算效率,可以更加及时的输出计算结果,以提高实时性。
[0066]
作为本发明的另一个实施例,步骤s501:获取每一阶希尔伯特曲线对目标区域进行分割后对应的空间误差值,包括:
[0067]
步骤s511:建立目标区域的希尔伯特分割阶数与对应的空间误差值的映射关系表;
[0068]
步骤s521:根据映射关系表及希尔伯特分割阶数,确定每一阶希尔伯特曲线对目标区域进行分割后对应的空间误差值。
[0069]
本实施例为通过映射关系表来确定每一阶希尔伯特曲线对目标区域进行分割后对应的空间误差值,映射关系表可以提前制作好存在至数据库中,由于,映射关系表无需及进行大量计算,所以可以更加快速的确定出每一阶希尔伯特曲线对目标区域进行分割后对应的空间误差值。
[0070]
作为本发明的另一个实施例,在步骤s800之后,方法还包括:
[0071]
步骤s810:获取目标编码集中每一编码对应的空间坐标e1,e2,

,eb,

,eq,其中,eb为目标编码集中的第b个编码对应的空间坐标;b=1,2,

,q,q为目标编码集中的编码的总数量;
[0072]
步骤s820:对e1,e2,

,eb,

,eq进行点云分割处理,以生成多个分形云团;每一分形云团由多个空间坐标对应的点构成;
[0073]
步骤s830:从多个分形云团中确定出目标分形云团;目标分形云团中的对应的空间坐标的数量大于第二阈值。
[0074]
根据每一编码对应的空间坐标可以在同一个坐标系中,生成目标编码集对应的点云图。通常在点云图中存在至少一团聚集较为密集的分形云团,通过现有的点云分割处理的方法可以将每一个分形云团分割出来。由于,不同体积大小的物体会对应不同的数量的分形云团。所以当某一分形云团中的点云数量与对应的目标物体的体积相差较大时,则可以确定其为噪声应该去除,由此,可以通过设置第二阈值来将多个分形云团中的噪声云团去除掉,保留下的即为目标分形云团。
[0075]
以飞机为例,由于在机坪上可能会出现不属于背景点云的车辆,如临时的救援车辆,所以确定出的多个分形云团中会存在救援车辆对应的分形云团。但是,由于救援车辆与飞机的体积相差较大,所以其分别对应的分形云团中包含的点云的数量也会相差较大,由此,可以通过设置第二阈值来去除救援车辆对应的分形云团。进而可以更加快速的去除噪
音,以更加准确的获得目标分形云团。
[0076]
作为本技术的一个实施例,提供了一种基于希尔伯特编码的目标属性确定方法,本方法包括如下步骤:
[0077]
步骤a100:在目标区域内生成k阶希尔伯特曲线,以得到目标区域的构造点信息集f=(f1,f2,

,fj,

,fk),fj=(f
j1
,f
j2
,

,f
ja
,

,f
je
)。其中,fj为构造第j阶希尔伯特曲线的构造点的空间坐标集合。k为目标区域内生成的希尔伯特曲线的总阶数。f
ja
为fj中的第a个构造点的空间坐标。e为fj中构造点的空间坐标的总数量。f=4*e。f为f
j 1
中构造点的空间坐标的总数量。
[0078]
步骤a200:为f中的每一个构造点配置编码,以生成目标区域的编码集g=(g1,g2,

,gj,

,gk),gj=(g
j1
,g
j2
,

,g
ja
,

,g
je
)。其中,gj为fj对应的编码集。g
ja
为f
ja
对应的编码。
[0079]
步骤a300:根据f和g,生成目标区域的空间坐标与编码的映射关系集h=(h1,h2,

,hj,

,hk)。其中,hj为第j阶希尔伯特曲线对应的构造点的空间坐标与编码的第一映射关系表。
[0080]
具体的,当在目标区域中生成每一阶hilbert曲线后,对该阶hilbert曲线上的所有的构造点进行编码,同时,获取该阶hilbert曲线上的所有的构造点空间位置信息,并将同一构造点空间位置信息及编码的对应关系,放入对应的第一映射关系表中。重复上述操作,直至建立该阶hilbert曲线上所有构造点的空间位置信息及编码的对应关系,此时,即可生成该阶希尔伯特曲线对应的第一映射关系表。构造点的空间位置信息可以为构造点的经度、纬度和海拔高度组成的空间位置信息。
[0081]
步骤a400:获取目标区域的目标编码集i,i包括目标区域中所有待测目标的点云对应的目标编码。目标编码由希尔伯特曲线对目标区域中的待测目标的点云进行编码得到。i∈f。
[0082]
i中包括的目标编码同样为使用上述的编码方式通过希尔伯特曲线对目标区域中的待测目标的点云进行编码得到的,由此,i∈f。
[0083]
在本步骤中,获取所述目标区域的目标编码集,可以按照步骤s100-步骤s800的方法进行获取。
[0084]
步骤a500:根据h中的第一映射关系表,确定i中每一目标编码对应的空间坐标。以生成目标区域的目标空间坐标集j。
[0085]
步骤a600:根据j确定待测目标的属性。
[0086]
具体的,可以根据j中由空间坐标构成的多个坐标集团的形状,判断该坐标集团对应的待测目标的属性。属性可以根据具体的使用场景中可能存在的待测物的属性进行确定。以使用场景为对机坪上的物体进行检测为例进行说明,该场景的中的待测目标的属性可以为大型客机、小型客机及车辆等。
[0087]
本技术中目标编码集为通过希尔伯特曲线对目标区域中的待测目标的点云进行编码得到。由于,使用希尔伯特曲线对空间进行编码时,每一阶希尔伯特曲线中的每一个编码均会有一个对应的正方体空间区域,且随着希尔伯特曲线阶数的增加,每一阶中的编码对应的正方体空间区域逐渐缩小。对应的,随着希尔伯特曲线阶数的增加,在目标区域内存在的正方体空间区域的数量会增加,由此,可以对目标区域进行更加细致的分割,进而提高
编码与空间位置的对应精度。并且,由于每一个编码会对应一个正方体空间区域,所以一个编码可以代表该正方体空间区域内所有的点云。由此,通过该方法对点云进行编码可以大幅降低数据量。由此可以大幅提高计算效率,可以更加及时的输出计算结果,以提高实时性。
[0088]
同时,现有技术中通过逆运算的方式来确定某一编码对应的位置坐标,但是由于在希尔伯特曲线对空间进行编码的过程中,每一个正方体空间区域对应一个编码,所以通过逆运算得到的位置坐标为该正方体空间区域中的任意位置的坐标,有很大的可能性与点云的实际位置坐标不相同,由此存在一定的误差。相对于现有技术而言,本技术中建立目标区域的空间坐标与编码的映射关系集。由此,可以直接根据映射关系集查找到每一编码对应的空间坐标。由于空间坐标为点云的实际坐标,所以,通过编码及映射关系集得到的空间坐标,即为点云的实际位置坐标,而并非为正方体空间区域中的其他位置的坐标。由此,提高了每一个编码对应的位置坐标的精确性,同时,由于不需要经过逆运算这一计算过程,所以通过映射关系集来得到编码对应的空间坐标的速度更快,效率更高,可以更加及时的输出计算结果。
[0089]
作为本技术另一种可能的实施例,在步骤a500之后,本方法还包括:
[0090]
步骤a510:根据j中的每一空间坐标在目标坐标系中确定对应位置的点,以生成j对应的点云图。
[0091]
步骤a520:对点云图进行点云分割处理,以生成多个分形云团。每一分形云团由多个空间坐标对应的点构成。
[0092]
步骤a530:从多个分形云团中确定出目标分形云团。目标分形云团中的对应的空间坐标的数量大于第二阈值。
[0093]
根据每一目标编码对应的空间坐标可以在同一个坐标系中,生成目标空间坐标集j对应的点云图。通常在点云图中存在至少一团聚集较为密集的分形云团,通过现有的点云分割处理的方法可以将每一个分形云团分割出来。由于,不同体积大小的物体会对应不同的数量的分形云团。所以当某一分形云团中的点云数量与对应的目标物体的体积相差较大时,则可以确定其为噪声应该去除,由此,可以通过设置第二阈值来快速将多个分形云团中的噪声云团去除掉,保留下的即为目标分形云团。
[0094]
以飞机为例,由于在机坪上可能会出现不属于背景点云的车辆,如临时的救援车辆,所以确定出的多个分形云团中会存在救援车辆对应的分形云团。但是,由于救援车辆与飞机的体积相差较大,所以其分别对应的分形云团中包含的点云的数量也会相差较大,由此,可以通过设置第二阈值来去除救援车辆对应的分形云团。进而可以更加快速的去除噪音,以更加准确的获得目标分形云团。
[0095]
作为本技术另一种可能的实施例,步骤a600:根据j确定待测目标的属性,包括:
[0096]
步骤a601:建立分形云团中空间坐标的总数与个属性标签之间的第二映射关系表。
[0097]
步骤a602:根据第二映射关系表确定每一目标分形云团对应的属性标签。
[0098]
步骤a603:根据目标分形云团对应的属性标签,确定目标分形云团对应的待测目标的属性。
[0099]
由于,分形云团中空间坐标的总数通常与待测目标之间的体积大小成正比,所以
可以通过分形云团中空间坐标的总数作为特征值,对待测目标的属性进行判断。由于,在机坪上飞机与其他物体之间的体积相差较大,所以,对应的分形云团中空间坐标的总数也相差较大,区别较为明显。所以当飞机为目标待测物时,可以更加容易准确的确定出飞机对应的坐标的总数的范围。进而可以提高确定目标分形云团对应的待测目标的属性的准确度。
[0100]
根据本发明的一个可能的实施例,提供了一种基于希尔伯特编码的目标聚类方法,本方法包括如下步骤:
[0101]
步骤b100:获取目标区域内感兴趣目标对应的点云编码集m=(m
g1
,m
g2
,

,m
gh
,

,m
gz
)。其中,m
gh
为构成感兴趣目标的第h个激光点的目标点云编码。m中的每一个目标点云编码均为g阶希尔伯特曲线对目标区域内感兴趣目标进行编码后得到的点云编码。h=1,2,

,z,z为m中点云编码的总数量。感兴趣目标包括多个子目标。
[0102]
本步骤中获取目标区域内感兴趣目标对应的点云编码集,可以按照步骤s100-步骤s800的方法进行获取。
[0103]
步骤b200:获取m中的每一目标点云编码对应的赋标编码,以得到m对应的赋标编码集n=(n
g-11
,n
g-12
,

,n
g-1h
,

,n
g-1z
)。其中,n
g-1h
为m
gh
对应的赋标编码。每一赋标编码为对应的目标点云编码的g-1阶希尔伯特编码。
[0104]
步骤b300:根据n及m,生成感兴趣目标对应的多个赋标子集o1,o2,

,om,

,oy,om=(o
m1
,o
m2
)。其中,om为感兴趣目标对应的第m个赋标子集。y为感兴趣目标对应的赋标子集的总数量。m=1,2,

,y,y≤z。o
m1
为om对应的赋标编码。o
m2
为om对应的点云编码数组。o
m2
=(m
gm1
,m
gm2
,

,m
gmp
,

,m
gmf(m)
)。m
gmp
为o
m2
中的第p个目标点云编码。p=1,2,

,f(m),f(m)为o
m2
中目标点云编码的总数量。f(m)≤z。o
m2
中每一目标点云编码对应的赋标编码均为o
m1

[0105]
通过n及m,生成感兴趣目标对应的多个赋标子集。再根据每一赋标子集对应的赋标编码,生成感兴趣目标对应的多个空间聚集子集。由此,在进行后续的聚类处理时,均是在赋标编码的基础上进行处理。同时由于赋标编码为对应的目标点云编码的g-1阶希尔伯特编码,所以可以进一步的减少聚类处理时的数据量,进一步的提高计算效率。
[0106]
步骤b400:根据每一赋标子集对应的赋标编码,生成感兴趣目标对应的多个空间聚集子集q1,q2,

,qq,

,q
x
。其中,qq为感兴趣目标对应的第q个空间聚集子集。x为感兴趣目标对应的空间聚集子集的总数量。q=1,2,

,x,x≤y。qq=(q
q1
,q
q2
,

,q
qr
,

,q
qf(q)
)且q
q1
《q
q2


《q
qr


《q
qf(q)
。q
qr
为qq中第r个赋标编码。r=1,2,

,f(q),f(q)≤y。f(q)为qq中赋标编码的总数量。q
qf(q)
满足如下条件:q
qf(q)-q
q1
≤r。其中,r为预设距离半径。优选的,r=5。
[0107]
本实施里中的附标编码为十进制编码,以q
q1
=50,r=5为例,对应的空间聚集子集中包括的赋标编码的数值范围为50-55。
[0108]
具体的,步骤b400包括如下步骤:
[0109]
步骤b401:多次对中剩余的赋标子集对应的赋标编码进行第二匹配处理,以生成多个空间聚集子集。
[0110]
第二匹配处理包括:
[0111]
步骤b402:选取当前剩余的赋标子集中最小的赋标编码作为目标赋标编码t。
[0112]
步骤b403:建立对应的空间聚集子集,将目标赋标编码存入空间聚集子集中。
[0113]
步骤b404:将目标赋标编码与剩余的每一赋标子集对应的赋标编码进行匹配。
[0114]
步骤b405:每当剩余的任一赋标编码与目标赋标编码满足第一条件时,将赋标编码存入空间聚集子集中。
[0115]
第一条件为:|t
t-t|≤r。其中,t
t
为当前剩余的赋标子集中的任意赋标编码。
[0116]
步骤b406:将加入至空间聚集子集中的赋标编码从当前剩余的赋标子集对应的赋标编码中删除,以更新剩余的赋标子集对应的赋标编码。
[0117]
多次重复步骤b402-步骤b406可以将多个赋标子集进行快速聚类。在本实施例中,由于任意两个希尔伯特编码之间的差值大小,可以反映这两个编码对应的点在空间上的距离远近。所以可以利用上述编码的数值邻近性,快速判断赋标子集对应的g-1阶希尔伯特编码是否空间相近。也即将符合q
qf(q)-q
q1
≤r的多个赋标编码放置到同一空间聚集子集中。由于,在机坪上每两个飞机之前的距离会大于目标点云中的断裂带的宽度,所以可以通过控制r的大小,不仅可以将不同的飞机对应的点云进行分割,而且还可以避免将同一个飞机对应的点云从断裂位置分开而分别聚类成不同的目标,由此,可以提高最终得到的聚类结果精度。
[0118]
步骤b500:获取每一空间聚集子集对应的空间聚集编码集s1,s2,

,sq,

,s
x
。其中,sq为qq对应的空间聚集编码集。sq=(s
q1
,s
q2
,

,s
qr
,

,s
qf(q)
)。s
qr
为q
qr
对应的空间聚集编码。每一空间聚集编码为对应的目标点云编码的g-2阶希尔伯特编码。
[0119]
步骤b600:对每一空间聚集编码集进行数据清洗处理,以获得每一子目标对应的目标点云编码集。
[0120]
步骤b700:根据每一目标点云编码集中目标点云编码的数量,确定每一目标点云编码集对应的子目标的属性。
[0121]
数据清洗处理包括:
[0122]
步骤b601:获取空间聚集编码集中每一种空间聚集编码的编码总数。
[0123]
步骤b601可以通过下述步骤实现:
[0124]
步骤b6011:获取当前空间聚集编码集中第一个空间聚集编码作为目标空间聚集编码;
[0125]
步骤b6012:将目标空间聚集编码对应的编码总数记为0;
[0126]
步骤b6013:将目标空间聚集编码与当前空间聚集编码集中每一个无标记的空间聚集编码进行匹配;
[0127]
步骤b6014:每匹配到一个相同的空间聚集编码后,对目标空间聚集编码对应的编码总数加1,并为对应的空间聚集编码添加标记;
[0128]
步骤b6015:重复执行步骤b6011-步骤b6014,以获取到空间聚集编码集中每一种空间聚集编码的编码总数。
[0129]
步骤b602:每当编码总数小于清洗阈值时,从空间聚集编码集中去除编码总数对应的空间聚集编码。以得到空间聚集编码集对应的初始目标点云编码集。
[0130]
步骤b603:将初始目标点云编码集中的每一空间聚集编码对应的赋标子集中的目标点云编码加入对应的目标点云编码集中,以生成对应的子目标的目标点云编码集。
[0131]
本步骤中,通过q
qf(q)-q
q1
≤r的条件筛选出来的空间聚集子集中,除了子目标对应的目标点云数据外,还会存在一些噪音点云数据。而该噪音点云通常分布在远离目标点云的位置处,也即q
qf(q)-q
q1
=r的点云。由此,噪音点云数据对应的空间聚集编码通常也与目
标点云数据对应的空间聚集编码并不相同。同时,目标点云的分布相对于噪音点云具有更高的聚集性。所以会存在多个目标点云的赋标编码对应相同的空间聚集编码。而由于噪音点云的分布较为离散,任一两个噪音点云之间的空间距离较大,所以不同噪音点云之间对应的空间聚集编码也基本不相同。由此,可以通过数据清洗处理,快速除去空间聚集子集中的噪音点云数据。进而使得每一个子目标对应的目标点云编码的数量更加准确,进而进一步提高通过目标点云编码的数量最终确定的聚类结果的准确性。
[0132]
本技术使用希尔伯特编码对感兴趣目标进行编码,并通过对目标点云编码的g-1阶及g-2阶希尔伯特编码进行处理来获得聚类结果。由于一个希尔波特编码可以代表对应的一个正方体空间区域内所有的点云。由此,通过该方法对点云进行编码可以大幅降低数据量。由此可以大幅提高计算效率,可以更加及时的输出计算结果,以提高实时性。
[0133]
同时,利用希尔伯特编码的数值邻近性,通过判断赋标子集对应的g-1阶希尔伯特编码是否临近,来确定多个的赋标子集中的目标点云编码对应的点云是否空间相近。也即将符合q
qf(q)-q
q1
≤r的多个赋标编码放置到同一空间聚集子集中。所以可以通过控制r的大小,不仅可以将不同的飞机对应的点云进行分割,而且还可以避免将同一个飞机对应的点云从断裂位置分开而分别聚类成不同的目标,由此,可以提高最终得到的聚类结果精度。
[0134]
作为本发明一种可能的实施例,步骤b300:根据n及m,生成感兴趣目标对应的多个赋标子集,包括:
[0135]
步骤b301:多次对n中剩余的赋标编码进行第一匹配处理,以生成多个赋标子集。
[0136]
第一匹配处理包括:
[0137]
步骤b302:选取当前n中最小的赋标编码作为目标赋标编码。
[0138]
步骤b303:建立对应的赋标子集,将目标赋标编码作为赋标子集的赋标编码,将目标赋标编码在m中对应的目标点云编码存入赋标子集的点云编码数组中。
[0139]
步骤b304:将目标赋标编码与n中剩余的每一赋标编码进行匹配。
[0140]
步骤b305:每当剩余的任一赋标编码与目标赋标编码匹配成功时,将赋标编码在m中对应的目标点云编码存入赋标子集的点云编码数组中。
[0141]
步骤b306:将当前n中与目标赋标编码相同的所有赋标编码删除,以更新n中剩余的赋标编码。
[0142]
多次重复步骤b302-步骤b306可以将n中相同的赋标编码存放在同一个赋标子集中。由于赋标编码为对应的目标点云编码的g-1阶希尔伯特编码。若多个目标点云编码对应同一个g-1阶希尔伯特编码,则可以知道上述的多个目标点云编码聚集在同一个空间区域中,也即多个目标点云编码对应的点云属于同一个子目标的点云,由此,本市实施例可以快速完成对目标区域中的多个子目标的点云的初步聚类。
[0143]
作为本发明一种可能的实施例,步骤b500:获取每一空间聚集子集对应的空间聚集编码集,包括:
[0144]
步骤b501:对每一空间聚集子集进行第三匹配处理,以生成对应的空间聚集编码集。
[0145]
第三匹配处理包括:
[0146]
步骤b502:获取空间聚集子集中每一赋标编码对应的二进制编码。
[0147]
步骤b503:将每一赋标编码对应的二进制编码的前w-2位编码作为每一对应的赋
标编码的父级编码。w为每一二进制编码的总位数。
[0148]
希尔伯特曲线为一种可以将一个方形空间完全填充的曲线。具体的,每一阶希尔伯特曲线的生成方法为现有技术,在此不再赘述。多尺度的hilbert曲线的生成也是递归的,如g阶hilbert曲线的构造过程是先生成g-1阶的hilbert曲线,然后把4个g-1阶的hilbert曲线首尾相连后形成g阶hilbert曲线。
[0149]
对应的多阶希尔伯特编码也同样是通过递归形成的。如一个g-2阶的希尔伯特编码为000010,则其对应的4个g-1阶的希尔伯特编码为00001000、00001001、00001010和00001011。同理,其中1个g-1阶的希尔伯特编码00001000对应的4个g阶的希尔伯特编码为0000100000、0000100001、0000100010和0000100011。其中,g-2阶的希尔伯特编码000010为其对应的4个g-1阶的希尔伯特编码的父级编码。
[0150]
步骤b504:将空间聚集子集中的第一个父级编码与剩余的每一父级编码进行匹配。
[0151]
步骤b505:当任一剩余的父级编码与第一个父级编码匹配失败时,将剩余的父级编码对应的赋标编码从空间聚集子集中删除。
[0152]
步骤b506:匹配完成后将空间聚集子集中剩余的所有赋标编码加入对应的空间聚集编码集中。
[0153]
由于本实施例中的父级编码的确定方式更加简单快速,所以可以更加快速的对每一空间聚集子集进行第三匹配处理,以生成对应的空间聚集编码集。
[0154]
作为本发明一种可能的实施例,步骤b700:根据每一目标点云编码集中目标点云编码的数量,确定每一目标点云编码集对应的子目标的属性,包括:
[0155]
步骤b701:将目标点云编码数量大于第二阈值的目标点云编码集作为待识别目标编码集。
[0156]
步骤b702:根据点云编码数量与子目标属性的映射关系,确定每一待识别目标编码集对应的子目标的属性。
[0157]
由于,不同体积大小的物体会对应不同的数量的点云,也即对应不同的数量的目标点云编码。所以当某一分形云团中的点云数量与对应的目标物体的体积相差较大时,则可以确定其为噪声应该去除,由此,可以通过设置第二阈值来快速将多个分形云团中的噪声点云去除掉,保留下的即为目标分形云团。
[0158]
以飞机为例,由于在机坪上可能会出现不属于背景点云的车辆,如临时的救援车辆,所以确定出的多个分形云团中会存在救援车辆对应的分形云团。但是,由于救援车辆与飞机的体积相差较大,所以其分别对应的分形云团中包含的点云的数量也会相差较大,由此,可以通过设置第二阈值来去除救援车辆对应的分形云团。进而可以更加快速的去除噪音,以更加准确的获得目标分形云团。
[0159]
本发明的实施例还提供了一种非瞬时性计算机可读存储介质,该存储介质可设置于电子设备之中以保存用于实现方法实施例中一种方法相关的至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现上述实施例提供的方法。
[0160]
本发明的实施例还提供了一种电子设备,包括处理器和前述的非瞬时性计算机可读存储介质。
[0161]
本发明的实施例还提供一种计算机程序产品,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使该电子设备执行本说明书上述描述的根据本发明各种示例性实施方式的方法中的步骤。
[0162]
虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本发明的范围和精神。本发明开的范围由所附权利要求来限定。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献