【MV-3D】----多视图的3D目标检测网络

MV-3D: 多视图的3D目标检测网络

  • 一、前言
  • 二、整体思路
  • 三、算法分析
    • 1、3D Proposal Network
      • 鸟瞰图表示
      • 前视图表示
    • 2、Rregion-based Fusion Network
    • 3、3D边界框回归
    • 4、网络正则化
    • 结果

一、前言

目前主流的空间点云检测主要有两种。一种是直接以三维点云作为输入,直接送入卷积网络或者转化为体素送入。另一种是将3D点云映射到2D,主要为鸟瞰图或者前视图。一般来说第一种方法目标的检测信息比较丰富,但相应的计算量也大;第二种处理得当的话计算量相对较小,但会导致信息的丢失。
MV-3D论文采用的是第二种方法,但考虑到信息的丢失,还采用前视图和图片进行融合矫正。

论文: https://arxiv.org/abs/1611.07759

二、整体思路

如下图所示:
【MV-3D】----多视图的3D目标检测网络_第1张图片
区域提案网络(PPN)已经成为高精度目标检测的重要组成部分。MV-3D也是基于RPN进行架构,可以看出整个主要分为两个主要部分:3D Proposal Network 和 Rregion-based Fusion Network。网络的输入有三种:俯视图(BV)、前视图(FV)和图像(RGB),经卷积网络输出后和3D Proposal进行 ROI pooling融合,再精选出3D边界框。

三、算法分析

1、3D Proposal Network

【MV-3D】----多视图的3D目标检测网络_第2张图片
网络的输入有三种:俯视图(BV)、前视图(FV)和图像(RGB)。主要思路为:

  1. 论文中的卷积层采用的是VGG-16,去掉了最后一层池层,因此卷积的部分进行了8次下采样。
  2. 3D提案是由俯视图产生的,因为投影到鸟瞰图可以更多的保持物体的尺寸,而且垂直方向上的差异较小可以更精准的获取3D边界框。
  3. 另外为了处理超小的对象,我们使用特征近似来获得高分辨率的特征图。特别地,我们在输入最后一个卷积特征之前插入了一个2倍的双线性上采样层映射到3D提案网络。类似地,我们在BV/FV/RGB分支的ROI池化层之前插入了一个4x/4x/2x的上采样层。
  4. 将生成的3D Proposal投影到各个视图中和卷积后的网络一起进中ROI pooling。由于来自不同视图/模态的特征通常具有不同的分辨率,因此对每个视图使用ROI池化来获得相同长度的特征向量。

鸟瞰图表示

鸟瞰图的表示是由高度、强度和密度编码的,将投影的点云离散为分辨率为0.1m的二维网格。

  1. 对于每个网格单元,高度特征被计算为单元中点的最大高度,为了对更详细的高度信息进行编码,点云被等分为m个切片,计算出每片的高度图,得到m个高度图。
  2. 强度特征是每个单元中具有最大高度的点的反射值,作用于整个点云。
  3. 点云密度表示每个单元中的点的数量,也是作用于整个点云。

总的来说鸟瞰图被编码为(m+2)个通道特征。

前视图表示

前视图表示为鸟瞰图表示提供补充信息。由于激光雷达点云非常稀疏,将其投影到图像平面会产生稀疏的二维点地图。相反,我们将其投影到一个柱面,以生成一个密集的前视图地图。
令点云中一个点的坐标为 P = (x,y,z),在前视图的相应坐标为 p f v = ( r , c ) p_{fv} = (r,c) pfv=(r,c)。两者之间的相互转化关系为:

  • C = [ arctan ⁡ ( y , x ) Δ θ ] [ \frac{\arctan(y,x)}{\Delta \theta }] [Δθarctan(y,x)]
  • r = [ arctan ⁡ ( z , x 2 + y 2 ) Δ ϕ ] [ \frac{\arctan(z,\sqrt{x^2+y^2} )}{\Delta\phi }] [Δϕarctan(z,x2+y2 )]

其中其中, Δ θ \Delta \theta Δθ D e l t a ϕ Delta\phi Deltaϕ分别为激光束的水平和垂直分辨率。

效果图如下:
【MV-3D】----多视图的3D目标检测网络_第3张图片

2、Rregion-based Fusion Network

设计了一个基于区域的融合网络,有效地结合多个视角的特征,共同对目标建议进行分类和进行面向方向的三维边框回归。
【MV-3D】----多视图的3D目标检测网络_第4张图片
为了结合来自不同特征的信息,采用了深度融合方法,融合多视图特征。另外论文还将深度融合网络和早期/晚期融合网络的架构比较。
【MV-3D】----多视图的3D目标检测网络_第5张图片
对于具有L层的网络,早期融合结合了来自输入阶段的多个视图的特征 f v {fv} fv
在这里插入图片描述
H l , l = 1 , ⋅ ⋅ ⋅ , L {H_{l},l=1,···,L} Hll=1L是特征变换函数,而⊕是一个连接操作(例如,连接、求和)。
相比之下,后期融合使用独立的子网来独立地学习特征转换,并在预测阶段结合它们的输出:
【MV-3D】----多视图的3D目标检测网络_第6张图片
论文中设计的深度融合过程如下:
【MV-3D】----多视图的3D目标检测网络_第7张图片
M代表元素级均值来进行深度融合的连接操作,因为它与跳跃训练结合时更灵活。

3、3D边界框回归

考虑到多视图网络的融合特性,我们从三维提案回归到定向的三维边界框。特别是,回归目标是3D边界框的8个角: t = ( ∆ x 0 , ⋅ ⋅ ⋅ , ∆ x 7 , ∆ y 0 , ⋅ ⋅ ⋅ , ∆ y 7 , ∆ z 0 , ⋅ ⋅ ⋅ , ∆ z 7 ) t=(∆x_0,···,∆x_7,∆y_0, · · · , ∆y_7, ∆z_0, · · · , ∆z_7) t=(x0x7y0,,y7,z0,,z7).它们被编码为由建议框的对角线长度归一化的拐角偏移量。尽管有这样的24d向量表示是多余的,但发现这种编码方法比中心和尺寸编码方法效果更好。

另外论文中提及在模型中,物体的方向可以从预测的三维框角中计算出来。(这个没有给出计算的过程)

使用多任务损失来联合预测对象类别和面向三维盒子。在生成提案网络中,类别损失使用交叉熵,而3D box损失使用平滑的L1_loss。

在训练期间,正/负roi是基于鸟瞰图的IoU重叠来确定的。如果鸟瞰图的IoU重叠度大于0.5,则3D提案被认为是正的。在推理过程中,在三维边界box回归后的三维box上应用NMS。我们将3D盒子投射到鸟瞰图中,以计算它们的IoU重叠。我们使用IoU阈值为0.05为了删除多余的box,以确保物体在鸟瞰视图中不能占据相同的空间。

4、网络正则化

对比于二维网络,正则化可以有效避免网络的过拟合,使整个网络有效的进行下去。论文中我们采用两种方法来正则化基于区域的融合网络:drop-path trainingauxiliary losses

对于每次迭代,我们随机选择做全局下降路径或局部下降路径它的概率为50%。如果选择全局下降路径,我们从三个视图中选择单个视图。如果选择了局部下降路径,则每个连接节点的路径是随机的下降的概率为50%。我们确保对于每个连接节点,至少保留一个输入路径。(这个是翻译过来的,总感觉不太准确)

为了进一步加强每个视图的表示能力,论文在网络中添加了辅助路径和损耗。
【MV-3D】----多视图的3D目标检测网络_第8张图片
在训练过程中,增加底部的三条路径和损耗,使网络正则化。辅助层与主网络中相应的层共享权重。

注意: 在检验过程中,这些辅助路径会被删除。

结果

【MV-3D】----多视图的3D目标检测网络_第9张图片

参考:
自动驾驶|3D目标检测:MV3D-Net(一)
【论文解读】MV3D-Net 用于自动驾驶的多视图3D目标检测网络

你可能感兴趣的:(3d,目标检测,网络)