PETR:Position Embedding Transformation forMulti-View 3D Object Detection
全文摘要
本文介绍了一种名为“位置嵌入变换(PETR)”的新方法,用于多视角三维物体检测。该方法将三维坐标的位置信息编码为图像特征,并产生具有三维位置感知能力的特征。通过对象查询可以感知这些特征并进行端到端的目标检测。在标准nuScenes数据集上,PETR实现了最先进的性能(50.4%的NDS和44.1%的mAP),并在基准测试中排名第一。它可以作为未来研究的一个简单而强大的基线。
论文方法
方法描述
该论文提出了一种名为PETR(Panoramic View-based 3D Object Detection Transformer)的方法,用于在全景图像中检测三维物体。其主要流程包括:首先将输入的多张全景图像通过卷积神经网络提取出二维特征图;然后使用相机参数将相机空间中的点映射到世界坐标系,并与二维特征图一起输入到三维位置编码器中,得到三维位置感知特征;接着使用自注意力机制和全连接层来交互这些特征,最后通过分类和回归分支预测目标类别和三维边界框。
方法改进
相比于其他基于Transformer的目标检测方法,PETR引入了3D坐标编码器来建立2D特征图和3D空间之间的联系,从而提高了模型对于场景中物体位置关系的理解能力。此外,PETR还采用了初始化锚点的方式来缓解3D场景下的收敛问题。
解决的问题
传统的基于深度学习的目标检测方法往往只能处理平面图像或单个视角的图像,而无法直接应用于全景图像中的三维物体检测。因此,PETR的提出为全景图像中的三维物体检测提供了一种新的解决方案。同时,由于该方法使用了Transformer结构,可以有效地处理大规模数据集并实现端到端训练,具有一定的普适性和可扩展性。
论文实验
本文主要介绍了基于全局注意力机制的多视角3D目标检测方法PETR,并进行了与现有方法的对比实验。具体来说,作者在nuScenes基准数据集上进行了以下对比实验:
- 与典型单摄像头3D目标检测方法FCOS3D和PGD的比较;
- 与多视角3D目标检测方法DETR3D和BEVDet的比较;
- 对于不同输入大小和不同深度学习模型的性能比较;
- 对于不同组件的Ablation Study(即影响因素分析);
- 最后提供了可视化结果和一些失败案例。
在这些实验中,作者使用了NuScenes官方提供的评估指标,包括NDS(Detection Score)、mAP(Mean Average Precision)、mATE(Mean Average Translation Error)、mASE(Mean Average Scale Error)、mAOE(Mean Average Orientation Error)、mAVE(Mean Average Velocity Error)和mAAE(Mean Average Attribute Error)。通过这些实验,作者得出了以下结论:
- PETR在NuScenes验证集上的表现优于FCOS3D和PGD等典型单摄像头3D目标检测方法,在NDS和mAP两个指标上均取得了更好的成绩;
- PETR在NuScenes测试集上的表现也优于BEVDet等多视角3D目标检测方法,在NDS和mAP两个指标上均取得了更好的成绩;
- PETR可以适应不同的输入大小和不同的深度学习模型,且在相同输入大小下比BEVDet更快;
- 在Ablation Study中,作者发现3D位置编码对模型性能的影响最大,而其他组件的效果相对较弱;
- 可视化结果表明,PETR能够准确地检测出目标并建立不同视角之间的位置关系,但仍然存在一些错误分类和漏检的情况。
总之,本文提出的PETR方法在多视角3D目标检测任务上具有较好的性能表现,同时对于不同组件的影响也有一定的了解。
论文总结
文章优点
该论文提出了一种简单而优雅的多视角三维物体检测框架PETR,通过将二维特征转换为三维位置感知特征来实现端到端检测。相比于DETR3D,PETR避免了复杂的2D-to-3D投影和特征采样过程,并且在推理时可以使用离线生成的三维坐标作为额外的输入位置嵌入,更加易于实际应用。实验结果表明,PETR在标准nuScenes数据集上实现了最先进的性能(50.4% NDS和44.1% mAP),并在3D目标检测排行榜中排名第一。
方法创新点
该论文的方法创新点在于引入了一种新的三维位置感知表示,通过编码三维坐标信息将其嵌入到二维多视图特征中,使得物体查询可以直接更新并产生三维预测。同时,该论文还采用了元学习技术,通过将高分辨率RGB值从低分辨率输入中生成,进一步提高了三维位置感知表示的质量。
未来展望
未来的研究可以从以下几个方面展开:首先,可以探索如何进一步提高三维位置感知表示的质量,例如增加更多的三维位置信息或者采用更高级别的元学习技术;其次,可以考虑如何将该方法扩展到其他领域,例如自动驾驶中的障碍物检测等;最后,可以研究如何将该方法与其他三维物体检测方法结合,以获得更好的性能。
全文翻译
摘要。本文提出了一种多视图三维对象检测的位移嵌入变换(PETR)。PETR将三维坐标的位置信息编码到图像特征中,产生位置感知的三维特征。对象查询可以感知这些位置感知的三维特征,并进行端到端的对象检测。PETR在标准nuScenes数据集上达到了最先进的性能(NDS为50.4%,mAP为44.1%),并在基准测试中排名第一。它可作为未来研究的一个简单而强大的基础。代码可在https://github.com/megvii-research/PETR获得。
关键词:位置嵌入,变压器,三维物体检测
1.介绍
由于其在自动驾驶系统中的低成本,多视图图像的三维对象检测具有吸引力。先前的工作 [6、33、49、34、48] 主要从单目物体检测的角度解决了这个问题。最近,由于其对端到端物体检测的贡献,DETRE[4]引起了广泛关注。在DETRE[4]中,每个对象查询代表一个对象,并与transformer解码器中的二维特征交互以生成预测(见图1 (a))。简单地扩展自DETRE[4]框架,DETRE3D[51]提供了一个直观的解决方案来实现端到端的三维对象检测。由对象查询预测的三维参考点通过相机参数投影回图像空间,并用于从所有相机视图采样二维特征(见图1 (b)) 。解码器将采样的特征和查询作为输入并更新对象查询的表示。
然而,DETRE3D [51] 中的这种2D到3D转换可能会引入几个问题。首先,预测参考点坐标可能不那么准确,导致采样特征超出对象区域。其次,仅收集投影点上的图像特征,这无法从全局视图进行表示学习。此外,复杂的特征采样程序将阻碍检测器的实际应用。因此,在线2D到3D转换和特征采样的端到端3D目标检测框架仍然是一个有待解决的问题。
本文旨在基于DETR [4]开发一个简单的、优雅的三维对象检测框架。我们想知道是否有可能将多视图中的二维特征转换为具有三维感知的特征。在这种情况下,物体查询可以在三维环境中直接更新。我们的工作受到这些隐式神经表示方面的进步[17,8,32]的启发。在MetaSR [17]和LIFF [8]中,高分辨率(HR)RGB值是从低分辨率(LR)输入生成的,通过编码HR坐标信息到LR特征中。在这篇文章中,我们试图通过编码三维位置嵌入(见图1 ©)来将多视图图像中的二维特征转换为三维表示。
为了实现这一目标,首先将相机锥形空间(由不同视图共享)离散化为网格坐标。然后通过不同的相机参数转换这些坐标以获得三维世界空间的坐标。接下来,从主干中提取出的二维图像特征和三维坐标输入到一个简单的三维位置编码器中生成三维位置感知特征。三维位置感知特征与Transformer解码器中的对象查询交互,并且更新的对象查询进一步用于预测对象类别和三维边界框。
图1:DETR、DETR3D和我们提出的PETR的比较。(a)在DETR中,对象查询与二维特征交互,进行二维检测。(b) DETR3D将生成的三维参考点反复投影到图像平面上,并对二维特征进行采样,与解码器中的对象查询交互。© PETR通过将3D位置嵌入(3D PE)编码到2D图像特征中,生成3D位置感知特征。对象查询直接与三维位置感知特征交互,输出三维检测结果。
与DETR3D相比,提出的PETR架构具有许多优势。它保留了原始DETR的端到端精神,并避免了复杂的二维投影和特征采样。在推理时间,三维位置坐标可以离线生成并作为额外输入位置嵌入服务。这相对容易应用于实际应用。总结我们的贡献如下:
我们提出了一个简单而优雅的框架,称为PETR,用于多视图3D物体检测。通过对三维坐标进行编码,将多视图特征转换为三维域。对象查询可以通过与3D位置感知功能交互来更新,并生成3D预测。
提出了一种新的三维位置感知表示,用于多视图三维目标检测。引入了一个简单的隐式函数,将三维位置信息编码为二维多视图特征。
实验表明,PETR在标准nuScenes数据集上达到了最先进的性能(50.4%NDS和44.1% mAP),在3D目标检测排行榜上排名第一。
相关工作
2.1 基于Transformer的对象检测
Transformer [47] 是一种广泛应用于模型长距离依赖的注意力块。在Transformer中,特征通常会添加位置嵌入,为图像[13, 53, 27]、序列[15, 47, 11, 10, 54]和视频[1, 24, 52]提供位置信息。Transformer-XL [10] 使用相对位置嵌入编码对齐令牌之间的相对距离。ViT [13] 将学习到的位置嵌入添加到编码不同补丁之间距离的补丁表示中。MViT [24] 分解了相对位置嵌入的距离计算,并建模空间时间结构。
最近,DETR[4]将变压器引入到二维对象检测任务中进行端到端检测。在DETR[4]中,每个物体都表示为一个对象查询,通过Transformer解码器与2D图像特征交互。然而,DETR[4]的收敛速度很慢。[44]归因于交叉注意力机制,并设计了一个仅编码器的DETR。此外,许多工作通过添加位置先验来加速收敛。SMAC[14]预测每个查询的2D高斯似权重图作为空间先验。Deformable DETR[58]将对象查询与2D参考点关联,并提出变形跨注意力以执行稀疏交互。[50,30,26]从锚点或使用位置先验的锚生成对象查询,以实现快速收敛。从DETR[58]扩展而来,SOLQ[12]使用对象查询同时进行分类、框回归和实例分割。
2.2 基于视觉的三维物体检测
基于视觉的三维物体检测是从相机图像中检测出三维边界框。许多先前的工作 [6,33,20,21,41,19,2,49,48] 在图像视图上进行三维物体检测。M3D-RPN[2]引入了深度感知卷积,它学习位置感知特征以用于三维物体检测。FCOS3D[49]将三维地面真实值转换到图像视图,并扩展FCOS[46]来预测三维立方体参数。PGD[48]遵循FCOS3D[49]并使用概率表示捕获深度的不确定性。这大大缓解了深度估计问题,但同时引入更多的计算预算和更大的推理延迟。DD3D[34]表明,在大规模深度数据集上对深度进行预训练可以显著提高三维物体检测性能。
最近,一些工作尝试在三维世界空间中进行三维物体检测。OFT [39] 和 CaDDN [38] 将单目图像特征映射到鸟瞰图 (BEV),并在 BEV 空间中检测三维对象。ImVoxel-Net [40] 在三维世界空间中构建一个三维体积,并采样多视图特征。
以获得体素表示。然后,使用3D卷积和领域特定的头部来检测室内和室外场景中的对象。类似于CaDDN [38] ,BEVDet [18] 使用Lift-Splat-Shoot [37] 将二维多视图特征转换为BEV表示。有了BEV表示,一个CenterPoint [55] 头部被用来直观地检测三维物体。遵循DETR [4] ,DETR3D [51] 用对象查询表示3D对象。从对象查询生成的3D参考点将反复投影到所有相机视图,并采样2D特征。
基于BEV的方法倾向于引入Z轴误差,导致其他三维感知任务(例如:三维车道检测)的性能不佳。而基于DETR的方法可以享受更多端到端建模带来的好处,并且在训练过程中有更多的增强。我们的方法是基于DETR的,以简单有效的方式检测3D对象。我们编码了3D位置信息到二维特征中,产生具有3D位置意识的特征。物体查询可以直接与这种3D位置意识表示进行交互,而无需投影误差。
2.3 内隐神经表征
隐式神经表示 (INR) 通常通过多层感知器(MLP)将坐标映射到视觉信号。它是一种高效的方法,用于建模三维物体 [35、9、31]、三维场景 [32、43、5、36] 和二维图像 [17、8、45、42] 。NeRF [32] 使用全连接网络来表示特定的场景。为了合成一个新的视图,沿着相机光线的 5D 坐标被输入到网络中作为查询,并输出体积密度和视点依赖的发射辐射。在 MetaSR [17] 和 LIFF [8] 中,高分辨率坐标编码为低分辨率特征和任意大小的高分辨率图像。我们的方法可以被视为 INR 在三维对象检测中的扩展。二维图像使用三维坐标进行编码以获得三维位置感知特征。三维空间中的锚点由 MLP 转换为目标查询,并进一步与三维位置感知特征交互以预测相应的三维对象。
方法 3
3.1 总体架构
图2:提议的PETR范例的体系结构。将多视图图像输入到骨干网络(如ResNet)中,提取多视图二维图像特征。在三维坐标生成器中,将所有视图共享的摄像机视台空间离散成三维网格。网格坐标通过不同的摄像机参数进行变换,得到三维世界空间的坐标。然后将二维图像特征和三维坐标注入到三维位置编码器中,生成三维位置感知特征。对象查询由查询生成器生成,通过与变压器解码器中的3D位置感知功能交互更新。更新后的查询进一步用于预测3D边界框和对象类。
图2显示了所提出的PETR的整体架构。给定N个视点的图像I={Ii∈R3×HI×WI,i=1,2,…,N},这些图像输入到主干网络(例如ResNet-50 [16])以提取二维多视图特征F2d={F2di∈RC×HF×WF,i=1,2,…,N}。在三维坐标生成器中,首先将相机投影空间离散化为三维网格格栅。然后通过相机参数转换网格格栅的坐标,并产生世界空间中的坐标。三维坐标与二维多视图特征一起输入到三维位置编码器,产生三维位置感知特征F3d={F3di∈RC×HF×WF,i=1,2,…,N}。三维特征进一步输入到变压器解码器并与来自查询生成器产生的对象查询交互。更新的对象查询用于预测对象类别以及三维边界框。
3.2三维坐标生成器
为了建立二维图像和三维空间之间的关系,我们投影相机视锥体空间中的点到三维空间中,因为这两个空间中的点是一一对应的。与DGSN [7] 类似,首先将相机视锥体空间离散化以生成一个网格,其大小为 (WF, HF, D),每个网格点可以表示为pmj=(uj×dj,vj×dj,dj,1)T,其中(uj,vj)是图像中的像素坐标,dj是沿着与图像平面垂直的轴上的深度值。由于网格被不同的视图共享,因此在三维世界空间中,对应于第i个视图的第j个网格点的三维坐标p3di,j=(xi,j,yi,j,zi,j,1)T可以通过反投影计算:
其中Ki∈R4×4是第i个视图的变换矩阵,用于建立从三维世界空间到相机投影空间的变换。如图2所示,在变换之后,所有视图的3D坐标覆盖了场景的全景。我们进一步将3D坐标标准化为方程2的形式。
其中,[xmin,ymin,zmin,xmax,ymax,zmax]是三维世界空间中的感兴趣区域(RoI)。最终将HF×WF×D的归一化坐标转换为P 3d = {P 3d i ∈ R (D×4)×HF ×WF ,i= 1, 2,…,N }。
3.3三维位置编码器
三维位置编码器的目的是通过将二维图像特征F 2d={F 2d i ∈RC×HF ×WF,i= 1,2,…,N}与三维位置信息关联来获取三维特征F 3d={F 3d i ∈RC×HF ×WF,i= 1,2,…,N}。类似地,Meta SR [17]中的三维位置编码器可以表示为:
其中,ψ()是图3中所示的位置编码函数。接下来,我们描述ψ()的详细实现过程。给定二维特征F 2d和三维坐标P 3d,首先将P 3d输入多层感知器(MLP)网络并转换为三维位置嵌入(PE)。然后,通过一个1×1卷积层对二维特征F 2d进行变换,并将其与三维PE相加以形成三维位置感知特征。最后,我们将三维位置感知特征展平作为Transformer解码器的关键组件。分析三维PE:为了展示三维PE的效果,我们在前视图随机选择三个点,并计算这些点与其他多视图PE之间的相似性。如图4所示,靠近这些点的区域通常具有较高的相似性。例如,在选择前视图左端点时,前左视图右端区域会相对较高响应。这表明三维PE在三维空间中隐式地建立了不同视图之间的位置相关性。
图3:所提出的3D位置编码器的示意图。将多视图二维图像特征输入到1 × 1卷积层进行降维。通过多层感知将三维坐标生成器生成的三维坐标转换为三维位置嵌入。将三维位置嵌入与同一视图的二维图像特征相加,生成三维位置感知特征。最后,将三维位置感知特征平面化并作为变压器解码器的输入。F (n)是展平操作。
图4:三维位置嵌入相似度。红点是前视图中选定的位置。我们计算这些选定位置的位置嵌入与所有图像视图之间的相似度。结果表明,靠近这些选择点的区域具有较高的相似性。
3.4 查询生成器和解码器
查询生成器:原始的 DETR [4] 直接使用一组可学习参数作为初始对象查询。遵循变形的 DETR [58],DETR3D [51] 根据初始化的对象查询预测参考点。为了在三维场景中缓解收敛困难,类似于锚点的 DETR [50] ,我们首先从 0 到 1 的均匀分布中,在三维世界空间中初始化一个设置为学习参数的一组锚点。然后将三维锚点坐标输入到两个线性层的小 MLP 网络,并产生初始对象查询 Q0 。在我们的实践中,采用三维空间中的锚点可以保证 PETR 的收敛,而采用 DETR 中的设置或在 BEV 空间中生成锚点无法实现令人满意的检测性能。有关更多详细信息,请参阅我们的实验部分。
对于解码器网络,我们遵循DETR [4] 中的标准Transformer解码器,其中包括L个解码层。这里,我们将解码层中的交互过程表示为:
其中,Ωl是解码器的第l层。Ql∈RM×C是更新后的l层对象查询。M和C分别表示查询的数量和通道数。在每个解码器层中,对象查询通过多头注意力机制和前馈网络与三维位置感知特征交互,并且经过迭代交互后,更新的对象查询具有高级别表示并可用于预测相应的对象。
3.5 头和损失
检测头主要包含两个分支,分类和回归。从解码器更新的对象查询输入到检测头,并预测对象类别的概率以及3D边界框。请注意,回归分支预测相对于锚点坐标的相关偏移量。为了与DETRE3D进行公平的比较,我们还
采用焦点损失函数[25]对分类进行训练,采用L1损失函数对三维边界框回归进行训练。让y=(c,b)和yˆ=(cˆ, ˆb)分别表示真实值集和预测值集。匈牙利算法[22]用于将真实值与预测值进行标签分配。假设σ是最佳分配函数,则3D目标检测的损失可以总结为:
这里Lcls表示分类的焦点损失,Lreg是回归的L1损失。λcls是一个超参数,用于平衡不同的损失。
实验
4.1 数据集和指标
我们在nuScenes基准上验证了我们的方法。NuScenes是一个由来自六个摄像头、一个激光雷达和五个雷达的数据组成的大型多模态数据集。该数据集包含1000个场景,并正式分为训练/验证/测试的700/150/150个场景。每个场景有20秒的视频帧,每0.5秒标注一次三维边界框。与官方评估指标一致,我们报告了nuScenes检测得分(NDS)和平均精度(mAP),以及平均位移误差(mATE)、平均尺度误差(mASE)、平均方向误差(mAOE)、平均速度误差(mAVE)和平均属性误差(mAAE)。
4.2 实施细节
为了提取二维特征,ResNet [16]、Swin-Transformer [27] 或 VoVNetV2 [23] 被用作主干网络。C5 特征(第五阶段的输出)被上采样并与 C4 特征(第四阶段的输出)融合以产生 P4 特征。P4 特征具有输入分辨率的 1/16 是作为二维特征使用。对于三维坐标生成,我们沿深度轴在 CaDDN [38] 中线性增加离散化 (LID) 的情况下采样 64 点。X 和 Y 轴上的区域设置为 [-61.2 m, 61.2 m] ,Z 轴上的区域设置为 [-10 m, 10 m] 。在三维世界空间中的三维坐标被标准化到 [0, 1] 。遵循 DETR3D [51],我们将λcls = 2.0 来平衡分类和回归。
PETR使用AdamW优化器进行训练,权重衰减为0.01。学习率初始化为2.0×10-4,并采用余弦退火策略进行衰减。采用多尺度训练策略,其中短边随机选择在[640, 900]范围内,长边小于或等于1600。遵循CenterPoint的设置,在三维空间中实例的真实值以[-22.5°, 22.5°]的角度范围随机旋转。所有实验均在8个Tesla V100 GPU上进行训练,共24个epoch(2倍周期),批处理大小为8。在推理过程中未使用测试时间增强方法。
4.3 最佳实践比较
如表1所示,我们首先将PETR与nuScenes验证集上的最先进的方法进行比较。结果表明,在NDS和mAP指标上,PETR均取得了最佳性能。CenterNet [56]、FCOS3D [49] 和PGD [48] 是典型的单目三维目标检测方法。当与FCOS3D [49] 和PGD [48] 进行比较时,使用ResNet-101 [16] 的PETR在NDS上分别优于它们2.7%和1.4%。然而,由于显式的深度监督,PGD [48] 较低的mATE。此外,我们也与多视图三维目标检测方法DET-R3D [51] 和BEVDet [18] 进行了比较,后者统一地检测三维物体。由于DET-R3D [51] 和BEVDet [18] 在图像大小和骨干网络初始化方面遵循不同的设置,因此我们单独与它们进行了公平的比较。我们的方法在NDS上分别优于它们0.8%和1.4%。
表2显示了在nuScenes测试集上的性能比较。我们的方法也分别在NDS和mAP上取得了最佳的性能。为了与BEVDet [18]进行公平的比较,PETR使用Swin-S骨干神经网络训练时图像大小为2112 × 768。结果表明,在mAP和NDS上,PETR比BEVDet [18]分别高出3.6%和1.8%。值得注意的是,当使用外部数据时,PETR的性能与现有方法相当。当使用外部数据时,PETR使用VOVNetV2 [23]骨干神经网络达到50.4%的NDS和44.1%的mAP。据我们所知,PETR是第一个超过50.0%NDS的基于视觉的方法。
我们还对PETR的收敛性和检测速度进行了分析。首先,我们比较了DETR3D[51]和PETR的收敛性(见图5 (a)) 。在前12个epoch中,PETR的收敛速度比DETR3D[51]慢得多,并最终实现了更好的检测性能。这表明PETR需要相对较长的训练周期才能完全收敛。我们猜测原因在于PETR通过全局注意力学习三维相关性,而DETR3D[51]则在局部区域感知三维场景。图5 (b)进一步报告了不同输入大小下PETR的检测性能和速度。FPS是在单个Tesla V100 GPU上测量的。对于相同的图像尺寸(例如,1056×384),我们的PETR以10.7 FPS的速度进行推理,而BEVDet[18]以4.2 FPS的速度进行推理。请注意BEVDet[18]的速度是使用NVIDIA 3090 GPU测量的,该GPU比Tesla V100 GPU更强。
4.4 消融研究
在本节中,我们对PETR中的某些重要组件进行了消融研究。所有实验均使用ResNet-50主干的单级C5特征进行,而没有使用CBGS [57] 。
三维位置嵌入的影响。我们评估了不同位置嵌入(PE)的影响(见表3)。当仅使用DETR中的标准二维PE时,模型只能收敛到6.9%mAP。然后我们将多视图先验(将视图数量转换为PE)以区分不同的视图,并带来轻微的改进。当仅使用由3D坐标生成的3D PE时,PETR可以直接实现30.5%mAP。这表明3D PE提供了强大的位置先验来感知3D场景。此外,在结合3D PE和2D PE/多视图先验的情况下,性能可以得到改善。应该注意的是,主要的改进来自3D PE,而2D PE/多视图先验可以在实践中选择性地使用。
3D坐标生成器。在三维坐标生成器中,将摄像机视台空间的透视视图离散为三维网格。将变换后的三维世界空间坐标进一步归一化为感兴趣区域(RoI)。
在这里,我们探讨了不同离散化方法和RoI范围的有效性(见表4)。与线性递增离散化(LID)相比,均匀离散化(UD)表现出相似的性能。我们还尝试了几种常见的ROI区域,ROI范围(- 61.2m, - 61.2m, - 10.0m, 61.2m, 61.2m,10.0m)的性能优于其他区域。
三维位置编码器。三维位置编码器用于将三维位置编码到二维特征中。首先,我们探索多层感知机(MLP)的转换效果,该转换将三维坐标转换为三维位置嵌入。如表5 (a)所示,在没有MLP的情况下,简单的网络可以提高NDS和mAP性能分别达到4.8%和5.3%。当使用两个3×3卷积层时,模型不会收敛,因为3×3卷积破坏了2D特征与3D位置之间的对应关系。此外,我们在表5 (b)中比较不同方式融合2D图像特征与3D PE。与加法相比,连接操作具有相似的性能,并且优于乘法融合。
查询生成器。表5(c)显示了不同锚点对生成查询的影响。在这里,我们比较了四种类型的锚点:“无”,“固定BEV”,“固定3D”和“学习的3D”。原始DETR(“无”)直接使用一组可学习参数作为对象查询而没有锚点。对象查询的全局特征无法使模型收敛。“固定BEV”是固定锚点在BEV空间中以39× 39的数量生成的。“固定3D”意味着固定锚点在三维世界空间中有16×16×6个。"学习的3D"是定义在3D空间中的可学习锚点。我们发现,"固定BEV"和"固定3D"的表现都低于学习锚点。我们也探索了锚点的数量(见表5(d)),范围从600到1500。模型使用1500个锚点时表现最佳。考虑到计算成本随着锚点数量的增加而增加,我们简单地使用1500个锚点来权衡。
4.5可视化
图6显示了一些定性检测结果。三维边界框在BEV空间和图像视图中投影并绘制。如图所示的BEV空间,预测的边界框接近真实值。这表明我们的方法具有良好的检测性能。我们还可视化了从多视图图像中对象查询生成的关注地图。如图7所示,在不同的视图中,对象查询倾向于关注同一物体。它表明三维位置嵌入可以建立不同视图之间的位置相关性。最后,我们提供了一些失败案例(见图8)。这些失败案例用红色和绿色圆圈标记。红色圆圈显示一些未被检测到的小物体。绿色圆圈中的物体被错误分类。主要错误检测发生在当不同车辆在外观上高度相似时。
结论 5
该论文提供了一种简单而优雅的多视图三维物体检测解决方案。通过生成三维坐标和位置编码,二维特征可以转换为具有三维位置感知特性的表示。这种三维表示可以直接集成到基于查询的DETR架构中,并实现端到端检测。它达到了最先进的性能,并可作为未来研究的强大基准。