写在前面 & 笔者随笔
在自动驾驶的规划任务中,地图信息的重要性是不言而喻的。但是传统的SLAM离线建高精地图,不仅流程也复杂,成本也比较昂贵,所以行业里大家都在“卷”无图NOA。在线构建地图信息,车道线、斑马线、道路路沿等等,也得到越来越多的关注。HDMapNet, VectorMapNet, MapTRv2等等都是一些先前之作。这篇论文还是把静态地图的信息,用2D的vector来表示,通过网络的设计,提升了在 nuScenes 和 Argoverse 2数据集上的精度,实现SOTA。接下来,笔者将从相关工作(前人怎么做?)、论文动机 (为什么要做?)、论文方法(具体怎么做?)和论文结果(做的怎么样?)这三个方面,阐述这项工作。
相关工作
矢量化高精地图的构建
HDMapNet 涉及语义分割和实例编码的后处理过程,使地图能够以矢量化形式表示静态元素。后续研究普遍采用端到端网络来实现高精地图构建。有几种方法使用贝塞尔曲线 (Bezier curve) 来表示地图实例并通过参数曲线估计来预测高清地图。另一种主流的方法是将地图元素表示为 2D 向量。VecterMapNet 将地图构建构建为矢量检测问题。MapTR 和 MapTRv2 完成了地图向量表示,并以更具体的方式细化了整个检测流程。
跨视图信息利用
跨视图信息的利用是地图学习领域的一个典型主题。PyOccNet 通过金字塔网络将透视图( perspective-view,PV)特征转换为 BEV,保留输入中的多尺度信息。现有的跨视图变换会激活不同视图特征之间的相互响应,以增强目标域中的特征。也有些论文在地图视图下实现分割时涉及图像视图特征和相机编码。BEVFormerV2 是对 PV 特征进行后处理和编码,从而增强了网络对 BEV 特征的解码能力。ScalableMap 在源自 PV 特征的两个分支上采用融合模块来增强 BEV 特征。
论文动机
对于在线地图生成的任务,之前的一些论文通常可以分为以下三个步骤:
-
图像主干网络,用于从输入图像中提取透视图 (PV) 特征;
-
交叉视图转换网络,用于将 PV 特征投射到鸟瞰图;
-
基于transformer的 BEV 解码器,用于生成最终的地图预测。
然而,交叉视图转换网络的复杂性在前阶段数据丢失方面带来了重大挑战,特别是 PV 特征。以 MapTRv2 为例,这种先验损失问题通常表现为输入 PV 图像与最终地图预测之间的差异。如下图,蓝色区域中突出显示的车道分隔线在左图中可见,但在 MapTRv2 中却无法检测到。此外,黄色圆圈指示的道路边界在右图中似乎超出了交叉口,但 MapTRv2 将其错误预测为一个小实例。
直观地讲,上述前阶段数据丢失问题可以通过再次利用具有空间先验的 PV 特征来解决。然而,值得注意的是,PV 特征通常包含大量来自天空和建筑物等不相关类别的冗余信息,因为 BEV 地图预测只需要地图元素。相反,尽管跨视图转换网络产生的 BEV 特征表示遭受先验损失,但与 PV 特征相比,它会关注更有意义和更复杂的元素。那么问题就来了:我们如何才能有效地保留 PV 和 BEV 特征中包含的真正有用的信息呢?这就促使了这篇工作 ——
Hybri
d approach of HD
Map
construction (
HybriMap
)。
简单来说,该模型结构涉及一个并行通道,来充分利用 PV 和 BEV 的特征来有效构建高清地图。作者设计了一个 Dual Enhancement Module (DEM),通过显式集成混合特征和隐式升级 BEV 特征来实现特征增强。DEM 的显式分支融合从 PV 特征获得集成位置编码,并协助后续解码;隐式分支专注于提取 BEV 特征中的有价值线索。模型具体结构和方法见下一章节。
论文方法
模型输入:来自 N 个相机的 RGB 图片;
模型输出:
个地图实例, 有
个类别, 每个实例由
个 2 D向量来表示。
模型结构主要包括以下几个模块,按顺序分为:
-
Image Backbone:
输入多视角的图片, 用 Resnet50 提取图片特征, 得到 PV 特征
;
-
PV-to-BEV:
从 PV 特征中提取 BEV 特征
,作者使用 LSS 作为默认方法;
-
Dual Enhancement Module:
这个模块, 用上述两个步骤得到的特征, 作为输入, 输出两个东西:集成位置编码 (Integrated Positional Embedding)
和增强版的 BEV 特征。具体做法, 待会细说;
-
Map Element Decoder:
这个模块是基于transformer设计的解码器, 直接输出所需的预测值。利用了 hierarchical query
作为query 和 增强版 BEV 特征作为 value。位置编码使用了全局可学习的位置编码, 配合上步骤 3 中输出的集成位置编码。
关于 Dual Enhancement Module
那么具体这个 Dual Enhancement Module 模块怎么设计的呢?详见下面这张图:
BEV 特征会 downsample 得到
, 再 upsample, 拼接原来的特征, 经过
的卷积得到一个增强版 BEV 特征。与此同时,
会用到相机参数, 投影到图片坐标系, 与原来得到的 PV 特征, 生成一个 heatmap, 然后再转化成一个集成位置编码。值得一提的是, 这里的 heatmap 是会被监督的。
关于Integrated Positional Embedding
PV 和 BEV 信息被显式合并在 DEM 的这个分支中生成集成位置编码。Deformable DETR 中提出,位置编码不仅充当输入信息的装饰元素,而且还在生成参考点方面发挥作用,而这些参考点会作为地图向量的初始估计。通过将混合特征合并到位置编码中,解码的特征表示和向量估计变得更容易接受从混合信息导出的线索。
假设
是
个级联的卷积层。首先用多个卷积层从 BEV 特征
中下采样得到
:
这里的
是一个预先定义好的下采样系数。将
投影到透视视角, 通过给一个固定的高度, 将一个
坐标
用 相机的参数
投影到像素坐标系:
对于每个类别, 都会生成一个 PV 特征, 表示为
。这个特征图会由
来经过 MLP 编码:
这个式子中的
和
的关系,满足上述投影关系。
表示类别的index。
作者获得 integrated heatmap
就是将 PV 特征
和这个
融合到一起:
正如上述所说, 这个
是会被监督的。最终的集成位置编码就是由这个
得来的:
作者可视化了 heatmap,如下图(a)所示。可以看到,热强度分布与透视图中的地图实例之间存在很强的相关性。例如,在左图中的人行横道附近和两个城市的道路边界附近都有着更高的热强度。由于集成位置编码是直接从集成热图转换而来的,因此它本质上包含了可靠的融合混合先验。因此,将混合特征集成到位置编码的形成中,从两个角度强制解码由高质量先验指导,从而在BEV特征上实现高级解码性能。
关于 Enhancement BEV Feature
在DEM的框架内, BEV特征的隐式增强是通过利用源自BEV特征的BEV Enhancement Map
来实现的。然而, 由于增强特征
和受监督的集成热图之间的内在关系, BEV增强图
受到直接影响, 有意加强了BEV特征的表示。因此, 在混合输入的指导下, 以间接方式有效地增强了BEV的功能。
其中
表示上采样层, “Cat"表示两部分的特征拼接融合。得到的强化版 BEV 特征
最终会被送入地图元素解码器得到预测值。
上图的(b)和(c)直观地描绘了隐性增强前后BEV特征的差异。与(b)中原有的BEV特征相比,(c)中增强的BEV特征更强调地图实例信息的描述,特别是在道路边界和人行横道附近。就结果而言,这种通过隐式增强对BEV特征的选择性强调,本质上产生了一种与实际地图分布更紧密的表示。
关于loss
-
Heatmap Loss:
Heatmap Loss 的目的是限制 DEM 中的增强过程。heatmap 与集成位置编码和 BEV 增强图密切相关。为了保证混合信息对
的适当影响, 它由地图向量中存在的关键点形成的热力图进行监督。具体的做法和 centerpoint 很类似, 以地图向量 ground truth 的关键点为中心, 用恒定偏差的高斯核来投射到热力图上,最后用 focal loss 来计算损失反传: