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

三维点云分割方法和装置、可移动平台与流程

2022-06-01 20:47:45 来源:中国专利 TAG:


1.本公开涉及计算机视觉技术领域,具体而言,涉及三维点云分割方法和装置、可移动平台。


背景技术:

2.可移动平台在行驶过程中,可以通过可移动平台上的路径规划(planning)模块来对可移动平台的行驶状态(例如,位姿和速度)进行决策规划。为了使planning模块能够完成决策规划,需要由可移动平台上的点云采集装置来采集周围环境的三维点云,并进行点云分割,以区分出三维点云中的地面和障碍物,并进一步从障碍物中区分出动态对象和静态对象。因此,点云分割是对可移动平台的行驶状态进行决策规划的重要环节。
3.传统的点云分割方式一般是基于局部特征或者可移动平台行驶路面的全局模型进行点云分割,这两种方式都对点云密度有一定要求,因此需要累积一段时间的三维点云,但是,在对动态物体进行点云分割时,上述两种点云分割方式都容易产生运动模糊问题,降低了点云分割的可靠性。


技术实现要素:

4.有鉴于此,本公开的实施例提出了三维点云分割方法和装置、可移动平台,以可靠地对动态物体的三维点云进行点云分割。
5.根据本公开实施例的第一方面,提供一种三维点云分割方法,用于对可移动平台采集到的三维点云进行点云分割,所述方法包括:基于可移动平台上的激光雷达采集三维点云时的扫描角度和扫描时刻,确定与所述三维点云中的三维点在物理空间中邻近的邻近三维点;获取所述三维点与所述三维点的邻近三维点所在的局部区域的法向量;基于所述法向量对所述三维点进行点云分割。
6.根据本公开实施例的第二方面,提供一种三维点云分割装置,包括处理器,所述三维点云分割装置用于对可移动平台采集到的三维点云进行点云分割,所述处理器用于执行以下步骤:基于可移动平台上的激光雷达采集三维点云时的扫描角度和扫描时刻,确定与所述三维点云中的三维点在物理空间中邻近的邻近三维点;获取所述三维点与所述三维点的邻近三维点所在的局部区域的法向量;基于所述法向量对所述三维点进行点云分割。
7.根据本公开实施例的第三方面,提供一种可移动平台,包括:壳体;点云采集装置,设于所述壳体上,用于采集三维点云;以及三维点云分割装置,设于所述壳体内,用于执行本公开任一实施例所述的方法。
8.根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开任一实施例所述的方法。
9.应用本公开实施例方案,基于激光雷达采集三维点云时的扫描角度和扫描时刻确定三维点在物理空间中邻近的邻近三维点,并基于三维点及其邻近三维点所在的局部区域的法向量进行点云分割,能够提取出来自激光雷达扫描产生的天然几何约束得到进行点云
分割的依据,在点云分割过程中利用了点云之间的几何特征,提高了点云分割的可靠性。
附图说明
10.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
11.图1是一些实施例的点云分割过程的示意图。
12.图2是一些实施例的可移动平台行驶过程中的决策规划过程的示意图。
13.图3是本公开实施例的点云分割方法的流程图。
14.图4是本公开实施例的点云排布方式的示意图。
15.图5a是本公开实施例的地面点的法向量的示意图。
16.图5b是本公开实施例的非地面点的法向量的示意图。
17.图6a是本公开实施例的雷达的扫描方式的示意图。
18.图6b是本公开实施例的应用场景的示意图。
19.图6c是图6b所示的应用场景下扫描得到的三维点云的示意图。
20.图7是本公开实施例的点云分割过程的总体流程图。
21.图8是本公开实施例的点云分割装置的示意图。
22.图9是本公开实施例的可移动平台的示意图。
具体实施方式
23.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
24.在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
25.应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
26.可移动平台在行驶过程中,可以通过可移动平台上的路径规划(planning)模块来对可移动平台的行驶状态进行决策规划。其中,点云分割是对可移动平台的行驶状态进行决策规划的重要环节。如图1所示,是一些实施例的点云分割过程的示意图。在步骤101中,可以由可移动平台上的点云采集装置采集三维点云,然后,在步骤102中,对于行驶在地面上的可移动平台(例如无人车),可以对采集到的三维点云进行地面分割,即将三维点云中
的三维点分割为地面点和非地面点。对于其他类型的可移动平台(例如可移动机器人),可以对采集到的三维点云进行分割,以将三维点云中的三维点分割为可移动平台行驶路面上的点和不在可移动平台行驶路面上的点。为了便于描述,下文以行驶路面为地面进行说明。在步骤103中,如果一个三维点为地面点,则执行步骤104,为该三维点添加地面点标签,否则执行步骤105,对该三维点进行动静态分割,即将该三维点分割为静止不动的静态点和发生运动的动态点。在步骤106中,如果一个三维点为静态点,则执行步骤107,为该三维点添加静态点标签,否则执行步骤108,为该三维点添加动态点标签,并在步骤109中输出带标签的三维点云至下游模块。其中,可以为三维点云中的全部或者部分三维点打标签。所述标签可以包括用于表征三维点是否为地面点的第一标签和用于表征三维点是否为静态点的第二标签中的至少一者,还可以包括用于表征三维点的其他信息的标签。
27.所述下游模块可以是可移动平台上的planning模块,例如电子控制单元(electronic control unit,ecu)、中央处理器(central processing unit,cpu)等。planning模块在接收到带标签的三维点云之后,可以基于三维点的标签对可移动平台的行驶状态进行决策规划。所述行驶状态可以包括可移动平台的位姿和速度中的至少一者。如图2所示,是一些实施例的决策规划过程的示意图。在步骤201和步骤202中,planning模块可以接收三维点云并读取三维点云中携带的标签。在步骤203中,可以基于标签确定三维点云中的三维点是否为可移动平台行驶路面(例如地面)上的点。以地面点为例,如果是,则执行步骤204,从地面点中识别出属于车道线的三维点,并根据车道线的方向确定可移动平台的姿态,以使可移动平台沿着车道线的方向行驶。如果是非地面点,则执行步骤205,判断该非地面点是否为静态点。如果是,则执行步骤206,根据静态点的方位确定可移动平台的位姿。例如,判断该静态点是否处于预先规划的行驶路径上,如果是,则重新规划路径,以避免可移动平台与静态点相撞。如果该非地面点为动态点,则执行步骤207,根据该静态点的方位和速度确定可移动平台的姿态和速度中的至少一者。例如,若该动态点处于可移动平台预先规划的行驶路径上,且该动态点的移动速度小于或等于可移动平台的移动速度,则控制可移动平台减速行驶,或者调整可移动平台的姿态,以使可移动平台绕过该动态点。又例如,可以控制可移动平台按照与动态点相同的速度行驶。
28.由此可知,点云分割是对可移动平台的行驶状态进行决策规划的重要环节,准确地进行点云分割有助于对可移动平台的行驶状态进行准确的决策规划。传统的三维点云分割方式一般有两种,一种是基于局部特征的分割方式,即,首先将一帧三维点云投影到二维的栅格地图或者三维的体素地图中,然后以地图中的一个或相邻几个栅格或体素为对象,提取绝对高度、相对高度、坐标方差、局部法向量、主成分向量等特征,基于提取的特征对该栅格内的三维点进行点云分割。另一种是基于全局模型的分割方式,即,利用随机采样(random sample consensus,ransac)方式选取备选点来对可移动平台的行驶路面进行多次全局路面拟合,找到最优解后,分析全局点与该地面模型的距离,将地面模型附近的点分割为地面点;远离模型的点分割为障碍物点。
29.然而,在对动态物体进行点云分割时,上述两种点云分割方式都容易产生运动模糊问题,降低了点云分割的可靠性。此外,上述两种点云分割方式还存在以下问题:基于局部特征的点云分割方式需要遍历三维点云来建立地图,时间开销和存储开销都比较大,且局部特征在点云噪声较大时可能会发生局部失效。基于全局模型的点云分割方式需要使用
复杂度较低的模型以确保不会被外点带偏,这样就不能很好地适应复杂的路面环境,且由于拟合误差存在,对矮小障碍物的分割准确度较低。
30.基于此,本公开提供一种三维点云分割方法,如图3所示,所述方法可包括:
31.步骤301:基于可移动平台上的激光雷达采集三维点云时的扫描角度和扫描时刻,确定与所述三维点云中的三维点在物理空间中邻近的邻近三维点;
32.步骤302:获取所述三维点与所述三维点的邻近三维点所在的局部区域的法向量;
33.步骤303:基于所述法向量对所述三维点进行点云分割。
34.本公开可以将激光雷达采集到的三维点云分割为可移动平台行驶路面上的三维点,以及可移动平台行驶路面以外的三维点。相比现有方法将激光雷达采集得到的一帧三维点云看成一整团无序点云,本公开基于激光雷达采集三维点云时的扫描角度和扫描时刻确定三维点在物理空间中邻近的邻近三维点,并基于三维点及其邻近三维点所在的局部区域的法向量进行点云分割,能够提取出来自激光雷达扫描产生的天然几何约束得到进行点云分割的依据,在点云分割过程中利用了点云之间的几何特征,提高了点云分割的可靠性,尤其是对于存在显著运动模糊的雷达尤其有效。此外,本公开无需进行平面假设,可以分割出比较复杂的路面;无需建立栅格地图或体素地图,也无需随机采样,非常轻量化,仅需遍历点云一次就可以得出分割结果,无需累积很长时间的点云,可以输出高频的分割结果。
35.在步骤301中,可以确定与所述三维点云中的三维点在物理空间中邻近的邻近三维点。一个三维点在物理空间中邻近的邻近三维点可以包括在物理空间中与所述三维点之间的距离小于预设距离阈值的一个或多个三维点。由于激光雷达在采集三维点云时的扫描角度是连续变化的,因此,可以基于激光雷达采集三维点云时的扫描角度和扫描时刻,来确定所述邻近三维点。例如,若激光雷达对三维点a与三维点b的扫描角度小于预设角度差,则认为三维点a为三维点b的邻近三维点。又例如,若激光雷达对三维点a与对三维点b的扫描时间的时间差小于预设时长,则认为三维点a为三维点b的邻近三维点。如果激光雷达对三维点a与三维点b的扫描角度大于或等于所述预设角度差,或者激光雷达对三维点a与对三维点b的扫描时间的时间差大于或等于所述预设时长,则认为三维点a不是三维点b的邻近三维点。
36.在一些实施例中,三维点云可以通过多种激光雷达采集得到。例如,所述三维点云可以由单线激光雷达采集得到。在这种情况下,所述三维点的邻近三维点包括所述单线激光雷达沿着第一方向移动时连续采集到的至少一个三维点,以及所述单线激光雷达沿着第二方向移动时连续采集到的至少一个三维点,所述第一方向不同于所述第二方向。可选地,所述第一方向与所述第二方向垂直。例如,所述第一方向可以是与可移动平台的行驶路面垂直的方向,所述第二方向可以是与所述第一方向以及所述可移动平台的行驶方向均垂直的方向。在可移动平台为在水平地面上行驶的车辆时,所述第一方向可以是竖直方向,所述第二方向可以是水平地面上与车辆行驶方向垂直的方向。在可移动平台为擦玻璃机器人时,所述第一方向可以是与玻璃平面垂直的方向(一般为水平方向),所述第二方向可以是玻璃平面上与机器人行驶方向垂直的方向。
37.又例如,所述三维点云可以由多线激光雷达采集得到。在这种情况下,所述三维点的邻近三维点包括所述多线激光雷达中相邻的至少两线激光连续多次扫描得到的三维点。再例如,所述三维点云由阵列激光雷达采集得到,所述三维点的邻近三维点包括所述阵列
激光雷达中的m
×
n的阵列块一次扫描得到的三维点,m和n均为大于1的整数。通过多线激光雷达或者阵列激光雷达采集三维点云,能够有效提高三维点云的采集效率。
38.下面结合图4,对由多线激光雷达采集得到三维点云中的情况进行举例说明。图中beam0到beam5表示多线激光雷达的不同线,scan0到scan5表示第0次到第5次扫描,图中每个黑色圆点表示扫描得到的一个三维点,第i行第j列的点表示第i线激光第j次扫描得到的三维点。此处以六线为例,在实际应用中,激光雷达的线数还可以是其他数量,本公开对此不做限制,各线可以同时扫描或者依次扫描。此外,扫描次数也不限于6次。这里基于激光雷达的不同线以及扫描次数是第几次这两个维度,将扫描得到的三维点排布成了二维阵列的形式。应当说明的是,这种排布仅仅是为了便于理解,并不表示本公开的方案中执行了将三维点云排布成二维阵列的操作,二维阵列中各个三维点的位置也不代表对应三维点在物理空间中的真实位置,但二维阵列中各个三维点的邻近位置关系与对应三维点在物理空间中的真实的邻近位置关系是相同的,所述邻近位置关系用于表示两个三维点是否为邻近三维点。例如,二维阵列中第1行第1列的三维点(称为点a)是第1行第2列的三维点(称为点b)的邻近三维点,则在物理空间中,点a也是点b的邻近三维点。由于相邻两线激光的扫描角度之差较小,且beam0到beam5的扫描角度依次递增或者依次递减,因此,相邻两线激光扫描得到的三维点是邻近三维点。同时,由于每一线激光的扫描角度都是连续变化的,因此,同一线激光相邻两次扫描得到的三维点也是邻近三维点。
39.以二维阵列中的三维点a为例,可以将三维点b1、b2、b3和b4确定为三维点a的邻近三维点。进一步地,还可以将三维点b5、b6、b7和b8确定为三维点a的邻近三维点。三维点a也可以看成是其本身的邻近三维点。在实际应用中,并不是每次扫描都有返回点,图中白色的圆点表示没有返回点的无效的三维点。在获取所述局部区域的法向量之前,可以将所述三维点云中连续的多个无效的邻近三维点直接标记为未知属性的点。对于多线激光雷达而言,可以将其相邻多线激光同一次扫描到的无效三维点确定为连续的多个无效的邻近三维点;对于阵列激光雷达而言,可以将其同一列或者同一行的连续多个激光源一次扫描到的无效三维点确定为连续的多个无效的邻近三维点。除此之外,还可以将不存在邻近三维点的孤立点标记为未知属性的点。连续的多个无效的邻近三维点与孤立点可以统称为不可用的三维点,通过将不可用的三维点标记为未知属性的点,从而后续在进行点云分割时无需对这些不可用的三维点进行点云分割。
40.在步骤302中,可以先获取所述三维点与所述三维点的邻近三维点所在的局部区域的三维法向量,如果未获取到所述三维法向量,则获取所述三维点与所述三维点的邻近三维点所在的局部区域的二维法向量。其中,所述三维法向量和二维法向量应当为显著的法向量。可以采用一个三维点的邻近三维点对该三维点进行主成分分析,得到该三维点的法向量。如果一个三维点的邻近三维点的数量足够,且该三维点与其邻近三维点不共线,则可以获取到显著的三维法向量。如果三维点的邻近三维点数量不足,或者在激光雷达进行往复扫描时,在扫描的边缘由于角速度变化减慢导致扫描到的多个三维点退化成共线的情况,则无法获取到显著的二维法向量。在采用多线激光雷达的情况下,可以获取同一线激光多次扫描得到的三维点,并确定所述多次扫描得到的三维点所在的局部区域的二维法向量。
41.在步骤303中,可以基于所述法向量对所述三维点进行点云分割。若获取到所述局
部区域的三维法向量,可以基于所述三维法向量对所述三维点进行点云分割。若未获取到所述局部区域的三维法向量,可以基于所述局部区域的二维法向量对所述三维点进行点云分割。
42.若所述局部区域的三维法向量与所述可移动平台行驶平面的法向量的夹角小于第一预设夹角,可以将所述三维点分割为所述可移动平台行驶平面上的点。若所述局部区域的三维法向量与所述可移动平台行驶平面的法向量的夹角大于第二预设夹角,可以将所述三维点分割为障碍物。若所述局部区域的三维法向量与所述可移动平台行驶平面的法向量的夹角大于或等于所述第一预设夹角,且小于或等于所述第二预设夹角,可以将所述三维点标记为未知属性的点。其中,所述第一预设夹角小于所述第二预设夹角。
43.若所述局部区域的二维法向量与所述可移动平台行驶平面的法向量的夹角小于第三预设夹角,可以将所述三维点分割为所述可移动平台行驶平面上的点。若所述局部区域的二维法向量与所述可移动平台行驶平面的法向量的夹角大于第四预设夹角,可以将所述三维点分割为障碍物。若所述局部区域的二维法向量与所述可移动平台行驶平面的法向量的夹角大于或等于所述第三预设夹角,且小于或等于所述第四预设夹角,可以将所述三维点标记为未知属性的点。其中,所述第三预设夹角小于所述第四预设夹角。
44.下面结合图5a和图5b对点云分割过程进行举例说明。为了便于描述,以可移动平台为行驶在地面上的车辆为例进行说明,其中,地面可以是平面,也可以是曲面。由于地面的角度变化一般是平滑的,因此,可以基于所述局部区域的法向量与所述地面的法向量之间的夹角对所述三维点进行点云分割。如果所述夹角较小,说明所述局部区域与地面可以近似看成两个平行的面,也就是说,所述局部区域上的三维点不会阻碍车辆行驶,从而可以将所述局部区域上的三维点分割为地面点。如图5a所示,三维点a所在的局部区域的法向量fa与地面法向量的夹角θ1以及三维点b所在的局部区域的法向量fb与地面法向量的夹角θ2都比较小,因此,可以将三维点a和三维点b均分割为地面点。
45.如果所述夹角较大,说明所述局部区域与地面可以近似看成两个相互垂直的面,也就是说,所述局部区域相对于地面来说是一个里面,该局部区域上的三维点会阻碍车辆行驶,从而可以将所述局部区域上的三维点分割为非地面点,也可以具体分割为障碍物。如图5b所示,三维点a所在的局部区域的法向量fa与地面法向量的夹角θ1、三维点b所在的局部区域的法向量fb与地面法向量的夹角θ2以及三维点c所在的局部区域的法向量fc与地面法向量的夹角θ3都比较小,因此,可以将三维点a、b、c均分割为非地面点。
46.在一些实施例中,所述第一预设夹角可以小于或等于35
°
,所述第二预设夹角可以大于或等于65
°
。例如,所述第一预设夹角为30
°
或者20
°
。又例如,所述第二预设夹角为60
°
或者75
°
。在一些实施例中,所述第三预设夹角可以小于或等于20
°
,所述第二预设夹角可以大于或等于70
°
。例如,所述第三预设夹角为15
°
或者10
°
。又例如,所述第二预设夹角为80
°
或者75
°
。可以根据实际需要灵活地设置各个角度阈值,此处不再赘述。
47.在一些实施例中,通过上述方式分割后的三维点云中可能包括多个分割失败的三维点,包括法向量不显著的三维点和不可用的三维点等。为了进一步对这些分割失败的三维点进行点云分割,可以获取多帧所述三维点云;基于多帧所述三维点云对所述可移动平台的行驶路面进行拟合,得到所述行驶路面的拟合模型;基于所述拟合模型对多帧所述三维点云中分割失败的三维点进行二次点云分割。所述路面拟合可以通过多项式拟合或者其
他拟合方式实现,本公开对此不做限制。
48.具体来说,可以获取所述可移动平台采集多帧所述三维点云中的每帧三维点云时的位姿信息;基于所述可移动平台采集所述每帧三维点云对应的位姿信息,将所述每帧三维点云变换到预设坐标系下;基于变换后的多帧所述三维点云中位于所述可移动平台行驶平面上的点,对所述可移动平台的行驶路面进行拟合。可选地,所述预设坐标系可以是可移动平台的当前坐标系。
49.拟合出路面模型之后,可以基于所述分割失败的三维点与所述拟合模型的距离,对所述分割失败的三维点进行二次点云分割。例如,若所述分割失败的三维点与所述拟合模型的距离大于预设距离阈值,将所述分割失败的三维点分割为所述可移动平台行驶平面上的点。又例如,若所述分割失败的三维点与所述拟合模型的距离大于预设距离阈值,将所述分割失败的三维点标记为未知属性的点。通过这种方式,能够提高点云分割的准确度。
50.在一些实施例中,三维点云可以由激光雷达采集得到。不同的激光雷达所采用的扫描方式可能不同。图6a示出了几种常见的雷达扫描方式,图中灰色区域为激光雷达的扫描范围,箭头表示激光的扫描方向。在扫描方式1中,激光雷达进行圆周扫描,扫描角度θ1等于360
°
。在扫描方式2中,激光雷达以一个较大的角度θ2进行往复扫描,其中,θ2可以是大于或等于135
°
的角度。在扫描方式3中,激光雷达以一个较小的固定角度θ3进行扫描,其中,θ3可以是小于或等于45
°
的角度。上述实施例基于扫描角度对激光雷达的扫描方式进行了划分,本领域技术人员可以理解,其中给出的具体角度仅为示例性说明,在实际应用中还可以采用其他角度阈值对不同的扫描方式进行划分。
51.图6b示出了一种可能的应用场景。可以在车辆b上安装激光雷达,例如,在车辆b的前方安装激光雷达,用于采集车辆b前方的三维点云。当然,还可以在车辆b的顶部、侧方或者其他部位安装激光雷达,此处不再赘述。为了便于分析,假设车辆b是静止的,车辆b前方有车辆a在行驶,在不同的时刻t1、t2和t3,车辆a在逐渐远离车辆b。
52.在实际应用中,由于每帧三维点云中三维点的数量较少,不足以对三维点云进行处理,因此,需要累积多帧三维点云,得到1帧累积后的三维点云,再对累积后的三维点云进行处理。而不同的扫描方式经过累积,会得到不同形式的三维点云。将激光雷达扫描过程中能够扫描到车辆a的扫描角度记为θ,为了便于理解,假设上述θ2和θ3分别为180
°
和36
°
,并假设θ等于θ3。如果激光雷达以上述扫描方式1或者扫描方式2进行扫描,则在激光雷达的整个扫描周期内,只有1/10的时间能够扫描到车辆a,因此,只有其中1/10的三维点云中包括车辆a上的三维点,且不同三维点云中车辆a上的三维点之间的间隔比较大,如图6c中三维点云1所示。而在激光雷达以扫描方式3进行扫描的情况下,在激光雷达的整个扫描周期内都能够扫描到车辆a,因此,每一帧三维点云中都包括车辆a上的三维点,且由于采集相邻两帧三维点云的时间间隔比较小,在相邻两帧三维点云中车辆a移动的距离也比较小,从而相邻两帧三维点云中车辆a上的三维点之间的间隔比较小。因此,从视觉上来看,通过扫描方式3扫描得到的三维点云会存在比较严重的“拖尾”问题,如图6c中的三维点云2所示。这种存在“拖尾”的三维点云在处理时容易产生错误。
53.因此,在处理用扫描方式3进行扫描的激光雷达采集的三维点云时,可以仅采用一帧三维点云进行点云分割。由于本公开的方式无需建立栅格地图或体素地图,也无需随机采样,非常轻量化,仅需遍历点云一次就可以得出分割结果,因此,即便一帧三维点云中三
维点的数量较少,也可以获得较为准确的分割结果。同时,在对实时性要求较高的场景下,每输入一帧三维点云,即可得到一帧点云分割结果,提高了点云分割的实时性。对于采用扫描方式1和扫描方式2的激光雷达,可以进一步累积多帧点云,并结合拟合出的路面与三维点之间的距离进行二次点云分割,从而提高点云分割结果的准确性。
54.进一步地,还可以基于点云分割结果,为所述三维点云中的各个三维点打标签。所述标签可以包括数字、字母、符号中的至少一者。以标签包括数字为例,可以用比特1表示可移动平台行驶路面上的三维点,用比特0表示可移动平台行驶路面之外的三维点,还可以用比特01表示属性未知的三维点。
55.在获取到带标签的三维点云之后,可以输出所述带标签的三维点云。在仅采用一帧三维点云进行点云分割的实施例中,所述带标签的三维点云的输出帧率可以达到与所述三维点云的输入帧率相等的频率。在累积n帧三维点云并拟合路面模型的实施例中,输出带标签的三维点云的帧率等于输入三维点云帧率的1/n。
56.在实际应用中,点云分割结果可用于所述可移动平台上的规划单元对所述可移动平台的行驶状态进行规划。例如,规划单元可以基于点云分割结果得到的标签,确定行驶路径上的障碍物的位置,从而决定是否需要控制可移动平台的速度和姿态以躲避障碍物。点云分割结果还可以输出至可移动平台上的多媒体系统,例如,显示屏、语音播放系统等,用于向用户输出多媒体提示信息。
57.如图7所示,是本公开实施例的点云分割方法的总体流程图。
58.在步骤701中,可以持续获取激光雷达输出的三维点云,所述三维点云的帧率可以是100hz,或者也可以是其他值。
59.在步骤702中,可以按照激光雷达的扫描时刻重新组织三维点云,例如,组织成图4所示的形式。当然,本步骤也可以省略,在后续步骤中,可以直接根据激光雷达的扫描时刻从三维点云中获取邻近的三维点进行处理。除了按照激光雷达的扫描时刻重新组织三维点云,还可以按照激光雷达的扫描角度重新组织三维点云。
60.在步骤703中,对三维点云中的三维点及其邻近三维点进行连续性分析,以确定出不可用的三维点。
61.在步骤704中,提取每个三维点的三维(3d)法向量或者二维(2d)法向量。
62.在步骤705中,基于步骤704中提取出的三维法向量或者二维法向量进行点云分割,并标记三维点云中各个三维点的类别标签。
63.在步骤706中,输出带标签的三维点云,三维点云的输出帧率与输入帧率可以相等,例如,都是100hz。
64.在步骤707中,可以判断当前是否累积满n帧,其中,n可以基于对三维点云进行处理的下游处理单元的输入帧率预先确定。如果是,则执行步骤708;否则返回步骤701。
65.在步骤708中,针对累积的n帧三维点云,可以获取可移动平台采集所述n帧三维点云时的姿态数据。
66.在步骤709中,可以基于所述n帧三维点云对应的姿态数据将所述n帧三维点云变换到可移动平台的当前坐标系下。
67.在步骤710中,可以使用所述n帧三维点云中的地面点进行地面模型拟合。其中,本步骤中所使用的地面点可以是步骤705中标记出的地面点。
68.在步骤711中,可以利用地面模型与三维点的距离优化已有的类别标签。
69.在步骤712中,可以输出带标签的三维点云,输出的帧率等于输入三维点云的帧率的1/n,例如,可以是(100/n)hz。
70.在步骤713中,判断程序是否结束。如果程序未结束,则返回步骤701继续进行点云分割。
71.本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
72.本公开实施例还提供一种点云分割装置,包括处理器,所述处理器用于执行以下步骤:
73.基于可移动平台上的激光雷达采集三维点云时的扫描角度和扫描时刻,确定与所述三维点云中的三维点在物理空间中邻近的邻近三维点;
74.获取所述三维点与所述三维点的邻近三维点所在的局部区域的法向量;
75.基于所述法向量对所述三维点进行点云分割。
76.在一些实施例中,所述激光雷达对所述三维点的扫描角度与对所述三维点的邻近三维点的扫描角度之间的角度差小于预设角度差;和/或所述激光雷达对所述三维点的扫描时间与对所述三维点的邻近三维点的扫描时间之间的时间差小于预设时长。
77.在一些实施例中,所述三维点云由单线激光雷达采集得到,所述三维点的邻近三维点包括所述单线激光雷达沿着第一方向移动时连续采集到的至少一个三维点,以及所述单线激光雷达沿着第二方向移动时连续采集到的至少一个三维点,所述第一方向不同于所述第二方向;或者所述三维点云由多线激光雷达采集得到,所述三维点的邻近三维点包括所述多线激光雷达中相邻的至少两线激光连续多次扫描得到的三维点;或者所述三维点云由阵列激光雷达采集得到,所述三维点的邻近三维点包括所述阵列激光雷达中的m
×
n的阵列块一次扫描得到的三维点,m和n均为大于1的整数。
78.在一些实施例中,所述处理器还用于:在获取所述局部区域的法向量之前,将所述三维点云中不可用的三维点标记为未知属性的点。
79.在一些实施例中,所述不可用的三维点包括连续的多个无效的邻近三维点,以及不存在邻近三维点的孤立点。
80.在一些实施例中,所述连续的多个无效的邻近三维点包括以下任意一种:多线激光雷达的相邻多线激光同一次扫描到的无效三维点;阵列激光雷达同一列或者同一行的连续多个激光源一次扫描到的无效三维点。
81.在一些实施例中,所述处理器用于:若获取到所述局部区域的三维法向量,基于所述三维法向量对所述三维点进行点云分割;和/或若未获取到所述局部区域的三维法向量,基于所述局部区域的二维法向量对所述三维点进行点云分割。
82.在一些实施例中,所述处理器用于:若所述局部区域的三维法向量与所述可移动平台行驶平面的法向量的夹角小于第一预设夹角,将所述三维点分割为所述可移动平台行驶平面上的点;和/或若所述局部区域的三维法向量与所述可移动平台行驶平面的法向量的夹角大于第二预设夹角,将所述三维点分割为障碍物;和/或若所述局部区域的三维法向量与所述可移动平台行驶平面的法向量的夹角大于或等于所述第一预设夹角,且小于或等
于所述第二预设夹角,将所述三维点标记为未知属性的点;其中,所述第一预设夹角小于所述第二预设夹角。
83.在一些实施例中,所述第一预设夹角小于或等于35
°
,所述第二预设夹角大于或等于65
°

84.在一些实施例中,所述处理器用于:若所述局部区域的二维法向量与所述可移动平台行驶平面的法向量的夹角小于第三预设夹角,将所述三维点分割为所述可移动平台行驶平面上的点;和/或若所述局部区域的二维法向量与所述可移动平台行驶平面的法向量的夹角大于第四预设夹角,将所述三维点分割为障碍物;和/或若所述局部区域的二维法向量与所述可移动平台行驶平面的法向量的夹角大于或等于所述第三预设夹角,且小于或等于所述第四预设夹角,将所述三维点标记为未知属性的点;其中,所述第三预设夹角小于所述第四预设夹角。
85.在一些实施例中,所述第三预设夹角小于或等于20
°
,所述第二预设夹角大于或等于70
°

86.在一些实施例中,在基于所述法向量对所述三维点进行点云分割之后,所述处理器还用于:获取多帧所述三维点云;基于多帧所述三维点云对所述可移动平台的行驶路面进行拟合,得到所述行驶路面的拟合模型;
87.基于所述拟合模型对多帧所述三维点云中分割失败的三维点进行二次点云分割。
88.在一些实施例中,所述处理器用于:获取所述可移动平台采集多帧所述三维点云中的每帧三维点云时的位姿信息;基于所述可移动平台采集所述每帧三维点云对应的位姿信息,将所述每帧三维点云变换到预设坐标系下;基于变换后的多帧所述三维点云中位于所述可移动平台行驶平面上的点,对所述可移动平台的行驶路面进行拟合。
89.在一些实施例中,所述处理器用于:基于所述分割失败的三维点与所述拟合模型的距离,对所述分割失败的三维点进行二次点云分割。
90.在一些实施例中,所述处理器用于:若所述分割失败的三维点与所述拟合模型的距离大于预设距离阈值,将所述分割失败的三维点分割为所述可移动平台行驶平面上的点;和/或若所述分割失败的三维点与所述拟合模型的距离大于预设距离阈值,将所述分割失败的三维点标记为未知属性的点。
91.在一些实施例中,在基于所述三维点的法向量对所述三维点进行点云分割之后,所述处理器还用于:基于点云分割结果,为所述三维点云中的各个三维点打标签。
92.在一些实施例中,在为所述三维点云中的各个三维点打标签之后,所述处理器还用于:输出带标签的所述三维点云;其中,带标签的所述三维点云的输出帧率与所述三维点云的输入帧率相等。
93.在一些实施例中,对所述三维点云进行点云分割得到的点云分割结果用于所述可移动平台上的规划单元对所述可移动平台的行驶状态进行规划。
94.在一些实施例中,所述激光雷达的扫描角度小于或等于45
°

95.本公开实施例的点云分割装置中处理器所执行的方法的具体实施例可参见前述方法实施例,此处不再赘述。
96.图8示出了本说明书实施例所提供的一种更为具体的数据处理装置硬件结构示意图,该设备可以包括:处理器801、存储器802、输入/输出接口803、通信接口804和总线805。
其中处理器801、存储器802、输入/输出接口803和通信接口804通过总线805实现彼此之间在设备内部的通信连接。
97.处理器801可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
98.存储器802可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器802可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器802中,并由处理器801来调用执行。
99.输入/输出接口803用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
100.通信接口804用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
101.总线805包括一通路,在设备的各个组件(例如处理器801、存储器802、输入/输出接口803和通信接口804)之间传输信息。
102.需要说明的是,尽管上述设备仅示出了处理器801、存储器802、输入/输出接口803、通信接口804以及总线805,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
103.如图9所示,本公开实施例还提供一种可移动平台900,包括壳体901;点云采集装置902,设于所述壳体901上,用于采集三维点云;以及三维点云分割装置903,设于所述壳体901内,用于执行本公开任一实施例所述的方法。其中,所述可移动平台900可以是无人机、无人车、无人船、可移动机器人等设备,所述点云采集装置902可以是视觉传感器(例如双目视觉传感器、三目视觉传感器等)或者激光雷达。
104.本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述任一实施例所述的方法中由第二处理单元执行的步骤。
105.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
106.通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施
例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
107.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
108.以上实施例中的各种技术特征可以任意进行组合,只要特征之间的组合不存在冲突或矛盾,但是限于篇幅,未进行一一描述,因此上述实施方式中的各种技术特征的任意进行组合也属于本公开的范围。
109.本领域技术人员在考虑公开及实践这里公开的说明书后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
110.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
111.以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。
再多了解一些

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

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

相关文献