《Frustum PointNets for 3D Object Detection from RGB-D Data》中文翻译-程序员宅基地

技术标签: 论文翻译  

            用于从RGB-D数据进行3D物体检测的Frustum PointNets

摘要: 

在这项工作中,我们研究了室内和室外场景中RGB-D数据的三维物体检测。 虽然以前的方法专注于图像或3D体素,通常模糊自然3D图案和3D数据的不变性,但我们通过弹出RGB-D扫描直接对原始点云进行操作。 然而,这种方法的一个关键挑战是如何在大规模场景的点云中有效地定位对象(区域提议)。 我们的方法不仅仅依靠3D建议,而是利用成熟的2D物体探测器和先进的3D深度学习来实现物体定位,实现效率以及即使是小物体的高召回率。 受益于直接在原始点云中学习,我们的方法也能够精确估计3D边界框,即使在强遮挡或非常稀疏的点下也是如此。 在KITTI和SUN RGB-D 3D检测基准测试中,我们的方法在具有实时功能的同时,以惊人的利润优于最先进的技术。

1. 介绍 

最近,在2D图像理解任务方面取得了很大进展,例如物体检测[10]和实例分割[11]。 然而,除了获得2D边界框或像素掩模之外,在诸如自动驾驶和增强现实(AR)的许多应用中迫切需要3D理解。 随着部署在移动设备和自动驾驶车辆上的3D传感器的普及,越来越多的3D数据被捕获和处理。 在这项工作中,我们研究了最重要的三维感知任务之一 - 三维物体检测,它对物体类别进行分类,并从三维传感器数据中估算物理对象的三维边界框。

虽然3D传感器数据通常采用点云的形式,但如何表示点云以及用于3D对象检测的深层网络架构仍然是一个悬而未决的问题。 大多数现有作品通过投影[30,21]将3D点云转换为图像,或通过量化[33,18,21]将体积网格转换为体积网格,然后应用卷积网络。然而,该数据表示变换可能模糊自然3D图案和数据的不变性。 最近,许多论文提出直接处理点云而不将它们转换成其他格式。 例如,[20,22]提出了新类型的深网络体系结构,称为PointNets,它在几个3D理解任务中表现出卓越的性能和效率,如对象分类和语义分割。

虽然PointNets能够对点云进行分类或预测点云中每个点的语义类,但尚不清楚该架构如何用于实例级3D对象检测。为实现这一目标,我们必须解决一个关键挑战:如何在3D空间中有效地提出3D对象的可能位置。模仿图像检测中的实践,通过滑动窗口[7]或通过3D区域提议网络(如[27])枚举候选3D框是直截了当的。然而,3D搜索的计算复杂度通常在分辨率方面立方体地增长,并且对于大型场景或诸如自动驾驶的实时应用而言变得太昂贵。

相反,在这项工作中,我们按照降维原理缩小搜索空间:我们利用成熟的2D物体探测器(图1)。首先,我们通过从图像检测器中挤出2D边界框来提取对象的3D边界平截头体。然后,在由每个3D平截头体修剪的3D空间内,我们使用PointNet的两个变体连续地执行3D对象实例分割和非模态 1918 3D边界框回归。分割网络预测感兴趣对象的3D掩模(即实例分割);并且回归网络估计了非模态的3D边界框(覆盖整个对象,即使只有部分可见)。

与之前将RGB-D数据视为CNN的2D地图的工作相比,我们的方法更加以3D为中心,因为我们将深度图提升为3D点云并使用3D工具处理它们。这种以3D为中心的视图实现了以更有效的方式探索3D数据的新功能。首先,在我们的管道中,在3D坐标上连续应用了一些变换,这些变换将点云对齐成一系列更受约束和规范的帧。这些对齐分解出数据中的姿势变化,从而使3D几何图案更加明显,从而使3D学习者的工作更容易。其次,在三维空间中学习可以更好地利用三维空间的几何和拓扑结构。原则上,所有物体都存在于3D空间中;因此,我们相信许多几何结构,例如重复,平面性和对称性,更自然地被直接在3D空间中操作的学习者参数化和捕获。最近的实验证据支持这种以3D为中心的网络设计理念的有用性。

我们的方法在KITTI 3D物体检测[1]和鸟瞰图检测[2]基准测试中取得了领先地位。 与以前的技术水平相比[5],我们的方法在3D汽车AP上效率高达8.04%,效率高(以5 fps运行)。 我们的方法也非常适合室内RGBD数据,我们在SUN-RGBD上比[13]和[24]实现了8.9%和6.4%更好的3D mAP,同时运行速度提高了一到三个数量级。

我们工作的主要贡献如下:

• 我们提出了一种基于RGB-D数据的3D对象检测的新框架,称为Frustum PointNets。

• 我们展示了如何在我们的框架下训练3D物体探测器,并在标准3D物体探测基准上实现最先进的性能。

• 我们提供广泛的定量评估,以验证我们的设计选择以及丰富的定性结果,以了解我们的方法的优势和局限性。

2. 相关工作

RGB-D数据的3D物体检测        研究人员通过各种方式表示RGB-D数据,从而解决了3D检测问题。

基于前视图图像的方法:[3,19,34]采用单眼RGB图像和形状先验或遮挡模式来推断3D边界框。 [15,6]将深度数据表示为2D地图并应用CNN来定位2D图像中的对象。 相比之下,我们将深度表示为点云,并使用可以更有效地利用3D几何的高级3D深度网络(PointNets)。

基于鸟瞰图的方法:MV3D [5]将LiDAR点云投射到鸟瞰图并训练区域建议网络(RPN [23])用于3D边界框提议。 然而,该方法在检测诸如行人和骑车者的小物体方面滞后,并且不能容易地适应具有垂直方向上的多个物体的场景。

基于3D的方法:[31,28]通过SVM在由点云提取的手工设计的几何特征上训练3D对象分类器,然后使用滑动窗口搜索来定位对象。 [7]通过在体素化3D网格上用3D CNN替换SVM来扩展[31]。 [24]设计了点云中三维物体检测的新几何特征。 [29,14]将整个场景的点云转换为体积网格,并使用3D体积CNN进行对象建议和分类。由于3D卷积和大型3D搜索空间的昂贵成本,这些方法的计算成本通常很高。最近,[13]提出了一种2D驱动3D物体检测方法,它与我们的精神相似。然而,他们使用手工制作的功能(基于点坐标的直方图)和简单的完全连接的网络来回归3D盒子位置和姿势,这在速度和性能方面都是次优的。相比之下,我们提出了一种更灵活,更有效的深度3D特征学习解决方案(PointNets)。

点云深度学习        大多数现有作品在特征学习之前将点云转换为图像或体积形式。 [33,18,21]将点云体素化为体积网格,并将图像CNN概括为3D CNN。 [16,25,32,7]设计更有效的3D CNN或神经网络架构,利用点云中的稀疏性。 然而,这些基于CNN的方法仍然需要具有特定体素分辨率的点云的量化。 最近,一些作品[20,22]提出了一种新型网络架构(PointNets),它直接消耗原始点云而不将它们转换为其他格式。 虽然PointNets已应用于单个对象分类和语义分割,但我们的工作探索了如何扩展体系结构以实现3D对象检测。

3. 问题定义

给定RGB-D数据作为输入,我们的目标是在3D空间中对对象进行分类和本地化。 从LiDAR或室内深度传感器获得的深度数据表示为RGB相机坐标中的点云。 投影矩阵也是已知的,以便我们可以从2D图像区域获得3D平截头体。 每个对象由一个类(k个预定义类中的一个)和一个amodal 3D边界框表示。 即使对象的一部分被遮挡或截断,amodal框也会绑定整个对象。 3D框通过其尺寸h,w,l,中心c_xc_yc_z和相对于每个类别的预定规范姿势的方向θ,φ,ψ来参数化。 在我们的实现中,我们仅考虑围绕上轴的方向角θ以进行定向。

4. 3D 检测使用Frustum PointNets

图2.用于3D对象检测的Frustum PointNets。 我们首先利用2D CNN物体探测器来提出2D区域并对其内容进行分类。 然后将2D区域提升到3D,从而成为截头的提议。 给定平截头体中的点云(n×c,具有n个点和x个通道的XYZ,每个点的强度等),通过每个点的二元分类来对对象实例进行分段。 基于分割的对象点云(m×c),轻量级回归PointNet(T-Net)尝试通过平移对齐点,使得它们的质心接近于amodal box center。 最后,盒估计网估计对象的amodal 3D边界框。 有关坐标系和网络输入,输出的更多说明见图4和图5。

如图2所示,我们的三维物体检测系统由三个模块组成:平截头体提议,三维实例分割和三维模块边界框估计。 我们将在以下小节中介绍每个模块。 我们将重点关注每个模块的管道和功能,并将读者引用到所涉及的深度网络的特定体系结构的补充。

4.1 Frustum 提案

大多数3D传感器(尤其是实时深度传感器)产生的数据分辨率仍低于商用相机的RGB图像。 因此,我们利用成熟的2D物体探测器来提出RGB图像中的2D对象区域以及对对象进行分类。

利用已知的相机投影矩阵,可以将2D边界框提升到平截头体(具有由深度传感器范围指定的近和远平面),其定义对象的3D搜索空间。 然后我们收集平截头体内的所有点以形成平截头体点云。 如图4(a)所示,平截头体可以朝向许多不同的方向,这导致点云的放置的大的变化。 因此,我们通过将平截头体朝向中心视图旋转来使截头锥体归一化,使得平截头体的中心轴线与图像平面正交。 此归一化有助于改善算法的旋转不变性。 我们将这整个过程称为从RGB-D数据平截头提议生成中提取平截头体点云。

虽然我们的3D检测框架与2D区域提议的确切方法无关,但我们采用基于FPN [17]的模型。 我们在ImageNet分类和COCO对象检测数据集上预先训练模型权重,并在KITTI 2D对象检测数据集上进一步微调它以对amodal 2D框进行分类和预测。 补充中提供了2D探测器训练的更多细节。

4.2 3D实例分割

给定2D图像区域(及其对应的3D平截头体),可以使用几种方法来获得对象的3D位置:一种直接的解决方案是使用2D从深度图直接回归3D对象位置(例如,通过3D边界框)。 然而,这个问题并不容易,因为遮挡物体和背景杂乱在自然场景中很常见(如图3所示),这可能会严重分散3D定位任务的注意力。 因为物体在物理空间中是自然分离的,所以3D点云中的分割比来自远处物体的像素彼此接近的图像中的分割更加自然和容易。 观察到这一事实后,我们建议在3D点云中而不是在2D图像或深度图中分割实例。 与Mask-RCNN [11]类似,它通过图像区域中像素的二进制分类实现实例分割,我们使用基于PointNet的网络在截头锥体上的点云实现3D实例分割.

图3.截锥点云中3D检测的挑战。 左图:带有图像区域建议的RGB图像。 右图:从2D框中挤出平截头体中的LiDAR点的鸟瞰图,在那里我们看到了前景遮挡(自行车)和背景杂乱(建筑物)的广泛点。

基于3D实例分割,我们能够实现基于残差的3D定位。 也就是说,不是回归物体的绝对3D位置,其偏离传感器的偏差可能在很大的范围内变化(例如在KITTI数据中从5米到超过50米),我们预测局部坐标系中的3D边界框中心 -  3D蒙版 坐标如图4(c)所示。

3D实例分割 PointNet。 网络在平截头体中采用点云并且预测每个点的概率分数,其指示该点属于感兴趣对象的可能性。 请注意,每个视锥体仅包含一个感兴趣的对象。 这些“其他”点可以是非相关区域(例如地面,植被)或其他遮挡或位于感兴趣对象后面的点。 类似于2D实例分割中的情况,取决于平截头体的位置,一个平截头体中的对象点可能变得杂乱或遮挡另一个平截头体中的点。 因此,我们的分割PointNet正在学习遮挡和杂乱模式以及识别某个类别的几何对象。

在多类检测案例中,我们还利用2D检测器的语义来实现更好的实例分割。 例如,如果我们知道感兴趣的对象是行人,那么分割网络可以在找到看起来像人的几何之前使用它。 具体来说,在我们的体系结构中,我们将语义类别编码为单热类向量(预定义k类的k维),并将单热矢量连接到中间点云特征。 补充说明了具体体系结构的更多细节。

在3D实例分割之后,提取被分类为感兴趣对象的点(图2中的“掩蔽”)。随后获得这些分割的对象点,我们进一步标准化其坐标以增强算法的平移不变性,遵循相同的 在截头提案步骤中的基本原理。 在我们的实现中,我们通过按质心减去XYZ值,将点云转换为局部坐标。 这在图4(c)中示出。 请注意,我们故意不缩放点云,因为部分点云的边界球大小可能会受到视点的极大影响,并且点云的实际大小有助于估计框大小。

在我们的实验中,我们发现坐标变换(例如上面的一个和前一个平截头体旋转)对于3D检测结果至关重要,如表8所示。

图4.点云的坐标系。 人工点(黑点)显示为(a)默认摄像机坐标; (b)将截头锥体旋转到中心视图后的平截头坐标(第4.1节); (c)掩饰与原点处物点的质心的坐标(第4.2节); (d)由T-Net预测的物体坐标(第4.3节)

 

图5. PointNets的基本体系结构和IO。 为具有集合抽象层和特征传播层(用于分段)的PointNet ++ [22](v2)模型说明了体系结构。 所涉及的坐标系在图4中可视化。

4.3 非模态 3D Box估计

给定分割的对象点(在3D掩模坐标中),该模块通过使用框回归PointNet和预处理变换器网络来估计对象的面向amodal的3D边界框。

通过T-Net进行基于学习的3D对齐即使我们根据质心位置对齐了分割的对象点,我们发现掩模坐标框架的原点(图4(c))可能距离模块框还很远 中央。 因此,我们建议使用轻量级回归PointNet(T-Net)来估计整个物体的真实中心,然后变换坐标,使预测的中心成为原点(图4(d))。

我们的T-Net的架构和训练类似于[20]中的T-Net,它可以被认为是一种特殊类型的空间变换器网络(STN)[12]。 然而,与原始STN不同,它没有直接监督转换,我们明确监督我们的变换网络,以预测从掩模坐标原点到实际对象中心的中心残差。

Amodal 3D Box Estimation PointNet         对于给定3D对象坐标中的对象点云的对象,框估计网络预测模式边界框(对于整个对象,即使其中一部分是看不见的)(图4(d))。 网络体系结构类似于对象分类[20,22],但输出不再是对象类分数,而是3D边界框的参数。

如第三部分所述,我们通过其中心(c_x,c_y,c_z),尺寸(h,w,l)和航向角θ(沿着上轴)来参数化3D边界框。 我们采用“残差”方法进行盒子中心估计。 由盒估计网络预测的中心残差与来自T-Net和掩蔽点的质心的先前中心残差组合以恢复绝对中心(等式1)。 对于盒子大小和航向角度,我们遵循以前的工作[23,19]并使用分类和回归公式的混合。 具体来说,我们预先定义NS尺寸模板和NH等分割角度盒子。 我们的模型将大小/航向(大小的NS分数,航向的NH分数)分类为预定义的类别,并预测每个类别的残差数量(高度,宽度,长度,NH残余角度的3×NS残余尺寸) 用于标题)。 最后,净输出总共为3 + 4×NS + 2×NH数。

                                                  C_{pred}=C_{mask}+\Delta C_{t-net}+\Delta C_{box-net}                                                                                   (1)

4.4 多任务损失的训练

我们同时优化所涉及的三个网络(3D实例分割PointNet,T-Net和amodal盒估计PointNet),具有多任务损失(如公式2所示)。 L_{c1-reg}用于T-Net,L_{c2-reg} 用于箱估计网的中心回归。 L_{h-cls}L_{h-reg} 是航向角预测的损失,而L_{s-cls}L_{s-reg}是箱尺寸。 Softmax用于所有分类任务,smooth-l_{1}(huber)损失用于所有回归情况。

             L_{multi-task}=L_{seg}+\lambda \left ( L_{c1-reg}+L_{c2-reg}+L_{h-cls}+L_{h-reg}+L_{s-cls}+\gamma L_{corner} \right )                                        (2)

用于盒子参数联合优化的拐角损失        虽然我们的3D边界框参数化紧凑且完整,但学习并未针对最终3D盒子精度进行优化 - 中心,大小和标题具有单独的损耗项。 想象一下中心和大小被准确预测但是航向角度偏离的情况 - 具有地面实况框的3D IoU将由角度误差支配。 理想情况下,所有三个术语(中心,大小,标题)应联合优化,以实现最佳3D盒估计(在IoU度量下)。 为了解决这个问题,我们提出了一种新的正则化损失,即角落丢失:

                                        L_{corner}=\sum_{i=1}^{NS}\sum_{j=1}^{NH}\delta _{ij}min\left \{ \sum_{k=1}^{8}\left \| P_{k}^{ij} -P_{k}^{*}\right \|,\sum_{i=1}^{8}\left \| P_{k}^{ij} -P_{k}^{**} \right \| \right \}                                                    (3)

为了计算角落损失,我们首先从所有尺寸模板和航向角度箱构造NS×NH“锚”框。 然后将锚箱转换到估计的箱子中心。 我们将锚框角指示为P_{k}^{ij},其中i,j,k分别是尺寸类,标题类和(预定义)角点顺序的索引。 为了避免翻转航向估计造成大的损失,我们进一步计算从翻转的地面实况框到角落的距离(P_{k}^{**}),并使用原始和翻转情况的最小值。 \delta _{ij},一个用于地面实况大小/标题类,其他为零,是用于选择我们关心的距离项的二维掩模。

5. 实验

实验分为三个部分1。 首先,我们在KITTI [8]和SUN-RGBD [27](第5.1节)上与最先进的3D物体检测方法进行比较。 其次,我们提供深入分析以验证我们的设计选择(第5.2节)。 最后,我们展示定性结果,并讨论我们的方法的优势和局限性(第5.3节)。

5.1 与最先进的方法相比

我们在KITTI [9]和SUN-RGBD [27]三维物体检测基准上评估我们的3D物体探测器。 在这两项任务中,与最先进的方法相比,我们取得了明显更好的结果。

KITTI       表1显示了我们的3D探测器在KITTI测试装置上的性能。 我们大大优于以前的theart-ofart方法。 虽然MV3D [5]使用多视图特征聚合和复杂的多传感器融合策略,但我们基于PointNet [20](v1)和PointNet ++ [22](v2)骨干的方法在设计上更加清晰。 虽然超出了这项工作的范围,但我们希望传感器融合(特别是用于3D检测的图像特征聚合)可以进一步改善我们的结果。

我们还在Tab中显示了我们方法在3D对象定位(鸟瞰图)上的表现。 2.在3D定位任务中,边界框被投影到鸟瞰视图平面,IoU在定向2D框上进行评估。 同样,我们的方法明显优于以前的工作,包括在投影的LiDAR图像上使用CNN的DoBEM [35]和MV3D [5],以及在体素化点云上使用3D CNN的3D FCN [14]。

我们的网络输出在图6中可视化,即使在非常具有挑战性的情况下,我们也可以观察到精确的3D实例分割和盒子预测。 我们将关于成功和失败案例模式的更多讨论推迟到 Sec.5.3。 我们还报告了表3和表4中的KITTI val集(与[5]中相同的分割)(用于汽车)以支持与更多已发表的作品进行比较的表现,以及表5(对于行人和骑自行车者)的参考。

SUN-RGBD      以前的大多数3D探测工作都专注于室外LiDAR扫描,其中物体在空间中很好地分离,点云是稀疏的(这使得它可以用于鸟瞰投影),或者是室内深度图,它是具有密集像素的常规图像 这样的值可以容易地应用图像CNN。 然而,设计用于鸟瞰的方法可能对于在垂直空间中通常一起存在多个物体的室内房间而言是不可能的。 另一方面,室内聚焦方法可能难以应用于LiDAR扫描的稀疏和大规模点云。

相比之下,我们基于平截头体的PointNet是户外和室内3D物体检测的通用框架。 通过应用我们用于KITTI数据集的相同管道,我们在SUNR GBD基准测试(表6)上实现了最先进的性能,具有显着更高的mAP以及更快(10x-1000x)的推理速度。

表1. KITTI测试集上的3D对象检测3D AP。 DoBEM [35]和MV3D [5](先前的技术水平)基于具有鸟瞰LiDAR图像的2D CNN。 我们的方法,没有传感器融合或多视图聚合,在所有类别和数据子集上以大边距优于那些方法。 3D边界框IoU阈值对于汽车为70%,对于行人和骑自行车者为50%。

 表2. KITTI测试集上的3D对象定位AP(鸟瞰图)。 3D FCN [14]在体素化点云上使用3D CNN,远非实时。 MV3D [5]是先前的技术水平。 我们的方法在所有类别和数据子集上都明显优于那些方法。 鸟瞰图2D边界框IoU阈值对于汽车为70%,对于行人和骑自行车者为50%。

                                     表5.为行人和骑自行车者设置的KITTI val表现。 评估的模型是我们的(v2)。

图6.在KITTI val集上的Frustum PointNet结果的可视化(最好以放大的颜色查看)。 这些结果基于PointNet ++模型[22],以5 fps运行,并分别为汽车,行人和骑车人实现70.39,44.89和56.77的测试集3D AP。 点云上的3D实例掩码以彩色显示。 真正的正检测框为绿色,而假阳性框为红色,蓝色的groundtruth框显示为假阳性和假阴性的情况。 每个方框旁边的数字和字母表示实例ID和语义类,汽车为“v”,行人为“p”,骑车人为“c”。 见第二节。 5.3有关结果的更多讨论。

5.2 结构设计分析

在本节中,我们提供分析和消融实验来验证我们的设计选择。

实验设置。 除非另有说明,否则本节中的所有实验均基于我们在KITTI数据上的v1模型,使用[5]中的train / val split。 为了分解2D探测器的影响,我们使用地面真实2D框用于区域提议,并使用3D框估计精度(IoU阈值0.7)作为评估指标。 我们只关注具有最多培训示例的汽车类别。

表6. SUN-RGBD val集上的3D对象检测AP。 评估指标是[27]提出的3D IoU阈值0.25的平均精度。 请注意,COG [24]和2D驱动[13]都使用房间布局上下文来提升性能,而我们和DSS [29]则没有。 与以前的技术水平相比,我们的方法在mAP方面优于6.4%至11.9%,并且速度提高了一到三个数量级。

与三维检测的替代方法相比。   在这一部分中,我们使用2D掩模评估了一些基于CNN的基线方法以及我们管道的消融版本和变体。 在表7的第一行,我们显示来自两个基于CNN的网络的3D盒估计结果。 基线方法在RGB-D图像的地面实况框上训练VGG [26]模型,并采用相同的框参数和损失函数作为我们的主要方法。 虽然第一行中的模型直接估计来自vanilla RGB-D图像块的盒位置和参数,但另一个(第二行)使用从COCO数据集训练的FCN进行2D掩模估计(如MaskRCNN [11]中所示)和 仅使用蒙版区域中的要素进行预测。 还通过减去2D掩模内的中值深度来转换深度值。 然而,与我们的主要方法相比,两个CNN基线都得到了更糟糕的结果。

为了理解CNN基线表现不佳的原因,我们在图7中可视化典型的2D掩模预测。虽然估计的2D掩模在RGB图像上以高质量出现,但2D掩模中仍然存在大量杂波和前景点。 相比之下,我们的3D实例分割得到了更加清晰的结果,这大大简化了下一个模块的精细定位和边界框回归。

在表7的第三行,我们尝试了一个没有3D实例分割模块的截锥版PointNet的消融版本。 毫不奇怪,该模型比我们的主要方法得到更糟糕的结果,这表明我们的3D实例分割模块的关键效果。 在第四行中,我们使用来自2D掩模深度图(图7)的点云来代替3D分割,用于3D盒估计。 但是,由于2D蒙版无法干净地分割3D对象,因此性能比3D分割(第五行中的主要方法)差12%以上。 另一方面,2D和3D蒙版的组合使用 - 从2D蒙版深度图在点云上应用3D分割 - 也显示比我们的主要方法稍差的结果可能是由于来自不准确的2D蒙版预测的累积误差。

点云归一化的影响。 如图4所示,我们的视锥体PointNet采用一些关键的坐标转换来规范化点云,以便更有效地学习。 标签。 图8示出了每个归一化步骤如何帮助3D检测。 我们看到平截头体旋转(使得平截头体点具有更相似的XYZ分布)和掩模质心减法(使得对象点具有更小且更规范的XYZ)是关键的。 此外,T-Net对象点云与对象中心的额外对齐也极大地提高了性能。

回归损失公式和角落损失的影响。 在表7中。 我们比较了不同的损失选项,并表明“cls-reg”损失(航向和尺寸回归的分类和残差回归方法)和正规角落损失的组合可以获得最佳结果。

仅使用回归损失(第一行)的幼稚基线实现了不令人满意的结果,因为回归目标的范围很大(物体尺寸从0.2m到5m)。 相比之下,cls-reg损失和标准化版本(由标题箱尺寸或模板形状尺寸标准化的残差)实现了更好的性能。 在最后一行,我们表明正常的角落损失进一步有助于优化。

图7. 2D和3D masks之间的比较。 我们展示了来自KITTI val集的典型2D区域提议,其中包括2D(在RGB图像上)和3D(在平截头体点云上)实例分割结果。 红色数字表示点的深度范围。

5.3 定性结果和讨论

在图6中,我们可视化我们的视锥体PointNet模型的代表性输出。 我们看到,对于合理距离的非遮挡物体的简单情况(因此我们得到足够数量的点),我们的模型输出非常精确的3D实例分割掩模和3D边界框。 其次,我们惊讶地发现我们的模型甚至可以从具有少量点的部分数据(例如平行停放的汽车)中正确地预测出来的amodal 3D框。 甚至人类也发现仅使用点云数据来注释这样的结果非常困难。 第三,在某些情况下,在具有大量附近或甚至重叠的2D框的图像中看起来非常具有挑战性,当转换为3D空间时,定位变得更容易(例如,第二行第三列中的P11)。

另一方面,我们确实观察到几种失效模式,这些模式表明了未来努力的可能方向。第一个常见错误是由于稀疏点云中的姿势和大小估计不准确(有时小于5个点)。我们认为图像功能可以极大地帮助esp。因为我们甚至可以访问远距离物体的高分辨率图像补丁。第二种类型的挑战是在平截头体中存在来自同一类别的多个实例(例如两个人待命)。由于我们当前的管道在每个平截头体中假定一个感兴趣的对象,因此当出现多个实例时可能会混淆,从而输出混合的分割结果。如果我们能够在每个平截头体内提出多个3D边界框,则可以减轻这个问题。第三,有时我们的2D探测器由于暗光或强遮挡而错过物体。由于我们的平截头体提议基于区域提议,因此在没有2D检测的情况下不会检测到3D对象。但是,我们的3D实例分割和amodal 3D盒估计PointNets不限于RGB视图提议。如补充说明所示,相同的框架也可以扩展到鸟瞰图中提出的3D区域。

Acknowledgement:       

作者希望感谢Nuro Inc.的支持,ONR MURI授权N00014-13-1-0341,NSF授予DMS-1546206和IIS-1528025,三星GRO奖,以及来自Adobe,亚马逊和Apple的礼物。

References

[1] Kitti 3d object detection benchmark leader board.  http://www.cvlibs.net/datasets/kitti/  eval_object.php?obj_benchmark=3d. Accessed:  2017-11-14 12PM. 2  

[2] Kitti bird’s eye view object detection benchmark leader  board. http://www.cvlibs.net/datasets/  kitti/eval_object.php?obj_benchmark=bev.  Accessed: 2017-11-14 12PM. 2  

[3] X. Chen, K. Kundu, Z. Zhang, H. Ma, S. Fidler, and R. Urtasun.  Monocular 3d object detection for autonomous driving.  In Proceedings of the IEEE Conference on Computer Vision  and Pattern Recognition, pages 2147–2156, 2016. 2, 6  

[4] X. Chen, K. Kundu, Y. Zhu, A. G. Berneshawi, H. Ma, S. Fidler,  and R. Urtasun. 3d object proposals for accurate object  class detection. In Advances in Neural Information Processing  Systems, pages 424–432, 2015. 6  

[5] X. Chen, H. Ma, J. Wan, B. Li, and T. Xia. Multi-view 3d  object detection network for autonomous driving. In IEEE  CVPR, 2017. 2, 5, 6  

[6] Z. Deng and L. J. Latecki. Amodal detection of 3d objects:  Inferring 3d bounding boxes from 2d ones in rgb-depth images.  In Conference on Computer Vision and Pattern Recognition  (CVPR), volume 2, 2017. 2  

[7] M. Engelcke, D. Rao, D. Z. Wang, C. H. Tong, and I. Posner.  Vote3deep: Fast object detection in 3d point clouds using  efficient convolutional neural networks. In Robotics and Automation  (ICRA), 2017 IEEE International Conference on,  pages 1355–1361. IEEE, 2017. 1, 2

[8] A. Geiger, P. Lenz, C. Stiller, and R. Urtasun. Vision meets  robotics: The kitti dataset. The International Journal of  Robotics Research, 32(11):1231–1237, 2013. 5  

[9] A. Geiger, P. Lenz, and R. Urtasun. Are we ready for autonomous  driving? the kitti vision benchmark suite. In  Conference on Computer Vision and Pattern Recognition  (CVPR), 2012. 5  

[10] R. Girshick, J. Donahue, T. Darrell, and J. Malik. Rich feature  hierarchies for accurate object detection and semantic  segmentation. In Computer Vision and Pattern Recognition  (CVPR), 2014 IEEE Conference on, pages 580–587. IEEE,  2014. 1  

[11] K. He, G. Gkioxari, P. Dollar, and R. Girshick. Mask r-cnn. ´  arXiv preprint arXiv:1703.06870, 2017. 1, 4, 7  

[12] M. Jaderberg, K. Simonyan, A. Zisserman, et al. Spatial  transformer networks. In NIPS 2015. 4  

[13] J. Lahoud and B. Ghanem. 2d-driven 3d object detection  in rgb-d images. In Proceedings of the IEEE Conference  on Computer Vision and Pattern Recognition, pages 4622–  4630, 2017. 2, 7  

[14] B. Li. 3d fully convolutional network for vehicle detection  in point cloud. arXiv preprint arXiv:1611.08069, 2016. 2, 5,  6  

[15] B. Li, T. Zhang, and T. Xia. Vehicle detection from 3d  lidar using fully convolutional network. arXiv preprint  arXiv:1608.07916, 2016. 2  

[16] Y. Li, S. Pirk, H. Su, C. R. Qi, and L. J. Guibas. Fpnn:  Field probing neural networks for 3d data. arXiv preprint  arXiv:1605.06240, 2016. 2  

[17] T.-Y. Lin, P. Dollar, R. Girshick, K. He, B. Hariharan, and ´  S. Belongie. Feature pyramid networks for object detection.  arXiv preprint arXiv:1612.03144, 2016. 3  

[18] D. Maturana and S. Scherer. Voxnet: A 3d convolutional  neural network for real-time object recognition. In IEEE/RSJ  International Conference on Intelligent Robots and Systems,  September 2015. 1, 2  

[19] A. Mousavian, D. Anguelov, J. Flynn, and J. Kosecka. 3d  bounding box estimation using deep learning and geometry.  arXiv preprint arXiv:1612.00496, 2016. 2, 5  

[20] C. R. Qi, H. Su, K. Mo, and L. J. Guibas. Pointnet: Deep  learning on point sets for 3d classification and segmentation.  Proc. Computer Vision and Pattern Recognition (CVPR),  IEEE, 2017. 1, 2, 4, 5  

[21] C. R. Qi, H. Su, M. Nießner, A. Dai, M. Yan, and L. Guibas.  Volumetric and multi-view cnns for object classification on  3d data. In Proc. Computer Vision and Pattern Recognition  (CVPR), IEEE, 2016. 1, 2  

[22] C. R. Qi, L. Yi, H. Su, and L. J. Guibas. Pointnet++: Deep  hierarchical feature learning on point sets in a metric space.  arXiv preprint arXiv:1706.02413, 2017. 1, 2, 4, 5, 7  

[23] S. Ren, K. He, R. Girshick, and J. Sun. Faster r-cnn: Towards  real-time object detection with region proposal networks. In  Advances in neural information processing systems, pages  91–99, 2015. 2, 5  

[24] Z. Ren and E. B. Sudderth. Three-dimensional object detection  and layout prediction using clouds of oriented gradients.  In Proceedings of the IEEE Conference on Computer Vision  and Pattern Recognition, pages 1525–1533, 2016. 2, 7  

[25] G. Riegler, A. O. Ulusoys, and A. Geiger. Octnet: Learning  deep 3d representations at high resolutions. arXiv preprint  arXiv:1611.05009, 2016. 2  

[26] K. Simonyan and A. Zisserman. Very deep convolutional  networks for large-scale image recognition. arXiv preprint  arXiv:1409.1556, 2014. 7  

[27] S. Song, S. P. Lichtenberg, and J. Xiao. Sun rgb-d: A rgb-d  scene understanding benchmark suite. In Proceedings of the  IEEE Conference on Computer Vision and Pattern Recognition,  pages 567–576, 2015. 1, 5, 7  

[28] S. Song and J. Xiao. Sliding shapes for 3d object detection  in depth images. In Computer Vision–ECCV 2014, pages  634–651. Springer, 2014. 2  

[29] S. Song and J. Xiao. Deep sliding shapes for amodal 3d object  detection in rgb-d images. In Proceedings of the IEEE  Conference on Computer Vision and Pattern Recognition,  pages 808–816, 2016. 2, 7  

[30] H. Su, S. Maji, E. Kalogerakis, and E. G. Learned-Miller.  Multi-view convolutional neural networks for 3d shape  recognition. In Proc. ICCV, 2015. 1  

[31] D. Z. Wang and I. Posner. Voting for voting in online point  cloud object detection. Proceedings of the Robotics: Science  and Systems, Rome, Italy, 1317, 2015. 2  

[32] P.-S. Wang, Y. Liu, Y.-X. Guo, C.-Y. Sun, and X. Tong.  O-cnn: Octree-based convolutional neural networks for 3dshape analysis. ACM Transactions on Graphics (TOG),  36(4):72, 2017. 2  

[33] Z. Wu, S. Song, A. Khosla, F. Yu, L. Zhang, X. Tang, and  J. Xiao. 3d shapenets: A deep representation for volumetric  shapes. In Proceedings of the IEEE Conference on Computer  Vision and Pattern Recognition, pages 1912–1920, 2015. 1,  2  

[34] Y. Xiang, W. Choi, Y. Lin, and S. Savarese. Data-driven 3d  voxel patterns for object category recognition. In Proceedings  of the IEEE Conference on Computer Vision and Pattern  Recognition, pages 1903–1911, 2015. 2  

[35] S.-L. Yu, T. Westfechtel, R. Hamada, K. Ohno, and S. Tadokoro.  Vehicle detection and localization on birds eye view  elevation images using convolutional neural network. 2017  IEEE International Symposium on Safety, Security and Rescue  Robotics (SSRR), 2017. 5, 6

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_40196164/article/details/86005211

智能推荐

c# 调用c++ lib静态库_c#调用lib-程序员宅基地

文章浏览阅读2w次,点赞7次,收藏51次。四个步骤1.创建C++ Win32项目动态库dll 2.在Win32项目动态库中添加 外部依赖项 lib头文件和lib库3.导出C接口4.c#调用c++动态库开始你的表演...①创建一个空白的解决方案,在解决方案中添加 Visual C++ , Win32 项目空白解决方案的创建:添加Visual C++ , Win32 项目这......_c#调用lib

deepin/ubuntu安装苹方字体-程序员宅基地

文章浏览阅读4.6k次。苹方字体是苹果系统上的黑体,挺好看的。注重颜值的网站都会使用,例如知乎:font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, W..._ubuntu pingfang

html表单常见操作汇总_html表单的处理程序有那些-程序员宅基地

文章浏览阅读159次。表单表单概述表单标签表单域按钮控件demo表单标签表单标签基本语法结构<form action="处理数据程序的url地址“ method=”get|post“ name="表单名称”></form><!--action,当提交表单时,向何处发送表单中的数据,地址可以是相对地址也可以是绝对地址--><!--method将表单中的数据传送给服务器处理,get方式直接显示在url地址中,数据可以被缓存,且长度有限制;而post方式数据隐藏传输,_html表单的处理程序有那些

PHP设置谷歌验证器(Google Authenticator)实现操作二步验证_php otp 验证器-程序员宅基地

文章浏览阅读1.2k次。使用说明:开启Google的登陆二步验证(即Google Authenticator服务)后用户登陆时需要输入额外由手机客户端生成的一次性密码。实现Google Authenticator功能需要服务器端和客户端的支持。服务器端负责密钥的生成、验证一次性密码是否正确。客户端记录密钥后生成一次性密码。下载谷歌验证类库文件放到项目合适位置(我这边放在项目Vender下面)https://github.com/PHPGangsta/GoogleAuthenticatorPHP代码示例://引入谷_php otp 验证器

【Python】matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距-程序员宅基地

文章浏览阅读4.3k次,点赞5次,收藏11次。matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距

docker — 容器存储_docker 保存容器-程序员宅基地

文章浏览阅读2.2k次。①Storage driver 处理各镜像层及容器层的处理细节,实现了多层数据的堆叠,为用户 提供了多层数据合并后的统一视图②所有 Storage driver 都使用可堆叠图像层和写时复制(CoW)策略③docker info 命令可查看当系统上的 storage driver主要用于测试目的,不建议用于生成环境。_docker 保存容器

随便推点

网络拓扑结构_网络拓扑csdn-程序员宅基地

文章浏览阅读834次,点赞27次,收藏13次。网络拓扑结构是指计算机网络中各组件(如计算机、服务器、打印机、路由器、交换机等设备)及其连接线路在物理布局或逻辑构型上的排列形式。这种布局不仅描述了设备间的实际物理连接方式,也决定了数据在网络中流动的路径和方式。不同的网络拓扑结构影响着网络的性能、可靠性、可扩展性及管理维护的难易程度。_网络拓扑csdn

JS重写Date函数,兼容IOS系统_date.prototype 将所有 ios-程序员宅基地

文章浏览阅读1.8k次,点赞5次,收藏8次。IOS系统Date的坑要创建一个指定时间的new Date对象时,通常的做法是:new Date("2020-09-21 11:11:00")这行代码在 PC 端和安卓端都是正常的,而在 iOS 端则会提示 Invalid Date 无效日期。在IOS年月日中间的横岗许换成斜杠,也就是new Date("2020/09/21 11:11:00")通常为了兼容IOS的这个坑,需要做一些额外的特殊处理,笔者在开发的时候经常会忘了兼容IOS系统。所以就想试着重写Date函数,一劳永逸,避免每次ne_date.prototype 将所有 ios

如何将EXCEL表导入plsql数据库中-程序员宅基地

文章浏览阅读5.3k次。方法一:用PLSQL Developer工具。 1 在PLSQL Developer的sql window里输入select * from test for update; 2 按F8执行 3 打开锁, 再按一下加号. 鼠标点到第一列的列头,使全列成选中状态,然后粘贴,最后commit提交即可。(前提..._excel导入pl/sql

Git常用命令速查手册-程序员宅基地

文章浏览阅读83次。Git常用命令速查手册1、初始化仓库git init2、将文件添加到仓库git add 文件名 # 将工作区的某个文件添加到暂存区 git add -u # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,不处理untracked的文件git add -A # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,包括untracked的文件...

分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120-程序员宅基地

文章浏览阅读202次。分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120

【C++缺省函数】 空类默认产生的6个类成员函数_空类默认产生哪些类成员函数-程序员宅基地

文章浏览阅读1.8k次。版权声明:转载请注明出处 http://blog.csdn.net/irean_lau。目录(?)[+]1、缺省构造函数。2、缺省拷贝构造函数。3、 缺省析构函数。4、缺省赋值运算符。5、缺省取址运算符。6、 缺省取址运算符 const。[cpp] view plain copy_空类默认产生哪些类成员函数

推荐文章

热门文章

相关标签