[论文翻译]MeteorNet: Deep Learning on Dynamic 3D Point Cloud Sequences

论文翻译:

MeteorNet: Deep Learning on Dynamic 3D Point Cloud Sequences

摘要:

理解动态3D环境对于机器人代理和许多其他应用至关重要。我们提出了一种名为MeteorNet的新型神经网络架构,用于学习动态三维点云序列的表示。不同于以往的工作采用基于网格的表示,并应用3D或4D卷积,我们的网络直接处理点云。我们提出了两种方式为点云序列中的每一个点构建时空邻域。来自这些邻域的信息被聚合以学习每一个点的特征。我们在包括动作识别、语义分割和场景流估计在内的多种三维识别任务上对我们的网络进行了测试。MeteorNet在辛西娅上表现出比以前基于网格的方法更强的性能,同时达到了最先进的性能。MeteorNet也优于以前的基线方法,这些方法最多可以处理连续的两个点云。据我们所知,这是对动态原始点云序列进行深度学习的第一个工作。

1、引言

我们的世界是三维的。在自动驾驶、机器人操控等诸多应用中,自主智能体需要了解其所处的3D环境。在各种三维几何表示中,点云与LiDAR或RGB - D相机的原始感知数据最为接近。与其他几何表示(如网格)相比,点云不受量化误差的影响。最近,人们提出了直接消耗单个或一对点云用于各种3D识别任务[ 21、22、20、14、24]的深度架构。这些结构优于基于其他几何表示的方法。

我们的世界也是动态的。许多识别任务受益于长度大于两帧的时序数据序列。例如,估计运动物体的加速度或识别人体动作。与2D图像视频可以表示为规则的时空3D网格并由3D卷积神经网络( CNNs ) [ 27、10、2]学习不同,动态3D点云序列具有完全不同的结构,学习起来更具挑战性。最近,针对动态点云序列提出了深度架构,将不规则的三维数据转换为网格表示,并利用沿时间维度[ 15、4 ]的3D或4D卷积。然而,网格量化误差在这些方法中是不可避免的,对于需要精确定位的机器人应用来说可能是致命的。此外,在3D或4D空间中处处执行共享和固定内核的卷积要么效率低下,要么需要特殊的工程努力,如稀疏卷积[ 4 ]。

在这项工作中,我们提出了一种用于学习动态三维点云序列表示的新方法。我们方法的关键是一个新的神经网络模块,称为Meteor模块。该模块引入点云序列并聚合时空邻域内的信息来学习每个点的特征。该模块可以相互堆叠在一起,其中来自上一个模块的每个点特征被输入到下一个模块。堆叠模块分层聚合来自更大邻域的信息。受[ 21,22,33]的启发,聚合过程通过对邻域内的每个点应用相同的多层感知器( MLPs ),然后进行最大池化来实现。

我们提出了两种确定时空邻域的方法来处理对象的运动范围:直接分组和链式流分组。前一种方法直接随时间增加分组半径。后一种方法跟踪物体运动并使用离线估计的场景流来构建高效且有效的邻域。我们进行了大量的实验来比较这两种方法。

如图1所示,从Meteor模块中学习到的特征可以用于分类、分割或场景流估计等下游任务。我们将得到的深度神经网络命名为MeteorNet。对于语义分割,MeteorNet在数据集辛西娅上取得了最先进的结果[ 23 ]。在基于KITTI [ 18 ]的语义分割数据集上也优于之前的方法。MeteorNet在这两个数据集上具体展示了其识别可移动物体的优势。在场景流估计方面,MeteorNet打败了之前的基线,在FlyingThings3D [ 17 ]和KITTI场景流数据集上取得了领先的性能[ 19 ]。在动作识别数据集MSRAction3D上也取得了领先的性能[ 12 ]。据我们所知,这是对动态原始点云序列进行深度学习的第一个工作。我们希望我们的MeteorNet能够在自动驾驶、机器人操作和相关领域的研究和应用中受益。

 Figure 1: MeteorNet applications. 我们的模型直接使用原始点云的动态序列,并学习各种应用的全局和局部点特征,包括分类、语义分割和场景流估计。

2、相关工作

针对RGB视频的深度学习。现有的视频深度学习方法可以根据如何建模帧之间的时间关系进行分类。第一类方法通过共享的卷积神经网络为每个视频帧提取一个全局特征,并使用循环神经网络建模时间关系[ 6、36]。第二类方法从离线估计的光流[ 5 ]或光流轨迹[ 25 ]中学习时间关系,网络中除了RGB分支外还有一个单独的分支。第三类方法使用3D卷积神经网络,隐式地学习时间关系[ 27、2、10、31、38]。第四类方法使用非局部操作[ 32 ]或对应建议[ 13 ]来学习长程依赖。我们的工作是针对3D视频的深度学习方法,受到了上述方法的启发。

基于网格的3D深度学习。文献[ 9 ]讨论了3D几何的不同表示方法。3D占用网格是最流行的表示方法之一。之前的工作已经探索了3D卷积[ 34、16 ]或稀疏3D卷积[ 35 ],用于各种3D识别任务。最近关于3D序列深度学习的工作使用了4D占用网格表示,增加了一个额外的时间维度。Fast-and-Furious [ 15 ]提出将垂直维度视为特征通道,并在其余三个维度上应用3D卷积。MinkowskiNet [ 4 ]在4D占用网格上显式地使用了稀疏的4D卷积。与将原始点云量化为占用网格不同,我们的方法直接对点云进行处理。

三维点云的深度学习。 另一种流行的三维几何表示方法是三维点云。主要探索了两大类方法。第一类是基于点网络[ 21 ]。其核心思想是使用共享权重的深度神经网络构造一个对称函数应用于每个点,然后进行逐元素的最大池化。后续工作是点网络+ + [ 22 ],在欧氏空间中提取邻域内局部点集的局部特征,并分层聚合特征。动态图CNN [ 33 ]也提出了类似的想法。不同的是,神经网络处理的是点对而不是个别点。Flow Net3D [ 14 ]让共享神经网络以混合类型的模态,即几何特征和位移作为输入,学习两个点云之间的场景流。

第二类方法结合了网格和点表示。VoxelNet [ 37 ]将空间划分为体素,在每个体素内使用局部PointNet并对体素网格应用3D卷积。SPLATNet [ 26 ]将点值插值到网格中,并在插值回原始点云之前应用3D卷积。我们的工作属于第一类,重点研究点云序列的表示学习。

 图 2:MeteorNet 的架构设计选择。左:所有帧的每点输出的早期融合。右:最后一帧的每点输出的后期融合。

3、三维点云序列上的深度学习

我们提出的方法解决了点云序列的以下三个性质:

1、帧内无序。同一帧内的点应视为无序集。改变帧内点的进给顺序不应该改变深度学习模型的输出。

2、帧间有序。不同帧中的点应该通过其时间戳进行区分。改变一个点的时间戳意味着将该点移动到不同的帧,并且应该改变得到的特征向量。

3、时空度量空间。相邻的点形成有意义的局部结构。对于点云序列,在空间和时间上接近的点应该被认为是近邻点。因此,定义邻域的度量空间应该同时包含空间域和时间域。

在这一部分,我们首先简要回顾了点云深度学习技术。然后我们描述了我们网络的核心模块Meteor模块,它服务于上述三个属性。我们还解释了各种下游应用的总体架构设计选择。最后,我们为我们的架构提供了通用近似的理论基础。

3.1 回顾PointNet

我们的方法受到PointNet[ 21 ]的开创性工作的启发,PointNet是一种在单点云上进行深度学习的神经网络架构。文献[ 21 ]已经证明,给定一组点云X⋅{ { x1,x2,..,xn } | n∈Z +,xi∈[ 0、1 ]m }和任意连续的Hausdorff距离集函数f:X→Rc w.r.t,存在形式为的集函数

 η:Rm→Rr和γ:Rr→Rc是两个连续函数,M AX是逐元的最大值运算.在实际应用中,η和γ被实例化为MLPs。Point Net + + [ 22 ]的后续工作是在邻域内的局部点集中提取特征,并分层聚合特征。对于一个点xi∈S,它的学习特征为

 其中邻域N0 ( xi )可以由一个固定的半径r或xi的k个最近邻点决定。

3.2 meteor 模块

长度为T的点云序列定义为三维点云的T元组S = ( S1 , S2 , ... , ST)。该元组的每个元素都是三维点集St = { p ( t ) i | i = 1,2,..,nt },其中点p ( t ) i由其欧氏坐标x ( t ) i∈R3和特征向量f ( t ) i∈Rc表示。特征向量可以是从传感器获得的属性,例如颜色,或者从前面的Meteor模块输出。我们提出的Meteor模块以S作为输入,为S中的每一个点p ( t ) i生成一个更新的特征向量h ( p ( t ) i )。Meteor模块的第一步是在相同或相近的帧中寻找p ( t ) i的邻近点,形成一个局部时空邻域N ( p ( t ) i )。

给定N,我们为Meteor模块引入了两个h的实例化。第一个实例化是针对跨帧的对应关系是重要的(例如,场景流估计)的应用。对于每个( p ( t′) j,p ( t ) i )对,我们将两个点的特征向量和它们的时空位置差传递给具有共享权重ζ的MLP,然后进行基于元素的最大池化。则p ( t ) i的更新特征为

第二个实例化是针对跨帧点之间的对应关系不重要的应用(例如语义分割),我们将p ( t′) j的特征向量和p ( t′) j与p ( t ) i之间的时空位置差异传递给ζ,然后通过一个最大池化层 

 针对点N的时空交互范围,我们介绍了决定N的两类点分组方法,这对于Meteor模块至关重要:直接分组和链流分组。

 图3:两种分组方法:(a) 直接分组;(b) 直接分组。(b) 链式流动分组。

直接分组:我们的直觉是,物体所能移动的最大距离随着时间的增加而增加。因此,我们直接在三维空间中随着| t-t′|的增大而增大分组半径,以覆盖跨时间的运动范围。形式上,邻域由决定

 式中:r为单调递增函数。注意到r ( 0 ) > 0,所以同一帧内的点也可以分组。直接分组如图3 ( a )所示。

Chained-flow grouping.在现实世界的动态点云序列中,一帧中的点所代表的对象在相邻帧中通常具有空间上接近的对应点。通过这些对应关系建立起来的物体的运动轨迹对于时间理解至关重要。在动态点云序列中,一个点与其时空邻域内的其他点之间的相互作用应遵循其运动方向。这种运动可以用场景流稠密的三维运动场来描述[ 28 ]。

在实际中,对于所有的t,我们首先估计从帧t到t - 1的后向场景流f( t , t-1)i∈R3

其中F0是点云{ p ( t ) i }和{ p ( t-1 ) j }之间的场景流估计量,例如。FlowNet3D [ 14 ]。则x′i ( t-1 ) = x ( t ) i + f( t , t-1)i为p ( t ) i的虚拟对应点在t - 1帧的估计位置。 

为了估计p ( t ) i在t - 2帧中的对应位置,我们首先将场景流估计结果{ f( t-1 , t-2) j } j插值到虚拟点p′i ( t-1 )的位置。在插值选择中,我们使用k个最近邻的简单反距离加权平均

 其中w( x1 , x2) = 1 d( x1 , x2)p为插值权重。我们默认使用p = 2,k = 2。然后我们将该流链去估计p ( t ) i在t - 2帧的对应位置:x′i ( t-2 ) = x ( t ) i + f( t , t-1)i + f′i ( t-1 , t-2)。其在t - 2以外的帧中的位置可以通过重复上述过程进一步插值和链式化。图3 ( b )为预先计算的流矢量f和链式插值流矢量f′。然后确定用于链式流分组的邻域

其中r默认为一个定值。也可以使用| t-t′|关于r的单调递增函数来补偿场景流估计误差。 

与直接分组相比,链式流分组侧重于跟踪每个点的运动轨迹和对应关系,从而可以应用更小的分组半径。它也可以更高效的计算。

3.3 总体架构与应用

Meteor模块输出的特征向量可以进一步处理得到整个序列的数量,如类得分( e.g.用于分类);或者传播回每一个点,得到每一个点的数量,如所有点的类得分(例如,语义分割);或者对于特定帧(例如,场景流估计)中的点的每一个点数量。我们将用于分类、语义分割和场景流估计的整体架构分别命名为MeteorNet - cls、MeteorNet - seg和MeteorNet - flow。

在架构中包含Meteor模块一般有两种设计选择:早期融合和晚期融合。

早期融合。我们在第一层使用Meteor模块,使来自不同帧的点从一开始就混合在一起,如图2左图所示。在接下来的实验部分,MeteorNet - cls和MeteorNetseg使用了早期融合。

后期融合。我们应用了几个层次的特征学习(例如。Point Net + + )分别对每一帧中的点进行混合,然后在Meteor模块中进行混合,如图2右图所示。它允许模型捕获更高层次的语义特征。在后续的实验部分,MeteorNet - flow使用了后期融合。

3.4 理论基础

我们通过展示Meteor模块对点云序列上连续函数的通用逼近能力,为我们的MeteorNet提供了理论基础。

设t∈Z,Xt = { St | St⋅[ 0、1 ]m,| St | = n,n∈Z + }为t∈Z时刻m维单位立方体内的m维点云集,定义Si∈Xi,Sj∈Xj的单帧Hausdorff距离d H( Si , Sj)。X = X1 × X2 × .. × XT为长度为T的点云序列集合。假设f:X→R是X上的连续函数w . r . t dseq( · , ·),即∂> 0,∂δ > 0,对任意的S,S′∈X,如果dseq( S , S′) < δ,| f ( S ) -f ( S′) | <。这里,我们定义点云序列dseq( · , ·)的距离为所有帧对之间的最大每帧Hausdorff距离,即dseq( S , S′) = maxt { dH ( St , S′t) }。我们的定理表明,f可以通过一个足够大的神经网络和一个有足够多神经元的最大池化层任意逼近。

 该定理的证明在补充材料中。其核心思想是通过设计点云序列与单帧点云之间的连续双射来证明它们之间的同胚性,从而使得针对单帧点云的结论可以被使用。我们解释了定理的两个含义。首先,对于长度为T的点云序列,函数ζ本质上比单帧点云处理T ×多个点是相同且独立的。因此,与单帧点网络[ 21 ]相比,M AX可能需要更大的网络和更大的瓶颈维度来保持点云序列的表达能力。我们将在以后的实验中对此进行展示。其次,简单地将一个额外的时间戳t作为ζ的输入,网络能够区分来自不同帧的点,但仍然将来自同一帧的点视为无序集。

 图 4:我们数据集中的“快速”示例。

 表 1:玩具实验设置和结果。准确度结果 (%) 显示在“训练,值”中。N/A 表示资源(例如内存)不足

4. Grids versus Point Clouds: A Toy Example

我们构建了一个点云序列的玩具数据集,其中基于网格的方法无法学习简单的分类任务。通过这个简单的数据集,我们展示了这些基于网格的方法的缺点和我们的架构在原始点云上的优势。

该数据集由一个随机位置的粒子在一个100 × 100 × 100的立方体内运动的序列组成。移动方向从6个可能的方向中随机选择,均平行于立方体的一条边。每个序列有四个帧。粒子的运动速度有四类:"静态"、"慢速"、"中速"和"快速"。对于"静态"类别,粒子在每一步的移动距离为零;对于其他三个类别,粒子在[ 0.09、0.11]、[ 0.9、1.1]和[ 9、11]之间随机选择。该数据集有2000个训练序列和200个验证序列,每个标签的序列数量相等。图4展示了我们的数据集中一个带有" fast "标签的示例数据点。

我们使用了最新的两种基于网格的动态三维场景深度架构的玩具版本,FaF [ 15 ]和MinkNet [ 4 ],以及我们的MeteorNet。我们只允许三种网络架构内的三层神经元,卷积核大小不大于3。具体架构如表1所示。对于基于网格的方法,粒子由网格占有率表示,对于MeteorNet,粒子由3D点表示。实验设置旨在模拟叠加卷积层增加表达能力不足或效率低下的情况。没有使用数据增强。训练和验证结果列于表1。我们的模型可以完美地学习玩具数据集,而以前基于网格的方法无论选择何种网格大小都无法避免显著的错误。

我们给出如下解释。如果选择与"慢"步长相当的网格尺寸,"静态"和"慢"粒子可以被正确分类。然而,无论是"中"还是"快"粒子都需要巨大的卷积感受野来覆盖移动距离。因此,基于玩具网格的网络无法对其进行分类。如果选择与' fast ' (或"中")步长相当的网格尺寸,' fast ' (或"中")粒子可以被正确分类。然而,"慢"和"静态"粒子大多产生相似的静止网格占用率。因此,基于玩具网格的网络无法对其进行分类。通过这个实验,我们展示了我们的MeteorNet的优势:它不受网格大小的影响,可以同时准确地学习长程和短程运动。

5、实验

MeteorNet的设计基于两个假设。首先,处理原始点云的深度架构比基于网格的方法受量化误差的影响更小。因此,它们在多种识别任务中取得了较好的性能。其次,许多识别任务受益于更长的三维数据输入序列。为了说明这一点,我们将MeteorNet应用于3个3D识别任务:动作识别、语义分割和场景流估计,这是典型的分类和回归任务。我们将其性能与多种基线进行比较,包括基于网格的方法和单帧方法。我们还将一些例子结果可视化。

 表 2:MSRAction3D 上的分类准确性 (%)。

5.1 分类

我们首先进行了点云序列分类的实验。我们使用的是MSRAction3D数据集[ 12 ]。它由10个不同的人执行20类动作的567个Kinect深度图序列组成。共23,797帧。我们从深度图中重建点云序列。我们使用与之前工作相同的火车/测试分割[ 30 ]。分类结果列于表2。基线是在深度图[ 29、11]和骨骼上基于描述符的方法[ 30 ],以及Point Net + + [ 22 ]。MeteorNet - cls在该数据集上显著优于所有基线。我们还表明,MeteorNet - cls的动作识别精度受益于更长的点云序列。

 表 3:Synthia 数据集上的语义分割结果。指标是平均 IoU 和平均准确率 (%)。

 表 4:KITTI 数据集上的语义分割结果。指标是每个类和平均欠条(%)。

5.2 语义分割

我们进行了两个语义分割实验。我们首先在大规模合成数据集辛西娅[ 23 ]上测试MeteorNet - seg进行消融研究,并与稀疏的4D CNN基线进行比较。然后在KITTI数据集[ 8 ]的真实LiDAR扫描数据上测试MeteorNet - seg。

Synthia dataset 由9种不同天气情况下的6个驾驶场景序列组成。每个序列由从运动汽车顶部拍摄的四个视点的四幅RGBD立体图像组成。我们从RGB和深度图像重建三维点云并创建三维点云序列。场景由以汽车为中心的50m × 50m × 50m的包围盒裁剪而成。然后使用最远点采样将场景降采样到每帧16,384个点。我们使用与[ 4 ]相同的训练/验证/测试分割:使用除日落、春天和雾以外的天气条件的序列1 - 4作为训练集;使用有雾天气的序列5作为验证集;并将具有日落和春季天气的序列6作为测试集。训练集、验证集和测试集分别包含19,888、815和1,886帧。

作为消融研究,我们使用了MeteorNet - seg,并设置了不同的模型大小和输入帧数。与MeteorNet - seg - s相比,MeteorNet - seg - m在每个最大池化层具有更大的瓶颈维度。与MeteorNet - seg - m相比,MeteorNet - seg - l具有相同的最大池化维度,但在非瓶颈层具有更大的维度。其中,3D和4D MinkNet [ 4 ]将空间体素化,使用3D空间或4D时空稀疏卷积进行分割。评价指标为每类平均IoU和总体平均IoU以及总体分割精度。结果列于表3。我们的多帧MeteorNet - seg优于单帧PointNet + +。此外,基于点的方法在大多数类别和总体指标上都显著优于基于稀疏卷积的方法。我们在消融研究中也发现了有趣的结果。首先,对于多帧输入,增加最大池化瓶颈维度比增加非瓶颈层维度更有效。其次,在不增加模型规模的情况下增加帧数会对网络性能产生负面影响。第三,在所有基于点的方法中,基于链式流分组的MeteorNet - seg在' Car '和' Pedestrian '等可移动对象上取得了最好的性能。这显示了其在检测运动方面的优势。图5可视化了两个实例结果。我们的模型能够准确地分割出大部分物体。

KITTI dataset 通过将边界框标签转换为点标签,我们从KITTI目标检测数据集[ 1 ]中导出了一个语义分割数据集。额外的帧来自KITTI原始集[ 8 ]中对应的LiDAR数据。利用GPS / IMU数据将点云转换为世界坐标来消除自身运动。有三个语义类:'车'、'行人/ Cyclist '和'背景'。' Car '类主要由停放和静止的车的点组成,而'行人/ Cyclist '类主要由移动的人的点组成。我们使用了文献[ 20 ]中默认的train / val分割。分割结果列于表4。

MeteorNet在' Car '上取得了与PointNet + +相近的分割精度,但在' Pedestrian / Cyclist '上以多帧作为输入显著提高了分割精度。正如预期的那样," Pedestrian / Cyclist "上的准确率随着输入帧数的增加而不断提高。这突出了MeteorNet在学习物体运动方面的优势。

 表 5:FlyingThings3D 数据集上的流量估算结果。指标用于场景流的端点误差 (EPE):平均值、标准偏差、准确度(% 使用 EPE 的估计比率 <0.1 或 10%)和异常值比率(使用 EPE 的估计值比率 >1.0)。

5.3 场景流估计

在真实点云数据中标注稠密的场景流非常昂贵。据我们所知,目前还不存在任何具有逐点场景流标注的大规模真实点云数据集。一种常用的方法是在大规模的合成数据集上进行训练,然后在较小的真实数据集上进行微调[ 14 ]。为此,我们进行了两个实验:首先在FlyingThings3D数据集上训练MeteorNet [ 17 ],然后在KITTI场景流数据集上微调MeteorNet [ 19 ]。

 表 6:KITTI 场景流数据集上的流量估计结果。指标是场景流的端点误差 (EPE) 的平均值和标准偏差。

FlyingThings3D数据集 该合成数据集由来自ShapeNet [ 3 ]的多个随机移动物体场景渲染的RGB和视差图像视频组成。它提供了8955个训练视频和1747个测试视频,每个视频有10帧。我们从视差图重建三维点云。为连续帧提供光流图和视差变化图,从中可以重建三维场景流。由于大位移和强遮挡,该数据集具有挑战性。我们从训练视频中随机抽取20000个4帧序列作为训练集,从测试视频中随机抽取2000个4帧序列作为测试集。我们使用随机旋转进行数据增强。

我们评估场景流的三维端点误差( 3D end-point-error,EPE ),其定义为估计流向量与真实流向量之间的L2距离。我们报告了EPE的四个方面:均值、标准差、阈值为10 %或0.1的准确率和阈值为1.0的离群率,作为我们的评价指标。其中,FlowNet-C / FlowNet - S是在文献[ 7 ]的基础上改进而来的卷积结构,它以2 / 3个稠密的深度图(转换为xyz坐标图)作为输入来估计超像素场景流,而不是文献[ 7 ]中的光流。FlowNet3D [ 14 ]是一种基于点网络的架构,以两个点云作为输入来估计每个点的场景流。结果列于表5。

可以看出,基于卷积的方法由于遮挡的原因很难捕获到准确的场景流。基于点的方法如Flow Net3D可以有效捕捉点云中的精确运动。MeteorNet - flow以更多的帧作为输入,可以进一步改进场景流估计。直接分组的MeteorNet - flow对小位移表现出更好的准确性,而链式流分组的MeteorNet - flow表现出更好的综合性能。

通过使用链式流,点被分组到一个邻域中,该邻域位于根据过去帧的流预测的相应位置附近。因此,该模型为正确估计水流流向和大小提供了更多的依据。此外,随着MeteorNet - flow输入帧数的增加,性能增益保持一致。

KITTI场景流数据集 该数据集提供了 200 帧对的地面实况视差图和光流 [19]。由此,我们重建了3D场景流程。200 对中只有 142 对具有相应的原始 LiDAR 点云数据,因此允许我们使用 KITTI 原始数据集中的前一帧 [8]。我们将原始点云投影到地面实况地图上,以获得地真 3D 场景流。我们首先在FlyingThings3D数据集上训练模型,直到收敛,并使用前100对来微调模型。然后我们使用剩余的 42 对进行测试。我们报告场景流EPE的两个方面:平均值和标准偏差,作为我们的评估指标。基线 FlowNet3D 的训练和微调方式与 MeteorNet-flow 相同。结果列于表6中。

 图 6:KITTI 场景流数据集上 MeteorNet 示例结果的可视化。点的颜色表示它们属于哪些帧:帧 t − 3、帧 t − 2、帧 t − 1、帧 t。平移点(帧 t − 3 + 估计场景流)为黑色。绿色和黑色形状应该重叠以进行完美估计。

我们的三帧和四帧作为输入的流星网流的性能优于基线。随着帧数的增加,性能提升是一致的。使用链式流进行分组的版本在平均误差方面更好,而直接分组版本的标准差更低,并且更稳健。我们的假设是,当点稀疏时,初始流量估计可能会有更大的误差,该误差会随着时间的推移传播,从而影响最终预测。图 6 可视化了生成的流量估算值的一些示例。

6、讨论

与其他体系结构的关系。MeteorNet可以看作是以前几种架构的概括。当输入是一个点云帧时,MeteorNet可以简化为PointNet++[22]或DGCNN [33],具体取决于第3.2小节中h函数的实例化。当输入有两帧点云时,MeteorNet可以简化为FlowNet3D [14]。

直接分组与链式流分组。在第 3.2 小节中,我们讨论了两种分组方法。与直接分组相比,链式流分组的一个可能优势是其计算效率。直观地对于直接分组,空间邻域半径 r 应随 t − t′ 线性增长。因此,对于长度为 T 的点云序列,点的时空邻域中的点总数为 O(T 4)。对于链式流分组,空间半径 r 不需要随时间增长,因此时空邻域中的点数仅为 O(T 2)。直接分组的这种限制可以通过限制邻域的时间半径同时增加堆叠的 Meteor 模块的数量来缓解。这类似于使用较小的卷积内核,同时增加卷积神经网络中的层数。

链式流分组的一个潜在问题是点云太稀疏且流量估计不准确。在这种情况下,错误可能会在链接过程中累积,并且生成的时空邻域可能会随时间偏离真正的相应点。研究初始场景流误差对最终性能的影响将留作未来的工作。

7、结论 

在这项工作中,我们提出了一种新颖的深度神经网络架构MeteorNet,该架构直接消耗动态3D点云序列。我们展示了这种新架构如何在各种 3D 识别任务(包括活动识别、语义分割和场景流估计)上优于基于网格的单帧方法。我们还展示了我们网络的通用近似能力,并提供示例结果的可视化。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值