3D检测:DETR3D

简介: 3D检测:DETR3D

前言

在这篇paper,作者提出了一个更优雅的2D与3D之间转换的算法在自动驾驶领域,它不依赖于深度信息的预测,这个框架被称之为DETR3D。这个方法主要是为了葱多视角获取 scene-specific information,作者把首先生成3D的query,生成3d reference point,通过相机参数矩阵投影到2D拿到相应的2D feature。

主要贡献:

  1. 我们提出了一个基于RGB图像进行3D目标检测的改进模型。与现有的那些在最后阶段融合不同相机图像的目标预测的工作不同,我们的方法在每一层计算中都融合了所有相机的信息。据我们所知,这是将多相机检测转换为3D set-to-set预测问题的首次尝试。
  2. 我们提出了一种通过逆几何投影将提取的2D特征和3D包络框预测连接在一起的模块。它不受二阶段网络不准确的深度预测的影响,并且通过将3D信息反投影到所有可用帧上来无缝使用多个相机的信息。

和Object DGCNN类似,我们的方法不需要后处理,比如融合每个图像或全局NMS,并且性能和现有基于NMS方法相当。在相机视野的重叠区域, 我们方法明显优于其它方法。

  1. 我们发布了代码来促进复现性和未来的研究。

Method

在这里插入图片描述

Image Feature Extracting

输入图像经过ResNet + FPN后生成了多尺度的特征图。

2D-to-3D Feature Transformation

目前已经存在的自底向上的方法会为每张image预测dense的 bounding box,并且需要一个post- processing 去处理,这种方法存在两个缺点:

  1. 依赖于depth 预测。
  2. NMS-based 方法不支持并行化。

作者为了解决上述问题,提出了自顶向下的方法,它的Decoder部分与Detr类似需要迭代六次,也可以理解为一共有6层,每一层的step如下:

  1. 随机生成 N个 object queries 并与 bounding box centre 关联。
  2. 把这些 centre point 通过 全连接层 生成BEV空间的 reference point,然后通过相机参数矩阵投影到2D 坐标。
  3. 获取从多尺度PV feature,这些2d坐标可能存在一些小数或者超过图像范围的值,前者利用bilinear interpolation ,后者通过二进制参数判断,越界置0,然后对同一个query映射到不同相机不同level的feature求和取均值。在这里插入图片描述
  4. 第一步的另一个分支,把 N个object queries 通过 Self- Multi-head-Attention内部交互,避免不同的queries 预测同一个bounding box。
  5. 把 self attention输出的 query 与 2d image feature cross attention。
  6. 把 3 ,4 步结果相加获得下一层 object queries的input。
  7. 经过attention更新后的object query通过两个MLP网络来分别预测对应物体的class和bounding box的参数。

Loss

损失函数的设计也主要受DETR的启发,我们在所有object queries预测出来的检测框和所有的ground-truth bounding box之间利用匈牙利算法进行二分图匹配,找到使得loss最小的最优匹配,并计算classification focal loss和L1 regression loss。

实验结果

在这里插入图片描述

在这里插入图片描述

目录
相关文章
|
4月前
|
机器学习/深度学习 算法 C语言
5.2.1 Backbone(特征提取) 5.2.2 Neck(多尺度检测)
这篇文章介绍了YOLOv3目标检测模型中的Backbone(特征提取)部分,详细阐述了使用Darknet53作为骨干网络来提取图像特征的方法,并通过代码示例展示了如何实现Darknet53网络结构以及如何查看不同层级输出特征图的形状,同时还讨论了Neck(多尺度检测)的概念,解释了如何通过特征图的尺寸放大和融合来实现对不同尺寸目标的检测。
|
6月前
|
机器学习/深度学习 算法 数据挖掘
第7章 目标检测与识别
第7章 目标检测与识别
|
6月前
|
测试技术
【细胞识别】YOLOv8实现CBC细胞检测
【细胞识别】YOLOv8实现CBC细胞检测
99 0
|
7月前
|
机器学习/深度学习 算法 计算机视觉
BEV新SOTA | Sparse4D v3用实例去噪+质量估计+解耦注意力全面提升BEV检测性能
BEV新SOTA | Sparse4D v3用实例去噪+质量估计+解耦注意力全面提升BEV检测性能
156 0
|
7月前
|
机器学习/深度学习 自动驾驶 安全
使用YOLO检测图像中的对象
使用YOLO检测图像中的对象
|
7月前
|
机器学习/深度学习 存储 API
基于YOLOv8的目标检测与计数
基于YOLOv8的目标检测与计数
|
机器学习/深度学习 算法 计算机视觉
【检测|RCNN系列-2】目标检测算法Fast RCNN(附论文获取方式)
【检测|RCNN系列-2】目标检测算法Fast RCNN(附论文获取方式)
194 0
【检测|RCNN系列-2】目标检测算法Fast RCNN(附论文获取方式)
|
机器学习/深度学习 自动驾驶 大数据
3D检测涨点Trick | 2D检测居然可以教BEV进行3D目标检测
3D检测涨点Trick | 2D检测居然可以教BEV进行3D目标检测
604 0
|
计算机视觉
FCOS升级 | FCOS在3D检测中应该如何使用呢?FCOS3D就是最好的验证(二)
FCOS升级 | FCOS在3D检测中应该如何使用呢?FCOS3D就是最好的验证(二)
475 0
|
机器学习/深度学习 传感器 自动驾驶
FCOS升级 | FCOS在3D检测中应该如何使用呢?FCOS3D就是最好的验证(一)
FCOS升级 | FCOS在3D检测中应该如何使用呢?FCOS3D就是最好的验证(一)
313 0