Abstract
单目3D目标检测在自动驾驶中是一个重要但具有挑战性的任务。一些现有的方法利用离线深度估计器提供的深度信息来辅助3D检测,但这会增加额外的计算负担,且因深度先验不准确而导致性能受限。为了解决这些问题,我们提出了MonoDTR,一种新型的端到端深度感知Transformer网络,用于单目3D目标检测。它主要包含两个模块:
- 深度感知特征增强(DFE)模块:此模块通过辅助监督,隐式地学习深度感知特征,而不需要额外的计算。
- 深度感知Transformer(DTR)模块:此模块在全局范围内整合了上下文信息和深度感知特征。
此外,不同于传统的像素级位置编码,我们引入了一种新颖的深度位置编码(DPE),将深度位置信息注入到Transformer中。我们提出的深度感知模块可以轻松地集成到现有的基于图像的单目3D目标检测器中,以提升其性能。大量在KITTI数据集上的实验表明,我们的方法在性能上超越了之前的单目方法,并且实现了实时检测。代码可在以下网址获取:
1. Introduction
3D物体检测对于自动驾驶等应用至关重要。多传感器(如LiDAR和立体相机)提供的准确深度信息使得现有方法表现优越,但这些传感器成本高昂。为了降低成本,一些方法尝试仅依靠单目相机进行3D物体检测,利用2D和3D之间的几何约束取得了一些进展,但在缺乏深度信息时,性能仍然有限。
伪LiDAR基方法:将估计的深度图转换为3D点云,但这些方法依赖于预训练的深度估计模型,可能会因深度图不准确而受到影响。
基于融合的方法:将从深度和图像中提取的特征结合起来,但需要额外的计算资源,使其在实际应用中不切实际。
MonoDTR的创新
深度感知特征增强(DFE)模块:通过辅助深度监督学习深度感知特征,避免了不准确深度先验的影响。
轻量有效:DFE模块设计轻量,不需要复杂的架构来处理现成的深度图,大大减少了计算时间。
2. Related Work
仅使用图像的单目3D物体检测:
- 挑战:由于缺乏深度信息,这些方法主要依赖几何一致性。难点在于准确预测物体的位置和姿态。
- 方法:
- Deep3Dbox:通过Multi-Bin损失解决方向预测问题,并通过几何先验约束2D和3D框。
- M3D-RPN:通过2D边界框约束生成3D物体候选框,提出深度感知卷积。
- OFT-Net:引入正交特征变换,将图像特征映射到3D体素空间。
- MonoPair:探索物体之间的空间配对关系。
- M3DSSD:提出两步特征对齐方法,解决特征失配问题。
- 关键点预测方法:将3D边界框的关键点预测作为中间任务。
深度辅助的单目3D物体检测:
- 提升性能的方法:通过使用深度信息来辅助检测,方法包括伪LiDAR表示和图像-深度融合。
- 方法:
- 伪LiDAR方法:利用深度估计器和校准参数将图像转换为伪LiDAR表示。
- PatchNet:强调坐标变换的作用,并利用CNN进行图像表示。
- D4LCN和DDMP-3D:开发图像和估计深度的融合方法。
- CaDDN:通过学习类别深度分布构建鸟瞰图表示。
- 挑战:预训练深度估计器的不准确性导致额外的计算成本和性能限制。
Transformer的应用:
- 优势:自注意力机制能够捕捉长程依赖关系,已在NLP和计算机视觉任务中取得成功。
- 挑战:在单目3D物体检测中,透视投影导致的物体大小差异显著,传统的物体查询方法难以充分表示物体属性。
- 解决方案:本文提出通过Transformer全局整合上下文和深度感知特征,并注入深度提示,以实现更好的3D推理。
图2展示了我们提出的MonoDTR的整体框架。首先,将输入图像送入骨干网络以提取特征。深度感知特征增强(DFE)模块通过辅助监督(第3.2节)学习深度感知特征,同时通过并行的卷积层提取上下文感知特征。随后,深度感知Transformer(DTR)模块整合这两种特征,而深度位置编码(DPE)模块将深度位置提示注入Transformer中(第3.3节)。最后,检测头用于预测3D边界框(第3.4节)。需要注意的是,辅助深度监督仅在训练阶段使用。
3. Proposed Approach
3.1. Framework Overview
图2展示了我们提出的MonoDTR框架,主要由四个组件组成:骨干网络、深度感知特征增强(DFE)模块、深度感知Transformer(DTR)模块和2D-3D检测头。我们采用DLA-102作为骨干网络,如[29]所示。给定一个分辨率为Hinp × Winp的输入RGB图像,骨干网络输出一个特征图F ∈ R^C×H×W,其中H = Hinp/8,W = Winp/8,C = 256。DFE模块用于隐式地学习深度感知特征(第3.2节),同时通过几层卷积层并行提取上下文感知特征。然后,通过DTR模块全局整合这两种特征,并首次尝试通过深度位置编码(DPE)模块将深度位置提示注入Transformer中(第3.3节)。最终,采用基于锚点的检测头和损失函数进行2D和3D目标检测(第3.4节)。
3.2. Depth-Aware Feature Enhancement Module
图3. 深度感知特征增强(DFE)模块的架构。DFE模块旨在通过辅助监督隐式地学习深度感知特征。(a) 生成初始深度感知特征X并预测深度分布D。(b) 估计深度原型的特征表示Fd。(c) 生成深度原型增强特征F′,并与初始深度感知特征X融合。详见第3.2节。
现有的深度辅助方法[10, 48, 52]使用现成的深度估计器,但存在引入不准确深度先验和额外计算负担的风险。为了解决这个问题,我们提出了 一个用于深度推理的深度感知特征增强(DFE)模块,如图3所示。在训练阶段,利用精确的深度图进行辅助监督,使DFE模块隐式地学习深度感知特征。相比于之前使用额外骨干网络[10, 48]或复杂架构[35]来编码深度的方法,我们通过一个轻量级模块生成深度感知特征,以辅助3D目标检测,从而显著减少计算负担。
3.3. Depth-Aware Transformer
灵感来源与背景
受到 transformer 在建模长距离关系上的巨大成功的启发,我们利用 transformer 编码器-解码器架构构建深度感知 transformer (DTR) 模块,以全局整合上下文感知和深度感知特征。
3.4. 2D-3D Detection and Loss