您的位置:首页 > 移动开发 > Objective-C

CVPR2020论文解读:3D Object Detection三维目标检测

2020-03-30 07:24 1761 查看

CVPR2020论文解读:3D Object Detection三维目标检测

PV-RCNN:Point-Voxel Feature Se tAbstraction
for 3D Object Detection

论文链接:https://arxiv.org/pdf/1912.13192.pdf

本文在LITTI数据集3D Object Detection三维目标检测性能排名第一。

摘要

提出了一种新的高性能的三维目标检测框架:点体素RCNN(PV-RCNN),用于从点云中精确检测三维目标。该方法将三维体素卷积神经网络(CNN)和基于点网的集合抽象技术有机地结合起来,以学习更具鉴别能力的点云特征。它利用了3D体素CNN的高效学习和高质量建议以及基于点网络的灵活接收功能。具体地说,该框架通过一个新的体素集抽象模块将具有3D体素CNN的3D场景总结成一个小的关键点集,以节省后续计算,并对具有代表性的场景特征进行编码。考虑到体素CNN生成的高质量3D提议,RoI网格池被提议通过具有多个接收域的keypoint集抽象从关键点到RoI网格点抽象提议特定特征。与传统的池化操作相比,RoI网格特征点编码更丰富的上下文信息,以准确估计对象的密度和位置。在KITTI数据集和Waymo开放数据集上进行的大量实验表明,我们提出的PV-RCNN仅使用点云就可以在显著的边缘上超越最新的3D检测方法。

PV-RCNN

本文将Grid-based(称为Voxel-based)的方法和Point-based的方法优缺点结合了起来。本文首先说明了Grid-based和Point-based的方法的优缺点:

基于网格Grid-based的三维目标检测方法。

为了解决点云的不规则数据格式问题,现有的研究大多将点云投影到规则网格上,由二维或三维CNN处理。先锋工作MV3D[1]将点云投影到2D鸟瞰网格,并放置许多预先确定的3D锚来生成3D边界框,以下工作[11、17、16]开发了更好的多传感器融合策略,而[36、35、12]提出了更有效的鸟瞰表示框架。其他一些工作[27,41]将点云划分为3D体素,由3D-CNN处理,并且引入3D稀疏卷积[5]以有效地处理3D体素。[30,42]使用多个检测头,而[26]探索对象部件位置以提高性能。这些基于网格的方法通常对于精确的3D方案生成是有效的,但是接受域受到2D/3D卷积的核大小的限制。

基于点Point-based的三维目标检测方法。FPointNet[22]首先提出应用PointNet[23,24]从基于2D图像边界框的裁剪点云进行3D检测。PointRCNN[25]直接从整个点云生成3D建议,而不是仅使用点云进行3D检测的2D图像,下面的工作STD[37]提出了稀疏到密集的策略,以更好地解决建议问题。[21]提出了hough投票策略以更好地进行对象特征分组。这些基于点的方法主要基于点网系列,尤其是集合抽象操作[24],它为点云特征学习提供了灵活的接受域。

基于网格Grid-based的方法计算效率更高,但不可避免的信息损失降低了细粒度定位精度,而基于点Grid-based的方法具有较高的计算成本,但是可以容易地通过点集抽象实现更大的接收域。

网络的结构图如下:

RPN

Backbone: 3D
Sparse Convolution

由于是backbone,其实也比较通用。为什么要用3D Sparse Convolution呢?因为它的高效率和精确性。

Classification
& Regression Head

将3D的feature map转为俯视图,高度变为通道,然后使用每个cell每个类别设置两个anchor,角度分别为0和90度。

实验表明使用这种backbone和anchor的设置方式,Recall高:“As shown in
Table 4, the adopted 3D voxel CNN backbone with anchor-based scheme achieves
higher recall perfor- mance than the PointNet-based approaches [25, 37]”

但这里有个问题是anchor的角度是0或者90度,那-90度是怎么处理的?这相当于是怎么处理相反方向的车?车辆朝向的这个量这个在Proposal生成的过程中是否考虑?如果考虑,则怎么回归相反方向的车,这种anchor设置看起来不合理;如果不考虑,那么在通过Proposal生成6x6x6的grids的时候的顺序怎么确定,难道就一直不考虑?这个得通过具体Loss或者代码中看了。相当于在图像处理中,网络要学会对左右翻转的鲁邦性。

Voxel Set
Abastraction Module(VSA)

Discussion

有了Proposal,就要提取Proposal中的feature,形成一个固定大小的feature map了,本文将Proposal分成了6x6x6的栅格。那么如何计算6x6x6的每个cell的feature呢?

然后作者提出了对目前方法不足的地方的讨论:

(i) 这些特征体通常具有较低的空间分辨率,因为它们被下采样多达8倍,这妨碍了对象在输入场景中的精确定位。

(ii)即使可以上采样以获得更大空间尺寸的特征体积/地图,它们通常仍然非常稀疏。

也就是说使用差值的方法,类似于图像中的目标检测那样的RoI Align的方法不太好。

作者就提出了一种思路,使用PointNet++中的SA层,对每个cell,使用SA层,综合这个cell一定范围内的BackBone输出的feature map中的feature。但作者提出,这种方法,计算量太高。

使用集合抽象操作来合并场景特征体素的一个简单解决方案是将场景中的多尺度特征体直接聚合到RoI网格中。然而,这种直观的策略占用了大量内存,在实际应用中效率很低。例如,来自KITTI数据集的一个公共场景可能会在4×下采样的特征体积中产生18000个体素。如果对每个场景和每个 box标有3×3×3格。即使经过距离阈值处理,2700×18000对距离和特征集合也无法有效计算。

为了解决这个问题,作者提出了VSA Module,来减少要聚集的feature的总数量,也就是上例子中的18000。

VSA Module

VSA Module在示例图中已经画的非常形象了。过程如下:(公式1,2,3)

1)在原始点钟用Furthest Point Sampling选n个点

2)在每一层中的feature map中,使用SA Module综合每个点一定邻域内的feature

3)然后把所有feature concat起来

Extended VSA Module还多两种feature:

·
在Backbone输出的feature map转到的BEV图中,用2D bilinear interpolation计算的feature

·
使用原始点云通过SA Module计算的feature

PKW Module(Predicted Keypoint Weighting)

问题是n个点中,有些点事前景点,比较重要,有些点是背景点,不重要。这就要区分一下,通过这n个点的feature,可以计算n个weight,weight由真实的mask做监督训练,然后用这weight乘以点的feature,得到每个点的最终的feature。(公式5)这个过程被称为PKW module。

上述过程是使用n个点来表示整个场景,文章中叫做voxel-to-keypoint scene encoding,n个点叫做key-points

到此,我们有了Proposal和n个点的坐标和对应的feature。

RCNN

有了Proposal,就可以生成6x6x6个cell,对于每个cell的中心点,可以在之前得到的n个点中选取那些在其邻域的点,然后使用SA Module综合特征,得到cell的特征。(公式6,7)


得到了Proposal的固定大小的特征,就可以做confidence prediction和box refinement了。这里要注意的是confidence prediction的真实值是由IOU给出的。

Experiments

在KITTI上和Waymo Open Dataset上效果都很好。

Ablation Studies:

·
验证了voxel-to-keypoint scene encoding的有效性,与RPN和朴素的想法做了对比。

·
验证了different features for VSA module。

·
验证了PKW module的有效性。

·
验证了RoI-grid pooling module比RoI-aware pooling module(PointRCNN中的方法)的有效性。

思考

提出了一种基于点云的精确三维目标检测的新方法,即PV-RCNN框架。通过新的体素集抽象层将多尺度三维体素CNN特征和基于点网PointNet-based的特征融合到一个小的关键点集上,这些关键点的识别特征被聚合到具有多个接受域的RoI网格点上,以获取更丰富的上下文信息,用于细粒度的提案。在KITTI数据集和Waymo开放数据集上的实验结果表明,本文提出的体素到关键点场景编码和关键点到网格特征提取策略与以前的最新方法相比,显著提高了三维目标检测性能。

  • 点赞
  • 收藏
  • 分享
  • 文章举报
wujianming_110117 发布了96 篇原创文章 · 获赞 5 · 访问量 5428 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: