点云数据标注、分割模型确定、目标检测方法及相关设备论文和设计-曾钰廷

全文摘要

本申请涉及一种点云数据标注、分割模型确定、目标检测方法及相关设备。所述标注方法包括获取激光雷达采集的原始点云数据;将原始点云数据投影到二维图后,基于二维图获取各目标标注信息;通过已训练目标检测模型对原始点云数据进行检测,确定检测到的目标检测信息;基于对应的目标类别置信度,采用目标检测信息修正目标标注信息,获得原始点云数据的目标检测数据集,目标检测数据集包括各目标的位置信息和目标类别。采用本方法能够快速准确地进行标注。

主设计要求

1.一种点云数据标注方法,所述方法包括:获取激光雷达采集的原始点云数据;将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的各目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;若所述对应的目标类别置信度大于或者等于置信度阈值,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别。

设计方案

1.一种点云数据标注方法,所述方法包括:

获取激光雷达采集的原始点云数据;

将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的各目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

若所述对应的目标类别置信度大于或者等于置信度阈值,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别。

2.根据权利要求1所述的方法,其特征在于,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别,包括:

获取在所述二维图中的选定目标框的位置信息;

基于所述选定目标框的位置信息,确定所述选定目标框对应的目标的第一目标类别;

根据所述选定目标框的位置信息,或者根据所述选定目标框的位置信息以及所述第一目标类别,确定第一目标位置信息。

3.根据权利要求2所述的方法,其特征在于,所述选定目标框的位置信息包括所述选定目标框的尺寸信息;基于所述选定目标框的位置信息,确定所述选定目标框对应的目标的第一目标类别,包括:

基于所述选定目标框的尺寸信息所在的预设尺寸范围,将所在的预设尺寸范围对应的目标类别,确定为所述选定目标框对应的目标的第一目标类别。

4.根据权利要求1至3任意一项所述的方法,其特征在于,获得所述原始点云数据的目标检测数据集之后,还包括:根据所述原始点云数据以及所述目标检测数据集,获得所述原始点云数据的点云分割数据集,所述点云分割数据集包括各点云数据的点云类别。

5.根据权利要求4所述的方法,其特征在于,根据所述原始点云数据以及所述目标检测数据集,获得所述原始点云数据的点云分割数据集,包括:

将各目标的目标类别,确定为与该目标的位置信息对应的各点云数据的类别,获得各点云数据的检测类别;

采用已训练分割模型对所述原始点云数据进行分割处理,获得各所述点云数据的标注类别以及对应的标注类别置信度;

基于所述标注类别置信度,采用所述点云数据的标注类别修正对应的所述点云数据的检测类别,获得所述原始点云数据的点云分割数据集,所述点云分割数据集包括各点云数据的点云类别。

6.根据权利要求5所述的方法,其特征在于,基于所述标注类别置信度,采用所述点云数据的标注类别修正对应的所述点云数据的检测类别,获得所述原始点云数据的点云分割数据集,包括:

若所述点云数据的标注类别置信度大于或者等于标注类别置信度阈值,用所述点云数据的标注类别修正对应的所述点云数据的检测类别,获得所述原始点云数据的点云分割数据集。

7.一种点云数据分割模型的确定方法,所述方法包括:

获取激光雷达采集的原始点云数据,以及与所述原始点云数据对应的点云分割数据集;

基于所述原始点云数据以及所述点云分割数据集对待训练分割模型进行训练,获得训练后的点云数据分割模型;

与所述原始点云数据对应的点云分割数据集的获取方式包括:

将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的各目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

若所述对应的目标类别置信度大于或者等于置信度阈值,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别;

根据所述原始点云数据以及所述目标检测数据集,获得所述原始点云数据的点云分割数据集,所述点云分割数据集包括各点云数据的点云类别。

8.根据权利要求7所述的方法,其特征在于,基于所述原始点云数据以及所述点云分割数据集对待训练分割模型进行训练,获得训练后的点云数据分割模型,包括:

根据所述激光雷达的线束数量和每条所述线束的点云数据个数,对所述原始点云数据进行排序;

获取排序后的各点云数据的特征信息,基于所述特征信息生成网络输入数据,所述特征信息包括:点云到所述激光雷达的距离、点云到所述激光雷达的角度、点云的反射强度以及点云的三维坐标;

采用待训练分割模型对所述网络输入数据进行处理,获得各点云数据的预测类别信息,所述预测类别信息包括预测类别以及对应的预测类别概率;

将所述点云分割数据集中的各点云数据的点云类别作为标签类别,基于所述标签类别、所述预测类别信息以及损失函数,确定所述预测类别的损失值;

在不满足模型训练结束条件时,基于所述损失值更新所述待训练分割模型,返回采用待训练分割模型对所述网络输入数据进行处理的步骤,直至达到模型训练结束条件,并将最后一次更新后的所述待训练分割模型,作为所述训练后的点云数据分割模型。

9.根据权利要求8所述的方法,其特征在于,所述损失函数基于第一损失函数和第二损失函数确定;

所述第一损失函数基于第一损失值与类别权重确定;所述第一损失值为所述预测类别相对于所述标签类别的损失值;所述类别权重基于类别数量占比确定,所述类别数量占比为相应的类别的数量在所有类别数量中的占比;

所述第二损失函数基于所述预测类别和所述标签类别的交并比确定。

10.一种基于点云数据分割的目标检测方法,所述方法包括:

采用如权利要求7至9中任一项获得的点云数据分割模型,对待分割点云数据进行分割,获得各点云数据的类别;

根据各所述点云数据的位置信息以及类别,对各所述点云数据进行聚类,获得目标检测结果。

11.根据权利要求10所述的方法,其特征在于,

根据各所述点云数据的位置信息以及类别,对各所述点云数据进行聚类,获得目标检测结果,包括下述两项中的至少一项:

第一项:

将所述点云数据投影到二维平面,获得二维目标栅格;

基于各二维目标栅格中点云数据的类别,确定所述二维目标栅格的类别;

基于各所述二维目标栅格之间的距离以及各所述二维目标栅格的类别,进行点云聚类;

第二项:

将所述点云数据投影到三维空间;

基于各所述点云数据之间的欧式距离以及所述点云数据的类别,进行点云聚类。

12.一种点云数据标注装置,其特征在于,所述装置包括:

原始点云数据获取模块,用于获取激光雷达采集的原始点云数据;

目标标注信息获取模块,用于将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

目标检测信息确定模块,用于通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

目标检测数据集确定模块,用于若所述对应的目标类别置信度大于或者等于置信度阈值,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别。

13.一种点云数据分割模型的确定装置,其特征在于,所述装置包括:

原始点云数据获取模块,用于获取激光雷达采集的原始点云数据;

点云分割数据集获取模块,用于获取与所述原始点云数据对应的点云分割数据集;

模型训练模块,用于基于所述原始点云数据以及所述点云分割数据集对待训练分割模型进行训练,获得训练后的点云数据分割模型;

所述点云分割数据集获取模块包括:

目标标注信息获取子模块,用于将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

目标检测信息确定子模块,用于通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

目标检测数据集确定子模块,用于若所述对应的目标类别置信度大于或者等于置信度阈值,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别;

点云分割数据集确定子模块,用于根据所述原始点云数据以及所述目标检测数据集,获得所述原始点云数据的点云分割数据集,所述点云分割数据集包括各点云数据的点云类别。

14.一种基于点云数据分割的目标检测装置,其特征在于,所述装置包括:

原始点云数据获取模块,用于获取激光雷达采集的原始点云数据;

点云分割数据集获取模块,用于获取与所述原始点云数据对应的点云分割数据集;

模型训练模块,用于基于所述原始点云数据以及所述点云分割数据集对待训练分割模型进行训练,获得训练后的点云数据分割模型;

分割模块,用于采用所述点云数据分割模型,对待分割点云数据进行分割,获得各点云数据的类别;

聚类模块,根据各所述点云数据的位置信息以及类别,对各所述点云数据进行聚类,获得目标检测结果;

所述点云分割数据集获取模块包括:

目标标注信息获取子模块,用于将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

目标检测信息确定子模块,用于通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

目标检测数据集确定子模块,用于若所述对应的目标类别置信度大于或者等于置信度阈值,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别;

点云分割数据集确定子模块,用于根据所述原始点云数据以及所述目标检测数据集,获得所述原始点云数据的点云分割数据集,所述点云分割数据集包括各点云数据的点云类别。

15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至11中任一项所述方法的步骤。

16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。

设计说明书

技术领域

本申请涉及点云数据的处理技术领域,特别是涉及一种点云数据标注、分割模型确定、目标检测方法及相关设备。

背景技术

激光雷达作为一种重要的环境感知传感器,广泛应用于车辆自动驾驶领域。激光雷达获取的点云数据包含了各种目标信息,可用于障碍物检测。障碍物检测时所用模型在进行训练时,一般需要使用标注过的点云数据作为训练样本,以优化障碍物检测算法。目前的点云数据标注方法通常在三维立体空间中对点云数据进行手工标注,存在效率低、标注结果不准确的问题。

发明内容

基于此,有必要针对上述技术问题,提供一种点云数据标注、分割模型确定、目标检测方法及相关设备。

一种点云数据标注方法,所述方法包括:

获取激光雷达采集的原始点云数据;

将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

基于所述对应的目标类别置信度,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别。

一种点云数据分割模型的确定方法,所述方法包括:

获取激光雷达采集的原始点云数据,以及与所述原始点云数据对应的点云分割数据集;

基于所述原始点云数据以及所述点云分割数据集对待训练分割模型进行训练,获得训练后的点云数据分割模型;

与所述原始点云数据对应的点云分割数据集的获取方式包括:

将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的各目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

基于所述对应的目标类别置信度,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别;

根据所述原始点云数据以及所述目标检测数据集,获得所述原始点云数据的点云分割数据集,所述点云分割数据集包括各点云数据的点云类别。

一种基于点云数据分割的目标检测方法,所述方法包括:

获取激光雷达采集的原始点云数据,以及与所述原始点云数据对应的点云分割数据集;

基于所述原始点云数据以及所述点云分割数据集对待训练分割模型进行训练,获得训练后的点云数据分割模型;

采用所述点云数据分割模型,对待分割点云数据进行分割,获得各点云数据的类别;

根据各所述点云数据的位置信息以及类别,对各所述点云数据进行聚类,获得目标检测结果;

与所述原始点云数据对应的点云分割数据集的获取方式包括:

将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的各目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

基于所述对应的目标类别置信度,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别;

根据所述原始点云数据以及所述目标检测数据集,获得所述原始点云数据的点云分割数据集,所述点云分割数据集包括各点云数据的点云类别。

一种点云数据标注装置,所述装置包括:

原始点云数据获取模块,用于获取激光雷达采集的原始点云数据;

目标标注信息获取模块,用于将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

目标检测信息确定模块,用于通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

目标检测数据集确定模块,用于基于所述对应的目标类别置信度,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别。

一种点云数据分割模型的确定装置,所述装置包括:

原始点云数据获取模块,用于获取激光雷达采集的原始点云数据;

点云分割数据集获取模块,用于获取与所述原始点云数据对应的点云分割数据集;

模型训练模块,用于基于所述原始点云数据以及所述点云分割数据集对待训练分割模型进行训练,获得训练后的点云数据分割模型;

所述点云分割数据集获取模块包括:

目标标注信息获取子模块,用于将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

目标检测信息确定子模块,用于通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

目标检测数据集确定子模块,用于基于所述对应的目标类别置信度,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别;

点云分割数据集确定子模块,用于根据所述原始点云数据以及所述目标检测数据集,获得所述原始点云数据的点云分割数据集,所述点云分割数据集包括各点云数据的点云类别。

一种基于点云数据分割的目标检测装置,所述装置包括:

原始点云数据获取模块,用于获取激光雷达采集的原始点云数据;

点云分割数据集获取模块,用于获取与所述原始点云数据对应的点云分割数据集;

模型训练模块,用于基于所述原始点云数据以及所述点云分割数据集对待训练分割模型进行训练,获得训练后的点云数据分割模型;

分割模块,用于采用所述训练后的点云数据分割模型,对待分割点云数据进行分割,获得各点云数据的类别;

聚类模块,用于根据各所述点云数据的位置信息以及类别,对各所述点云数据进行聚类,获得目标检测结果;

所述点云分割数据集获取模块包括:

目标标注信息获取子模块,用于将所述原始点云数据投影到二维图后,基于所述二维图获取各目标标注信息,所述目标标注信息包括:第一目标位置信息以及第一目标类别;

目标检测信息确定子模块,用于通过已训练目标检测模型对所述原始点云数据进行检测,确定检测到的目标检测信息,所述目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度;

目标检测数据集确定子模块,用于基于所述对应的目标类别置信度,采用所述目标检测信息修正所述目标标注信息,获得所述原始点云数据的目标检测数据集,所述目标检测数据集包括各目标的位置信息和目标类别;

点云分割数据集确定子模块,用于根据所述原始点云数据以及所述目标检测数据集,获得所述原始点云数据的点云分割数据集,所述点云分割数据集包括各点云数据的点云类别。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述各方法中的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述各方法中的步骤。

附图说明

图1为一个实施例中点云数据标注方法的应用环境图;

图2为一个实施例中点云数据标注方法的流程示意图;

图3为一个实施例中OpenGL下的三维点云的二维俯视图;

图4为一个实施例中OpenGL下设定高度阈值的三维点云俯视图;

图5为一个实施例中OpenGL下应用于二维标注的三维点云俯视图;

图6为一个实施例中OpenGL窗口对应的点云数据坐标轴方向图;

图7为一个实施例中二维标注的示意图;

图8为一个实施例中点云分割数据集的标注方法的流程示意图;

图9为一个实施例中三个数据集的标注框架示意图;

图10为一个实施例中点云数据分割模型的确定方法的流程示意图;

图11为一个实施例中点云数据分割模型的训练框架示意图;

图12为一个实施例中点云数据分割模型的训练方法的流程示意图;

图13为一个实施例中网络输入数据的获取示意图;

图14为一个实施例中分割卷积神经网络的结构示意图;

图15为一个实施例中基于点云数据分割的目标检测方法的框架示意图;

图16为一个实施例中二维目标栅格图的示意图;

图17为一个实施例中基于点云数据分割的目标检测方法的检测效果图;

图18为一个实施例中点云数据标注装置的结构框图;

图19为一个实施例中点云数据分割模型的确定装置的结构框图;

图20为一个实施例中基于点云数据分割的目标检测装置的结构框图;

图21为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的点云数据标注方法,可以应用于如图1所示的应用环境中。该应用环境涉及车辆自动驾驶系统中的工控机和激光雷达。工控机获取激光雷达采集的原始点云数据,对原始点云数据进行二维标注获得目标标注信息,利用已训练目标检测模型对原始点云数据进行检测获得目标检测信息,然后基于模型检测置信度,采用目标检测信息对目标标注信息进行修正,获得目标检测数据集。

在一个实施例中,如图2所示,提供了一种点云数据标注方法,以该方法应用于图1中的工控机为例进行说明,包括以下步骤S202至步骤S204。

S201,获取激光雷达采集的原始点云数据。

其中,激光雷达可以是16线,32线,40线或64线等主流的激光雷达设备,其放置在车辆上方。激光雷达点云坐标正前方为X轴方向,左边为Y轴方向,正上方为Z轴方向。

在一个实施例中,在乌班图系统(ubuntu)中的机器人软件平台(ros)环境下,连接激光雷达设备,录制激光雷达数据的数据包,并保存激光雷达数据至硬盘,然后把连续的激光雷达数据转化为点云数据(PCD),从相邻的5帧数据中采集一帧数据,组成需要标注的原始点云数据。

在一个实施例中,可以针对自动驾驶不同场景的应用,分别采集高速路段和城区路段相关的自动驾驶的场景数据,场景中包含了大量的轿车,卡车,行人,骑行的人以及未知类别的目标。

S202,将原始点云数据投影到二维图后,基于二维图获取各目标标注信息,目标标注信息包括:第一目标位置信息以及第一目标类别。

获取每帧的点云数据,相应地可以获取每帧点云数据中每个点云的三维坐标(xi<\/sub>,yi<\/sub>, z i<\/sub>)。在一个实施例中,可以利用开放图形库(OpenGL)进行可视化,将原始点云数据显示在OpenGL的三维坐标系下,可以得到对应的二维图下的点云分布图。其中,二维图可以是二维俯视图或二维前视图。具体地,如图3所示,其为OpenGL下的三维点云的二维俯视图,从中可以看到点云的分布情况,包括地面点分布以及车辆点云分布,其中每个白色的点代表一个点云数据。

在一个实施例中,为了更准确地进行标注,可以选取设定高度的点云数据,得到如图4所示的点云分布情况。其中,设定高度可以是设定高度范围或者设定高度阈值。在一个实施例中,还可以去除地面点,得到如图5所示的点云分布情况,从而减少了点云数量,更有利于标注数据,得到清晰可见的目标位置信息。由于激光雷达设备录制的数据,正前方为X轴,所以在OpenGL窗口的俯视图中的点云数据的坐标轴方向如图6所示,目标位置可以由图中A、B两点确定。

在一个实施例中,基于二维俯视图获取目标标注信息的过程如下:获取在二维俯视图中的选定目标框的位置信息;基于选定目标框的位置信息,确定选定目标框对应的目标的第一目标类别;根据选定目标框的位置信息,或者根据选定目标框的位置信息以及第一目标类别,确定第一目标位置信息。

其中,选定目标框可以由用户通过鼠标操作来框定。具体地,如图7所示,用户可以先点击鼠标左键,选择目标的右上顶点A,再拖动鼠标,选择目标的左下顶点B,然后松开鼠标,完成一个目标的框定。在其它实施例中,目标框的选定还可以采用其它的鼠标操作方式,例如先选择目标的左上顶点再选择目标的右下顶点,或者先选择目标的左下顶点再选择目标的右上顶点,或者先选择目标的右下顶点再选择目标的左上顶点。

选定目标框后,由于是在OpenGL窗口的俯视图下进行鼠标选点操作,所以选点的高度(z)不确定,但是(x, y)坐标是准确的,基于目标框所选顶点的二维坐标计算目标框的尺寸信息,目标框的尺寸信息可以是目标框的长度、宽度、长宽比中的一种或几种的组合,基于目标框的尺寸信息,可以初步估算出目标的类别以及高度信息。

具体地,基于目标框的尺寸信息所在的预设尺寸范围,将所在的预设尺寸范围对应的目标类别,确定为目标框对应的目标的类别。例如,目标框的左下顶点B的坐标为(left_x, left_y),右上顶点A的坐标为(right_x, right_y)。在一个实施例中,若right_x-left_x大于3米且小于8米,认为目标类别为轿车(car),且高度(z)为1.6米。在一个实施例中,若right_x-left_x大于8米,认为目标类别为卡车(truck),且高度为2米。

从而,通过目标框的二维坐标,可以获得初步的目标标注信息,初步的目标标注信息包括第一目标位置信息以及与第一目标位置信息对应的第一目标类别,目标位置信息可以包括目标的长度、宽度、高度和中心点三维坐标。这里的第一目标位置信息和第一目标类别,仅仅是为了与下述通过已训练目标检测模型获得的目标位置信息和目标类别相区分,将此时初步的目标标注信息中的目标位置信息和目标类别分别命名为第一目标位置信息和第一目标类别。

在一个实施例中,在标注的同时,可以利用点云库查看器(pcl_viewer)工具进行辅助,来查看三维空间中各个角度的原始的三维点云分布图。

为了后续模型训练的方便,可以将原始点云数据(PCD)保存到二进制文件(bin)中,将标注的目标框的A(right_x, right_y, z)、B(left_x, left_y, z)和类别(category)保存到文本文件(txt)中。

S203,通过已训练目标检测模型对原始点云数据进行检测,确定检测到的各目标检测信息,目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度。

在一个实施例中,利用训练好的VoxelNet模型对原始点云数据进行检测,得到目标的第二目标位置信息、第二目标类别以及对应的目标类别置信度。在一个实施例中,目标类别置信度可以是目标位置对应的类别的置信度,在检测模型输出的结果中,每个目标位置都对应着它属于不同类别的置信度,比如对于一个目标,其类别为car的置信度为0.9,其类别为truck的置信度为0.1。

S204,基于对应的目标类别置信度,采用目标检测信息修正目标标注信息,获得原始点云数据的目标检测数据集,目标检测数据集包括各目标的位置信息和目标类别。

通过二维手工标注获得的初步的目标标注信息通常会存在标注噪声,为了提高标注准确度,采用模型检测获得的目标检测信息对目标标注信息进行修正。具体地,将检测模型获得的目标检测信息与目标标注信息进行对比,如果两者有差异,且目标检测信息的置信度大于或等于置信度阈值,则修正目标标注信息。

在一个实施例中,若一目标位置对应的目标类别置信度均小于置信度阈值(如0.9),不对目标标注信息进行修正。具体地,以第一目标位置信息作为对应的目标的位置信息,以第一目标类别作为对应的目标的目标类别。

在一个实施例中,若一目标位置对应的目标类别置信度存在大于或者等于置信度阈值(如0.9)的检测结果,认为该结果可靠,采用目标检测信息对目标标注信息进行修正。具体地,以第二目标位置信息替换第一目标位置信息,作为对应的目标的位置信息,以该大于或者等于置信度阈值的目标类别置信度对应的第二目标类别替换第一目标类别,作为对应的目标的目标类别。

在一个实施例中,在获得目标检测数据集后,可以直接从检测数据集中获取目标的三维坐标。利用原始点云数据以及标注的检测数据集,通过遍历每帧的目标位置信息,保存相应类别的点云数据。具体地,在目标检测数据集上,对每帧标注的目标位置进行遍历,并保存目标框内的点云数据到二进制文件(bin)中,则完成了目标分类数据集的标注。

在一个实施例中,在获得目标检测数据集后,还可进一步基于根据原始点云数据以及目标检测数据集,获得原始点云数据的点云分割数据集,点云分割数据集包括各点云数据的点云类别。

在一个实施例中,如图8所示,在获得目标检测数据集后,进一步包括以下步骤S205至步骤S207。

S205,将各目标的目标类别,确定为与该目标的位置信息对应的各点云数据的类别,获得各点云数据的检测类别。

通过遍历目标框内的点云数据进行点云数据的标注,可以获取每个点云数据的检测类别,初步完成分割数据集的标注。这里的点云数据的检测类别,仅仅是为了与下述通过已训练分割模型获得的点云数据的标注类别相区分,将此时初步分割获得的点云类别命名为点云数据的检测类别。相应的分割数据集中每个点云数据包含了(x, y, z, i,category)5维的信息,(x, y, z)表示三维坐标,i表示反射强度,category表示类别。

S206,采用已训练分割模型对原始点云数据进行分割处理,获得各点云数据的标注类别以及对应的标注类别置信度。

在一个实施例中,通过训练好的PointNet分割模型得到每帧中的三维点云的标注类别以及与标注类别对应的置信度,每个点云可以对应多个类别,每个类别对应一个置信度,比如对于一个点云,其类别为car的置信度为0.9,其类别为truck的置信度为0.1。

S207,基于标注类别置信度,采用点云数据的标注类别修正对应的点云数据的检测类别,获得原始点云数据的点云分割数据集,点云分割数据集包括各点云数据的点云类别。

初步获得的分割数据集通常还是会存在标注噪声,为了提高标注准确度,通过分割模型获得各点云数据的标注类别以及对应的标注类别置信度,然后与初步的分割数据集进行逐点遍历,修正初步的分割数据集中点云数据的检测类别。

在一个实施例中,若一点云位置对应的标注类别置信度均小于置信度阈值(如0.9),不对点云数据的检测类别进行修正。具体地,以点云数据的检测类别作为对应的点云数据的点云类别。

在一个实施例中,若一目点云位置对应的标注类别置信度存在大于或者等于置信度阈值(如0.9)的标注结果,认为该结果可靠,采用标注类别对检测类别进行修正。具体地,以该大于或者等于置信度阈值的标注类别置信度对应的点云数据的标注类别替换检测类别,作为对应的点云数据的点云类别。

上述实施例通过对原始点云数据进行二维目标手工标注,结合模型算法修正,能够同时获得三个数据集,即目标检测数据集、目标分类数据集和点云分割数据集。在一个实施例中,三个数据集的标注框架示意图如图9所示,其中,目标检测数据集的标注流程如下:先获取每帧PCD格式的原始点云数据,利用OpenGL将原始点云数据可视化,获取二维图中手工标注的各目标标注信息;再采用检测模型对原始点云数据进行检测,获得各目标检测信息;然后利用目标检测信息对目标标注信息进行修正,获得目标检测数据集。目标分类数据集的标注流程如下:获得目标检测数据集之后,通过遍历目标位置信息,保存目标内的点云数据,获得目标分类数据集。点云分割数据集的标注流程如下:获得目标检测数据集之后,通过遍历各目标内各点云数据的位置信息,获得每个点云数据的检测类别;再采用分割模型对原始点云数据进行分割,获得各点云数据的标注类别;然后利用点云数据的标注类别对检测类别进行修正,获得点云分割数据集。

上述点云数据标注方法,通过OpenGL对三维点云进行可视化,在OpenGL窗口的二维图下,通过滤波处理能够快速得到更干净的标注场景,同时利用人机交互能够快速地进行目标的二维手工标注,通过设定的高度阈值以及二维手工标注结果,可以简单有效地获得目标初步的三维位置信息和类别。进一步地,利用已经训练好的模型获得的大于或者等于置信度阈值的结果修正手工标注结果,能够减少手工标注的错误,同时降低手工标注的复杂度,从而提高标注准确度和标注效率。

在一个实施例中,如图10所示,提供了一种点云数据分割模型的确定方法,以该方法应用于图1中的工控机为例进行说明,包括以下步骤S1010至步骤1030:

S1010,获取激光雷达采集的原始点云数据。

S1020,获取与原始点云数据对应的点云分割数据集。

在一个实施例中,获取与原始点云数据对应的点云分割数据集,包括以下步骤S1021至步骤S1024。

S1021,将原始点云数据投影到二维图后,基于二维图获取各目标标注信息,目标标注信息包括:第一目标位置信息以及第一目标类别。对于步骤S1021的具体限定可以参见上文中对于步骤S202的限定。

S1022,通过已训练目标检测模型对原始点云数据进行检测,确定检测到的各目标检测信息,目标检测信息包括:第二目标位置信息、第二目标类别以及对应的目标类别置信度。对于步骤S1022的具体限定可以参见上文中对于步骤S203的限定。

S1023,基于对应的目标类别置信度,采用目标检测信息修正目标标注信息,获得原始点云数据的目标检测数据集,目标检测数据集包括各目标的位置信息和目标类别。对于步骤S1023的具体限定可以参见上文中对于步骤S204的限定。

S1024,根据原始点云数据以及目标检测数据集,获得原始点云数据的点云分割数据集,点云分割数据集包括各点云数据的点云类别。对于步骤S1023的具体限定可以参见上文中对于步骤S205至步骤S207的限定。

S1030,基于原始点云数据以及点云分割数据集对待训练分割模型进行训练,获得训练后的点云数据分割模型。

在一个实施例中,点云数据分割模型的训练框架如图11所示,训练流程如图12所示,包括以下步骤S1201至步骤S1205。

S1201,根据激光雷达的线束数量和每条线束的点云数据个数,对原始点云数据进行排序。

S1202,获取排序后的各点云数据的特征信息,基于特征信息生成网络输入数据,特征信息包括:点云到激光雷达的距离、点云到激光雷达的角度、点云的反射强度以及点云的三维坐标。

在一个实施例中,网络输入数据的获取示意图如图13所示。原始点云数据是(x,y, z, i)的无序数据,按照激光雷达设备(Lidar)的水平和垂直分辨率对原始点云数据进行重新排序,H表示每条线束的点云个数,W表示激光雷达设备的线束数量,其中每帧的点云数量N=H*W。如使用32线的激光雷达设备,H=1875,W=32。

获得排序后的H*W个点云数据后,通过获取每个点云的特征信息得到初步描述点云数据的特征图。具体地,特征信息包括以下6个特征:点云到激光雷达原点设备的距离(range)、点云到激光雷达原点设备的角度(angle)、点云的反射强度(intensity)、点云的x坐标、点云的y坐标以及点云的z坐标,其中,angle= arctan(x\/y)。基于特征信息可以得到H*W*C的网络输入数据,其中C表示特征数目,在该实施例中,C=6。

相比于俯视图栅格化,重新排列点云数据的方法保留了所有的点云信息,通过网络能够逐点的进行类别预测,而且没有增加输入特征图的大小,网络的参数量也没有增加,这样运行速度更快。在输入特征图中利用了点云到激光雷达设备的距离和角度的信息,这样增强了点云的信息量,保证了目标的结构性和角度性的特征,从而更有利于学习到目标的信息。

S1203,采用待训练分割模型对网络输入数据进行处理,获得各点云数据的预测类别信息,预测类别信息包括预测类别以及对应的预测类别概率。

在一个实施例中,待训练分割模型采用分割卷积神经网络,分割卷积神经网络是在全卷积网络(FCN)的基础上,去除了池化层(Pooling),并且将普通的卷积层改为空洞卷积层而获得,其结构示意图如图14所示,分割卷积神经网络结构包括多层空洞卷积层和多层空洞反卷积层,多层空洞卷积层和多层空洞反卷积层相对设置,空洞卷积层和空洞反卷积层的层数相同,每层空洞卷积层与对应的一层空洞反卷积层连接。具体地,分割卷积神经网络结构沿输入至输出方向,依次包括M层空洞卷积层(第1,2,3……M层空洞卷积层依次排列)和M层空洞反卷积层(第1,2,3……M层空洞反卷积层依次排列)。第M层空洞卷积层与第1层空洞反卷积层连接,第M-1层空洞卷积层与第2层空洞反卷积层连接,第M-2层空洞卷积层与第3层空洞反卷积层连接,以此类推,实现跨层连接。

向分割卷积神经网络输入网络输入数据(H*W*C),经处理后,模型输出为H*W*L,L表示类别数目,再经过归一化指数函数(Softmax)后输出H*W*l, l表示点云预测类别。

通过去除池化层,利用空洞卷积来进行点云操作,可以扩大感受野的范围,学习到相邻点的信息。针对激光雷达设备的规则性排列的数据,利用跨层连接和空洞卷积能够更好地描述点云的特征,学习到更多的点云信息,提高模型的鲁棒性。

S1204,将点云分割数据集中的各点云数据的点云类别作为标签类别,基于标签类别、预测类别信息以及损失函数,确定预测类别的损失值。

S1205,在不满足模型训练结束条件时,基于损失值更新待训练分割模型,返回步骤S1203,直至达到模型训练结束条件,并将最后一次更新后的待训练分割模型,作为训练后的点云数据分割模型。

在一个实施例中,可以认为当损失值小于预设值时,满足模型训练结束条件,也可以认为当训练次数达到预设次数时,满足模型训练结束条件。

由于获取的W*H*C的输入特征图中通常存在大量的背景,而且类别分布不均衡,分割卷积神经网络很容易学习到背景的点云,因此可以应用组合的损失函数,让pixel_loss学习每个点云的类别,让object_loss学习更多的目标的点云,忽略背景的目标。

具体地,pixel_loss的计算公式如下:

其中,n表示一点云的预测类别的个数,f(zi<\/sub>)表示Softmax输出向量的第i个,Softmax输出向量的每个值表示一点云属于每个预测类别的概率,只有当预测类别和标签类别(label)相同时,yi<\/sub>=1,否则yi<\/sub>=0,f(zk<\/sub>)表示预测类别和标签类别相同时的概率,-logf(zk<\/sub>)表示预测类别相对于标签类别的损失值。

进一步地,对不同类别的数据进行加权计算,权重可以根据类别数量确定,使得类别数量少的数据获得较大的损失函数。具体地,加权后的pixel_loss的计算公式如下:

其中,weighting表示类别权重,可以通过遍历数据集中某一类别的个数,获取该类别对应的权重。在一个实施例中,weighting的计算公式如下:

其中,freq表示某一类别个数在所有类别个数中的占比。

在一个实施例中,object_loss的计算公式如下:

其中,i从1到N,N表示预测的点云个数,设计图

点云数据标注、分割模型确定、目标检测方法及相关设备论文和设计

相关信息详情

申请码:申请号:CN201910746522.9

申请日:2019-08-14

公开号:CN110264468A

公开日:2019-09-20

国家:CN

国家/省市:43(湖南)

授权编号:CN110264468B

授权时间:20191119

主分类号:G06T 7/10

专利分类号:G06T7/10;G06K9/62

范畴分类:40B;

申请人:长沙智能驾驶研究院有限公司

第一申请人:长沙智能驾驶研究院有限公司

申请人地址:410006 湖南省长沙市岳麓区学士路336号湖南省检验检测特色产业园内A3、A4栋

发明人:曾钰廷;徐琥

第一发明人:曾钰廷

当前权利人:长沙智能驾驶研究院有限公司

代理人:黄晓庆

代理机构:44224

代理机构编号:广州华进联合专利商标代理有限公司 44224

优先权:关键词:当前状态:审核中

类型名称:外观设计

标签:;  ;  ;  ;  ;  

点云数据标注、分割模型确定、目标检测方法及相关设备论文和设计-曾钰廷
下载Doc文档

猜你喜欢