赞
踩
点击下方卡片,关注“自动驾驶之心”公众号
ADAS巨卷干货,即可获取
论文作者 | Zihao Liu
编辑 | 自动驾驶之心
在自动驾驶领域,高精地图在定位和规划中扮演着至关重要的角色。最近,一些方法在类似DETR的框架中促进了端到端在线地图构建。然而,探索查询机制的潜在能力却鲜有人关注。本文介绍了 MapQR,这是一种端到端的方法,强调增强查询能力以构建在线矢量化地图。尽管地图构建本质上是一个点集预测任务,但 MapQR 使用实例查询而不是点查询。这些实例查询被分散(scattered)用于点集的预测,随后被聚集(gathered)用于最终的匹配。这种查询设计,称为 scatter-and-gather query ,共享同一地图元素中的内容信息,并避免了点查询中内容信息可能的不一致性。本文进一步利用先验信息来通过添加从参考点嵌入的位置信息来增强实例查询。结合一个简单而有效的BEV编码器的改进,所提出的 MapQR 在 nuScenes 和 Argoverse 2 上都实现了最佳的平均精度(mAP)并保持了良好的效率。此外,将本文的查询设计集成到其他模型中可以显著提升它们的性能。
代码链接:https://github.com/HXMap/MapQR
总结来说,MapQR主要贡献如下:
本文提出了一种基于新颖的 scatter-and-gather query的在线端到端地图构建方法。这种查询设计,结合了兼容的位置嵌入,对于在类DETR架构中基于点集的实例检测是有益的;
所提出的在线地图构建方法在现有在线地图构建基准测试上的表现优于先前的技术;
将本文的核心设计融入到其他最先进的在线地图构建方法中,也带来了显著的准确性提升。
高清地图旨在输出自动驾驶地图元素的精确矢量化表示。尽管传统的离线SLAM方法维护成本高,但在线高清地图的构建越来越受到关注。在线地图构建可以通过BEV空间中的分割或车道检测来解决,从而生成光栅化地图。HDMapNet进一步将分割结果分组为矢量化表示。
VectorMapNet提出了第一个端到端矢量化地图学习框架,并利用自回归对点进行顺序预测。后来,用于矢量化高清地图构建的端到端方法变得流行起来。MapTR将在线地图构建视为点集预测问题,并设计了一个类似DETR的框架,实现了最先进的性能。其改进版本MapTRv2设计了解耦的自注意解码器和辅助损耗,进一步提高了性能。BeMapNet不使用点集来表示地图元素,而是使用分段Bezier曲线,PivotNet使用基于枢轴的点来进行更精细的建模。最近,StreamMapNet利用多点注意力实现宽感知范围,并利用长序列时间融合。与之前的工作不同,我们提供了对基于实例的查询的深入开发,并设计了scatter-and-gather查询,以准确地探测内容和位置信息。
高清地图通常是在BEV视图下构建的,因此在线高清地图构建方法依赖于将摄像机视角的视觉特征转换为BEV空间。LSS利用潜在深度分布将2D图像特征提升到3D空间,并在稍后使用池化来聚合到BEV特征。BEVformer依赖于transformer架构,并基于视觉投影设计空间交叉注意力。与BEVformer中使用的可变形注意力不同,GKT设计了一个几何引导的内核Transformer。此外,还对时间信息进行了探索,以更好地学习BEV特征。所有这些方法都可以有效地产生BEV特征,并且我们提出的解码器与所有这些方法兼容。
DETR构建了第一个带有Transformer的端到端对象检测器,消除了对许多手工设计组件的需求。在对象检测任务中,它将对象框表示为一组查询,并直接使用Transformer编码器-解码器架构将查询与图像交互,以预测边界框集。随后的工作进一步优化了这种范式和性能。在可变形DETR中,引入了多尺度特征,以解决普通DETR对小物体检测结果较差的问题。在Conditional DETR和DAB-DETR中,通过向可学习查询添加位置嵌入来加速DETR的收敛。在DN-DETR和DINO中,将带有噪声的实际盒子输入到解码器中,从而建立更稳定的配对关系以加速收敛。DETR的范式已被广泛应用于对象检测任务以外的领域。例如,在线矢量化高清地图构建通常采用类似DETR的模型。我们的模型也是一个类似DETR的模型。利用地图元素的点集表示,我们设计了可以在Transformer解码器中分散和聚集的查询,并将位置信息集成到查询的初始化中。
我们方法的模型以环视图像序列为输入,端到端地构建HD地图,目的是生成预测点集来表示地图元素的实例。地图元素的每个实例包括类标签和一组预测点。每个预测点都包括明确的位置信息,以创建表示实例的形状和位置的多段线。我们的模型的总体架构如图2所示,在结构上与其他端到端模型相似。
将环视图像作为输入,我们首先通过共享的2D主干提取图像特征。相机的透视图(PV)的这些图像特征通过馈送到视图转换模块(通常称为BEV编码器)中而被转换为BEV表示。所得到的BEV特征表示为Fbev。
该架构的解码器是我们的核心设计,由堆叠的transformer层组成,其细节如图3所示。我们的解码器的改进主要围绕着查询设计,包括Scatter-and-Gather Query及其兼容的位置嵌入。
Scatter-and-Gather Query。在我们的方法中,我们建议只使用一种查询类型,即实例查询,作为解码器的输入。我们定义了一组实例查询,每个地图元素(索引为i)对应于一个实例查询q。N表示实例查询的数量,配置为超过场景中呈现的地图元素的典型数量。算子scatter获取输入数据向量,并将其复制到多个副本中。公式化为:
经过转换器层后,使用聚集操作符将分散的查询聚合为单个实例查询,该操作符由MLP组成,如下所示:
一个完整的解码器层由一个自注意力(SA)模块和一个交叉注意(CA)模块组成。在每个解码器层中,自注意用于在实例查询之间交换信息。自关注的输出分散成多个副本,即分散查询,并用作交叉关注的输入。利用BEV特征计算注意力得分,以取样来自BEV空间的信息。
与MapTR系列相比,所提出的解码器的详细架构如图3所示。MapTR使用点查询作为解码器层的输入,并计算它们之间的自注意力分数。这使得自注意力的计算复杂度比我们的模型高得多,因为涉及的查询要多得多。
相比之下,所提出的查询设计可以确保同一地图元素中内容的一致性。同时,这种设计减少了查询次数,以减少自关注的计算消耗。因此,它允许参与更多的实例查询,而不会显著增加内存消耗。详细的实验结果见表4。
位置嵌入。如图3所示,我们模型的解码器与其他SOTA模型之间的另一个关键区别是位置嵌入的使用。如DAB-DETR所示,查询由内容部分和位置部分组成。通过设计实例查询的分散和聚集方案,同一地图元素对应的分散查询可以共享内容信息。那么另一个值得探索的方面应该是位置信息。在Conditional DETR和DAB-DETR中,位置部分是根据参考点或框坐标显式编码的,因此它不与内容部分耦合,并有助于分别对两个部分进行学习过程。
考虑到地图构建任务的点集表示,我们提出了一种更合适的位置嵌入方式,如图3所示。在解码器层中,每个实例查询经过自关注模块后被分散为n个分散的查询。每个分散的查询从其参考点添加不同的位置嵌入。位置嵌入分散查询是通过以下方式生成的:
我们以与DAB-DETR相同的方式重载PE运算符来计算位置编码:
我们还尝试在自注意力模块之前将位置嵌入添加到实例查询中,例如使用可学习查询或从覆盖参考点集的最小绑定框进行编码。然而,它没有取得积极成果,这些成果已列入补充材料。因此,在我们的模型中排除了实例查询的位置嵌入。
总之,scatter-and-collection查询机制中第i个实例查询的计算为:
BEV编码器学习隐式或显式地适应3D空间。例如,BEVFormer为每个BEV查询从固定高度采样3D参考点,同时从投影的2D位置学习可适应的偏移。与BEVFormer类似,GKT使用固定的内核来提取投影的2D图像位置周围的特征。由于GKT依赖于固定的三维变换,因此缺乏一定的灵活性。尽管如此,与BEVFormer相比,它仍具有显著的性能。
为了进一步增加GKT的灵活性,我们在为每个BEV查询生成3D参考点时预测到原始固定高度的自适应高度偏移:
在投影到2D图像之后,我们仍然使用固定的kernel来提取特征。我们发现这种简单的修改可以进一步提高预测结果。它甚至优于在MapTRv2中使用辅助深度损失的BEVPoolv2。实验证明了它在烧蚀研究中的优越性。我们将这种改进的GKT表示为GKT-h,其中后缀“h”表示高度。
匹配损失和mapTR保持一致,训练损失与MapTRv2保持一致。
由于所提出的方法主要使用一种新颖的查询设计,我们将所提出的方式(分散和聚集查询+位置嵌入+GKT-h)称为MapQR。这里的QR是查询的缩写。有时我们还想强调核心贡献的大小,即具有位置嵌入的分散和聚集查询。该部分简称为SGQ。
nuScenes效果。在之前的实验设置之后,通过不同的方法预测2D矢量化地图元素。实验结果如表1所示。可以看出,在相同的设置(即主干和训练时期)下,所提出的MapQR在mAP1和mAP2方面都以很大的优势优于所有其他SOTA方法。与MapTR和MapTRv2相比,BeMapNet和PivotNet由于其精细的建模,在较小的阈值(即mAP1)下获得了更好的结果。尽管如此,所提出的方法在不需要对地图元素进行精细建模的情况下可以优于所有这些方法。这意味着我们的实例查询和改进的编码器有利于更准确的预测。我们的方法的推理速度约为18FPS,满足了许多场景的效率要求。
为了验证所提出的SGQ解码器的有效性,它被集成到MapTR和MapTRv2中,并且除了解码器之外的所有其他设置都保持不变。相应的方法分别表示为MapTR+SGQ和MapTRv2+SGQ。它们的性能和相对改进也列在表1中。对于MapTR+SGQ,当使用ResNet50训练24个时期时,我们的解码器有助于提高两个阈值的7.0%mAP以上。在其他设置下,SGQ解码器也可以显著增强MapTR。虽然MapTRv2在解码器中使用解耦的自注意和一些辅助监督来改善结果,但简单地用我们的解码器替换它们的解码器仍然可以更进一步,特别是对于在更严格阈值下的评估。对于推理速度,与原始的MapTR或MapTRv2相比,引入我们的解码器只会稍微慢一点。
一些定性结果如图4所示。在第一行中,比较方法对于前向感测具有可接受的结果,而只有所提出的方法对于环视感知获得了令人满意的结果。第二行展示了一个复杂的交叉场景。我们的方法比比较方法获得了更令人满意的结果。更多的结果可以在补充材料中找到。
Argoverse 2的结果。在表2中,我们提供了Argoverse 2的实验结果。这些测试都是以ResNet50为骨干训练的6个时期。由于Argoverse 2提供3D矢量化地图元素作为地面实况,因此可以像MapTRv2中那样直接预测3D地图元素(dim=3)。对于2D和3D预测,所提出的MapQR都实现了最佳性能,尤其是对于更严格的阈值(mAP1)。补充材料中包含了更详细的实验结果。
在本文中,我们探索了在在线地图构建任务中获得更好性能的查询机制。受类DETR体系结构前沿研究的启发,我们为解码器设计了一种新颖的分散和聚集查询。因此,在交叉关注中,针对同一实例的每个点查询共享具有不同位置信息的相同内容信息,这些位置信息嵌入于不同的参考点。我们证明了SOTA方法的性能可以通过将它们与我们的解编码器相结合来进一步提高。随着我们对BEV编码器的改进,我们的新框架MapQR也在nuScenes和Argoverse 2中获得了最佳结果。
[1] Leveraging Enhanced Queries of Point Sets for Vectorized Map Construction
投稿作者为『自动驾驶之心知识星球』特邀嘉宾,欢迎加入交流!
① 全网独家视频课程
BEV感知、毫米波雷达视觉融合、多传感器标定、多传感器融合、多模态3D目标检测、车道线检测、轨迹预测、在线高精地图、世界模型、点云3D目标检测、目标跟踪、Occupancy、cuda与TensorRT模型部署、大模型与自动驾驶、Nerf、语义分割、自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习)
网页端官网:www.zdjszx.com② 国内首个自动驾驶学习社区
国内最大最专业,近2700人的交流社区,已得到大多数自动驾驶公司的认可!涉及30+自动驾驶技术栈学习路线,从0到一带你入门自动驾驶感知(2D/3D检测、语义分割、车道线、BEV感知、Occupancy、多传感器融合、多传感器标定、目标跟踪)、自动驾驶定位建图(SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案、大模型、端到端等,更有行业动态和岗位发布!欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频
③【自动驾驶之心】技术交流群
自动驾驶之心是首个自动驾驶开发者社区,聚焦2D/3D目标检测、语义分割、车道线检测、目标跟踪、BEV感知、多模态感知、Occupancy、多传感器融合、transformer、大模型、在线地图、点云处理、端到端自动驾驶、SLAM与高精地图、深度估计、轨迹预测、NeRF、Gaussian Splatting、规划控制、模型部署落地、cuda加速、自动驾驶仿真测试、产品经理、硬件配置、AI求职交流等方向。扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)
④【自动驾驶之心】平台矩阵,欢迎联系我们!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。