3D目标检测的学习目标主要是针对小目标(相比检测范围,目标太小),另一方面是由于点云的稀疏性,如何准确估计其目标的中心和尺寸也是一个长期挑战。
anchor是预定义的长方体,具有固定的形状,可以放置在3D空间中。3D目标可以基于正anchor进行预测,这些正anchor与GT的IoU最大。anchor-based的3D目标检测方法一般是从鸟瞰图上检测3D目标,将3D anchor放置在BEV特征图的每个网格单元上进行。3D anchor通常对于每个类别都有一个固定的尺寸,因为同一类别的目标有相似的大小。
anchor-based的损失函数包括了分类损失、回归损失、偏航角损失等。分类损失常用的是二值交叉熵、Focal loss,回归则是SmoothL1,航向角需要注意使用bin-based航向估计较好。除了这些单独的损失函数外,将整个3D目标作为整体去考虑,也有使用IoU loss的,再辅以corner loss,让3D目标的检测更加稳定。
下面是anchor-based方法的示意图和主要目标损失函数:
anchor-free方法去掉了复杂的anchor设计阶段,可灵活应用于BEV、点视图和Range视图等。没有了anchor,就需要找其它正负样本分配方法。比如基于一些网格(BEV网格单元、体素、柱体)进行分配正负样本,比如PIXOR、CenterPoint等。
还有基于点的分配策略,大部分都是先将前景点分割出来,在3D目标内或附近的作为正样本,并学习这些前景点。基于Range的分配主要是将Range像素在3D目标内的作为正样本,并且回归的时候不是以整个3D坐标系统为基础,而是以目标为中心的回归坐标系。
DETR提出了一种集合到集合的分配方式,利用匈牙利算法预测结果自动分配到对应的GT。
anchor-free方法设计灵活,不引入其它先验,学习过程简化了很多,其中基于中心的方法[329]对小目标检测有较大潜力可挖。
虽然优点不少,但不可否认,anchor-free方法如何选择合适的正样本来生成预测结果是个问题,相比于anchor-based中使用高IoU正样本,anchor-free可能会选到一些不好的正样本,造成预测结果出现偏差。
下面显示了anchor-free方法和一些里程碑方法。
利用辅助任务来增强3D目标的空间特征,并能对3D目标检测提供一些隐性的指导。常用的辅助任务包括:语义分割、IoU分支预测、目标形状补全、部件识别。
主要的基于相机的3D目标检测方案分为:单目3D、双目、多相机3D等,具体看下图的分类:
本身从单目图像中检测3D空间的目标是一个病态问题,因为单目无法提供足够的3D信息,很难预测3D目标准确的位置信息。
很多方法利用几何约束和形状先验从图像中推断深度信息,也是一种优化单目3D目标定位问题的思路。但是和激光雷达比,还是相差较远。
受到2D检测方法的启发,单目3D目标检测最直接的解决方案是通过卷积神经网络从图像中直接回归3D框参数。直接回归的方法借鉴了2D检测网络架构的设计,可以端到端训练。这些方法可以分为单阶段、两阶段,或anchor-based/anchor-free方法。
基于anchor的方法主要预先设置好3D-anchor、2D-anchor、深度anchor,然后图像经过卷积网络后得到2D和3D的预测偏置,最终解码及转换过程如下所示:
深度估计是单目3D目标检测的关键。为了获得更准确的单目检测结果,许多论文采用预训练辅助深度估计网络的方法。
具体来说,单目图像首先通过预训练的深度估计器,如MonoDepth[83]或DORN[76],生成深度图像。然后,主要有两类方法处理深度图像和单目图像。
基于深度图像的方法将图像和深度映射与专门的神经网络融合,生成深度感知特征,可以提高检测性能。基于伪激光雷达的方法将深度图像转换为伪激光雷达点云,然后在点云上应用基于激光雷达的3D检测器来检测3D目标。具体如下表及图所示。
许多方法利用图像中目标的形状和场景几何等先验知识,解决病态的单目3D目标检测问题。
通过引入预训练的子网络或辅助任务来学习先验知识,这些子网络或辅助任务可以提供额外的信息或约束来帮助精确定位3D目标。广泛采用的先验知识包括目标形状、几何一致性、时间约束和分割信息。
如下表所示。
基于双目的3D目标检测是指从一对图像中检测出3D物体。与单目图像相比,双目提供了额外的几何约束,可用于推断更准确的深度信息。
基于双目方法通常比基于单目的方法获得更好的检测性能。当然,基于双目的方法与基于激光雷达的方法在性能上仍有很大的差距。
双目方法与单目检测方法相比,可以通过立体匹配技术获得更精确的深度和视差估计,从而带来更强的目标定位能力,显著提高了3D目标检测能力。具体方法见下图及表。
自动驾驶汽车通常会配备多个摄像头,从多个视角获取完整的周边环境信息。然而,如何利用多视图图像进行3D目标检测还没有得到广泛的研究。
多摄像头3D目标测的一个关键问题是如何识别不同图像中的同一目标,并从多视角输入中聚合目标特征。
一些论文通过利用跨视图几何约束[227]或目标重识别[52]来解决多视图目标定位问题。其他工作通过引入3D目标查询从不同视图裁剪图像特征[286]或转换不同视图的特征来处理多视图特征聚合问题。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。