点击下方卡片,关注“自动驾驶之心”公众号

ADAS巨卷干货,即可获取

车道线检测一直都是自动驾驶热门的研究方向,也是整个自动驾驶感知技术栈不可或缺的一环,今天汽车人就带大家盘一盘近三年3D车道线检测的相关算法,如果您有相关工作需要分享,请在文末联系我们!

>>点击进入→自动驾驶之心【车道线】技术交流群

后台回复【车道线综述】获取基于检测、分割、分类、曲线拟合等近几十篇学习论文!

车道线检测是自动驾驶与计算机视觉领域中的重要研究方向,3D车道线任务更是近几年的研究热点,下面为大家盘点下近三年的一些工作!

1.3D-LaneNet

3D-LaneNet: End-to-End 3D Multiple Lane Detection.ICCV2019

代码链接:https://sites.google.com/view/danlevi/3dlanes

3D-LaneNet引入了一种网络,该网络可以从单个图像直接预测道路场景中车道的3D布局。这项工作标志着首次尝试在不假定已知的恒定车道宽度或依赖mapping环境的情况下,通过车载传感来解决这一任务。3D-LaneNet应用了两个新概念:网络内反向透视映射(IPM)和基于anchor的车道表示。网络内IPM投影促进了在常规图像视图和俯视图中的双重表示信息流。基于anchor的每列输出表示支持了端到端方法,该方法取代了常见的启发式方法,如聚类和异常值reject,将车道估计作为目标检测问题。此外,本文还显式地处理车道合并和拆分等复杂情况。结果显示在两个新的3D车道数据集上,一个是合成数据集,另一个是真实数据集。为了与现有方法进行比较,3D-LaneNet在仅图像的tuSimple车道检测基准上实现了与现有技术相比具有竞争力的性能。

网络结构如下:

3D LaneNet的概述如上图所示,信息在两个平行的流或路径中处理:图像视图路径和俯视图路径,称之为双通道主干。图像视图路径处理并保存来自图像的信息,而俯视图路径提供具有平移不变性的特征,并用于预测3D车道检测输出。图像视图路径的架构基于VGG16,而俯视图路径的结构类似,信息通过如下四个投影变换层流向俯视图路径。

2.3D-LaneNet+

3D-LaneNet+: Anchor Free Lane Detection using a Semi-Local Representation(NIPS2020)

3D LaneNet+是一种基于camera的DNN方法,用于anchor-free3D车道检测,能够检测任何任意拓扑的3D车道,例如分割、合并以及短车道和垂直车道。作者遵循了前面提出的3D LaneNet,并对其进行扩展,以实现对这些不支持的车道拓扑的检测。3D-LaneNet+输出表示是一种无锚的半局部平铺表示,它将车道划分为简单的车道段,这些车道段的参数可以学习。此外还学习了每个车道实例的特征嵌入,这是局部检测到的路段形成完整三维车道的全局连通性的原因。这种组合允许3D LaneNet+避免使用车道anchor、非最大抑制和车道模型拟合,如原始3D LaneNet中那样。论文使用合成数据和真实世界数据证明了3D LaneNet+的有效性。结果表明,与原始3D车道线检测网络相比有显著改进,这可以归因于对复杂车道拓扑、曲率和曲面几何的更好概括。

3D-LaneNet+网络由两个处理pipelines组成:图像视图(顶部)和BEV(底部),最终抽取的BEV特征图被馈送到车道线预测头,该预测头输出局部车道段和全局嵌入!整体任务包括半局部平铺表示和车道段参数化以及使用学习嵌入将车道段聚类在一起!

作者与3D-LaneNet进行了对比,mAP提升明显!

3.Gen-LaneNet

Gen-LaneNet: A Generalized and Scalable Approach for 3D Lane Detection

数据集链接:https://github.com/yuliangguo/3D_Lane_Synthetic_Dataset

代码链接:https://github.com/yuliangguo/Pytorch_Generalized_3D_Lane_Detection

也是和3D-LaneNet进行对比,论文提出了一种通用且可扩展的方法,称为Gen LaneNet,用于从单个图像中检测3D车道。该方法受到最新的3DLaneNet启发,是一个统一的框架,可在单个网络中解决图像编码、特征空间转换和3D车道预测。Gen LaneNet提出了两种独特的设计,首先,在新的坐标系中引入新的几何引导车道锚点表示,并应用特定的几何变换从网络输出中直接计算真实的3D车道点。论文证明,将车道点与新坐标系中的基本俯视图特征对齐对于处理不熟悉场景的通用方法至关重要。其次提出了一个可扩展的两阶段框架,该框架将图像分割子网络和几何编码子网络的学习解耦。与3D LaneNet相比,所提出的Gen LaneNet大大减少了在现实应用中实现稳健解决方案所需的3D车道标签数量。此外,作者还发布了一个新的合成数据集及其构建策略,以鼓励开发和评估3D车道检测方法。实验进行了广泛的消融研究,以证实所提出的GenLaneNet在平均精度(AP)和F评分方面显著优于3D LaneNet。

Gen LaneNet整体结构如上所示,分割主干(图像分割子网络)首先将输入图像编码为deep特征,并将这些特征解码为车道分割图。给定作为输入的分割,3D GeoNet(几何编码子网络)专注于几何编码,并预测中间的3D车道点,具体表现在俯视图中二维坐标和实际高度。最后,所提出的几何变换将网络输出直接转换为真实世界的三维车道点!

和3DLaneNet的对比:

实验旨在证明,当提供更稳健的图像分割时,两阶段方法可能获得更高的精度,同时当提供完美的图像分割子网络时,可以定位Gen LaneNet的上界。如表2所示,在所有三种实验设置中,3D GeoNet始终优于Gen LaneNet和3D LaneNet。可以注意到在平衡场景中,与Gen LaneNet相比的改善非常明显,大约好3%,而在很少观察到的场景和具有视觉变化的场景中,改善显著,从5%到7%。此外,表2还显示了我们方法的有前景的上限,如3D GeoNet在F-score和AP方面,3D Gen-LaneNet的表现要比3D LaneNet高出5%到18%。

4. PersFormer(ECCV22 oral)

PersFormer: 3D Lane Detection via Perspective Transformer and the OpenLane Benchmark(ECCV2022 oral)

代码链接:https://github.com/OpenPerceptionX/PersFormer_3DLane

数据集链接:https://github.com/OpenPerceptionX/OpenLane

最近提出了许多3D车道检测方法,以解决自动驾驶场景(上坡/下坡、颠簸等)中车道布局不准确的问题。由于前视图和鸟瞰图(BEV)之间的空间转换设计简单,且缺乏真实的数据集,先前的工作在复杂情况下举步维艰。针对这些问题,本文提出了PersFormer:一种具有新颖的基于Transformer的空间特征变换模块的端到端单眼3D车道检测器。PersFormer通过以相机参数作为参考,关注相关的前视局部区域来生成BEV特征。PersFormer采用统一的2D/3D锚点设计和辅助任务来同时检测2D/3D车道,增强了特征一致性并共享了多任务学习的好处。此外,论文还发布了第一个大型真实世界3D车道数据集:OpenLane,具有高质量注释和场景多样性。OpenLane包含200000帧、超过880000条实例级车道、14个车道类别,以及场景标签和封闭路径对象注释,以鼓励车道检测和更多工业相关的自动驾驶方法的发展。论文表明,PersFormer在我们新的OpenLane数据集和Apollo 3D lane Synthetic数据集上的3D车道检测任务中显著优于其它基线,并且在OpenLane上的2D任务中也与最先进的算法不相上下!

PersFormer pipelines如上图所示,核心是学习从前视图到BEV空间的空间特征转换,以便通过关注参考点周围的局部上下文,在目标点生成的BEV特征更具代表性。PersFormer包括self-attention模块,用于与自己的BEV查询交互,交叉关注模块,从基于IPM的前视图特征中获取键值对,以生成细粒度BEV特征!

如上图所示,整体结构由三部分组成:主干、透视变换器和车道线检测头。主干将调整大小的图像作为输入,并生成多尺度前视图特征,采用了流行的ResNet变体。注意,这些特征可能会受到尺度变化、遮挡等缺陷的影响,这些缺陷存在于前视图空间中的固有特征提取。透视变换器将前视图特征作为输入,并通过相机内部和外部参数生成BEV特征。论文不是简单地将一对一的特征对应从前视图投影到BEV,而是引入Transformer来关注局部上下文并聚合周围特征,以在BEV中形成稳健的表示。这样做可以使用Transformer以优雅的方式学习从前视图到BEV的逆透视映射。最后,车道检测头负责预测2D/3D坐标以及车道类型,2D/3D探测头被称为LaneATT和3D LaneNet,对结构和anchor设计进行了修改。

论文开源的数据集:

PersFormer和其它SOTA模型性能对比:

5.ONCE-3DLanes(CVPR2022)

ONCE-3DLanes: Building Monocular 3D Lane Detection(CVPR2022)

数据集链接:https://once-3dlanes.github.io/

华为诺亚开源的数据集:ONCE-3DLanes,这是一个具有三维空间中车道布局注释的真实世界自动驾驶数据集。由于道路不平,来自单目图像的传统2D车道检测在自动驾驶中产生了跟随规划和控制任务的较差性能。因此,预测3D车道布局是必要的,能够实现有效和安全的驾驶。然而,现有的3D车道检测数据集要么是未发布的,要么是从模拟环境中合成的,这严重阻碍了该领域的发展。本文将采取措施解决这些问题,通过利用点云和图像像素之间的显式关系,设计了数据集标注pipelines,以从211K道路场景中的2D车道注释自动生成高质量的3D车道位置。此外,论文还提出了一种称为SALAD的外部自由无锚方法,在图像视图中回归车道的三维坐标,而不将特征图转换为鸟瞰图(BEV)。

SALAD的结构如上所示,主干将输入图像编码为深度特征,两个分支即语义感知分支和空间上下文上下文分支对特征进行解码,以获得车道的空间信息和分割掩码。然后通过整合这些信息来执行3D重建,并最终获得真实场景中的3D车道位置。

数据集介绍:

实验结果对比:

6.Reconstruct from BEV

Reconstruct from BEV: A 3D Lane Detection Approach based on Geometry Structure Prior(CVPR 2022 workshop)

本文提出了一种比较先进的方法,通过在2D到3D车道重建过程中利用几何结构来解决单目3D车道检测问题。受先前方法的启发,作者首先分析了3D车道及其在地面上的2D表示之间的几何启发式,并提出基于结构先验进行显式监督,这使得可以建立车道间和车道内关系,以促进从局部到全局的3D车道重建。其次,为了减少2D车道表示中的结构损失,论文直接从前视图图像中提取BEV车道信息,这极大地减轻了先前方法中对远处车道特征的混淆。此外,作者提出了一种新的特定于任务的数据增强方法,通过为pipelines中的分割和重建任务合成新的训练数据,以对抗相机姿态的不平衡数据分布和地面坡度,改进对未发现数据的概括。这项工作标志着首次尝试将几何先验信息应用于基于DNN的3D车道检测,并使其可用于检测超长距离的车道,使原始检测范围加倍。所提出的方法可以被其他框架顺利采用,而无需额外费用。实验结果表明,在Apollo 3D合成数据集上,本文的工作在不引入额外参数的情况下以82 FPS的实时速度以3.8%的F-Score优于最先进的方法。

整体3D车道检测框架,该框架由BEV(俯视图)分割网络和基于anchor的3D车道回归器组成。从前视图图像提取的特征被投影到BEV上,以在BEV监督下直接生成分割掩模。然后从BEV车道掩模估计3D车道的锚表示,此外,论文明确地利用3D到2D投影之前的几何体来进行3D车道重建。

所提出的方法从前视图相机获取单个RGB图像,并在3D世界空间中输出一组车道实例。论文假设摄像机安装时相对于世界坐标的横摇或偏航为零,并且由于车辆波动,只有俯仰变化。建立世界坐标作为自我车辆坐标,起点作为摄像机中心在道路上的垂直投影。

实验对比:

7.BEV-LaneDet

BEV-LaneDet: Fast Lane Detection on BEV Ground(2022)

代码链接:https://github.com/hm-gigo-team/bev_lane_det

3D车道检测已经成为自动驾驶的一个积极发展的领域,这是车辆路线选择的关键,然而先前的工作没有平衡性能和有效性。这项工作提出了一种仅具有原始CNN和FC层的面向部署的单目3D车道检测器。该检测器在Apollo 3D Lane Synthetic数据集和OpenLane真实世界数据集上以96 FPS的运行速度获得了最先进的结果。在检测器中使用了三种技术:(1)虚拟摄像机消除了安装在不同车辆上的摄像机的姿态差异(2) 空间变换金字塔作为一种轻量级的前视到鸟瞰视图变换器,可以利用多尺度图像视图特性。(3) YOLO风格表示在鸟瞰图分辨率和运行时速度之间取得了良好的平衡,并且它可以减少由于训练期间车道检测任务的稀疏性而导致的类不平衡所导致的效率低下。实验结果表明,本文的工作在OpenLane数据集上的F1-score为10.6%,在Apollo 3D合成数据集上F1-score为4.0%,速度为96 FPS,优于最先进的方法。

上图为BEV-LaneDet概念图!

如图2所示,整个网络架构由四部分组成:

•虚拟相机:统一相机的内部和外部参数的预处理。•前视图主干:前视图特征提取器。•空间变换金字塔:将前视图特征投影到鸟瞰图特征。•YOLO样式表示:基于YOLO的探测器头。

如图2所示,首先将输入图像通过其内参数和外参数投影到具有固定内参数和外部参数的虚拟相机。该过程允许快速协调不同车辆上前摄像头的内部和外部参数。然后使用前视图特征提取器来提取前视图图像的特征。分别使用ResNet18和ResNet34进行了实验。为了更好地促进网络提取前视特征,在主干网络的输出部分增加了前视车道辅助监控。然后设计了一个快速的多尺度空间变换模块,称之为空间变换金字塔,该模块负责从前视图特征到BEV特征的空间转换。

图3为虚拟相机示意图,虚拟相机的核心是在逆透视映射(IPM)之后,当前相机和虚拟相机在Proad上共面!

YOLO结构的表示:

实验结果对比:

8.CurveFormer(ICRA2023)

CurveFormer: 3D Lane Detection by Curve Propagation with Curve Queries and Attention(ICRA 2023)

以前的CNN和基于变换的方法通常首先从前视图图像生成鸟瞰图(BEV)特征图,然后使用具有BEV特征图作为输入的子网络来预测3D车道。这种方法需要BEV和前视图之间的显式视图转换,这本身仍然是一个具有挑战性的问题。本文提出CurveFormer,一种单级基于transformer的方法,直接计算3D车道参数,并可以绕过困难的视图转换步骤。通过使用曲线查询将3D车道检测公式化为曲线传播问题。三维车道查询由动态有序锚点集表示,通过这种方式,Transformer解码器中具有曲线表示的查询迭代地细化3D车道检测结果。此外,引入了曲线交叉关注模块来计算相似性(在曲线查询和图像特征之间)。此外,该方法还提供了可以捕获曲线查询的更多相对图像特征的上下文采样模块,以进一步提高3D车道检测性能。在合成和真实世界数据集上评估了提出的3D车道检测方法,实验结果表明,与最先进的方法相比,本文的方法取得了令人满意的性能,每个组件的有效性也通过消融研究进行验证。

上图为不同3D车道检测pipelines的比较,(a) 2D图像预测和后处理;(b) 基于相机外部预测的三维车道检测;(c) 基于变换的密集BEV地图构建和3D车道预测;(d) CurveFormer直接提供3D车道 ,使用Transformer解码器中的曲线交叉关注机制,通过稀疏曲线查询获取参数。

图3显示了CurveFormer的概述,它由三个主要部分组成:(1)共享CNN主干以单个前视图图像作为输入并输出多尺度特征图;(2) transformer编码器,用于随后增强多尺度特征图以及(3)曲线transformer解码器,用于通过曲线交叉关注传播曲线查询,最后,应用预测头输出3D车道参数!

context sampling结构如下所示:

实验结果对比:

9.Anchor3DLane

Anchor3DLane: Learning to Regress 3D Anchors for Monocular 3D Lane Detection(2023)

由于缺乏深度信息,单目3D车道检测是一项具有挑战性的任务。,3D车道检测的一个流行解决方案是首先使用逆透视映射(IPM)将前视图(FV)图像或特征转换到鸟瞰(BEV)空间,并从BEV特征中检测车道。然而,IPM对平坦地面假设的依赖和上下文信息的丢失使得从BEV表示中恢复3D信息变得不准确。已经尝试去除BEV并直接从FV表示中预测3D车道,但由于缺乏3D车道的结构化表示,该方法仍表现不佳。本文定义了三维空间中的三维车道anchor,并提出了一种名为Anchor3DLane的无BEV方法,以直接从FV表示预测三维车道。3D车道anchor被投影到FV特征,以提取它们的特征,这些特征包含良好的结构和上下文信息。进一步将Anchor3DLane扩展到多帧设置,以结合时间信息以提高性能。此外还开发了一种全局优化方法,该方法利用车道之间的等宽特性来减少预测的横向误差。在三个流行的3D车道检测基准上的大量实验表明,Anchor3DLane优于先前基于BEV的方法,并实现了最先进的性能。

上图中的(a) 基于BEV的方法,其在扭曲的BEV图像或特征中执行车道检测,(b) 非BEV方法,将2D车道预测投影回具有估计深度的3D空间,(c) Anchor3DLane将3D锚点投影到FV特征中,以直接采样特征进行3D预测。

论文主要的贡献:

1.提出了一种新的Anchor3DLane框架,该框架在3D空间中直接定义锚,并在不引入BEV的情况下直接从FV回归3D车道;

2.还提出了对Anchor3DLane的多帧设置的扩展,以利用良好对齐的时间信息来进一步提高性能;

3.开发了一种全局优化方法,以利用车道的等宽特性进行优化;

4.Anchor3DLane优于以前基于BEV的方法,并在三个流行的3D车道检测基准上实现了最先进的性能;

Anchor3DLane的整体架构,给定正视输入图像,采用CNN主干和Transformer层来首先提取视觉特征F。然后投影3D anchor以从F个给定的相机参数中采样其特征,然后,应用分类头和回归头进行最终预测。车道预测也可以作为迭代回归的新3D anchor。

实验结果对比:

自动驾驶之心】全栈技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多传感器融合、SLAM、光流估计、深度估计、轨迹预测、高精地图、NeRF、规划控制、模型部署落地、自动驾驶仿真测试、硬件配置、AI求职交流等方向;

添加汽车人助理微信邀请入群

备注:学校/公司+方向+昵称

3D车道线检测能否成为自动驾驶的核心?盘一盘近三年的SOTA论文!相关推荐

  1. ECCV2020 | Gen-LaneNet:百度Apollo提出两阶段的3D车道线检测算法,已开源

    点击上方"3D视觉工坊",选择"星标 干货第一时间送达 这篇文章收录于ECCV2020,是百度Apollo团队发表的关于3D车道线检测的文章,针对3D-LaneNet做了 ...

  2. 通用汽车研发中心最新提出:3D车道线检测新方法

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作分享,不代表本公众号立场,侵权联系删除 转载于:知乎黄浴博士,已获授权 https://zhuanlan.zhi ...

  3. 3D车道线检测:Gen-LaneNet

    3D车道线检测:Gen-LaneNet Gen-LaneNet: A Generalized and Scalable Approach for 3D Lane Detection 论文链接:http ...

  4. 深度学习方法实现车道线分割之二(自动驾驶车道线分割)

    看这篇文章需要大家先了解下 卷积.转置卷积与空洞卷积的区别,更有助于理解文中代码以及为何我会这么去实施我的project 1 原理 之前我曾采用传统方法实现了一下车道线检测, https://blog ...

  5. 一个3D车道线检测方法PersFormer及其开源OpenLane数据集

    来源丨计算机视觉深度学习和自动驾驶 arXiv上2022年3月论文"PersFormer: 3D Lane Detection via Perspective Transformer and ...

  6. 速度精度双SOTA! TPAMI2022最新车道线检测算法(Ultra-Fast-Lane-Detection-V2)

    点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨卷干货,即可获取 点击进入→自动驾驶之心技术交流群 后台回复[车道线综述]获取基于检测.分割.分类.曲线拟合等近几十篇学习论文! ...

  7. 面向量产的3D目标与车道线检测方法

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 Part 1 背景介绍 1. 1 团队介绍 商汤科技自动驾驶团队依托公司为背景,以 SenseParr ...

  8. 3D车道线单目检测方法ONCE-3DLanes

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨黄浴 来源丨计算机视觉深度学习和自动驾驶 3D车道线检测论文"ONCE-3DLanes ...

  9. 基于摄像头的车道线检测方法一览

    首发于 自动驾驶的挑战和发展 写文章 基于摄像头的车道线检测方法一览 黄浴 ​ 自动驾驶话题下的优秀答主 174 人 赞同了该文章 车道线,重要的路上语义信息,检测车道线对L2-L3-L4级别的自动驾 ...

最新文章

  1. 半折预售:新书-R语言数据可视化之美|ggplot2作者推荐
  2. R语言编写自定义分组统计函数(customize statistics function)可视化分组箱图并在X轴标签下方添加分组对应的统计值(样本数N、中位数median、四分位数的间距iqr)
  3. python berkeley 操作——尤其提示 需版本匹配
  4. Ansible之roles(角色)详解
  5. Python 命令pip install pygame安装报错
  6. 【HNOI2007】紧急疏散
  7. 四十八、第二份国外的Python考试(下篇)
  8. 数学,原来可以这么美!
  9. 深度学习(二十五)基于Mutil-Scale CNN的图片语义分割、法向量估计
  10. Struts2之前台表单传值到后台Action方法总结
  11. hibernate级联保存问题
  12. Tomcat启动Maven项目异常:java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContext
  13. 1000瓶水10只小白鼠问题-面试题目
  14. 三网融合融什么融,团购网站团什么团【涂雅速涂】
  15. 小鸟云安全组在哪里?怎么设置?
  16. Java发送邮件时标题和发件人乱码
  17. python对电商运营有帮助吗_建议收藏丨电商运营必备,跨境卖家都在用这个狠招!...
  18. PHP身份证有效期校验(通用)
  19. 父元素设置min-height,子元素height 100%失效问题
  20. 使用vue来实现当当网

热门文章

  1. 流程控制语句—顺序、选择、循环
  2. JAVA 计算一个数的阶层
  3. 学习可爱彩色线条PS极简马克笔简笔画:鞋子篇
  4. 大数据Apache Druid(四):使用Imply进行Druid集群搭建
  5. 【R语言 数据挖掘】R语言如何做关联规则?
  6. PMP®项目管理|项目干系人如何管理?
  7. 爬取大西洋月刊每日新闻
  8. ESP8266 WIFI ARDUINO单芯片 APP/微信远程控制继电器等 设备源码及说明
  9. 2015私人阅读十五佳
  10. iphone6安装android,在iPhone里装了真 Android系统 这事情已经很神奇了