【3D目标检测】Joint 3D Proposal Generation and Object Detection from View Aggregation论文综述(2018)
1、 为什么要做这个研究(理论走向和目前缺陷) ?
之前的3D目标检测方法(MV3D)有很多问题,比如定位不准,计算量大等。
2、 他们怎么做这个研究 (方法,尤其是与之前不同之处) ?
基于MV3D做改进,主要改进思路是去除一个FV视角,候选区生成时同时利用3D anchor做中介,寻找在图像特征和点云鸟瞰图特征的对应,然后用双线性插值对这两个特征resize到相同大小(3X3)后通过element-wise average实现融合,后输入RPN网络预测ROI。ROI映射到图像特征和点云鸟瞰图特征融合也是同样的套路,即双线性插值到同一大小(7X7)->element-wise average融合。这种特征融合预测3D候选区以及预测最终的3D框的方法比MV3D中只利用图像特征预测roi作为所有模态的roi的方式更好。另外,文中还有一些trick,比如1)为了避免roi特征占太多内存,用了1X1对主干网络生成的特征图进行降维,2)用双线性插值取代roi pooling/align实现输出固定大小的特征图,3) 3D框用4个底部角点的平面坐标+1个底面高度+1个顶面高度值共计2X4+1+1=10个量编码,比以前的MV3D的用8个角点共计3X8=24量编码少很多,实现编码降维 4)用了FPN实现对小目标检测的提升。
3、 发现了什么(总结结果,补充和理论的关系)?
个人认为主要值得借鉴的点就是融合方法,同时利用点云鸟瞰图特征和图像特征预测候选区,以及3D框的编码方案实现了编码降维,效果也更好。
摘要:本提出了AVOD, 多视角(lidar BEV和图像)输入,两阶段网络,MV3D的加强版。
1、 引言
2D目标检测直接用了做3D目标检测并不成功,一个主要原因就是特征不存在第三维度,故需要直接预测一个第三维度z的值,而不是像2D那样预测x,y的相对偏移。
本文主要贡献如下:
1) 基于FPN网络,提出一个从lidar和图像中提取高分辨率的特征,以利于小目标的定位。
2) 提出一个可以利用多模态特征生成候选框的RPN网络。
3) 改变以往预测3*8=24个量的确定一个3D框的方法,采用预测10个量确定一个3D框,实现编码降维。
2、 相关研究
手工设计特征实现候选区生成:3DOP,Mono3D
单阶段的目标检测器:VeloFCN,3D-FCN,VoxelNet
基于单目相机的候选区生成:普通的2D检测器,比如F-PointNet里的2D检测器
基于单目的3D检测器:Deep MANTA,Deep3DBox
3D候选区生成网络:MV3D,
3、 AVOD架构
结构一看便知,就是分别有个特征提取网络从图片中和点云鸟瞰图中提取特征,有一个RPN网络可以利用这两个模态的特征生成3D候选区,然后基于这个候选区从图像特征和点云鸟瞰图特征把特征图crop下来进行融合,输入到后面的检测网络中。
A. 从点云和图像中来生成特征图:点云鸟瞰图输入有6个通道,其中5个是3D点云网格划分后,每个网格保存的是网格里的最高点的z值,最后一个通道记录各网格的点的密度信息。
B. 特征提取网络:主干网络是vgg-16,且用了FPN。其网络结构如下图所示:
C. 多模态融合的RPN网络:基于体素化为3D网格来预设3D anchor,anchor的表示是Axis Aligned的形式,如下图中间所示,一个anchor有中心点(tx,ty,tx),框长宽高(dx,dy,dz),每个网格的anchor多少是用聚类确定的,网格中若没有3D点,这个网格中的Anchor去掉。
利用多视角裁剪和缩放来提取特征图crops:这里每个anchor box在图片特征和点云BEV中都会有对应的区域,但是这两个区域Crop下来的特征图大小是不一样的,为了让他们变成固定大小的向量(3X3)以便于融合后(对应元素相加)输入到RPN网络里的全连接层进行objectess的预测和3D框的初步回归,这步操作用的双线性插值。而在Faster rcnn中这步操作一般是可以借鉴ROI pooling/align操作完成的。
用1X1卷积实现降维:每个主干网络输出的特征图通道数太多了,提取的roi对应的特征也会很多,故考虑用1X1卷积进行降维。
3D候选区生成:anchor对应的两个模态特征resize到3X3大小向量后进行融合,融合用的是对应元素平均(element-wise mean, 后面生成roi特征融合也是用的这个操作)。前背景anchor的确定是以3D anchor和GT 3D box在鸟瞰图视角的2D IOU来评估的。RPN网络生成的ROI需要NMS。
D. 第二阶段检测网络
3D 边界框编码:改MV3D中的8个角点(共计3X8=24个量)编码为用四个角点以及两个高度值(共计2X4+2=10个量)来进行编码,如上右图所示。4个角点并不能明确确定目标(车)朝向,因为有4个方向,为了确定朝向问题,还需预测一个向量(cos(theta), sin(theta))来确定朝向,找离这个theta角确定的方向最接近的四个方向中的一个,作为最终的方向。
生成最终的检测结果:就是第二阶段网络,跟rpn网络操作很类似,也是crop+插值+对应元素相加融合,生成的roi分别从图像特征和鸟瞰图特征中进行crop,crop下来的特征进行双线性插值为7*7的特征,然后进行对应元素相加进行特征融合,然后输入到最终的检测网络进行分类回归。
E. 训练
只分两类car和行人(行人类包括pedestrian和cyclist)。
4、 实验
3D候选区召回率: AVOD在50个候选区的情况下和MV3D在300个候选区情况下实现相同的召回率(91%)。
3D目标检测:用平均头向相似度(aveage heading similarity, AHS)评估航向角是否预测正确。AHS是平均朝向相似度(AOS)的2D版,即AOS在计算3D IOU基础上计算的,而AHS是在计算2D IOU基础上计算的。关于3D目标检测评估方案只有car类有,而pedestrian、cyclist是没有的。
FPN特征提取对小目标提升明显。
一些可视化结果:
5、 结论
提出了AVOD,两阶段的,融合图像和点云鸟瞰图的,能够预测3D目标朝向的3D目标检测器。