【干货】浅述单目3D目标检测(长期施工中)

三维目标检测是一个相对上游、比较基础却又新兴的任务领域。得益于自动驾驶和2D目标检测的发展,如何从单目图像中,或附加一些额外信息来检测出一个三维的bounding box,是三维目标检测的主要任务范畴

根据任务的输入不同,三维目标检测可以主要分为三个任务流派:首先,所有流派均输入单目RGB图像和相机参数;额外使用LiDAR信息(或称velodyne)的激光雷达三维目标检测;额外使用多目图像(主要是双目视觉)的多目三维目标检测;以及不额外使用其他信息的单目三维目标检测。当然,也有一些工作关注无监督的三维目标检测,或是使用其他数据集研究迁移性能的工作,这些工作也都应根据输入情况归属于相应的任务领域中。

这三个任务流派的SOTA(2021年11月)评估指标大致在82%、52%、15%左右(AP 3D R40 @0.7 )

本篇小综述着重关注单目三维目标检测领域在KITTI 3D Object上的工作的发展脉络。覆盖论文则着重关注于2018年(该数据集创立于2017年,大致是此领域研究兴起时期)以来的CV顶会,随缘附加一些其他会议的论文。

希望读完这篇浅述后,大家可以对单目3D目标检测有着初步的了解和认识。笔者才疏学浅,欢迎各位带着批判的眼光审读,如有任何理解不到位之处,欢迎讨论和指正。


为了方便一些读者只想了解领域内的主要工作,我这里将论文介绍的部分放在整篇文章的最前面,而关于数据集的介绍和评估指标的详细内容,由于其比较technical,这里放在之后的部分讲解,如果想完整、细致地了解这个领域,建议先阅读这两部分,了解清楚数据形式和评估指标再看论文,食用效果更佳。

主要论文

论文的讲述主要以时间顺序,每篇都会先做简述,再做详述,方便一些只想看论文简述的同学使用。详述的粒度大致是李沐老师阅读论文方法的第二遍左右,着重关注论文的思想来源、网络框架、contribution等。

除了李沐老师的视频,更多关于我如何读论文的方法可以参见我的这篇文章:谈一谈CS.CV方向如何阅读论文?


2018 分界线

2018年,深度学习领域大概是一个什么样的情况?

  1. 2D检测领域,R-CNN兴盛、Mask R-CNN(2017 ICCV)刚刚出世,但是如SSD一类的单阶段方法距离两阶段方法,在精度上仍有一定差距;
  2. 两年前,Mono3D作为单目3D领域的开山鼻祖,刚刚进入人们的视野;随着KITTI数据集的完善和DeepMANTA(2017)等工作,人们逐渐意识到,单目3D也可以作为一个独立的研究领域。
  3. 单目深度预测领域,MonoDepth这类无监督方法收获了许多关注,同时也有一些监督方法霸占SOTA,不过更优秀的DORN、BTS等工作都还未出世。

如果你对2D检测不太熟悉,这里多说两句:我们知道事实上之后几年间,又陆陆续续涌现了许多单阶段方法(如CenterNet、FCOS等)可以在参数量较少的同时,精度与两阶段方法相媲美,这些方法也对之后单目3D检测领域产生了较大的影响;同时,之所以提到单目深度,是因为在当时人们的观念还停留在,想要预测3D bounding box就一定要有全局深度信息这样一个朴素的观点,我们会在后续的论文中逐渐感受到这种思想的进步。

Multi-Level Fusion (CVPR 2018)

简述

这是一篇领域内非常早期的工作,其主要思想,就是想把2D的目标检测任务拓展到3D上面,并声称提出了一种通用的框架,能够将2D的检测作为独立的模块,直接迁移过来使用。为此,作者设计了一种多级融合的机制,在网络的不同阶段,能够让深度分支与RGB分支得到信息的融合,并最终完成预测。

这种融合体现在三个部分,其中前两次融合可以提升网络性能但非必须,最后一次融合是不可消融的:

  1. 通过对深度图的处理,得到前视特征()

DETR3D (CoRL 2021)

数据集

(待完善)

评估指标

(待完善)