3D车道新范式

您所在的位置:网站首页 函数是谁提出的问题 3D车道新范式

3D车道新范式

#3D车道新范式 | 来源: 网络整理| 查看: 265

导读: 大家好,我是黄少飞,目前在中国科学院信息工程研究所攻读博士学位。本文简单介绍我们和图森未来合作的CVPR 2023的录用论文“Anchor3DLane: Learning to Regress 3D Anchors for Monocular 3D Lane Detection”。论文中提出了一种新的3D车道线检测范式,即Anchor3DLane。该方法摒弃了3D车道线检测方法中常用的BEV检测范式,通过定义3D空间中的Anchor对车道线进行结构化建模,并将其投影至2D图像特征上采样特征,从而达到直接由2D图像特征回归3D车道线坐标的目的。这种投影-采样的方式具有较好的扩展性,可以扩展至多阶段车道线回归、多帧车道线特征融合等更复杂的检测框架。此外,论文中还提出等宽优化算法,利用车道线的等宽特性对预测结果进行后处理优化,从而进一步改善车道线的横向误差。目前该工作的代码已开源,欢迎大家批评指正。

文章链接:https://arxiv.org/abs/2301.02371

代码链接:https://github.com/tusen-ai/Anchor3DLane

作者:黄少飞 | 自动驾驶之心->:【车道线检测交流群】点击关注@自动驾驶之心,第一时间看到最前沿与价值的CV/自动驾驶/AI类工作~

强烈推荐!自动驾驶与AI学习社区:欢迎加入国内首个自动驾驶开发者社区!这里有最全面有效的自动驾驶与AI学习路线(感知/定位/融合)和自动驾驶与AI公司内推机会!

求职社群来了!面向自动驾驶与AI相关的算法/开发求职,面试题目/面经/日常吐槽应有尽有!

一、研究背景1. 现有方法的局限性

现有的3D车道线检测方法绝大部分都是基于BEV检测范式的,即首先将前视视角(FV)的图像或特征利用逆透视变换(IPM)或其他方式(如Deformable attention)变换到俯视图视角(BEV),之后在BEV特征上预测车道线的坐标和类别。由于在BEV视角下车道线受透视效应影响较小,近处和远处宽度基本一致,在BEV平面上检测出来的BEV车道线,搭配高度预测,就可以将车道线的3D坐标较为直观地恢复出来。然而,这类方法也有一定的局限性,首先,IPM依赖于地平面假设,现实中大部分场景下地面都是有一定坡度的,这导致变换得到的BEV特征也并不准确;除此之外,变换后的BEV特征只保留了地面的信息,而损失掉了路面以上的大部分上下文信息,即使有保留也会出现严重的变形和对路面的遮挡,这对高度的估计也会造成一定的影响。

BEV Methods

为了克服BEV方法的局限性,也有一些方法尝试不经过BEV空间,直接从FV特征预测3D车道线,例如SALAD[1],以及CLGo[2]中的Stage 1。以SALAD为例,如下图所示,其将3D车道线检测解耦为2D车道线分割任务和密集深度估计任务,利用估计得到的深度将2D车道线坐标投影到3D空间中。然而,与BEV空间相比,FV空间与车道线的3D表达之间还是有较大的鸿沟,直接通过FV特征估计3D信息不可避免的会有一定的精度损失,因此,这类方法在整体性能上还是略逊色于基于BEV的方法。

SALAD2. 我们的方法

本文主要想解决的问题是如何缩小FV空间与3D车道线之间的表达鸿沟,从而摒弃BEV空间,直接基于FV特征对3D车道线进行准确的预测。因此,本文提出一种新的Anchor3DLane检测范式,设计了3D空间中的车道线anchor来对3D车道线进行结构化建模。受2D车道线检测方法LaneATT[3]中的anchor feature pooling操作的启发,本文利用相机的内外参将3D anchor的点准确投影到FV图像特征上进行anchor特征采样,并基于采样的anchor特征预测3D坐标回归值和车道线的分类结果。与FV到BEV的单应性变换相比,这种3D到2D的投影变换更加准确,可以获得良好对齐的anchor特征。利用3D anchor来桥接FV空间和3D车道线的表达,可以有效缩小二者的表达鸿沟,从而取得与BEV方法接近甚至更好的准确性。并且,这种投影-采样的方式具有良好的扩展性,可以扩展到任意已知变换关系的空间之间,例如(1)迭代回归:预测的3D车道线坐标可以进一步投影到图像特征上采样特征,进行车道线坐标的迭代回归;(2)多帧增强:通过帧间的pose信息,可以获取同一个3D anchor在多帧间对齐的特征,从而融合多帧特征进行车道线预测。整体来看,本文的方法具有架构简洁有效的优点,没有采用复杂的网络连接或训练方式,就可以在多个3D车道线数据集上超越之前的BEV方法,取得良好的速度-性能平衡。

IntroductionAnchor3DLane方法简介1. 3D车道线和3D anchor表示方法

如下图所示,本文主要基于地面坐标系进行预测,该坐标系原点O_g位于相机光心垂直向下与地面的交点处,x轴水平向右,y轴水平向前,z轴竖直向上。每条3D车道线沿y轴采样固定的N个点,其y坐标表示为y={y^k}_{k=1}^N,每条车道线由N个点表示,其第k个点表示为p^k=(x^k,y^k,z^k,vis^k),前3项分别为该点的x、y、z坐标,最后一项为该点是否可见,可见为1,不可见为0。在某些场景下,特别是OpenLane数据集中,很多车道线并不是从头开始的,此时对应缺失部分的vis属性即为0。3D anchor为一条定义于3D空间中的射线,由起始点(x_s, 0, 0),pitch \theta和yaw \phi唯一确定。与3D车道线类似,每个3D anchor也是由同样y坐标的N个点表示,其第k个点表示为q^k=(x^k,y^k,z^k)。需要强调的是,为了方便与之前的BEV方法进行比较,本文大部分实验都是在地面坐标系下完成的。然而,由于投影-采样机制的存在,Anchor3DLane可以作用于任意坐标系,如相机坐标系、车体坐标系等。

3D车道线和anchor表示方法2. Anchor3DLane网络结构

上图为Anchor3DLane的整体网络结构。给定输入前视图片,首先通过图像backbone网络以及一层transformer layer提取其图像特征F,其中,为了便于预测车道线的3D坐标值,我们在transformer layer之前加入了2D位置编码。之后,在每个3D anchor上采样N个点,将这N个点利用相机内参K和地面到相机坐标系的变换矩阵T_{g\rightarrow c}投影到F上:

由于投影后点的坐标通常为非整数,因此还需要结合双线性插值来得到这N个点对应的图像特征。对这N个点的特征进行拼接并展开后即可得到该anchor的特征。最后,将anchor特征输入分类head得到该anchor的分类置信度,输入回归head得到该anchor的上N个点的x、z坐标偏移量和vis属性,将x、z坐标偏移量与anchor的x、z坐标相加,由此恢复出该anchor对应3D车道线的坐标。进一步的,这些3D车道线可以作为新的3D anchor,再次将其采样点投影到特征F上获取anchor特征进行预测,从而对3D车道线进行迭代优化。由于新的anchor对车道线的拟合能力比原始anchor更好,因此其提取的特征也更准确,从而预测结果的坐标误差通常也更小。在实际实现时,采样特征的anchor点数目与最终回归的anchor点数目不需要保持一致,后者对计算量和参数量影响更小,因此可以通过固定采样特征点数目,增加回归点数目来提升模型对3D车道线的拟合能力,而不需要引入过多的计算代价。在OpenLane数据集相关的实验中,我们就采用了这种做法,来提升位置精度。

3. 训练及测试

在训练阶段,本文选择Top-k的方式对预测结果进行正负样本的分配,选择与每条ground truth车道线距离最近的前k个anchor作为正样本,其余为负样本,每次训练随机选择一部分负样本计算损失。本文分别采用Focal Loss和SmoothL1 Loss作为分类损失函数和正样本的回归损失函数:

在测试阶段,首先根据置信度阈值对预测的3D车道线进行筛选,之后对筛选剩下的车道线进行NMS,从而避免输出重复的车道线。

4. 时序上下文建模

由于投影-采样机制的存在,本文所设计的3D anchor可以较为方便地扩展至多帧输入,从而利用历史帧的信息对当前帧的预测进行增强。给定两帧之间的变换矩阵T_{g(t)\rightarrow g(t')},当前帧的anchor点可以被投影至历史帧的图像特征上采样anchor特征:

之后运用cross-attention对同一个anchor在不同帧之间的特征进行融合,将历史帧的特征融合到当前帧的特征上,从而获得时序增强后的anchor特征。后续的预测过程与单帧输入保持一致。

5. 等宽约束优化算法

除此以外,本文还提出了等宽约束优化算法,这一算法利用同一道路下的车道线在大部分情况下都是互相平行的这一特性,对3D车道线的横向估计结果进行后处理调整,从而改善远端的车道线横向估计误差。具体操作如下:

给定两条车道线的x坐标,同时约束两条车道线在不同y坐标下的宽度一致性以及x坐标的调整量,从而通过对两条车道线的x坐标进行微调,使得不同y坐标下两条车道线的水平距离基本一致,即两条车道线基本平行。上述目标函数中,第一项约束所有车道线之间两两平行,第二项为正则项,避免对x坐标调整过多。这一算法目前仅作为后处理对经过NMS之后的预测结果进行调整,可以与Anchor3DLane网络解耦使用。

三、实验部分

本文采用轻量的ResNet18作为Anchor3DLane的主干网络,分别在OpenLane、ApolloSim和ONCE-3DLane三个3D车道线数据集上进行了实验。

1. OpenLane[4]

在OpenLane上,除了单阶段回归和迭代回归的Anchor3DLane,本文还进行了时序增强实验,在训练时随机从前5帧中采样一帧对当前帧进行增强,测试时输入前5帧中的第一帧。可以看到,与之前的BEV方法相比,Anchor3DLane不仅在F score上有了大幅的提升,在x/z errors指标上也大幅下降,这一指标在3D车道线的真实部署场景下尤为重要,更大的误差意味着车辆更容易偏离自车车道,从而造成安全事故。在指标的测试上,通过降低置信度阈值,Anchor3DLane可以取得58%-59%的F1 score,然而这种情况下的x/z errors也会更大,达到0.4-0.5m左右,在我们看来这是偏离了实际需求的,因此在论文中我们并未展示这样的结果。

通过将Backbone由ResNet18替换成EfficientNet-B3,Anchor3DLane也可以取得更高的F1 score(56.0%),这一结果我们在附录中也有展示,相关的checkpoint和config也在github中有提供。

2. ApolloSim[5]

ApolloSim是一个仿真数据集,数据量较小,其中的场景相比真实数据集更加简单,因此在这个数据集上多个方法的性能趋于饱和。在这一数据集上,我们展示了在3个不同子集上的单阶段回归和迭代回归的Anchor3DLane结果。由于x/z errors是在与ground truth成功匹配上的预测结果上计算的,Anchor3DLane由于采用了更高AP的预测结果计算x/z errors损失,因此在某些指标上略落后于其他方法,这也是正常现象。

3. ONCE-3DLane[1]

在ONCE-3DLane上,由于数据集仅提供了相机内参,因此在这一数据集上我们采用了相机坐标系而非地面坐标系,3D anchor定义于相机坐标系中,通过相机内参将其投影到图像特征上进行特征采样。下表中,SALAD同样未采用BEV空间,与BEV方法(PersFormer)具有较大的性能差距。而我们的方法由于采用了3D anchor进行车道线的结构化建模作为桥梁连接了FV空间和3D车道线的表示空间,因此取得了与PersFormer相当甚至更优的结果。

4. FV特征 v.s. BEV特征

下表展示了本文的核心消融实验之一,即采用BEV特征进行feature sampling与本文中采用FV特征进行feature sampling的实验对比。通过下表的3个实验,我们证明了直接从FV特征上采样anchor特征比BEV特征有更好的性能,特别是二者的x errors具有较大的差距,这可能是因为BEV特征损失了大部分地面以上的context信息导致的。

5. 等宽约束

下图展示了在OpenLane上运用等宽约束进行调整后的结果,可以看到,经过等宽约束调整后的车道线在平行性上变得更好了。然而,虽然真实情况下车道线相互之间是平行的,由于数据集标注的问题,标注本身即存在不等宽的情况,因此在某些情况下调整后的车道线与调整前相比可能横向误差并不会下降。现在的等宽约束仅作为一项后处理方法对预测结果进行纯几何约束的调整,故此在效率和效果上都有一定的局限性,这也是我们后续改进的一个方向。

四、总结

在本文中,我们提出了一种简单有效的3D车道线检测范式,Anchor3DLane。该方法通过定义3D anchor对3D车道线进行结构化建模,从而规避BEV空间,直接由FV图像特征回归3D车道线坐标。该方法在多个方面具有良好的扩展性,可以有效适应不同的输入设置,作用于多种坐标系下。未来我们希望可以将等宽约束与Anchor3DLane结合起来,将其引入网络中进行端到端训练,从而利用几何约束信息进一步提升3D坐标估计的可靠性。

参考文献

[1] Yan F, Nie M, Cai X, et al. ONCE-3DLanes: Building Monocular 3D Lane Detection. CVPR 2022.

[2] Liu R, Chen D, Liu T, et al. Learning to Predict 3D Lane Shape and Camera Pose from a Single Image via Geometry Constraints. AAAI 2022.

[3]Tabelini L, Berriel R, Paixao T M, et al. Keep your Eyes on the Lane: Real-time Attention-guided Lane Detection. CVPR 2021.

[4]Chen L, Sima C, Li Y, et al. PersFormer: 3D Lane Detection via Perspective Transformer and the OpenLane Benchmark. ECCV 2022.

[5]Guo Y, Chen G, Zhao P, et al. Gen-LaneNet: A Generalized and Scalable Approach for 3D Lane Detection. ECCV 2022.

0. 自动驾驶感知/定位/融合与规划全系列课程!自动驾驶感知:YOLOv3~YOLOv8/YOLOX/PPYOLO系列全栈学习教程自动驾驶感知:国内首个BEV感知全栈学习教程(纯视觉+多传感器融合方案)1. 自动驾驶之心—车道线检测交流群

建了自动驾驶之心车道线检测交流群!想要进交流群的同学,可以直接加微信号:AIDriver001。加的时候备注一下:车道线检测+学校/公司+昵称,即可。然后就可以拉你进群了。

2. 往期回顾

自动驾驶之心 | CVPR 2023 | 基于多视图投影和方向一致性的弱监督单目3D检测

自动驾驶之心 | 超越LiDAR!最新RV融合算法CRN:实时、鲁棒、高效的3D感知(ICLR 2023)

自动驾驶之心 | CVPR 2023|基于时空神经辐射场的三维点云多帧非线性插值

自动驾驶之心 | CVPR 2023 | 多视图3D目标检测中的viewpoint equivariance

自动驾驶之心 | CVPR 2023 | 协同感知在真实世界就不能打了?世界首款V2V4Real告诉你很能打!

自动驾驶之心 | CVPR'23论文解读 | 多模态/3D检测/BEV/跟踪/点云等多个方向!

自动驾驶之心 | ICRA 2023 | 最新激光雷达-相机联合内外参标定,一步到位!

自动驾驶之心 | 2023最新综述!自动驾驶的运动规划:现状与展望全面回顾(传统/端到端/强化学习)

自动驾驶之心 | nuScenes SOTA!SurroundOcc:面向自动驾驶的纯视觉3D占据预测网络(清华&天大)

自动驾驶之心 | CVPR2023 | 让自动驾驶一骑绝尘!BEV-LaneDet:暴涨十个点,单目3D车道线新SOTA!

自动驾驶之心 | 最新SOTA!LAformer:具有车道感知场景约束的自动驾驶轨迹预测



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3