文章目录
- 摘要
- 面临的问题
- 本文主要贡献
- 网络结构
- 网络结构
-
- 从点云中产生BEV
- B.特征提取器
- C.多模型融合区域建议网络
-
- 通过1×1的卷积进行降维
- 产生anchor
- 通过多视图裁剪和调整大小操作来提取feature crops
- 3D proposal 生成
- D. Second Stage Detection Network
-
- 3D Bounding Box Encoding
- Explicit Orientation Vector Regression
- 本文创新点
摘要
摘要提出了一种用于自主驾驶场景的视图对象检测网络AVOD。该神经网络结构利用激光雷达点云和RGB图像生成两个子网络共享的特征:区域建议网络(RPN)和二级检测器网络。该算法利用一种新的结构,能够对高分辨率特征映射进行多模态特征融合,为道路场景中的多个对象类生成可靠的三维目标方案。利用这些建议,第二阶段检测网络执行精确的三维边界盒回归和分类,以预测三维空间中对象的范围、方向和分类。
面临的问题
近年来,深度神经网络在二维目标检测任务上取得的显著进展并没有很好地转移到三维物体的检测上,两者之间的差距在KITTI目标检测基准等标准基准上仍然存在较大差距,2D汽车检测器的平均精度(AP)已达到90%以上,而在同一场景中得分最高的3D汽车检测器的AP值仅为70%。造成这种差距的原因是由于在估计问题中添加了第三维度而引起的困难、三维输入数据的低分辨率以及其质量随着距离的变化而恶化。此外,与2D对象检测不同,3D对象检测任务需要估计定向边界框。与2D目标检测器类似,大多数用于3D目标检测的最新深度模型依赖于3D区域建议生成步骤来减少3D搜索空间。使用区域建议可以在后期检测阶段通过更复杂和计算开销更大的处理来生成高质量的检测。但是,在建议生成阶段丢失的任何实例在以下阶段都无法恢复。因此,在区域提案生成阶段实现高召回率对于良好的绩效至关重要。
Faster R-CNN RPN体系结构是为密集、高分辨率的图像输入而定制的,在这种情况下,对象通常占据特征映射中的几个像素以上。当考虑稀疏和低分辨率输入时,例如前视图或鸟瞰视图(BEV)点云投影,该方法不能保证有足够的信息来生成区域建议,特别是对于小对象类。
本文主要贡献
1)受二维目标检测的特征金字塔网络(FPNs)的启发,本文提出了一种新的特征提取器,它从激光雷达点云和RGB图像生成高分辨率的特征地图,允许场景中的小类的定位。
(2)提出了一个特征融合区域建议网络(RPN),该网络利用多种模式为小类生成高召回率区域建议。
(3)我们提出了一种新颖的三维包围盒编码符合长方体几何约束,允许更高的三维定位精度。
(4)提议的神经网络架构在RPN阶段利用1×1卷积,以及3D锚投影的固定查找表,在保持检测性能的同时,允许高计算速度和低内存占用
网络结构
图1:该方法的体系结构图。特征提取器显示为蓝色,区域建议网络为粉红色,第二阶段检测网络为绿色。
使用特征提取器从BEV映射和RGB图像生成特征映射。然后,RPN使用这两个特征图生成无定向区域建议,并将其传递给检测网络进行尺寸调整、方向估计和类别分类。
网络结构
从点云中产生BEV
从点云[-40,40]×[0,70]米处裁剪,从0.1米分辨率的点云体素网格表示生成六通道BEV映射,前五个通道使用每个网格单元中点的最大高度进行编码,从沿Z轴[0,2.5]米之间的5个等分片生成。第六个BEV通道包含每个单元计算的点密度信息,取两个值(1.0,log(N+1)/log16)中的较小值。其中N是cell中点的个数。
B.特征提取器
图2.特征映射通过红色箭头从编码器传播到解码器部分。然后与解码器的每个阶段通过学习的上采样层执行融合,然后进行级联,然后通过卷积层进行混合,从而在解码器的最后一层生成全分辨率特征映射。
提出的架构使用两个相同的特征提取架构,每个输入视图一个。由两个部分组成:编码器和解码器。编码器仿照VGG-16进行了一些修改,向下采样8倍的结果是这些小类在输出特征图中只占不到一个像素。原图像M×N×D变为
受特征金字塔网络(FPN)的启发,创建了一个自下而上的解码器,该解码器学习将特征映射向上采样回原始输入大小,同时保持运行时速度。解码器将编码器的输出F作为输入,生成一个新特征映射。图2示出了由解码器执行的操作,其中包括通过conv-transpose操作对输入进行上采样、从编码器连接相应的特征映射,以及通过3×3卷积操作最终融合两者。最终特征图具有高分辨率和代表性,由RPN和第二级检测网络共享。
虚线框中:先通过conv-transpose进行上采样,然后与encoder中对应尺寸的feature map连接,通过3×3的卷积操作融合两张feature map,最终输出尺度不变但是表达能力更强的feature map。
这个结构可以提高对小目标的召回率
C.多模型融合区域建议网络
通过1×1的卷积进行降维
因为anchor数量较多,在RPN阶段会进行大量的计算和内存消耗,所以对每个视图的输出特征映射采用1×1的卷积核进行特征降维,减小计算量和内存消耗。
产生anchor
这些先前的框被称为锚,并且使用图4所示的轴对齐边界框编码来编码。锚箱由质心(tx,ty,tz)和轴对齐尺寸(dx,dy,dz)参数化。为了生成三维锚网,在BEV中每隔0.5米对(tx,ty)对进行采样,而tz是根据传感器高于地平面的高度确定的。通过对每一类训练样本进行聚类,确定锚的尺寸。在BEV中没有3D点的锚通过整体图像有效地移除,每帧产生80?100K非空锚。
图3.8角盒编码,轴对齐盒编码和4角编码之间的视觉比较。
通过多视图裁剪和调整大小操作来提取feature crops
每个anchor投影到特征视图中,获得两个rois,然后采用bilinearly resize到3×3的大小,得到feature crops。MV3d用的是ROI pooling,这样会损失邻域之间的信息。
3D proposal 生成
- 裁剪和调整操作的输出是两个视图中大小相等的特征crops,通过元素平均操作进行融合。
- 完全连接层大小为256,使用融合的feature crops来回归轴对齐的对象建议框,并输出对象/背景“对象性”分数。通过计算(?tx,?ty,?tz,?dx,?dy,?dz),锚和地面真实边界框之间的质心和尺寸差进行三维盒回归。平滑L1损失用于三维盒回归,交叉熵损失用于分类。在计算回归损失时忽略背景锚。
- 背景锚定是通过计算锚和地面真实边界框之间的二维IoU来确定的。对于car类,IoU小于0.3的锚定被视为背景锚定,而IoU大于0.5的锚定被视为对象锚定。对于行人和自行车类,对象锚定IoU阈值降低到0.45。
- 为了去除多余的proposal,在训练过程中,在IoU阈值为0.8的BEV中使用2D非最大抑制(NMS)来保持前1024个方案。在推断时,300个建议用于汽车类,而1024个建议用于行人和骑自行车的人。
D. Second Stage Detection Network
3D Bounding Box Encoding
- 使用四个角和两个高度值对边界框进行编码,如图3该值表示从由传感器决定的地平面开始的上下角点偏移。因此,回归目标是(?x1…?x4,?y1…?y4,?h1,?h2),即提案和地面真相框之间与地平面的角和高度偏移。为了确定角点偏移,我们将建议的最近角点对应于BEV中地面真值盒的最近角。
- 在获得feature crops时,将3D proposal投影到原始的feature maps中,因为得到的3D proposal的数量远远小于anchor的数量,所以可以不用1×1卷积对feature maps进行1×1的降维
- 同样对feature crops进行融合,全连接层和NMS操作
Explicit Orientation Vector Regression
提取边界框的四个方向,选择最接近回归的方向向量的那个方向。
图来自:博客
由于方案数量比锚数量少一个数量级,因此使用原始特征图来生成这些特征crops。将两个输入视图中的crops大小调整为7×7,然后使用元素平均运算进行融合。一组由三个尺寸为2048的完全连接的层处理融合特征crops到输出框的回归、方向估计和每个方案的类别分类。与RPN类似,在边界盒和方向向量回归任务中采用了结合两个平滑L1损失的多任务损失,以及分类任务的交叉熵损失。只有在BEV中至少有0.65或0.55 2D IoU,且分别具有汽车和行人/自行车等级的地面真实框时,才考虑评估回归损失。为了消除重叠检测,NMS的阈值为0.01。
本文创新点
- 特征提取器,运用encoder-decoder模型,产生尺寸和图像相同但表达能力更强的feature map,有利于小目标的检测。
- 在获得crops时,采用bilinearly resize,作者觉得这样维持了anchor在两个view中的纵横比。
- 3D proposal的编码采用四个角和两个高度的编码形式。
- 在方向回归中,先确定四个方向,最终方向选择最接近回归得到的方向。