打印

BEV-LaneDet:一个简单有效的3D车道检测基线(论文翻译)

[复制链接]
1066|25
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
AN, LAN, ev
本帖最后由 keer_zu 于 2023-8-1 16:06 编辑


摘要
三维车道检测是自动驾驶领域发展迅速的课题,对车辆的路径选择起着至关重要的作用。以往的作品由于空间变换复杂,3D车道的表现不灵活,在实用性上存在一定的问题。面对这些问题,我们的工作提出了一种高效、鲁棒的单目3D车道检测方法BEV-LaneDet,主要有三个贡献。首先,我们引入了虚拟摄像机,它统一了安装在不同车辆上的摄像机的内外参数,以保证摄像机之间空间关系的一致性。由于统一的视觉空间,可以有效地促进学习过程。其次,我们提出了一个简单而有效的三维车道表示,称为关键点表示。该模块更适合表示复杂多样的三维车道结构。最后,提出了一种轻量化、芯片友好的空间转换模块——空间转换金字塔,将多尺度前视特征转换为BEV特征。实验结果表明,我们的工作在F-Score方面优于最先进的方法,在OpenLane数据集上高出10.6%,在Apollo 3D合成数据集上高出5.9%,速度为185 FPS。

1234064c878294db80.png (124.1 KB )

1234064c878294db80.png

使用特权

评论回复

相关帖子

沙发
keer_zu|  楼主 | 2023-8-1 11:20 | 只看该作者
本帖最后由 keer_zu 于 2023-8-1 16:14 编辑


图1所示。端到端框架说明。右下角的原始图像通过虚拟相机模块转换为输入图像。然后输入的图像被主干编码成前视特征。将主干网的多尺度特征输入到空间变换金字塔(STP)中,得到BEV特征。[backcolor=rgba(255, 228, 181, 0.7)]给定BEV的特征,称为关键点表示的3D头部生成BEV输出和Z, BEV车道的高度。最后,结合BEV输出和Z,我们可以得到三维车道。


1.简介
车道检测作为自动驾驶的基本保障之一,近年来受到了研究人员的广泛关注。实时鲁棒车道检测是高级自动驾驶的基础之一,它可以为自动驾驶系统(ADS)、车辆自我控制、定位和地图构建提供大量有用的信息。
二维车道检测方法表现出了显著的性能[4,18,20,22]。此外,它们的输出通常通过相机内外参数的反透视变换(IPM)投影到平坦的地平面上,然后进行曲线拟合得到BEV车道。然而,在实际驾驶过程中,对于上坡和下坡等具有挑战性的情况,管道可能会引起其他问题[1,20]。
为了克服这些问题,最近的方法[3,6,8,9,14]已经开始关注更复杂的3D车道感知域。三维车道检测面临两大挑战:一是高效的空间变换模块来获取BEV特征,二是对三维车道结构的鲁棒表示。BEV特征的获取很大程度上依赖于摄像机内外参数,以往的方法选择将摄像机内外参数纳入网络来获取BEV特征。此外,不像公路上的障碍物,车道结构细长多样。这些方法[3,8,9]为具有强先验的车道结构精心设计了三维锚点表示。然而,它们在某些特定场景中缺乏足够的灵活性,如图6所示。此外,无锚方法[6]提出了一种三维车道表示方法,该方法基于每个预定义瓷砖中的线段是直的假设。这种表述既复杂又不准确。


使用特权

评论回复
板凳
keer_zu|  楼主 | 2023-8-1 11:22 | 只看该作者
本帖最后由 keer_zu 于 2023-8-1 16:18 编辑

针对这些问题,我们引入了BEV-LaneDet,这是一种高效的实时管道,可以从单张图像中实现3D车道检测,如图1所示。不同于将摄像机内外参数纳入网络获取BEV特征的方法,我们建立了一个直接应用于图像的虚拟摄像机。该模块采用基于BEV的单应性方法[2]统一不同车辆前置摄像头的内外参数。该模块保证了不同车辆前置摄像头空间关系的一致性,减少了数据分布的差异性。因此,由于统一的视觉空间,可以有效地促进学习过程。我们还提出了一个关键点表示作为我们的3D车道表示。结果表明,该模型是一种简单而有效的三维车道表示模块,在一些特殊场景下,对于复杂的车道结构具有更强的扩展性。此外,计算成本和芯片的友好性也是自动驾驶的关键因素。因此,基于MLP的轻量级且易于部署的空间转换模块是我们的首选。同时,受FPN[17]的启发,我们提出了空间转换金字塔,将多尺度前视特征转换为BEV,为三维车道检测提供了鲁棒的BEV特征。在我们的实验中,我们进行了广泛的研究,以证实我们的BEV-LaneDet在F-Score方面明显优于最先进的PersFormer[3],在OpenLane真实世界测试集[3]上高出10.6%,在Apollo模拟测试集[9]上高出4.0%,速度为185 FPS。

综上所述,我们的主要贡献有三个方面:1)虚拟相机,一个新的预处理模块,统一相机的内外参数,保证数据分布的一致性。2)关键点表示,一种简单而有效的三维车道结构表示方法。3)空间转换金字塔,基于MLP实现多尺度前视特征向BEV转换的轻量级易部署架构。实验表明,与其他3D车道检测算法相比,我们的BEV-LaneDet实现了最先进的性能。

使用特权

评论回复
地板
keer_zu|  楼主 | 2023-8-1 11:26 | 只看该作者
2. 相关工作

2D车道检测。近年来,深度神经网络(DNN)在二维车道检测领域取得了重大进展。根据逐像素分割法、逐行分割法、基于锚点的分割法和曲线参数将这些作品分为四类。最近的一些研究[15,20,22,32]将二维车道检测作为基于像素的分割任务,计算成本昂贵。一些方法[18,24,31]侧重于逐行水平来检测二维车道。通过在行方向上设置行锚点,在列方向上设置网格单元,在图像空间上对二维车道进行建模,行向方法大大提高了推理速度。[27,28]表示具有预定义锚点的车道结构,以及采样点与预定义锚点之间的回归偏移量,以预测2D车道。由于固定锚的设计,这些方法缺乏足够的灵活性来适应复杂的车道。[7,29]认为车道可以通过特定的曲线参数在二维图像空间上进行拟合。提出将二维车道检测转化为曲线参数回归问题,通过检测起点、终点和曲线参数。然而,这些方法在后期处理中需要结合相机的内在和外在参数进行IPM投影到地面,这是基于平坦地面假设的。如第1节所述,该管道不适合复杂的道路场景。


3D车道检测。为了获得更准确的道路认知结果,许多研究者将注意力转向了三维空间的车道检测。[3,8,9,14]给出了显著的结果,证明了在单眼图像中使用CNN网络进行三维车道检测的可行性。3DLaneNet[8]首次引入了一种统一的网络,以两种路径编码二维图像信息、空间变换和三维车道检测:图像视图路径编码二维图像的特征,而俯视图路径为三维车道检测提供平移不变特征。3D-LaneNet+[6]基于直段假设,在预定义网格单元中构建车道段形状,这一过程较为复杂,可能导致预测路段与实际车道存在误差。Gen-LaneNet[9]提出了一种可扩展的两阶段框架,将图像分割子网和几何编码子网分开。PersFormer[3]提出了统一的二维和三维车道检测框架,并将Transformer[30]引入到空间变换模块中,以获得更鲁棒的特征。提出了一种基于真实场景的大规模标注三维车道数据集OpenLane。这些方法隐式或显式地利用摄像机内外参数部署网络内特征映射IPM投影。与将IPM投影应用到特征上不同,我们构建了一个虚拟相机模块,试图将所有图像投影到一个标准的虚拟普通相机视图上。这种方法可以确保图像的分布尽可能一致。这里的分布包括位置、角度和相机离地面的高度。在3D车道表示方面,他们精心设计了具有强先验的3D锚点,对于某些特定场景来说,锚点复杂且缺乏表现力,如图6所示。我们提出了一种简单但鲁棒的三维车道表示方法,并且在特殊场景下具有更强的扩展性。

使用特权

评论回复
5
keer_zu|  楼主 | 2023-8-1 11:27 | 只看该作者
本帖最后由 keer_zu 于 2023-8-1 15:33 编辑

空间变换。从前视特征到BEV特征的空间转换是三维车道检测的一个重要模块。空间变换模块[12]是一种可训练模块,可灵活插入到CNN中实现输入特征的空间变换,适用于将前视特征转换为BEV几何特征。常用的空间变换模块有四种。基于ipm的方法[8,9,26]严重依赖于相机内外参数,而忽略了地面波动和车辆振动。基于mlp的方法[15,21]是固定的空间映射,难以与相机内外参数集成,导致性能不佳。然而,它是芯片友好和快速的。基于转换器的空间变换模块[3,16]鲁棒性更强,但由于计算量大,不容易部署到自动驾驶芯片中。基于深度的空间变换方法[11,23]计算量大,不适合部署。结合虚拟摄像机模块,我们可以克服基于mlp方法的缺点,并将其应用到我们的方法中。我们还引入了受FPN[17]启发的特征金字塔,以提供更健壮的BEV特征。

使用特权

评论回复
6
keer_zu|  楼主 | 2023-8-1 11:29 | 只看该作者
本帖最后由 keer_zu 于 2023-8-1 16:19 编辑

3.方法
如图2所示,整个网络架构由五部分组成:1)虚拟摄像机:一种统一摄像机内外参数的预处理方法;2)前视图主干:前视图特征提取器;3)空间转换金字塔:将前视特征投影到BEV特征;4)关键点表示:基于关键点的三维头部检测器;5)前视头:2D车道检测头,提供辅助监督。
首先,通过虚拟摄像机将输入图像的所有内外参数转换为统一的内外参数;这一过程保证了不同车辆中前置摄像头空间关系的一致性。然后使用特征提取器提取前视图像的特征。我们分别用ResNet18和ResNet34进行了实验[10]。为了提高网络提取前视特征的能力,增加了前视车道检测头作为辅助监督。受[17]的启发,我们设计了基于[21]的快速多尺度空间转换模块——空间转换金字塔(Spatial Transformation Pyramid)。该模块负责前视图特征到BEV特征的转换。最后,我们预测了与当地路面Proad相切平面上的车道。Proad是道路地面坐标Croad = (x, y, z)中z = 0的平面,我们将Proad划分为s1 × s2个单元。受YOLO[25]和LaneNet[20]的启发,我们预测了置信度、用于聚类的嵌入、单元格中心到道路y方向的偏移量以及每个单元格的高度。在推理中,我们使用快速聚类方法将每个分支的结果融合得到三维车道。

使用特权

评论回复
7
keer_zu|  楼主 | 2023-8-1 11:30 | 只看该作者



使用特权

评论回复
8
keer_zu|  楼主 | 2023-8-1 11:34 | 只看该作者
本帖最后由 keer_zu 于 2023-8-1 11:35 编辑

3.1 虚拟摄像机

不同车辆的内外参数是不同的,这对三维车道的结果有很大影响。不同于将摄像机内外参数整合到网络特征中的方法[3,23],我们通过建立具有标准内外参数的虚拟摄像机,实现了一种快速统一摄像机内外参数的预处理方法。
不同车辆的内外参数是不同的,这对三维车道的结果有很大影响。不同于将摄像机内外参数整合到网络特征中的方法[3,23],我们通过建立具有标准内外参数的虚拟摄像机,实现了一种快速统一摄像机内外参数的预处理方法。我们假设Proad是与局部路面相切的平面。由于三维车道检测更注重平面Proad,我们利用单应性的共平面性,通过单应性矩阵Hi,j将当前摄像机的图像投影到虚拟摄像机的视图中。因此,虚拟摄像机实现了不同摄像机空间关系的一致性。如图3所示,虚拟摄像机的内在参数Kj和外在参数(Rj, Tj)是固定的,它们是由训练数据集的内/外在参数的平均值得出的。在训练和推理阶段,根据当前摄像机提供的摄像机内部参数Ki和外部参数(Ri, Ti)以及虚拟摄像机的内部/外部参数计算单应性Hi,j。我们参考[2]计算Hi,j。首先,在BEV平面路径上选取4个点x k = (x k, yk, 0)T,其中k = 1,2,3,4。然后将它们分别投影到当前摄像机的图像和虚拟摄像机的图像上,得到u k i = (u k i, vk i, 1)T和u k j = (u k j, vk j, 1)T。最后,Hi,j通过最小二乘法得到,如Eqn 1所示。

在推理过程中,只需要执行转换,在OpenCV中调用warpPerspective,并使用已经获得的Hi,j。

使用特权

评论回复
9
keer_zu|  楼主 | 2023-8-1 13:14 | 只看该作者

使用特权

评论回复
评论
keer_zu 2023-8-1 15:43 回复TA
原始论文 
10
keer_zu|  楼主 | 2023-8-1 13:23 | 只看该作者
本帖最后由 keer_zu 于 2023-8-1 15:43 编辑

3.2 基于MPL空间变换金字塔
基于深度的方法[11,23]和基于变压器的方法[3,16]在自动驾驶芯片上部署时计算成本高且不友好。为了解决这个问题,我们引入了一个轻量级且易于部署的空间转换模块,即基于MLP的视图关系模块(View Relation module, VRM)[21]。该模块使用视图关系模块r学习平面化前视特征和平面化前视特征中任意两个像素位置之间的关系。然而,VRM是一个固定映射,忽略了不同相机参数带来的变化。幸运的是,虚拟相机,它统一了不同相机的内外参数,弥补了这一不足。VRM节点对前视图特性层的位置敏感。分析了不同尺度的前视特征对VRM的影响。通过实验发现低分辨率特征更适合于VRM的空间变换。我们认为低分辨率特征包含了更多的全局信息。由于基于mlp的空间变换是固定映射,低分辨率特征需要的映射参数更少,更容易学习。受FPN[17]的启发,我们设计了一个基于VRM的空间变换金字塔,如图2红框所示。通过实验对比,我们最终分别使用输入图像的1/64分辨率特征S64和1/32分辨率特征S32进行变换,然后将两者的结果进行拼接。






使用特权

评论回复
11
keer_zu|  楼主 | 2023-8-1 13:32 | 只看该作者
本帖最后由 keer_zu 于 2023-8-1 16:20 编辑


图3。虚拟摄像机原理图。虚拟摄像机的核心是当前摄像机和虚拟摄像机经过逆透视映射(IPM)后在Proad上共面。

3.3 关键点表示

三维车道的表示对三维车道检测的结果有很大的影响。在这一节,我们提出了一个简单但鲁棒的表示来预测BEV上的3D车道,参考了YOLO[25]和LaneNet[20]。如图4所示,我们将BEV平面Proad(道路坐标Croad = (x, y, z)中z = 0的平面)划分为s1 × s2个单元格。每个单元格代表x × x (x默认为0.5m)。我们以相同的分辨率直接预测四个头部,包括置信度,用于聚类的嵌入,从细胞中心到y方向车道的偏移量,以及每个细胞的平均高度。网格单元的大小对三维车道预测有很大的影响。过小的网格单元尺寸会影响置信分支中正样本和负样本的平衡。但是,如果单元格的大小太大,则不同通道的嵌入会重叠。考虑到车道任务的稀疏性,我们通过实验推荐网格单元尺寸为0.5 × 0.5 m2。在训练和推理中,我们在道路地面坐标Croad = (x, y, z)中预测y方向(-10m, 10m)和x方向(3m, 103m)的车道,从而从3D车道检测头输出4个200 × 40分辨率的张量,包括置信度、嵌入、偏移和高度。合并置信度分支、嵌入分支和偏移分支,得到BEV下的实例级通道,如图4所示。


使用特权

评论回复
12
keer_zu|  楼主 | 2023-8-1 13:35 | 只看该作者

表1。与OpenLane上其他开源3D方法的比较。[backcolor=rgba(255, 228, 181, 0.7)]我们的方法在整个验证集和每个场景集上都获得了最好的F-Score。



表2。不同指标下三维车道综合评价。我们的方法在F-Score和速度指标上优于以前的3D方法。



使用特权

评论回复
13
keer_zu|  楼主 | 2023-8-1 13:39 | 只看该作者


图4。关键点表示原理图。BEV平面路分为s1 × s2格。每个网格代表x × x m2的面积。对BEV特征进行卷积得到三个分支,包括嵌入、置信度和偏移量。合并三个分支以获得BEV上的实例级通道。

使用特权

评论回复
14
keer_zu|  楼主 | 2023-8-1 13:40 | 只看该作者
本帖最后由 keer_zu 于 2023-8-1 13:42 编辑

3.3.1  置信度

与YOLO[25]类似,车道置信度是一个二值分类分支。每个像素代表单元格的置信度。如果单元格中有一条通道,则该单元格的置信度得分设置为1。否则,置信度评分设为零。置信损失可以用二值交叉熵损失来表示。

其中PI为模型预测的置信度的概率,PI为置信度的基本真值。




表3。这是不同模型在Apollo 3D Lane Synthetic上的结果。与3D-LaneNet[8]、Gen-LaneNet[9]、3DLaneNet(1/att)[13]、Gen-LaneNet(1/att)[13]、CLGO[19]、re - from Top[14]和PersFormer[3]相比,我们的模型在F-Score和X误差上是最好的。

使用特权

评论回复
15
keer_zu|  楼主 | 2023-8-1 13:48 | 只看该作者
3.3.2 偏移

由于置信分支不能准确地表示车道的位置,偏移分支负责预测从单元格中心到车道在道路地面坐标Croad = (x, y, z)的y方向上的精确偏移量。如图4所示,模型预测每个单元格的偏移量∆yi。偏移量由Sigmoid归一化并减去0.5,使偏移量的范围为(- 0.5,0.5)。偏移损失可以用MSE损失来表示。请注意,我们只计算具有正底数置信值的网格单元的偏移量。





其中1obj表示车道是否通过此单元格。∆yi表示与预测的偏移量,∆∆yi表示与实际情况的偏移量。










使用特权

评论回复
16
keer_zu|  楼主 | 2023-8-1 13:51 | 只看该作者


3.3.3 嵌入

为了区分置信分支中每个像素的车道身份,我们参考[5,20]预测每个网格单元的嵌入。在训练阶段,最小化同一车道的细胞嵌入之间的距离,最大化不同车道的细胞嵌入之间的距离。在网络的推理中,我们使用了一种快速无监督聚类后处理方法来预测可变车道数。与通常在消失点处收敛的前视车道不同,三维车道更适合嵌入聚类损失函数。



使用特权

评论回复
17
keer_zu|  楼主 | 2023-8-1 13:54 | 只看该作者
3.3.4 车道高度

置信度、偏移量和嵌入只能预测道路地面坐标Croad = (x, y, z)中关键点的x和y,因此我们提出了一个高度分支,负责预测关键点的z。在网络的训练阶段,我们使用网格单元的平均高度作为地面真值。同时,只有接地真值为正的网格单元才被计算在损耗中。



使用特权

评论回复
18
keer_zu|  楼主 | 2023-8-1 13:55 | 只看该作者
3.3.5 总损失

总损失包括三维车道损失和前视车道损失。前视车道损失包括车道分割损失和车道嵌入损失,简称LaneNet[20]。



使用特权

评论回复
19
keer_zu|  楼主 | 2023-8-1 13:57 | 只看该作者
3.3.6 结论

鉴于KPR的输出,我们提出了一种快速无监督聚类方法来获得实例级车道,我们将其称为LaneNet中的mean-shift[20]。我们将算法的细节放在附录中。

使用特权

评论回复
20
keer_zu|  楼主 | 2023-8-1 13:58 | 只看该作者
4 实验

为了验证我们工作的性能,我们的模型在OpenLane真实数据集[3]和Apollo模拟数据集[9]上进行了测试。对比前人的方法,包括PersFormer[3]、re -重构Top[14]、Gen-LaneNet[9]、3D-LaneNet[8]、CLGO[19]等,证明我们的工作在F-Score方面达到了最先进的水平,在X/Z误差方面取得了有竞争力的结果。我们输入图像的分辨率是576 × 1024。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:qq群:49734243 Email:zukeqiang@gmail.com

1314

主题

12271

帖子

53

粉丝