4、本文方法
如图2所示提出的Pillar R-CNN在概念上很简单,包括两个阶段:第一阶段(RPN)产生3D Proposals,并在所有类别相关尺度上进行分类;第二阶段(R-CNN)以可管理的分辨率细化BEV平面上的3D框。
4.1、Pillar-based Backbone
最新的基于Pillar的3D检测器PillarNet将点云转换为规则的Pillar ,并以自下而上的方式分层处理稀疏的2D Voxel。PillarNet利用ConvNets(如VGGNet和ResNet)的2D检测优势,在一次前向传播中计算特征层次。它以自下而上的方式通过2D稀疏和密集卷积的混合创建一组低层稀疏2D柱体和高层密集特征图。用表示不同金字塔级别的多层次特征图,Pillar scales的Stride为。
4.2、Pyramidal Region Proposal Network
与基本FPN类似,作者构建了金字塔区域建议网络,以提高行人等小目标的检测精度。为了在所有类相关的尺度上构建高级语义特征图,修改了横向连接层,以有效地合并自上而下的密集图和自下而上的稀疏体。每个横向连接合并了来自自下而上路径和自上而下路径的相同空间大小的稀疏特征量和密集特征图。
具体而言:
- 首先,上下路径通过使用步长为2的反卷积层从更高的金字塔级别对语义更强的密集特征图进行上采样,从而产生更高分辨率的特征。
- 然后,通过简单的连接,将上采样的密集特征图与来自其稀疏voxel的相应的密集自下而上的特征图合并。重复该过程,直到所需的多尺度特征图准备就绪。
- 最后,在每个合并的映射上附加一个3×3卷积层,以减轻上采样的混叠效应并降低通道维数。这里,具有高级丰富语义的最后一组特征图(称为)在空间大小方面分别对应于。
将常用的中心检测头附加到网络内特征金字塔的每个级别,分别对其进行类特定目标预测。虽然更好的横向连接设计更有帮助,但作者依旧坚持上述最简单的设计。
4.3、R-CNN via 2D RoI Pooling on BEV Plane
为了证明BEV表示保留了关键的3D结构信息,通过简单设计的横向连接层以可管理的比例构建了密集池化特征。然后,通过在BEV平面上使用Faster R-CNN-like RoI池化模块来进一步细化3D Box。作者还使用语义监督来监督每个3D Proposals的网格点,以进一步检查BEV表示的3D结构能力,并对齐PV-RCNN中使用的额外关键点分割监督分支。
1、Lateral connection layer
用于构建池化图的横向连接层的目的是以可管理的分辨率将低级别稀疏Pillar特征量和高级别密集语义特征图集成到密集池化图中。
具体而言:
- 首先,使用2D稀疏卷积层用于将所选低层Pillar从自下而上的路径降采样到期望的空间分辨率。
- 然后,步长为2的反卷积层以自顶向下的方式对来自金字塔颈部模块的密集语义特征图进行上采样。
- 最后,通过3×3卷积层以相同的空间分辨率合并语义更强的密集映射和空间更精确的稀疏体,构建密集池化映射。
横向连接层略微偏离了原始FPN中的逐元素相加方式,因为稀疏体积可能非常稀疏,大部分为空点。为了解决稀疏特征导致的中心特征缺失的问题,简单地应用cat和标准卷积运算来混合来自自下而上路径的特征图和来自自上而下路径的特征图。通过这种方式横向连接设计可以为空间精确但稀疏的自下而上的Pillar提供关键的语义信息。
2、Auxiliary segmentation supervision
在每个3D Proposal中附加了网格点的可分离辅助分割监督,以提高基于BEV的池化图的3D结构能力,这是受PV-RCNN中基于3D体素的结构上下文的关键点的额外分割监督的启发。
具体而言,使用具有Sigmoid函数的2层MLP来预测每个投影2D旋转RoI中每个网格点的前景/背景分数。通过识别每个网格点是在图3中投影的GT旋转框的内部还是外部,可以从3D框标注中直接生成分割层,因为3D目标在BEV平面上不重叠。
此外,辅助分段监督分支仅在训练期间使用,因此没有额外的推理计算开销。
与RoI池化和RoI Align类似,使用投影的2D旋转RoI裁剪密集池化图,以提取BEV平面上的3D RoI特征。具体而言,简单地利用双线性插值操作来对图3中每个投影的3D RoI中均匀分布的网格点进行采样。然后,通过两个256-D FC层将采样的网格点特征。
因此,Faster R-CNN-like 2D RoI池化模块将具有不同大小目标的每个3D RoI特征转换为固定的空间范围用于3D Proposal细化和置信度预测。值得注意的是第2个R-CNN阶段与Faster R-CNN略有不同,因为它需要在可管理的尺度上使用池化图,并通过横向连接层充分融合语义空间特征。
4.4、Training Losses
提出的Pillar R-CNN框架以区域建议损失、Proposal细化损失和辅助分割损失进行端到端训练。采用CenterNet3D中使用的金字塔规模的相同区域建议损失。遵循PV-RCNN并将相同的建议细化损失用于类别不可知置信预测和框回归。使用二进制交叉熵损失简单地监督辅助分割,每个网格点的分类标签由其相对于相应GT边界框的投影位置确定。
整体训练损失是这3种损失的总和,权重相等:
4.5、IOU-Aware的加入
IoU感知置信校正通常用于处理2D检测和3D检测在定位精度和分类分数之间的未对准问题。后处理阶段的IoU感知校正函数可以公式化为:
其中S表示分类分数,而是IoU分数。β是一个超参数。
为了验证其对提出的金字塔区域建议网络的影响,进行了单阶段目标检测实验。从表7中的RPN结果中可以看到,IoU感知的信心纠正可以在金字塔区域建议网络上实现巨大的性能改进。使用精心调整的校正因子β进行恢复后,RPN实现了与R-CNN同行相当的性能。也就是说,IoU感知置信校正模块有利于基于Rank的度量,如平均精度。相比之下,R-CNN模块主要自适应地重新搜索框,以便可以选择具有更好定位的框。
5、实验
5.1、SOTA对比
5.2、消融实验
1、Pillar R-CNN组件的影响
表3详细说明了每个拟议组件如何影响Pillar R-CNN在各种Pillar式主干上的准确性。基于PillarNet-18主干,第1行和第3行显示,与RPN相比,RoI细化阶段显著增加了+1.69%APH/L2(车辆检测)和+4.41%(行人检测)。每个RoI对网格点的辅助监督带来第4行所示的边际收益,而该分支在推断中被禁用。
此外,在第2行的RPN中引入FPN在行人等小目标检测上实现了+5.4%APH/L2的增益。通过RPN和FPN计算的建议,如第6行所示,Pillar R-CNN在行人上实现了+2.13%APH/L2的进一步增益。
此外,通过使用笨重而强大的PillarNet-34主干,Pillar R-CNN的性能可以进一步提升整体类别。
2、横向连接层的影响
在表4中研究了用于构建池化映射的横向连接层的影响。表4的第1行、第3行和第5行显示,仅以精细分辨率进行池化并不能提高性能。这是因为上采样的自顶向下特征图具有丰富的语义,但缺乏精确的空间信息。
表4的第2行、第4行和第6行显示,所设计的横向连接层可以在各种尺度上编码高级语义和低级几何,以提高3D检测性能。虽然简单,但横向连接层在稀疏的自底向上映射上提供了良好的语义信息,其中大部分为零。
3、池化映射分辨率的影响
表4说明了由横向连接模块构建的具有不同空间大小的池化图分辨率的效果。表4的第2行、第4行和第6行显示,池化映射的分辨率越高,性能越好,尤其是对于小目标。
然而,更精细的池化映射需要更多额外的内存/计算成本。因此,在整个实验中使用4×4的池化映射作为权衡,因为2倍或更精细的池化映射消耗了太多内存,但带来了边际效益。
4、每个RoI对网格大小的影响
表5显示了RoI网格池化模块中不同网格大小对检测性能的影响。可以看到,随着网格大小从4×4增加到8×8,精度不断提高,但网格大小越大,性能会略有下降。
原因可以解释为具有较大网格大小的R-CNN在第一个完全连接层中具有更多可学习的参数,因此容易过度拟合训练集。这里,采用7×7的网格大小,以保持其2D对应项的相同设置。
5、对池化的附加自下而上特性的影响
通过设计的横向连接,构建的池化图可以整合来自自下而上路径的其他多尺度特征。表6的第2行显示,组合较粗的图会略微降低检测精度。而在第3行和第4行中使用较低级别的特征,则会以额外的成本获得微不足道的性能提升。因此,仅使用其对应的stride为4的自底向上特征就可以获得令人满意的精度。
6、参考
[1].Pillar R-CNN for Point Cloud 3D Object Detection.