点云数据处理方法、计算设备、飞行装置及存储介质转让专利

申请号 : CN202211230780.X

文献号 : CN115311457B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵德力郭均浩谷靖张新刘康崔绍臣

申请人 : 广东汇天航空航天科技有限公司

摘要 :

本申请涉及一种点云数据处理方法、计算设备、飞行装置及存储介质。该方法包括:通过对点云采集数据进行语义分割处理,获得第一非地面点云子集和第一待处理地面点云子集;对所述第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集;对所述第二待处理地面点云子集进行二维图像分割处理,获得第二非地面点云子集和第二地面点云子集;根据所述第一非地面点云子集和所述第二非地面点云子集,获得目标非地面点云数据集合;根据所述第一地面点云子集和所述第二地面点云子集,获得目标地面点云数据集合。依据本申请实施例,能够提高地面点云检测的准确率。

权利要求 :

1.一种点云数据处理方法,其特征在于,包括:

对点云采集数据进行语义分割处理,获得第一非地面点云子集和第一待处理地面点云子集;

对所述语义分割处理获得的所述第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集,所述第一地面点云子集为稠密地面点云子集;

对所述第二待处理地面点云子集进行二维图像分割处理,获得第二非地面点云子集和第二地面点云子集,所述第二地面点云子集为稀疏地面点云子集,包括:根据预设映射关系,将所述第二待处理地面点云子集中的点云点映射为二维图像中的第一类型点云点像素,以及将所述第一地面点云子集中的点云点映射为所述二维图像中的第二类型点云点像素,对包含所述第一类型点云点像素和第二类型点云点像素的所述二维图像进行处理,将所述第二待处理地面点云子集分割为所述第二非地面点云子集和所述第二地面点云子集;

根据所述第一非地面点云子集和所述第二非地面点云子集,获得目标非地面点云数据集合;根据所述第一地面点云子集和所述第二地面点云子集,获得目标地面点云数据集合。

2.根据权利要求1所述的方法,其特征在于,所述对所述语义分割处理获得的所述第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集,包括:根据所述第一待处理地面点云子集获得基准地面的第一特征的特征值;

将所述第一待处理地面点云子集中的点云点划分到多个子区域,并获得各子区域的预设特征的特征值;

根据所述基准地面的第一特征的特征值和各子区域的预设特征的特征值,判断各个所述子区域是否与所述基准地面相匹配;若匹配,将所述子区域中的点云点划分到第一地面点云子集,若不匹配,将所述子区域中的点云点划分到第二待处理地面点云子集。

3.根据权利要求1所述的方法,其特征在于,所述对所述语义分割处理获得的所述第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集,包括:对所述第一待处理地面点云子集进行第一栅格化处理,以将所述第一待处理地面点云子集中的点云点划分到所生成的第一栅格阵列的对应栅格;

确定所述第一栅格阵列中的地面基准栅格,根据所述地面基准栅格中的点云点数据,获得所述地面基准栅格的第一特征的特征值;

根据K邻域栅格中的各非地面基准栅格中的点云点数据,获得各非地面基准栅格的第一特征的特征值;

根据所述地面基准栅格的第一特征的特征值和各非地面基准栅格的第一特征的特征值,分别判断各非地面基准栅格是否与所述地面基准栅格相匹配,若非地面基准栅格与所述地面基准栅格匹配,将非地面基准栅格中的点云点划分到第一地面点云子集,若非地面基准栅格与所述地面基准栅格不匹配,将非地面基准栅格中的点云点划分到第二待处理地面点云子集。

4.根据权利要求3所述的方法,其特征在于,所述第一特征包括相应栅格中的点云点的高度特征。

5.根据权利要求2所述的方法,其特征在于,所述对所述第二待处理地面点云子集进行二维图像分割处理,获得第二非地面点云子集和第二地面点云子集,包括:根据预设映射关系,将所述第二待处理地面点云子集中的点云点映射为二维图像中的点云点像素;

对所述二维图像进行第二栅格化处理,以将所述点云点像素划分到所述二维图像对应的第二栅格阵列中的第一类型栅格中;

根据各第一类型栅格中的点云点像素数据,获得各第一类型栅格的预设特征的特征值;

根据所述基准地面的第二特征的特征值和所述第一类型栅格的预设特征的特征值,判断所述第一类型栅格是否与所述基准地面相匹配,若匹配,将所述第一类型栅格中的点云点像素对应的点云点划分到第二地面点云子集,若不匹配,将所述第一类型栅格中的点云点像素对应的点云点划分到第二非地面点云子集。

6.根据权利要求5所述的方法,其特征在于,所述基准地面的第二特征与所述基准地面的第一特征不同。

7.根据权利要求1所述的方法,其特征在于,所述对包含所述第一类型点云点像素和第二类型点云点像素的所述二维图像进行处理,将所述第二待处理地面点云子集分割为所述第二非地面点云子集和所述第二地面点云子集,包括:对所述二维图像进行第二栅格化处理,将所述第一类型点云点像素划分到所述二维图像对应的第二栅格阵列中的第一类型栅格中,将所述第二类型点云点像素划分到所述第二栅格阵列中的第二类型栅格中;

根据所述第一类型栅格中的第一类型点云点像素数据,获得所述第一类型栅格的第二特征的特征值;根据与第一类型栅格邻近的第二类型栅格中的第二类型点云点像素数据,获得邻近的第二类型栅格的第二特征的特征值;

根据所述第一类型栅格的第二特征的特征值和邻近的第二类型栅格的第二特征的特征值,判断所述第一类型栅格是否与邻近的第二类型栅格相匹配,若匹配,将所述第一类型栅格中的第一类型点云点像素对应的点云点划分到第二地面点云子集,若不匹配,将所述第一类型栅格中的第一类型点云点像素对应的点云点划分到第二非地面点云子集。

8.根据权利要求7所述的方法,其特征在于,所述第一类型栅格的第二特征和第二类型栅格的第二特征包括相应栅格的点云点像素的密度特征。

9.一种计算设备,其特征在于,包括:

至少一个处理器;以及

至少一个存储器,其上存储有可执行代码,当所述可执行代码被所述至少一个处理器执行时,使所述至少一个处理器执行如权利要求1‑8中任一项所述的点云数据处理方法。

10.一种飞行装置,其特征在于,包括如权利要求9所述的计算设备。

11.一种计算机可读存储介质,其特征在于,其上存储有可执行代码,当所述可执行代码被处理器执行时,使所述处理器执行如权利要求1‑8中任一项所述的点云数据处理方法。

说明书 :

点云数据处理方法、计算设备、飞行装置及存储介质

技术领域

[0001] 本申请涉及数据处理技术领域,尤其涉及一种点云数据处理方法、计算设备、飞行装置及存储介质。

背景技术

[0002] 在飞行器例如载人飞行汽车的行驶过程中,需要能够准确识别出四周环境的障碍物来实现避障。相关技术采用激光雷达获取点云数据,再通过聚类算法对点云数据进行聚类来实现障碍物的分割和识别,而聚类算法依据点之间的欧式距离来度量属性,因此地面点云会影响障碍物聚类的准确性。
[0003] 一种相关技术中,依据点云的高度来分割地面点云和非地面点云,容易将非地面物体的点云(例如低矮障碍物的点云)确定为地面点云,地面点云检测的准确率较低。

发明内容

[0004] 为解决或部分解决相关技术中存在的问题,本申请提供一种点云数据处理方法、计算设备、飞行装置及存储介质,能够提高地面点云检测的准确率。
[0005] 本申请一方面提供一种点云数据处理方法,所述方法包括:
[0006] 对点云采集数据进行语义分割处理,获得第一非地面点云子集和第一待处理地面点云子集;
[0007] 对所述第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集;
[0008] 对所述第二待处理地面点云子集进行二维图像分割处理,获得第二非地面点云子集和第二地面点云子集;
[0009] 根据所述第一非地面点云子集和所述第二非地面点云子集,获得目标非地面点云数据集合;根据所述第一地面点云子集和所述第二地面点云子集,获得目标地面点云数据集合。
[0010] 一些实施例中,所述对所述第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集,包括:
[0011] 根据所述第一待处理地面点云子集获得基准地面的第一特征的特征值;
[0012] 将所述第一待处理地面点云子集中的点云点划分到多个子区域,并获得各子区域的预设特征的特征值;
[0013] 根据所述基准地面的第一特征的特征值和各子区域的预设特征的特征值,判断各个所述子区域是否与所述基准地面相匹配;若匹配,将所述子区域中的点云点划分到第一地面点云子集,若不匹配,将所述子区域中的点云点划分到第二待处理地面点云子集。
[0014] 一些实施例中,所述对所述第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集,包括:
[0015] 对所述第一待处理地面点云子集进行第一栅格化处理,以将所述第一待处理地面点云子集中的点云点划分到所生成的第一栅格阵列的对应栅格;
[0016] 确定所述第一栅格阵列中的地面基准栅格,根据所述地面基准栅格中的点云点数据,获得所述地面基准栅格的第一特征的特征值;
[0017] 根据K邻域栅格中的各非地面基准栅格中的点云点数据,获得各非地面基准栅格的第一特征的特征值;
[0018] 根据所述地面基准栅格的第一特征的特征值和各非地面基准栅格的第一特征的特征值,分别判断各非地面基准栅格是否与所述地面基准栅格相匹配,若非地面基准栅格与所述地面基准栅格匹配,将非地面基准栅格中的点云点划分到第一地面点云子集,若非地面基准栅格与所述地面基准栅格不匹配,将非地面基准栅格中的点云点划分到第二待处理地面点云子集。
[0019] 一些实施例中,所述第一特征包括相应栅格中的点云点的高度特征。
[0020] 一些实施例中,所述对所述第二待处理地面点云子集进行二维图像处理,获得第二非地面点云子集和第二地面点云子集,包括:
[0021] 根据预设映射关系,将所述第二待处理地面点云子集中的点云点映射为二维图像中的点云点像素;
[0022] 对所述二维图像进行第二栅格化处理,以将所述点云点像素划分到所述二维图像对应的第二栅格阵列中的第一类型栅格中;
[0023] 根据各第一类型栅格中的点云点像素数据,获得各第一类型栅格的预设特征的特征值;
[0024] 根据所述基准地面的第二特征的特征值和所述第一类型栅格的预设特征的特征值,判断所述第一类型栅格是否与所述基准地面相匹配,若匹配,将所述第一类型栅格中的点云点像素对应的点云点划分到第二地面点云子集,若不匹配,将所述第一类型栅格中的点云点像素对应的点云点划分到第二非地面点云子集。
[0025] 一些实施例中,所述基准地面的第二特征与所述基准地面的第一特征不同。
[0026] 一些实施例中,所述对所述第二待处理地面点云子集进行二维图像处理,获得第二非地面点云子集和第二地面点云子集,包括:
[0027] 根据预设映射关系,将所述第二待处理地面点云子集中的点云点映射为二维图像中的第一类型点云点像素,以及将所述第一地面点云子集中的点云点映射为所述二维图像中的第二类型点云点像素;
[0028] 对所述二维图像进行第二栅格化处理,将所述第一类型点云点像素划分到所述二维图像对应的第二栅格阵列中的第一类型栅格中,将所述第二类型点云点像素划分到所述第二栅格阵列中的第二类型栅格中;
[0029] 根据所述第一类型栅格中的第一类型点云点像素数据,获得所述第一类型栅格的第二特征的特征值;根据与第一类型栅格邻近的第二类型栅格中的第二类型点云点像素数据,获得邻近的第二类型栅格的第二特征的特征值;
[0030] 根据所述第一类型栅格的第二特征的特征值和邻近的第二类型栅格的第二特征的特征值,判断所述第一类型栅格是否与邻近的第二类型栅格相匹配,若匹配,将所述第一类型栅格中的第一类型点云点像素对应的点云点划分到第二地面点云子集,若不匹配,将所述第一类型栅格中的第一类型点云点像素对应的点云点划分到第二非地面点云子集。
[0031] 一些实施例中,所述第一类型栅格的第二特征和第二类型栅格的第二特征包括相应栅格的点云点像素的密度特征。
[0032] 一些实施例中,所述第一地面点云子集中的点云密度大于所述第二地面点云子集中的点云密度。
[0033] 本申请另一方面提供一种计算设备,包括:
[0034] 至少一个处理器;以及
[0035] 至少一个存储器,其上存储有可执行代码,当所述可执行代码被所述至少一个处理器执行时,使所述至少一个处理器执行如上所述的点云数据处理方法。
[0036] 本申请再一方面提供一种飞行装置,包括如上所述的计算设备。
[0037] 本申请又一方面提供一种计算机可读存储介质,其上存储有可执行代码,当所述可执行代码被处理器执行时,使所述处理器执行如上所述的点云数据处理方法。
[0038] 本申请实施例提供的技术方案可以包括以下有益效果:
[0039] 本申请实施例,先通过语义分割处理对点云采集数据进行分类,获得第一非地面点云子集和第一待处理地面点云子集;继而对通过语义分割处理分类为地面点云的第一待处理地面点云子集进行修正,通过平面分割处理从第一待处理地面点云子集中分割出地面平面点云点(即第一地面点云子集),再对从第一待处理地面点云子集中分割出的第二待处理地面点云子集进行二维图像分割处理,分离出其中的非地面点云点。通过语义分割处理可以获得较为准确的全局性分类结果,平面分割处理和二维图像分割处理则能够对语义分割处理分类获得的地面点云点进行更准确的局部细节处理,检测出被语义分割处理错误分类为地面点的点云点;通过多种方法互补,能够提高地面点云检测的准确率。
[0040] 本申请实施例中,将语义分割处理作为前处理,可以过滤掉绝大多数非地面点,降低后续处理的数据量;进一步的,通过平面分割处理能够快速分割出稠密地面点云,再对稠密地面点云之外的点云进行二维图像分割处理,可以降低二维图像分割处理的数据量,在提高地面点云检测的准确率的同时,提高检测效率,降低占用的计算资源。
[0041] 进一步的,本申请实施例的方法不需要依赖于当前飞行高度等先验信息,在例如飞行器颠簸等状况下仍有较好的检测效果。
[0042] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

[0043] 通过结合附图对本申请示例性实施方式进行更详细地描述,本申请的上述以及其它目的、特征和优势将变得更加明显,其中,在本申请示例性实施方式中,相同的参考标号通常代表相同部件。
[0044] 图1是本申请一实施例的点云数据处理方法的流程示意图;
[0045] 图2是本申请另一实施例的点云数据处理方法的流程示意图;
[0046] 图3是本申请一实施例的计算设备的结构示意图。

具体实施方式

[0047] 下面将参照附图更详细地描述本申请的实施方式。虽然附图中显示了本申请的实施方式,然而应该理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本申请更加透彻和完整,并且能够将本申请的范围完整地传达给本领域的技术人员。
[0048] 在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0049] 应当理解,尽管在本申请可能采用术语“第一”、“第二”、“第三”等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0050] 本申请提供一种点云数据处理方法,能够提高地面点云检测的准确率。
[0051] 以下结合附图详细描述本申请实施例的技术方案。
[0052] 图1是本申请一实施例的点云数据处理方法的流程示意图。
[0053] 参见图1,一种点云数据处理方法,包括:
[0054] 在S110中,对点云采集数据进行语义分割处理,获得第一非地面点云子集和第一待处理地面点云子集。
[0055] 一些实施例中,点云采集数据为通过例如激光雷达等点云采集设备采集得到的空间点(也称为点云点)的数据集,每一个点云点都包含了三维坐标(x,y,z)。点云采集设备例如可安装于飞行装置、车辆等。可以理解的,点云采集数据可以是对采集设备采集的原始点云采集数据进行预处理后的数据。
[0056] 一些实施例中,通过预先获得的语义分割模型,对当前帧的点云数据进行语义分割处理,将当前帧点云中的各点云点分类为语义非地面点或语义地面点;分类后的各语义非地面点形成第一非地面点云子集,分类后的语义地面点形成第一待处理地面点云子集。
[0057] 语义分割模型例如可以是利用样本数据集预先训练获得的深度学习模型,例如可以包括但不限于U‑Net、FCN(Fully Convolutional Networks)、SegNetA(A Deep Convolutional Encoder‑Decoder Architecture for Image Segmentation)、PSPNet(Pyramid Scene Parsing Network)、DeepLab等模型中的任一种。
[0058] 在S120中,对第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集。
[0059] 一些实施例中,对第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集包括SA1至SA3:
[0060] SA1,获得基准地面的第一特征的特征值。
[0061] 一些实施例中,基准地面的第一特征例如包括被确定为基准地面的高度特征和/或点云点密度特征。基准地面的高度特征例如可以包括基准地面中的各点云点的高度值中的最大值和/或各点云点的高度值的平均值。基准地面的点云点密度特征可以是基准地面中的点云点的数量。
[0062] 可以理解的,基准地面的第一特征的特征值可以是根据第一待处理地面点云子集中的点云点提取的基准地面获得的,也可以根据历史点云数据获得并预先设置的。
[0063] SA2,将第一待处理地面点云子集中的点云点划分到多个子区域。
[0064] SA3,根据基准地面的第一特征的特征值和各子区域的预设特征的特征值,判断各个子区域是否与基准地面相匹配;若匹配,将子区域中的点云点划分到第一地面点云子集,若不匹配,将子区域中的点云点划分到第二待处理地面点云子集。
[0065] 一些实施例中,获得子区域的预设特征的特征值;对子区域的预设特征的特征值和基准地面的第一特征的特征值进行比较,判断比较结果是否符合预设条件,若符合预设条件,子区域与基准地面相匹配,否则,子区域与基准地面不匹配。其中,子区域的预设特征可以是与基准地面的第一特征相同的特征,例如均是高度特征和/或点云点密度特征。比较结果符合预设条件例如可以是子区域的预设特征的特征值和基准地面的第一特征的特征值的差异在预设范围内。
[0066] 一些实施例中,对第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集包括SB1至SB4:
[0067] SB1,对第一待处理地面点云子集进行第一栅格化处理,以将第一待处理地面点云子集中的点云点划分到所生成的第一栅格阵列的对应栅格。
[0068] SB2,确定第一栅格阵列中的地面基准栅格,根据地面基准栅格中的点云点数据,获得地面基准栅格的第一特征的特征值。
[0069] 一些实施例中,采用平面栅格法对第一待处理地面点云子集中的点云点进行分区。平面栅格法是根据设定好的尺寸生成平面栅格(也可以做多层栅格或者三维体素),将第一待处理地面点云子集中的点云点划分到所生成的第一栅格阵列的对应栅格中。对第一栅格阵列按照K邻域法进行平面分割处理,地面基准栅格例如可以是K邻域栅格中的栅格。
[0070] SB3,根据K邻域栅格中的各非地面基准栅格中的点云点数据,获得各非地面基准栅格的第一特征的特征值。
[0071] SB4,根据地面基准栅格的第一特征的特征值和各非地面基准栅格的第一特征的特征值,分别判断各非地面基准栅格是否与地面基准栅格相匹配,若非地面基准栅格与地面基准栅格匹配,将非地面基准栅格中的点云点划分到第一地面点云子集,若非地面基准栅格与地面基准栅格不匹配,将非地面基准栅格中的点云点划分到第二待处理地面点云子集。
[0072] 一些实施例中,地面基准栅格的第一特征和非地面基准栅格的第一特征相同,均包括相应栅格中的点云点的高度特征,例如可以是相应栅格中各点云点的高度值中的最大值和/或各点云点的高度值的平均值。非地面基准栅格与地面基准栅格相匹配例如可以是非地面基准栅格的第一特征的特征值和地面基准栅格的第一特征的特征值的差异在预设范围内。
[0073] 一些实施例中,对第一待处理地面点云子集进行平面分割处理,获得第二待处理地面点云子集和第一地面点云子集,包括:从第一待处理地面点云子集中提取基准地面,将第一待处理地面点云子集中的点云点划分到多个子区域。根据基准地面中的点云点的数据和子区域中的点云点的数据,判断子区域与基准地面是否处于同一平面,若处于同一平面,子区域与基准地面相匹配,否则,子区域与基准地面不匹配。
[0074] 一些实施例中,可以采用随机采样一致RANSAC(Random Sample Consensus,RANSAC)算法对第一待处理地面点云子集进行平面分割处理,采用平面拟合方法从第一待处理地面点云子集中拟合出包含最多地面点的平面,各地面点形成第一地面点云子集,第一待处理地面点云子集中的其他点云点形成第二待处理地面点云子集。
[0075] 在S130中,对第二待处理地面点云子集进行二维图像分割处理,获得第二非地面点云子集和第二地面点云子集。
[0076] 一些实施例中,对第二待处理地面点云子集进行二维图像分割处理,获得第二非地面点云子集和第二地面点云子集,包括SC1至SC4:
[0077] SC1,根据预设映射关系,将第二待处理地面点云子集中的点云点映射为二维图像中的点云点像素。
[0078] 一些实施例中,可以将第二待处理地面点云子集中的点云点映射为正视图或前视图。
[0079] SC2,对二维图像进行第二栅格化处理,以将第二待处理地面点云子集对应的点云点像素划分到该二维图像对应的第二栅格阵列中的第一类型栅格中。
[0080] SC3,根据各第一类型栅格中的点云点像素数据,获得各第一类型栅格的预设特征的特征值。
[0081] SC4,根据基准地面的第二特征的特征值和第一类型栅格的预设特征的特征值,判断第一类型栅格是否与基准地面相匹配,若匹配,将第一类型栅格中的点云点像素对应的点云点划分到第二地面点云子集,若不匹配,将第一类型栅格中的点云点像素对应的点云点划分到第二非地面点云子集。
[0082] 一些实施例中,对第一类型栅格的预设特征的特征值和基准地面的第二特征的特征值进行比较,判断比较结果是否符合预设条件,若符合预设条件,第一类型栅格与基准地面相匹配,否则,第一类型栅格与基准地面不匹配。其中,第一类型栅格的预设特征可以是与基准地面的第二特征相同的特征。比较结果符合预设条件例如可以是第一类型栅格的预设特征的特征值和基准地面的第二特征的特征值的差异在预设范围内。
[0083] 可以理解的,二维图像分割处理中的基准地面与平面分割处理中的基准地面可以相同,或者不同。
[0084] 可以理解的,基准地面的第二特征与基准地面的第一特征不同。
[0085] 一些实施例中,对第二待处理地面点云子集进行二维图像分割处理,获得第二非地面点云子集和第二地面点云子集,包括SD1至SD4:
[0086] SD1,根据预设映射关系,将第二待处理地面点云子集中的点云点映射为二维图像中的第一类型点云点像素,以及将第一地面点云子集中的点云点映射为该二维图像中的第二类型点云点像素。
[0087] SD2,对该二维图像进行第二栅格化处理,将第一类型点云点像素划分到该二维图像的第二栅格阵列中的第一类型栅格中,将第二类型点云点像素划分到该第二栅格阵列中的第二类型栅格中。
[0088] SD3,根据第一类型栅格中的第一类型点云点像素数据,获得第一类型栅格的第二特征的特征值;根据与第一类型栅格邻近的第二类型栅格中的第二类型点云点像素数据,获得该邻近的第二类型栅格的第二特征的特征值。
[0089] SD4,根据第一类型栅格的第二特征的特征值和邻近的第二类型栅格的第二特征的特征值,判断第一类型栅格是否与邻近的第二类型栅格相匹配,若匹配,将第一类型栅格中的第一类型点云点像素对应的点云点划分到第二地面点云子集,若不匹配,将第一类型栅格中的第一类型点云点像素对应的点云点划分到第二非地面点云子集。
[0090] 一些实施例中,第一类型栅格的第二特征和第二类型栅格的第二特征相同,均包括相应栅格中的点云点的密度特征,例如可以是相应栅格中的相应类型点云点像素的数量。第一类型栅格是否与邻近的第二类型栅格相匹配例如可以是第一类型栅格的第二特征的特征值和邻近的第二类型栅格的第二特征的特征值的差异在预设范围内。
[0091] 在S140中,根据第一非地面点云子集和第二非地面点云子集,获得点云采集数据中的目标非地面点云数据集合;根据第一地面点云子集和第二地面点云子集,获得点云采集数据中的目标地面点云数据集合。
[0092] 一实施例中,可以将第一非地面点云子集和第二非地面点云子集合并,获得当前帧的点云采集数据中的目标非地面点云数据集合。
[0093] 一实施例中,可以将第一地面点云子集和第二地面点云子集合并,获得当前帧的点云采集数据中的目标地面点云数据集合。
[0094] 本申请实施例,先通过语义分割处理对点云采集数据进行分类,获得第一非地面点云子集和第一待处理地面点云子集;继而对通过语义分割处理分类为地面点云的第一待处理地面点云子集进行修正,通过平面分割处理从第一待处理地面点云子集中分割出地面平面点云点(即第一地面点云子集),再对从第一待处理地面点云子集中分割出的第二待处理地面点云子集进行二维图像分割处理,分离出其中的非地面点云点。通过语义分割处理可以获得较为准确的全局性分类结果,平面分割处理和二维图像分割处理则能够对语义分割处理分类获得的地面点云点进行更准确的局部细节处理,检测出被语义分割处理错误分类为地面点的点云点;通过多种方法互补,能够提高地面点云检测的准确率。
[0095] 本申请实施例中,将语义分割处理作为前处理,可以过滤掉绝大多数非地面点,降低后续处理的数据量;进一步的,通过平面分割处理能够快速分割出稠密地面点云,再对稠密地面点云之外的点云进行二维图像分割处理,可以降低二维图像分割处理的数据量,在提高地面点云检测的准确率的同时,提高检测效率,降低占用的计算资源。
[0096] 进一步的,本申请实施例的方法不需要依赖于当前飞行高度等先验信息,在飞行器颠簸等状况下仍有较好的检测效果。
[0097] 本申请实施例的点云数据处理方法可应用于计算设备。可以理解的,计算设备包括处理器及存储有计算机程序的存储器。上述处理器执行所存储的计算机程序时可以实现点云数据处理方法。计算设备可以是一个或多个计算终端,或者可以是服务器,或者也可以是计算终端和服务器的组合等。可以理解的,服务器可以是一个物理服务器或者多个物理服务器虚拟而成的一个逻辑服务器。服务器也可以是多个可互联通信的服务器组成的服务器群,且各个功能模块可分别分布在服务器群中的各个服务器上。一些实施例中,计算设备是飞行装置的机载电子设备,例如可以是但不限于飞行器的电子控制单元、自动驾驶系统控制器、智能导航设备、智能手机、智能平板设备等可移动设备等。飞行装置例如可以是无人飞行器、载人飞行器等。载人飞行器例如可以是电动载人飞行器、飞行汽车等。
[0098] 图2是本申请另一实施例的点云数据处理方法的流程示意图。
[0099] 参见图2,一种点云数据处理方法,包括:
[0100] 在S210中,对点云采集数据进行语义分割处理,获得第一非地面点云子集和第一待处理地面点云子集。
[0101] 一实施例中,可以通过飞行器的激光雷达获得当前帧的点云采集数据,点云采集数据包括多个点云点的数据集,每一个点云点都包含三维坐标(x,y,z);将当前帧的点云数据输入基于深度学习的语义分割模型例如神经网络模型SalsaNext;语义分割模型对输入的点云数据进行语义分割,将当前帧点云中的每个点分类为地面点或非地面点,从而输出当前帧的第一待处理地面点云子集和第一非地面点云子集。被语义分割处理为地面点的点云点形成第一待处理地面点云子集,以供进一步的精准化几何处理。
[0102] 在S220中,对第一待处理地面点云子集进行第一栅格化处理,以将第一待处理地面点云子集中的点云点划分到所生成的第一栅格阵列的对应栅格。
[0103] 一些实施例中,按照预设栅格尺寸对XY平面进行栅格划分,将第一待处理地面点云子集中的各点云点划分到XY平面的第一栅格阵列的对应栅格中。第一栅格阵列中的各个栅格具有标识数据,可以通过将第一待处理地面点云子集中的点云点与对应栅格的标识数据进行关联存储,将该点云点划分到第一栅格阵列的对应栅格中。
[0104] 在S230中,确定第一栅格阵列中的地面基准栅格,根据地面基准栅格中的点云点数据,获得地面基准栅格的高度特征的特征值。
[0105] 一些实施例中,地面基准栅格的高度特征的特征值是地面基准栅格中点云点的高度值(Z轴坐标值)中的最大值。
[0106] 一些实施例中,确定第一栅格阵列的K邻域栅格中的一个栅格为地面基准栅格,K邻域栅格中的其他栅格为非地面基准栅格。获得地面基准栅格中的点云点的高度值中的最大值,作为地面基准栅格的高度特征的特征值。
[0107] 在S240中,根据K邻域栅格中的各非地面基准栅格中的点云点数据,获得各非地面基准栅格的高度特征的特征值。
[0108] 一些实施例中,获得K邻域栅格中的每个非地面基准栅格中的点云点的高度值中的最大值,作为该非地面基准栅格的高度特征的特征值。
[0109] 在S250中,根据地面基准栅格的第一特征的特征值和各非地面基准栅格的第一特征的特征值,分别判断各非地面基准栅格是否与地面基准栅格相匹配,若非地面基准栅格与地面基准栅格匹配,将非地面基准栅格中的点云点划分到第一地面点云子集,若非地面基准栅格与地面基准栅格不匹配,将非地面基准栅格中的点云点划分到第二待处理地面点云子集。
[0110] 一些实施例中,获得非地面基准栅格的高度特征的特征值与非地面基准栅格的高度特征的特征值的差值,判断该差值是否不超过设定阈值,若不超过,将该非地面基准栅格中的点云点划分到第一地面点云子集,若超过,将该非地面基准栅格中的点云点划分到第二待处理地面点云子集。可以理解的,可将基准地面栅格中的点云点也划分到第一地面点云子集。
[0111] 一些实施例中,K邻域栅格可以是三行三列的九宫格。可以理解的,K邻域栅格还可以是九宫格之外的其他合适类型的相邻栅格组,例如4邻域栅格、6邻域栅格、或8邻域栅格等。
[0112] 一些实施例中,从第一待处理地面点云子集中获得的第一地面点云子集可以是稠密地面点云子集,即通过S220至S250中对第一待处理地面点云子集的处理,可以将第一待处理地面点云子集中的稠密地面点云提取出来。
[0113] 可以理解的,作为替代,第一栅格阵列中栅格的高度特征的特征值还可以是栅格中的各点云点的高度值的平均值。
[0114] 在S260中,根据预设映射关系,将第二待处理地面点云子集中的点云点映射为二维图像中的第一类型点云点像素,以及将第一地面点云子集中的点云点映射为该二维图像中的第二类型点云点像素。
[0115] 一些实施例中,预设映射关系可以是将点云点从三维坐标系映射到正视图或前视图。
[0116] 一些实施例中,通过以下映射关系获得将第一地面点云子集和第二待处理地面点云子集中的点云点从三维坐标系映射到正视图后的图像坐标(coln,rown),其中,点云点在三维坐标系中的坐标为(xn,yn,zn):
[0117] , 。
[0118] 在S270中,对该二维图像进行第二栅格化处理,将第一类型点云点像素划分到该二维图像对应的第二栅格阵列中的第一类型栅格中,将第二类型点云点像素划分到第二栅格阵列中的第二类型栅格中。
[0119] 一些实施例中,第二待处理地面点云子集中的点云点和第一地面点云子集中的点云点具有不同的子集分类标签,第二栅格阵列中的各个栅格具有标识数据,可以将各点云点的坐标与该点云点对应的点云点像素坐标、子集分类标签以及在第二栅格阵列中的对应栅格的标识数据进行关联存储。
[0120] 可以理解的,第一栅格阵列中的栅格与第二栅格阵列中的栅格大小相同或不同。
[0121] 在S280中,根据每个第一类型栅格中的第一类型点云点像素数据,获得该第一类型栅格的第二特征的特征值;根据与第一类型栅格邻近的第二类型栅格中的第二类型点云点像素数据,获得该邻近的第二类型栅格的第二特征的特征值。
[0122] 一些实施例中,一个第一类型栅格的第二特征包括该第一类型栅格中的第一类型点云点像素的数量。一个第二类型栅格的第二特征包括该第二类型栅格中的第二类型点云点像素的数量。
[0123] 一些实施例中,与一个第一类型栅格邻近的第二类型栅格可以是与该第一类型栅格距离最近的第二类型栅格。
[0124] 在S290中,根据第一类型栅格的第二特征的特征值和邻近的第二类型栅格的第二特征的特征值,判断所述第一类型栅格是否与邻近的第二类型栅格相匹配,若匹配,将第一类型栅格中的第一类型点云点像素对应的点云点划分到第二地面点云子集,若不匹配,将第一类型栅格中的第一类型点云点像素对应的点云点划分到第二非地面点云子集。
[0125] 一些实施例中,第一类型栅格是否与邻近的第二类型栅格相匹配例如可以是第一类型栅格的第二特征的特征值和邻近的第二类型栅格的第二特征的特征值的差异在预设范围内。
[0126] 一些实施例中,从第二待处理地面点云子集中获得的第二地面点云子集可以是稀疏地面点云子集,即通过S260至S290中对第二待处理地面点云子集的处理,可以将第二待处理地面点云子集中的稀疏地面点云提取出来。
[0127] 在S300中,根据第一非地面点云子集和第二非地面点云子集,获得点云采集数据中的目标非地面点云数据集合;根据第一地面点云子集和第二地面点云子集,获得点云采集数据中的目标地面点云数据集合。
[0128] 一实施例中,可以将S250获得的稠密地面点云子集和S290获得的稀疏地面点云子集合并取并集,获得当前帧的点云采集数据中的目标地面点云数据集合。
[0129] 一实施例中,可以将S210中获得的第一非地面点云子集和S290获得的第二非地面点云子集合并取并集,获得当前帧的点云采集数据中的目标非地面点云数据集合。
[0130] 一些实施例的点云数据处理方法还包括:对目标非地面点云数据集合中的点云点进行障碍物识别处理。在本申请实施例中,可将先地面点云点(也即目标地面点云数据集合中的点云点)从点云采集数据中分割出来,对点云采集数据中的非地面点云点进行障碍物识别处理,由于能够更加准确地将地面点云过滤掉,可以提高障碍物识别的准确性。
[0131] 本申请实施例的方法可应用于计算设备。图3是本申请一实施例的计算设备的结构示意图。参见图3,计算设备400包括至少一个存储器401和至少一个处理器402。
[0132] 处理器402可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field‑Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0133] 存储器401可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM)和永久存储装置。其中,ROM可以存储处理器402或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器401可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(例如DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器401可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD‑ROM,双层DVD‑ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro‑SD卡等)、磁性软盘等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
[0134] 存储器401上存储有可执行代码,当可执行代码被处理器402处理时,可以使处理器402执行上文述及的方法中的部分或全部。
[0135] 本申请还提供一种飞行装置,包括如上所述的计算设备。飞行装置例如可以是无人飞行器、载人飞行器等。载人飞行器例如可以是电动载人飞行器、飞行汽车等。
[0136] 此外,根据本申请的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本申请的上述方法中部分或全部步骤的计算机程序代码指令。
[0137] 或者,本申请还可以实施为一种计算机可读存储介质(或非暂时性机器可读存储介质或机器可读存储介质),其上存储有可执行代码(或计算机程序或计算机指令代码),当可执行代码(或计算机程序或计算机指令代码)被飞行器(或服务器等)的处理器执行时,使处理器执行根据本申请的上述方法的各个步骤的部分或全部。
[0138] 以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施例。