设计了一种层次化查询嵌入方案,用于灵活地编码结构化地图信息,并通过层次化二部匹配实现地图元素的有效学习。
-
提出了一种统一的置换等价建模方法,用于地图元素,即将地图元素建模为一个具有一组等价置换的点集,这准确地描述了地图元素的形状并稳定了学习过程。
-
基于这种新颖的建模方法,设计了MapTR,一种用于高效在线矢量化高清地图构建的结构化端到端框架。作者设计了一种分层查询嵌入方案,以灵活地编码实例级和点级信息,执行地图元素学习的分层二分匹配,并利用提出的点对点损失和边缘方向损失对点和边缘级别的几何形状进行监督。
-
MapTR是首个实时且最先进的矢量化高清地图构建方法,在复杂和各种驾驶场景中都具有稳定而强大的性能。
MAPTR
置换等价建模
MapTR旨在以统一的方式对高清地图进行建模和学习。高清地图是一组矢量化的静态地图元素,包括人行横道、车道分隔线、道路边界等。为了进行结构化建模,MapTR将地图元素几何抽象为封闭形状(例如人行横道)和开放形状(例如车道分隔线)。通过沿着形状边界顺序采样点,封闭形状元素被离散化为多边形,而开放形状元素被离散化为折线。
首先,多边形(polygon)和折线(polyline)都可以被表示为有序点集
,其中 Nv 表示点的数量(请参见图 3(Vanilla))。然而,点集的排列并没有被明确定义,并且也不唯一。对于多边形和折线存在许多等效的排列方式。例如,如图 2(a)所示,对于两个相对车道之间的车道分隔线(折线),很难确定其方向。车道分隔线的两个端点都可以被视为起点,点集可以沿着两个方向组织。在图 2(b)中,对于行人横道(多边形),点集可以按照两个相反的方向(逆时针和顺时针)组织。而且,循环地改变点集的排列对多边形的几何形状没有影响。将固定的排列强加为监督是不合理的。这种强加的固定排列与其他等效排列相矛盾,阻碍了学习过程。
图 2. 地图元素起点和方向歧义的典型案例
图 3. MapTR 置换等价建模示意图。地图元素被几何抽象并离散化为折线和多边形。MapTR 使用 (V, Γ)(一个点集 V 和一组等价置换 Γ)对每个地图元素进行建模,从而避免了歧义并稳定了学习过程。
具体来说,对于折线元素(参见图3(左)),Γ 包括两种类型的等效排列:
对于多边形元素(参见图3(右)),Γ 包括 2 × Nv 种类型的等效排列:
通过引入等效排列的概念,MapTR 统一地对地图元素进行建模,解决了模糊性问题。MapTR 进一步引入了层次双分图匹配)用于地图元素学习,并设计了结构化的编码器-解码器 Transformer 架构来高效地预测地图元素(见第3.4节)。
HIERARCHICAL MATCHING
MapTR在单次推断中并行地推断出一个固定大小的地图元素集合N,遵循DETR的端到端范例。N被设置为大于场景中地图元素的典型数量。作者用 Y ^ = { y ^ i } i = 0 N − 1 \hat Y=\{ \hat y_i\}_{i=0}^{N-1} Y^={y^i}i=0N−1 表示N个预测的地图元素的集合。真值(GT)地图元素的集合被用 ∅(无目标)填充,形成一个大小为 N 的集合,用 Y = { y i } i = 0 N − 1 Y=\{ y_i\}_{i=0}^{N-1} Y={yi}i=0N−1 表示。其中, y i = ( c i , V i , Γ i ) y_i =(c_i,V_i,Γ_i) yi=(ci,Vi,Γi),其中 c i c_i ci, V i V_i Vi 和 Γ i Γ_i Γi 分别是真值地图元素 的目标类别标签、点集和排列组。 y ^ i = ( p ^ i , V ^ i ) \hat y_i = (\hat p_i,\hat V_i) y^i=(p^i,V^i),其中 p ^ i \hat p_i p^i 和 V ^ i \hat V_i V^i 分别是预测的分类分数和预测的点集。为了实现结构化的地图元素建模和学习,MapTR 引入了层次双分图匹配,即按顺序进行实例级别的匹配和点级别的匹配。
Instance-level Matching.
首先,我们需要在预测地图元素 y ^ i {\hat y_i} y^i 和 GT 地图元素 y i {y_i} yi 之间找到一个最优的实例级标签分配 π ^ \hat π π^。 π ^ \hat π π^ 是 N 个元素的排列 ( π ^ ∈ Π N \hat π ∈ Π_N π^∈ΠN),具有最低的实例级匹配成本:
L
i
n
s
m
a
t
c
h
(
y
^
π
(
i
)
,
y
i
)
\ L_{ins_match}(\hat y_{π(i)}, y_i)
Linsmatch(y^π(i),yi) 是预测
y
^
π
(
i
)
\hat y_{π(i)}
y^π(i) 和 GT
y
i
y_i
yi 之间的成对匹配代价,它同时考虑了映射元素的类标签和点集的位置:
L F o c a l ( p ^ π ( i ) , c i ) \ L_{Focal}(\hat p_{π(i)}, c_i) LFocal(p^π(i),ci) 是类匹配代价项,定义为预测分类得分 p ^ π ( i ) \hat p_{π(i)} p^π(i) 和目标类标签 c i c_i ci 之间的 Focal Loss 。 L p o s i t i o n ( V ^ π ( i ) , V i ) \ L_{position}(\hat V_{π(i)}, V_i) Lposition(V^π(i),Vi)是位置匹配代价项,反映预测点集 V ^ π ( i ) \hat V _{π(i)} V^π(i) 和 GT 点集 V i V_i Vi 之间的位置相关性(使用匈牙利算法来查找遵循 DETR 的最优实例级分配 π ^ \hat π π^。
Point-level Matching.
实例级匹配后,每个预测图元素
y
^
π
^
(
i
)
\hat y_{\hat π(i)}
y^π^(i) 被分配一个GT图元素
y
i
y_i
yi。然后,对于每个被分配了正标签的预测实例(
c
i
≠
∅
c_i ≠ ∅
ci=∅),我们进行点级匹配,以在预测点集
V
^
π
^
(
i
)
\hat V_{\hat π(i)}
V^π^(i) 和GT点集
V
i
V_i
Vi 之间找到最优点对点分配
γ
^
∈
Γ
\hat γ ∈ Γ
γ^∈Γ。
γ
^
\hat γ
γ^ 在预定义的置换组
Γ
Γ
Γ 中选择,并且具有最低的点级匹配成本:
其中,
D
M
a
n
h
a
t
t
a
n
(
v
^
j
,
v
γ
(
j
)
)
D_{Manhattan}(\hat v_j , v_{γ(j))}
DManhattan(v^j,vγ(j)) 是预测点集 V 的第
γ
(
j
)
γ(j)
γ(j)个点之间的曼哈顿距离。曼哈顿距离是两个点在直角坐标系中沿坐标轴方向的绝对差值的总和,也称为城市街区距离
TRAINING LOSS
MapTR是基于最优的实例级别和点级别分配进行训练的。损失函数由三部分组成:分类损失、点对点损失和边缘方向损失:
其中,λ、α 和 β 是用于平衡不同损失项的权重。
- 分类损失
对于实例级别的最优匹配结果 π ^ \hat \pi π^, 每个预测的地图元素被赋予一个类别标签。分类损失是一个由 Focal Loss 构成的项,其表达式为:
- 点对点损失
点对点损失监督每个预测点的位置。对于每个索引为 i 的 GT 实例,根据点级最优匹配结果 γ ^ i \hatγ_i γ^i
,每个预测点 v ^ π ˆ ( i ) \hat v_{πˆ(i)} v^πˆ(i), j 被分配一个 GT 点 v i , γ ^ i ( j ) v_i, \hat γ_{i(j)} vi,γ^i(j)。点对点损失定义为计算每个分配点对之间的L1 距离:
- 边缘方向损失
点对点损失只监督折线和多边形的节点点,而不考虑边(相邻点之间的连接线)。为了准确表示地图元素,
边的方向非常重要。因此,我们进一步设计了边缘方向损失,以监督更高边缘级别的几何形状。具体来说,我们考虑成对预测边 e ^ π ^ ( i ) , j \hat e_{\hat π(i),j} e^π^(i),j 和 GT 边 e i , γ ^ i ( j ) e_{i,\hat γi(j) } ei,γ^i(j)的余弦相似度:
ARCHITECTURE
图 4. MapTR 的整体架构。MapTR 采用编码器-解码器范式。地图编码器将传感器输入转换为统一的 BEV 表示。地图解码器采用分层查询嵌入方案,对地图元素进行显式编码,并基于置换等价建模进行分层匹配。MapTR 是完全端到端的。其流程高度结构化、紧凑且高效。
4.1 输入模态
MapTR将车载摄像头的全景图像作为输入。MapTR还兼容其他车载传感器(例如,LiDAR和RADAR)。将MapTR扩展到多模态数据非常简单。由于合理的排列等效建模,即使只有摄像头输入,MapTR的性能也显著优于其他具有多模态输入的方法。
4.2 Map编码
MapTR的地图编码器从多个车载摄像头的图像中提取特征,并将这些特征转换为统一的特征表示,即鸟瞰图(BEV)表示。给定多视角图像 I = I 1 , . . . , I K I = {I_1, . . . , I_K} I=I1,...,IK ,作者利用一个传统的骨干网络来生成多视角特征图 。然后,2D图像特征 F = F 1 , . . . , F K F = {F_1, . . . , F_K} F=F1,...,FK被转换为 BEV 特征 B ∈ R ( H × W × C ) B ∈ R^{(H×W×C)} B∈R(H×W×C)。默认情况下,作者采用 GKT (Chen等,2022b) 作为基本的2D到BEV转换模块,考虑到它易于部署和高效的特性。MapTR兼容其他转换方法,并且能够保持稳定的性能,例如CVT (Zhou & Kr¨ahenb¨uhl, 2022)、LSS (Philion & Fidler, 2020; Liu等,2022c; Li等,2022b; Huang等,2021)、Deformable Attention (Li等,2022c; Zhu等,2021) 和 IPM (Mallot等,1991)。作者在表4中展示了消融研究结果。
4.3 Map解码
作者提出了一种分层查询嵌入方案,用于显式编码每个地图元素。具体来说,定义了一组实例级别查询
q
i
i
n
s
i
=
0
N
−
1
{q^{ins}_i}^{N−1}_{i=0}
qiinsi=0N−1 和一组点级别查询
q
j
p
t
j
=
0
N
v
−
1
{q^{pt}_j}^{N_v−1}_{j=0}
qjptj=0Nv−1,这两组查询在所有实例之间共享。每个地图元素(索引为 i)对应于一组分层查询
q
i
j
h
i
e
j
=
0
N
v
−
1
{q^{hie}_{ij}}^{N_v−1}_{j=0}
qijhiej=0Nv−1 。第 i 个地图元素的第 j 个点的分层查询的表达式为:
Map解码器包含若干级联的解码器层,它们通过迭代更新分层查询。在每个解码器层中,作者采用多头自注意力机制(MHSA),让分层查询相互交换信息(包括实例间和实例内)。然后,采用可变形注意力机制(Deformable Attention)(Zhu等,2021)来让分层查询与BEV特征进行交互(这个思想受到BEVFormer(Li等,2022a)的启发)。每个查询
q
i
j
h
i
e
q^{hie}_{ij}
qijhie预测参考点
p
i
j
p_{ij}
pij的的二维归一化 BEV
(
x
i
j
,
y
i
j
)
(x_{ij}, y_{ij})
(xij,yij)坐标 。然后,作者在参考点周围采样 BEV 特征,并更新查询。这样,可以通过迭代更新查询和交互 BEV 特征来逐步优化地图元素的表示,从而实现更好的地图元素建模。
Map元素通常具有不规则的形状,需要具备长程上下文。每个地图元素对应于一组参考点 { p i j } j = 0 N v − 1 \{p_{ij} \}^{N_v -1}_{j=0} {pij}j=0Nv−1,这些参考点具有灵活和动态的分布。这些参考点可以适应地图元素的任意形状,并捕获用于地图元素学习的丰富上下文信息。通过使用参考点,MapTR可以更好地对地图元素进行建模和表示,从而提高地图理解的性能。
MapTR的预测头非常简单,由一个分类分支和一个点回归分支组成。分类分支用于预测实例的类别得分,而点回归分支用于预测点集 V ^ \hat V V^ 的位置。对于每个地图元素,点回归分支输出一个2Nv维的向量,表示Nv个点的归一化BEV坐标。这样,MapTR可以直接输出地图元素的类别和位置信息,实现对地图元素的高效预测。
实验
1.数据和评价准则
作者在流行的nuScenes(Caesar等,2020年)数据集上评估了MapTR,该数据集包含大约1000个场景,每个场景的持续时间约为20秒。关键样本以2Hz的频率进行注释。每个样本都有来自6个摄像头的RGB图像,覆盖了自车的360°水平视野。沿袭之前的方法(Li等,2022a; Liu等,2022a),作者选择了三种地图元素进行公平评估——人行横道,车道分隔线和道路边界。感知范围为X轴[-15.0m,15.0m],Y轴[-30.0m,30.0m]。作者采用平均精度(Average Precision,AP)来评估地图构建的质量。用Chamfer距离(DChamfer)来确定预测和GT是否匹配。作者计算了在几个DChamfer阈值(τ ∈ T,T = {0.5,1.0,1.5})下的APτ,然后对所有阈值进行平均得到最终的AP度量:
2. 实现细节
MapTR是使用8个NVIDIA GeForce RTX 3090 GPU进行训练的。作者采用AdamW(Loshchilov和Hutter,2019年)优化器和余弦退火调度。对于MapTR-tiny,作者采用ResNet50(He等,2016年)作为主干网络。作者使用总批量大小为32(包含6个视角图像)来训练MapTR-tiny。所有消融研究都是基于经过24个epochs训练的MapTR-tiny进行的。MapTR-nano是专为实时应用而设计的,作者采用ResNet18作为主干网络。更多详细信息请参阅附录A。
3.MapTR与现有最先进方法的比较
4.消融分析
为了验证不同设计的有效性,作者在nuScenes验证集上进行了消融实验。更多的消融研究结果详见附录B。
排列等价建模的有效性:在表格2中,作者提供了消融实验,以验证所提出的排列等价建模方法的有效性。与传统的建模方法相比,传统方法对点集施加唯一的排列,而排列等价建模解决了地图元素的不确定性,并带来了5.9个mAP的提升。对于人行横道,提升甚至达到了11.9个AP,证明了在建模多边形元素方面的优越性。作者还在图5中可视化了学习过程,展示了所提出的建模方法的稳定性。这些实验结果表明,排列等价建模在地图构建任务中的确起到了积极的作用,使得模型对于输入点集排列的变化具有更好的适应性,并且在建模多边形元素方面表现出优势。如下表:模型方法的消融研究。传统的建模方法对点集施加唯一的排列,导致了不确定性。MapTR引入了排列等价建模来避免这种不确定性,从而稳定了学习过程,并显著提高了性能(+5.9个mAP)。
边缘方向损失的有效性:在表格3中,作者对边缘方向损失权重进行了消融实验。β = 0表示不使用边缘方向损失。而β = 5e^(-3)对应适当的监督权重,并且被设为默认设置。
2D到BEV的转换:在表格4中,作者对2D-to-BEV(二维到鸟瞰图)转换方法进行了消融实验,包括IPM(Inverse Perspective Mapping,透视反投影)(Mallot等,1991年),LSS(Laser Scan Synthesis,激光扫描合成)(Liu等,2022c; Philion & Fidler,2020年),Deformable Attention(可变形注意力)(Li等,2022c)和GKT(Geometric Key-point Transform)(Chen等,2022b)。作者使用了经过优化的LSS实现(Liu等,2022c),为了与IPM和LSS进行公平比较,GKT和Deformable Attention都采用了单层配置。实验结果显示,MapTR与各种2D-to-BEV方法兼容,并实现了稳定的性能。考虑到GKT易于部署和高效性质,作者将其作为MapTR的默认配置。
总结
MapTR是一个结构化的端到端框架,用于高效的在线矢量化高清地图构建。该框架采用简单的编码器-解码器Transformer架构和分层二部图匹配,通过所提出的排列等价建模来进行地图元素学习。大量实验证明,该方法可以在具有挑战性的nuScenes数据集中准确感知任意形状的地图元素。希望MapTR能够作为自动驾驶系统的基本模块,并推动下游任务(例如运动预测和规划)的发展。