1.本技术涉及自动驾驶技术领域,尤其涉及一种车辆位姿测量方法、装置及电子设备、存储介质。
背景技术:2.自动驾驶车辆在行驶过程中,需要对四周的动态目标尤其是车辆进行位置和姿态的准确感知,以作出正确的决策。当前自动驾驶领域主要使用的感知器有摄像头、激光雷达、毫米波雷达等,其中摄像头的成本最低。摄像头测距方案又分单目测距和多目测距,多目测距更准确,但计算资源消耗大,对计算设备要求高,单目测距是目前成本最低的方案。
3.现有的一种方案是使用单目3d目标检测模型直接对目标物体的位置、姿态等3d信息进行回归,但是单目3d目标检测模型的训练依赖3d图像的标注,3d图像标注难度大、周期长,且单目3d目标检测模型对相机的泛化性差,在不同内参的相机上检测效果差距较大。相比较来说,2d目标检测模型泛化性强,对目标的检测精度高,但当目标距离较远时误差大。
4.自动驾驶车辆对前方目标的检测距离要求高,但对左右两侧目标的检测距离要求较低。例如,标准车道宽度一般为3.75米,双向八车道的宽度也仅为30m,当自动驾驶车辆行驶在道路上时,检测出左右两侧30m内的目标便可满足要求。
5.目前的方案一般使用激光雷达完成自动驾驶车辆两侧目标的位姿测量,然而激光雷达设备成本高。
技术实现要素:6.本技术实施例提供了一种车辆位姿测量方法、装置及电子设备、存储介质,在降低成本的同时实现对自动驾驶车辆的周围车辆的位姿的准确测量。
7.本技术实施例采用下述技术方案:
8.第一方面,本技术实施例提供一种车辆位姿测量方法,其中,所述方法包括:
9.获取目标车辆图像,所述目标车辆图像中包含有自车周围的目标车辆;
10.对所述目标车辆图像进行关键点检测,得到所述目标车辆的关键点,所述目标车辆的关键点包括所述目标车辆图像中可见的车轮与地面的接触点;
11.根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离;
12.根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息。
13.可选地,所述对所述目标车辆图像进行关键点检测,得到所述目标车辆的关键点包括:
14.利用预设目标检测模型对所述目标车辆图像进行检测,得到目标车辆检测结果;
15.利用预设关键点检测模型对所述目标车辆检测结果进行检测,得到所述目标车辆的关键点。
16.可选地,所述预设关键点检测模型通过如下方式训练得到:
17.获取待标注的车辆图像;
18.对所述待标注的车辆图像中的关键点进行标注,得到标注后的车辆图像,所述关键点为待标注的车辆图像中可见的车轮与地面的接触点;
19.利用所述标注后的车辆图像训练预设关键点检测模型。
20.可选地,所述利用预设关键点检测模型对所述目标车辆检测结果进行检测,得到所述目标车辆的关键点包括:
21.根据所述目标车辆检测结果确定所述目标车辆图像中的目标车辆区域;
22.根据所述目标车辆区域对目标车辆图像进行裁剪,得到所述目标车辆区域对应的局部目标车辆图像;
23.利用所述预设关键点检测模型对所述目标车辆区域对应的局部目标车辆图像进行检测,得到所述目标车辆的关键点。
24.可选地,所述目标车辆的关键点包括所述关键点在图像坐标系下的位置坐标,所述根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离包括:
25.根据所述关键点在图像坐标系下的位置坐标,确定所述关键点在像平面坐标系下的投影点坐标;
26.确定所述关键点在像平面坐标系下的投影点坐标与像平面坐标系原点在纵轴方向的差值;
27.根据所述关键点在像平面坐标系下的投影点坐标与像平面坐标系原点在纵轴方向的差值、所述相机离地高度以及相机焦距,确定所述目标车辆的关键点与所述自车的距离。
28.可选地,所述根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息包括:
29.根据所述目标车辆的关键点与所述自车的距离,所述关键点在图像坐标系下的位置坐标以及相机内参,确定所述关键点在相机坐标系下的位置坐标;
30.根据所述关键点在相机坐标系下的位置坐标以及相机外参,确定所述关键点在车体坐标系下的位置坐标;
31.根据所述关键点在车体坐标系下的位置坐标,确定所述目标车辆的位姿信息。
32.可选地,所述目标车辆的位姿信息包括目标车辆的位置,所述目标车辆的关键点包括多个,所述根据所述关键点在车体坐标系下的位置坐标,确定所述目标车辆的位姿信息包括:
33.根据各个关键点与所述自车的距离,确定所述目标车辆与所述自车的最近距离;
34.确定所述目标车辆与所述自车的最近距离对应的目标关键点;
35.将所述目标关键点在车体坐标系下的位置坐标作为所述目标车辆的位置。
36.可选地,所述目标车辆的位姿信息包括目标车辆的航向角,所述根据所述关键点在车体坐标系下的位置坐标,确定所述目标车辆的位姿信息包括:
37.若所述关键点包括目标车辆的前轮关键点和后轮关键点,则将从所述后轮关键点指向所述前轮关键点的向量作为所述航向角的方向;
38.若所述关键点仅包括目标车辆的头部或尾部的两个关键点,则将所述两个关键点
的连线的法向量作为所述航向角的方向;
39.根据所述航向角的方向确定所述目标车辆的航向角。
40.第二方面,本技术实施例还提供一种车辆位姿测量装置,其中,所述装置包括:
41.获取单元,用于获取目标车辆图像,所述目标车辆图像中包含有自车周围的目标车辆;
42.检测单元,用于对所述目标车辆图像进行关键点检测,得到所述目标车辆的关键点,所述目标车辆的关键点包括所述目标车辆图像中可见的车轮与地面的接触点;
43.第一确定单元,用于根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离;
44.第二确定单元,用于根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息。
45.第三方面,本技术实施例还提供一种电子设备,包括:
46.处理器;以及
47.被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行前述之任一所述方法。
48.第四方面,本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行前述之任一所述方法。
49.本技术实施例采用的上述至少一个技术方案能够达到以下有益效果:本技术实施例的车辆位姿测量方法,先获取目标车辆图像,目标车辆图像中包含有自车周围的目标车辆;然后对目标车辆图像进行关键点检测,得到目标车辆的关键点,目标车辆的关键点包括目标车辆图像中可见的车轮与地面的接触点;之后根据目标车辆的关键点,以及目标车辆与自车的几何关系,确定目标车辆的关键点与自车的距离;最后根据目标车辆的关键点与自车的距离,确定目标车辆的位姿信息。本技术实施例的车辆位姿测量方法将图像中可见的车轮与地面的接触点作为目标车辆的关键点,有利于对目标车辆进行准确的位姿测量,使用关键点检测和几何关系相结合的方法实现了对自动驾驶车辆周围车辆的位姿信息的准确测量,同时降低了成本。
附图说明
50.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
51.图1为本技术实施例中一种车辆位姿测量方法的流程示意图;
52.图2为本技术实施例中一种车辆的关键点标注示意图;
53.图3为本技术实施例中一种目标车辆与自车的几何关系示意图;
54.图4为本技术实施例中一种车辆位姿测量装置的结构示意图;
55.图5为本技术实施例中一种电子设备的结构示意图。
具体实施方式
56.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及
相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
57.以下结合附图,详细说明本技术各实施例提供的技术方案。
58.本技术实施例提供了一种车辆位姿测量方法,如图1所示,提供了本技术实施例中一种车辆位姿测量方法的流程示意图,所述方法至少包括如下的步骤s110至步骤s140:
59.步骤s110,获取目标车辆图像,所述目标车辆图像中包含有自车周围的目标车辆。
60.在对自动驾驶车辆周围如左右两侧的目标车辆进行位姿测量时,需要先获取自动驾驶车辆上安装的相机采集的目标车辆图像,为了提高采集的图像效果,可以在自动驾驶车辆的车身两侧分别安装一个摄像头,从而用于捕捉自动驾驶车辆左右两侧的车辆等目标。当然,也可以安装更多摄像头,具体如何采集目标车辆图像,可以根据实际需求灵活设置。
61.步骤s120,对所述目标车辆图像进行关键点检测,得到所述目标车辆的关键点,所述目标车辆的关键点包括所述目标车辆图像中可见的车轮与地面的接触点。
62.在得到目标车辆图像后,需要对目标车辆图像中包含的目标车辆的关键点进行检测,例如可以采用事先训练好的检测模型来实现,这里只需要对目标车辆图像中能够直接看到的车轮与地面的接触点进行检测即可,不需要关注目标车辆图像中无法看到的车轮与地面的接触点或者其他类型的关键点,大大提高了检测效率和检测精度。
63.步骤s130,根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离。
64.在得到目标车辆的关键点后,需要进一步结合目标车辆与自车之间的几何关系,来计算目标车辆的关键点与自车之间的距离,由于本技术选取车轮与地面的接触点作为目标车辆的关键点,因此通过计算目标车辆的关键点与自车的距离,可以便于自车能够较为准确地确定自身与目标车辆的远近程度,从而为自身路径规划等提供决策支持。
65.步骤s140,根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息。
66.在得到目标车辆的关键点与自车的距离后,就可以根据目标车辆的关键点与自车的距离,进一步确定出目标车辆的位姿信息,具体可以包括目标车辆在车体坐标系下的位置以及目标车辆的航向角等信息。
67.需要说明的是,本技术实施例的车辆位姿测量方法可以应用于对自动驾驶车辆周围的目标车辆进行位姿测量的场景,由于自动驾驶车辆对前方目标的检测距离要求高,但对左右两侧目标的检测距离要求较低,因此本技术实施例的车辆位姿测量方法具体可以应用于对自动驾驶车辆两侧的目标车辆进行位姿测量的场景,从而在降低成本的同时保证精度。当然,也可以根据实际需求灵活扩展至其他场景,例如对自动驾驶车辆周围的静态目标进行检测,在此不作具体限定。
68.本技术实施例的车辆位姿测量方法将图像中可见的车轮与地面的接触点作为目标车辆的关键点,有利于对目标车辆进行准确定的位姿测量,使用关键点检测和几何关系相结合的方法实现了对自动驾驶车辆周围车辆的位姿信息的准确测量,同时降低了成本。
69.在本技术的一个实施例中,所述对所述目标车辆图像进行关键点检测,得到所述
目标车辆的关键点包括:利用预设目标检测模型对所述目标车辆图像进行检测,得到目标车辆检测结果;利用预设关键点检测模型对所述目标车辆检测结果进行检测,得到所述目标车辆的关键点。
70.本技术实施例在对目标车辆图像进行关键点检测时可以划分为两个阶段,第一个阶段是目标车辆检测阶段,即利用事先训练好的目标检测模型对目标车辆图像中的目标车辆进行检测,也就是先检测出目标车辆图像中所包含的目标车辆的位置和类别等信息,作为上述目标车辆检测结果。
71.上述预设目标检测模型例如可以使用yolo v5模型训练得到。yolo v5是常用的基于深度学习的2d目标检测模型,对于车辆等目标的检测可以达到很高的检测精度,且可同时对车辆的类型进行分类,如分为:小轿车、越野车、巴士、卡车等,针对自动驾驶车辆两侧的摄像头传入的目标车辆图像,使用上述训练好的yolo v5模型进行检测,可以检测出其中的目标车辆并进行分类。当然也可以使用其它类型的2d目标检测模型,在此不作具体限定。
72.第二个阶段是目标车辆的关键点检测阶段,即利用事先训练好的关键点检测模型对前述检测到的目标车辆进行关键点检测,从而得到目标车辆的关键点。上述预设关键点检测模型同样可以基于深度学习训练得到,关键点检测模型的模型结构可借鉴人体关键点检测模型,如move net等来实现。
73.在本技术的一个实施例中,所述预设关键点检测模型通过如下方式训练得到:获取待标注的车辆图像;对所述待标注的车辆图像中的关键点进行标注,得到标注后的车辆图像,所述关键点为待标注的车辆图像中可见的车轮与地面的接触点;利用所述标注后的车辆图像训练预设关键点检测模型。
74.本技术实施例对于一个目标车辆事先定义了四个关键点,分别为:左侧前轮与地面的接触点,左侧后轮与地面的接触点,右侧前轮与地面的接触点,右侧后轮与地面的接触点。选择车轮与地面的接触点作为关键点的原因是因为左右两侧车轮与地面的接触点特征明显,便于标注图像和特征提取,且本技术后续的车辆位姿测量环节依赖该接触点。
75.由于前后左右这四个面不可能同时出现在二维图像上,只能同时出现一个面或两个面,因此在对待标注的车辆图像进行标注时,只需要标注图像中可见的关键点即可,对于不可见的关键点则直接忽略掉,相比于对所有的车轮与地面的接触点或者其他类型的关键点进行标注的方式来说,通过本技术实施例采用的标注方式能够进一步降低数据标注的难度,提升数据标注的准确度,最后利用标注后的车辆图像训练关键点检测模型,得到的训练后的关键点检测模型对于图像中可见的关键点的检测具有很好的检测精度,符合目标车辆位姿测量场景下的位姿测量要求。
76.为了便于对本技术实施例的理解,如图2所示,提供了本技术实施例中一种车辆的关键点标注示意图,图2中左虚线框部分表示目标车辆相对于自车来说仅有右侧两个车轮与地面的接触点a和b可以被看到,那么仅仅对右侧两个车轮与地面的接触点a和b进行标注即可,图2中右虚线框部分表示目标车辆相对于自车来说有右侧两个车轮与地面的接触点a和b以及尾部另一个车轮与地面的接触点c可以被看到,那么对这三个接触点a、b和c进行标注。
77.基于此,训练好的关键点检测模型在进行关键点检测时也只会输出目标车辆图像中可见的关键点的位置信息,从而避免模型对于不可见关键点的猜测,使检测到的关键点
更加准确,同时提高了检测效率。
78.在本技术的一个实施例中,所述利用预设关键点检测模型对所述目标车辆检测结果进行检测,得到所述目标车辆的关键点包括:根据所述目标车辆检测结果确定所述目标车辆图像中的目标车辆区域;根据所述目标车辆区域对目标车辆图像进行裁剪,得到所述目标车辆区域对应的局部目标车辆图像;利用所述预设关键点检测模型对所述目标车辆区域对应的局部目标车辆图像进行检测,得到所述目标车辆的关键点。
79.本技术实施例在基于预设目标检测模型检测得到目标车辆的位置后,可以在原始的目标车辆图像中将目标车辆所在位置区域的图像裁剪下来,也即进行抠图处理,然后再利用预设关键点检测模型对裁剪后的目标车辆图像进行关键点检测,从而可以省去大量无关信息的检测,进一步提高关键点检测的效率。
80.需要说明的是,由于车轮与地面的接触点可能会位于目标车辆的检测框的边界位置,为了避免关键点位置被误裁剪,影响后续检测精度,这里可以以目标车辆的检测框为基准适当放大裁剪区域的大小。
81.在本技术的一个实施例中,所述目标车辆的关键点包括所述关键点在图像坐标系下的位置坐标,所述根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离包括:根据所述关键点在图像坐标系下的位置坐标,确定所述关键点在像平面坐标系下的投影点坐标;确定所述关键点在像平面坐标系下的投影点坐标与像平面坐标系原点在纵轴方向的差值;根据所述关键点在像平面坐标系下的投影点坐标与像平面坐标系原点在纵轴方向的差值、所述相机离地高度以及相机焦距,确定所述目标车辆的关键点与所述自车的距离。
82.如图3所示,提供了本技术实施例中一种目标车辆与自车的几何关系示意图,上图3中左侧车表示自车,右侧车表示目标车辆,黑色实心原点表示相机光心,h为相机离地高度,可以提前测得;f为相机焦距(以像素为单位);y为目标车辆的关键点在像平面坐标系下的投影点坐标与像平面坐标系原点在纵轴方向的差值;z是目标车辆的关键点与自车之间的距离,是待求解的变量。
83.根据相似三角形原理,可以得出目标车辆的关键点与自车之间的距离计算公式为:
84.z=f*h/y,
ꢀꢀ
(1)
85.从该公式可以看出,目标车辆的关键点的检测是否准确,对于目标车辆的关键点与自车之间的距离的计算有很大影响,这也是前述实施例中的预设关键点检测模型只对目标车辆图像中可见的关键点进行检测的原因。
86.在本技术的一个实施例中,所述根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息包括:根据所述目标车辆的关键点与所述自车的距离,所述关键点在图像坐标系下的位置坐标以及相机内参,确定所述关键点在相机坐标系下的位置坐标;根据所述关键点在相机坐标系下的位置坐标以及相机外参,确定所述关键点在车体坐标系下的位置坐标;根据所述关键点在车体坐标系下的位置坐标,确定所述目标车辆的位姿信息。
87.本技术实施例在根据目标车辆的关键点与自车的距离确定目标车辆的位姿信息时,具体可以采用如下方式:
88.已知目标车辆的关键点与自车的距离z、相机内参k,以及目标车辆的关键点的图像坐标(xc,yc),可以恢复目标车辆的关键点在相机坐标系下的位置坐标(x,y,z),公式如下:
[0089][0090]
基于上述目标车辆的关键点在相机坐标系下的位置坐标(x,y,z),可以进一步通过相机外参即旋转矩阵r和平移矩阵t的转换,得到目标车辆的关键点在车体坐标系下的坐标(x,y,z),具体计算公式如下:
[0091]
[x,y,z]=([x,y,z]-t)/r,
ꢀꢀ
(3)
[0092]
其中,z将始终被置为0,即关键点在地面上。
[0093]
最后根据目标车辆的关键点在车体坐标系下的位置坐标,可以确定出目标车辆的位置和航向角等位姿信息。
[0094]
在本技术的一个实施例中,所述目标车辆的位姿信息包括目标车辆的位置,所述目标车辆的关键点包括多个,所述根据所述关键点在车体坐标系下的位置坐标,确定所述目标车辆的位姿信息包括:根据各个关键点与所述自车的距离,确定所述目标车辆与所述自车的最近距离;确定所述目标车辆与所述自车的最近距离对应的目标关键点;将所述目标关键点在车体坐标系下的位置坐标作为所述目标车辆的位置。
[0095]
如前所述,本技术实施例的目标车辆的位姿信息可以包括目标车辆的位置,且目标车辆上安装的相机至少可以同时拍摄到目标车辆上的两个关键点,因此本技术实施例这里得到的目标车辆的关键点就可以包括两个或者更多个。
[0096]
基于此,在基于前述实施例计算目标车辆的关键点与自车的距离z时,针对每一个关键点都会对应得到一个距离,例如,当检测到目标车辆图像中有左侧前轮与地面的接触点以及左侧后轮与地面的接触点这两个关键点时,那么根据左侧前轮与地面的接触点可以计算得到一个距离z1,左侧后轮与地面的接触点可以计算得到一个距离z2。
[0097]
由于各个关键点与自车距离的大小表明了目标车辆与自车的接近程度,为了便于自动驾驶车辆尽可能及时作出安全的决策,可以将各个关键点与自车的距离进行比较,从中确定出与自车距离最近的目标关键点,例如z1<z2,则将左侧前轮与地面的接触点作为目标关键点,说明自车在进行下一步的路径规划或者其他决策时,需要考虑该最近距离z1,以尽可能保证行驶安全。
[0098]
在本技术的一个实施例中,所述目标车辆的位姿信息包括目标车辆的航向角,所述根据所述关键点在车体坐标系下的位置坐标,确定所述目标车辆的位姿信息包括:若所述关键点包括目标车辆的前轮关键点和后轮关键点,则将从所述后轮关键点指向所述前轮关键点的向量作为所述航向角的方向;若所述关键点仅包括目标车辆的头部或尾部的两个关键点,则将所述两个关键点的连线的法向量作为所述航向角的方向;根据所述航向角的方向确定所述目标车辆的航向角。
[0099]
如前所述,本技术实施例的目标车辆的位姿信息还可以包括目标车辆的航向角,
在确定目标车辆的航向角时,可以考虑以下两种情况:
[0100]
第一种情况是检测到的目标车辆的关键点中包括目标车辆的前轮关键点和后轮关键点,针对此种情况,在确定目标车辆的航向角时,就可以直接将从后轮关键点指向前轮关键点的向量作为目标车辆的航向角的方向,进而根据目标车辆的航向角方向确定目标车辆的航向角的角度大小。
[0101]
第二种情况是检测到的目标车辆的关键点中仅包括目标车辆头部或尾部的两个关键点,针对此种情况,在确定目标车辆的航向角时,可以将两个关键点的连线的法向量作为航向角的方向,进而根据目标车辆的航向角方向确定目标车辆的航向角的角度大小。
[0102]
另外,还需要说明的是,如果同时检测到目标车辆尾部的两个后轮关键点以及一个前轮关键点,这里可以优先将与前轮关键点位于同侧的后轮关键点指向该前轮关键点的向量作为目标车辆的航向角的方向,或者,如果同时检测到目标车辆头部的两个前轮关键点以及一个后轮关键点,可以优先将后轮关键点指向与后轮关键点位于同侧的前轮关键点的向量作为目标车辆的航向角的方向,尽可能保证航向角的测量精度。
[0103]
本技术实施例还提供了一种车辆位姿测量装置400,如图4所示,提供了本技术实施例中一种车辆位姿测量装置的结构示意图,所述装置400包括:获取单元410、检测单元420、第一确定单元430以及第二确定单元440,其中:
[0104]
获取单元410,用于获取目标车辆图像,所述目标车辆图像中包含有自车周围的目标车辆;
[0105]
检测单元420,用于对所述目标车辆图像进行关键点检测,得到所述目标车辆的关键点,所述目标车辆的关键点包括所述目标车辆图像中可见的车轮与地面的接触点;
[0106]
第一确定单元430,用于根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离;
[0107]
第二确定单元440,用于根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息。
[0108]
在本技术的一个实施例中,所述检测单元420具体用于:利用预设目标检测模型对所述目标车辆图像进行检测,得到目标车辆检测结果;利用预设关键点检测模型对所述目标车辆检测结果进行检测,得到所述目标车辆的关键点。
[0109]
在本技术的一个实施例中,所述预设关键点检测模型通过如下方式训练得到:获取待标注的车辆图像;对所述待标注的车辆图像中的关键点进行标注,得到标注后的车辆图像,所述关键点为待标注的车辆图像中可见的车轮与地面的接触点;利用所述标注后的车辆图像训练预设关键点检测模型。
[0110]
在本技术的一个实施例中,所述目标车辆的关键点包括所述关键点在图像坐标系下的位置坐标,所述第一确定单元430具体用于:根据所述关键点在图像坐标系下的位置坐标,确定所述关键点在像平面坐标系下的投影点坐标;确定所述关键点在像平面坐标系下的投影点坐标与像平面坐标系原点在纵轴方向的差值;根据所述关键点在像平面坐标系下的投影点坐标与像平面坐标系原点在纵轴方向的差值、所述相机离地高度以及相机焦距,确定所述目标车辆的关键点与所述自车的距离。
[0111]
在本技术的一个实施例中,所述第二确定单元440具体用于:根据所述目标车辆的关键点与所述自车的距离,所述关键点在图像坐标系下的位置坐标以及相机内参,确定所
述关键点在相机坐标系下的位置坐标;根据所述关键点在相机坐标系下的位置坐标以及相机外参,确定所述关键点在车体坐标系下的位置坐标;根据所述关键点在车体坐标系下的位置坐标,确定所述目标车辆的位姿信息。
[0112]
在本技术的一个实施例中,所述目标车辆的位姿信息包括目标车辆的位置,所述目标车辆的关键点包括多个,所述第二确定单元440具体用于:根据各个关键点与所述自车的距离,确定所述目标车辆与所述自车的最近距离;确定所述目标车辆与所述自车的最近距离对应的目标关键点;将所述目标关键点在车体坐标系下的位置坐标作为所述目标车辆的位置。
[0113]
在本技术的一个实施例中,所述目标车辆的位姿信息包括目标车辆的航向角,所述第二确定单元440具体用于:若所述关键点包括目标车辆的前轮关键点和后轮关键点,则将从所述后轮关键点指向所述前轮关键点的向量作为所述航向角的方向;若所述关键点仅包括目标车辆的头部或尾部的两个关键点,则将所述两个关键点的连线的法向量作为所述航向角的方向;根据所述航向角的方向确定所述目标车辆的航向角。
[0114]
能够理解,上述车辆位姿测量装置,能够实现前述实施例中提供的车辆位姿测量方法的各个步骤,关于车辆位姿测量方法的相关阐释均适用于车辆位姿测量装置,此处不再赘述。
[0115]
图5是本技术的一个实施例电子设备的结构示意图。请参考图5,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(random-access memory,ram),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
[0116]
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是isa(industry standard architecture,工业标准体系结构)总线、pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
[0117]
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
[0118]
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成车辆位姿测量装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
[0119]
获取目标车辆图像,所述目标车辆图像中包含有自车周围的目标车辆;
[0120]
对所述目标车辆图像进行关键点检测,得到所述目标车辆的关键点,所述目标车辆的关键点包括所述目标车辆图像中可见的车轮与地面的接触点;
[0121]
根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离;
[0122]
根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息。
[0123]
上述如本技术图1所示实施例揭示的车辆位姿测量装置执行的方法可以应用于处
理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
[0124]
该电子设备还可执行图1中车辆位姿测量装置执行的方法,并实现车辆位姿测量装置在图1所示实施例的功能,本技术实施例在此不再赘述。
[0125]
本技术实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图1所示实施例中车辆位姿测量装置执行的方法,并具体用于执行:
[0126]
获取目标车辆图像,所述目标车辆图像中包含有自车周围的目标车辆;
[0127]
对所述目标车辆图像进行关键点检测,得到所述目标车辆的关键点,所述目标车辆的关键点包括所述目标车辆图像中可见的车轮与地面的接触点;
[0128]
根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离;
[0129]
根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息。
[0130]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0131]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0132]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
[0133]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0134]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0135]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0136]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0137]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0138]
本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0139]
以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
技术特征:1.一种车辆位姿测量方法,其中,所述方法包括:获取目标车辆图像,所述目标车辆图像中包含有自车周围的目标车辆;对所述目标车辆图像进行关键点检测,得到所述目标车辆的关键点,所述目标车辆的关键点包括所述目标车辆图像中可见的车轮与地面的接触点;根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离;根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息。2.如权利要求1所述方法,其中,所述对所述目标车辆图像进行关键点检测,得到所述目标车辆的关键点包括:利用预设目标检测模型对所述目标车辆图像进行检测,得到目标车辆检测结果;利用预设关键点检测模型对所述目标车辆检测结果进行检测,得到所述目标车辆的关键点。3.如权利要求2所述方法,其中,所述预设关键点检测模型通过如下方式训练得到:获取待标注的车辆图像;对所述待标注的车辆图像中的关键点进行标注,得到标注后的车辆图像,所述关键点为待标注的车辆图像中可见的车轮与地面的接触点;利用所述标注后的车辆图像训练预设关键点检测模型。4.如权利要求1所述方法,其中,所述目标车辆的关键点包括所述关键点在图像坐标系下的位置坐标,所述根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离包括:根据所述关键点在图像坐标系下的位置坐标,确定所述关键点在像平面坐标系下的投影点坐标;确定所述关键点在像平面坐标系下的投影点坐标与像平面坐标系原点在纵轴方向的差值;根据所述关键点在像平面坐标系下的投影点坐标与像平面坐标系原点在纵轴方向的差值、所述相机离地高度以及相机焦距,确定所述目标车辆的关键点与所述自车的距离。5.如权利要求1所述方法,其中,所述根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息包括:根据所述目标车辆的关键点与所述自车的距离,所述关键点在图像坐标系下的位置坐标以及相机内参,确定所述关键点在相机坐标系下的位置坐标;根据所述关键点在相机坐标系下的位置坐标以及相机外参,确定所述关键点在车体坐标系下的位置坐标;根据所述关键点在车体坐标系下的位置坐标,确定所述目标车辆的位姿信息。6.如权利要求5所述方法,其中,所述目标车辆的位姿信息包括目标车辆的位置,所述目标车辆的关键点包括多个,所述根据所述关键点在车体坐标系下的位置坐标,确定所述目标车辆的位姿信息包括:根据各个关键点与所述自车的距离,确定所述目标车辆与所述自车的最近距离;确定所述目标车辆与所述自车的最近距离对应的目标关键点;将所述目标关键点在车体坐标系下的位置坐标作为所述目标车辆的位置。
7.如权利要求5所述方法,其中,所述目标车辆的位姿信息包括目标车辆的航向角,所述根据所述关键点在车体坐标系下的位置坐标,确定所述目标车辆的位姿信息包括:若所述关键点包括目标车辆的前轮关键点和后轮关键点,则将从所述后轮关键点指向所述前轮关键点的向量作为所述航向角的方向;若所述关键点仅包括目标车辆的头部或尾部的两个关键点,则将所述两个关键点的连线的法向量作为所述航向角的方向;根据所述航向角的方向确定所述目标车辆的航向角。8.一种车辆位姿测量装置,其中,所述装置包括:获取单元,用于获取目标车辆图像,所述目标车辆图像中包含有自车周围的目标车辆;检测单元,用于对所述目标车辆图像进行关键点检测,得到所述目标车辆的关键点,所述目标车辆的关键点包括所述目标车辆图像中可见的车轮与地面的接触点;第一确定单元,用于根据所述目标车辆的关键点,以及所述目标车辆与自车的几何关系,确定所述目标车辆的关键点与所述自车的距离;第二确定单元,用于根据所述目标车辆的关键点与所述自车的距离,确定所述目标车辆的位姿信息。9.一种电子设备,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行前述权利要求1~8之任一所述方法。10.一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行所述权利要求1~8之任一所述方法。
技术总结本申请公开了一种车辆位姿测量方法、装置及电子设备、存储介质,该方法包括:获取目标车辆图像,目标车辆图像中包含有自车周围的目标车辆;对目标车辆图像进行关键点检测,得到目标车辆的关键点,目标车辆的关键点包括目标车辆图像中可见的车轮与地面的接触点;根据目标车辆的关键点,以及目标车辆与自车的几何关系,确定目标车辆的关键点与自车的距离;根据目标车辆的关键点与自车的距离,确定目标车辆的位姿信息。本申请将图像中可见的车轮与地面的接触点作为目标车辆的关键点,有利于对目标车辆进行准确定位,使用关键点检测和几何关系相结合的方法实现了对自动驾驶车辆周围车辆的位姿信息的准确测量,同时降低了成本。同时降低了成本。同时降低了成本。
技术研发人员:罗壮 张雪
受保护的技术使用者:智道网联科技(北京)有限公司
技术研发日:2022.03.29
技术公布日:2022/7/5