【3D目标检测】3D Object Detection from Images for Autonomous Driving: A Survey

目录

  • 概述
  • 细节
    • 背景
    • 基于2D特征的检测方法
      • 两阶段的方法
      • 单阶段的方法
    • 基于3D特征的检测方法
      • 特征提升的方法
      • 数据提升的方法
    • 利用辅助数据
    • 利用额外数据

概述

这是一篇22年的综述,介绍了3D目标检测中基于图像的检测算法。(论文中说本文是第一篇基于图像的3D目标检测算法综述!)

细节

背景

背景:基于图像的3D目标检测是一个病态的问题,因为我们要做的是从2D的输入中得到一个3D的结果。
相关性:基于图像的3D目标检测通常会与很多任务,如2D目标检测、深度估计、立体匹配(stereo matching,)和基于点云的3D目标检测任务相关。
通用问题:除了类别和3D边界框之外,可能还会要求其他的预测,比如KITTI同时要求2D边界框的预测;任务最初只提供图像和相机参数,但是很多时候一些额外的辅助数据,如例如立体像对(stereo pairs)、CAD 模型、点云等也会被使用。

数据集和评价指标:在之前的文章【3D目标检测】3D Object Detection for Autonomous Driving: A Survey中有简单的介绍。

分类概述:

  1. 基于2D特征的方法,主要就是结果提升的(result lifting-based methods),当然因为骨干是2D目标检测算法,可以进一步分为两阶段的方法以及单阶段的方法。
  2. 基于3D特征的方法,可以直接在3D空间中定位物体,那么针对得到3D特征的方法可以进一步分为特征提升方法(feature lifting-based methods)和数据提升方法(data lifting-based methods)。
    【3D目标检测】3D Object Detection from Images for Autonomous Driving: A Survey_第1张图片

基于2D特征的检测方法

3D目标检测最重要的任务就是3D边界框的预测和类别的预测,前者包含7个参数,分别是边界框的中心点 ( x , y , z ) (x,y,z) (x,y,z),边界框的尺寸 ( w , h , l ) (w,h,l) (w,h,l)以及最终的方向角。

而获得边界框位置信息的一个方法就是深度估计,首先基于CNN预测深度,这里的深度指的是对象中心的深度,而不是整体的深度图,接着将二维坐标投影到3维中,一个经典的公式如下:相关参数没怎么搞懂,后期再补充吧
【3D目标检测】3D Object Detection from Images for Autonomous Driving: A Survey_第2张图片
注:因为物体的物理尺寸具有很强的先验性,所以采用2D特征预测3D结果是可行的。

两阶段的方法

这里的两阶段方法的核心思想和2D目标检测是两阶段方法相同,但是存在一些区别

候选框生成:这边的候选框生成采用的方法一般是设置一些3D先验框,接着将他们投影到图像中得到候选框。但是这个过程会产生比较巨大的时间开销,因此有部分工作改进这个过程。
RPN网络的设计还是继续延续的,没做太大的改动。
其中还有一个特色是,引入一些新的空间信息来作为辅助,比如额外的图片或者深度图。

单阶段的方法

这里的单阶段方法主要就是基于2D目标检测中经典的Anchor-based和Anchor-free方法的改进。

基于3D特征的检测方法

这一方法的核心就是基于从图像中得到3D特征,然后基于3D特征进行相关参数预测和回归。

特征提升的方法

思想是将图像坐标系下的2D特征转换成空间坐标系下的3D体素特征,接着再转换成鸟瞰图(reshape?),从而得到最终的预测结果。
这边主要也可以分为两类,一类是单纯的单目图像的,另一类是针对立体图像的。

数据提升的方法

这一方法的核心是将2D图像转换成3D数据,比如点云。
伪激光雷达的方法:通过一些手段,将图像转换成点云形式,然后使用基于点云的算法进行检测。
该方法的改进:

  1. 这一方法很依赖与深度估计,因为一个优秀的深度图才能辅助产生更加真实的伪点云。
  2. 我们最初做深度估计的时候,估计了整图的深度信息,而我们需要的其实是前景部分的深度信息。
  3. 使用一些辅助的信息,如将原始的图像信息作为额外的特征附加到伪点云上。
  4. 端到端训练,因为这个过程主要是深度估计和检测,以往是分开训练的。

图像表示的方法:使用图像表示伪点云信息,得到和激光雷达方法类似的结果,提升性能是因为将数据从2维转换到了3维而,数据表现形式其实不重要。

基于GAN的数据提升方法:比如将前视图转换成鸟瞰图。

利用辅助数据

CAD模型:主要来自于公开数据集,产生两方面的作用,一方面用于自动生成细粒度的注释,提供更多的监督信号(具体的方式有好多种);另一方面用于数据增广

激光雷达信号:1、雷达信号用于监督,如产生深度图的监督、产生掩码、进行知识蒸馏,使用基于点云的模型辅助基于图片模型的训练、和GAN配合,基于图像生成点云,然后使用基于点云的算法;2、深度矫正,基于伪点云的算法需要估计的深度图来提供空间信息,但是深度估计的效果一直不好,无论是单目图像还是立体图像。

利用额外数据

额外的数据可能会在下面的一些任务重使用,如深度估计、无标注数据的自监督学习(因为当前数据集一般只标注收集数据的关键帧)、分割任务。

你可能感兴趣的:(论文学习,其他)