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

一种目标检测方法、装置、设备及存储介质与流程

2023-03-28 23:45:52 来源:中国专利 TAG:


1.本发明涉及人工智能技术领域,尤其涉及一种目标检测方法、装置、设备及存储介质。


背景技术:

2.在机器人的自动导航过程中,对周围环境的感知是实现安全导航的钟重要基础,有效且准确的目标检测是环境感知的关键。
3.目前,对于机器人而言,有效且准确的目标检测仍是一个具有挑战性的问题,因为机器人需要全面了解机器人周围的3d环境。二维目标检测算法由于不能提供深度信息,不能直接应用于目标检测,所以现在一般采用3d目标检测方法,以获取良好的目标检测结果。
4.但是3d目标检测方法的3d检测模型依赖于高质量的训练数据或者采用昂贵的传感器(如多线激光雷达)采集训练数据,使得训练成本较高,且训练过程十分复杂对硬件资源的需求极高,导致3d目标检测模型的使用场景有限。


技术实现要素:

5.本发明提供了一种目标检测方法、装置、设备及存储介质,实现一种结合2d目标检测和深度估计的2.5d目标检测方法,以解决3d目标检测方法使用成本高的问题,降低目标检测成本。
6.根据本发明的一方面,提供了一种目标检测模型的训练方法,包括:
7.获取训练样本图像;所述训练样本图像标注有样本目标的标签数据,所述标签数据包括:标定框和标定深度;
8.将所述训练样本图像输入2.5d初始目标检测模型获得所述样本目标的预测结果数据;其中,所述2.5d初始目标检测模型在2d目标检测模型的头部网络中增加深度估计层;所述预测结果数据包括:预测框和预测深度;
9.根据所述预测结果数据和所述标签数据计算目标损失函数值,基于所述目标损失函数值对所述2.5d初始目标检测模型中的网络参数进行调整。
10.进一步的,所述2.5d初始目标检测模型包括:
11.对于基于锚框的yolov5模型,保留所述yolov5模型的主干网络backbone、颈部网络neck和头部网络head;在所述头部网络中增加深度估计层得到2.5d初始目标检测模型;
12.相应的,所述2.5d初始目标检测模型的目标损失函数包括:
13.在所述yolov5模型的原损失函数的基础上增加深度回归损失函数;
14.对所述yolov5模型的原损失函数和所述深度回归损失函数进行加权求和得到目标损失函数;
15.其中,所述yolov5模型的原损失函数包括:分类损失函数、边界框损失函数和置信度损失函数;所述深度回归损失函数包括:所述预测深度与所述标定深度之间的绝对误差,以及所述预测深度与所述标定深度之间的相对误差。
16.上述技术方案,在基于锚框的yolov5模型的基础上,在头部网络中增加深度估计层,在目标损失函数中增加深度回归损失函数,将yolov5的2d目标检测模型提升为2.5d目标检测模型,通过结合2d目标检测和深度估计,提高了目标检测的精确度。
17.进一步的,所述2.5d初始目标检测模型包括:
18.对于关键点检测的centernet模型,保留所述centernet模型的主干网络backbone、颈部网络neck、头部网络head;在所述头部网络中增加深度估计层得到2.5d初始目标检测模型;
19.相应的,所述2.5d初始目标检测模型的目标损失函数包括:
20.在所述centernet模型的原损失函数的基础上增加深度回归损失函数;
21.对所述centernet模型的原损失函数和所述深度回归损失函数进行加权求和得到目标损失函数;
22.其中,所述centernet模型的原损失函数包括:中心点预测损失函数、目标大小损失函数和目标中心点偏置损失函数;所述深度回归损失函数包括:所述预测深度与所述标定深度之间的绝对误差,以及所述预测深度与所述标定深度之间的相对误差。
23.上述技术方案,在基于关键点检测的centernet模型的基础上,在头部网络中增加深度估计层,在目标损失函数中增加深度回归损失函数,将yolov5的2d目标检测模型提升为2.5d目标检测模型,通过结合2d目标检测和深度估计,提高了目标检测的精确度。
24.进一步的,所述获取训练样本图像,包括:
25.获取rgb样本图像和对应的激光点云样本数据;
26.确定所述rgb样本图像中的样本目标的标定框,并将所述激光点云样本数据投影到所述rgb样本图像上;
27.将所述标定框内的激光点云样本数据可视化到所述rgb样本图像对应的鸟瞰视图中得到点云鸟瞰视图,并将所述点云鸟瞰视图和所述rgb样本图像进行拼接得到拼接图像;
28.在所述点云鸟瞰视图中,根据所述rgb样本图像的标定框和可视化的激光点云样本数据确定所述样本目标的边界框;
29.根据所述边界框内可视化的激光点云样本数据的平均深度确定对应标定框的标定深度;
30.在所述拼接图像上标注所述标定框和所述标定深度对得到训练样本图像。
31.上述技术方案,提供一种适用于2.5d目标检测模型的训练样本图像的标注方式。
32.根据本发明的另一方面,提供了一种目标检测方法,包括:
33.获取待检测场景的待检测rgb图像和稀疏深度图像;
34.对所述待检测rgb图像和所述稀疏深度图像分别进行卷积处理后进行特征融合得到的融合特征图像;
35.将所述融合特征图像输入2.5d完备目标检测模型得到所述待检测场景中目标物体的2.5d目标检测框;其中,所述2.5d完备目标检测模型基于本发明实施例提供的目标检测模型的训练方法训练得到。
36.上述技术方案,能够基于本发明提供的目标检测模型的训练方法训练得到的2.5d完备目标检测模型,对待检测场景进行2.5d的目标检测,提高目标检测结果的精度,降低对待检测场景的数据采集要求进而降低检测成本。
37.进一步的,在将所述融合特征图像输入2.5d完备目标检测模型得到所述待检测场景中目标物体的2.5d目标检测框之后,还包括:
38.获取所述目标物体的观测轨迹;所述观测轨迹包括:多帧标定框和对应的标定深度;
39.基于卡尔曼滤波器根据目标物体在当前帧的2.5d目标检测框预测下一帧2.5d目标检测框,基于多帧2.5d目标检测框和对应的预测深度构成预测轨迹;
40.利用匈牙利算法计算所述观测轨迹和所述预测轨迹的匹配距离,基于所述匹配距离对所述预测轨迹和观测轨迹进行匹配,得到所述目标物体的目标跟踪结果。
41.上述技术方案,能够实现对2.5d目标检测框的目标跟踪,从而实现完整地对目标的感知。
42.可选的,所述观测轨迹和所述预测轨迹的匹配距离包括:
[0043][0044][0045][0046]
其中,表示所述观测轨迹和所述预测轨迹的匹配距离,i表示交并比关联度量,d表示距离关联度量,iou表示交并比计算,和分别表示构成观测轨迹的第j帧的标定框和对应的标定深度;和dt
tj
分别表示构成观测轨迹的第j帧的2.5d目标检测框和对应的预测深度。
[0047]
上述技术方案,将目标检测框的目标跟踪转换为二分图匹配问题,并采用利用匈牙利算法进行计算提高了计算效率。
[0048]
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
[0049]
至少一个处理器;以及
[0050]
与所述至少一个处理器通信连接的存储器;其中,
[0051]
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的目标检测模型的训练方法或者目标检测方法。
[0052]
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的目标检测模型的训练方法或者目标检测方法。
[0053]
本发明实施例提供一种目标检测模型的训练方法,通过获取训练样本图像;将训练样本图像输入2.5d初始目标检测模型获得样本目标的预测结果数据;其中,所述2.5d初始目标检测模型在2d目标检测模型的头部网络中增加深度估计层;所述预测结果数据包括:预测框和预测深度;根据所述预测结果数据、所述标签数据和目标损失函数计算目标损失函数值,基于所述目标损失函数值对所述2.5d初始目标检测模型中的网络参数进行调整,实现一种结合2d目标检测和深度估计的2.5d目标检测方法,能够解决3d目标检测方法使用成本高的问题,降低目标检测成本。
[0054]
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0055]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0056]
图1a是本发明实施例提供的一种目标检测模型的训练方法的流程图;
[0057]
图1b是本发明实施例提供的一种训练样本图像的示意图;
[0058]
图2a是本发明实施例提供的一种目标检测方法的流程图;
[0059]
图2b是融合特征图像的生成过程的示意图;
[0060]
图3是本发明实施例提供的一种目标检测模型的训练装置的结构示意图;
[0061]
图4是本发明实施例提供的一种目标检测装置的结构示意图;
[0062]
图5是实现本发明实施例的目标检测模型的训练方法或者目标检测方法的电子设备的结构示意图。
具体实施方式
[0063]
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0064]
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“原始”、“目标”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0065]
图1a为本发明实施例一提供了一种目标检测模型的训练方法的流程图,本实施例可适用于基于训练样本图像训练目标检测模型的情况,该方法可以由目标检测模型的训练装置来执行,该目标检测模型的训练装置可以采用硬件和/或软件的形式实现,该目标检测模型的训练装置可配置于电子设备中。如图1a所示,该方法包括:
[0066]
s110、获取训练样本图像;所述训练样本图像标注有样本目标的标签数据,所述标签数据包括:标定框和标定深度。
[0067]
其中,训练样本图像可以理解为用于训练目标检测模型的样本图像。在本发明中,所需要训练的初始检测模型是能够提供深度特征的2.5d目标检测模型,因此,本发明所使用的训练样本图像的相对于2d目标检测模型所使用的训练样本图像,所标注的标签数据除
了包含标定框(即样本目标的真实边界框)还需要包括标定深度(即样本目标的真实深度值)。
[0068]
示例性的,获取训练样本图像的方式可以是获取包含样本目标的样本图像和样本目标对应的激光点云;根据激光点云确定样本目标的标定深度,在样本图像上标注每个样本目标的标定框和标定深度得到训练样本图像。
[0069]
s120、将所述训练样本图像输入2.5d初始目标检测模型获得所述样本目标的预测结果数据;其中,所述2.5d初始目标检测模型在2d目标检测模型的头部网络中增加深度估计层;所述预测结果数据包括:预测框和预测深度。
[0070]
其中,2.5d初始目标检测模型是未经训练或未训练完备的2.5d目标检测模型。2.5d目标检测模型是能够将二维目标检测和目标深度估计结合的目标检测模型。本发明实施例所构建的2.5d初始目标检测模型,通过在有的2d目标检测模型的头部网络中增加深度估计层得到。
[0071]
具体的,在现有的2d目标检测模型的基础上,保留2d目标检测模型的原有模型架构,在头部网络(或输出网络)中增加用于估计样本目标的预测深度的深度估计层得到2.5d初始目标检测模型。将训练样本图像输入2.5d初始目标检测模型可以获得样本目标对应的预测框和预测深度。
[0072]
本发明实施例所构建的2.5d初始目标检测模型相对于现有的2d目标检测模型,目标检测的结果更加准确;而相对于现有的3d目标检测模型需要使用rgb图像、rgb-d深度图像和激光点云等输出物体类别及在三维空间中的长宽高和旋转角等信息,模型结构简单,且对训练样本图像的要求低,降低了模型训练和目标检测的成本,应用场景更加广泛。
[0073]
s130、根据所述预测结果数据和所述标签数据计算目标损失函数值,基于所述目标损失函数值对所述2.5d初始目标检测模型中的网络参数进行调整。
[0074]
其中,目标损失函数值用于度量通过2.5d初始目标检测模型对训练样本图像进行目标检测得到的目标预测结果与训练样本图像中标注的标签数据之间的差异。
[0075]
具体的,将2.5d初始目标检测模型输出的预测结果数据(包括预测框和预测深度)和训练样本图像中标注的标签数据(标定框和标定深度)输入目标函数,计算得到目标损失函数值。根据目标损失函数值对2.5d初始目标检测模型中的网络参数进行迭代调整,直到目标损失函数值达到最小值。
[0076]
示例性的,2.5d初始目标检测模型中的网络参数可以包括未经训练的初始网络参数,也可以包括经过预训练但未完备的网络参数。
[0077]
本发明实施例的技术方案,通过获取训练样本图像;将训练样本图像输入2.5d初始目标检测模型获得样本目标的预测结果数据;其中,所述2.5d初始目标检测模型在2d目标检测模型的头部网络中增加深度估计层;所述预测结果数据包括:预测框和预测深度;根据所述预测结果数据、所述标签数据和目标损失函数计算目标损失函数值,基于所述目标损失函数值对所述2.5d初始目标检测模型中的网络参数进行调整,提出一种2.5d的目标检测方法,能够解决3d目标检测方法使用成本高的问题,降低目标检测成本。
[0078]
本发明实施例可以很容易的将现有的2d目标检测模型提升到2.5d初始目标检测模型,提高目标检测的准确度,且适用于大多数传统的2d目标检测模型,例如常见的基于锚框anchor based的yolov5模型和基于关键点检测anchor free的centernet模型。
[0079]
在一个可选的实施例,所述2.5d初始目标检测模型包括:
[0080]
对于基于锚框的yolov5模型,保留所述yolov5模型的主干网络backbone、颈部neck网络和头部head网络;在所述头部网络中增加深度估计层得到2.5d初始目标检测模型;
[0081]
相应的,所述2.5d初始目标检测模型的目标损失函数包括:
[0082]
在所述yolov5模型的原损失函数的基础上增加深度回归损失函数;
[0083]
对所述yolov5模型的原损失函数和所述深度回归损失函数进行加权求和得到目标损失函数;
[0084]
其中,所述yolov5模型的原损失函数包括:分类损失函数、边界框损失函数和置信度损失函数;所述深度回归损失函数包括:所述预测深度与所述标定深度之间的绝对误差,以及所述预测深度与所述标定深度之间的相对误差。
[0085]
具体的,yolov5模型是一种典型的基于锚框的目标检测模型。yolov5模型的网络架构可以分为三部分,第一部分是主干网络backbone,负责目标的特征提取,由focus模块、bottlencsp模块、spp模块组成;第二部分是颈部neck网络,主要是对主干网络所提取的特征进行增强,所采用的模块是panet路径聚合结构;第三部分为头部head网络,采用与yolov3网络模型一样的头部检测网络,三个检测头分别对原图像进行了8倍、16倍和32倍下采样,最终分别生成三个不同大小的特征向量,用来检测不同大小的目标。
[0086]
本发明实施例在保留yolov5模型的主干网络backbone、颈部neck网络和头部head网络的基础上,在头部网络中增加深度估计层,用于估计目标的深度信息,从而确定2.5d初始目标检测模型的网络架构。
[0087]
由于网络架构中的头部网络中增加了深度估计层,相应的,2.5d初始目标检测模型的目标损失函数也在yolov5模型的原损失函数的基础上在增加了深度回归损失函数,用于度量通过2.5d初始目标检测模型的深度估计层输出的预测深度与训练样本图像中标注的标定深度之间的差异。
[0088]
具体的,对yolov5模型的原损失函数和深度回归损失函数进行加权求和得到目标损失函数;yolov5模型的原损失函数包括:分类损失函数、边界框损失函数和置信度损失函数;深度回归损失函数包括:预测深度与标定深度之间的绝对误差,以及预测深度与标定深度之间的相对误差。
[0089]
示例性的,目标损失函数为:l=ωbl
box
ωol
obj
ωcl
cls
ωdl
depth

[0090]
l
cls
表示分类损失函数,如:l
cls
=-α(1-p)
γ
log p;
[0091]
p为预测框的类概率,α和γ为参数,可以设置α=0.25,γ=2;wb,wo,wc,wd均为权重参数。
[0092]
边界框损失函数可以采用giou损失函数,giou作为边界框回归的损失函数,giou方法在克服了iou缺点的同时又充分利用iou的优点。假设a为预测框,b为标定框,令c表示包含a与b的最小凸闭合框。giou的计算公式如下:
[0093][0094]
作为边界框损失函数的giou损失函数的计算公式如下:
[0095]
l
box
=1-giou;
[0096]
l
obj
为置信度损失函数,可以采用交叉熵损失函数,如:
[0097]
l
obj
=(1-y)log(1-x)-ylog(x);
[0098]
其中,y表示标定值,y=0表示不是目标,y=1表示目标;x表示预测得到的概率值。
[0099]
深度回归损失函数为:l
depth
=l
abs
l
rel

[0100][0101][0102]
l
abs
表示预测深度与标定深度之间的绝对误差;l
rel
表示预测深度与标定深度之间的相对误差;r=l
d-fd,ld为标定深度,fd为预测深度。
[0103]
在另一个可选的实施例,所述2.5d初始目标检测模型包括:
[0104]
对于关键点检测的centernet模型,保留所述centernet模型的主干网络backbone、颈部网络neck和头部网络head;在所述头部网络中增加深度估计层得到2.5d初始目标检测模型;
[0105]
相应的,所述2.5d初始目标检测模型的目标损失函数包括:
[0106]
在所述centernet模型的原损失函数的基础上增加深度回归损失函数;
[0107]
对所述centernet模型的原损失函数和所述深度回归损失函数进行加权求和得到目标损失函数;
[0108]
其中,所述centernet模型的原损失函数包括:中心点预测损失函数、目标大小损失函数和目标中心点偏置损失函数;所述深度回归损失函数包括:所述预测深度与所述标定深度之间的绝对误差,以及所述预测深度与所述标定深度之间的相对误差。
[0109]
具体的,centernet模型是一种关键点检测的目标检测模型。centernet模型的网络架构和yolov5模型类似,同样可以分为主干网络backbone、颈部网络neck和头部网络head三部分。本发明实施例在保留centernet模型的主干网络backbone、颈部neck网络和头部head网络的基础上,在头部网络中增加深度估计层,用于估计目标的深度信息,从而确定2.5d初始目标检测模型的网络架构。
[0110]
由于网络架构中的头部网络中增加了深度估计层,相应的,2.5d初始目标检测模型的目标损失函数也在centernet模型的原损失函数的基础上在增加了深度回归损失函数,用于度量通过2.5d初始目标检测模型的深度估计层输出的预测深度与训练样本图像中标注的标定深度之间的差异。
[0111]
具体的,对centernet模型的原损失函数和深度回归损失函数进行加权求和得到目标损失函数;centernet模型的原损失函数包括:分类损失函数、边界框损失函数和置信度损失函数;深度回归损失函数包括:预测深度与标定深度之间的绝对误差,预测深度与标定深度之间的相对误差。
[0112]
示例性的,目标损失函数和上述yolov5模型的目标损失函数相同,本实施例对此
不作赘述。
[0113]
需要说明的是,本发明实施例所提供的2.5d目标检测模型的训练方法不限于上述的yolov5模型和centernet模型,对于大多数传统的2d目标检测模型,在保留原始网络架构的基础上增加深度估计层,可以将2d目标检测模型升级为2.5d目标检测模型,模型升级的方式简单,且适用模型范围广。
[0114]
可选的,对于模型效果的评估,可以使用普通2d目标检测的评估指标,如准确率,召回率和map。但对于评估深度距离的准确性的可以使用平均深度误差进行评估,平均深度误差是指正确检测的目标样本的相对深度误差的平均值,即
[0115][0116]
其中,ed表示平均深度误差,d表示所有正确检测的目标样本tp中的一个目标样本,d
gt
表示目标样本的标定深度,d
pred
表示目标样本的预测深度。
[0117]
可选的,所述获取训练样本图像,包括:
[0118]
获取rgb样本图像和对应的激光点云样本数据;
[0119]
确定所述rgb样本图像中的样本目标的标定框,并将所述激光点云样本数据投影到所述rgb样本图像上;
[0120]
将所述标定框内的激光点云样本数据可视化到所述rgb样本图像对应的鸟瞰视图中得到点云鸟瞰视图,并将所述点云鸟瞰视图和所述rgb样本图像进行拼接得到拼接图像;
[0121]
在所述点云鸟瞰视图中,根据所述rgb样本图像的标定框和可视化的激光点云样本数据确定所述样本目标的边界框;
[0122]
根据所述边界框内可视化的激光点云样本数据的平均深度确定对应标定框的标定深度;
[0123]
在所述拼接图像上标注所述标定框和所述标定深度得到训练样本图像。
[0124]
其中,点云鸟瞰视图可以理解为在鸟瞰视角下点云数据构成的图像。
[0125]
具体的,通过图像传感器获取rgb样本图像,通过激光雷达传感器获取与rgb样本图像为同一场景下的激光点云样本数据,对rgb样本图像和激光点云样本数据进行时间同步。对rgb样本图像中的样本目标标注标定框box
rgb
,该标定框可以为常规的2d边界框,并且将激光点云样本数据投影到rgb样本图像上。为了简化后续的标注过程,位于标注框内的激光点云样本数据需要进行深度标准,而标定框之外的激光点云样本数据可以被忽略。
[0126]
在rgb样本图像对应的鸟瞰视图中对标定框内的激光点云样本数据进行可视化显示得到点云鸟瞰视图,并将点云鸟瞰视图和rgb样本图像进行拼接得到拼接图像。从而在点云鸟瞰视图中,根据rgb样本图像的标定框和可视化的激光点云样本数据确定哪些像素点属于一个样本目标,从而绘制样本目标的边界框box
pc
。另外,还可以通过为每对[box
rgb
,box
pc
]指定相同的id,将rgb图像中的标定框与点云鸟瞰视图中的边界框相关联。对于每对[box
rgb
,box
pc
],根据边界框内可视化的激光点云样本数据的平均深度确定对应标定框box
rgb
的标定深度;从而可以在拼接图像上标注标定框和标定深度得到训练样本图像。示例性的,训练样本图像的示意图如图1b所示。
[0127]
图2a为本发明实施例提供的一种目标检测方法的流程图,本实施例可适用于基于
上述实施提供的目标检测模型的训练方法训练得到的2.5d完备目标检测模型进行目标检测的情况,该方法可以由目标检测装置来执行,该目标检测装置可以采用硬件和/或软件的形式实现,该目标检测装置可配置于电子设备中。如图2a所示,该方法包括:
[0128]
s210、获取待检测场景的待检测rgb图像和稀疏深度图像。
[0129]
其中,待检测场景是指需要进行目标检测的场景。待检测rgb图像是对待检测场景进行拍摄得到的rgb图像,待检测rgb图像中包含至少一个目标物体。稀疏深度图像是待检测场景中的目标物体的深度信息构成的图像。
[0130]
示例性的,获取待检测场景的待检测rgb图像的方式可以是通过图像传感器拍摄待检测场景的图像得到待检测rgb图像。
[0131]
可选的,获取待检测场景的稀疏深度图像,包括:
[0132]
通过单线激光雷达获取待检测场景的稀疏点云数据;
[0133]
将所述稀疏点云数据投影到像平面上得到稀疏深度图像。
[0134]
具体的,通过单线激光雷达采集待检测场景的稀疏点云数据,将稀疏点云数据投影到像平面上,可以将稀疏点云数据转换为图像,得到稀疏深度图像。为了使稀疏深度图像能够更加住准确的反映目标物体的深度信息,可以将除深度信息之外的其他像素点进行去除。
[0135]
s220、对所述待检测rgb图像和所述稀疏深度图像分别进行卷积处理后进行特征融合得到的融合特征图像。
[0136]
其中,融合特征图像是待检测rgb图像的稀疏深度图像的特征融合后得到的图像。
[0137]
具体的,如图2b所示,将获取到的待检测场景的待检测rgb图像进行二维卷积处理得到rgb特征图像,同样的将获取到的稀疏深度图像进行二维卷积处理得到深度特征图像,对rgb特征图像和深度特征图像进行特征融合得到融合特征图像。
[0138]
s230、将所述融合特征图像输入2.5d完备目标检测模型得到所述待检测场景中目标物体的2.5d目标检测框;其中,所述2.5d完备目标检测模型基于目标检测模型的训练方法训练得到。
[0139]
其中,2.5d目标检测框是结合2d目标检测框和预测深度所确定的检测框。
[0140]
具体的,将融合特征图像输入采用本发明提供的目标检测模型的训练方法训练得到的2.5d完备目标检测模型中,得到2.5d完备目标检测模型输出的2.5d目标检测框。由于2.5d完备目标检测模型包括深度估计模块,用于预测目标物体的深度信息,因此,2.5d完备目标检测模型输出的2.5d目标检测框相较于2d目标检测框的精度更高。
[0141]
本发明实施例的技术方案,通过获取待检测场景的待检测rgb图像和稀疏深度图像;对待检测rgb图像和稀疏深度图像分别进行卷积处理后进行特征融合得到的融合特征图像;将融合特征图像输入2.5d完备目标检测模型得到待检测场景中目标物体的2.5d目标检测框;其中,2.5d完备目标检测模型基于目标检测模型的训练方法训练得到,相对于现有的3d目标检测方法,对待检测图像的要求更低,且模型的计算量大大减少,降低了目标检测成本;相对于现有的2d目标检测方法,检测结果的精确度得到有效提升。
[0142]
可选的,在将所述融合特征图像输入2.5d完备目标检测模型得到所述待检测场景中目标物体的2.5d目标检测框之后,还包括:
[0143]
获取所述目标物体的观测轨迹;所述观测轨迹包括:多帧标定框和对应的标定深
度;
[0144]
基于卡尔曼滤波器根据目标物体在当前帧的2.5d目标检测框预测下一帧2.5d目标检测框,基于多帧2.5d目标检测框和对应的预测深度构成预测轨迹;
[0145]
利用匈牙利算法计算所述观测轨迹和所述预测轨迹的匹配距离,基于所述匹配距离对所述预测轨迹和观测轨迹进行匹配,得到所述目标物体的目标跟踪结果。
[0146]
其中,观测轨迹是目标物体的实际运动轨迹。在本发明实施例中针对2.5d目标检测框的观测轨迹可以由多帧标定框和对应的标定深度构成。预测轨迹是基于2.5d完备目标检测模型输出的目标检测框所预测得到的目标物体的运动轨迹。观测轨迹可以由多帧标定框和对应的标定深度构成。
[0147]
由于在待检测场景中可能包含多个目标物体,且目标物体在多帧图像可能发生运动,因此,在确定待检测场景中目标物体的2.5d目标检测框之后,还需要对应进行目标检测框的目标跟踪。
[0148]
具体的,通过采集目标物体的多帧图像并标注每帧图像的标定框和标定深度,获得目标物体的观测轨迹。基于卡尔曼滤波器根据2.5d完备目标检测模型输出的目标物体在当前帧的2.5d目标检测框,预测下一帧2.5d目标检测框和预测深度,从而获得多帧2.5d目标检测框和对应的预测深度构成的预测轨迹。
[0149]
目标物体的运动轨迹可以采用运动状态空间进行描述。将传感器的内参和外参矩阵确定运动状态空间的中心位置,根据传感器的位置确定运动状态空间的中心位置在世界坐标系中的位置坐标。目标物体的轨迹的运动状态空间可采用为12维的矢量表述为{bx,by,bw,bh,x,y,vbx,vby,vbw,vbh,vx,vy},其中x,y表示目标物体在世界坐标系中的中心位置,vbx,vby,vbw,vbh表示在图像坐标系中检测框的一阶导数,vx,vy表示目标物体在世界坐标系中的速度(假设z=0)。
[0150]
构建用于匹配预测轨迹tt与观测轨迹ot的数据关联,将数据关联转化为二分图匹配问题,利用匈牙利算法求解二分图匹配问题,对各帧图像的目标检测框和标定框进行匹配,从而实现每个目标物体对应的目标检测框的目标跟踪。预测轨迹tt与观测轨迹ot的数据关联可以采用匹配距离进行表述。
[0151]
可选的,所述观测轨迹和所述预测轨迹的匹配距离包括:
[0152][0153][0154][0155]
其中,表示所述观测轨迹和所述预测轨迹t
tj
的匹配距离,i表示交并比关联度量,d表示距离关联度量,iou表示交并比计算,和分别表示构成观测轨迹的第j帧的标定框和对应的标定深度;boxt
tj
和dt
tj
分别表示构成观测轨迹的第j帧的2.5d目标检测框和对应的预测深度。
[0156]
图3为本发明实施例提供的一种目标检测模型的训练装置的结构示意图。如图3所示,该装置包括:
[0157]
训练样本获取模块310,用于获取训练样本图像;所述训练样本图像标注有样本目标的标签数据,所述标签数据包括:标定框和标定深度;
[0158]
预测结果获取模块320,用于将所述训练样本图像输入2.5d初始目标检测模型获得所述样本目标的预测结果数据;其中,所述2.5d初始目标检测模型在2d目标检测模型的头部网络中增加深度估计层;所述预测结果数据包括:预测框和预测深度;
[0159]
参数调整模块330,用于根据所述预测结果数据、所述标签数据和目标损失函数计算目标损失函数值,基于所述目标损失函数值对所述2.5d初始目标检测模型中的网络参数进行调整。
[0160]
可选的,所述2.5d初始目标检测模型包括:
[0161]
对于基于锚框的yolov5模型,保留所述yolov5模型的主干网络backbone、颈部网络neck和头部网络head;在所述头部网络中增加深度估计层得到2.5d初始目标检测模型;
[0162]
相应的,所述2.5d初始目标检测模型的目标损失函数包括:
[0163]
在所述yolov5模型的原损失函数的基础上增加深度回归损失函数;
[0164]
对所述yolov5模型的原损失函数和所述深度回归损失函数进行加权求和得到目标损失函数;
[0165]
其中,所述yolov5模型的原损失函数包括:分类损失函数、边界框损失函数和置信度损失函数;所述深度回归损失函数包括:所述预测深度与所述标定深度之间的绝对误差,以及所述预测深度与所述标定深度之间的相对误差。
[0166]
可选的,所述2.5d初始目标检测模型包括:
[0167]
对于关键点检测的centernet模型,保留所述centernet模型的主干网络backbone、颈部网络neck、头部网络head;在所述头部网络中增加深度估计层得到2.5d初始目标检测模型;
[0168]
相应的,所述2.5d初始目标检测模型的目标损失函数包括:
[0169]
在所述centernet模型的原损失函数的基础上增加深度回归损失函数;
[0170]
对所述centernet模型的原损失函数和所述深度回归损失函数进行加权求和得到目标损失函数;
[0171]
其中,所述centernet模型的原损失函数包括:中心点预测损失函数、目标大小损失函数和目标中心点偏置损失函数;所述深度回归损失函数包括:所述预测深度与所述标定深度之间的绝对误差,以及所述预测深度与所述标定深度之间的相对误差。
[0172]
可选的,所述训练样本获取模块,具体用于:
[0173]
获取rgb样本图像和对应的激光点云样本数据;
[0174]
确定所述rgb样本图像中的样本目标的标定框,并将所述激光点云样本数据投影到所述rgb样本图像上;
[0175]
将所述标定框内的激光点云样本数据可视化到所述rgb样本图像对应的鸟瞰视图中得到点云鸟瞰视图,并将所述点云鸟瞰视图和所述rgb样本图像进行拼接得到拼接图像;
[0176]
在所述点云鸟瞰视图中,根据所述rgb样本图像的标定框和可视化的激光点云样本数据确定所述样本目标的边界框;
[0177]
根据所述边界框内可视化的激光点云样本数据的平均深度确定对应标定框的标定深度;
[0178]
在所述拼接图像上标注所述标定框和所述标定深度对得到训练样本图像。
[0179]
本发明实施例所提供的目标检测模型的训练装置可执行本发明任意实施例所提供的目标检测模型的训练方法,具备执行方法相应的功能模块和有益效果。
[0180]
图4为本发明实施例提供的一种目标检测装置的结构示意图。如图4所示,该装置包括:
[0181]
图像获取模块410,用于获取待检测场景的待检测rgb图像和稀疏深度图像;
[0182]
特征融合模块420,用于对所述待检测rgb图像和所述稀疏深度图像分别进行卷积处理后进行特征融合得到的融合特征图像;
[0183]
目标检测模块430,用于将所述融合特征图像输入2.5d完备目标检测模型得到所述待检测场景中目标物体的2.5d目标检测框;其中,所述2.5d完备目标检测模型基于目标检测模型的训练方法训练得到。
[0184]
可选的,还包括:
[0185]
观测轨迹获取模块,用于在将所述融合特征图像输入2.5d完备目标检测模型得到所述待检测场景中目标物体的2.5d目标检测框之后,获取所述目标物体的观测轨迹;所述观测轨迹包括:多帧标定框和对应的标定深度;
[0186]
预测轨迹生成模块,用于基于卡尔曼滤波器根据目标物体在当前帧的2.5d目标检测框预测下一帧2.5d目标检测框,基于多帧2.5d目标检测框和对应的预测深度构成预测轨迹;
[0187]
目标跟踪模块,用于利用匈牙利算法计算所述观测轨迹和所述预测轨迹的匹配距离,基于所述匹配距离对所述预测轨迹和观测轨迹进行匹配,得到所述目标物体的目标跟踪结果。
[0188]
可选的,所述观测轨迹和所述预测轨迹的匹配距离包括:
[0189][0190][0191][0192]
其中,表示所述观测轨迹和所述预测轨迹t
tj
的匹配距离,i表示交并比关联度量,d表示距离关联度量,iou表示交并比计算,和分别表示构成观测轨迹的第j帧的标定框和对应的标定深度;boxt
tj
和dt
tj
分别表示构成观测轨迹的第j帧的2.5d目标检测框和对应的预测深度。
[0193]
本发明实施例所提供的目标检测装置可执行本发明任意实施例所提供的目标检测方法,具备执行方法相应的功能模块和有益效果。
[0194]
图5示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作
为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
[0195]
如图5所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(rom)12、随机访问存储器(ram)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(rom)12中的计算机程序或者从存储单元18加载到随机访问存储器(ram)13中的计算机程序,来执行各种适当的动作和处理。在ram 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、rom 12以及ram 13通过总线14彼此相连。输入/输出(i/o)接口15也连接至总线14。
[0196]
电子设备10中的多个部件连接至i/o接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0197]
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如目标检测模型的训练方法或者目标检测方法。
[0198]
在一些实施例中,目标检测模型的训练方法或者目标检测方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由rom 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到ram 13并由处理器11执行时,可以执行上文描述的目标检测模型的训练方法或者目标检测方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行目标检测模型的训练方法或者目标检测方法。
[0199]
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0200]
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0201]
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、
或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0202]
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0203]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
[0204]
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。
[0205]
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
[0206]
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献