转载自:https://arxiv.org/pdf/2206.09474.pdf

2 背景


2.1 3D目标检测


检测结果的表示


        3D物体的表达通常为包含该物体的3D长方体,即B=[x_c,y_c,z_c,l,w,h,\theta,class],表示中心位置、长宽高、朝向和类别。有的工作会为该物体添加速度表示,即v_x,v_y。工业应用中,这些参数可以被简化为BEV下的4个角点坐标。


激光雷达数据表达


        若一个激光雷达发射m束激光,并在一个扫描周期内进行n次测量,可以产生一个range图像I_{range}\in \mathbb{R}^{m\times n\times 3},其每个像素通常包含3个通道:距离r,水平角\alpha和倾角\phi(点的球坐标表示)。range图像是激光雷达的原始数据表达。


        将球坐标转换为笛卡尔坐标即可转换为含N个点的点云I_{point}\in \mathbb{R}^{N\times3}


        额外的特征如反射强度可以附加到range图像的像素或点云的点上。


2.2 数据集


        KITTI是最早的提供标准数据采集和注释方法的先驱工作。目前的数据集的改进:增大数据量;提高数据多样性(如提供夜晚或雨天的数据);提供更多的标注类别(如障碍、动物)或细分现有类别(如行人分为成年人和儿童);提供更多的模态(如高清地图、热成像图等)。


2.3 评估指标


        评价指标主要分为两类。一类延伸2D目标检测的AP指标,但主要的区别在于匹配预测结果和真实物体的方法上。



  • 如KITTI提出AP_{3D}AP_{BEV},分别以3D IoU和BEV IoU为准则,设定阈值判断是否匹配。
  • 其他方法包括基于中心距离的匹配和匈牙利匹配等。

        另一类从更实际的角度评价:



  • PKL在下游任务上进行评价:分别基于检测结果和真实结果进行未来状态规划,并计算2者的KL散度来衡量检测质量。
  • SDE将自车到物体边界的最小距离定义为支持距离,然后计算支持距离误差来评估检测结果。

        AP指标忽视了实际中的安全问题,将近距离和远距离的错误检测看得同等重要;后者如PKL需要额外的运动规划模型,且该模型本身误差影响评价结果;SDE需要重建物体边界,通常十分复杂。



3 基于激光雷达的3D目标检测


3.1 数据表达


        虽然range图像密集而紧凑,但由于其包含的是3D信息而不是RGB值,使用卷积网络可能不是最优方法;点云稀疏且排列无规律,需要专门设计的模型进行特征提取。


3.1.1 基于点的3D目标检测


        一般框架:如下图所示。



        点云采样:最常用的是最远点采样(FPS),如PointRCNN;此外还有基于分割的滤波、特征空间采样、随机采样、基于体素的采样以及坐标细化等。


        特征学习:最常用的是set abstraction,即首先使用指定半径的ball query得到上下文点,然后使用MLP和最大池化聚合,得到新的特征。此外还有图操作、注意力操作、Transformer等方法。


        潜力与挑战:上下文点数量和ball query时的半径如何合适选择;最远点采样有效但耗时。


3.1.2 基于网格的3D目标检测


        一般框架:如下图所示,先将点云离散化为体素、柱体或BEV特征图,然后使用2D卷积或3D稀疏卷积处理。



        基于网格的表达:体素(立方体形网格,多数为空);柱体(在垂直方向上无限长);BEV特征图(通过体素/柱体投影得到;也可直接使用原始点的统计数据生成,如二值占用或局部点云的高度或密度)。



  • VoxelNet:体素表达的首个网络。提出体素特征编码方法提取每个体素内点的特征。
  • PointPillars:柱体表达的首个网络。使用PointNet聚合每个柱体内的特征。

        基于网格的网络:_2D卷积网络_可用于BEV或柱体表达,通常直接使用2D检测中的ResNet、区域提案网络(RPN)、特征金字塔网络(FPN)或空间注意力;3D卷积网络基于稀疏卷积和子流形卷积,即仅在非空体素上进行卷积以提高效率。



  • SECOND:使用稀疏卷积和子流形卷积的首个网络。

         挑战:选择合适的网格大小以平衡效率和性能。


3.1.3 基于点-体素的3D目标检测


        分为两阶段网络和单阶段网络。


        单阶段点-体素检测网络:通过体素到点的转换或点到体素的转换来建立点和体素的特征桥梁,以同时利用点包含的细粒度的几何信息和体素计算效率的优势。结构如下图所示。




  • 使用点-体素融合方法的工作包含点-体素卷积、基于点的辅助网络和多尺度特征融合。

        两阶段点-体素检测网络:在不同阶段使用不同表达。在第一阶段使用体素表达生成3D提案,然后在第二阶段采样关键点,并用其细化3D提案。




  • PV-RCNN:第一阶段使用SECOND,然后第二阶段的细化使用RoI池化。
  • 其他改进第二阶段head的模块:RefinerNet、VectorPool、逐点注意力、尺度感知池化、RoI注意力、通道Transformer、点密度感知细化模块。

        挑战:单阶段网络体素到点的转换或点到体素的转换耗时;两阶段网络聚合提案中点的特征耗时。相比于基于体素的方法,性能和推断时间均有提升。


3.1.4 基于range的3D目标检测



        基于range的检测模型



  • LaserNet:使用深度层聚合网络(DLA-Net)得到多尺度特征,用于检测3D目标。
  • 其他工作使用U-Net、RPN、R-CNN、FCN和FPN等。

         基于range的操作:如本章开头所说,使用常规2D卷积可能不是最优方案。



  • 一些工作提出range膨胀卷积、图操作、meta-核卷积等。

        基于range的检测视图:可以直接使用range视图(球体视图),但存在尺寸变化和遮挡问题。最实用的方法是在range视图提取特征,并在BEV视图检测。



  • 一些工作使用圆柱体视图,或是RV、BEV和/或点视图(PV)的组合。

3.2 3D目标检测的学习目标


        挑战:通常3D目标检测中的物体相比整个检测范围来说很小;点云稀疏且物体形状不完整,导致估计物体大小和中心很困难。


3.2.1 基于锚框的3D目标检测



        锚框是预定义尺寸且与类别有关的长方体,通常在BEV平面上定义,在每个网格放置锚框。3D物体可以通过(与真实边界框有高IoU值的)正锚框来预测。


        损失函数L_{det}=L_{cls}+L_{reg}+L_\theta,三项分别是分类损失、边界框尺寸和位置回归损失以及朝向角损失。


        下面的公式中,上角标g表示真实边界框的参数,a表示锚框参数,无上角标的表示预测边界框的参数。


        分类损失如下:



  • VoxelNet是首个根据IoU来定义正负锚框的工作,对锚框进行分类使用二值交叉熵损失:

L_{cls}^{bce}=-[q\cdot \log(p)+(1-q)\cdot\log(1-p)]


其中p为正锚框的预测概率,q=1表示该锚框为正锚框,q=0为负锚框。


        此外focal损失也用于提高定位能力:


L_{cls}^{focal}=-\alpha(1-p)^\gamma\log(p)


其中多数工作使用\alpha=0.25,\gamma=2


        回归损失如下:


L_{reg}=\sum_{u\in\{x,y,z,l,w,h\}}\textup{SmoothL1}(u-\Delta u)


其中


\Delta x=\frac{x^g-x^a}{d^a},\Delta y=\frac{y^g-y^a}{d^a},\Delta z=\frac{z^g-z^a}{h^a}


\Delta l=\log(\frac{l^g}{l^a}),\Delta w=\log(\frac{w^g}{w^a}),\Delta h=\log(\frac{h^g}{h^a})


d^a=\sqrt{(l^a)^2+(w^a)^2}为BEV下锚框的对角线长度。


        朝向角损失(弧度)如下:


\Delta\theta=\theta^g-\theta^a,L_\theta=\textup{SmoothL1}(\theta-\Delta\theta)


        直接回归弧度偏差通常很困难,可以使用更好的方案如基于区间的朝向估计。即先将角度空间分割为区间,然后使用基于区间的分类(相应损失为L_{dir}),最后在区间内回归:


L_\theta=L_{dir}+\textup{SmoothL1}(\theta-\Delta{\theta}')


其中\Delta{\theta}'是区间内的残差偏移。


        还可以使用正弦函数编码弧度偏移:\Delta\theta=\sin(\theta^g-\theta^a),再按照上两式之一计算L_\theta


        还可使用将所有参数综合考虑的IoU损失L_{IoU}=1-IoU(b^g,b);以及角点损失c_i为边界框的第i个角点):


L_{corner}=\sum_{i=1}^8\left \| c_i^g-c_i \right \|


        基于锚框检测的优缺点:利用类别尺寸的先验知识生成的锚框,可以实现精确检测。但要覆盖整个检测范围需要的锚框数量庞大;对极小物体(小于网格)的检测困难。


3.2.2 无需锚框的3D目标检测


        与基于锚框的方法的主要区别在于如何定义正负样本。下面介绍正样本分配方法。



         基于网格的分配:用于BEV、柱体和体素表达。



  • PIXOR:使用真实物体内部的像素作为正样本(物体内部分配)。
  • 后续工作的改进为将物体中心最近的像素作为正样本。
  • CenterPoint​​​​​​​:在每个物体中心使用高斯核来分配正标签。

        分类损失同前所述。回归目标为\Delta=[dx,dy,z^g,\log(l^g),\log(w^g),\log(h^g),\sin(\theta^g),\cos(\theta^g)](其中dx,dy为正网格和物体中心的偏差),然后使用SmoothL1损失来回归\Delta


        基于点的分配:多数基于点的检测方法都使用无锚框、基于点的分配。首先进行语义分割,将物体内部或附近的点作为正样本,然后用这些正样本来学习3D边界框。可以通过添加中心点得分来提高性能。


        基于range的分配:同样可将物体内部的像素作为正样本。与前面不同的是,回归时采用物体中心坐标系,回归目标与基于网格分配相同,仅需额外的坐标变换。


        集合到集合的分配



  • DETR:使用匈牙利算法自动将预测值分配给相应的真实物体,公式为

M^\ast =\arg\min_M\sum_{(i\rightarrow j)\in M}L_{det}(b_i^g,b_j)


其中M是正样本到物体的一对一映射。


  • 其他方法为匈牙利算法提出新的代价函数。

        无锚框检测的优缺点:在分配策略上比锚框设计有更高的灵活性,适用于各种表达,且无需几何先验;基于中心的无锚框检测方法在小物体检测中超过了基于锚框的检测方法。困难在于选择合适的正样本。


3.2.3 3D目标检测的辅助任务


        许多方法使用辅助任务增强空间特征,并隐式地指导3D目标检测。


        语义分割:前景点分割可以隐式地提供物体位置信息,许多基于点的3D目标检测方法均使用前景点分割;语义信息可以增强空间特征;可以滤掉背景点,使得检测更高效。


        IoU预测:使用IoU预测分支估计IoU分数S_{IoU}来修正置信度分数S_{conf},即推断时使用S_{conf}=S_{cls}\cdot (S_{IoU})^\beta来替换原本的S_{conf}=S_{cls},其中\beta为抑制低IoU预测、增强高IoU预测程度的超参数。这样高质量预测更容易作为最终预测结果。


        物体形状补全:由于点的稀疏性,物体的形状是不完整的。方法包括形状解码器、形状签名和概率占用网格。


        物体部件估计:能提供更细粒度的结构信息。


        其他辅助任务包括场景流估计(确定静止和运动目标)和目标跟踪。



4 基于摄像机的3D目标检测


4.1 基于单目图像的3D目标检测


        挑战:单目图像不能提供充足的3D信息,位置估计非常困难。补偿方法包括深度估计、几何约束和形状先验等。


4.1.1 仅基于图像的3D目标检测


        类似2D目标检测,该方法直接使用图像回归3D边界框参数。


        单阶段、基于锚框的方法



        使用2D卷积处理放置在每个像素处的2D-3D锚框,回归物体边界框参数。即对像素[u,v],预定义一系列3D锚框[w^a,h^a,l^a,\theta^a]_{3D}、2D锚框[w^a,h^a]_{2D}和深度锚d^a;然后2D卷积估计2D框偏移\delta_{2D}=[\delta_x,\delta_y,\delta_w,\delta_h]_{2D}、3D框偏移\delta_{3D}=[\delta_x,\delta_y,\delta_d,\delta_w,\delta_h,\delta_l,\delta_\theta]_{3D}。则2D边界框b_{2D}=[x,y,w,h]_{2D}


[x,y]_{2D}=[u,v]+[\delta_x,\delta_y]_{2D}\cdot [w^a,h^a]_{2D},[w,h]_{2D}=e^{[\delta_w,\delta_h]_{2D}}\cdot[w^a,h^a]_{2D}


3D边界框b_{3D}=[x,y,z,w,h,l,\theta]_{3D}


[u^c,v^c]=[u,v]+[\delta_x,\delta_y]_{3D}\cdot [w^a,h^a]_{2D},[w,h,l]_{3D}=e^{[\delta_w,\delta_h,\delta_l]_{3D}}\cdot[w^a,h^a,l^a]_{3D}


d^c=d^a+\delta_{d_{3D}},\theta_{3D}=\theta^a_{3D}+\delta_{\theta_{3D}}


其中[u^c,v^c]是物体中心在图像上的投影,d^c为投影的深度。转换关系为


d^c\begin{bmatrix} u^c\\ v^c\\ 1 \end{bmatrix}=KT\begin{bmatrix} x\\ y\\ z\\ 1 \end{bmatrix}_{3D}


其中KT分别为摄像机的内外参。



  • M3D-RPN:首次提出基于锚框的网络。
  • 其他工作:将上述工作扩展到基于视频的3D目标检测、引入差分非最大抑制、设计非对称注意力模块等。

        单阶段、无需锚框的方法



        图像输入2D卷积网络,多个头分别预测物体属性(分类、关键点/中心点[u,v]、中心点偏移[\delta_x,\delta_y]、深度偏移\delta_d、尺寸[w,h,l]、观测角\alpha),则物体的3D中心投影到图像上的位置和深度为(投影公式与前面相同):


d^c=\sigma^{-1}(\frac{1}{\delta_d+1}),u^c=u+\delta_x,v^c=v+\delta_y


其中\sigma为sigmoid函数。偏航角\theta可由下式计算:


\theta=\alpha+\arctan(\frac{x}{z})



  • CenterNet:首个使用单阶段无锚框的方法在单目图像上3D检测。
  • 其他工作:引入新的深度估计方案、类似FCOS的结构、基于IoU的损失函数、关键点、点对关系、相机外参预测、视角转换。

        两阶段方法



         第一阶段使用2D检测器生成2D边界框,然后第二阶段使用2D RoI预测3D物体参数。



  • ROI-10D:将Faster R-CNN扩展,引入新的head,在第二阶段预测3D参数。
  • 其余方法:分离2D和3D检测损失,在第一阶段预测航向角,学习更精确的深度信息。

        优缺点:可直接通过改进2D检测器实现、通常是端到端的学习;但估计准确的d^c很困难,且是影响性能的主要因素。


4.1.2 深度辅助图像3D目标检测


        首先使用深度估计器(如MonoDepth或DORN)生成深度图像。然后有两种方法处理深度图像和单目图像。


        基于深度图像的方法:使用专门的操作融合深度图和图像,生成深度感知特征,学习更精确的3D边界框,且可使用深度图像进一步细化。




  • MultiFusion:首个基于深度图像的检测网络。
  • 其他方法:point attentional网络、深度引导卷积、深度条件信息传递、分离外观和定位特征、深度预训练网络。

        基于伪激光雷达的方法:将深度图D\in \mathbb{R}^{H\times W}转换为伪激光雷达点云P\in \mathbb{R}^{HW\times3},然后使用基于激光雷达的检测器预测3D物体。



        转换方法:设像素[u,v]对应深度d,对应点的坐标为[x,y,z],则


x=\frac{(u-c_u)\times z}{f_u},y=\frac{(v-c_v)\times z}{f_v},z=d


其中[c_u,c_v]为相机主点,f_u,f_v为沿着横轴和纵轴的焦距。



  • 改进方法:为点云增加色彩信息、实例分割、设计渐进坐标变换方案、利用分开的前景和背景预测来促进深度估计、从真实激光雷达点云进行域自适应。
  • PatchNet:发现伪激光雷达表达的优势在于坐标变换而非点云表达。因此该文章使用坐标图M\in\mathbb{R}^{H\times W\times 3},其每个像素表示对应的3D坐标。这样使用2D卷积就能预测3D边界框,避免了费时的点云处理。


        优缺点:深度图的估计提高了性能;但训练深度估计网络需要额外的逐像素深度标注,整个网络也不能进行端到端的训练。并且预训练的深度估计网络泛化性差,与检测的域之间存在domain gap,不能适应复杂的自动驾驶环境。


4.1.3 基于先验的图像3D目标检测


        先验知识可以通过预训练网络或辅助任务学习,以提供额外的信息或约束来帮助3D检测。



各种先验包括:


        物体形状:使用图像直接进行形状重构,表达3D物体以确定位置和姿态。3D重建物体有5种表达形式:CAD模型、线框模型、带符号距离函数(SDF)、点、体素。



  • 一些工作使用DeepSDF从CAD模型学习隐式的带符号距离函数或低维形状参数,进一步提出提交-比较方法学习3D物体的参数。

         几何一致性:即利用3D点坐标和2D像素位置之间的几何关系。单目检测中主要有5类几何约束:2D-3D框一致性、关键点、物体的高度-深度关系、物体间关系、地平面约束。



  • 可以通过最小化重投影误差来鼓励2D-3D框的一致性。
  • 可以从图像预测关键点,使用关键点校准物体大小和位置。
  • 对于实际高度为H的物体,若其在图像中的高度为h,则相应的深度为d=f\cdot H/h,其中f是相机焦距。

        时间约束:时序目标关系可以通过 深度排序 和 3D卡尔曼滤波器的多帧目标融合 来利用。


        分割:在某些工作中,物体分割掩膜对形状重构而言很重要;分割结果指示哪些像素属于目标,可以被用于帮助定位。


        优缺点:可以提高单目检测性能;对于形状重构和分割,需要预训练网络,整个检测流程不再是端到端的学习;形状重构通常是通过CAD模型而非真实物体来学习的,泛化性可能不足;而分割网络训练需要逐点标注,且预训练网络用于新数据时存在泛化问题;对于几何一致性,某些方法将其视为优化问题,在后处理步骤中优化参数,耗时,且不再是端到端学习。


4.2 基于立体图像的3D目标检测


        立体图像提供额外的几何约束,可以推断更准确的深度信息,会比单目检测性能更好;但仍与激光雷达方法有差距。


        立体匹配和深度估计:可以利用多视图几何学分析立体图像,生成视差图。对于左图中的一个像素I_L(u,v),若其在右图中对应的像素为I_R(u,v+p),则视差为p。视差图可转化为深度图:


d=\frac{f\times b}{p}


其中f是相机焦距,b是立体相机的基线长度。


        基于2D检测的方法:使用以Siamese为主干的2D检测网络生成左图和右图的感兴趣区,然后融合估计3D参数。




  • Stereo R-CNN:首次使用2D检测网络来实现立体图像3D检测。
  • 其它工作:第二阶段使用立体三角定位学习子网络、通过物体中心立体匹配和实例分割学习实例级视差、自适应实例视差估计、基于能量的网络。

        基于伪激光雷达的方法:类似单目检测,将视差图转换为深度图并转换为点云。




  • 有方法在立体匹配网络中引入depth cost volume。
  • 可以改进为端到端的立体匹配和检测网络。
  • 可以使用语义分割,对前景点和背景点分别预测视差。
  • 可以将Wasserstein损失用于视差估计。

        基于volume的方法:跳过伪激光雷达表达方法,直接在3D volume上进行3D检测。




  • DSGN:提出由立体匹配网络得到的3D几何volume,再使用基于网格的3D检测器。
  • 其他方法:使用知识蒸馏或3D特征volume。

        挑战:额外的立体匹配网络引入时间和空间耗费。


4.3 多摄像机3D目标检测


        挑战:如何识别不同视图中的相同物体、如何聚合不同视图的物体特征。


        方法:首先跨图像确定物体,然后聚合物体特征、进行3D检测。



  • 可使用跨视图几何约束或物体再识别来解决多视图定位问题。
  • 使用3D目标查询从不同视图裁剪图像特征,或将多视图特征转换为统一的3D特征volume以解决多视图特征聚合问题。


5 多模态3D目标检测


5.1 相机-激光雷达融合3D目标检测


        相机提供色彩信息,可以抓取丰富的语义特征;激光雷达提供3D结构和几何信息。SotA方法主要是基于激光雷达的3D检测,并将图像信息整合到激光雷达检测流程的不同阶段。但两者的融合增加了计算复杂度和推断时间。


5.1.1 早期融合


        在激光雷达输入到网络前,将图像信息整合到激光雷达点云中。早期融合一般是顺序结构:先使用2D检测器或分割器来提取图像知识,然后将知识传递给点云,最后使用3D点云检测器处理增强的点云。


        区域知识融合:使用图像知识减小3D点云的目标候选区域。即先使用2D检测器在图像生成2D边界框,将其投影到3D空间得到棱台,3D检测器仅在棱台内部检测。




  • F-PointNet:首次使用该方法。
  • 其他方法:将棱台离散化为网格,然后使用3D卷积检测;提出几何一致性搜索;使用柱体表达;使用模型拟合算法寻找棱台内的物体点云。

        逐点知识融合:使用图像特征增强点云。




  • PointPainting:使用图像语义分割结果,通过点到像素的投影来增强点云。使用3D目标检测器处理增强的点云。
  • 其他方法使用深度图像补全等方法,利用图像的其它信息。

        挑战:顺序结构引入了额外时间。


5.2.2 中期融合


        在主干网络融合:首先建立像素到点的对应关系,然后使用多种融合方法将图像特征和点云特征在激光雷达主干网络融合。




  • 基于网格的检测网络,多模态融合方法:连续卷积、混合体素特征编码、Transformer。
  • 也可只在主干网络的输出层融合,方法包括门控注意力、统一物体查询、BEV池化、可学习的对齐、点到射线的融合、Transformer等。

        在提案生成和RoI细化阶段融合:先使用3D检测器生成3D提案,然后投影到不同视图如相机视图和BEV视图,裁剪图像和点云特征。然后使用RoI头来融合两特征,并细化物体的3D参数。




  • MV3D和AVOD:首先在多模态检测中使用多视图聚合。
  • 其他方法:使用Transformer解码器作为RoI头用于多模态融合。

        优缺点:深度聚合多模态表达,提高检测性能。但目前的融合机制和视图对齐方法还有问题。


5.1.3 晚期融合


        在边界框级别的融合:使用2D和3D检测器分别处理图像和点云(并行),然后融合2D和3D边界框。




  • CLOCs:引入包含2D-3D边界框信息的稀疏张量,并从此张量学习物体置信度分数。

        优缺点:比起其他融合方法最高效,但不能整合不同模态之间丰富的语义信息。


5.2 含雷达信号的多模态检测


        雷达的优点包括:比激光雷达便宜、不易受极端天气影响、提供速度测量、有更大的检测范围。但其测量稀疏而富含噪声。


        雷达-激光雷达融合



  • 方法:基于体素的融合、基于注意力的融合、引入距离-水平角-多普勒张量、使用图卷积网络、使用动态occupancy map。

        雷达-摄像机融合:与激光雷达-相机融合相似。


5.3 含高清地图的多模态检测


        高清地图包含详细的道路形状、道路标记、交通标记、障碍物信息,能提供丰富的环境语义信息,作为先验辅助3D检测。挑战为如何将地图信息整合到3D检测网络中。


        方法:将高清地图转化为BEV视图,与点云的BEV视图融合。



  • 可以直接拼接两者通道,也可分别用主干网络提取特征后融合。


6 时序3D目标检测


6.1 激光雷达序列3D目标检测


        可使用时序建模工具融合多帧特征,且可将多帧点合并到一帧以获得更完整的物体形状。问题是多帧的处理引入额外时间,不能实时检测。



        方法:多数方法使用提案级别的时序信息聚合。即使用同一个检测器分别处理多帧点云生成提案,然后多个时序模块作用于提案和RoI特征以聚合多帧信息。



  • 时序聚合模块包括:时间注意力、ConvGRU、图网络、LSTM、Transformer。
  • 该方法可以用于3D目标自动标注流程。

6.2 流数据3D目标检测


        激光雷达是一个流数据源,在一个扫描中,激光雷达的packet被顺序地记录,因此在激光雷达扫描360°后,点云反应的不再是当前时刻的场景。因此需要使用当前的packet来检测目标,而非等到整个扫描完成。该方法更精确且延迟更小。



         方法:类似多帧点云处理,将每个packet看作独立样本,使用时序模块学习packet内关系。但packet含有的信息通常不足以精确检测3D目标。



  • 可使用更多的上下文信息,如使用空间memory bank或多尺度上下文padding方案。

6.3 视频3D目标检测


        方法:通常使用跟踪和跨帧融合同一物体来扩展基于图像3D检测。跟踪器包含LSTM和3D卡尔曼滤波器。



  • 还有文章同时使用多帧点云和视频检测,提出4D融合方法,从时序数据和多模态数据中学习。


7 Label-Efficient的3D目标检测


        前面的方法都是全监督方案,但存在泛化性差、缺少标注时性能下降的问题。


7.1 域自适应


        不同的传感器设置和放置、不同地理位置、不同天气都导致不同的数据域。



  • 一些方法利用源域和目标域之间的一致性,或在目标域进行自训练。但这些方法仅解决了域转移问题。

        域自适应就是设计可以适用于任何域转移问题的方法。


        跨数据集域自适应:不同数据集收集数据时的地理位置和传感器设置不同。



  • 可使用统计标准化方法处理domain gap。
  • 也可使用自训练解决域自适应问题。在源域预训练的检测器为目标域生成伪标签,然后在目标域使用伪标签重新训练网络。自训练的改进通常为提高伪标签质量:尺度检测策略、memory bank、场景流信息、回放等。
  • 还有方法建立源域和目标域的对准,如使用尺度感知和距离感知的对齐策略、多层次一致性、对比协同训练方案。

        跨天气域自适应:如雨天的激光雷达采集点比晴天时更稀疏。



  • 有方法使用语义点生成方案处理这一问题。

        跨传感器域自适应



  • 可使用多任务学习方案解决不同激光雷达间的domain gap。
  • 可使用有位置不变性的变换处理不同相机间的domain gap。

        模拟到真实的域自适应:模拟/合成数据与从真实世界得到的数据有不同特性。



  • 可使用基于Cycle GAN的学习或对抗性判别器来区分真实数据和合成数据。

7.2 弱监督3D目标检测


        如使用不那么昂贵的2D边界框标注,从弱信号中挖掘由于信息,训练3D目标检测模型。



        弱监督包括2D图像边界框、预训练图像检测器、BEV物体中心和车辆实例。


7.3 半监督3D目标检测


        半监督学习即使用少量有标签数据和大量无标签数据联合训练网络。


        主要有两种方法:伪标签标注和师生学习。


        伪标签标注:先用有标签数据训练3D检测器,然后使用其为无标签数据生成伪标签。然后在无标签数据域,使用伪标签进行重训练。


        师生学习:将Mean Teacher用于3D检测。先在有标签域训练教师检测器,然后通过鼓励教与学检测模型的输出一致性来指导学生检测器在无标签域上的训练。



7.4 自监督3D目标检测


        自监督学习即在大规模无标签数据集上以自监督方式预训练,然后在有标签数据集上微调。现有的方法只有在单一模态数据上使用自监督方法(如对比学习)。



        方法:使用对比学习。即首先将点云投影为带增广的两个视图,然后使用对比学习鼓励两视图同一3D位置的特征一致性。然后使用有标签数据集微调预训练的网络。



  • PointContrast:首先在3D检测任务中使用对比学习。
  • 其他方法的改进:引入深度信息或聚类。
  • 还有方法使用模态内和模态间的对比学习方案,在点云和图像的多模态数据上检测。


8 驾驶系统中的3D目标检测


8.1 自动驾驶中的端到端学习



        3D目标检测的性能会影响下游任务,如跟踪、预测、规划。因此将3D目标检测和其他感知任务以及下游任务联合训练是更好的方案。


        联合感知和预测:端到端的感知、跟踪和预测未来轨迹。



  • FaF:首个使用单个3D卷积网络,联合完成3D目标检测、跟踪和轨迹预测。
  • 其他方法的改进:使用地图信息、引入交互式Transformer、设计时空交互网络或时空金字塔网络等。

        联合感知、预测和规划:通过在上述基础上添加运动规划,整个系统可以从规划器的反馈中获益。


        完全端到端学习:输入传感器数据,循环顺序执行感知、预测、规划、运动控制,最终生成驾驶的转向和速度信号。


8.2 3D目标检测的仿真


        3D目标检测所需的数据可以从真实世界中采集,但真实世界往往缺少极端天气或事故现场下的数据。仿真可以生成关键的合成数据。挑战是如何生成更真实的合成数据。


        视觉仿真:生成逼真的自动驾驶合成图像。


        激光雷达仿真:仿真生成激光雷达点云。


        驾驶仿真:建立交互式驾驶平台,虚拟汽车可以感知虚拟环境并与其交互,最终规划策略。



  • CARLA:首个开源自动驾驶模拟器。

8.3 3D目标检测的鲁棒性


        基于学习的3D目标检测容易受到对抗性攻击。对抗性地为传感器数据添加扰动或物体会欺骗模型,导致误检测。挑战是开发易实现和应用的对抗性攻击和防御算法。



  • 可通过对抗机器学习攻击传感器,欺骗检测器。

8.4 协同3D目标检测


        目前的检测均基于单个自车,存在遮挡和远处点云稀疏的问题。可以使用多智能体协同的设置,每个自车可以与其余智能体(汽车或基础设施)交互,并利用其余智能体的信息提高检测性能。挑战是平衡通信带宽和检测精度。


        通信的信息可以是原始传感器数据(仅需小带宽、高效)或压缩后的特征图(需要高带宽,但能进一步提高性能)。



9 分析与展望


        分析比较:伪激光雷达单目检测、立体图像检测、多模态检测方法的推断时间通常很长,不能满足实时性要求。


        对于激光雷达检测,基于体素的和基于点的检测方法性能最好,而基于柱体的方法速度最快。基于BEV和RV的检测也很高效。


        基于立体图像的检测性能远高于基于单目图像的检测。


        多模态检测方法提高了性能,代价是增加推断时间,且对早期融合方法该问题最严重(因其为顺序结构)。


        总的而言,对3D目标检测而言,综合考虑性能和推断时间,目前最好的方法是基于激光雷达的方法;基于激光雷达检测网络的多模态融合检测性能最好;基于相机的检测方法性能最差,但成本最低。


        未来展望:开发开放数据集3D目标检测方法(从开放世界中学习,能识别大量物体类别);3D目标检测具有更强的可解释性;设计针对3D目标检测更高效的硬件(GPU不适合对稀疏而不规则的点云进行3D操作);在自动驾驶系统中端到端地检测。