Multi-View 3D Object Detection Network for Autonomous Driving
CVPR 2017
1.摘要+intro
针对自动驾驶场景中的高精度三维目标检测问题,提出了MV3D网络。我们首先提出了一种多视点编码方案,为了获得对稀疏三维点云的紧凑和有效的表示。多视点3D检测网络由两部分组成:3D Proposal Network和a Region-based Fusion Network。3D Proposal Network是利用点云的鸟瞰视图表示来生成高精度的3D候选框,多视图融合网络通过将三维的proposals投影到多视图的特征地图上来提取region-wise的特征。我们还设计了一种深度融合的方法,为了实现不同视图的中间层之间的交互。
2.MV3D 网络
2.1. 三维点云表示
提出了将三维点云投影到鸟瞰视图和前视图的方法,使表示更加紧凑,并减少计算量
鸟瞰视图表达:鸟瞰视图按高度、强度和密度进行编码,将点云离散化为分辨率为0.1m的二维网格中(即每个网络对应真实的点云坐标为0.1m)。高度:每个切片对应一个高度图,高度图中的每个值表示之前单元格中点的最大高度。点云被分为M块,从而获得了M个高度图。强度:强度是每个单元格中有最大高度的点的映射值。密度:表示每个单元格中点的数目。强度和密度特征计算的是整个点云(即没有对点云切片),而高度特征是计算M切片,所以,总的俯视图被编码为(M + 2)个通道的特征。
前视图表达:前视图表示为鸟瞰视图表示提供补充信息,由于LIDAR点云非常稀疏,将其投影到图像平面会产生稀疏的二维点图。取而代之的是,我们将3d坐标投影到圆柱面上,以生成密集的前视图。通过坐标转换可以将3d坐标(x,y,z)转到前视图坐标(r,v)前视图被编码为3通道的特征,高度,距离,强度。
2.2 3D Proposal Network
使用鸟瞰地图作为输入来生成proposals!!!因为通过卷积层后8倍下采样后的特征图会使对象占的像素很小。因此,后面加了反卷积扩大了2倍。相当于送到RPN网络的输入只经历了原图的4倍下采样。该网络从一组3D先验框生成3D box proposals。3d box由(x,y,z,l,w,h)参数化,坐标是以LIDAR坐标系为准的3d长方体的中心和size。z可以根据相机高度和物体高度计算。在region proposals生成时不做方向回归而是留到预测阶段来做,这里只是将方向限制为0°和90°。
2.3 Region-based 融合网络
通过多视图的ROI pooling,使得每个视图(即鸟瞰视图(BV)、前视图(FV)和图像平面(RGB))获得相同长度的特征向量。
深度融合:
作者对比了这三种融合方法,最终采样了自己的深度融合,因为作者觉得基于元素均值的连接操作在与Drop-path训练相结合时更加灵活。
定向3d box回归:
考虑到多视点网络的融合特性,我们从3D proposals回归到3D方框。具体地说,回归目标是3D长方体的8个角的坐标,然后根据预测的3D方框角点坐标来计算对象的方向。
网络的正则化:
drop-path training和辅助损失。drop-path training将模型中的多分支结构随机”删除“。 然后为了进一步增强每个视图的表示能力,我们在网络中增加了辅助路径和损耗。辅助路径具有与主网络相同的层数,辅助路径中的每个层与对应的主网络层共享权重,同时也使用相同的多任务损失,即分类损失加上3D box回归损失来反向传播每条辅助路径。我们对包括辅助损失在内的所有损失进行平均加权。但辅助路径在推理时会被删除。
3.结果
效果达到了当时的SOT。