论文解读:PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection

PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection

目录

    • PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection
      • Abstraction:
      • Method:
        • 1 PV-RCNN for Point Cloud Object Detection
          • 1.1 3D Voxel CNN for Effificient Feature Encoding and Proposal Generation(基于3d体素卷积主干网络的特征编码和3d Proposal 生成模块)
          • 1.2 Voxel-to-keypoint Scene Encoding via Voxel Set Abstraction
            • Extended VSA Module.:
            • Predicted Keypoint Weighting
          • 1.3 Keypoint-to-grid RoI Feature Abstraction for Proposal Refinement (利用3d box范围内的关键点特征序列进行3d box的精炼)
            • RoI-grid Pooling via Set Abstraction

Abstraction:

利用了两个优势:1 3d体素CNN网络的高效性 2 pointnet中灵活的感受野。如图上半部分所示,通过3d体素卷积网络获得BEV(鸟瞰图),经有RPN模块获得3d的box proposal区域,为进一步获得proposal的置信度并精炼其3d box的定位,提出了一种关键点特征序列生成算法,如图下半部分所示,首先在原始点云中使用FPS采样出关键点,这些关键点连同关键点周围一定范围的点输入到pointnet中获得关键点特征序列。该过程在卷积的不同尺度特征图中多次进行,最终获得一个多尺度的、由关键点及其周围点产生的特征序列。计算每一个RPN提出给出的3d box范围内的关键点,将这些关键点在上述总关键点特征序列中的特征提取出来,用于对3dbox的置信度以及位置精炼。

论文解读:PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection_第1张图片

Method:

1 PV-RCNN for Point Cloud Object Detection

本文提出了一个两阶段3d检测网络框架旨在实现更为精确的3d检测。总的来说,基于3d体素的稀疏CNN网络计算效率很高,有能力产生高质量的Proposal ;而基于pointnet的方法能够灵活的调整感受野,获取上下文信息。PV-RCNN结合了上述的两种优势:如网络概览图所示,PV-RCNN使用一个稀疏的3d体素卷积网络作为主干网络,对于每一个一阶段检测器给出的3dproposal,我们提出两种提取其对应场景特征的工具:1 voxel-to-keypoint scene encoding 将所有的特征收集在一个关键点特征序列中,2 point-to grid RoI feature abstraction 高效的将Proposal区域内的关键点特征序列用于推理,优化propsal的位置和置信度。

1.1 3D Voxel CNN for Effificient Feature Encoding and Proposal Generation(基于3d体素卷积主干网络的特征编码和3d Proposal 生成模块)

3D voxel CNN是一种高效、准确的主干网络,可以将点云转化成稀疏的3d特征。这种方法的缺陷如下:1 输出的特征图被降采样,导致object的定位存在偏差。2 对于每一个proposal在二阶段分类中,只能获得很小领域范围内的特征。

虽然可以直接将3d propoal区域内的多尺度体素特征(即在不同尺度的特征图中进行ROipool)直接送入二阶段检测器用作计算置信度和boxr efinement,但是这之中含有很多的无效点,而且计算开销大。所以本文提出了一种基于Pointnet(具有从任意大小领域中获取特征的能力),多尺度关键点特征序列编码网络,将propoal内的关键点特征用于精炼proposal。

3D voxel CNN:输入的原始点云被划分成L × W × H的体素(不同与pointpiller中的xoy平面上的二维体素划分,本文使用的体素是三维的),网络通过一系列的3x3x3卷积将原始点云逐级降采样。

3D proposal generation:将Z轴特征压缩,获得鸟瞰的特征图(降采样了八倍)使用anchor-based approaches ,这种方法recall很高。

f i ( p v k ) = max ⁡ { G ( M ( S i ( l k ) ) ) } ( 1 ) f_{i}^{\left(p v_{k}\right)}=\max \left\{G\left(\mathcal{M}\left(S_{i}^{\left(l_{k}\right)}\right)\right)\right\} (1) fi(pvk)=max{G(M(Si(lk)))}(1)

1.2 Voxel-to-keypoint Scene Encoding via Voxel Set Abstraction

首先使用FPS算法采样出关键点(同pointnet++)(对于KiTTI数据集每一个点云产生2048个关键点)这种策略鼓励关键点均匀地分布在非空体素周围,并可以代表整个场景。

获取关键点以后会将关键点周围一定范围内的点都编码成特征序列。该过程会在主干网络的每一级输出中进行,形成多尺度的关键点(及其周围点)特征序列 。

Extended VSA Module.:

为充实Keypoint特征序列,在特征序列中引入了原始点云以及8x降采样的鸟瞰图,其中原始点云构成了点云体素化的量化损失,而鸟瞰图提供了很大的感受野,这两个输入同样经过(1)式的处理,即M降采样,G:MLP层,max处理。

Predicted Keypoint Weighting

论文解读:PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection_第2张图片

关键点权重预测模块:经过上述的通过Keypoint构成的特征向量会用于精炼proposal,由于这些关键点中,一部分来自于背景,一部分来自于前景(object)直觉上而言,来自前景的点对精炼proposal更有帮助,而来自背景的关键点帮助会较少,所以提出一个关键点权重预测模块,对关键点特征分配权重。

该预测网络可以通过监督学习训练,数据集中使用3dbbox标注,只需要检查关键点是否落在bbox内可以训练Predicted Keypoint Weighting模块。 f ~ i ( p ) \tilde{f}_{i}^{(p)} f~i(p)为PKW模块的输出:

f ~ i ( p ) = A ( f i ( p ) ) ⋅ f i ( p ) \tilde{f}_{i}^{(p)}=\mathcal{A}\left(f_{i}^{(p)}\right) \cdot f_{i}^{(p)} f~i(p)=A(fi(p))fi(p)

A ( ⋅ ) \mathcal{A}(\cdot) A() 是一个MLP网络,输出通过sigmoid限制在 [0,1].范围内。

1.3 Keypoint-to-grid RoI Feature Abstraction for Proposal Refinement (利用3d box范围内的关键点特征序列进行3d box的精炼)
RoI-grid Pooling via Set Abstraction

论文解读:PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection_第3张图片

首先在RPN输出的3d proposal box中划分出6x6x6的216个小格,对于这216个端点,寻找端点一定范围内的关键点,将上问获得的 f ~ i ( p ) \tilde{f}_{i}^{(p)} f~i(p)关键点特征向量与端点到该特征点的距离Concat后作为一个RoI-grid Point 特征,该特征被用于精炼3d Proposal的位置。

3D Proposal Refinement and Confidence Prediction.

将获得的RoI feature 输入给 Proposal Refinement网络,用于预测Proposal 的位置和大小的偏差。网络的loss通过实际Proposal 与预测Proposal 的IOU插值计算。

你可能感兴趣的:(Lidar,Paper,自动驾驶,深度学习,神经网络)