Far3D论文理解

本文介绍了一种名为Far3D的新型3D对象检测方法,专注于解决远距离物体检测的问题。通过结合2D检测的先验知识,提出3D自适应查询和多尺度特征融合策略,以及针对不同距离的3D去噪方法,提升了模型在远距离场景下的性能。实验结果显示在Argoverse2和nuScenes数据集上取得了显著的性能提升。
摘要由CSDN通过智能技术生成

论文链接:https://arxiv.org/abs/2308.09616
代码链接:https://github.com/megvii-research/Far3D
原标题:Far3D: Expanding the Horizon for Surround-view 3D Object Detection
作者单位:北京理工大学 & 旷视科技

背景及相关工作:

BEV3D(Bird’s-Eye-View)的检测可以分为两个路线:密集型检测(dense methods)和稀疏型(sparse query-based methods)。然而,它们大多侧重于近距离感知(例如,nuScenes的感知距离约为 50 米),对远距离探测领域的探索较少。检测远距离物体对于实际驾驶中保持安全距离至关重要,尤其是在高速或复杂路况下。

dense methodsBevdet系列(Bevdet, Bevdet4d);BEVFormerv1,v2; Bevdepth由于其密集的 BEV 特征计算,计算量非常大,难以扩展到远距离场景。
sparse query-basedDETR系列的衍生Detr3d,PETR系列(PETRv1, PETRv2, streamPETR)从训练数据中学习到全局3D query,计算量会小许多,且扩展性较强。但它也有弱点,虽然可以避免 query数目的平方增长,但全局固定 query 不易适应动态场景,在远距离检测中通常会遗漏目标

从训练数据中学习到全局3D query,计算量会小许多,且扩展性较强。但它也有弱点,虽然可以避免 query数目的平方增长,但全局固定 query 不易适应动态场景,在远距离检测中通常会遗漏目标。
[Image]

在远距离检测中,基于稀疏query表征的方法有两个主要挑战。

  1. 召回性能较差:由于query在3D空间分布的稀疏性,在远距离范围只能产生少量匹配的positive query。如上图Fig.1所示,3D检测的召回率较低,而现有 2D 检测的召回率要高得多,两者之间存在明显的性能差距。因此,利用高质量的2D物体先验来改进3D query是一种很有潜力的方法,它有利于实现物体的精确定位和全面覆盖。
  2. 直接引入 2D 检测结果来帮助3D检测会面临误差问题,两种主要来源是
  • 物体射线上的一些冗余不稳定深度估计;
  • 随着距离的增大,视锥变换中的 3D 位置误差也会增大。

这些noisy query会影响训练的稳定性,需要有效的去噪方法来优化。此外,在训练过程中,模型会表现出对密集的近距离物体过度拟合的倾向,而忽略稀疏分布的远距离物体。
为了解决上述问题,本文做了以下设计:

  1. 除了从数据集中学到的 3D global query外,还引入了由2D检测结果生成的 3D adaptive query。利用2D检测器和深度预测网络得到2D框和对应深度,再通过空间变换投射到3D空间,作为3D adaptive query的初始化。
  2. 为了适应不同距离的物体的尺度不同,设计了 Perspective-aware Aggergation。它使得 3D query 可以和不同尺度的特征交互,有利于不同距离物体的特征捕捉。比如,远处物体需要大分辨率的特征,而近处则不同。模型通过这种设计可以自适应地与特征交互。
  3. 设计了一种称为Range-modulated 3D Denoising的策略,以减轻query错误传播和收敛缓慢的问题。考虑到不同距离的query回归难度不同,noisy query 根据真实框的距离和尺度来调整。将GT附近的多组 noisy query 输入解码器,来分别实现重建3D真实框(对于正样本)和舍弃负样本的作用。

模型结构

在这里插入图片描述

Fig.3展示了基于稀疏query的检测框架,主要的内容如下:

  1. 将环视图像输入主干网络和 FPN 层,编码得到 2D 图像特征,并将其与相机参数进行编码。
  2. 利用 2D 检测器和深度预测网络,生成可靠的 2D 物体框及其相应深度,然后通过相机变换投影到 3D 空间。
  3. 生成的3D adaptive query与初始的 3D global query相结合,由解码器层迭代回归,以预测 3D 物体框。更进一步,该模型可通过长时序的query传播实现时序建模。

Adaptive Query Generation

范围的增大导致计算量的增大,收敛效率降低和定位能力的下降;query的数量的增加会导致运算速率都是平方的增加,稀疏的远处物体会阻碍收敛速度并且损害近距离物体的定位。受 2D 检测方案的高性能的提示,希望使用2D辅助3D本地化之前将自适应查询生成为对象。这种方法弥补了全局固定查询设计的缺点,并允许检测器在GT框附近为不同的图像生成自适应查询。这样,模型就具备了更好的通用性和实用性。

这里使用了YOLOX的anchor-free的检测头来检测:2D框的位置和得分,以及深度预测。这里的深度估计是将深度分类离散到不同的bin中,每个2D框都有对应的深度估计,使用阈值0.1的提出可信2D框的proposal,在视角i下的2D的框的中心点和深度可以映射成3D的中心点位置c3d,c3d通过PoseEmbed来进行编码获得Qpos; Qpos是将2D的框的位置将像素坐标系转转换到世界坐标系的点的位置编码(Question:2D框的中心点和3D中心点一映射过去的不一致,如果中心点改成3D映射回去的图像点是否更加可靠),Qsem是语义编码,
Qpos = PosEmbed(c3d)
Qsem = SemEmbed(z2d, s2d)
Q = Qpos + Qsem
从F采样的 z2d 对应于位置的语义上下文(cw, ch),s2d是2D框的置信度分数。PosEmbed由正弦变换和MLP组成,而SemEmbed也是一个MLP。
根据2D获得的bbox,score和depth_input来获得2D的转换获得的3D的点和对应的语义特征,对应下图reference_points2d, context_feat;
[Image]

对reference_points2d进行position encoding之后reference_points进行concat获得最终的reference_points。
在这里插入图片描述

Perspective-aware Aggregation:

现有的基于稀疏查询的方法通常采用一个单层特征图来提高计算效率(例如StreamPETR)。但是,对于不同范围的所有对象查询,单层级别并不是最佳选择。例如,小型远距离物体需要大分辨率特征才能进行精确定位,而高级特征更适合大型近距离物体。因此,提出了perspective-aware aggregation,将不同比例和视图上的高效功能交互。如下图代码所示,多层的mlvl_feats进行整合。

为了给远距离检测模型引入多尺度特征,本文应用了3D spatial deformable attention。它先在query对应的3D位置附近进行偏移采样,而后通过3D-2D视图变换聚合图像特征。这种方法替代PETR系列中的global attention的优势在于,计算量可以大幅降低。对于3D空间中的每个query的参考点,模型会学习其周围的M个采样偏移,并将这些偏移点投影到不同的2D视图特征中。
其后,3D query与投影得到的采样特征交互。通过这种方式,来自不同视角和尺度的各种特征将通过考虑其相对重要性汇聚到三维查询中。
[Image]

Range-modulated 3D Denoising

不同距离的3D query具有不同的回归难度,这不同于现有的2D Denoising方法(如 DN-DETR, 通常同等对待的2D query)。难度差异来自于 query 匹配密度和误差传播。一方面,与远处物体相对应的 query 匹配度低于近处物体。另一方面,在3D adaptive query中引入二维先验时,2D物体框的微小误差会被放大。如图2所示,更不用说哪种影响会随着对象距离的增加而增加。因此,GT框附近的一些query可被视为positive query,而其他有明显偏差则应被视为 negative query。本文提出一种 3D Denoising 方法,旨在优化那些正样本,并直接舍弃负样本。

对于这两种类型,根据物体的位置和大小施加随机噪声,以促进远程感知中的去噪学习。作者通过同时添加正样本和负样本组来构建基于GT的noisy queries。对于这两种类型,都会根据物体的位置和大小应用随机噪声,以促进远距离感知中的去噪学习。形式上,正样本定义在 3D 框内的随机点,而负样本则在 GT 施加更大的偏移,范围随着物体的距离变化。这种方式可以在训练过程中模拟有噪声的候选正样本和false postive样本。这里定义噪声的query为:
在这里插入图片描述
α ∈ {0, 1}分别对应于负查询和正查询的生成。PGT, SGT∈R3表示GT的三维中心(x, y, z)和框维度(w, l, h),其中~ P为噪声坐标。我们使用函数fp和fn对正、负样本的位置感知噪声进行编码。
对于正噪声样本,我们将fp(SGT)设置为具有随机变量的三维尺度的线性函数。在GT框中加入了偏移约束,以指导模型从正查询中准确地重建GT,同时确保与周围相邻框明确区分。对于负样本,偏移量应该与其位置范围相关,因此我们提出了几种实现方法。例如,fn(PGT)可以表示为log(PGT)、λ2PGT或√PGT。在prepare_for_dn的函数中,对known_bbox_center_进行了噪音的增加。

在farhead.py中的prepare_for_dn中增加噪音的方式不同在于:
SteamPETER
在这里插入图片描述
Far3D
在这里插入图片描述

消融实验

该文章使用了两个数据集合进行验证argoverse2和nuScenes。以StreamPETR为base来设计的Far3D,neck为FPN,一个2D的proposal head,一个3D检测头。使用的预训练模型是nuScenes的FCOS3D-VoVNet-99模型,这里FPN包含了4层分别是1/8,1/16,1/32,1/64。检测距离为152.4m × 152.4m。优化器为AdamW,weight decay为0.01,batach size为8,lr为2e-4,训练了6个epoch。nuScenes的val set合上获得了51.0% mAP and 59.4% NDS;test set上获得了63.5% mAP and 68.7% NDS.
在这里插入图片描述

Table.3在argoverse2上对比了了三个策略分开的提升情况:
[Image]

Adaptive Query获得了2.1% mAP 1.5% CDS的提升,Perspective-aware Aggregation获得了1.0% mAP and 1.2% CDS的提升,Range-modulated 3D Denoising获得了1.0% mAP and 0.8% CDS的提升。

对于该文章的思考:
将2D框带有深度的映射到3D中并结合到reference_points中这种方式可理解,并且实用,是一个感觉都可以尝试的点;多级融合也可以,当然也看硬件的支持;最后正负样本的选择也可以无痛增加。👍

  • 27
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值