ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

论文阅读二:V-Fusion: 2D Detection-enhanced Multimodal 3D BEV Object Detection

论文阅读二:V-Fusion: 2D Detection-enhanced Multimodal 3D BEV Object Detection

论文阅读笔记(二):V-Fusion: 2D Detection-enhanced Multimodal 3D BEV Object Detection

文章目录

  • 论文阅读笔记(二):V-Fusion: 2D Detection-enhanced Multimodal 3D BEV Object Detection
  • 一、这篇论文解决了什么问题?
  • 二、关于这个问题,其它学者提出了哪几类的解决方案,有何缺陷?
  • 三、作者围绕该问题,是如何构建解决思路的?
  • 四、从结果(含曲线)上看,作者是如何有力地证明他解决了问题?
  • 五、这篇论文的缺陷在哪?
  • 六、这篇论文可以借鉴什么

论文信息
标题:V-Fusion: 2D Detection-enhanced Multimodal 3D BEV Object Detection
来源: ICASSP 2025 - 2025 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)
年份:2025
作者及单位:Zhenpeng Li; Xiao Zhao; Jingwei Bian; Biao Liu; Wei Li; Lihua Zhang


一、这篇论文解决了什么问题?

现有BEV多模态融合方法大多只在鸟瞰图特征上生成3D查询,没有充分利用相机透视图上高性能的2D检测先验,多模态3D目标检测中,如何将相机透视视图(PV)中高质量的2D检测结果,有效且鲁棒地转化为BEV空间下的3D查询,从而提升3D检测性能。

具体拆解为两个子问题:

  • 模态差异问题:现有的多模态BEV方法(如BEVFusion)大多直接在 BEV 特征图上生成 3D 查询,忽略了 PV 中 2D 检测性能远超 3D 检测这一固有优势;而少数尝试利用 PV 检测的方法(如 SparseFusion、CMT),又因为难以处理 2D 到 3D 的模态差异和深度歧义,性能反而落后于纯 BEV 方法。
  • 深度歧义与特征不一致问题:从 2D 框预测深度存在固有歧义(近大远小、遮挡等),导致生成的 3D 查询位置不准;且相机查询和激光雷达查询在融合时存在特征不一致。

二、关于这个问题,其它学者提出了哪几类的解决方案,有何缺陷?

在 V-Fusion 的引言和相关工作中,作者将已有方案主要分为两类:

  1. 纯BEV融合类方法(如BEVFusion、UniTR、IS-Fusion)
  • 做法:将相机和激光雷达特征统一投影到 BEV 空间,在 BEV 特征图上生成 3D 查询或检测头。
  • 缺陷:完全忽略了 PV 中 2D 检测的高质量先验。由于视角变换(PV→BEV)本身存在信息损失和量化误差,导致 3D 查询的初始质量受限。
  1. 基于 PV 检测混合 3D 查询的方法(如 SparseFusion、CMT)
  • 做法:尝试在透视图像上做检测,将结果混合到 3D 查询中。
  • 缺陷:未能很好地解决深度预测的固有歧义(Ambiguity Depth)和模态差异(Modality Discrepancy)。简单的 2D 到 3D 提升策略会产生强偏差,导致性能仍落后于先进的 BEV 方法。

三、作者围绕该问题,是如何构建解决思路的?

作者的核心思路:融合两路来源互补的 3D 查询,再用空间约束的注意力解决模态冲突。

  1. 双分支生成两类互补 3D 查询
  • 相机分支:环视图像经过骨干网络,Depth Net 预测稠密深度,2D 检测器输出 2D 框;在框内采样中心点 + 缩小框的 4 个角点,多点深度取平均,得到鲁棒深度,将 2D 框反投影,生成图像侧 3D查询Qc,利用图像强语义。
  • 激光雷达分支:点云编码得到激光 BEV 特征BL,相机 BEV 特征BC与BL经过 BEV Encoder 融合,得到融合 BEV 特征BF;BEV 检测头在BF上热图预测 + TopK 筛选,生成 BEV 侧 3D 查询QF,利用激光雷达强几何定位。
  1. 补充可学习查询QL:弥补 2D 检测器、BEV 检测器漏检的目标。

  2. 设计几何约束自注意力 EC-SA:将 BEV 平面划分为网格,仅同一网格内空间邻近的查询进行自注意力,阻止远距离无关查询互相干扰,缓解Qc与QF的模态特征不一致。

  3. 可变形交叉注意力 DCA:3D 查询自适应从融合 BEV 特征BF上采样对应特征,多轮迭代优化查询的位置、类别特征,最后输出 3D 检测框。


关键图(可帮助理解)

  1. 深度预测存在歧义会带来较大预测偏差,该问题可通过多组深度采样来缓解。这张图描述从2D图像框生成3D查询时,深度歧义问题 + 本文提出的多点深度鲁棒求解方案。

(a) Ambiguity Depth 深度歧义

  • 黄色框:图像上 2D 检测器输出的2D 目标检测框,框住图片里的车;
  • 红色五角星:2D 框中心点。
  • 问题:单取中心点做深度估计会有歧义。
    图像是透视投影,2D 平面上同一个像素点,可能对应真实 3D 空间里无穷多不同距离的点(沿相机射线)。
    如果只取这一个中心点的深度值去反推 3D 位置,很容易估错深度,造成 3D 框定位偏差。

总结来说:只看中心点一个点预测深度,很不准。

(b) Robust Depth 鲁棒深度采样(本文的改进方法)

在同一个 2D 检测框内部,不只取中心点,额外再取 2D 框四个角点,一共 5 个位置(中心点 + 四个顶点)做深度预测。

  • 图中:红色五角星(中心)+4 个蓝色圆点(框的四个角),5 个采样点。把这 5 处预测的深度取平均值,作为这个物体最终的深度。
  • 好处:单点深度预测有误差,但多点平均可以降低单点深度歧义带来的偏差,得到更稳定可靠的深度值。
  • 对应论文公式:

(c) 3D query from 2D:从2D图像检测框生成3D查询

利用 (b) 算出的鲁棒深度,结合相机内参,将图像2D框反投影到3D空间,生成3D候选框(3D query)。

  • 红色射线:相机成像射线;
  • 黄色立方体:在3D空间生成的物体候选框;
  • ✔:正确匹配车辆的3D框;
  • ✖:错误、偏离目标的3D候选框(单点深度容易生成这类错误框)。

(d) 3D query on BEV:将3D查询映射到鸟瞰图BEV空间

把上一步得到的3D查询投影到鸟瞰图BEV网格平面:

  • 橙色相机图标:相机传感器;
  • 黑色小车:真实目标;
  • 红绿圆点:3D 查询在 BEV 平面上的投影位置;
  • 黑色虚线:相机投影射线;
  • ✔代表正确查询,✖代表无效 / 错误查询。

得到 BEV 空间下的 3D 查询之后,送入后面的几何约束自注意力、可变形交叉注意力模块,在融合后的 BEV 特征图上做特征采样,完成 3D 目标检测。

  1. 架构图

1).上方:环视相机分支(Surround Camera)

  • Surround Camera:nuScenes 的 6 个环视相机图像输入。
  • Camera Backbone & FPN:Swin-T 作为图像骨干 + 特征金字塔 FPN,提取多尺度图像特征。
  • 特征送入虚线框,分成Depth Net和Context Net两个子网络:
    • Depth Net:预测稠密像素级深度图;和 2D 检测框结合,计算鲁棒深度,用于 2D→3D 升维。
    • Context Net:提取图像语义上下文特征,供给 2D 检测器。
  • 2D Detector:透视图上的 2D 目标检测器,输出图像 2D 检测框。
  • 两路输出:
    • BC:相机特征经过 Lift-Splat 得到相机 BEV 特征图;
    • Query Distribution in Bc:利用 2D 检测 + 深度反投影,生成相机侧3D查询QC(红色方块,前面提到的从 2D 框升维得到的查询)。

2).下方:激光雷达分支(Lidar Point)

  • Lidar Point:激光雷达点云输入。
  • Lidar Backbone & FPN:VoxelNet,对点云做体素编码,提取点云特征。
  • 输出BL:激光雷达BEV特征图。
  • BL(相机 BEV) + BL(激光雷达 BEV)一起送入BEV Encoder:轻量化卷积模块,融合两个模态 BEV 特征,输出融合 BEV 特征图BF。
    • 一路BF送入BEV Detector:BEV 空间上的检测头,热图 + topK 筛选,输出Query Distribution in BF,也就是BEV侧3D查询QF(黄色方块)。
    • 另一路BF直接保留,后面给可变形交叉注意力做特征采样。

3).右侧:Transformer 解码器模块(核心查询迭代部分)

  • 输入:三类 3D 查询拼接

    • QC(红色):来自相机透视图2D检测生成的查询。
    • QF(黄色):来自 BEV Detector 在融合 BEV 特征BF上生成的查询。
    • QL(灰色):可学习查询 learnable queries,用来召回漏检目标。

三者拼接,组成全部 3D Query,送入 Transformer 解码器循环迭代。

解码器三层结构,重复 N 轮:

  • Geometry-Constrained Self-Attention(几何约束自注意力 EC-SA)
    对全部查询分组:把 BEV 平面划分为 8×8 网格,只有落在同一个网格里的查询之间做自注意力。只让空间邻近的查询交互,减少远距离无关查询带来的跨模态噪声,解决QC和QF模态特征不一致问题。
  • Deformable Cross-Attention(可变形交叉注意力 DCA)
    每个 3D 查询,根据自身位置,自适应在融合 BEV 特征图BF上采样特征,从 BEV 特征中提取对应物体信息。
  • FFN 前馈网络:对查询特征做非线性变换。

以上 3 个模块循环迭代 N 次,不断优化 3D 查询的位置与语义特征。
迭代结束,输出最终 3D 框Bboxes。

四、从结果(含曲线)上看,作者是如何有力地证明他解决了问题?

作者通过主实验对比和消融实验两个层面进行了证明:
1. 主实验(表 I、表 II):

  • 对比 BEVFusion:在val集上提升+2.7NDS 和+4.2mAP,证明在BEV基础上引入2D先验确实有效。

  • 对比 PV 混合类方法:比CMT高+1.2NDS,比SparseFusion高+1.0NDS,证明其2D-to-3D提升策略优于之前的尝试。

  • 对比 SOTA:在nuScenes val集达到74.1 NDS / 72.7mAP,test集达到75.4NDS / 73.2mAP,取得当时SOTA。

  • 速度权衡(表 II):虽然6.1FPS略低于BEVFusion(6.4)和 SparseFusion(8.2),但性能显著更优,证明了“轻量2D检测模块”带来的性能收益远大于计算开销。

2. 消融实验(表 III、IV、V):

  • 模块有效性(表III):平均深度+0.4NDS,深度感知PE+0.3NDS,EC SA +0.8NDS;三者结合提升 +1.2NDS,逐步证明了每个设计的贡献。

  • 网格大小(表IV):8×8网格达到最优(74.1NDS),证明局部交互粒度合理。

  • 骨干网络(表V):更换更强的SwinT和VoxelNet均带来稳定增益,证明方法的泛化性。


五、这篇论文的缺陷在哪?

1. 推理速度下降:虽然 2D 检测模块轻量,但仍导致FPS从BEVFusion的 6.4降至6.1,低于 SparseFusion的8.2。对于实时性要求极高的自动驾驶场景,这是一个实际瓶颈。

2. 深度估计仍依赖外部网络:深度预测依然依赖Depth Net网络,深度估计仍然存在固有误差。即使采用多点平均策略,极端遮挡、恶劣光照场景下,深度预测依旧不准,QC位置依然会有偏差。

3. 网格划分的固定性:EC SA采用固定的8×8 网格划分(虽然做了消融),但不同场景下物体密度差异很大(如高速公路 vs. 城市拥堵),固定网格可能不是最优的自适应方案。

六、这篇论文可以借鉴什么

1. 2D-to-3D 查询提升:放弃在BEV空间从零盲找目标,直接把高精度的2D检测框结合深度转化为3D初始查询。
2. 平均深度策略:用2D框中心点和四个顶点的平均深度代替单点深度,以极低成本增强深度估计的抗干扰能力。
3. 深度感知位置编码:利用图像语义特征通过门控机制对3D几何位置编码进行加权,让网络自适应决定更相信图像还是几何。
4. 几何约束自注意力:将BEV划分为网格,让空间上邻近的相机查询和BEV查询先进行局部交互,从而缓解跨模态特征不一致。
5. 可学习查询补漏:引入一组不依赖任何先验、纯粹依靠网络自行学习的3D查询,专门作为兜底机制去捕捉漏检目标。
另外,论文也提醒:采用多分支结构会带来一定推理耗时,需要权衡精度与速度。


RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进