三维目标检测及神经网络的训练方法、装置及设备

文档序号:934563 发布日期:2021-03-05 浏览:1次 >En<

阅读说明:本技术 三维目标检测及神经网络的训练方法、装置及设备 (Three-dimensional target detection and neural network training method, device and equipment ) 是由 易鸿伟 周辉 王哲 于 2019-08-29 设计创作,主要内容包括:公开了一种三维目标检测及神经网络的训练方法、装置及设备。该方法包括:利用神经网络对样本三维雷达点云进行体素化,得到体素化点云;所述样本三维雷达点云中的三维目标预先进行了三维目标包围盒的标注,以得到三维目标包围盒的标注信息;所述神经网络根据所述体素化点云,确定所述体素化点云的特征图,并根据所述特征图获得预测语义掩模;根据所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数;其中,所述真实语义掩模根据所述体素化点云和所述三维目标包围盒的标注信息确定。(A three-dimensional target detection and neural network training method, device and equipment are disclosed. The method comprises the following steps: carrying out voxelization on the sample three-dimensional radar point cloud by utilizing a neural network to obtain a voxelized point cloud; marking a three-dimensional target bounding box of a three-dimensional target in the sample three-dimensional radar point cloud in advance to obtain marking information of the three-dimensional target bounding box; the neural network determines a feature map of the voxelized point cloud according to the voxelized point cloud and obtains a prediction semantic mask according to the feature map; adjusting network parameters of the neural network according to a difference between the predicted semantic mask and a true semantic mask; wherein the real semantic mask is determined according to the voxelized point cloud and the labeling information of the three-dimensional target bounding box.)

三维目标检测及神经网络的训练方法、装置及设备

技术领域

本公开涉及计算机视觉技术,具体涉及一种三维目标检测及神经网络的训练方法、装置及设备。

背景技术

雷达是三维目标检测中重要的传感器之一,其能够产生稀疏的雷达点云,从而能够很好地捕捉周围的场景结构。基于雷达点云的三维目标检测在实际场景应用,例如自动驾驶、机器人导航过程中,具有十分重要的应用价值。

发明内容

本公开实施例提供一种三维目标检测和神经网络的训练方案。

第一方面,提供一种经网络的训练方法,所述方法包括:利用神经网络对样本三维雷达点云进行体素化,得到体素化点云;所述样本三维雷达点云中的三维目标预先进行了三维目标包围盒的标注,以得到三维目标包围盒的标注信息;所述神经网络根据所述体素化点云,确定所述体素化点云的特征图,并根据所述特征图获得预测语义掩模;根据所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数;其中,所述真实语义掩模根据所述体素化点云和所述三维目标包围盒的标注信息确定。

结合本公开提供的任一实施方式,所述神经网络根据所述特征图获得预测语义掩模之后,所述方法还包括:所述神经网络根据所述预测语义掩模和所述体素化点云的特征图,获得所述样本三维雷达点云中的三维目标边界框的预测信息;根据所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数,包括:根据所述三维目标边界框的预测信息和所述三维目标包围盒的标注信息之间的差异,以及所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数。

结合本公开提供的任一实施方式,所述神经网络根据所述预测语义掩模和所述体素化点云的特征图,获得所述样本三维雷达点云中的三维目标边界框的预测信息,包括:所述神经网络将所述预测语义掩模与所述体素化点云的特征图融合,获得融合后的特征图;所述神经网络根据所述融合后的特征图获得所述样本三维雷达点云中的三维目标边界框的预测信息。

结合本公开提供的任一实施方式,利用神经网络对样本三维雷达点云进行体素化,得到体素化点云,包括:利用神经网络将所述样本三维雷达点云划分为等间距的体素;将各个体素内的雷达点云的平均参数作为所述体素的参数,获得体素化点云。

结合本公开提供的任一实施方式,述体素化点云的特征图包括二维鸟瞰体素特征图;所述神经网络根据所述体素化点云,确定所述体素化点云的特征图,包括:利用所述神经网络对所述体素化点云进行卷积处理,获得三维鸟瞰体素特征图;利用所述神经网络将所述三维鸟瞰体素特征图转换为二维鸟瞰体素特征图。

结合本公开提供的任一实施方式,所述神经网络将所述预测语义掩模与所述体素化点云的特征图融合,获得融合后的特征图,包括:所述神经网络将所述预测语义掩模的概率加1的结果作为权重,与所述特征图相乘,获得融合后的特征图。

结合本公开提供的任一实施方式,所述神经网络根据所述融合后的特征图获得所述样本三维雷达点云中的三维目标边界框的预测信息包括:利用所述神经网络的不同分支对所述融合后的特征图的不同区域范围进行三维目标检测,将各个分支输出的检测信息进行融合,输出三维目标边界框的预测信息,其中,所述各个分支具有不同大小的卷积核以及不同的扩展率。

结合本公开提供的任一实施方式,根据所述三维目标边界框的预测信息和所述三维目标包围盒的标注信息之间的差异,以及所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数,包括:根据所述三维目标边界框的预测信息与三维目标包围盒的标注信息的差异之和,获得目标定位损失;根据所述预测语义掩模与所述真实语义掩模之间的差异,获得语义分割损失;将所述目标定位损失和所述语义分割损失加权求和,获得总的损失;根据所述总的损失调整所述神经网络的网络参数。

结合本公开提供的任一实施方式,在利用神经网络对样本三维雷达点云进行体素化之前,所述方法还包括对所述样本三维雷达点云进行增广,具体包括:将多个三维目标包围盒合并至一个场景中,并采用地面方程计算进行约束;对所述场景中的三维目标包围盒和对应的点云分别进行增广;和/或,对所有样本三维雷达点云中的点云和三维目标包围盒共同进行增广;所述增广,包括以下任意一种:尺度变换、旋转变换、镜像翻转。

第二方面,提供一种三维目标检测方法,所述方法包括:利用神经网络对待处理的三维雷达点云进行处理,确定所述三维雷达点云中的三维目标的边界框,所述神经网络采用本公开任一实施方式所述的神经网络的训练方法训练得到。

结合本公开提供的任一实施方式,所述神经网络包括不同分支,所述不同分支用于对融合后的特征图的不同区域范围进行三维目标检测,所述不同分支具有不同大小的卷积核以及不同的扩展率;

利用神经网络对待处理的三维雷达点云进行处理确定所述三维雷达点云中的三维目标的边界框,包括:

对各个分支输出的检测结果分别进行极大值抑制后进行融合,得到所述三维雷达点云中的三维目标的边界框。

第三方面,提供一种三神经网络的训练装置,所述装置包括:第一获得单元,用于利用神经网络对样本三维雷达点云进行体素化,得到体素化点云;所述样本三维雷达点云中的三维目标预先进行了三维目标包围盒的标注,以得到三维目标包围盒的标注信息;第二获得单元,用于利用所述神经网络根据所述体素化点云,确定所述体素化点云的特征图,并根据所述特征图获得预测语义掩模;调整单元,用于根据所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数;其中,所述真实语义掩模根据所述体素化点云和所述三维目标包围盒的标注信息确定。

结合本公开提供的任一实施方式,所述装置还包括预测单元,用于在所述神经网络根据所述特征图获得预测语义掩模之后,利用所述神经网络根据所述预测语义掩模和所述体素化点云的特征图,获得所述样本三维雷达点云中的三维目标边界框的预测信息;所述调整单元具体用于:根据所述三维目标边界框的预测信息和所述三维目标包围盒的标注信息之间的差异,以及所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数。

结合本公开提供的任一实施方式,所述预测单元具体用于:在所述神经网络根据所述特征图获得预测语义掩模之后,利用所述神经网络将所述预测语义掩模与所述体素化点云的特征图融合,获得融合后的特征图;利用所述神经网络根据所述融合后的特征图获得所述样本三维雷达点云中的三维目标边界框的预测信息。

结合本公开提供的任一实施方式,所述预测单元在用于利用所述神经网络将所述预测语义掩模与所述体素化点云的特征图融合,获得融合后的特征图时,具体用于:所述神经网络将所述预测语义掩模的概率加1的结果作为权重,与所述特征图相乘,获得融合后的特征图。

结合本公开提供的任一实施方式,所述预测单元在用于利用所述神经网络根据所述融合后的特征图获得所述样本三维雷达点云中的三维目标边界框的预测信息时,具体用于:利用所述神经网络的不同分支对所述融合后的特征图的不同区域范围进行三维目标检测,将各个分支输出的检测信息进行融合,输出三维目标边界框的预测信息,其中,所述各个分支具有不同大小的卷积核以及不同的扩展率。

结合本公开提供的任一实施方式,所述第一获得单元具体用于:利用神经网络将所述样本三维雷达点云划分为等间距的体素;将各个体素内的雷达点云的平均参数作为所述体素的参数,获得体素化点云。

结合本公开提供的任一实施方式,所述体素化点云的特征图包括二维鸟瞰体素特征图;所述第二获得单元具体用于:利用所述神经网络对所述体素化点云进行卷积处理,获得三维鸟瞰体素特征图;利用所述神经网络将所述三维鸟瞰体素特征图转换为二维鸟瞰体素特征图。

结合本公开提供的任一实施方式,所述调整单元在用于根据所述三维目标边界框的预测信息和所述三维目标包围盒的标注信息之间的差异,以及所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数时,具体用于:根据所述三维目标边界框的预测信息与三维目标包围盒的标注信息的差异之和,获得目标定位损失;根据所述预测语义掩模与所述真实语义掩模之间的差异,获得语义分割损失;将所述目标定位损失和所述语义分割损失加权求和,获得总的损失;根据所述总的损失调整所述神经网络的网络参数。

结合本公开提供的任一实施方式,所述装置还包括增广单元,用于对所述样本三维雷达点云进行增广,具体用于:将多个三维目标包围盒合并至一个场景中,并采用地面方程计算进行约束;对所述场景中的三维目标包围盒和对应的点云分别进行增广;和/或,对所有样本三维雷达点云中的点云和三维目标包围盒共同进行增广;所述增广,包括以下任意一种:尺度变换、旋转变换、镜像翻转。

第四方面,提供一种三维目标检测装置,所述装置包括:处理单元,用于利用神经网络对待处理的三维雷达点云进行处理,所述神经网络采用本公开任一实施方式所述的神经网络的训练方法训练得到;确定单元,用于根据处理单元的处理结果确定所述三维雷达点云中的三维目标的边界框。

结合本公开提供的任一实施方式,所述神经网络包括不同分支,所述不同分支用于对融合后的特征图的不同区域范围进行三维目标检测,所述不同分支具有不同大小的卷积核以及不同的扩展率;所述处理单元还用于对各个分支输出的检测结果分别进行极大值抑制后进行融合,得到所述三维雷达点云中的三维目标的边界框。

第五方面,提供一种神经网络的训练设备,所述设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现本公开任一实施方式所述的神经网络的训练方法。

第六方面,提供一种三维目标检测设备,所述设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现本公开任一实施方式所述的三维目标检测方法。

第七方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本公开任一所述的神经网络的训练方法。

第八方法,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本公开任一所述的三维目标检测方法。

本公开一个或多个实施例的三维目标检测及神经网络的训练方法、装置及设备,利用体素化点云的特征图的语义掩模作为监督信号,对于每个像素提供前景或背景的类别信息,可以更好地区分场景中的显著性区域,从而能够提高三维目标检测的准确度。

附图说明

为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本公开至少一个实施例提供的一种神经网络的训练方法的流程图;

图2A为本公开至少一个实施例提供的三维雷达点云图像;

图2B为在图2A中标注了三维目标包围盒的三维雷达点云图像;

图3为本公开至少一个实施例提供的一种神经网络的结构示意图;

图4A为本公开至少一个实施例提供的二维鸟瞰体素特征图;

图4B为根据图4A得到的体素类型的预测语义掩模;

图4C为根据图4A得到的包围盒类型的预测语义掩模;

图5A为本公开至少一个实施例提供的三维雷达点云图像;

图5B为根据图5A得到的特征图;

图5C为根据图5B得到的三维目标检结果;

图6A为本公开至少一个实施例提供的二维鸟瞰图;

图6B根据图6A得到的特征图;

图6C为根据图6B得到的预测语义掩模;

图6D为将特征图和预测语义掩模融合后的特征图;

图7为本公开至少一个实施例提供的点云密度分布图;

图8A为本公开至少一个实施例提供的包含三维目标检测结果的三维雷达点云图像;

图8B为图8A转换至对应的图像上的显示结果;

图9A为本公开至少一个实施例提供的一种神经网络的训练装置的结构示意图;

图9B为本公开至少一个实施例提供的另一种神经网络的训练装置的结构示意图;

图10为本公开至少一个实施例提供的一种三维目标检测装置的结构示意图;

图11为本公开至少一个实施例提供的一种神经网络的训练设备的结构示意图;

图12为本公开至少一个实施例提供的一种三维目标检测设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本公开保护的范围。

本公开至少一个实施例提供了一种神经网络的训练方法,如图1所示,图1示出了该训练方法的流程,可以包括步骤101~步骤103。

在步骤101中,利用神经网络对样本三维雷达点云进行体素化,得到体素化点云;所述样本三维雷达点云中的三维目标预先进行了三维目标包围盒的标注,以得到三维目标包围盒的标注信息。

在本公开实施例中,可以利用预先标注了三维目标包围盒的样本三维雷达点云对神经网络进行训练。标注三维目标包围盒是指,对于雷达产生的点云,利用三维带有方向的包围盒来定位三维雷达点云中目标的位置,可以将该三维带有方向的包围盒称为三维目标包围盒,所标注的该三维目标包围盒的参数信息可以被称为标注信息。该标注信息例如可以表示为(x,y,z,w,l,h,θ),其中,x,y,z分别表示三维目标包围盒在雷达坐标系下的坐标;w,l,h分别表示三维目标包围盒的宽度、长度和高度,θ表示在鸟瞰视角下,包围盒与y方向的夹角。本领域技术人员应当理解,以上仅为标注信息的示例,本公开实施例并不对三维目标包围盒的标注信息进行限制,标注信息也可以包括其他的参数信息,例如包括至少一对对角点的坐标。

在神经网络的训练过程中,将所述样本三维雷达点云输入至所述神经网络,所述神经网络对所述样本三维雷达点云进行体素化,得到体素化点云。所述体素化点云,是指将所述点云所处的空间均等地划分为体素,并且以体素为单位表示所述点云的参数。每个体素中可能包含所述点云中的一个点,也可能包含所述点云中的多个点,还可能没有包含所述点云中的任何点,也即,体素化点云是用体素形式表示的点云。

在一个示例中,可以通过以下方式对样本三维雷达点云进行体素化:

将样本三维雷达点云划分成等间距的体素v,相当于将点云分组到了其所在的体素v内,体素v的大小例如可以表示为(vw,vl,vh),其中,vw、vl、vh分别表示体素v的宽度、长度和高度。通过将每个体素v内的雷达点云的平均参数作为该体素的参数,可以获得体素化点云。

其中,可以在每个体素v内随机采样固定数量的雷达点,以节省计算以及减少体素之间的雷达点的不平衡性。

在步骤102中,所述神经网络根据所述体素化点云,确定所述体素化点云的特征图,并根据所述特征图获得预测语义掩模。

对于体素化点云,所述神经网络可以确定其特征图,并根据所述特征图获得预测语义掩模,也即通过将语义映射到体素空间,获得预测语义掩模。

语义掩模包括体素类型的语义掩模,以及包围盒类型的语义掩模。神经网络可以通过获得每一个体素属于目标对象的概率获得体素类型的预测语义掩模;可以通过获得各个包围盒内包括目标对象的概率,获得包围盒类型的预测语义掩模。

样本三维雷达点云的真实语义掩模可以通过三维目标包围盒的标注信息获得。

对于体素类型的真实语义掩模,例如可以通过将所标注的三维目标包围盒(真实包围盒)与体素进行匹配,将真实包围盒内部的非空体素认为是前景,从而获得体素类型的真实语义掩模。所述非空体素是指位素中包含所述点云中的至少一个点。

对于包围盒类型的真实语义掩模,可以通过将所标注的真实包围盒投影到鸟瞰图,将包围盒内部的所有体素都认为是前景,从而获得包围盒类型的真实语义掩模。

对于体素化点云,通过卷积神经网络对该体素化的点云进行特征提取,可以获得体素化点云的特征图。

在步骤103中,根据所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数;其中,所述真实语义掩模根据所述体素化点云和所述三维目标包围盒的标注信息确定。

在一个示例性中,可以通过梯度反向传播方法调整所述神经网络的网络参数。

本公开的一个或多个实施例的神经网络的训练方法,利用体素特征图的语义掩模作为监督信号,对于每个像素提供前景或背景的类别信息,可以更好地区分场景中的显著性区域,从而能够提高三维目标检测的准确度。其中,显著性区域是指与目标整体相关的区域,也即感兴趣区域。

在一些实施例中,所述神经网络根据所述特征图获得预测语义掩模之后,还根据所述语义掩模和所述体素化点云的特征图,获得述样本三维雷达点云中的三维目标边界框的预测信息;之后根据所述三维目标边界框的预测信息和所述三维目标包围盒的标注信息之间的差异,以及所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数。

本公开一个或多个实施例的神经网络的训练方法,通过根据语义掩模和体素化点云的特征图获得预测信息,利用与体素类别相对应的语义掩模,即体素特征图的语义掩模作为额外的监督信号,在三维目标检测过程中提供像素级的类别信息,可以更好地区分场景中具有不同语义的区域,从而能够提高三维目标检测的准确度。

在一些实施例中,可以将所述预测语义掩模与所述体素化点云的特征图进行融合,获得融合后的特征图,并根据所述融合后的特征图获得所述样本三维雷达点云中的三维目标预测信息。在一个示例中,可以将所述预测语义掩模的概率加1的结果作为权重,与所述特征图相乘,获得融合后的特征图。

在公开本实施例中,所获得的特征图可以是多尺度的特征图,并可以将各个尺度的特征图进行结合,以获得预测语义掩模;并可以将所述预测语义掩模与结合所得到的特征图进行融合。所获得的融合后的特征图中包括了语义上下文,可以为三维目标检测提供指导。本公开一个或多个实施例的神经网络的训练方法,将体素化点云的特征图和预测得到的语义掩模进行融合,根据融合后的特征图获得三维目标边界框的预测信息,通过利用与体素类别相对应的语义掩模作为额外的监督信号,在三维目标检测过程中提供像素级的类别信息,可以更好地区分场景中具有不同语义的区域,从而能够提高三维目标检测的准确度。

如下的描述中,将对神经网络的训练方法进行更详细的描述。其中,下文以车辆自动驾驶过程中的车辆识别为例描述该训练方法。本领域技术人员应当理解,其他场景同样可以应用相同的训练方法,区别只在于输入神经网络的样本三维雷达点云随着应用场景的不同有所差异。

【准备样本】:

在训练神经网络之前,首先可以先准备样本集,该样本集可以包括:用于训练神经网络的训练样本、以及用于测试神经网络的测试样本。

例如,可以按照下述方式获得训练样本:

首先,获得通过雷达所采集的雷达坐标系下的三维雷达点云,如图2A所示,每一个雷达点p可以由(x,y,z,r)表示,其中,(x,y,z)表示雷达点p的三维坐标,r表示雷达点p的反射率。

在所获得的三维雷达点云上,标注出车辆的真实三维目标包围盒,也即车辆的三维边界框,如图2B所示,并标注出该三维目标包围盒的参数信息,例如(x,y,z,w,l,h,θ),其中,x,y,z分别表示三维目标包围盒在雷达坐标系下的坐标;w,l,h分别表示三维目标包围盒的宽度、长度和高度,θ表示在鸟瞰视角下,三维目标包围盒与y方向的夹角。

【数据增广】:

对样本数据进行增广,可以更好地对神经网络进行训练。

例如,可以通过以下方式进行数据增广:

在进行训练之前,首先通过创建查找表,查找在样本三维雷达点云中,所有标注的三维目标包围盒以及对应的盒内点云。

在训练中,随机选择样本三维雷达点云中的多个三维目标包围盒,将这些三维目标包围盒合并至一个场景中。在合并后的场景中,对各个三维目标包围盒的参数信息进行相应的变换。由于不同场景的地面高度不一致,因此引入地面方程计算来约束增强的样本。所述地面方程是为各个场景提供统一基平面约束的方程。

在一个示例中,可以对所述场景中的三维目标包围盒和对应的点云分别进行增广。也即,对三维目标包围盒进行增广变换,利用变换后的结果训练神经网络;与三维目标包围盒的增广变换相独立地,对三维目标包围盒对应的点云进行增广变换,利用变换后的结果训练神经网络。

在一个示例中,可以对所有样本三维雷达点云中的点云和三维目标包围盒共同进行增广。也即,同时对三维目标包围盒和对应的点云进行增广变换,利用变换后的结果训练神经网络。

在本公开实施例中,可以进行三维目标包围盒和对应的点云的分别增广、共同增广中的一种,也可以既进行分别增广,也进行共同增广。

所进行的增广可以包括尺度变换、旋转变换、镜像翻转中的至少一项。

【确定神经网络结构】:

图3示例了本公开至少一个实施例可以应用的一种神经网络的网络结构,需要说明的是,图3仅是示例了一种神经网络,实际实施中不局限于此。

如图3所示,该神经网络包括体素特征编码器210、语义分割编码器220、多分支的检测头网络230。

体素特征编码器210用于对三维雷达点云进行体素化,并获得体素化的点云的特征图。

如图3所示,体素特征编码器210可以包括4个连续的块(Block),用于将体素化点云生成鸟瞰体素特征图。每个Block可以包括若干个三维子流型稀疏卷积层和一个常规稀疏卷积层,以用于在x,y方向的降采样和z方向的压缩;在每个稀疏卷积层之后可以包括BatchNorm(批归一化)层和ReLU(线性整流函数激活)层。

语义分割编码器220可以包括block 221、block 222、block 223。其中,block 221和block 223用于提取检测特征,输出不同尺度的特征图;block 222用于提取语义分割掩膜。

在图3中,⊕表示逐个元素相加(element-wise add),由图可见,block 222和block 223输出的特征图逐个元素相加所得到新的特征图,根据该新的特征图得到预测语义掩模;表示利用预测语义掩模对检测特征重新权重化(re-weight)。

block 224输出预测语义掩模与体素化点云的特征图融合后的特征图。对于输入至block 224的预测语义掩模和特征图,通过将预测语义掩模的概率加1的结果作为权重,与所述特征图相乘,输出融合后的特征图。其可以通过下式进行表达:

Rc(x,y)=(1+M(x,y))·Fc(x,y) (1)

其中,M表示语义掩模概率数据,也即语义掩模概率图,Fc表示进行融合的特征图,Rc表示融合后的特征图,(x,y)为体素化点云的坐标。

多分支的检测头网络230中,各个分支的网络结构是相似的,但具有不同大小的卷积核以及不同的扩展率。多个分支对融合后的特征图的不同区域进行三维目标检测,各个分支分别输出分类预测结果cls、定位预测结果reg,以及方向预测结果dir,并通过将各个分支的输出结果进行融合获得最终的三维目标检测结果。

例如,语义分割编码器220输出的融合后的特征图x方向(深度方向)上,可以划分为区域[0,72],[52,124],[104,176],各个具有不同的卷积内核大小以及扩展率的分支,分别对不同深度区域的点云进行目标检测。

【训练神经网络】

本实施例可以训练一个端到端的用于三维目标检测的神经网络。

在本实施中,神经网络的结构可以参见图3所示。在对标注了三维目标包围盒的样本三维雷达点云进行增广后,将增广后的样本三维雷达点云输入至神经网络,进行神经网络的训练。

所述神经网络对输入的样本三维雷达点云进行体素化,并获得鸟瞰角度的体素化点云的特征图,即二维鸟瞰体素特征图。

根据图4A所示的二维鸟瞰体素特征图,获得其预测语义掩模。

预测语义掩模至少可以包括以下类型的语义掩模:体素类型的语义掩模、包围盒类型的语义掩模。以图4A所示的二维鸟瞰图为例,根据该图中所包含的鸟瞰图数据获得的预测的体素类型的语义掩模如图4B所示,其可以通过获得每一个体素属于目标对象的概率获得;根据图4A所获得的预测的包围盒类型的语义掩模如图4C所示,其可以通过获得各个包围盒内包括目标对象的概率获得。

对于体素类型的语义掩模,在本步骤中对体素化的点云的特征图进行二进制分割,来预测每一个体素是否属于目标类别。例如,在车辆识别中,在本步骤中预测每一个体素是否属于车辆这一类别。

在获得所述二维鸟瞰体素特征图的预测语义掩模后,将所述预测语义掩模与所述特征图融合,获得融合后的特征图。

相关技术中,根据三维雷达点云的特征图进行目标检测,容易因模糊以及特征相似而引起误报。以在图5A所示的三维雷达点云图像中检测车辆为例,图5A中的三维雷达点云数据的特征图如图5B所示,根据该特征图,检测出三个目标物体,并在三维雷达点云图像中输出三维目标边界框,以及在相应的图像上进行显示,如图5C所示。然而实际上,该场景中仅包含两个车辆,另外一目检测框中的物体是由于特征相似而引起的误检。本公开中的附图用于对检测过程或者检测结果进行示例地说明,其清晰清楚并不影响并领域技术人员对本公开技术方案的理解。

在本实施例中,利用语义上下文为三维目标检测提供语义环境,从而在进行目标检测时获知各个像素或者区域的语义,进而可以结合语义更准确地预测三维目标边界框,降低误检的概率。

以根据图6A所示的二维鸟瞰图进行车辆检测为例,根据该图中所包含的鸟瞰图数据获得的特征图如图6B所示。在该特征图中,方框位置处并非目标物体:车辆,而是与车辆特征相似的物体。如果以图6B所示的特征图进行目标检测,则容易引起误检。

在本实施例中,通过获取二维鸟瞰体素特征图的预测语义掩模,如图6C所示,并将该语义掩模与图6B所示的原始特征图进行融合,获得图6D所示的融合后的特征图。如图6D所示,在融合后的特征图中,与车辆特征相似的物体变得不明显,从而使得误检率降低,提高了目标检测的准确率。

在获得融合的特征图后,可以利用多分支的检测头网络对所述特征图进行目标检测。

与二维的目标检测不同,对于三维目标检测,不同深度的物体,点云的密度分布会不断变化,如图7所示,各个目标边界框中的点云密度明显是不同的。

在一个示例中,通过多个分支的检测头网络对上述融合的特征图进行三维目标检测,各个分支的检测头具有不同的卷积内核大小以及不同的扩展率,对不同深度的目标使用不同分支的检测网络进行学习,从而提升了不同深度目标的特征学习能力。

在获得了各个分支的检测头网络输出的检测结果,例如三维目标边界框的定位信息和分类信息后,可以根据所述三维目标边界框的预测信息和标注信息之间的差异,以及预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数。例如,可以通过网络损失确定三维目标边界框的预测信息和标注信息之间的差异,和预测语义掩模与真实语义掩模之间的差异。

在一个示例中,三维目标边界框的预测信息和标注信息之间的预测网络损失可以表示为:

LD=λlocLloc+LclsdirLdir (2)

其中,Lloc为定位损失,Lcls是分类损失,Ldir是交叉熵损失,λloc、λdir分别是定位损失和交叉熵损失对应的权重,例如,可以设置为λloc=2、λdir=0.2。

其中,定位损失可以通过SmoothL1Loss进行计算:

其中,ω∈(x,y,z,w,l,h,θ)为标注的三维目标包围盒和锚点的参数。其中,锚点是指利用区域候网络(Region Proposal Network,RPN)作为检测头网络时,用于生成目标边界框的候选边界框,Δω为标注的三维目标包围盒与锚点定位的回归残差,包括:

Δθ=θgta

其中,(xgt,ygt,zgt,wgt,lgt,hgt,θgt)为标注的三维目标包围盒的参数,也即真实包围盒参数(xa,ya,za,wa,la,ha,θ)为锚点的参数。

交叉熵损失可以通过以下公式进行计算:

Ldir=-αalog(da), (4)

其中,αa表示方向的标签,da表示方向的概率。由于回归损失不能区分边界框的相反方向,因此需要加入交叉熵损失。

分类损失可以通过Focal Loss进行计算:

Lcls=-α(1-pa)γ log(pa) (5)

其中,p为锚点的类别概率值,α和γ为常数,例如可以设置为α=0.25和γ=2。

对于多个分支的检测头网络,可以将各个分支的损失相加,获得总的预测损失。

总的网络损失还包括语义分割损失Ls,其可以通过预测语义掩模与真实语义掩模之间差异获得。

总的网络损失L可以表示为:

其中,λS用于平衡语义分割和分类约束的权重,例如可以设置为λs=0.5,p表示多分支的检测头网络的索引。

可以通过利用梯度反向传播法求取网络损失的最小值,来对神经网络的网络参数进行优化。

在本实施例中,通过将语义分割信息集成到三维目标检测中,利用语义上下文为三维目标检测提供指导,可以更准确地预测三维目标边界框,降低误检的概率;通过利用具有不同大小卷积核的多分支的检测头网络,根据融合了语义信息的特征图进行三维目标检测,提升了对于不同深度目标的特征的学习能力。

本公开实施例还提出了一种三维目标检测方法,利用神经网络对待处理的三维雷达点云进行处理,确定所述三维雷达点云中的三维目标的边界框,所述神经网络采用本公开任一实施例所述的神经网络的训练方法训练得到。

在本公开实施例中,所输入的待处理的三维雷达点云为雷达坐标系下的点云数据,每一个雷达点p可以由(x,y,z,r),其中,(x,y,z)表示雷达点p的三维坐标,r表示雷达点p的反射率。

对于输入的三维雷达点云,可以利用训练完成的神经网络训练对三维雷达点云进行体素化,获得体素化点云的特征图。

接下来,可以利用训练完成的神经网络训练获得特征图的预测语义掩模,并将所述预测语义掩模与所述特征图进行融合。

最后,将所述融合后的特征图输入多个分支的检测头网络,各个分支的检测头网络分别对于不同区域范围的特征图进行三维目标检测,并将各个分支的检测信息进行融合,输出三维雷达点云中的三维目标检测结果。其中,多个分支的检测头网络为训练完成的神经网络的一部分,用于从述融合后的特征图中国检测出目标。

由于各个分支的检测头网络的检测范围可能有重叠的部分,因此可以对于待处理的三维雷达点云的同一位置输出多个预测结果。在神经网络的训练过程中,可以利用所有的预测结果都进行损失计算(可分为正样本和负样本),而在利用训练完成的神经网络进行三维目标检测的过程中,可以通过非极大值抑制的方法,删除重叠的边界框,确定最终的三维目标边界框。例如,可以在三维雷达点云的每个位置选择类别的最高分作为融合后的分数,判断所有锚点的预测概率是否大于设定阈值,如果大于则保留,否则删除该锚点。将保留下来的所有锚点作为目标边界框的候选池中的候选。首先,选出概率最大的锚点,将与其在鸟瞰视角下的交并比(Intersection over Union,IoU)超过所述设定阈值的锚点删除,再从保留下的锚点中选取概率最大的锚点。以此类推,直至候选池中的所有锚点或者被选中,或者被删除。选中的锚点对应的三维包围盒,即为最终的三维目标边界框,也即对三维雷达点云进行检测输出的检测结果。可以通过雷达与相机之间的坐标系变换,将在三维雷达点云中获得的检测结果转换至对应的图像中,获得图像中的目标检测框。如图8A所示,其为包含三维目标边界框的检测结果的三维雷达点云图像,图8B示出了将该检测结果转换至对应的图像上的显示结果。

图9A提供了一种神经网络训练装置,如图9A所示,该装置可以包括:

第一获得单元901,用于利用神经网络对样本三维雷达点云进行体素化,得到体素化点云;所述样本三维雷达点云中的三维目标预先进行了三维目标包围盒的标注,以得到三维目标包围盒的标注信息;

第二获得单元902,用于利用所述神经网络根据所述体素化点云,确定所述体素化点云的特征图,并根据所述特征图获得预测语义掩模;

调整单元903,用于根据所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数;其中,所述真实语义掩模根据所述体素化点云和所述三维目标包围盒的标注信息确定。

在另一个实施例中,如图9B所示,所述装置还包括预测单元904,用于在所述神经网络根据所述特征图获得预测语义掩模之后,利用所述神经网络根据所述预测语义掩模和所述体素化点云的特征图,获得所述样本三维雷达点云中的三维目标边界框的预测信息;

在另一个实施例中,调整单元903具体用于:在所述神经网络根据所述特征图获得预测语义掩模之后,根据所述三维目标边界框的预测信息和所述三维目标包围盒的标注信息之间的差异,以及所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数。

在另一个实施例中,904预测单元具体用于:利用所述神经网络将所述预测语义掩模与所述体素化点云的特征图融合,获得融合后的特征图;利用所述神经网络根据所述融合后的特征图获得所述样本三维雷达点云中的三维目标边界框的预测信息。

在另一个实施例中,预测单元904在用于利用所述神经网络将所述预测语义掩模与所述体素化点云的特征图融合,获得融合后的特征图时,具体用于:所述神经网络将所述预测语义掩模的概率加1的结果作为权重,与所述特征图相乘,获得融合后的特征图。

在另一个实施例中,预测单元904在用于利用所述神经网络根据所述融合后的特征图获得所述样本三维雷达点云中的三维目标边界框的预测信息时,具体用于:利用所述神经网络的不同分支对所述融合后的特征图的不同区域范围进行三维目标检测,将各个分支输出的检测信息进行融合,输出三维目标边界框的预测信息,其中,所述各个分支具有不同大小的卷积核以及不同的扩展率。

在另一个实施例中,第一获得单元901具体用于:利用神经网络将所述样本三维雷达点云划分为等间距的体素;将各个体素内的雷达点云的平均参数作为所述体素的参数,获得体素化点云。

在另一个实施例中,所述体素化点云的特征图包括二维鸟瞰体素特征图;第二获得单元902具体用于:利用所述神经网络对所述体素化点云进行卷积处理,获得三维鸟瞰体素特征图;利用所述神经网络将所述三维鸟瞰体素特征图转换为二维鸟瞰体素特征图。

在另一个实施例中,调整单元903在用于根据所述三维目标边界框的预测信息和所述三维目标包围盒的标注信息之间的差异,以及所述预测语义掩模与真实语义掩模之间的差异,调整所述神经网络的网络参数时,具体用于:根据所述三维目标边界框的预测信息与三维目标包围盒的标注信息的差异之和,获得目标定位损失;根据所述预测语义掩模与所述真实语义掩模之间的差异,获得语义分割损失;将所述目标定位损失和所述语义分割损失加权求和,获得总的损失;根据所述总的损失调整所述神经网络的网络参数。

在另一个实施例中,所述装置还包括增广单元,用于对所述样本三维雷达点云进行增广,具体用于:将多个三维目标包围盒合并至一个场景中,并采用地面方程计算进行约束;对所述场景中的三维目标包围盒和对应的点云分别进行增广;和/或,对所有样本三维雷达点云中的点云和三维目标包围盒共同进行增广;所述增广,包括以下任意一种:尺度变换、旋转变换、镜像翻转。

本公开实施例还提出了一种三维目标检测装置,如图10所示,所述装置包括:处理单元1001,用于利用神经网络对待处理的三维雷达点云进行处理,所述神经网络采用本公开任一实施例所述的神经网络的训练方法训练得到;确定单元,用于根据处理单元的处理结果确定所述三维雷达点云中的三维目标的边界框。

在另一个实施例中,所述神经网络包括不同分支,所述不同分支用于对融合后的特征图的不同区域范围进行三维目标检测,所述不同分支具有不同大小的卷积核以及不同的扩展率;处理单元1002还用于对各个分支输出的检测结果分别进行极大值抑制后进行融合,得到所述三维雷达点云中的三维目标的边界框。

图11为本公开至少一个实施例提供的神经网络的训练设备,所述设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现本说明书任一实施例所述的神经网络的训练方法。

图12为本公开至少一个实施例提供的三维目标检测设备,所述设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现本说明书任一实施例所述的三维目标检测方法。

本说明书至少一个实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本说明书任一所述的神经网络的训练方法。

本说明书至少一个实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本说明书任一所述的三维目标检测方法。

本领域技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本说明书实施例还提供一种计算机可读存储介质,该存储介质上可以存储有计算机程序,所述程序被处理器执行时实现本说明书任一实施例描述的驾驶员注视区域的检测方法的步骤,和/或,实现本说明书任一实施例描述的驾驶员注视区域的神经网络的训练方法的步骤。其中,所述的“和/或”表示至少具有两者中的其中一个,例如,“A和/或B”包括三种方案:A、B、以及“A和B”。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于数据处理设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的行为或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

本说明书中描述的主题及功能操作的实施例可以在以下中实现:数字电子电路、有形体现的计算机软件或固件、包括本说明书中公开的结构及其结构性等同物的计算机硬件、或者它们中的一个或多个的组合。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即编码在有形非暂时性程序载体上以被数据处理装置执行或控制数据处理装置的操作的计算机程序指令中的一个或多个模块。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以将信息编码并传输到合适的接收机装置以由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。

本说明书中描述的处理及逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过根据输入数据进行操作并生成输出来执行相应的功能。所述处理及逻辑流程还可以由专用逻辑电路—例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)来执行,并且装置也可以实现为专用逻辑电路。

适合用于执行计算机程序的计算机包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘等,或者计算机将可操作地与此大容量存储设备耦接以从其接收数据或向其传送数据,抑或两种情况兼而有之。然而,计算机不是必须具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏操纵台、全球定位系统(GPS)接收机、或例如通用串行总线(USB)闪存驱动器的便携式存储设备,仅举几例。

适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、媒介和存储器设备,例如包括半导体存储器设备(例如EPROM、EEPROM和闪存设备)、磁盘(例如内部硬盘或可移动盘)、磁光盘以及CD ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。

虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。

类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。

由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。

以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。

29页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种目标行为识别的方法、装置和雷达系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!