CN112287860A - 物体识别模型的训练方法及装置、物体识别方法及系统 - Google Patents
物体识别模型的训练方法及装置、物体识别方法及系统 Download PDFInfo
- Publication number
- CN112287860A CN112287860A CN202011212680.5A CN202011212680A CN112287860A CN 112287860 A CN112287860 A CN 112287860A CN 202011212680 A CN202011212680 A CN 202011212680A CN 112287860 A CN112287860 A CN 112287860A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- anchor
- training
- top view
- object recognition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/56—Extraction of image or video features relating to colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Probability & Statistics with Applications (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本公开涉及一种物体识别模型的训练方法及装置、物体识别方法及系统。物体识别模型的训练方法包括:获取训练集,训练集包括激光雷达采集的物体的点云标注数据集,点云标注数据集带有真值边界框;根据点云标注数据集,生成俯视图;利用特征提取器,从俯视图提取多个不同分辨率的特征图;确定锚框的尺寸及其在特征图上的位置;以特征图的每个像素为中心,生成不同尺寸的锚框,尺寸包括大小和宽高比;在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配,以确定锚框的样本类型;基于不同样本类型的锚框对卷积神经网络的损失函数的贡献,训练物体识别模型。
Description
技术领域
本公开涉及计算机技术领域,特别涉及一种物体识别模型的训练方法及装置、物体识别方法及系统,和计算机可读存储介质。
背景技术
在自动驾驶或机器人应用中,自动驾驶车辆或机器人配备了各种不同的传感器,例如LiDAR、相机、超声波等。这些传感器作为感知系统,用于检测和识别场景中的各种障碍物,并估计障碍物的各种属性,包括位置、大小(如长度、宽度和高度)、方向(如滚转、俯仰、偏航)和类别(如行人、汽车等)等。这些障碍物的属性进一步用于交通导航的移动决策(如加速、减速、左/右转弯等)。
在自动驾驶或者机器人应用中,激光雷达广泛用于检测和识别不同场景中的多种障碍物。基于激光雷达点云的物体(如障碍物)检测和识别方法通常使用卷积神经网络(CNN)的机器学习方法来预测障碍物的三维位置、大小、方向和类别。基于激光雷达点云的物体检测和识别的一种典型方法是:首先将点云划分成体素栅格(Voxel Grid);然后直接在Voxel Grid上利用卷积神经网络提取特征;最后在特征图上执行三维边界框回归和类别分类。这种方法可以充分利用点云的三维空间几何信息,但是基于点的三维物体检测涉及大量计算,通常只能以每秒1到2帧(FPS)的速度运行,无法应用于自动驾驶汽车的在线推理。而且,由于每个Voxel Grid中的点数受点云密度限制,而点云密度又取决于激光束的数量,因此落在远处的物体(例如对于64线激光雷达而言落在如80米远)的物体上的的点变得非常稀疏。这使得很多逐点卷积变得多余。
在自动驾驶或者机器人应用中,使用相机图像作为输入进行障碍物检测和识别也是常用的方法。例如,基于可视图像的障碍物检测通常首先使用CNN在图像上生成二维检测边界框,然后针对检测到的每个二维检测边界框估计深度。基于视觉图像的物体检测可以准确地估计障碍物的类别,但是,由于深度信息的丢失,仅依靠相机图像,尤其对于长距离障碍物,无法准确地估计物体的位置和方向。并且,当障碍物被遮挡或图像的边界被切断时,物体的尺寸和位置的估计将变得不稳定。最重要的是,由于图像深度信息的缺失和物体的大范围变化,估计的物体位置可能会在帧之间表现出大量抖动,使估计的三维边界框不稳定。
发明内容
根据本公开的一些实施例,提供了一种物体识别模型的训练方法,包括:
获取训练集,训练集包括激光雷达采集的物体的点云标注数据集,点云标注数据集带有真值边界框;
根据点云标注数据集中的点云数据,生成俯视图;
利用特征提取器,从俯视图提取多个不同分辨率的特征图;
确定锚框的尺寸及其在特征图上的位置,尺寸包括大小和宽高比;
以特征图的每个像素为中心,生成不同尺寸的锚框;
在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配,以确定锚框的样本类型;
基于不同样本类型的锚框对卷积神经网络的损失函数的贡献,训练物体识别模型。
在一些实施例中,确定锚框的尺寸及其在特征图上的位置包括:根据俯视图及其对应特征图的尺寸,确定锚框在特征图上的位置。
在一些实施例中,确定锚框的尺寸及其在特征图上的位置包括:对训练集包括的真值边界框进行统计聚类,确定锚框的尺寸。
在一些实施例中,不同分辨率包括第一分辨率、第二分辨率和第三分辨率,其中第一分辨率大于第二分辨率,第二分辨率大于第三分辨率,在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配包括:
在第一分辨率的特征图上,将具有第一尺寸的锚框与真值边界框进行匹配;
在第二分辨率的特征图上,将具有第二尺寸的锚框与真值边界框进行匹配,第二尺寸大于第一尺寸;
在第三分辨率的特征图上,将具有第三尺寸的锚框与真值边界框进行匹配,第三尺寸大于第二尺寸。
在一些实施例中,在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配,以确定锚框的样本类型包括:
将锚框和真值边界框投影到俯视图的图像坐标系;
将锚框与真值边界框进行匹配,以确定锚框属于正样本、负样本或被忽略样本,其中,正样本和负样本对损失函数有贡献,被忽略样本对损失函数无贡献。
在一些实施例中,将锚框与真值边界框进行匹配,以确定锚框属于正样本、负样本或被忽略样本包括:
根据锚框的几何中心与真值边界框的几何中心之间的距离,确定锚框属于正样本、负样本或被忽略样本,
其中,与最近的真值边界框的距离小于第一距离阈值的锚框为正样本,与任一真值边界框距离最近的锚框为正样本,与最近的真值边界框的距离大于或等于第二距离阈值的锚框为负样本,既不是正样本也不是负样本的其他锚框为被忽略样本,第二距离阈值大于第一距离阈值。
在一些实施例中,将锚框与真值边界框进行匹配,以确定锚框属于正样本、负样本或被忽略样本包括:
根据锚框与真值边界框的交并比,确定锚框属于正样本、负样本或被忽略样本,
其中,与真值边界框的交并比大于第一比例阈值的锚框为正样本,与任一真值边界框交并比最大的锚框为正样本,与真值边界框的交并比小于或等于第二比例阈值的锚框为负样本,既不是正样本也不是负样本的其他锚框为被忽略样本,第二比例阈值小于第一比例阈值。
在一些实施例中,基于不同样本类型的锚框对物体识别模型的损失函数的贡献,训练物体识别模型包括:
利用多任务学习方法,预测每个锚框的识别结果,识别结果包括锚框是否包含物体,以及锚框所含物体的位置、尺寸、方向和类别,多任务包括锚框所含物体是前景还是背景的二元分类任务,锚框所含物体的位置、大小和方向的回归任务,以及锚框所含物体的类别的分类任务,其中,多任务共用特征提取器。
在一些实施例中,损失函数表示为
Ltotal=μLconf+ρLreg+τLcls,
其中,Lconf表示前景/背景置信度损失,Lreg表示位置、大小和方向的回归损失,Lcls表示类别的分类损失,少ρ和τ分别表示相应的损失权重。
在一些实施例中,前景/背景置信度损失Lconf使用Sigmoid焦点损失,位置、大小和方向的回归损失Lreg使用SmoothL1损失,类别的分类损失Lcls使用Softmax焦点损失。
在一些实施例中,位置、大小和方向的回归损失表示为
其中,Lloc(b,g)表示位置损失,且根据真值边界框和预测的定向边界框之间的SmoothL1损失确定,表示方向损失,且根据由方向角的余弦和正弦表示的真实方向向量与预测方向向量之间的相似度确定,和分别表示预测方向角θ的余弦和正弦,cosθ和sinθ是真值方向角的余弦和正弦。
在一些实施例中,特征提取器包括Resnet-FPN或Xception-FPN特征提取器。
在一些实施例中,Resnet-FPN特征提取器包括:
多组Resnet模块,配置为产生多个不同分辨率的原始特征图,每组Resnet模块包括多个Resnet模块,每个Resnet模块包括多个融合卷积FusedConv运算符,每个融合卷积FusedConv运算符由二维卷积、批规范化Batch Norm和RELU激活三个子运算符组成;
特征金字塔网络FPN,配置为将多个不同分辨率的原始特征图与相应的上采样特征图进行组合;和
输出头,配置为输出多个不同分辨率的特征图。
在一些实施例中,在最后执行的融合卷积FusedConv运算符中的批规范化BatchNorm的缩放参数和偏差的初始值配置为根据预测的物体类别动态调整。
在一些实施例中,Xception-FPN特征提取器包括:
入口层,包括多个可分离卷积SeperableConv层,配置为产生多个不同分辨率的原始特征图;
特征金字塔网络FPN,配置为将多个不同分辨率的原始特征图与相应的上采样特征图进行组合;和
预测头,配置为输出多个不同分辨率的特征图。
在一些实施例中,获取训练集包括:
获取激光雷达采集的物体的点云标注数据集;
从点云标注数据集中选择一个真值边界框;
对所选择的真值边界框包含的点云数据执行以下操作中的至少一项,得到增广数据:
绕真值边界框的高度方向将所包含的点云数据旋转预定角度;
删除所包含的点云数据的一部分;
为所包含的点云数据中的至少一部分增加随机噪声点;和
将所包含的点云数据从所在的点云帧复制到其他点云帧的空间。
根据本公开的另一些实施例,提供了一种物体识别方法,包括:
前述任一实施例所述的物体识别模型的训练方法,训练物体识别模型;和
利用训练得到的物体识别模型,进行物体识别。
在一些实施例中,利用训练得到的物体识别模型,进行物体识别包括:
获取激光雷达采集的待识别物体的点云数据,其中,点云数据包括反映点云高度的空间坐标值;
根据点云数据生成多通道的俯视图,其中,多通道的俯视图包括表示点云高度的第一通道;
利用多通道的俯视图对待识别物体进行识别。
在一些实施例中,利用多通道的俯视图对待识别物体进行识别包括:
将多通道的俯视图输入训练得到的物体识别模型,得到待识别物体在俯视图上的二维检测框;
根据待识别物体在俯视图上的二维检测框,确定待识别物体在点云坐标系中的二维检测框;
计算待识别物体在点云坐标系中的高度;和
基于待识别物体在俯视图上的二维检测框和待识别物体的高度,输出待识别物体在点云坐标系中的三维检测框。
根据本公开的又一些实施例,提供了一种物体识别模型的训练装置,包括:
获取单元,配置为获取训练集,训练集包括激光雷达采集的物体的点云标注数据集,点云标注数据集带有真值边界框;
俯视图生成单元,配置为根据点云标注数据集,生成俯视图;
提取单元,配置为利用特征提取器,从俯视图提取多个不同分辨率的特征图;
确定单元,配置为确定锚框的尺寸及其在特征图上的位置;
锚框生成单元,配置为以特征图的每个像素为中心,生成不同尺寸的锚框,尺寸包括大小和宽高比;
匹配单元,配置为在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配,以确定锚框的样本类型;
训练单元,配置为基于不同样本类型的锚框对卷积神经网络的损失函数的贡献,训练物体识别模型。
根据本公开的再一些实施例,提供一种物体识别系统,包括:
物体识别模型的训练装置,配置为根据前述任一实施例所述的训练方法,训练物体识别的模型;和
物体识别装置,配置为利用训练得到的物体识别模型,进行物体识别。
根据本公开的还一些实施例,提供一种电子设备,包括:存储器;和耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器装置中的指令,执行上述任一个实施例中的训练方法或物体识别方法。
根据本公开的其他实施例,提供一种物体识别系统,包括:激光雷达,配置为采集物体的点云数据;和上述任一个实施例中的电子设备。
根据本公开的其他实施例,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一个实施例中的训练方法或物体识别方法。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1示出根据本公开一些实施例的物体识别模型的训练方法的流程图;
图1A示出根据本公开一些实施例的数据增广方法的流程图;
图1B示出本公开一些实施例的Resnet-FPN特征提取器的结构示意图;
图1C示出本公开一些实施例的Resnet模块的结构示意图;
图1D示出本公开一些实施例的Up_sample_6的结构示意图;
图1E示出本公开一些实施例的Xception-FPN特征提取器的结构示意图;
图1F-1H分别示出根据本公开一些实施例的低、中和高分辨率的中间卷积层和出口卷积层的结构示意图;
图2示出根据本公开一些实施例的物体识别方法的流程图;
图2A示出根据本公开一些实施例的根据点云数据生成多通道的俯视图的流程示意图;
图3A示出根据本公开一些实施例的点云坐标系和俯视图的图像坐标系之间的对应关系图;
图3B示出根据本公开一些实施例的点云坐标系和物体坐标系之间的对应关系图;
图3C示出根据本公开一些实施例的将点云高度转换成颜色值的流程示意图;
图3D示出根据本公开一些实施例的最大高度矩阵Hmax和最小高度矩阵Hmin的示意图;
图4示出根据本公开另一些实施例的物体识别方法的流程示意图;
图5示出根据本公开一些实施例的利用多通道的俯视图识别物体的流程示意图;
图6示出本公开一些实施例的物体识别模型的训练装置10的框图;
图6A示出本公开一些实施例的数据增广装置的框图;
图6B示出本公开一些实施例的物体识别装置的框图;
图6C示出本公开一些实施例的图6B所示识别单元的框图;
图7示出本公开一些实施例的电子设备的框图;
图8示出本公开又一些实施例的电子设备的框图;
图9示出本公开一些实施例的物体识别系统的框图;
图9A示出本公开又一些实施例的电子设备的框图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
发明人经研究发现:使用激光雷达点云的俯视图(BEV,Bird-Eye View)作为CNN模型的输入,表示方法更加紧凑轻便,内存占用量小,前向推理速度快;另外,通过将点云高度表示为俯视图的通道,可以不损失三维信息,与投影到前视图(Front View)或者周围视图(Surrounding View)的深度图的表示方法相比,物体在俯视图中没有重叠,可以有效降低了维物体检测的难度;并且由于俯视图的表示方法保留了物体在现实世界中的尺度信息,不会出现尺度随距离远近不同而变化的现象,因此可以使用物体尺寸的先验知识来更好地估计物体的尺寸。
鉴于此,本公开提出一种高性能的物体识别方法,使用卷积神经网络从激光雷达点云的俯视图估计物体的位置、大小、方向和类别。在一些实施例中,将点云投影到俯视图上,再利用典型的一阶段CNN物体检测方法(如SSD,单发多框检测,single shot multiboxdetection)来进行3D物体检测。
根据本公开的一些实施例,提出了一种物体识别模型的训练方法。
图1示出根据本公开一些实施例的物体识别模型的训练方法的流程图。
如图1所示,物体识别模型的训练方法包括:步骤S1,获取训练集;步骤S2,根据点云标注数据集,生成俯视图;步骤S3,利用特征提取器,从俯视图提取多个不同分辨率的特征图;步骤S4,确定锚框的尺寸及其在特征图上的位置;步骤S5,以特征图的每个像素为中心,生成不同尺寸的锚框,尺寸包括大小和宽高比;
步骤S6,在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配,以确定锚框的样本类型;步骤S7,基于不同样本类型的锚框对卷积神经网络的损失函数的贡献,训练物体识别模型。
在步骤S1,获取的训练集包括激光雷达采集的物体的点云标注数据集,点云标注数据集带有真值边界框。
在一些实施例中,获取的训练集还包括:对点云标注数据集进行数据增广得到的增广数据。也就是说,步骤S1中的获取训练集既包括获取激光雷达采集的物体的点云标注数据集,还可以包括利用数据增广方法获取点云标注数据集的增广数据。
图1A示出根据本公开一些实施例的数据增广方法的流程图。
如图1A所示,数据增广方法包括:步骤S12,获取激光雷达采集的物体(如障碍物)的点云标注数据集;步骤S14,从点云标注数据集中选择一个真值边界框;步骤S16,对所选择的真值边界框包含的点云数据执行指定操作,得到增广数据。
激光雷达采集的物体点云数据一般包括反映点云高度的空间坐标值。在一些实施例中,点云数据可以用N×4的矩阵表示,其中N个点中的每个点有X、Y、Z的三维空间坐标和反射强度值(intensity)等信息。
在步骤S12中获取的点云标注数据集带有真值边界框。在一些实施例中,点云标注数据包括如下信息:物体的类别;以及物体的位置、大小和方向角。
在步骤S14,从点云标注数据集中选择一个真值边界框包括:随机选择一个真值边界框;或选择具有指定类别的真值边界框。
从所有三维检测框随机选择某一个真值边界框,对应障碍物的类别可以是任何已经标注的类别。但是,如果选择稀有障碍物类别的真值边界框,例如自动驾驶场景中的重型工程车类别,对这类数据进行增广,可以有助于解决各种障碍物类别的标注数量不平衡的问题。
在步骤S16,对所选择的真值边界框包含的点云数据执行指定操作中的至少一项,得到增广数据。
在一些实施例中,指定操作可以包括:将所选择的真值边界框包含的点云数据,绕真值边界框的高度方向,旋转预定角度。真值边界框的高度方向对应物体的高度方向,可以与激光雷达点云坐标系的Z轴方向一致。
例如,对于所选择的真值边界框,计算真值边界框内包含的点云的几何中心点,并且以该几何中心点为物体坐标系的原点,绕真值边界框的Z轴将点云旋转预定角度,得到旋转后的真值边界框及其包含的点云。这里,预定角度可以为随机选定的角度。
上述旋转操作可以模拟现实世界中同一障碍物可以以不同的方向呈现在自动驾驶主车的传感器视野内,比如行人可以是背对着主车的激光雷达,也可以是面对着主车的激光雷达。
在另一些实施例中,指定操作也可以包括:删除所包含的点云数据的一部分。
删除所包含的点云数据的一部分可以包括:删除所选择的真值边界框的一部分所包含的点云数据,例如,删除真值边界框所包含的点云的上半部分、中间部分或者下半部分的点云。当然,也可以删除三维检测框所包含的点云的左半部分或者右半部分的点云。
上述删除操作可以模拟现实世界中安装在自动驾驶主车上的激光雷达由于盲区或者遮挡而只能观测到真实物体的一部分。
或者,删除所包含的点云数据的一部分也可以包括:随机删除所选择的真值边界框包含的点云数据的指定比例的点云。上述删除操作可以模拟现实世界中不同激光雷达采集得到的不同密度的点云。
在又一些实施例中,指定操作还可以包括:为所选择的真值边界框包含的点云数据中的至少一部分增加随机噪声点。
增加随机噪声点的比例可以根据真实数据分布来确定。真实数据分布需要考虑各种因素,例如障碍物在真值边界框内、激光雷达不可能透视等等。增加随机噪声点后,可以增加点云密度,例如可以从每0.1米×0.1米×0.1米有5个点云点增加到8个点云点。即,上述加噪声的操作也可以模拟现实世界中不同激光雷达采集得到的不同密度的点云。
在再一些实施例中,指定操作还可以包括:将所选择的真值边界框包含的点云数据从所在的点云帧复制到其他点云帧的空间。
例如,可以将所选择的真值边界框包含的点云从所在的点云帧A复制到另外一个随机选择的点云帧B的空间中。在点云帧B中的放置位置要符合现实世界的要求,例如,真值边界框内的点云要放置在地面之上的自由空间上,避免悬浮在空中或者跟其他障碍物的真值边界框在同一位置。这样可以在任意选择的点云帧上增加某一障碍物类别的点云,尤其是增加稀有障碍物类别的点云。
前面介绍了对选择的真值边界框执行指定操作得到增广数据。应当理解,也可以对点云标注数据集所包含的点云执行旋转、平移、尺度缩放等操作。这些操作可以单独使用,也可以结合起来使用。
在一些实施例中,可以将随机选择的点云帧绕指定轴旋转预定角度。例如,随机性选择某一点云帧,绕着激光雷达的点云坐标系的Z轴(如指向天空)对点云进行随机旋转。旋转的角度可以根据用户提供的各种参数确定。
在另一些实施例中,可以将点云标注数据集所包含的点云进行平移。例如,分别沿着激光雷达的点云坐标系的X轴、Y轴或Z轴对点云进行平移。平移量可以根据用户提供的各种参数确定。
在又一些实施例中,可以将点云标注数据集所包含的点云进行尺度缩放。例如,分别沿着激光雷达的点云坐标系的X轴、Y轴或Z轴对点云进行尺度缩放。尺度缩放的比例可以根据用户提供的各种参数确定,一般建议在0.9到1.1之间。
在上述实施例中,利用数据增广方法,能够基于已带有真值边界框的激光雷达点云标注数据,大量生成更加多样化的点云数据。尤其是,由于可以基于已标注的少量罕见场景的真值数据生成类似的点云数据,因此能够有效缓解罕见场景的真值标注远远不足的问题;而且也可以从已标注的类别较少的障碍物(如卡车)的点云数据生成更多数量的类似点云数据。即能够生成符合更多场景的新的真值数据。这些新生成的点云数据无需再进行标注,大大减少了标注成本,缩短了数据采集和标注周期。另外,利用前述数据增广方案得到的点云标注数据集的增广数据,也可以训练得到性能更好的卷积神经网络(CNN),以提到物体识别的准确率。
上面结合图1A描述了利用数据增广方法得到大量有效的训练数据。下面回到图1继续描述如何利用这些训练数据来训练物体识别模型。首先描述在步骤S2中如何根据点云数据生成俯视图,例如,根据点云坐标系和俯视图的图像坐标系之间的对应关系,将点云数据投影到俯视图。接下来,继续描述如何利用俯视图来训练物体识别模型。
在步骤S3中,可以利用Resnet-FPN或Xception-FPN特征提取器,从俯视图提取多个不同分辨率的特征图。
Resnet-FPN特征提取器包括:多组Resnet模块,配置为产生多个不同分辨率的原始特征图,每组Resnet模块包括多个Resnet模块,每个Resnet模块包括多个融合卷积FusedConv运算符,每个融合卷积FusedConv运算符由二维卷积、批规范化Batch Norm和RELU激活三个子运算符组成;特征金字塔网络FPN,配置为将多个不同分辨率的原始特征图与相应的上采样特征图进行组合;和输出头,配置为输出多个不同分辨率的特征图。
下面以输入的BEV图像的分辨率为1024×512×3为例,结合图1B、1C、1D来描述Resnet-FPN特征提取器的结构。
如图1B所示,Resnet-FPN特征提取器包括5组Resnet模块。
第一组Resnet模块包括2个FusedConv,每个FusedConv的卷积核为3×3,通道数为32。
第二组Resnet模块(Resnet_block_2,24,24,48,/2,#2)包括2个Resnet模块(Resnet_block),Stride=2。第三组Resnet模块(Resnet_block_3,32,32,64,/2,#5)包括5个Resnet模块,Stride=2。第四组Resnet模块(Resnet_block_4,48,48,96,/2,#5)包括5个Resnet模块,Stride=2。第五组Resnet模块(Resnet_block_5,64,64,128,/2,#2)包括2个Resnet模块,Stride=2。
如图1C所示,每个Resnet模块包括3个FusedConv运算符,其中,第1个FusedConv的卷积核为1×1,第2个FusedConv的卷积核为3×3,第3个FusedConv的卷积核为1×1。第2个FusedConv是瓶颈层,可以减少输出通道数量,减小模型大小并提高推理效率。第3个FusedConv的输出与第1个FusedConv的输入进行组合,例如通过元素求和或通道级联的方式进行组合,组合后通过RELU激活。
在第二组Resnet模块(Resnet_block_2,24,24,48,/2,#2)中,第1、2、3个FusedConv的通道数分别为24、24、48。相应地,每个Resnet模块包括的3个FusedConv的通道数也分别为24、24、48。
在第三组Resnet模块(Resnet_block_3,32,32,64,/2,#5)中,第1、2、3个FusedConv的通道数分别为32、32、64。相应地,每个Resnet模块包括的3个FusedConv的通道数也分别为32、32、64。
在第四组Resnet模块(Resnet_block_4,48,48,96,/2,#5)中,第1、2、3个FusedConv的通道数分别为48、48、96。相应地,每个Resnet模块包括的3个FusedConv的通道数也分别为48、48、96。
在第五组Resnet模块(Resnet_block_5,64,64,128,/2,#2)中,第1、2、3个FusedConv的通道数分别为64、64、128。相应地,每个Resnet模块包括的3个FusedConv的通道数也分别为64、64、128。
如图1B所示,第五组Resnet模块(Resnet_block_5,64,64,128,/2,#2)的输出与1×1、128通道的过滤器进行卷积后,输出1/16分辨率的特征图(64×32×13)。
如图1D所示,在上采样操作(如Up_sample_6,96,×2)中,原始分辨率为1/16的特征图还通过上采样操作(例如deconv操作)被上采样至1/8分辨率,然后将上采样得到的1/8分辨率特征图与原始分辨率为1/8的特征图进行组合,例如通过元素求和或通道级联的方式进行组合,以获得最终的1/8分辨率的特征图(128×64×13)。原始分辨率为1/8的特征图通过第四组Resnet模块(Resnet_block_4,48,48,96,/2,#5)的输出与1×1、96通道的过滤器进行卷积后得到。
类似地,在操作(Up_sample_7,64,×2)中,最终分辨率为1/8的特征图还通过上采样操作(例如deconv操作)被上采样至1/4分辨率,然后将上采样得到的1/4分辨率特征图与原始分辨率为1/4的特征图进行组合,例如通过元素求和或通道级联的方式进行组合,以获得最终的1/4分辨率的特征图(256×128×13)。原始分辨率为1/4的特征图通过第三组Resnet模块(Resnet_block_3,32,32,64,/2,#5)的输出与1×1、64通道的过滤器进行卷积后得到。
在一些实施例中,Resnet-FPN特征提取器在操作(Up_sample_7,64,×2)后还包括多个FusedConv,以便增加模型提取抽象特征的能力,提高模型泛化性。如图1B所示,Resnet-FPN特征提取器在操作(Up_sample_7,64,×2)后还包括:3个3×3、32通道的FusedConv;和1个1×1、N通道的FusedConv
在一些实施例中,在最后执行的融合卷积FusedConv运算符(如图1B所示的1×1、N通道的FusedConv)中的批规范化Batch Norm的缩放参数和偏差的初始值配置为根据预测的物体类别动态调整。
应当理解,可以根据目标计算平台的计算资源动态调整Resnet-FPN特征提取器的超参数,例如每层输出的特征通道的数量和Resnet块的数量等。
仍以输入的BEV图像的分辨率为1024×512×3为例,下面结合图1E-1H来描述Xception-FPN特征提取器的结构。
如图1E所示,Xception-FPN特征提取器包括:入口层(Entry layers),包括多个可分离卷积SeperableConv层,配置为产生多个不同分辨率的原始特征图;特征金字塔网络FPN,配置为将多个不同分辨率的原始特征图与相应的上采样特征图进行组合;和预测头,配置为输出多个不同分辨率的特征图。
如图1E所示,输入的BEV图像(1024×512×3)经过几层卷积Conv生成不同分辨率的特征图,例如低(64×32×128)、中(128×64×64)和高分辨率(256×128×32),其中通道数分别为128、64和32。应当理解,可以根据对实际需要来调整通道的数量和分辨率。
为了使高分辨率特征图上的信息可以在较低分辨率下使用,使用快捷连接(short-cut connection)将Stride=2池化的高分辨率特征图与低分辨率特征图进行组合。
对于每种分辨率,特征图都会经过中间卷积层(Middle Conv Layers)和出口卷积层(Exit Conv Layers),然后经上采样后与更高分辨率特征图组合。即,将低、中和高分辨率原始特征图与上采样的低、中和高分辨率特征图进行组合。
每种分辨率的中间转换层和出口转换层的过滤器数量不同,例如在低、中和高分辨率下分别为512、256和128个过滤器。图1F-1H分别示出根据本公开一些实施例的低、中和高分辨率的中间卷积层(Low-res Middle Conv Layers、Mid-res Middle Conv Layers、Hi-res Middle Conv Layers)和出口卷积层(Low-res Exit Conv Layers、Mid-res ExitConv Layers、Hi-res Exit Conv Layers)的结构示意图。
如图1F所示,低分辨率特征图(64×32×128)经过低分辨率中间卷积层和出口卷积层,生成大小为64×32×512的特征图。然后,该特征图经上采样后与中分辨率特征图组合,例如,可以通过逐元素求和或逐通道级联来实现组合操作。在一些实施例中,可以通过基于去卷积(deconv)或基于插值的上采样来实现上采样操作。
类似地,如图1G所示,中分辨率特征图(128×64×64)经过中分辨率中间卷积层和出口卷积层,生成大小为128×64×256的特征图。然后,该该特征图经上采样后与高分辨率特征图组合。
如图1H所示,高分辨率特征图(256×128×32)经过高分辨率中间卷积层和出口卷积层,生成大小为256×128×128的特征图,然后与中分辨率特征图组合。
回到图1E,如图所示,每种分辨率的预测头包含针对所有分辨率的相同操作。这些操作包括:分别针对低、中和高分辨率特征图的通道的1×1卷积;Dropout操作;对具有N个输出通道的1×1卷积,其中N是要预测的变量数。
在上述实施例中,在Resnet-FPN和Xception-FPN特征提取器中,在FusedConv层中使用batch_norm,并在网络的输出层之前使用Dropout,可以提高模型的泛化能力并克服过度拟合。
上面结合图1B-1H描述了利用特征提取器从俯视图提取多个不同分辨率的特征图。下面回到图1继续描述步骤S4-S7,即,如何利用锚框(anchor box)来训练物体识别模型。
在步骤S4,确定锚框的尺寸及其在特征图上的位置。
锚框作为训练样本,既用于训练阶段,也用于预测阶段。锚框相当于对一个中心点取不同的窗口,来检测重叠在一起的多个物体。训练数据包括不同类别的对象,例如行人/单车、汽车、公共汽车/卡车。与行人的交并比较大的锚框,可以用于训练和预测行人;与汽车的交并比较大的锚框,可以用于训练和预测汽车。通过使用不同大小和宽高比的锚框,可以使得训练和预测更加具有针对性。
在一些实施例中,根据俯视图的图像密度(以米/像素为单位),确定锚框的尺寸(以像素为单位)。例如,锚框可以包括3种不同尺寸,即小、中和大,分别对应于BEV特征图上的不同大小的像素(如16×16、32×64和32×128)。不同尺寸的锚框可以分别代表不同的障碍物,例如行人/骑车人(小尺寸),汽车(中尺寸)和公共汽车/卡车(大尺寸)。还可以对训练集包括的真值边界框中进行统计聚类,确定锚框的尺寸。例如通过kmeans聚类,得到常用的尺寸大小,并基于此选择锚框大小。锚框在特征图上的位置可以根据俯视图及其对应特征图的尺寸确定。
在步骤S5,以特征图的每个像素为中心,生成不同尺寸的锚框。例如,将大小和宽高比不同的锚框放置在分辨率不同的多个特征图的每个像素上。这样,可以提高不同尺度物体的检测性能。
在步骤S6,在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配,以确定锚框的样本类型。
在一些实施例中,不同分辨率包括第一分辨率、第二分辨率和第三分辨率,其中第一分辨率大于第二分辨率,第二分辨率大于第三分辨率。由此,在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配包括:在第一分辨率的特征图上,将具有第一尺寸的锚框与真值边界框进行匹配;在第二分辨率的特征图上,将具有第二尺寸的锚框与真值边界框进行匹配,第二尺寸大于第一尺寸;在第三分辨率的特征图上,将具有第三尺寸的锚框与真值边界框进行匹配,第三尺寸大于第二尺寸。
在进行锚框匹配时,在高分辨率输出特征图上,仅允许小尺寸的锚框与真值边界框进行匹配,因为高分辨率特征图对应于原始输入分辨率中的小接收场,仅能够检测小尺寸对象;在中等分辨率输出特征图上,仅允许中等尺寸的锚框与真值边界框匹配;在低分辨率的输出特征图上,仅允许大尺寸锚框与真值边界框匹配,因为低分辨率特征图对应于原始输入分辨率中的大接收场,能够检测大尺寸物体。
在加载点云的每一帧进行训练时,可以先将锚框和真值边界框投影到俯视图的图像坐标系,然后将锚框与真值边界框进行匹配,以确定锚框属于正样本、负样本或被忽略样本。在计算损失时,只有正样本和负样本才对损失有贡献,而被忽略样本对损失无贡献。
在一些实施例中,可以根据锚框的几何中心与真值边界框的几何中心之间的距离,确定锚框属于正样本、负样本或被忽略样本。其中,与最近的真值边界框的距离小于第一距离阈值的锚框为正样本,与任一真值边界框距离最近的锚框为正样本,与最近的真值边界框的距离大于或等于第二距离阈值的锚框为负样本,既不是正样本也不是负样本的其他锚框为被忽略样本,第二距离阈值大于第一距离阈值。
在另一些实施例中,可以根据锚框与真值边界框的交并比,确定锚框属于正样本、负样本或被忽略样本。其中,与真值边界框的交并比大于第一比例阈值的锚框为正样本,与任一真值边界框交并比最大的锚框为正样本,与真值边界框的交并比小于或等于第二比例阈值的锚框为负样本,既不是正样本也不是负样本的其他锚框为被忽略样本,第二比例阈值小于第一比例阈值。
在步骤S7,基于不同样本类型的锚框对卷积神经网络的损失函数的贡献,训练物体识别模型。
在一些实施例中,利用多任务学习方法,预测每个锚框的识别结果。识别结果包括锚框是否包含物体,以及锚框所含物体的位置、尺寸、方向和类别。多任务包括锚框所含物体是前景还是背景的二元分类任务,锚框所含物体的位置、大小和方向的回归任务,以及锚框所含物体的类别的分类任务,其中,多任务共用特征提取器。这些学习任务共享相同的特征提取骨干网络,以实现端到端学习。
损失函数可以表示为Ltotal=μLconf+ρLreg+τLcls,其中,Lconf表示前景/背景置信度损失,Lreg表示位置、大小和方向的回归损失,Lcls表示类别的分类损失,μ、ρ和τ分别表示相应的损失权重。
在一些实施例中,前景/背景置信度损失Lconf使用Sigmoid焦点损失,位置、大小和方向的回归损失Lreg使用SmoothL1损失,类别的分类损失Lcls使用Softmax焦点损失。
对于前景/背景障碍置信度损失Lconf,可以使用焦点损失以解决前景对象(正样本)和背景对象(负样本)的数量严重不平衡的问题,并且提高物体识别模型的泛化能力。例如,前景/背景障碍置信度损失可以表示为Lconf=-αt(1-pt)γlog(pt),其中,y∈{±1}表示真值类,p∈[0,1]表示对于标签y=1的类(正类,前景障碍物)模型预测的概率,
位置、大小和方向的回归损失可以表示为 其中,Lloc(b,g)表示位置损失,且根据真值边界框和预测的定向边界框之间的SmoothL1损失确定,表示方向损失,且根据由方向角的余弦和正弦表示的真实方向向量与预测方向向量之间的相似度确定,和分别表示预测方向角的余弦和正弦。
方向损失可以表示为
方向损失为1减去真值方向向量与预测方向向量之间的相似度。可以将真值方向向量与预测方向向量通过其幅值进行归一化,然后计算两个归一化方向向量之间的点积作为其方向向量之间的相似度,最后从1中减去该相似度以得到方向损失。
方向角通过预测其正弦和余弦来唯一确定,而不是直接预测方向角本身的绝对值。这是因为具有方向角θ和θ+π的障碍物的方向可以视为相同,例如,前部朝前的汽车和后部朝前的汽车视为具有相同的方向。但是,由于θ和θ+π的值相差很大,会导致训练过程中根据方向角本身计算出的方向损失不收敛。预测方向角的正弦和余弦而不是预测取向角本身可以避免由θ和θ+π表示相同方向但θ和θ+π角的绝对值显著不同所引起的问题。
对于类别的分类损失,使用多类焦点损失Softmax来计算前景障碍物的概率,可以提高模型检测和识别稀有障碍物类别(例如卡车)的能力。
在训练过程中,可以通过将前景/背景置信度损失、位置、大小和方向的回归损失和类别的分类损失乘以不同的加权因子,动态调整模型对不同变量的预测能力。所有正锚框和负锚框用于计算置信度损失,而仅正锚框用于计算回归损失和分类损失。
在训练过程中,将俯视图输入卷积神经网络,得到待识别物体在俯视图(即图像坐标系)上的二维检测框,bbev={cx,cy,lbev,wbev,θbev,t},其中,cx是物体的几何中心x坐标,cy是物体的几何中心y坐标;lbev是物体的长度,w是物体的宽度,以像素为单位;θbev是物体在图像坐标系中的方向角,在[-π/2,π/2)的范围;t是物体的类别,如行人、汽车、三轮车等。
真值边界框包括物体的长宽高、几何中心的三维坐标、方向角、类别等。在训练期间,真值边界框需要转换到俯视图的图像坐标系。
物体识别模型可以预测如下变量,
{Conf,bcx,bcy,bw,bl,cosθ,sinθ,c0,c1,...cC,},
其中,Conf表示预测的前景障碍物的置信度得分;bcx,bcy,bw,bl表示预测的障碍物和锚框的几何中心的位移,以及障碍物的长度和宽度的对数;c0,c1,…cC表示障碍物类别的概率。
以上描述了如何利用训练数据来训练物体识别模型,包括利用点云标注数据得到增广数据、利用点云标注数据集及其增广数据来训练用于物体识别的卷积神经网络。下面结合图2接着描述如何利用训练得到的物体识别模型来进行物体识别的物体识别方法。
图2示出根据本公开一些实施例的物体识别方法的流程图。
如图2所示,物体识别方法包括:步骤10,获取激光雷达采集的待识别物体的点云数据;步骤30,根据点云数据生成多通道的俯视图;和步骤50,利用多通道的俯视图对待识别物体进行识别。
在步骤10,点云数据包括反映点云高度的空间坐标值。在一些实施例中,点云数据可以用N×4的矩阵表示,其中N个点中的每个点有X、Y、Z的三维空间坐标和反射强度值(intensity)等信息。
在步骤30,多通道的俯视图包括表示点云高度的第一通道。在一些实施例中,第一通道包括分别表示不同颜色范围的第一颜色通道、第二颜色通道和第三颜色通道。在另一些实施例中,也可以结合图像传感器(例如摄像头)采集的物体的图像数据来识别物体。即,还可以在俯视图中增加反映物体类别的第四通道。
在一些实施例中,可以通过如下方式将物体类别信息转换为第四通道中的标签:首先,将俯视图中的像素点所对应的数据点投影到物体的图像上,这里的投影可以利用激光雷达到摄像头的外参标定;然后,根据投影位置对应的物体类别,将相应的标签记录到第四通道的对应像素点。例如,若投影点是在前景的障碍物上,则把障碍物的类别ID记录第四通道的对应像素点,如行人ID是1,就把1填写在第四通道的对应像素点;若障碍物是ID=2的车辆,就把2填写在第四通道的对应像素点。
下面结合图2A、3A和3B描述如何根据点云数据生成多通道的俯视图。
图2A示出根据本公开一些实施例的根据点云数据生成多通道的俯视图的流程示意图。
如图2A所示,步骤30根据点云数据生成多通道的俯视图包括:步骤31,根据点云坐标系和俯视图的图像坐标系之间的对应关系,将点云数据投影到俯视图;和步骤32,将点云高度分别转换成第一颜色通道、第二颜色通道和第三颜色通道中的颜色值。
图3A示出根据本公开一些实施例的点云坐标系和俯视图的图像坐标系之间的对应关系图。
在步骤31前,首先确定要投影的点云区域的坐标系(即点云坐标系)和俯视图的图像坐标系,以及两个坐标系之间的对应关系。
如图3A所示,X-Y坐标系是要投影的点云坐标系,该坐标系的原点是激光雷达的位置,X轴的正方向指向前方,Y轴的正方向指向左方,该坐标系的原点前后和左右一定范围内(例如前后各40米和左右各20米)的点云被投影在俯视图中,即投影区域的大小用L×W×H来表示(以米为单位,例如L=80米,W=40米)。x-y坐标系是俯视图的图像坐标系,该坐标系的原点在投影区域的左下角,x轴是图像的宽度(w)方向,y轴是图像的高度的方向,俯视图的图像大小用w×h来表示(以像素为单位),x轴的正方向指向上方,y轴的正方向指向右方。
然后,在步骤31,根据点云坐标系和俯视图的图像坐标系之间的对应关系,将点云数据投影到俯视图。在一些实施例中,将点云数据投影到俯视图之前,对点云数据进行预处理,并且对待输出的俯视图进行图像的初始化处理。点云数据的预处理例如包括去噪预处理,以去除NaN(not a number)等无效点。图像的初始化处理例如包括将图像坐标系中各个像素点的初始值设置为0。
在步骤31,可以仅将投影区域内的点云数据投影到俯视图。投影区域包括点云坐标系中的满足如下条件的点(X,Y,Z):
Xmin≤X≤Xmax,Ymin≤Y≤Ymax,且Zmin≤Z≤Zmax,
其中,以投影区域为激光雷达前后各40米、左右各20米为例,则Xmin=-40米,Xmax=40米,Ymin=-20米,Ymax=20米;以激光雷达距离地面的安装高度为1.8米为例,则Zmin=-1.8米,Zmax可以设置为例如1米。应当理解,投影区域的大小和安装高度都可以根据实际需要设定,相应的,Xmin、Xmax、Ymin、Ymax、Zmin、Zmax也可以根据实际需要设定。
假设点云坐标系的原点在BEV俯视图坐标系中的坐标是(Ox,Oy),仍可以米为单位,则从点云坐标系中的点(Xlidar,Ylidar)投影到俯视图中像素点(xbev,ybev)的坐标转换可以通过公式(1)计算:
其中,表示单位面积的点云投影区域(以米为单位)在俯视图图像上的像素面积大小,即投影密度,其中w表示图像宽度,L表示投影区域的长度,如图3A所示。Ox、Oy、w和L已知,则可以根据公式(1)计算出点云坐标系中的点(Xlidar,Ylidar)在俯视图中投影的像素点(xbev,ybev)。
应当理解,由于图像坐标系中的点对应着离散的像素点,所以可能有点云坐标系中的多个点对应着图像坐标系中同一个像素点。
θlidar和θbev分别表示物体在点云坐标系和图像坐标系中的方向角。根据点云坐标系和物体坐标系之间的对应关系图可以得到物体在点云坐标系的方向角θlidar,然后再根据公式(1)计算出物体在点云坐标系的方向角θbev。
图3B示出根据本公开一些实施例的点云坐标系和物体坐标系之间的对应关系图。
以点云坐标系中的物体是车为例,物体坐标系的原点在物体的几何中心。如图3B所示,物体坐标系X′轴正方向跟物体的长度方向平行,Y′轴正方向跟物体的宽度方向平行。物体在点云坐标系的方向角θlidar是从点云坐标系X轴正方向旋转到物体坐标系X′轴正方向的角度。若转动是逆时针则方向角θlidar为正值,若转动是顺时针则方向角θlidar是负值。方向角θlidar用弧度来表示,其范围在[-π/2,π/2)之间,即在本公开实施例中并不区分障碍物物体的头部和尾部。
根据图3B示出的点云坐标系和物体坐标系之间的对应关系图,可以得到物体在点云坐标系的方向角θlidar。进而,可以根据公式(1)计算出物体在点云坐标系的方向角θbev。
接着,回到图2A,在步骤32,分别将位于多个高度范围中的点云高度转换成俯视图中的第一颜色通道中的第一颜色值、第二颜色通道的第二颜色值和第三颜色通道中的第三颜色值。在一些实施例中,将点云高度转变成三通道的RGB颜色值,即第一颜色值对应红色,第二颜色值对应绿色,第三颜色值对应蓝色。图3C示出根据本公开一些实施例的将点云高度转换成颜色值的流程示意图。
如前所述,在投影过程中,可能出现点云坐标系中的多个点对应着图像坐标系中同一个像素点。这种情况下,仅将对应一个像素点的多个数据点中的最大点云高度(即Z的坐标值)转换成俯视图中的颜色值。也就是说,在步骤32,对于俯视图的图像坐标系中的一个像素点,仅将其对应的多个数据点中的最大点云高度转换成该像素点的颜色值。
如图3C所示,步骤32包括:步骤321,将大于或等于第一阈值且小于或等于第二阈值的点云高度分成多个高度范围,其中第二阈值大于第一阈值;和步骤322,分别将位于多个高度范围的点云高度转换成俯视图中的颜色范围。
在步骤321,第一阈值为Zmin,而第二阈值为Zmax,即,仅将点云高度落在[Zmin,Zmax]区间内的点云数据投影到俯视图上。
在一些实施例中,将点云高度分成三个不同的高度范围,即分成三段高度区间,即第一高度范围H1、第二高度范围H2和第三高度范围H3。
接着,在步骤322,将位于不同高度范围中的点云高度转换成俯视图中的不同颜色范围中的颜色值。
以高度范围为3个为例,则第一高度范围、第二高度范围和第三高度范围分别对应俯视图中的第一颜色范围、第二颜色范围和第三颜色范围。不同颜色范围可以对应不同颜色通道,例如,第一颜色范围、第二颜色范围和第三颜色范围分别对应第一颜色通道、第二颜色通道和第三颜色通道。
在一些实施例中,在不同的高度范围中,用不同的转换参数来实现点云高度到颜色值的映射或转换。例如,第一颜色范围中的颜色值与第一高度范围中的点云高度是斜率为α的线性关系,第二颜色范围中的颜色值与第二高度范围中的点云高度是斜率为β的线性关系,第三颜色范围中的颜色值与第三高度范围中的点云高度是斜率为γ的线性关系。
例如,对于根据点云高度生成RGB颜色值的情形,以红色对应较高的点云高度、绿色对应中等高度的点云高度、蓝色对应较低的点云高度为例,即有点云高度最高的点在俯视图上的颜色呈现红色,点云高度最低的点在俯视图上的颜色呈现蓝色,点云高度居中的点在俯视图上的颜色呈现绿色。
对于每一段高度范围,点云高度越高,转换得到的颜色值越高。由此,在相应的颜色通道中呈现的颜色可能越深。例如在绿色通道中,点云高度越高的点对应的颜色值越高,例如呈现深绿,而点云高度越低的点对应的颜色值越低,在俯视图上的颜色呈现浅绿。
对于不同的高度范围到颜色范围的转换,斜率α、β和γ的值可以互不相同。例如,在红色通道中,点云高度相差2倍的点,对应的颜色值相差2倍;但是在绿色通道中,点云高度相差2倍的点,对应的颜色值可能相差3倍。
以上是以将点云高度分成3个高度范围为例,应当理解,也可以分成多于3个高度范围,例如4个或更多,但仍然对应到3个颜色通道。下面以4个高度范围为例进行描述。
记4个高度范围为第一高度范围、第二高度范围、第三高度范围和第四高度范围,例如分别对应[Zmin,Zmin+klow×(Zmax-Zmin))、[Zmin+klow×(Zmax-Zmin),Zmin+kmid×(Zmax-Zmin))、[Zmin+kmid×(Zmax-Zmin),Zmin+ktop×(Zmax-Zmin))、[Zmin+ktop×(Zmax-Zmin),Zmax)范围内的Z坐标值。应当理解,klow、kmid和ktop都可以根据实际需要来设置。
第一高度范围内的数据点在俯视图上的颜色值可以按如下方式计算:红色通道中的颜色值为零;绿色通道中的颜色值从零随点云高度线性增加,斜率为a;蓝色通道中的颜色值为零。
第二高度范围内的数据点在俯视图上的颜色值可以按如下方式计算:红色通道中的颜色值为零;绿色通道中的颜色值为255,如按浮点式计数即为1;蓝色通道中的颜色值从零随点云高度线性增加,斜率为b。
第三高度范围内的数据点在俯视图上的颜色值可以按如下方式计算:红色通道中的颜色值从零随点云高度线性增加,斜率为c;绿色通道中的颜色值为255,如按浮点式计数即为1;蓝色通道中的颜色值为零。
第四高度范围内的数据点在俯视图上的颜色值可以按如下方式计算:红色通道中的颜色值为255,如按浮点式计数即为1;绿色通道中的颜色值从零随点云高度线性增加,斜率为d;蓝色通道中的颜色值为零。如前所述,对于不同的高度范围到颜色范围的转换,斜率a、b、c和d的值可以相同也可以互不相同。
下面以klow、kmid和ktop分别为0.15、0.5和0.75,且颜色通道中的颜色初始值为1.0(浮点式计数)为例,描述如何根据前述示例中点云高度与颜色值之间的对应关系来计算不同颜色通道中的颜色值。
第一高度范围、第二高度范围、第三高度范围和第四高度范围分别对应[Zmin,Zmin+0.15×(Zmax-Zmin))、[Zmin+0.15×(Zmax-Zmin),Zmin+0.5×(Zmax-Zmin))、[Zmin+0.5×(Zmax-Zmin),Zmin+0.75×(Zmax-Zmin))、[Zmin+0.75×(Zmax-Zmin),Zmax)。
第一高度范围、第二高度范围、第三高度范围和第四高度范围对应的在不同颜色通道中的颜色值分别为如下。
第一高度范围:R=0.0;G=a×(Z-Zmin)/(Zmax-Zmin);B=1.0。
第二高度范围:R=0.0;G=1.0;B=1.0-b×[Z-Zmin-0.15×(Zmax-Zmin)]/(Zmax-Zmin)。
第三高度范围:R=c×[Z-Zmin-0.5×(Zmax-Zmin)]/(Zmax-Zmin);G=1.0;B=0.0。
第四高度范围:R=0.0;G=1.0-d×[Z-Zmin-0.75×(Zmax-Zmin)]/(Zmax-Zmin);B=0.0。
如前所述,对于俯视图的图像坐标系中的一个像素点,虽然仅将其对应的多个数据点中的最大点云高度转换成该像素点的颜色值,但其对应的多个数据点中的最小点云高度也可以记录下来,作为后续处理中的计算参数。
在一些实施例中,对于图像坐标系中的每个像素点(x,y),可以将对应的最大点云高度记为Hmax(x,y),将对应的最小点云高度记为Hmin(x,y)。由此,对于图像坐标系中的各个像素点进行类似的处理,可以得到对应的最大高度矩阵Hmax和最小高度矩阵Hmin,如图3D所示。最大高度矩阵Hmax和最小高度矩阵Hmin可以在后续的处理中用于计算检测框的高度。
图3D示出根据本公开一些实施例的最大高度矩阵Hmax和最小高度矩阵Hmin的示意图。
如图3D所示,图像坐标系中的像素点(x1,y1)和(x2,y2)分别对应点云坐标系中立柱1和立柱2所包括的多个数据点。对于像素点(x1,y1),对应立柱1包括的数据点的最大点云高度例如为1.5,最小点云高度例如为-1.2。即最大高度矩阵Hmax在(x1,y1)处的高度为1.5,最小高度矩阵Hmin在(x1,y1)处的高度为-1.2。类似地,最大高度矩阵Hmax在(x2,y2)处的高度为2.6,最小高度矩阵Hmin在(x2,y2)处的高度为-0.8。
根据上述实施例,可以把激光雷达周围L×W范围的点云高度在[Zmin,Zmax]之间的点云投影到宽和高分别为w和h像素的三通道的俯视图上。利用三通道的俯视图,通过RGB不同颜色直观显示点云高度,可以使得用户仅根据颜色即可获得识别物体的初步线索。另外,通过分段控制点云高度与颜色值之间的转换参数(例如斜率),可以使得特定颜色通道的信息被更有效地呈现。
在上述实施例中,描述了如何点云高度转换成三通道的RGB值。在另一些实施例中,也可以将点云高度转换为俯视图中一个通道(即第一通道)中的颜色值,而将点云数据中的反射强度值和点云密度分别转换为俯视图中第二通道和第三通道中的颜色值。
例如,可以利用公式(2)来计算数据点在俯视图中各通道对应的颜色值:
其中,G(x,y)表示与俯视图中像素点(x,y)对应的所有数据点的高度的最大值,B(x,y)表示与俯视图中像素点(x,y)对应的所有数据点的反射强度的最大值,R(x,y)表示与俯视图中像素点(x,y)对应的所有数据点的密度,n是投影到像素点(x,y)的所有数据点的个数。在R(x,y)的计算中,1.0为点云密度的最大值,N′表示多少线的激光雷达,例如在N′为64即表示使用64线激光雷达采集点云数据。
通过在点云高度的基础上增加反射强度和密度信息,极大增强了俯视图的表征能力,例如反射强度可以更好地区分具有金属表面的车辆和软体表面的人,也可以减少对路边花坛的误检测。
图4示出根据本公开另一些实施例的物体识别方法的流程示意图。图4与图2的不同之处在于,还包括步骤20,并且图4中的步骤30′与图2中的步骤30不同。下面将仅描述图4与图2的不同之处,相同之处不再赘述。
如图4所示,物体识别方法还包括:步骤20,获取图像传感器采集的物体的图像数据。应当理解,步骤20与步骤10的执行顺序不受限制,可以先后执行也可以同时进行,即步骤20可以在步骤10之前或之后或同时执行。
在步骤10和步骤20分别获取点云数据和图像数据之后,在步骤30′,利用点云数据和图像数据生成多通道的俯视图,例如生成4通道的俯视图。
在一些实施例中,4通道的俯视图除了可以包括前述的表示点云高度的三个颜色通道,还包括表示物体类别的第四通道。在另一些实施例中,4通道的俯视图除了可以包括前述的表示点云高度的第一通道、表示反射强度值的第二通道和表示点云密度的第三通道之外,还包括表示物体类别的第四通道。
通过在RGB三通道的俯视图中增加第四通道,以表征基于视觉图像获取的物体类别,由于基于视觉模型得到的类别信息通常较为准确,所以可以大大增强区分物体类别的能力和区分前景和背景物体的能力,从而有效减少误检测。
在一些实施例中,可以对多通道的俯视图进行平滑处理,例如利用高斯滤波,以得到平滑的俯视图,便于后续处理。
在根据点云数据生成多通道的俯视图后,在步骤50,利用多通道的俯视图识别物体,如图2所示。下面结合图5描述如何识别物体。
图5示出根据本公开一些实施例的利用多通道的俯视图识别物体的流程示意图。
如图5所示,步骤50利用多通道的俯视图对待识别物体进行识别包括:步骤51,将多通道的俯视图输入卷积神经网络,得到待识别物体在俯视图(即图像坐标系)上的二维检测框;步骤52,根据待识别物体在俯视图上的二维检测框,确定待识别物体在点云坐标系中的二维检测框;步骤53,计算待识别物体在点云坐标系中的的高度;和步骤54,基于物体在点云坐标系中的的二维检测框和待识别物体的高度,输出待识别物体在点云坐标系中的三维检测框。
在步骤51,卷积神经网络CNN例如为一阶段无预测(proposal free)的CNN(如SSD),得到的检测框为不带高度的检测框。
在俯视图的图像坐标系中,二维检测框的坐标可以表示为bbev={cx,cy,lbev,wbev,θbev,t}。cx是物体的几何中心x坐标,cy是物体的几何中心y坐标;lbev是物体的长度,w是物体的宽度,以像素为单位;θbev是物体在图像坐标系中的方向角,在[-π/2,π/2)的范围;t是物体的类别,如行人、汽车、三轮车等。
在一些实施例中,对步骤51中得到的检测框进行一些后处理,例如非极大化抑制处理,即对于得到多个检测框的情形只取最大概率的检测框。
接下来,在步骤52,可以将俯视图的图像坐标系中的二维检测框bbev={cx,cy,lbev,wbev,θbev,t}转换到激光雷达的点云坐标系中的二维检测框blidar={CX,CY,llidar,wlidar,θlidar,t}。例如利用公式(1),可以根据cx,cy和θbev计算CX,CY和θlidar。也可以利用图像坐标系和点云坐标系之间的对应关系,根据lbev和wbev得到待识别物体的长度和宽度在点云坐标系下的表达llidar和wlidar。
然后,在步骤53,计算待识别物体在点云坐标系中的高度。
如前所述,俯视图的图像坐标系中的一个像素点可能对应多个数据点,对于每个像素点,确定该像素点对应的至少一个数据点的点云高度的最大值和最小值,作为该像素点的最大高度和最小高度。对于二维检测框bbev={cx,cy,lbev,wbev,θbev,t}中包括的所有像素点,将所述多个像素点对应的最大高度中的最大值确定为检测框的最大高度Hmax,并将所述多个像素点对应的最小高度中的最小值确定为检测框的最小高度Hmin。然后,根据检测框的最大高度与最小高度之间的差值,计算检测框的高度作为待识别物体在点云坐标系中的高度,例如,检测框的高度为h=Hmax-Hmin。
接着,在步骤54,输出三维检测框。
三维检测框包括待识别物体的完整信息,既包括待识别物体的类别t,又包括待识别物体在激光雷达点云坐标系中的位置和大小,即(CX,CY,CZ)和长宽高(llidar,wlidar,h),还包括待识别物体的方向角θlidar。
检测框在激光雷达的点云坐标系中的Z坐标CZ例如可以根据CZ=(Hmax+Hmin)/2来计算。结合前面计算的二维检测框blidar={CX,CY,llidar,wlidar,θlidar,t},可以得到激光雷达的点云坐标系下的三维检测框Blidar={CX,CY,CZ,llidar,wlidar,h,θlidar,t}。
前面结合图1-图5描述了根据本公开一些实施例的物体识别模型的训练方法、数据增广方法和物体识别方法,下面接着描述实现这些方法的装置或系统。
根据本公开的一些实施例,还提供了一种物体识别模型的训练装置,能够实现上述任意实施例所述的训练方法。
图6示出本公开一些实施例的物体识别模型的训练装置10的框图。
如图6所示,物体识别模型的训练装置10包括:
获取单元11,配置为获取训练集,训练集包括激光雷达采集的物体的点云标注数据集,点云标注数据集带有真值边界框,例如执行步骤S1;
俯视图生成单元12,配置为根据点云标注数据集,生成俯视图,例如执行步骤S2;
提取单元13,配置为利用特征提取器,从俯视图提取多个不同分辨率的特征图,例如执行步骤S3;
确定单元14,配置为确定锚框的尺寸及其在特征图上的位置,例如执行步骤S4;
锚框生成单元15,配置为以特征图的每个像素为中心,生成不同尺寸的锚框,尺寸包括大小和宽高比,例如执行步骤S5;
匹配单元16,配置为在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配,以确定锚框的样本类型,例如执行步骤S6;
训练单元17,配置为基于不同样本类型的锚框对卷积神经网络的损失函数的贡献,训练物体识别模型,例如执行步骤S7。
根据本公开的一些实施例,还提供了数据增广装置,能够实现上述任意实施例所述的数据增广方法。
图6A示出本公开一些实施例的数据增广装置的框图。
如图6A所示,数据增广装置包括获取单元120、选择单元140和增广单元160。
获取单元120配置为获取激光雷达采集的物体的点云标注数据集,例如执行步骤S12。点云标注数据集带有真值三维检测框。
选择单元140配置为从点云标注数据集中选择一个三维检测框,例如执行步骤S14。
增广单元160配置为对所选择的三维检测框包含的点云数据执行指定操作中的至少一项,得到增广数据,例如执行步骤S16。指定操作包括:绕三维检测框的高度方向将所包含的点云数据旋转预定角度;删除所包含的点云数据的一部分;为所包含的点云数据中的至少一部分增加随机噪声点;将所包含的点云数据从所在的点云帧复制到其他点云帧的空间。
图6B示出本公开一些实施例的物体识别装置的框图。
如图6B所示,物体识别装置60包括获取单元61、生成单元63和识别单元65。
获取单元61配置为获取激光雷达采集的物体的点云数据,例如执行步骤S1。点云数据包括反映点云高度的空间坐标值。在一些实施例中,获取单元61还配置为获取图像传感器采集的物体的图像数据。
生成单元63配置为根据点云数据生成多通道的俯视图,例如执行步骤S3。多通道的俯视图包括表示点云高度的第一通道。在一些实施例中,多通道的俯视图还包括表示反射强度值的第二通道和表示点云密度的第三通道。在另一些实施例中,多通道的俯视图还包括表示图像数据中的颜色信息的第四通道。
识别单元65配置为利用多通道的俯视图识别物体,例如执行步骤S5。
图6C示出本公开一些实施例的图6B所示识别单元的框图。
如图6C所示,识别单元65包括输入子单元651、确定子单元652、计算子单653和输出子单元654。
输入子单元651、配置为将多通道的俯视图输入训练得到的卷积神经网络,得到待识别物体在俯视图上的二维检测框,例如执行步骤51。
确定子单元652配置为根据待识别物体在俯视图上的二维检测框,确定待识别物体在点云坐标系中的二维检测框,例如执行步骤52。
计算子单653配置为计算待识别物体在点云坐标系中的高度,例如执行步骤53。
输出子单元654配置为基于待识别物体在俯视图上的二维检测框待识别和物体的高度,输出待识别物体在点云坐标系中的三维检测框,例如执行步骤54。
根据本公开的一些实施例,还提供了一种电子设备,能够实现上述任意实施例所述的方法。
图7示出本公开一些实施例的电子设备的框图。
如图7所示,电子设备70包括:存储器710以及耦接至该存储器710的处理器720,处理器720被配置为基于存储在存储器710中的指令,执行本公开中任意一个实施例中的方法中的一个或多个步骤。
存储器710例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)、数据库以及其他程序等。
图8示出本公开另一些一些实施例的电子设备的框图。
如图8所示,电子设备80包括:存储器810以及耦接至该存储器810的处理器820,处理器820被配置为基于存储在存储器810中的指令,执行前述任意一个实施例中的方法。
存储器810例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
电子设备80还可以包括输入输出接口830、网络接口840、存储接口850等。这些接口830、840、850以及存储器810和处理器820之间例如可以通过总线860连接。其中,输入输出接口830为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口840为各种联网设备提供连接接口。存储接口850为SD卡、U盘等外置存储设备提供连接接口。
根据本公开的一些实施例,还提供了物体识别系统,包括上述任意实施例所述的电子设备。
图9示出本公开一些实施例的物体识别系统的框图。
如图9所示,物体识别系统9包括电子设备90。电子设备90被配置为执行前述任一实施例所述的方法。电子设备90的结构可以与前述电子设备70或80的结构类似。
在一些实施例中,物体识别系统9还包括:激光雷达91,配置为采集物体的点云数据。在另一些实施例中,物体识别系统9还包括:图像传感器93,配置为采集物体的图像数据。图像传感器93例如为摄像头。
图9A示出本公开又一些实施例的电子设备的框图。
如图9A所示,电子设备90包括前述任一实施例所述的物体识别模型的训练装置10和物体识别装置60。
训练装置10配置为利用到点云标注数据集及其增广数据,训练用于物体识别的卷积神经网络,例如执行前述任一实施例所述的训练方法。
物体识别装置60配置为利用训练得到的卷积神经网络,进行物体识别,例如执行前述任一实施例所述的物体识别方法。
本领域内的技术人员应当明白,本公开的实施例可提供为方法、装置、系统或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
至此,已经详细描述了根据本公开的物体识别方法、装置和系统,以及计算机可读存储介质。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
可能以许多方式来实现本公开的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和系统。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员应该理解,可在不脱离本公开的范围和精神的情况下,对以上实施例进行修改。本公开的范围由所附权利要求来限定。
Claims (26)
1.一种物体识别模型的训练方法,包括:
获取训练集,训练集包括激光雷达采集的物体的点云标注数据集,点云标注数据集带有真值边界框;
根据点云标注数据集中的点云数据,生成俯视图;
利用特征提取器,从俯视图提取多个不同分辨率的特征图;
确定锚框的尺寸及其在特征图上的位置,尺寸包括大小和宽高比;
以特征图的每个像素为中心,生成不同尺寸的锚框;
在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配,以确定锚框的样本类型;
基于不同样本类型的锚框对卷积神经网络的损失函数的贡献,训练物体识别模型。
2.根据权利要求1所述的训练方法,其中,确定锚框的尺寸及其在特征图上的位置包括:根据俯视图及其对应特征图的尺寸,确定锚框在特征图上的位置。
3.根据权利要求1所述的训练方法,其中,确定锚框的尺寸及其在特征图上的位置包括:根据俯视图的图像密度,确定锚框的尺寸。
4.根据权利要求1所述的训练方法,其中,确定锚框的尺寸及其在特征图上的位置包括:对训练集包括的真值边界框进行统计聚类,确定锚框的尺寸。
5.根据权利要求1所述的训练方法,其中,不同分辨率包括第一分辨率、第二分辨率和第三分辨率,其中第一分辨率大于第二分辨率,第二分辨率大于第三分辨率,在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配包括:
在第一分辨率的特征图上,将具有第一尺寸的锚框与真值边界框进行匹配;
在第二分辨率的特征图上,将具有第二尺寸的锚框与真值边界框进行匹配,第二尺寸大于第一尺寸;
在第三分辨率的特征图上,将具有第三尺寸的锚框与真值边界框进行匹配,第三尺寸大于第二尺寸。
6.根据权利要求5所述的训练方法,其中,在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配,以确定锚框的样本类型包括:
将锚框和真值边界框投影到俯视图的图像坐标系;
将锚框与真值边界框进行匹配,以确定锚框属于正样本、负样本或被忽略样本,其中,正样本和负样本对损失函数有贡献,被忽略样本对损失函数无贡献。
7.根据权利要求6所述的训练方法,其中,将锚框与真值边界框进行匹配,以确定锚框属于正样本、负样本或被忽略样本包括:
根据锚框的几何中心与真值边界框的几何中心之间的距离,确定锚框属于正样本、负样本或被忽略样本,
其中,与最近的真值边界框的距离小于第一距离阈值的锚框为正样本,与任一真值边界框距离最近的锚框为正样本,与最近的真值边界框的距离大于或等于第二距离阈值的锚框为负样本,既不是正样本也不是负样本的其他锚框为被忽略样本,第二距离阈值大于第一距离阈值。
8.根据权利要求6所述的训练方法,其中,将锚框与真值边界框进行匹配,以确定锚框属于正样本、负样本或被忽略样本包括:
根据锚框与真值边界框的交并比,确定锚框属于正样本、负样本或被忽略样本,
其中,与真值边界框的交并比大于第一比例阈值的锚框为正样本,与任一真值边界框交并比最大的锚框为正样本,与真值边界框的交并比小于或等于第二比例阈值的锚框为负样本,既不是正样本也不是负样本的其他锚框为被忽略样本,第二比例阈值小于第一比例阈值。
9.根据权利要求1所述的训练方法,其中,基于不同样本类型的锚框对物体识别模型的损失函数的贡献,训练物体识别模型包括:
利用多任务学习方法,预测每个锚框的识别结果,识别结果包括锚框是否包含物体,以及锚框所含物体的位置、尺寸、方向和类别,多任务包括锚框所含物体是前景还是背景的二元分类任务,锚框所含物体的位置、大小和方向的回归任务,以及锚框所含物体的类别的分类任务,其中,多任务共用特征提取器。
10.根据权利要求9所述的训练方法,其中,损失函数表示为
Ltotal=μLconf+ρLreg+τLcls,
其中,Lconf表示前景/背景置信度损失,Lreg表示位置、大小和方向的回归损失,Lcls表示类别的分类损失,μ、ρ和τ分别表示相应的损失权重。
11.根据权利要求10所述的训练方法,其中,前景/背景置信度损失Lconf使用Sigmoid焦点损失,位置、大小和方向的回归损失Lreg使用SmoothL1损失,类别的分类损失Lcls使用Softmax焦点损失。
14.根据权利要求1所述的训练方法,其中,特征提取器包括Resnet-FPN或Xception-FPN特征提取器。
15.根据权利要求14所述的训练方法,其中,Resnet-FPN特征提取器包括:
多组Resnet模块,配置为产生多个不同分辨率的原始特征图,每组Resnet模块包括多个Resnet模块,每个Resnet模块包括多个融合卷积FusedConv运算符,每个融合卷积FusedConv运算符由二维卷积、批规范化Batch Norm和RELU激活三个子运算符组成;
特征金字塔网络FPN,配置为将多个不同分辨率的原始特征图与相应的上采样特征图进行组合;和
输出头,配置为输出多个不同分辨率的特征图。
16.根据权利要求15所述的训练方法,其中,在最后执行的融合卷积FusedConv运算符中的批规范化Batch Norm的缩放参数和偏差的初始值配置为根据预测的物体类别动态调整。
17.根据权利要求14所述的训练方法,其中,Xception-FPN特征提取器包括:
入口层,包括多个可分离卷积SeperableConv层,配置为产生多个不同分辨率的原始特征图;
特征金字塔网络FPN,配置为将多个不同分辨率的原始特征图与相应的上采样特征图进行组合;和
预测头,配置为输出多个不同分辨率的特征图。
18.根据权利要求1至17中任一项所述的训练方法,其中,获取训练集包括:
获取激光雷达采集的物体的点云标注数据集;
从点云标注数据集中选择一个真值边界框;
对所选择的真值边界框包含的点云数据执行以下操作中的至少一项,得到增广数据:
绕真值边界框的高度方向将所包含的点云数据旋转预定角度;
删除所包含的点云数据的一部分;
为所包含的点云数据中的至少一部分增加随机噪声点;和
将所包含的点云数据从所在的点云帧复制到其他点云帧的空间。
19.一种物体识别方法,包括:
根据权利要求1至18任一项所述的物体识别模型的训练方法,训练物体识别模型;和
利用训练得到的物体识别模型,进行物体识别。
20.根据权利要求19所述的物体识别方法,其中,利用训练得到的物体识别模型,进行物体识别包括:
获取激光雷达采集的待识别物体的点云数据,其中,点云数据包括反映点云高度的空间坐标值;
根据点云数据生成多通道的俯视图,其中,多通道的俯视图包括表示点云高度的第一通道;
利用多通道的俯视图对待识别物体进行识别。
21.根据权利要求20所述的物体识别方法,其中,利用多通道的俯视图对待识别物体进行识别包括:
将多通道的俯视图输入训练得到的物体识别模型,得到待识别物体在俯视图上的二维检测框;
根据待识别物体在俯视图上的二维检测框,确定待识别物体在点云坐标系中的二维检测框;
计算待识别物体在点云坐标系中的高度;和
基于待识别物体在俯视图上的二维检测框和待识别物体的高度,输出待识别物体在点云坐标系中的三维检测框。
22.一种物体识别模型的训练装置,包括:
获取单元,配置为获取训练集,训练集包括激光雷达采集的物体的点云标注数据集,点云标注数据集带有真值边界框;
俯视图生成单元,配置为根据点云标注数据集,生成俯视图;
提取单元,配置为利用特征提取器,从俯视图提取多个不同分辨率的特征图;
确定单元,配置为确定锚框的尺寸及其在特征图上的位置;
锚框生成单元,配置为以特征图的每个像素为中心,生成不同尺寸的锚框,尺寸包括大小和宽高比;
匹配单元,配置为在多个不同分辨率的特征图上,将锚框与真值边界框进行匹配,以确定锚框的样本类型;
训练单元,配置为基于不同样本类型的锚框对卷积神经网络的损失函数的贡献,训练物体识别模型。
23.一种物体识别系统,包括:
物体识别模型的训练装置,配置为根据权利要求1至18任一项所述的训练方法,训练物体识别的模型;和
物体识别装置,配置为利用训练得到的物体识别模型,进行物体识别。
24.一种电子设备,包括:
存储器;和
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器装置中的指令,执行权利要求1至18任一项所述的训练方法或权利要求19至21任一项所述的物体识别方法。
25.一种物体识别系统,包括:
根据权利要求24所述的电子设备;和
激光雷达,配置为采集物体的点云数据。
26.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现权利要求1至18任一项所述的训练方法或权利要求19至21任一项所述的物体识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011212680.5A CN112287860B (zh) | 2020-11-03 | 2020-11-03 | 物体识别模型的训练方法及装置、物体识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011212680.5A CN112287860B (zh) | 2020-11-03 | 2020-11-03 | 物体识别模型的训练方法及装置、物体识别方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112287860A true CN112287860A (zh) | 2021-01-29 |
CN112287860B CN112287860B (zh) | 2022-01-07 |
Family
ID=74351301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011212680.5A Active CN112287860B (zh) | 2020-11-03 | 2020-11-03 | 物体识别模型的训练方法及装置、物体识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112287860B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113095288A (zh) * | 2021-04-30 | 2021-07-09 | 浙江吉利控股集团有限公司 | 障碍物漏检修复方法、装置、设备及存储介质 |
CN113111708A (zh) * | 2021-03-10 | 2021-07-13 | 北京爱笔科技有限公司 | 车辆匹配样本生成方法、装置、计算机设备和存储介质 |
CN113138373A (zh) * | 2021-03-31 | 2021-07-20 | 苏州玖物互通智能科技有限公司 | 激光雷达测量值修正方法、误差补偿模型以及激光雷达 |
CN113610138A (zh) * | 2021-08-02 | 2021-11-05 | 典基网络科技(上海)有限公司 | 基于深度学习模型的图像分类识别方法、装置及存储介质 |
CN113642620A (zh) * | 2021-07-30 | 2021-11-12 | 北京三快在线科技有限公司 | 一种模型训练以及障碍物检测方法及装置 |
CN113688663A (zh) * | 2021-02-23 | 2021-11-23 | 北京澎思科技有限公司 | 人脸检测方法、装置、电子设备以及可读存储介质 |
CN113808186A (zh) * | 2021-03-04 | 2021-12-17 | 京东鲲鹏(江苏)科技有限公司 | 训练数据生成方法、装置与电子设备 |
CN114022558A (zh) * | 2022-01-05 | 2022-02-08 | 深圳思谋信息科技有限公司 | 图像定位方法、装置、计算机设备和存储介质 |
CN114332351A (zh) * | 2021-11-29 | 2022-04-12 | 清华大学 | 一种基于多视角相机的小鼠运动重建方法及装置 |
CN114743023A (zh) * | 2022-06-14 | 2022-07-12 | 安徽大学 | 一种基于RetinaNet模型的麦蜘蛛图像检测方法 |
CN116587327A (zh) * | 2023-06-20 | 2023-08-15 | 广东电网有限责任公司广州供电局 | 运动控制系统、带电作业机器人检测方法及相关设备 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180307899A1 (en) * | 2017-04-24 | 2018-10-25 | Intel Corproation | Recognition, reidentification and security enhancements using autonomous machines |
US20180350395A1 (en) * | 2017-06-06 | 2018-12-06 | Google Llc | End of query detection |
US20180365503A1 (en) * | 2017-06-16 | 2018-12-20 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and Apparatus of Obtaining Obstacle Information, Device and Computer Storage Medium |
CN110738121A (zh) * | 2019-09-17 | 2020-01-31 | 北京科技大学 | 一种前方车辆检测方法及检测系统 |
CN111133447A (zh) * | 2018-02-18 | 2020-05-08 | 辉达公司 | 适于自主驾驶的对象检测和检测置信度 |
US20200150275A1 (en) * | 2018-11-13 | 2020-05-14 | Beijing Didi Infinity Technology And Development Co., Ltd. | Methods and systems for color point cloud generation |
CN111160410A (zh) * | 2019-12-11 | 2020-05-15 | 北京京东乾石科技有限公司 | 一种物体检测方法和装置 |
CN111401133A (zh) * | 2020-02-19 | 2020-07-10 | 北京三快在线科技有限公司 | 目标数据增广方法、装置、电子设备和可读存储介质 |
CN111652085A (zh) * | 2020-05-14 | 2020-09-11 | 东莞理工学院 | 基于2d与3d特征结合的物体识别方法 |
CN111695486A (zh) * | 2020-06-08 | 2020-09-22 | 武汉中海庭数据技术有限公司 | 一种基于点云的高精度方向标志牌目标提取方法 |
WO2020206708A1 (zh) * | 2019-04-09 | 2020-10-15 | 广州文远知行科技有限公司 | 障碍物的识别方法、装置、计算机设备和存储介质 |
CN111832471A (zh) * | 2020-07-10 | 2020-10-27 | 北京经纬恒润科技有限公司 | 一种物体识别方法及装置 |
CN111860060A (zh) * | 2019-04-29 | 2020-10-30 | 顺丰科技有限公司 | 目标检测方法、装置、终端设备及计算机可读存储介质 |
-
2020
- 2020-11-03 CN CN202011212680.5A patent/CN112287860B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180307899A1 (en) * | 2017-04-24 | 2018-10-25 | Intel Corproation | Recognition, reidentification and security enhancements using autonomous machines |
US20180350395A1 (en) * | 2017-06-06 | 2018-12-06 | Google Llc | End of query detection |
US20180365503A1 (en) * | 2017-06-16 | 2018-12-20 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and Apparatus of Obtaining Obstacle Information, Device and Computer Storage Medium |
CN111133447A (zh) * | 2018-02-18 | 2020-05-08 | 辉达公司 | 适于自主驾驶的对象检测和检测置信度 |
US20200150275A1 (en) * | 2018-11-13 | 2020-05-14 | Beijing Didi Infinity Technology And Development Co., Ltd. | Methods and systems for color point cloud generation |
WO2020206708A1 (zh) * | 2019-04-09 | 2020-10-15 | 广州文远知行科技有限公司 | 障碍物的识别方法、装置、计算机设备和存储介质 |
CN111860060A (zh) * | 2019-04-29 | 2020-10-30 | 顺丰科技有限公司 | 目标检测方法、装置、终端设备及计算机可读存储介质 |
CN110738121A (zh) * | 2019-09-17 | 2020-01-31 | 北京科技大学 | 一种前方车辆检测方法及检测系统 |
CN111160410A (zh) * | 2019-12-11 | 2020-05-15 | 北京京东乾石科技有限公司 | 一种物体检测方法和装置 |
CN111401133A (zh) * | 2020-02-19 | 2020-07-10 | 北京三快在线科技有限公司 | 目标数据增广方法、装置、电子设备和可读存储介质 |
CN111652085A (zh) * | 2020-05-14 | 2020-09-11 | 东莞理工学院 | 基于2d与3d特征结合的物体识别方法 |
CN111695486A (zh) * | 2020-06-08 | 2020-09-22 | 武汉中海庭数据技术有限公司 | 一种基于点云的高精度方向标志牌目标提取方法 |
CN111832471A (zh) * | 2020-07-10 | 2020-10-27 | 北京经纬恒润科技有限公司 | 一种物体识别方法及装置 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113688663A (zh) * | 2021-02-23 | 2021-11-23 | 北京澎思科技有限公司 | 人脸检测方法、装置、电子设备以及可读存储介质 |
CN113808186B (zh) * | 2021-03-04 | 2024-01-16 | 京东鲲鹏(江苏)科技有限公司 | 训练数据生成方法、装置与电子设备 |
CN113808186A (zh) * | 2021-03-04 | 2021-12-17 | 京东鲲鹏(江苏)科技有限公司 | 训练数据生成方法、装置与电子设备 |
CN113111708A (zh) * | 2021-03-10 | 2021-07-13 | 北京爱笔科技有限公司 | 车辆匹配样本生成方法、装置、计算机设备和存储介质 |
CN113111708B (zh) * | 2021-03-10 | 2023-12-29 | 北京爱笔科技有限公司 | 车辆匹配样本生成方法、装置、计算机设备和存储介质 |
CN113138373B (zh) * | 2021-03-31 | 2022-05-24 | 苏州玖物互通智能科技股份有限公司 | 激光雷达测量值修正方法、误差补偿模型以及激光雷达 |
CN113138373A (zh) * | 2021-03-31 | 2021-07-20 | 苏州玖物互通智能科技有限公司 | 激光雷达测量值修正方法、误差补偿模型以及激光雷达 |
CN113095288A (zh) * | 2021-04-30 | 2021-07-09 | 浙江吉利控股集团有限公司 | 障碍物漏检修复方法、装置、设备及存储介质 |
CN113642620A (zh) * | 2021-07-30 | 2021-11-12 | 北京三快在线科技有限公司 | 一种模型训练以及障碍物检测方法及装置 |
CN113610138A (zh) * | 2021-08-02 | 2021-11-05 | 典基网络科技(上海)有限公司 | 基于深度学习模型的图像分类识别方法、装置及存储介质 |
CN114332351A (zh) * | 2021-11-29 | 2022-04-12 | 清华大学 | 一种基于多视角相机的小鼠运动重建方法及装置 |
CN114022558A (zh) * | 2022-01-05 | 2022-02-08 | 深圳思谋信息科技有限公司 | 图像定位方法、装置、计算机设备和存储介质 |
CN114743023A (zh) * | 2022-06-14 | 2022-07-12 | 安徽大学 | 一种基于RetinaNet模型的麦蜘蛛图像检测方法 |
CN116587327A (zh) * | 2023-06-20 | 2023-08-15 | 广东电网有限责任公司广州供电局 | 运动控制系统、带电作业机器人检测方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112287860B (zh) | 2022-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112287860B (zh) | 物体识别模型的训练方法及装置、物体识别方法及系统 | |
CN109948661B (zh) | 一种基于多传感器融合的3d车辆检测方法 | |
CN112287859A (zh) | 物体识别方法、装置和系统,计算机可读存储介质 | |
CN112395962A (zh) | 数据增广方法及装置、物体识别方法及系统 | |
Hoang et al. | Enhanced detection and recognition of road markings based on adaptive region of interest and deep learning | |
WO2022033076A1 (zh) | 目标检测方法、装置、设备、存储介质及程序产品 | |
WO2021096629A1 (en) | Geometry-aware instance segmentation in stereo image capture processes | |
CN113761999A (zh) | 一种目标检测方法、装置、电子设备和存储介质 | |
CN113658257B (zh) | 一种无人设备定位方法、装置、设备及存储介质 | |
CN113095152A (zh) | 一种基于回归的车道线检测方法及系统 | |
Zelener et al. | Cnn-based object segmentation in urban lidar with missing points | |
Cho et al. | Semantic segmentation with low light images by modified CycleGAN-based image enhancement | |
CN113408324A (zh) | 目标检测方法、装置及系统、高级驾驶辅助系统 | |
CN115147328A (zh) | 三维目标检测方法及装置 | |
CN117058646A (zh) | 基于多模态融合鸟瞰图的复杂道路目标检测方法 | |
CN113420648A (zh) | 一种具有旋转适应性的目标检测方法及系统 | |
KR102270827B1 (ko) | 360도 주변 물체 검출 및 인식 작업을 위한 다중 센서 데이터 기반의 융합 정보 생성 방법 및 장치 | |
CN112529917A (zh) | 一种三维目标分割方法、装置、设备和存储介质 | |
CN114898306B (zh) | 一种检测目标朝向的方法、装置及电子设备 | |
US20230410561A1 (en) | Method and apparatus for distinguishing different configuration states of an object based on an image representation of the object | |
CN115588187A (zh) | 基于三维点云的行人检测方法、装置、设备以及存储介质 | |
CN106909936B (zh) | 一种基于双车辆可变形部件模型的车辆检测方法 | |
CN114170267A (zh) | 目标跟踪方法、装置、设备及计算机可读存储介质 | |
CN113052118A (zh) | 基于高速快球摄像机实现场景变换视频分析检测的方法、系统、装置、处理器及存储介质 | |
CN111783683A (zh) | 一种基于特征平衡和关系增强的人体检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |