车辆三维信息检测方法、装置、设备及可读存储介质转让专利

申请号 : CN202011239442.3

文献号 : CN112036389B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 彭欣亮王曦程士庆徐振南刘孟绅

申请人 : 天津天瞳威势电子科技有限公司

摘要 :

本发明提供了一种车辆三维信息检测方法、装置、设备及可读存储介质,方法包括:将单目相机采集的实际场景图像作为预先训练好的深度学习模型的输入,得到深度学习模型的输出信息,输出信息包括分别表示四个车辆侧棱是否可见的四个二分类值和四个车辆侧棱与路面交点的图像坐标;根据四个二分类值确定车辆朝向;在确定的车辆朝向为复合朝向时,根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角。相比于标注车辆航向角,降低了训练图像的标注难度,以及基于单目相机的单帧图像检测出了车辆的三维信息,进而降低了成本和提高了检测稳定性。

权利要求 :

1.一种车辆三维信息检测方法,其特征在于,包括:

获取单目相机采集的实际场景图像;

将所述实际场景图像作为预先训练好的深度学习模型的输入数据,得到所述深度学习模型的输出信息,所述输出信息包括分别表示四个车辆侧棱是否可见的四个二分类值和四个车辆侧棱与路面交点的图像坐标;

根据所述四个二分类值确定车辆朝向;

在所述确定的车辆朝向为复合朝向时,根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角;

所述根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角,具体包括:采用车辆航向角计算公式进行车辆航向角计算,车辆航向角计算公式为:其中, 为车辆航向角;车辆朝向为左前和右后其中一个时,S取值1;车辆朝向为左后和右前其中一个时,S取值为-1;vw为车辆的实际宽度;vl为车辆的实际长度;xm为距离单目相机最近的车辆侧棱的横坐标;xl为车辆可见侧面的另一条侧棱的横坐标;xw为车辆可见前面或后面的另一条侧棱的横坐标,Aij为矩阵A中第i行第j列的元素,A为单目相机的外参矩阵和内参矩阵相乘得到的相机矩阵。

2.根据权利要求1所述的车辆三维信息检测方法,其特征在于,所述深度学习模型的训练过程,包括:根据训练图像中用户标注的车辆朝向,生成分别表示四条车辆侧棱是否可见的四个二分类值;

确定不可见车辆侧棱与路面的交点的图像坐标均为零;

根据训练图像上标注的矩形框和侧边,得到可见车辆侧棱与路面交点的图像坐标,所述矩形框的边与所述训练图像的边平行,所述侧边与侧面的两个车轮相切于两个车轮的接地点;

将所述训练图像和对应的所述四个二分类值以及四个车辆侧棱与路面的交点的图像坐标作为一个训练样本,对深度学习模型进行训练。

3.根据权利要求2所述的车辆三维信息检测方法,其特征在于,所述根据训练图像上标注的矩形框和侧边,得到可见车辆侧棱与路面交点的图像坐标,具体包括:计算得到所述矩形框的两个竖直线在图像坐标系的直线方程;

根据所述侧边的两端点的图像坐标确定所述侧边的直线方程;

在可见车辆侧棱为两个时,确定两个可见车辆侧棱与路面的交点的图像坐标,分别为所述矩形框的左竖线与所述侧边的交点的图像坐标和所述矩形框的右竖线与所述侧边的交点的图像坐标;

在可见车辆侧棱为三个时,确定与所述侧边处于相同面的两个可见车辆侧棱与路面的交点的图像坐标,分别为与所述侧边处于相同面的两个可见车辆侧棱与所述侧边的交点的图像坐标,以及根据用户标注的所述训练图像中车辆的朝向,确定与所述侧边不处于相同面的可见车辆侧棱与路面的交点的图像坐标,为所述矩形框的左下顶点的图像坐标和所述矩形框的右下顶点的图像坐标中的一个。

4.根据权利要求2所述的车辆三维信息检测方法,其特征在于,在可见车辆侧棱为两个时,若所述训练图像不包括用户标注的侧边,则确定两个可见车辆侧棱与路面的交点的图像坐标分别为所述矩形框的左下顶点的图像坐标和所述矩形框的右下顶点的图像坐标。

5.一种车辆三维信息检测装置,其特征在于,包括:

图像获取单元,用于获取单目相机采集的实际场景图像;

图像分析单元,用于将所述实际场景图像作为预先训练好的深度学习模型的输入数据,得到所述深度学习模型的输出信息,所述输出信息包括分别表示四个车辆侧棱是否可见的四个二分类值和四个车辆侧棱与路面交点的图像坐标;

车辆朝向确定单元,用于根据所述四个二分类值确定车辆朝向;

车辆航向角计算单元,用于在所述确定的车辆朝向为复合朝向时,根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角;

所述根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角,具体包括:采用车辆航向角计算公式进行车辆航向角计算,车辆航向角计算公式为:其中, 为车辆航向角;车辆朝向为左前和右后其中一个时,S取值1;车辆朝向为左后和右前其中一个时,S取值为-1;vw为车辆的实际宽度;vl为车辆的实际长度;xm为距离单目相机最近的车辆侧棱的横坐标;xl为车辆可见侧面的另一条侧棱的横坐标;xw为车辆可见前面或后面的另一条侧棱的横坐标,Aij为矩阵A中第i行第j列的元素,A为单目相机的外参矩阵和内参矩阵相乘得到的相机矩阵。

6.根据权利要求5所述的车辆三维信息检测装置,其特征在于,还包括训练单元,所述训练单元,具体包括:二分类值子单元,用于根据训练图像中用户标注的车辆朝向,生成分别表示四条车辆侧棱是否可见的四个二分类值;

第一图像坐标确定子单元,用于确定不可见车辆侧棱与路面的交点的图像坐标均为零;

第二图像坐标确定子单元,用于根据训练图像上标注的矩形框和侧边,得到可见车辆侧棱与路面交点的图像坐标,所述矩形框的边与所述训练图像的边平行,所述侧边与侧面的两个车轮相切于两个车轮的接地点;

训练子单元,用于将所述训练图像和对应的所述四个二分类值以及四个车辆侧棱与路面的交点的图像坐标作为一个训练样本,对深度学习模型进行训练。

7.根据权利要求6所述的车辆三维信息检测装置,其特征在于,所述第二图像坐标确定子单元,具体用于:计算得到所述矩形框的两个竖直线在图像坐标系的直线方程;

根据所述侧边的两端点的图像坐标确定所述侧边的直线方程;

在可见车辆侧棱为两个时,确定两个可见车辆侧棱与路面的交点的图像坐标,分别为所述矩形框的左竖线与所述侧边的交点的图像坐标和所述矩形框的右竖线与所述侧边的交点的图像坐标;

在可见车辆侧棱为三个时,确定与所述侧边处于相同面的两个可见车辆侧棱与路面的交点的图像坐标,分别为与所述侧边处于相同面的两个可见车辆侧棱与所述侧边的交点的图像坐标,以及根据用户标注的所述训练图像中车辆的朝向,确定与所述侧边不处于相同面的可见车辆侧棱与路面的交点的图像坐标,为所述矩形框的左下顶点的图像坐标和所述矩形框的右下顶点的图像坐标中的一个。

8.根据权利要求6所述的车辆三维信息检测装置,其特征在于,所述训练单元,还包括:第三图像坐标确定子单元,用于在可见车辆侧棱为两个时,若所述训练图像不包括用户标注的侧边,则确定两个可见车辆侧棱与路面的交点的图像坐标分别为所述矩形框的左下顶点的图像坐标和所述矩形框的右下顶点的图像坐标。

9.一种可读存储介质,其上存储有程序,其特征在于,所述程序被处理器执行时,实现如权利要求1 4中任意一项所述的车辆三维信息检测方法的各个步骤。

~

10.一种车辆三维信息检测设备,其特征在于,包括:存储器和处理器;

所述存储器,用于存储程序;

所述处理器,用于执行所述程序,实现如权利要求1 4中任意一项所述的车辆三维信息~检测方法的各个步骤。

说明书 :

车辆三维信息检测方法、装置、设备及可读存储介质

技术领域

[0001] 本发明涉及自动驾驶技术领域,更具体地说,涉及车辆三维信息检测方法、装置、设备及可读存储介质。

背景技术

[0002] 对于自动驾驶车辆来说,理解周围交通环境至关重要。自动驾驶车辆在行驶过程中,不仅需要检测出周围车辆,还需要检测出车辆的位置和朝向等三维信息。目前,对于车辆的三维信息检测,有采用双目相机或深度相机进行检测,但是成本较高;还有采用由激光雷达的标注数据,训练车辆三维信息检测模型,再在实际场景中使用训练好的模型根据激光雷达的扫描数据,检测周围车辆的三维信息,但是激光雷达存在稳定性较低的问题。

发明内容

[0003] 有鉴于此,本发明提出车辆三维信息检测方法、装置、设备及可读存储介质,欲基于单目相机的单帧图像检测出车辆的三维信息,进而实现降低成本和提高检测稳定性的目的。
[0004] 为了实现上述目的,现提出的方案如下:
[0005] 第一方面,提供了一种车辆三维信息检测方法,包括:
[0006] 获取单目相机采集的实际场景图像;
[0007] 将所述实际场景图像作为预先训练好的深度学习模型的输入数据,得到所述深度学习模型的输出信息,所述输出信息包括分别表示四个车辆侧棱是否可见的四个二分类值和四个车辆侧棱与路面交点的图像坐标;
[0008] 根据所述四个二分类值确定车辆朝向;
[0009] 在所述确定的车辆朝向为复合朝向时,根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角。
[0010] 可选的,所述深度学习模型的训练过程,包括:
[0011] 根据训练图像中用户标注的车辆朝向,生成分别表示四条车辆侧棱是否可见的四个二分类值;
[0012] 确定不可见车辆侧棱与路面的交点的图像坐标均为零;
[0013] 根据训练图像上标注的矩形框和侧边,得到可见车辆侧棱与路面交点的图像坐标,所述矩形框的边与所述训练图像的边平行,所述侧边与侧面的两个车轮相切于两个车轮的接地点;
[0014] 将所述训练图像和对应的所述四个二分类值以及四个车辆侧棱与路面的交点的图像坐标作为一个训练样本,对深度学习模型进行训练。
[0015] 可选的,所述根据训练图像上标注的矩形框和侧边,得到可见车辆侧棱与路面交点的图像坐标,具体包括:
[0016] 计算得到所述矩形框的两个竖直线在图像坐标系的直线方程;
[0017] 根据所述侧边的两端点的图像坐标确定所述侧边的直线方程;
[0018] 在可见车辆侧棱为两个时,确定两个可见车辆侧棱与路面的交点的图像坐标,分别为所述矩形框的左竖线与所述侧边的交点的图像坐标和所述矩形框的右竖线与所述侧边的交点的图像坐标;
[0019] 在可见车辆侧棱为三个时,确定与所述侧边处于相同面的两个可见车辆侧棱与路面的交点的图像坐标,分别为与所述侧边处于相同面的两个可见车辆侧棱与所述侧边的交点的图像坐标,以及根据用户标注的所述训练图像中车辆的朝向,确定与所述侧边不处于相同面的可见车辆侧棱与路面的交点的图像坐标,为所述矩形框的左下顶点的图像坐标和所述矩形框的右下顶点的图像坐标中的一个。
[0020] 可选的,在可见车辆侧棱为两个时,若所述训练图像不包括用户标注的侧边,则确定两个可见车辆侧棱与路面的交点的图像坐标分别为所述矩形框的左下顶点的图像坐标和所述矩形框的右下顶点的图像坐标。
[0021] 第二方面,提供一种车辆三维信息检测装置,包括:
[0022] 图像获取单元,用于获取单目相机采集的实际场景图像;
[0023] 图像分析单元,用于将所述实际场景图像作为预先训练好的深度学习模型的输入数据,得到所述深度学习模型的输出信息,所述输出信息包括分别表示四个车辆侧棱是否可见的四个二分类值和四个车辆侧棱与路面交点的图像坐标;
[0024] 车辆朝向确定单元,用于根据所述四个二分类值确定车辆朝向;
[0025] 车辆航向角计算单元,用于在所述确定的车辆朝向为复合朝向时,根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角。
[0026] 可选的,所述车辆三维信息检测装置还包括训练单元,所述训练单元,具体包括:
[0027] 二分类值子单元,用于根据训练图像中用户标注的车辆朝向,生成分别表示四条车辆侧棱是否可见的四个二分类值;
[0028] 第一图像坐标确定子单元,用于确定不可见车辆侧棱与路面的交点的图像坐标均为零;
[0029] 第二图像坐标确定子单元,用于根据训练图像上标注的矩形框和侧边,得到可见车辆侧棱与路面交点的图像坐标,所述矩形框的边与所述训练图像的边平行,所述侧边与侧面的两个车轮相切于两个车轮的接地点;
[0030] 训练子单元,用于将所述训练图像和对应的所述四个二分类值以及四个车辆侧棱与路面的交点的图像坐标作为一个训练样本,对深度学习模型进行训练。
[0031] 可选的,所述第二图像坐标确定子单元,具体用于:
[0032] 计算得到所述矩形框的两个竖直线在图像坐标系的直线方程;
[0033] 根据所述侧边的两端点的图像坐标确定所述侧边的直线方程;
[0034] 在可见车辆侧棱为两个时,确定两个可见车辆侧棱与路面的交点的图像坐标,分别为所述矩形框的左竖线与所述侧边的交点的图像坐标和所述矩形框的右竖线与所述侧边的交点的图像坐标;
[0035] 在可见车辆侧棱为三个时,确定与所述侧边处于相同面的两个可见车辆侧棱与路面的交点的图像坐标,分别为与所述侧边处于相同面的两个可见车辆侧棱与所述侧边的交点的图像坐标,以及根据用户标注的所述训练图像中车辆的朝向,确定与所述侧边不处于相同面的可见车辆侧棱与路面的交点的图像坐标,为所述矩形框的左下顶点的图像坐标和所述矩形框的右下顶点的图像坐标中的一个。
[0036] 可选的,所述训练单元,还包括:
[0037] 第三图像坐标确定子单元,用于在可见车辆侧棱为两个时,若所述训练图像不包括用户标注的侧边,则确定两个可见车辆侧棱与路面的交点的图像坐标分别为所述矩形框的左下顶点的图像坐标和所述矩形框的右下顶点的图像坐标。
[0038] 第三方面,提供一种可读存储介质,其上存储有程序,所述程序被处理器执行时,实现如第一方面中任意一种车辆三维信息检测方法的各个步骤。
[0039] 第四方面,提供一种车辆三维信息检测设备,包括:存储器和处理器;
[0040] 所述存储器,用于存储程序;
[0041] 所述处理器,用于执行所述程序,实现如第一方面中任意一种车辆三维信息检测方法的各个步骤。
[0042] 与现有技术相比,本发明的技术方案具有以下优点:
[0043] 上述技术方案提供的一种车辆三维信息检测方法、装置、设备及可读存储介质,方法包括:将单目相机采集的实际场景图像作为预先训练好的深度学习模型的输入,得到深度学习模型的输出信息,输出信息包括分别表示四个车辆侧棱是否可见的四个二分类值和四个车辆侧棱与路面交点的图像坐标;根据四个二分类值确定车辆朝向;在确定的车辆朝向为复合朝向时,根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角。深度学习模型的输出信息为四个二分类值以及图像坐标值,相比于标注车辆航向角,降低了训练图像的标注难度,以及基于单目相机的单帧图像检测出了车辆的三维信息,进而降低了成本和提高了检测稳定性。

附图说明

[0044] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0045] 图1为本发明实施例提供的一种车辆三维信息检测方法的流程图;
[0046] 图2为本发明实施例提供的车辆朝向为左时的示意图;
[0047] 图3为本发明实施例提供的车辆朝向为左前时的示意图;
[0048] 图4为本发明实施例提供的一种深度学习模型的训练方法的流程图;
[0049] 图5为本发明实施例提供的一种车辆三维信息检测装置的示意图;
[0050] 图6为本发明实施例提供的一种车辆三维信息检测设备的示意图。

具体实施方式

[0051] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0052] 参见图1,为本实施例提供的一种车辆三维信息检测方法,该方法可应用于自动驾驶控制器或其它行车电脑等具有数据处理能力的控制器;在某些情况下,还可应用于网络侧的服务器,该方法可以包括以下步骤:
[0053] S11:获取单目相机采集的实际场景图像。
[0054] 在车辆在自动驾驶过程中,相应设备实时获取单目相机采集的实际场景数据。
[0055] S12:将实际场景图像作为预先训练好的深度学习模型的输入数据,得到深度学习模型的输出信息,输出信息包括分别表示四个车辆侧棱是否可见的四个二分类值和四个车辆侧棱与路面交点的图像坐标。
[0056] 车辆的六个面分别为左侧面、右侧面、前面、后面、地面和顶面。左侧面与前面的交汇线为左前侧棱;左侧面与后面的交汇线为左后侧棱;右侧面与前面的交汇线为右前侧棱;右侧面与后面的交汇线为后前侧棱。四个车辆侧棱具体为左前侧棱、左后侧棱、右前侧棱和右后侧棱。四个二分类值分别表示左前侧棱、左后侧棱、右前侧棱和右后侧棱是否在图像中可见。
[0057] S13:根据表示四个车辆侧棱是否可见的四个二分类值确定车辆朝向。
[0058] 预先设定不同的四个二分类值对应的车辆朝向的对应关系;在执行步骤S13时,根据预设的对应关系,匹配到四个二分类值对应的车辆朝向。车辆朝向为前、后、左和右时称为单一朝向,车辆朝向为左后、右前、左前和右后时称为复合朝向。四个二分类值对应的车辆朝向的对应关系具体如下表所示,其中1表示可见,0表示不可见:
[0059]
[0060] S14:在确定的车辆朝向为复合朝向时,根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角。
[0061] 外参矩阵R代表单目相机坐标系xyz三个轴相对于世界坐标系xyz三个轴的旋转量;内参矩阵K代表从单目相机坐标系下的三维物体映到得到这个物体的图像的映射变换,包括了相机的焦距,光心,分辨率等参数。外参矩阵R和内参矩阵K相乘得到3×3的相机矩阵,即A=K×R,A为3×3的相机矩阵。
[0062] 车辆的实际长度和宽度,具体可以根据预先设置的车辆类型与车辆实际长度和宽度的对应关系得到。在车辆自动驾驶过程中,根据预先训练好的车辆类型识别模型,对单目相机采集的实际场景图像进行识别,得到车辆类型;进而根据预先设置的对应关系匹配到与识别出的车辆类型对应的实际长度和宽度。
[0063] 车辆航向角具体指的是应用本发明的车辆的车头正方向,与实际场景图像中识别到的车辆的车头正方向之间的夹角。在确定的车辆朝向为单一朝向时,可以直接确定车辆航向角;例如车辆朝向为前,则确定车辆航向角为0°;车辆朝向为后,则确定车辆航向角为180°;车辆朝向为左,则确定车辆航向角为270°;车辆朝向为右,则确定车辆航向角为90°。
在确定的车辆朝向为复合朝向时,具体采用下述车辆航向角计算公式进行计算:
[0064]
[0065] 其中, 为车辆航向角;车辆朝向为左前和右后其中一个时,S取值1;车辆朝向为左后和右前其中一个时,S取值为-1;vw为车辆的实际宽度;vl为车辆的实际长度;xm为距离单目相机最近的车辆侧棱的横坐标,例如车辆朝向为左前时,xm为左前侧棱的横坐标;xl为车辆可见侧面的另一条侧棱的横坐标,例如车辆朝向为左前时,可见面包括左侧面和前面,xl为左侧面上的左后侧棱的横坐标;xw为车辆可见前面或后面的另一条侧棱的横坐标,例如车辆朝向为左前时,xw为前面上的右前侧棱的横坐标。Aij为矩阵A中第i行第j列的元素。
[0066] 在一些具体实施例中,深度学习模型的结构,具体使用2-stage检测网络框架,使用开源的Mmdetection的检测库,backbone使用的是Xception网络。Mmdetection是个基于Pytorch的库,使用它能减少很多代码的工作量;例如像深度学习模型中用的各种卷积层、批归一化层以及池化层等的底层实现,都可以从Mmdetection直接调用。
[0067] 在一些具体实施例中,用户直接在训练图像中标注车辆的矩形框和侧边。矩形框的边与训练图像的边平行。侧边为侧面的底边,且侧边与侧面的两个车轮相切于两个车轮的接地点。矩形框为恰好能框住车辆的二维边界框。参见图2和图3,图中H表示矩形框,L表示侧边。用户还标注训练图像中的车辆朝向,车辆朝向描述的是在训练图像中能够看到的车辆的面。车辆朝向包括前、后、左、右、左前、左后、右前和右后。例如,图2中车辆朝向为左,图3中车辆朝向为左前。
[0068] 参见图4,深度学习模型的训练过程,包括以下步骤:
[0069] S41:根据训练图像中用户标注的车辆朝向,生成分别表示四条车辆侧棱是否可见的四个二分类值。
[0070] 执行步骤S41,根据预先设定的车辆朝向与四个二分类值的对应关系,确定与用户标注的车辆朝向对应的分别表示四条车辆侧棱是否可见的四个二分类值。
[0071] S42:确定不可见车辆侧棱与路面的交点的图像坐标均为零。
[0072] 例如,图2中右前侧棱和右后侧棱都不可见,则确定右前侧棱与路面的交点的在图像上的横坐标和纵坐标都为零。某一点在图像上的横坐标值为横向上距离图像原点(0,0)的像素数目,右方向为正;某一点在图像上的纵坐标值为纵向上距离图像原点(0,0)的像素数目,下方向为正。
[0073] S43:根据训练图像上标注的矩形框和侧边,得到可见车辆侧棱与路面交点的图像坐标。
[0074] 根据矩形框和侧边计算可见车辆侧棱与路面交点的图像坐标,具体包括以下内容:
[0075] 首先,计算得到矩形框的两个竖直线在图像坐标系的直线方程。
[0076] 图2和图3中矩形框H的左竖线和右竖线即为矩形框H的两个竖直线。根据竖直线中各个点的在图像上的横坐标值均相同,因此,根据其中一个点的横坐标即可得到该竖直线在图像坐标系的直线方程。
[0077] 其次,根据侧边的两端点的图像坐标确定侧边的直线方程。
[0078] 假如侧边的两个端点的图像坐标分别为(x1,y1),(x2,y2)。由这两点的图像坐标可以确定经过侧边在图像坐标系的直线方程为y=k1*x+b1, 其中k1=(y2-y1)/(x2-x1),b1=(y1*x2-x1*y2)/(x2-x1)。
[0079] 再次,在可见车辆侧棱为两个时,确定两个可见车辆侧棱与路面的交点的图像坐标,分别为矩形框的左竖线与侧边的交点的图像坐标和矩形框的右竖线与侧边的交点的图像坐标。
[0080] 具体的,根据矩形框的左竖线在图像坐标系的直线方程和侧边在图像坐标系的直线方程,计算得到矩形框的左竖线与侧边的交点的图像坐标。根据矩形框的右竖线在图像坐标系的直线方程和侧边在图像坐标系的直线方程,计算得到矩形框的右竖线与侧边的交点的图像坐标。例如,车辆朝向为左,可见车辆侧棱为左前侧棱和左后侧棱,左前侧棱在图像坐标系的直线方程为x=xmin,侧边在图像坐标系的直线方程为y=k1*x+b1,则矩形框的左竖线与侧边的交点的图像坐标为(xmin,k1*xmin+b1)。
[0081] 最后,在可见车辆侧棱为三个时,确定与侧边处于相同面的两个可见车辆侧棱与路面的交点的图像坐标,分别为与所述侧边处于相同面的两个可见车辆侧棱与侧边的交点的图像坐标,以及根据用户标注的训练图像中车辆的朝向,确定与侧边不处于相同面的可见车辆侧棱与路面的交点的图像坐标,为矩形框的左下顶点的图像坐标和矩形框的右下顶点的图像坐标中的一个。
[0082] 例如,可见车辆侧棱为左前侧棱、左后侧棱和右前侧棱时,左前侧棱和左后侧棱即为处于相同面的两个可见车辆侧棱,右前侧棱即为与侧边不处于相同面的可见车辆侧棱;确定右前侧棱与路面的交点的图像坐标,为矩形框的左下顶点的图像坐标。
[0083] S44:将训练图像和对应的四个二分类值以及四个车辆侧棱与路面的交点的图像坐标作为一个训练样本,对深度学习模型进行训练。
[0084] 在一些具体实施例中,优化器使用SGD(stochastic gradient descent,随机梯度下降算法)对深度学习模型进行训练。
[0085] 在一些具体实施例中,若车辆朝向为单一朝向,且侧边与矩形框的一条边重合时,用户可以不对侧边进行标注。后续训练深度学习模型时,在可见车辆侧棱为两个时,若训练图像不包括用户标注的侧边,则确定两个可见车辆侧棱与路面的交点的图像坐标分别为矩形框的左下顶点的图像坐标和矩形框的右下顶点的图像坐标。
[0086] 对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。
[0087] 下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
[0088] 参见图5,为本实施例提供的一种车辆三维信息检测装置,该装置包括:图像获取单元51、图像分析单元52、车辆朝向确定单元53和车辆航向角计算单元54。
[0089] 图像获取单元51,用于获取单目相机采集的实际场景图像。
[0090] 图像分析单元52,用于将实际场景图像作为预先训练好的深度学习模型的输入数据,得到深度学习模型的输出信息,输出信息包括分别表示四个车辆侧棱是否可见的四个二分类值和四个车辆侧棱与路面交点的图像坐标。
[0091] 车辆朝向确定单元53,用于根据四个二分类值确定车辆朝向。
[0092] 车辆航向角计算单元54,用于在确定的车辆朝向为复合朝向时,根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角。
[0093] 在一些具体实施例中,车辆三维信息检测装置还包括训练单元,训练单元,具体包括:二分类值子单元、第一图像坐标确定子单元、第二图像坐标确定子单元和训练子单元。
[0094] 二分类值子单元,用于根据训练图像中用户标注的车辆朝向,生成分别表示四条车辆侧棱是否可见的四个二分类值。
[0095] 第一图像坐标确定子单元,用于确定不可见车辆侧棱与路面的交点的图像坐标均为零。
[0096] 第二图像坐标确定子单元,用于根据训练图像上标注的矩形框和侧边,得到可见车辆侧棱与路面交点的图像坐标,矩形框的边与训练图像的边平行,侧边与侧面的两个车轮相切于两个车轮的接地点。
[0097] 训练子单元,用于将训练图像和对应的四个二分类值以及四个车辆侧棱与路面的交点的图像坐标作为一个训练样本,对深度学习模型进行训练。
[0098] 在一些具体实施例中,第二图像坐标确定子单元,具体用于:
[0099] 计算得到所述矩形框的两个竖直线在图像坐标系的直线方程;
[0100] 根据所述侧边的两端点的图像坐标确定所述侧边的直线方程;
[0101] 在可见车辆侧棱为两个时,确定两个可见车辆侧棱与路面的交点的图像坐标,分别为所述矩形框的左竖线与所述侧边的交点的图像坐标和所述矩形框的右竖线与所述侧边的交点的图像坐标;
[0102] 在可见车辆侧棱为三个时,确定与所述侧边处于相同面的两个可见车辆侧棱与路面的交点的图像坐标,分别为与所述侧边处于相同面的两个可见车辆侧棱与所述侧边的交点的图像坐标,以及根据用户标注的所述训练图像中车辆的朝向,确定与所述侧边不处于相同面的可见车辆侧棱与路面的交点的图像坐标,为所述矩形框的左下顶点的图像坐标和所述矩形框的右下顶点的图像坐标中的一个。
[0103] 在一些具体实施例中,训练单元,还包括:第三图像坐标确定子单元,用于在可见车辆侧棱为两个时,若训练图像不包括用户标注的侧边,则确定两个可见车辆侧棱与路面的交点的图像坐标分别为矩形框的左下顶点的图像坐标和矩形框的右下顶点的图像坐标。
[0104] 本实施例提供一种车辆三维信息检测设备,具体可以为自动驾驶控制器或其它行车电脑等具有数据处理能力的控制器;在某些情况下,还可为网络侧的服务器。服务器可以是机架式服务器、刀片式服务器、塔式服务器以及机柜式服务器中的一种或几种。参见图6,为本实施例提供一种车辆三维信息检测设备,其硬件结构可以包括:至少一个处理器61,至少一个通信接口62,至少一个存储器63和至少一个通信总线64;且处理器61、通信接口62、存储器63通过通信总线64完成相互间的通信。
[0105] 处理器61在一些实施例中可以是一个CPU(Central Processing Unit,中央处理器),或者是ASIC(Application Specific Integrated Circuit,特定集成电路),或者是被配置成实施本发明实施例的一个或多个集成电路等。
[0106] 通信接口62可以包括标准的有线接口、无线接口(如WI-FI接口)。通常用于在车辆三维信息检测设备与其他电子设备或系统之间建立通信连接。
[0107] 存储器63包括至少一种类型的可读存储介质。可读存储介质可以为如闪存、硬盘、多媒体卡、卡型存储器等NVM(non-volatile memory,非易失性存储器)。可读存储介质还可以是高速RAM(random access memory,随机存取存储器)存储器。可读存储介质在一些实施例中可以是数据校验设备的内部存储单元。在另一些实施例中,可读存储介质还可以是数据校验设备的外部存储设备。
[0108] 其中,存储器63存储有计算机程序,处理器61可调用存储器63存储的计算机程序,所述计算机程序用于:
[0109] 获取单目相机采集的实际场景图像;
[0110] 将实际场景图像作为预先训练好的深度学习模型的输入数据,得到深度学习模型的输出信息,输出信息包括分别表示四个车辆侧棱是否可见的四个二分类值和四个车辆侧棱与路面交点的图像坐标;
[0111] 根据四个二分类值确定车辆朝向;
[0112] 在确定的车辆朝向为复合朝向时,根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角。
[0113] 程序的细化功能和扩展功能可参照上文描述。
[0114] 图6仅示出了具有组件61 64的车辆三维信息检测设备,但是应理解的是,并不要~求实施所有示出的组件,可以替代的实施更多或者更少的组件。
[0115] 本发明实施例还提供一种可读存储介质,该可读存储介质可存储有适于处理器执行的程序,所述程序用于:
[0116] 获取单目相机采集的实际场景图像;
[0117] 将实际场景图像作为预先训练好的深度学习模型的输入数据,得到深度学习模型的输出信息,输出信息包括分别表示四个车辆侧棱是否可见的四个二分类值和四个车辆侧棱与路面交点的图像坐标;
[0118] 根据四个二分类值确定车辆朝向;
[0119] 在确定的车辆朝向为复合朝向时,根据可见车辆侧棱与路面交点的图像坐标、车辆的实际长度和宽度以及单目相机的内参矩阵和外参矩阵,计算得到车辆航向角。
[0120] 所述程序的细化功能和扩展功能可参照上文描述。
[0121] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0122] 在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0123] 本说明书中各个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可,且本说明书中各实施例中记载的特征可以相互替换或者组合。
[0124] 对本发明所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。