本发明涉及机器视觉,具体而言,涉及一种通过单目视觉获取车辆伪3d表示的方法及系统。
背景技术:
1、3d目标检测是自动驾驶中的关键任务,自动驾驶的许多领域,如预测、规划和运动控制,通常需要完美地表示自车周围的3d空间。
2、激光雷达能够提供高精度和高分辨率的点云数据,从而获取3d图像信息,但其成本较高,车规级产品量产困难,并且对环境光和天气条件较敏感。
3、因此,单纯基于摄像头的3d感知仍然是一个非常有意义和价值的研究方向。但是单目相机仅能获取2d图像信息,目标深度维度的关键信息在2d图像的形成过程中被压缩,仅使用一张2d图像进行可靠、准确的3d感知,是一项具有挑战性的任务。目前,尚无相关技术可以实现此任务。
技术实现思路
1、本发明实施例提供了一种通过单目视觉获取车辆伪3d表示的方法及系统,以解决现有的通过激光雷达获取3d图像信息,其成本较高,车规级产品量产困难,并且对环境光和天气条件较敏感的技术问题,实现仅需使用单目视觉,仅使用一张2d图像即可进行可靠、准确的3d感知的技术效果。
2、为解决上述技术问题,本发明实施例提供了如下技术方案:
3、一方面,本发明实施例提供了一种通过单目视觉获取车辆伪3d表示的方法,所述通过单目视觉获取车辆伪3d表示的方法包括:
4、通过单目相机获取待检车辆的2d图像;
5、利用2d目标检测算法对所述2d图像进行检测,获得车辆的2d边界框;基于所述2d边界框,利用预设的多任务神经网络模型,得到待检车辆的3d表示信息;其中,所述3d表示信息包括:车辆的类别、图像坐标系下的车辆的位姿、滚动角与旋转角,以及车头外接矩形框及车尾外接矩形框;
6、基于所述3d表示信息,结合待检车辆对应的2d边界框与3d边界框的几何约束,获取待检车辆的伪3d边界框,得到待检车辆的伪3d表示结果。
7、进一步地,所述几何约束是指3d边界框在图像上的投影是被2d边界框紧密的包围的,也即在2d边界框的每条边上都至少能找到一个3d边界框的角点。
8、进一步地,所述多任务神经网络模型包括基础网络和头部网络;其中,
9、所述基础网络用于提取所述2d边界框内的图像特征信息;
10、所述头部网络包括:车型检测网络、位姿及角度检测网络,以及外接矩形检测网络;其中,
11、所述车型检测网络用于根据所述基础网络提取的所述2d边界框内的图像特征信息,获取待检车辆的类别;
12、所述位姿及角度检测网络用于根据所述基础网络提取的所述2d边界框内的图像特征信息,获取图像坐标系下的车辆的位姿、滚动角与旋转角;
13、所述外接矩形检测网络用于根据所述基础网络提取的所述2d边界框内的图像特征信息,获取图像坐标系下的车头外接矩形框与车尾外接矩形框。
14、进一步地,所述车型检测网络的损失函数表示为:
15、
16、其中,p(y|x)表示给定输入x下观察到类别y的概率,为模型正确预测为真实类别的概率;pi表示类别i的频率;py表示真实类别y的频率;fi(x)表示模型对输入x预测为类别i的得分;fy(x)表示模型对输入x预测为真实类别y的得分。
17、进一步地,所述旋转角通过位于车辆同一侧的前后车轮接地点的连线斜率表示。
18、进一步地,所述滚动角通过车尾部车两侧连线的斜率表示。
19、进一步地,所述位姿及角度检测网络损失函数采用mseloss,最终的目的是进行轮胎接地点的定位及滚动角与旋转角的回归,网络输出三个通道,分别为:前轮坐标,后轮坐标,滚动角与旋转角的角度,其公式如下:
20、
21、其中,n表示样本数;yi[0]表示第i个样本的前轮坐标的真值;pi[0]表示第i个样本的前轮坐标的检测结果;yi[1]表示第i个样本的后轮坐标的真值;pi[1]表示第i个样本的后轮坐标的检测结果;yi[2]表示第i个样本的滚动角与旋转角的真值;pi[2]表示第i个样本的滚动角与旋转角的检测结果。
22、进一步地,所述车头外接矩形框与车尾外接矩形框的获取方式相同;其中,所述获取方式为:首先找到车辆的2d外接矩形框与车身的切点,其次找到所述切点在车身上的对称点,然后以所述对称点为图像坐标系的u坐标做竖线,接着根据车辆后轮和灭点的连线来校准所述竖线的位置,最后将校准后的竖线与车辆的2d外接框连接,获取车头外接矩形框或车尾外接矩形框。
23、进一步地,所述外接矩形检测网络在训练阶段,针对所述竖线的定位编码为0-1的浮点数,并使用smoothl1loss来监督训练;
24、所述外接矩形检测网络在推理阶段,获取所述竖线的位置,采用模型输出的0-1的浮点数乘以图像的宽度,所述竖线在图像中的坐标的公式为:
25、yline=ratio*width
26、其中,yline表示所述竖线在图像中的坐标;ratio表示所述外接矩形检测网络输出的0-1的浮点数;width表示图像的宽度。
27、另一方面,本发明还提供了一种通过单目视觉获取车辆伪3d表示的系统,所述通过单目视觉获取车辆伪3d表示的系统包括:
28、2d边界框获取模块,用于:
29、通过单目相机获取待检车辆的2d图像;
30、利用2d目标检测算法对所述2d图像进行检测,获得车辆的2d边界框;
31、3d表示信息获取模块,用于:
32、基于所述2d边界框,利用预设的多任务神经网络模型,得到待检车辆的3d表示信息;其中,所述3d表示信息包括:车辆的类别、图像坐标系下的车辆的位姿、滚动角与旋转角,以及车头外接矩形框及车尾外接矩形框;
33、基于所述3d表示信息,结合待检车辆对应的2d边界框与3d边界框的几何约束,获取待检车辆的伪3d边界框,得到待检车辆的伪3d表示结果。
34、再一方面,本发明还提供了一种电子设备,其包括处理器和存储器;存储器中存储有至少一条指令,所述指令由处理器加载并执行以实现上述方法。
35、又一方面,本发明还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现上述方法。
36、本发明提供的技术方案带来的有益效果至少包括:
37、1、本发明的技术方案仅通过车辆的2d坐标框即可得到车辆的3d坐标框,无需额外的传感器与复杂的建模或渲染工作,实现成本较低;
38、2、本发明的技术方案可以作为一种获取3d目标框的基准方式,具体而言是从2d图像中获取车辆细分类别、车头车尾的外接矩形框、轮胎接地点坐标以及车辆翻滚角几个信息;获取信息更加丰富;
39、3、本发明的技术方案可为车辆距离测量提供数据基础,提升测距的精度。
1.一种通过单目视觉获取车辆伪3d表示的方法,其特征在于,包括:
2.如权利要求1所述的通过单目视觉获取车辆伪3d表示的方法,其特征在于,所述几何约束是指:3d边界框在图像上的投影是被2d边界框紧密的包围的,也即:在2d边界框的每条边上都至少能找到一个3d边界框的角点。
3.如权利要求1所述的通过单目视觉获取车辆伪3d表示的方法,其特征在于,所述多任务神经网络模型包括基础网络和头部网络;其中,
4.如权利要求3所述的通过单目视觉获取车辆伪3d表示的方法,其特征在于,所述车型检测网络的损失函数表示为:
5.如权利要求1所述的通过单目视觉获取车辆伪3d表示的方法,其特征在于,所述旋转角通过位于车辆同一侧的前后车轮接地点的连线斜率表示。
6.如权利要求1所述的通过单目视觉获取车辆伪3d表示的方法,其特征在于,所述滚动角通过车尾部车两侧连线的斜率表示。
7.如权利要求3所述的通过单目视觉获取车辆伪3d表示的方法,其特征在于,所述位姿及角度检测网络损失函数采用mseloss,最终的目的是进行轮胎接地点的定位及滚动角与旋转角的回归,网络输出三个通道,分别为:前轮坐标,后轮坐标,滚动角与旋转角的角度,其公式如下:
8.根据权利要求3所述的通过单目视觉获取车辆伪3d表示的方法,其特征在于,所述车头外接矩形框与车尾外接矩形框的获取方式相同;其中,所述获取方式为:首先找到车辆的2d外接矩形框与车身的切点,其次找到所述切点在车身上的对称点,然后以所述对称点为图像坐标系的u坐标做竖线,接着根据车辆后轮和灭点的连线来校准所述竖线的位置,最后将校准后的竖线与车辆的2d外接框连接,获取车头外接矩形框或车尾外接矩形框。
9.根据权利要求8所述的通过单目视觉获取车辆伪3d表示的方法,其特征在于,所述外接矩形检测网络在训练阶段,针对所述竖线的定位编码为0-1的浮点数,并使用smoothl1loss来监督训练;
10.一种通过单目视觉获取车辆伪3d表示的系统,其特征在于,包括: