本文经自动驾驶之心公众号授权转载,转载请联系出处。
笔者的个人理解
今年真的是无图感知爆发的一年啊~近几天arxiv上放出了一篇在线局部高精地图构建算法—ScalableMap,ScalableMap提出了一种新的端到端范式,用于纯视觉构建在线long-range矢量化高精地图。HD地图的矢量化表示,使用polyline和polygon来表示地图元素,进而应用到下游的地图构建。然而,以前参考动态目标检测设计的方案忽略了线性地图元素内的结构约束,导致在长距离场景中性能下降。因此本文利用地图元素的特性来提高地图构建的性能。ScalableMap在线性结构的指导下提取了更准确的鸟瞰图(BEV)特征,然后提出了一种分层稀疏地图表示,以进一步利用矢量化地图元素的可扩展性,并基于这种表示设计了渐进解码机制和监督策略。ScalableMap在nuScenes数据集上取得了SOTA性能,尤其是在远程场景中,在实现18.3 FPS的同时,超过了以前最先进的模型6.5 mAP。
开源链接:https://github.com/jingy1yu/ScalableMap
总结来说,ScalableMap的主要贡献有如下两点:
- ScalableMap是第一个端到端的远程矢量化地图构建范式。作者利用地图元素的结构特性来提取更准确的BEV特征,提出了一种基于可缩放矢量化元素的HSMR,并相应地设计了渐进解码器和监督策略。这几点改进均大幅提升了模型的感知性能;
- 作者通过大量实验评估了ScalableMap在nuScenes数据集上的性能。ScalableMap在更大范围的HD地图学习中取得了最先进的结果,超过现有的多模态方法6.5 mAP,同时达到18.3 FPS。
高精地图构建的相关工作
车道检测:车道检测任务多年来一直是一个热门的研究课题。早期方法通常依赖于需要复杂后处理才能获得最终结果的分割方案。为了获得结构化信息,一些方案旨在找到曲线的统一表示,而另一些方案则利用基于Anchor的方案来抽象具有开放形状的地图元素。与上述解决方案相比,我们的思维更接近HRAN,它直接输出结构化polyline。然而,它依赖于已知计算效率低的递归网络。ScalableMap能够处理具有复杂几何结构的真实地图元素,而前面提到的方法只能处理单个类型或规则形状。
边界提取:边界提取旨在预测图像中物体的多边形边界。Polygon RNN采用递归结构对捕获每个边界,不适合有实时要求的场景。一些工作在边界提取方面取得了良好的效果,但它们通常是为图像空间中的多边形设计的,不适合于地图构建任务。最接近本文的方案是BoundaryFormer,它使用查询来预测多边形的顶点,以获得矢量化的多边形边界。然而,它为图像空间中的闭合形状元素定义的可微损失不适用于由开放形状线性元素主导的地图元素,因为与动态对象相比,它们具有较少集中的特征。
矢量化高精地图构建:最近的工作试图直接从传感器数据获取矢量化高精地图。HDMapNet使用耗时的启发式后处理方法生成矢量化地图,而VectorMapNet提出了一种具有端到端范式的两阶段框架,该框架使用慢速自回归解码器来循环预测顶点。InstaGraM提出了一种基于顶点和edge heatmap的图建模方法来推理实例-顶点关系,这可能很难推断出多个视图中出现的地图元素的一些顶点。考虑到处理元素中任意形状和不同数量顶点的挑战,MapTR通过使用固定数量的插值来获得单一形式的表示来解决这一问题。但MapTR的分层查询设计主要关注初始化阶段元素的结构关联,导致收敛缓慢,并随着感知范围的增加而影响性能。只有SuperFusion是远程矢量化高精地图构建的相关工作,它也使用后处理来获得矢量化结果。ScalableMap是第一个在整个过程中利用地图元素的结构特性来构建大范围矢量化地图的端到端方案。
详解ScalableMap
概览
给定一组环视图像,ScalableMap的目标是实时预测一定范围内的M个局部地图元素{,包括车道线、道路边界和人行横道。每个地图元素由有序顶点的稀疏集表示。
ScalableMap的体系结构如图1所示。主要包含三个组件:
- 结构引导的混合BEV特征提取;
- 渐进解码器;
- 渐进式监督;
BEV特征提取
地图元素的延展和线性特性加剧了2D-3D变换的不适定性,导致特征错位和不连续。为了获得混合BEV特征,作者利用一个分支来提取position-aware的BEV特征和另一个分支用于提取instance-aware的BEV特征。然后,在地图元素的结构特性的指导下,将这些分支融合在一起。
透视视图转换器。模型首先通过ResNet提取图像特征。采用BEVFormer提出的方法来获得position-aware的BEV特征,该方法利用可变形注意力来实现基于预定义的3D网格和标定参数的BEV查询和相应图像特征之间的空间交互。此外使用几个MLP来获得实instance-aware的BEV特征,因为它们在保留图像空间中的连续特征方面是有效的。使用k个MLP将k个图像特征单独地转换为它们各自的俯视图。为了进一步提高视图之间的特征连续性,作者使用线性层将俯视图特征转换为统一的BEV特征。
结构引导的特征融合。为了增强特征对精确地图构建的鲁棒性,作者进一步提出了一种相互校正策略,该策略利用来自两个不同特征的信息:具有相对精确的地图顶点位置数据,包含地图元素的综合形状信息。通过直接相加这些特征,进一步得到了更新的。此外在中引入了一个分割头,引导它专注于可行驶区域来学习变换尺度。随后,将与refined的连接,并通过卷积层执行它们的融合。该融合过程纠正了中的错位,得到了具有增强的丰富性和准确性的混合bev特征。
渐进式Decoder
矢量化地图元素的各种形状对传统的抽象方案(如基于边界框和基于锚点的方法)提出了挑战。为了解决这个问题,本文引入了HSMR。HSMR提供了一种稀疏和统一的表示,可以准确描述元素的实际形状,同时支持快速推理。在此基础上设计了一个受DETR范式启发的渐进解码器。此外集成了一个模块,该模块首先生成结构查询,然后动态插入查询,充当连接不同密度地图的重要桥梁。
分层稀疏图表示。地图元素的polyline表示通常是通过对曲率超过阈值的点进行采样来获得的,从而导致每个元素的顶点数量不同。我们将形成每个元素的顶点数量定义为地图密度,以确保一致的表示。基于该密度,我们对顶点数量过多的元素使用均匀点采样,而对于顶点数量少于所需密度的元素,我们根据原始顶点之间的距离执行点子采样。这种方法允许我们在任意密度下获得相同元素的表示。通过将DETR范式的迭代优化思想与矢量化地图的动态可调密度相结合,我们分层地利用低密度地图作为高密度地图的抽象表示。低密度地图在足够稀疏的同时充分地捕捉地图元素形状。HSMR及其性能的可视化描述如图4所示。
Decoder Layers。进一步作者定义了负责第n个元素的第m个顶点的查询。利用地图元素的分层稀疏表示,最初生成少量查询以捕获每个地图元素的近似形状。每个查询是通过添加实例嵌入和位置嵌入而形成的。方法的渐进地图元素解码器由多个解码器层组成,每个解码器层包含两种类型的注意力机制。这些注意力机制促进了顶点之间的信息交换,并实现了每个顶点与其相应BEV特征之间的交互。顶点之间的交换使用多头自注意来实现,而另一个使用可变形注意来实现。
结构查询生成和动态查询插入。为了连接处理不同密度的层,我们利用同一元素内相邻顶点之间的位置约束来增加地图密度。我们通过获取共享一条边的两个相邻查询的平均值来引入新查询,并在这两个查询之间动态插入新查询。具体来说没有采用同时初始化大量查询并迭代更新的传统方法,而是采用了一种策略,即仅用有限数量的查询初始化每个元素,并逐层逐渐增加地图密度。这使该模块能够专注于原始稀疏实例特征,并利用矢量化地图元素的结构特征,确保强大的大范围感知能力。
渐进式监督策略
使用常见的二分匹配策略匹配真值和预测:
使用focal loss来监督元素类别和可行驶区域,以下损失函数中包含了额外的损失项:
顶点损失。考虑到HSMR涉及子采样过程,本文区分了原始顶点和新添加顶点之间的监督。渐进polyline损失的监督机制的可视化表示如图2所示。使用L1损失优化:
边缘损失。使用边缘损失来监督边的形状,包括与新添加顶点的距离以及由相邻边缘形成的角度。距离度量以L1损失进行监督,而斜率和角度分量以余弦相似性进行监督。每个元素的边缘损失公式为:
实验验证
主要结果
与基线的比较。将ScalableMap与最先进的nuScenes验证测试方法进行比较来评估其性能。如表1所示,在相机模态下,ScalableMap的表现略好于MapTR,在沿Y轴[-30.0m,30.0m]的传统感知范围内,实现了1.9个更高的mAP和更快的推理速度。当相同的模型直接应用于[-60.0m,60.0m]场景时,ScalableMap实现了45.6 mAP和18.3 FPS,而MapTR的相应值分别为39.1和11.2。值得注意的是,SuperFusion是唯一一种公布这一范围内实验结果的方法。然而,它是激光雷达和单目相机的融合模型。在相同的基准下,我们的方法实现的mAP比SuperFusion高出16.2,即使在具有接近实时推理速度的多目相机模式下也表现出卓越的性能。结果表明,本文的方案有效地满足了在线地图构建任务的实时性要求,在传统的感知范围测试和远程测试中都具有卓越的准确性。
定性结果可视化。ScalableMap在nuScenes验证数据集上的定性结果在大范围测试中的可视化如图3所示。附录B中给出了更多具有挑战性的场景的可视化结果,以获得更多具有挑战的场景的视觉化结果。即使在弯道、十字路口、拥堵道路和夜间场景中,我们的模型仍然表现良好。图4可视化了MapTR*和ScalableMap的六个解码器层中的三个。我们的策略展示了更快地关注实例特征的能力,而渐进迭代产生了更精确的元素形状。
消融实验
我们在nuScenes验证集上进行了消融实验,以验证所提出的方法和不同设计的组件的有效性。所有实验的设置与前面提到的保持相同。
表2给出了实验结果,展示了本文提出的组件的影响。HSMR在稀疏表示的远程感知中表现出有效的性能。SQG&DQI增强了地图元素中的结构信息,而SGFF模块显著提高了性能。
顶点数量的消融实验。表3中给出了形成每个元素的顶点数量对每个解码器层中的大范围感知的影响。实验结果表明,基于本文提出的HSMR,模型性能随着顶点数量的增加而相当稳定。我们权衡准确性和速度来选择合适的参数。
ScalableMap的结论和未来的改进方向
本文提出的ScalableMap是一种用于构建长距离矢量化高精地图的全新范式。作者利用地图元素的固有结构来提取准确的BEV特征,提出了基于可扩展矢量化映射的HSMR概念,并相应地设计了渐进解码器和监督策略以确保快速收敛。通过这些设计,ScalableMap可以有效地捕捉长距离的信息。在nuScenes数据集上的实验结果证明了它的SOTA性能,特别是在更大范围的感知场景中,从而肯定了它在现实世界环境中的实时适用性和有效性。
未来方向:ScalableMap仅依赖于实时视觉感知,因此其性能取决于场景的可见性,而在交通拥堵或极端天气条件等情况下,场景的可见性可能会受到限制。此外方法依赖准确的相机内外参,这可能会在实际部署中造成限制。未来的研究可以通过开发无参数方法或结合在线校准方法来减少对传感器内外参的依赖。探索地图元素之间的位置约束的集成或利用全局粗略地图作为先验知识可以进一步增强鲁棒性和准确性。
论文链接:https://arxiv.org/abs/2310.13378
原文链接:https://mp.weixin.qq.com/s/Ch-iktorUlVErabSouuvOg