当前页面

CenterNet思想究竟有多少花样?看CenterFormer在3D检测全新SOTA

AI技术
2022-09-20 10::07


Query-based Transformer 在许多图像域任务中显示出构建远程注意力的巨大潜力,但由于点云数据的庞大规模,在基于 LiDAR 的 3D 目标检测中很少被考虑。在本文中提出了 CenterFormer,一种 Center-based Transformer 网络,用于 3D 目标检测。

CenterFormer 首先使用Center Heatmap在标准的基于Voxel的点云编码器之上选择中心候选。然后它使用中心候选的特征作为query embeddingTransformer中。为了进一步聚合来自多个帧的特征,作者设计了一种通过交叉注意力融合特征的方法。最后,添加回归头来预测输出中心特征表示的边界框。

本文的设计降低了Transformer结构的收敛难度和计算复杂度。结果表明,在Anchor-free目标检测网络的强基线方面有显著改进。CenterFormerWaymo 开放数据集上为单个模型实现了最先进的性能,验证集的 mAPH 为 73.7%,测试集的 mAPH 为 75.6%,显著优于所有先前发布的 CNN 和基于 Transformer 的方法。

简介

LiDAR 是自动驾驶中重要的传感和感知工具,因为它能够提供扫描环境的高精度 3D 点云数据。基于 LiDAR 的 3D 目标检测旨在检测 LiDAR 点云中目标的边界框。与图像域目标检测相比,LiDAR 数据中的扫描点可能稀疏且不规则分布,具体取决于与传感器的距离。最近的方法依赖于将点云离散化为Voxel或投影鸟瞰图 (BEV) 特征图,以使用 2D3D 卷积网络。有时,它需要二阶段的 RCNN 式细化网络来补偿体素化中的信息损失。然而,当前的两阶段网络缺乏上下文和全局信息学习。他们只使用提案 (RoI) 的局部特征来细化结果。忽略其他框或相邻位置中也可能有利于细化的特征。而且,自动驾驶场景的环境不是静止的。当使用一系列扫描时,局部特征学习有更多的限制。

在图像领域,Transformer 编解码器结构已成为检测和分割任务的竞争方法。Transformer 能够在整个特征图和不同的特征域中捕获远程上下文信息。最具代表性的方法之一是 DETR,它使用参数查询直接从编码器-解码器中学习目标信息。DETR 作为一个集合匹配问题进行端到端训练,以避免任何手工过程,如非最大抑制 (NMS)。然而,DETR 风格的编码器-解码器网络存在2个主要问题:首先,计算复杂度随着输入大小的增加呈二次方增长。这限制了Transformer仅将低维特征作为输入,从而导致对小目标的性能低下。其次,query embedding是通过网络学习的,因此训练很难收敛。

能否为 LiDAR 点云设计一个 Transformer 编解码器网络,以便更好地感知点云数据的全局连接?考虑到 LiDAR 点云数据的绝对大小,以及要检测目标的相对较小的大小,VoxelBEV 特征图表示需要足够大,以保持这些目标的特征是可分离的。因此,由于输入大小较大,在特征图上使用Transformer编码器结构是不切实际的。此外,如果对 Transformer 解码器使用较大的特征图,则query embedding也难以在训练期间专注于有意义的注意力。

为了缓解这些收敛问题,一种解决方案是为Transformer提供良好的初始query embedding,并将注意力学习区域限制在更小的范围内。在 Center-based 3D 检测网络中,目标中心的特征用于捕获所有目标信息,因此中心特征可以很好地替代目标特征嵌入。多尺度图像金字塔和可变形卷积是增加特征学习的感受野而不显著增加复杂度的两种常用方法。最近的一些工作在Transformer网络中应用了这两种方法。

考虑到上述方面,作者提出了一个Center-basedTransformer网络,称为Center TransformerCenterFormer),用于 3D 目标检测。具体来说,首先使用标准的基于Voxel的骨干网络将点云编码为 BEV 特征表示。接下来,采用多尺度中心提议网络将特征转换为不同尺度并预测初始中心位置。提议中心的特征作为query embedding被馈送到Transformer解码器中。在每个Transformer Block中,使用可变形的交叉注意力层来有效地聚合来自多尺度特征图的特征。然后输出对象表示回归到其他属性以创建最终预测。

如图 1 所示,本文的方法可以对目标级连接和远程特征注意力进行建模。为了进一步探索 Transformer 的能力,还提出了一种多帧设计,通过交叉注意里融合来自不同帧的特征。在大规模 Waymo 开放数据集和 nuScenes 数据集上测试 CenterFormer 大大优于流行的基于中心的 3D 检测网络,后者在公共基准测试中占主导地位,实现了最先进的性能,在 waymo 验证和测试集上分别具有 73.7% 和 75.6% 的 mAPH。

方法的贡献可以总结如下:

  • 为 3D 检测引入了一个基于中心的Transformer网络。

  • 使用中心特征作为初始query embedding,以促进Transformer的学习。

  • 提出了一个多尺度交叉注意力层来有效地聚合相邻特征,而不会显著增加计算复杂度。

  • 建议使用交叉注意力Transformer来融合来自不同帧的目标特征。

本文方法

2.1、准备工作

基于中心的 3D 检测是由最近的Anchor-Free图像目标检测方法推动的。它通过预测 BEV 特征图上的Heatmap来检测每个目标作为中心关键点。给定一个普通Voxel点云特征编码器 的输出,其中 h 和 w 是 BEV 图大小,c 是特征维度,基于中心的 LiDAR 检测通过两个分离的Head预测Center Heatmap 和框回归 Center Heatmap H 有 l 个通道,每个目标类一个。在训练中,ground truth 是从带注释框中心的高斯热图生成的。框回归 B 包含 8 个目标属性:从预测网格中心到GT框中心的网格偏移量、目标的高度、3D 大小和偏航旋转角度。在评估过程中,它采用前 N 个最高Heatmap分数的类和回归预测,并使用 NMS 预测最终的边界框。

Transformer Decoder 基于query-key pairwise attention将源表示中的特征聚合到每个query。每个 Transformer 模块由2层组成:多头自注意力层、多头交叉注意力层和前馈层。在每一层中,还有一个跳跃连接,用于连接输入和输出特征以及层归一化。令 query特征和key特征。多头注意力可以表述为:

其中 i 和 j 分别是query特征和source特征的索引,m 是Head索引,attending key特征的集合,σ 是 softmax 函数,d 是特征维度, 是位置嵌入,W 是可学习的权重。在自注意力层中,query特征和key特征来自同一组query特征嵌入,而在交叉注意力层中,key特征集是source特征表示。

2.2、Center Transformer

模型的架构如图 2 所示。使用标准的基于稀疏体素的骨干网络将每个点云处理成 BEV 特征表示。然后将 BEV 特征编码为多尺度特征图并预测中心提议。然后将提议的中心用作嵌入在Transformer解码器中的query特征,以聚合来自其他中心和多尺度特征图的特征。最后,使用回归头来预测每个增强中心特征的边界框。在多帧 CenterFormer 中,帧的最后 BEV 特征在中心预测阶段和交叉注意力Transformer中融合在一起。

1、Multi-scale Center Proposal Network

DETR 风格的 Transformer 编码器需要将特征图压缩成小尺寸,以便计算成本可以接受。这使得网络失去了对检测小物体至关重要的细粒度特征,这些小物体通常占据 BEV 地图中小于 1% 的空间。因此,提出了一个多尺度中心提议网络(CPN)来代替 BEV 特征的Transformer编码器。为了准备多尺度特征图,使用特征金字塔网络将 BEV 特征表示处理成3个不同的尺度。在每个尺度结束时,添加一个卷积块注意力模块 (CBAM),以通过通道和空间注意力来增强特征。

使用最高比例特征图 C 上的中心Head来预测目标中心的 l 通道Heatmap。每个通道包含一个类的Heatmap分数。将前 N 个Heatmap分数的位置作为中心提案。在实验中凭经验使用 N = 500。

2、Multi-scale Center Transformer Decoder

在建议的中心位置提取特征作为Transformer解码器的query embedding。使用线性层将中心的位置编码为位置嵌入。传统的 DETR 解码器使用可学习的参数初始化query。因此,在解码器中获得的注意力权重在所有特征中几乎相同。通过使用中心特征作为初始query embedding,可以引导训练专注于包含有意义的目标信息的特征。

vanilla Transformer 解码器中使用相同的自注意力层来学习目标之间的上下文注意力。计算中心query对所有多尺度 BEV 特征的交叉注意力的复杂度为 。由于 BEV 特征图的分辨率需要相对较大以保持小目标的细粒度特征,因此将所有 BEV 特征用作attending keypoints是不切实际的。或者,将attending keypoints限制在每个尺度的中心位置附近的一个 3×3 小窗口,如图 3 所示。这种交叉注意力的复杂度为 ,比正常实现更有效。由于具有多尺度特征,因此能够在提议的中心周围捕获广泛的特征。多尺度交叉注意力可以表述为:

其中p表示中心建议,这里的是中心周围的窗口,s是尺度的索引。前馈层也保持不变。

3、Multi-scale Deformable Cross-attention layer

Deformable DETR 的启发还使用了一个可变形的交叉注意力层来自动对attending keypoints进行采样。图 3 显示了可变形交叉注意力层的结构。与普通的多头交叉注意力层相比,可变形交叉注意力层使用线性层来学习参考中心位置 p 在所有头和尺度上的 2D 偏移量 Δp。p+Δp 处的特征将通过双线性采样提取为交叉注意力attending特征。使用线性层直接从query embedding中学习注意力分数。来自多个尺度的特征聚合在一起形成交叉注意力层输出:

其中,为多尺度BEV特征,C(p)为中心特征,为注意力权重。在实验中使用了K = 15。

2.3、Multi-frame CenterFormer

多帧通常用于 3D 检测以提高性能。当前基于 CNN 的检测器无法有效融合快速移动物体的特征,而由于注意力机制,transformer 结构更适合融合。为了进一步探索 CenterFormer 的潜力,提出了一种使用交叉注意力transformer的多帧特征融合方法。如图 2 所示,使用相同的骨干网络单独处理每个帧。前一帧的最后一个 BEV 特征被转换为当前坐标,并与中心头和交叉注意力层中的当前 BEV 特征融合。

由于目标的移动,目标的中心可能会在不同的帧中移动。由于只需要预测当前帧中的中心,因此在中心head中使用空间感知融合来减轻错位误差。如图 4 所示,空间感知模块使用与 CBAM 类似的空间注意层,根据当前的 BEV 特征计算像素级注意。将当前的 BEV 特征和先前 BEV 特征甲醛连接起来,并使用一个额外的卷积层将它们融合在一起。还根据它们的相对时间将时间嵌入添加到 BEV 特征中。最后,将输出融合特征馈送到中心Head以预测中心候选者。

在交叉注意力层中,使用中心提案的位置来查找对齐的前一帧中的相应特征。提取的特征将被添加到attending key中。由于正常的交叉注意力设计在靠近中心位置的小窗口中使用特征,因此如果目标由于快速移动而超出窗口区域,则它的可学习性有限。同时,可变形交叉注意力能够模拟任何级别的运动,更适合长时间范围的情况。因为多帧模型只需要前一帧的最终 BEV 特征,所以通过将 BEV 特征保存在内存库中,很容易部署到在线预测中。

2.4、Loss Functions

除了一般的分类和回归损失函数外,还添加了两个额外的损失函数来更好地解释基于中心的目标检测。首先,受 CIA-SSD 设计的启发,将 IoU-aware confidence rectification 模块从其他方法的第二阶段移至回归Head。更具体地说,为每个边界框提案预测一个 IoU 分数,在Smooth L1 Loss 中,预测和所有GT之间的最高 IoU 受到监督。在评估过程中,使用 用预测的 IoU 分数校正置信度分数,其中 α 是置信度分数,β 是控制校正程度的超参数。

其次,与 CenterNet3d 类似,还在center heatmap head旁边添加了一个corner heatmap head作为辅助监督。对于每个框,生成4个边界框边缘中心和目标中心的corner heatmap,使用相同的方法绘制center heatmap,除了高斯半径是一半大小。在训练期间,用 MSE 损失在ground truth heatmap score 0 的区域上监督corner预测。

模型中使用的最终损失是以下4部分的加权组合:

focal loss和 L1 损失用于heatmap分类和框回归。在实验中,heatmap分类损失、框回归损失、IoU 校正损失和角点分类损失的权重分别为 [1, 2, 1, 1]。

实验

3.1、Object Detection Results

3.2、消融实验

参考

[1].CenterFormer: Center-based Transformer for 3D Object Detection[2].https://github.com/TuSimple/centerformer

集智书童
16篇文章
关注公众号
集智书童
16篇文章
集智书童的公众号