Deep Learning for 3D Point Clouds: A Survey

摘要

点云学习最近因其在计算机视觉、自动驾驶和机器人技术等许多领域的广泛应用而受到越来越多的关注。作为人工智能的主导技术,深度学习已成功用于解决各种二维视觉问题。然而,由于使用深度神经网络处理点云所面临的独特挑战,点云的深度学习仍处于起步阶段。最近,点云的深度学习变得更加蓬勃发展,提出了许多方法来解决该领域的不同问题。为了激发未来的研究,本文全面回顾了点云深度学习方法的最新进展。它涵盖了三个主要任务,包括3D形状分类、3D目标检测和跟踪以及3D点云分割。它还展示了几个公开可用的数据集的比较结果,以及有见地的观察和启发未来的研究方向。

关键词:深度学习、点云、3D数据、形状分类、形状检索、目标检测、目标跟踪、场景流、实例分割、语义分割、部分分割。

1 介绍

随着3D采集技术的快速发展,3D传感器越来越多,价格也越来越便宜,包括各种类型的3D扫描仪、LiDAR和RGB-D相机(如Kinect、RealSense和Apple深度相机)[1]。这些传感器获取的3D数据可以提供丰富的几何、形状和比例信息[2]、[3]。与2D图像相辅相成,3D数据为更好地了解机器周围环境提供了机会。3D数据在不同领域有许多应用,包括自动驾驶、机器人、遥感和医疗[4]。

3D数据通常可以用不同的格式表示,包括深度图像、点云、网格和体积网格。作为一种常用的格式,点云表示将原始几何信息保留在3D空间中,无需任何离散化。因此,它是许多场景理解相关应用(例如自动驾驶和机器人技术)的首选。最近,深度学习技术主导了许多研究领域,例如计算机视觉、语音识别和自然语言处理。然而,3D点云的深度学习仍然面临几个重大挑战[5],例如数据集规模小、3D 点云的高维度和非结构化性质。在此基础上,本文重点分析了已经用于处理3D点云的深度学习方法。点云上的深度学习越来越受到关注,尤其是在过去五年中。还发布了几个公开可用的数据集,例如ModelNet[6]、ScanObjectNN[7]、ShapeNet[8]、PartNet[9]、S3DIS[10]、ScanNet[11]、Semantic3D[12]、ApolloCar3D[13]、和 KITTI Vision Benchmark Suite[14]、[15]。这些数据集进一步推动了对3D点云深度学习的研究,提出了越来越多的方法来解决与点云处理相关的各种问题,包括3D形状分类、3D目标检测和跟踪、3D点云分割、3D点云配准、6-DOF位姿估计和3D重建[16]、[17]、[18]。也很少有关于3D数据的深度学习调查,例如[19]、[20]、[21]、[22]。然而,我们的论文是第一篇专门关注点云理解的深度学习方法。现有的3D点云深度学习方法的分类如图1所示。

与现有文献相比,这项工作的主要贡献可以总结如下:

1)据我们所知,这是第一篇全面涵盖深度学习方法的调查论文,用于几个重要的点云理解任务,包括3D形状分类、3D目标检测和跟踪以及3D点云分割。

2)与现有的综述[19]、[20]不同,我们特别关注3D点云的深度学习方法,而不是所有类型的3D数据。

3)本文涵盖了点云深度学习的最新进展。因此,它为读者提供了最先进的方法。

4)对几种公开数据集的现有方法进行了综合比较(如表2、3、4、5),并给出了简要总结和深入讨论。

本文的结构如下。第2节介绍了各自任务的数据集和评估指标。第3节回顾了三维形状分类的方法。第4节概述了现有的三维目标检测和跟踪方法。第5节回顾了点云分割的方法,包括语义分割、实例分割和部分分割。最后,第6节总结了本文。我们还提供定期更新的项目页面:https://github.com/QingyongHu/SoTA-Point-Cloud.

Deep Learning for 3D Point Clouds: A Survey_第1张图片
图1、3D点云的深度学习方法分类。

2 背景

2.1 数据集

已经收集了大量数据集来评估深度学习算法在不同3D点云应用中的性能。表1列出了一些用于3D形状分类、3D目标检测和跟踪以及3D点云分割的典型数据集。特别是,还总结了这些数据集的属性。

对于3D形状分类,有两种类型的数据集:合成数据集[6]、[8]和真实世界数据集[7]、[11]。合成数据集中的目标是完整的,没有任何遮挡和背景。相比之下,现实世界数据集中的目标被不同级别的遮挡,一些目标被背景噪声污染。

对于3D目标检测和跟踪,有两种类型的数据集:室内场景[11]、[25]和室外城市场景[14]、[28]、[30]、[31]。室内数据集中的点云要么从密集深度图转换而来,要么从3D网格中采样。户外城市数据集专为自动驾驶而设计,其中物体在空间上分离良好,这些点云很稀疏。

对于3D点云分割,这些数据集由不同类型的传感器获取,包括移动激光扫描仪 (MLS)[15]、[34]、[36]、航空激光扫描仪(ALS)[33]、[38]、静态地面激光扫描仪 (TLS) [12]、RGBD相机[11] 和其他3D扫描仪 [10]。这些数据集可用于开发各种挑战的算法,包括类似的干扰物、形状不完整和类别不平衡。

2.2 评价指标

已经提出了不同的评估指标来测试这些方法用于各种点云理解任务。对于3D形状分类,总体准确度(OA)和平均类别准确度(mAcc)是最常用的性能标准。“OA”代表所有测试实例的平均精度,“mAcc”代表所有形状类别的平均精度。对于3D目标检测,平均精度(AP)是最常用的标准。它被计算为精确召回曲线下的面积。 P r e c i s i o n Precision Precision S u c c e s s Success Success通常用于评估3D单个目标跟踪的整体性能。Average Multi-Object Tracking Accuracy(AMOTA) 和Average Multi-Object Tracking Precision (AMOTP) 是评估3D多目标跟踪最常用的标准。对于3D点云分割,OA、mean Intersection over Union(mIoU) 和mean class Accuracy (mAcc) [10]、[12]、[15]、[36]、[37] 是最常用的性能评估标准。特别是,平均精度 (mAP) [39] 也用于3D点云的实例分割。

Deep Learning for 3D Point Clouds: A Survey_第2张图片
表1:用于3D形状分类、3D目标检测和跟踪以及3D点云分割的现有数据集的摘要。用于评估的类数和带注释的类数(显示在括号中)

3 3D形状分类

3.1 基于多视图的方法

这些方法首先将3D形状投影到多个视图中并提取视图特征,然后融合这些特征以进行准确的形状分类。对于这些方法来说,如何将多个视图特征聚合成一个有区别的全局表示是一个关键的挑战。

MVCNN [40] 是一项开创性的工作,它简单地将多视图特征最大化为一个全局描述符。然而,max-pooling只保留特定视图中的最大元素,导致信息丢失。MHBN[41]通过协调双线性池化集成局部卷积特征以产生紧凑的全局描述符。杨等人[42]首先利用关系网络来利用一组视图上的相互关系(例如,区域-区域关系和视图-视图关系),然后聚合这些视图以获得有区别的3D目标表示。此外,还提出了其他几种方法[43]、[44]、[45]、[46]来提高识别精度。与以前的方法不同,Wei等人[47]通过将多个视图视为grpah节点,在View-GCN中使用了有向图。然后将由局部图卷积、非局部消息传递和选择性视图采样组成的核心层应用于所构建的图。最终使用所有级别的最大池化节点特征的连接来形成全局形状描述符。

3.2 基于体积的方法

这些方法通常将点云体素化为3D网格,然后在体积表示上应用3D卷积神经网络(CNN)进行形状分类。

Maturana等人[48]引入了一个称为VoxNet的体积占用网络来实现稳健的3D目标识别。Wu等人[6]提出了一种基于卷积深度信念的3D ShapeNets来学习来自各种3D形状的点的分布(由体素网格上的二进制变量的概率分布表示)。吴等人[6]提出了一种基于卷积深度信念的3D ShapeNets来学习来自各种3D形状的点的分布(由体素网格上的二元变量的概率分布表示)。虽然已经取得了令人鼓舞的性能,但这些方法无法很好地扩展到密集的3D数据,因为计算和内存占用随着分辨率的增加呈立方增长。

为此,引入了分层和紧凑的结构(例如八叉树)来减少这些方法的计算和存储成本。OctNet[49]首先使用混合网格八叉树结构对点云进行分层划分,该结构表示沿规则网格的多个浅八叉树的场景。采用位串表示法对八叉树结构进行有效编码,并通过简单算法对每个体素的特征向量进行索引。 Wang等人[50]提出了一种基于八叉树的CNN三维形状分类方法。以最细的叶八分区中采样的3D模型,这个模型的平均法向量被输入到网络中,3D-CNN应用于3D形状表面占据的八分之一。与基于密集输入网格的基线网络相比,OctNet对高分辨率点云所需的内存和运行时间要少得多。Le等人[51]提出了一个名为PointGrid的混合网络,它集成了点和网格表示,以实现高效的点云处理。在每个嵌入体积网格单元内采样恒定数量的点,这允许网络通过使用3D卷积来提取几何特征。Ben-Shabat等人[52]将输入点云转换为3D网格,并进一步通过3D修正Fisher Vector (3DmFV)方法表示,然后通过常规CNN架构学习全局表示。

Deep Learning for 3D Point Clouds: A Survey_第3张图片
图2、最相关的基于深度学习的3D形状分类方法的时序概述。

3.3 基于点的方法

根据用于每个点的特征学习的网络结构,这类方法可以分为逐点MLP、基于卷积、基于图、基于分层数据结构的方法和其他典型方法。

3.3.1 逐点MLP方法

这些方法用几个共享的多层感知(MLP)独立地对每个点建模,然后使用对称聚合函数聚合一个全局特征,如图3所示。

Deep Learning for 3D Point Clouds: A Survey_第4张图片
图3、一种轻量级的PointNet架构。n表示输入点的数量,M表示每个点的学习特征的维数

用于2D图像的典型深度学习方法由于其固有的数据不规则性而不能直接应用于3D点云。作为一项开创性的工作,PointNet[5]直接以点云为输入,用一个对称函数实现置换不变性。具体来说,PointNet通过几个MLP层独立学习逐点特征,并通过最大池化层提取全局特征。Deep sets[53]通过对所有表示求和并应用非线性变换来实现置换不变性。由于PointNet[5]中每个点的特征都是独立学习的,因此无法捕获点之间的局部结构信息。因此,Qi等人[54]提出了一种分层网络PointNet++来从每个点的邻域中捕获精细的几何结构。作为PointNet++层次结构的核心,它的集合抽象层由三层组成:采样层、分组层和基于PointNet的学习层。PointNet++通过堆叠几个集合抽象层次,从一个局部几何结构中学习特征,并逐层抽象局部特征。

由于它的简单性和强大的表示能力,许多网络都是基于PointNet开发的[5]。Mo-Net[55]的架构类似于PointNet[5],但它以有限的矩作为输入。Point Attention Transformers(PATs)[56]通过其自身的绝对位置和相对于其相邻的相对位置来表示每个点,并通过MLPs学习高维特征。然后,Group Shuffle Attention (GSA)来捕获点之间的关系,并开发置换不变、可微分和可训练的端到端Gumbel Subset Sampling(GSS)层来学习分层特征。基于PointNet++[54],PointWeb[57]利用局部邻域的上下文,通过Adaptive Feature Adjustment(AFA)来改善点特征。Duan等人[58]提出了一种Structural Relational Network(SRN)来学习不同局部结构之间的结构关系特征使用MLP。Lin等人[59]通过为PointNet学习的输入和函数空间构建查找表来加速推理过程。在ModelNet和ShapeNet数据集上的推理时间比PointNet在中型机器上加快了1.5ms和32倍。SRINet[60]首先投影点云以获得旋转不变表示,然后利用基于点网的主干提取全局特征,并利用基于图的聚合提取局部特征。在PointASNL中,Yan等人[61]利用Adaptive Sampling(AS)模块来自适应调整Furthest Point Sampling(FPS)算法所采样的点的坐标和特征,并提出一个local-non-local(L-NL)模块来捕捉这些采样点的局部和远距离依赖性。

3.3.2 基于卷积的方法

与在2D网格结构(例如,图像)上定义的核相比,由于点云的不规则性,用于3D点云的卷积核很难设计。根据卷积核的类型,当前的3D卷积方法可以分为连续和离散卷积方法,如图4所示。

三维连续卷积方法。 这些方法在连续空间上定义卷积核,其中相邻点的权重与相对于中心点的空间分布相关。

Deep Learning for 3D Point Clouds: A Survey_第5张图片
图4、点的局部邻域的连续和离散卷积的图示。(a)表示以点 p p p为中心的局部邻域 q i q_{i} qi;(b)和(c )分别表示3D连续和离散卷积

3D卷积可以解释为给定子集上的加权和。作为RS-CNN[62]的核心层,RSConv以某一点周围的点的局部子集作为其输入,通过学习局部子集中的点之间从低级关系(如欧几里德距离和相对位置)到高级关系的映射,使用MLP实现卷积。在[63]中,在单位球中随机选择核元素。然后使用基于MLP的连续函数来建立核元素的位置和点云之间的关系。在DensePoint[64]中,卷积被定义为具有非线性激活的SingleLayer Perceptron(SLP)。通过连接来自所有先前层的特征以充分利用上下文信息来学习特征。Thomas等人[65]提出了刚性和可变形Kernel Point Convolution(KPConv)算子,用于使用一组可学习的核点的3D点云。ConvPoint[66]将卷积核分为空间部分和特征部分。空间部分的位置从单位球中随机选择,并且通过简单的MLP学习加权函数。

一些方法还使用现有算法来执行卷积。在PointConv[67]中,卷积被定义为关于重要性采样的连续3D卷积的Monte Carlo估计。卷积核由加权函数(通过MLP层学习)和密度函数(通过核化密度估计和MLP层学习)组成。为了提高存储和计算效率,3D卷积被进一步简化为两个操作:矩阵乘法和2D卷积。在相同的参数设置下,其内存消耗可以减少64倍左右。在MCCNN[68]中,卷积被认为是一个依赖于样本密度函数的Monte Carlo估计过程(通过MLP实现)。泊松盘采样然后被用于构建点云层次。此卷积运算符可用于在两种或多种采样方法之间执行卷积,并且可以处理不同的采样密度。在SpiderCNN[69]中,SpiderConv提出将卷积定义为阶跃函数和定义在k个最近邻上的泰勒展开的乘积。阶跃函数通过对局部测地距离进行编码来捕获粗略的几何形状,而泰勒展开通过在立方体的顶点处插值任意值来捕获内在的局部几何变化。此外,卷积网络PCNN[70]也提出了三维点云的基础上径向基函数。

已经提出了几种方法来解决3D卷积网络所面临的旋转等变问题。Esteves等人[71]提出了3D球形CNN来学习3D形状的旋转等变表示,其采用多值球形函数作为其输入。通过用球谐域中的锚点参数化频谱来获得局部卷积滤波器。张量场网络[72]被提议将点卷积运算定义为可学习的径向函数和球谐函数的乘积,其对于3D旋转、平移和置换是局部等变的。[73]中的卷积是基于球形互相关定义的,并使用广义快速傅立叶变换(FFT)算法实施。基于PCNN,SPHNet[74]通过在体积函数的卷积过程中引入球谐核来实现旋转不变性。

为了加快计算速度,Flex-Convolution[75]将卷积核的权重定义为k近邻上的标准标量积,可以使用CUDA进行加速。实验结果表明,该算法在参数较少、内存消耗较低的小数据集上具有良好的性能。

三维离散卷积方法。 这些方法在规则网格上定义卷积核,其中相邻点的权重与相对于中心点的偏移有关。

Hua等人[76]将非均匀3D点云转换为均匀网格,并在每个网格上定义卷积核。 这个提议的3D内核为落入同一网格的所有点分配相同的权重。 对于给定的点,位于同一网格上的所有相邻点的平均特征都是从上一层计算出来的。 然后,对所有网格的平均特征进行加权和求和,以生成当前层的输出。 Lei等人[77]定义了一个球形卷积核,将一个3D球形相邻区域划分为多个体积单元,并将每个单元与一个可学习的加权矩阵相关联。 一个点的球形卷积核的输出由其相邻点的加权激活值的平均值的非线性激活来确定。在GeoConv[78]中,一个点与其相邻点之间的几何关系是基于六个基显式建模的。沿着基的每个方向的边缘特征由方向相关的可学习矩阵独立加权。然后根据给定点和它的相邻点形成的角度聚集这些方向相关的特征。对于给定点,其在当前图层的特征被定义为给定点的特征与其在前一图层的相邻边特征的总和。PointCNN[79]通过χ-conv转换(通过MLP实现)将输入点转换为可能的规范顺序,然后对转换后的特征应用典型的卷积算子。通过将点特征插值到相邻的离散卷积核权重坐标,Mao等人[80]提出了插值卷积算子InterpConv,以测量输入点云和核权重坐标之间的几何关系。张等人[81]提出了一种RIConv算子来实现旋转不变性,它将low-level旋转不变的几何特征作为输入,然后通过简单的binning方法将卷积转换为一维。A-CNN[82]通过相对于查询点的每个环上的核的大小,然后循环相邻点的阵列来定义环形卷积,并学习局部子集中相邻点之间的关系。

为了降低3D CNN的计算和存储成本,Kumawat等人[83]提出了一种基于3DShort Term Fourier Transform(STFT)的Rectified Local Phase Volume(ReLPV)块来提取3D局部邻域中的相位,这显著减少了参数数量。 在SFCNN[84]中,点云被投影到具有对齐的球面坐标的正二十面体网格上。然后,通过卷积最大池化卷积结构,对球面晶格顶点及其邻域连接的特征进行卷积。SFCNN能够抵抗旋转和扰动。

3.3.3 基于图的方法

基于图的网络将点云中的每个点视为图的顶点,并基于每个点的邻域生成图的有向边。 然后在空间或光谱域中执行特征学习[85]。 典型的基于图形的网络如图5所示。

Deep Learning for 3D Point Clouds: A Survey_第6张图片
图5:基于图形的网络的图示。

空间领域中基于图的方法。 这些方法定义了空间域中的操作(例如卷积和池化)。具体来说,卷积通常通过空间邻域上的MLP来实现,并且通过聚合来自每个点的邻域的信息,采用池来产生新的粗化图。每个顶点的特征通常指定坐标、激光强度或颜色,而每个边的特征通常指定两个连接点之间的几何属性。 作为一项开创性的工作,Simonovsky等人[85]将每个点视为图的一个顶点,并通过一条有向边将每个顶点与所有的邻域连接起来。然后,使用滤波器生成网络(如MLP)提出了Edge Conditioned Convolution(ECC)。 采用最大池化来聚合邻域信息,并基于体素网格实现图形粗化[86]。在DGCNN[87]中,在特征空间中构造一个图,并在网络的每一层之后动态更新。 作为EdgeConv的核心层,MLP被用作每个边缘的特征学习函数,通道对称聚合被应用到与每个点的邻域相关联的边缘特征上。 此外,LDGCNN[88]删除了转换网络,并将DGCNN[87]中不同层的层次特征链接起来,以提高其性能并减小模型尺寸。 此外,LDGCNN[88]删除了转换网络,并将DGCNN[87]中不同层的层次特征链接起来,以提高其性能并减小模型大小。还提出了一种端到端的无监督深度自动编码器网络(即FoldingNet[89]),使用向量化局部协方差矩阵和点坐标的串联作为其输入。 受到Inception[90]和DGCNN[87]的启发,Hassani和Haley[91]提出了一种无监督多任务自动编码器来学习点和形状特征。 编码器是基于多尺度图构造的。 解码器由三个无监督任务构成,包括聚类、自监督分类和重建,这三个任务与多个任务一起训练。 Liu等人[92]提出了一种基于图卷积的Dynamic Points Agglomeration Module(DPAM),将点聚集过程(采样、分组和合并)简化为一个简单的步骤,通过聚集矩阵和点特征矩阵的乘法实现。在PointNet体系结构的基础上,通过堆叠多个DPAM来构建分层学习体系结构。 与PointNet++[54]的层次结构策略相比,DPAM动态地利用点之间的关系,并在语义空间中聚集点。

为了利用局部几何结构,KCNet[93]基于核相关性学习特征。 具体来说,一组表征局部结构几何类型的可学习点被定义为核。 然后,计算核和给定点的邻域之间的亲和度。在G3D [94]中,卷积被定义为邻接矩阵的多项式的变体,池化被定义为拉普拉斯矩阵和顶点矩阵乘以一个粗化矩阵。ClusterNet[95]利用严格的旋转不变量模块,从每个点的k个近邻中提取旋转不变量特征,并基于无监督的聚类分层方法,用Ward-linkage标准构建点云的分层结构[96]。每个子集群中的特征首先通过EdgeConv块学习,然后通过最大池化层聚合。

为了解决当前数据结构化方法(例如FPS和邻近点查询)的耗时问题,Xu等人[97]提出融合基于体积的方法和基于点的方法的优点来提高计算效率。ModelNet分类任务的实验表明,所提出的Grid-GCN网络的计算效率平均比其他模型快5倍。

谱域中基于图的方法。 这些方法将卷积定义为频谱滤波,实现为图上的信号与图的拉普拉斯矩阵的特征向量相乘[98],[99]。

RGCNN [100]通过将每个点与点云中的所有其他点连接来构造一个图,并更新每一层中的图的拉普拉斯矩阵。为了使相邻顶点的特征更加相似,在损失函数中加入了图形信号平滑性先验。为了解决数据的多样化图拓扑结构带来的挑战,AGCN[101]中的SGC-LL层利用一个可学习的距离度量来参数化图上两个顶点之间的相似度。利用高斯核和学习距离对从图中得到的邻接矩阵进行归一化。 HGNN[102]通过在超图上应用谱卷积来构建超边卷积层。

上述方法在完整的图上运行。 为了利用局部结构信息,Wang等人[103]提出了一种端到端谱卷积网络LocalSpecGCN来处理局部图(由k个最近邻构造)。 该方法不需要对图的拉普拉斯矩阵和图的粗化层次结构进行任何离线计算。在PointGCN[104]中,基于点云中的k个最近邻构建图,并使用高斯核对每条边进行加权。卷积滤波器被定义为图谱域中的切比雪夫多项式。全局池化和多分辨率池化用于捕获点云的全局和局部特征。潘等人[105]通过对谱域中的k个最近邻图应用卷积,提出了3DTI-Net。通过学习相对欧几里得距离和方向距离来实现对几何变换的不变性。

3.3.4基于分层数据结构的方法

这些网络是基于不同的层次数据结构(例如八叉树和kd树)构建的。 在这些方法中,点特征是沿着树从叶节点到根节点分层学习的。

雷等人[77]提出了一种使用球形卷积核的八叉树引导的CNN(如第3.3.2节所述)。网络的每一层对应于八叉树的一层,并且在每一层应用球形卷积核。当前层中神经元的值被确定为前一层中所有相关子节点的平均值。与基于八叉树的OctNet[49]不同,Kd-Net[106]是使用在每次迭代中具有不同分裂方向的多个K-d树构建的。根节点的特征(描述整个点云)最终被馈送到全连接层以预测分类分数。请注意,Kd-Net根据节点的分割类型在每一层共享参数。3DContextNet[107]使用一个标准的平衡K-d树来实现特征学习和聚集。在每个级别,点特征首先通过基于局部线索(模拟局部区域中点之间的相互依赖关系)和全局上下文线索(模拟一个位置相对于所有其他位置的关系)的MLP来学习。然后,使用MLP从其子节点计算非叶节点的特征,并通过最大池化聚合。对于分类,重复上述过程,直到获得根节点。

SO-Net网络的层次结构是通过执行点到节点k最近邻搜索来构建的[108]。具体来说,一种改进的置换Self Organizing Map(SOM)被用来模拟点云的空间分布。 通过一系列完全连接的层,从标准化的点到节点坐标中学习各个点特征。 SOM中每个节点的特征是使用通道最大池化从与该节点相关的点特征中提取的。 然后使用类似于PointNet[5]的方法从节点特征中学习最终特征。 与PointNet++[54]相比,SOM的层次结构更高效,并且充分探索了点云的空间分布。

3.3.5其他方法

此外,还提出了许多其他方案。RBFNet[113]通过将稀疏分布的径向基函数(RBF)核的特征与可学习的核位置和大小进行聚合,明确地对点的空间分布进行建模。 3DPointCapsNet [112] 使用逐点 MLP 和卷积层学习点独立特征,并使用多个最大池化层提取全局潜在表示。基于无监督动态路由,学习具有强大代表性的潜在胶囊。 秦等人[116]提出了一种端到端的无监督域适配网络PointDAN,用于三维点云表示。 为了捕捉点云的语义属性,提出了一种自监督方法来重建点云,该点云的各个部分已被随机重新排列[117]。 Li等人[118]提出了一个自动增强框架PointAugment,用于自动优化和增强用于网络训练的点云样本。 具体来说,每个输入样本的形状转换和逐点位移是自动学习的,并且通过交替优化和更新其增强器和分类器的可学习参数来训练网络。受形状上下文[119]的启发,Xie等人[109]提出了一个ShapeContextNet架构,将亲和点选择和紧凑的特征聚合结合到一个使用点积自注意力的软对齐操作中[120]。为了处理3D点云中的噪声和遮挡,Bobkov等人[121]将手工制作的基于点对函数的4D旋转不变描述符输入4D卷积神经网络。 Prokudin等人[122]首先从单位球中随机采样一个均匀分布的基点集,然后将点云编码为到基点集的最小距离。因此,点云被转换成具有相对较小的固定长度的向量。然后可以用现有的机器学习方法处理编码的表示。

RCNet[115]利用标准的RNN和2D CNN来构建用于3D点云处理的置换不变网络。点云首先被分割成平行的光束,并沿着特定的维度排序,然后每个光束被送入一个共享的RNN。学习到的特征被进一步输入到一个高效的2D CNN中,用于分层特征聚合。为了增强其描述能力,RCNet-E提出沿不同划分和排序方向集成多个RCNet。Point2Sequences [114]是另一个基于RNN的模型,它捕捉点云局部区域中不同区域之间的相关性。它将在多个尺度上从局部区域学习的特征视为序列,并将来自所有局部区域的这些序列馈送到基于RNN的编码器-解码器结构中,以聚集局部区域特征。

一些方法也从3D点云和2D图像中学习。在PVNet[110]中,从多视点图像中提取的高层全局特征通过嵌入网络投影到点云的子空间中,并通过软注意掩码与点云特征融合。在PVNet[110]中,从多视图图像中提取的高级全局特征通过嵌入网络投影到点云的子空间中,并通过软注意机制掩码与点云特征融合。最后,对融合特征和多视图特征采用残差连接来进行形状识别。后来,进一步提出 PVRNet [111] 通过关系评分模块来利用 3D 点云与其多个视图之间的关系。基于关系分数,原始二维全局视图特征被增强用于点单视图融合和点多视图融合。

Deep Learning for 3D Point Clouds: A Survey_第7张图片
表 2:ModelNet10/40基准的比较3D形状分类结果。在这里,我们只关注基于点的网络。“#params”代表模型的参数数量,“OA”代表所有测试实例的平均精度,“mAcc”代表表中所有形状类别的平均精度。符号“-”表示结果不可用。

3.4 总结

ModelNet10/40[6]数据集是3D形状分类最常用的数据集。表2显示了不同基于点的网络所取得的结果。可以得出几个观察结果:

  • Pointwise MLP 网络通常用作其他类型网络学习逐点特征的基本构建块。
  • 作为标准的深度学习架构,基于卷积的网络可以在不规则的3D点云上实现卓越的性能。对于不规则数据,应更加注意离散和连续卷积网络。
  • 由于其固有的强大处理不规则数据的能力,基于图的网络近年来越来越受到关注。然而,将谱域中的基于图的网络扩展到各种图结构仍然具有挑战性。

4 3D物体检测和跟踪

在本节中,我们将回顾现有的3D目标检测、3D目标跟踪和3D场景流估计方法。

4.1 3D物体检测

典型的3D目标检测器将场景的点云作为其输入,并在每个检测到的目标周围生成一个定向的3D边界框,如图 6 所示。类似于图像中的对象检测[123],3D对象检测方法可以分为两类:基于区域 proposals的方法和单次方法。图7展示了几种里程碑方法。

Deep Learning for 3D Point Clouds: A Survey_第8张图片
图6、3D 物体检测示意图。(a)和(b)最初分别显示在[124]和[125]中

Deep Learning for 3D Point Clouds: A Survey_第9张图片
图7、最相关的基于深度学习的3D目标检测方法的时序概述

4.1.1 Region Proposal-based Methods

这些方法首先提出几个包含目标的可能区域(也称为proposals),然后提取区域特征来确定每个proposals的类别标签。根据它们的目标proposals生成方法,这些方法可以进一步分为三类:基于多视图、基于分割和基于平截锥体的方法。

基于多视图的方法。这些方法融合来自不同视图地图(例如,LiDAR前视图、鸟瞰视图(BEV)和图像)的proposals特征,以获得3D旋转框,如图8(a)所示。这些方法的计算成本通常很高。

Chen等人[4]从BEV图生成了一组高度精确的3D候选框,并将其投影到多个视图的特征图(例如,LiDAR前视图图像、RGB图像)。然后,他们将这些来自不同视图的区域特征组合起来,以预测定向的3D边界框,如图8(a)所示。尽管这种方法在只有300个proposals的情况下,在0.25的交集(IoU)上实现了99.1%的召回率,但是其速度对于实际应用来说太慢了。随后,从两个方面开发了几种方法来改进多视图3D对象检测方法。

Deep Learning for 3D Point Clouds: A Survey_第10张图片
图 8:三类基于区域proposal的3D目标检测方法的典型网络。从上到下:(a)基于多视图,(b)基于分割和(c)基于截锥体的方法。

首先, 已经提出了几种方法来有效地融合不同模态的信息。为了生成对小物体具有高召回率的3D proposals,Ku等人[126]提出了基于多模态融合的区域proposal网络。他们首先使用裁剪和大小调整操作从BEV和图像视图中提取大小相等的特征,然后使用元素方式均值池化来融合这些特征。Liang等人[127]利用连续卷积来实现不同分辨率的图像和3D激光雷达特征图的有效融合。具体来说,他们为BEV空间中的每个点提取最近的对应图像特征,然后使用双线性插值,通过将图像特征投影到BEV平面来获得密集的BEV特征图。实验结果表明,密集BEV特征图比离散图像特征图和稀疏LiDAR特征图更适合三维目标检测。梁等人[128]提出了一种用于端到端训练的多任务多传感器3D对象检测网络。具体而言,利用多个任务(例如,2D物体检测、地面估计和深度完成)来帮助网络学习更好的特征表示。进一步利用所学习的跨模态表示来产生高度精确的对象目标结果。实验结果表明,该方法在2D、3D和BEV检测任务上实现了显著的改进,并且在TOR4D基准测试上优于之前的最新方法[129],[130]。

其次, 研究了不同的方法来提取输入数据的鲁棒表示。Lu等人[39]通过引入Spatial Channel Attention(SCA)模块探索了多尺度上下文信息,该模块捕获场景的全局和多尺度上下文,并突出有用的特征。他们还提出了一个Extension Spatial Unsample (ESU)模块,通过组合多尺度低级特征来获得具有丰富空间信息的高级特征,从而生成可靠的3D目标proposals.虽然可以实现更好的检测性能,但是上述多视图方法需要很长的运行时间,因为它们为每个proposal执行特征池化。随后,Zeng等人[131]使用pre-RoI池化卷积来提高[4]的效率。具体来说,他们将大部分卷积运算移到了RoI池化模块的前面。具体来说,他们将大部分卷积运算移到了RoI池化模块的前面。因此,对所有目标proposals执行一次RoI卷积。实验结果表明,该方法的运行速度为11.1fps,是MV3D的5倍[4]。

基于分割的方法。 这些方法首先利用现有的语义分割技术去除大部分背景点,然后在前景点上生成大量高质量的proposals以节省计算,如图8(b)所示。与多视图方法[4]、[126]、[131]相比,这些方法实现了更高的目标召回率,并且更适合于具有高度遮挡和聚集目标的复杂场景。

Yang等人[132]使用2D分割网络来预测前景像素,并将其投影到点云中,以消除大多数背景点。然后,他们根据预测的前景点生成proposals,并设计了一个名为PointsIoU的新标准,以减少proposals的冗余和模糊性。继[132]之后,史等人[133]提出了PointRCNN框架。具体来说,他们直接分割3D点云以获得前景点,然后融合语义特征和局部空间特征以产生高质量的3D框。继[133]的Region Proposal Network(RPN)阶段之后,Jesus等人[134]提出了一项开创性的工作,即利用图形卷积网络(GCN)进行3D目标检测。具体来说,引入了两个模块来使用图形卷积优化目标proposals。第一模块R-GCN利用包含在proposal中的所有点来实现per-proposal的特征聚集。第二个模块C-GCN融合来自所有proposals的性能信息,通过利用上下文回归精确的目标框。Sourabh等人[135]将点云投影到基于图像的分割网络的输出中,并将语义预测分数附加到这些点上。将绘制出的点输入到现有的检测器[133]、[136]、[137]中,以实现显著的性能改进。Yang等人[138]将每个点与一个球形的锚框联系起来。然后,使用每个点的语义得分删除多余的锚框。因此,与之前的方法[132],[133]相比,这种方法以更低的计算成本实现了更高的召回率。 此外,提出了一个PointsPool层来学习proposals中内部点的紧凑特征,并引入了一个并行IoU分支来提高定位精度和检测性能。

基于截锥的方法。 这些方法首先利用现有的2D目标检测器来生成目标的2D候选区域,然后为每个2D候选区域提取3D截锥体proposal,如图8(c)所示。尽管这些方法可以有效地提出3D目标的可能位置,但是逐步流水线使得它们的性能受到2D图像检测器的制约。

F-PointNets[139]是这个方向的一个开创性工作。它为每个2D区域生成一个平截锥建议,并应用PointNet[5](或PointNet++ [54])来学习每个3D平截锥的点云特征,用于模型3D框估计。在后续工作中,Zhao等人[140]提出了一个点传感模型来预测一组缩放因子,这些因子进一步用于自适应地突出有用特征并减少无信息特征。他们还将PointSIFT[141]模块集成到网络中,以捕捉点云的方向信息,这对于形状缩放具有很强的鲁棒性。与F-PointNets [139]相比,这种方法在室内和室外数据集[14]、[25]上都取得了显著的改善。

Deep Learning for 3D Point Clouds: A Survey_第11张图片
表 3:KITTI测试3D检测基准上的比较3D目标检测结果。汽车的3D边界框IoU阈值为0.7,行人和骑自行车的人为0.5。模态是激光雷达(L)和图像(I)。 “E”、“M”和“H”分别代表简单、中等和困难的目标类别。为简单起见,我们省略了值后的“%”。符号“-”表示结果不可用。

Xu等人[142]利用2D图像区域及其对应的平截锥体点精确回归3D框。为了融合点云的图像特征和全局特征,他们提出了一个全局融合网络来直接回归框角位置。 他们还提出了一个密集的融合网络,用于预测每个角的逐点偏移。Shin等人[143]首先从2D图像中估计物体的2D边界框和3D姿态,然后提取多个几何可行的候选物体。这些3D候选目标被输入到框回归网络中,以预测精确的3D目标框。Wang等人[144]沿每个区域的截锥轴生成了一系列截锥,并应用PointNet [5]提取每个截锥的特征。对frustum-level特征进行改造,生成二维特征图,然后将其送入全卷积网络中进行三维框估计。该方法在基于2D图像的方法中实现了最先进的性能,并在KITTI官方排行榜上排名第一。 Johannes等人[145]首先在BEV图上获得初步检测结果,然后根据BEV预测提取小的点子集(也称为切片)。应用局部细化网络来学习切片的局部特征,以预测高度精确的3D边缘框。其他方法。受轴对齐IoU在图像目标检测中的成功启发,周等人[146]将两个3D旋转边界框的IoU集成到几个最先进的检测器中[133]、[137]、[158],以实现一致的性能提升。Chen等人[147]提出了一种两阶段网络架构,使用点云和体素表示。首先,对点云进行体素化,并将其送入3D主干网络,以产生初始检测结果。其次,进一步利用初始预测的内点特征进行框优化。尽管这种设计在概念上很简单,但它在保持16.7fps的速度的同时实现了与[133]相当的性能。石等人[148]提出PointVoxel-RCNN(PV-RCNN)以利用3D卷积网络和基于PointNet的集合抽象来学习点云特征。具体来说,首先对输入点云进行体素化,然后将其输入3D稀疏卷积网络以生成高质量的proposals。然后,通过体素集抽象模块将所学习的体素特征编码到一小组关键点中。此外,他们还提出了一个关键点到网格ROI抽象模块,以捕获丰富的上下文信息来进行框优化。实验结果表明,该方法明显优于以往的方法,在KITTI 3D检测基准的Car类上排名第一。

受基于Hough投票的2D目标检测器的启发,Qi等人[124]提出VoteNet直接从点云中为目标的虚拟中心点投票,并通过聚合投票特征生成一组高质量的3D目标提议。VoteNet明显优于仅使用几何信息的先前方法,并在两个大型室内基准测试(即ScanNet[11]和SUN RGB-D[25])上实现了最先进的性能。然而,对于部分遮挡的物体,虚拟中心点的预测是不稳定的。然而,对于部分遮挡的物体,虚拟中心点的预测是不稳定的。此外,冯等人[149]添加了方向向量的辅助分支,以提高虚拟中心点和3D候选框的预测精度。此外,还构建了proposals之间的3D目标-目标关系图,以强调用于准确目标检测的有用特征。Qi等人[150]通过将2D目标检测线索(例如,几何和语义/纹理线索)融合到3D投票pipeline中,提出了ImVoteNet检测器。Shi等人[151]受3D目标的地面真值框提供目标内部部分的精确位置这一观察结果的启发,提出了Part- A 2 A^2 A2网络,该网络由部分感知阶段和部分聚合阶段组成。部分感知阶段应用具有稀疏卷积和稀疏反卷积的UNet-like[165]网络来学习用于预测和粗略生成目标内部分位置的逐点特征。

4.1.2 Single Shot Methods

这些方法使用单阶段网络直接预测类别概率并回归目标的3D边界框。他们不需要区域proposal生成和后处理。结果,它们可以高速运行。根据输入数据的类型,single shot方法可以分为三类:基于BEV的方法、基于离散化的方法和基于点的方法。

基于BEV的方法。 这些方法主要以BEV表示作为输入。杨等人[129]用等间距的单元对场景的点云进行离散化,并以类似的方式对反射率进行编码,从而得到规则的表示。然后应用Fully Convolution Network(FCN)来估计目标的位置和航向角。该方法在以28.6 fps运行时优于大多数single shot方法(包括VeloFCN[154]、3D-FCN[155]和Vote3Deep[156])。后来,杨等人[152]利用高清(HD)地图提供的几何和语义先验信息来提高[129]的鲁棒性和检测性能。具体来说,他们从HD地图中获得地面点的坐标,然后使用相对于地面的距离进行BEV表示,以弥补道路坡度造成的平移差异。 他们将二进制道路掩码与沿通道维度的BEV表示相连接,以关注移动物体。由于高清地图并非随处可得,他们还提出了一个在线地图预测模块,从单个LiDAR点云中估计地图先验。这种地图感知方法在TOR4D[129]、[130]和KITTI[14]数据集上明显优于其baseline。然而,它对不同密度点云的泛化性能较差。为了解决这个问题,Beltrán等人[153]提出了一个归一化地图,以考虑不同激光雷达传感器之间的差异。标准化地图是一个与BEV地图具有相同分辨率的2D网格,它对每个单元格中包含的最大点数进行编码。 结果表明,这种归一化地图显著提高了基于BEV的检测器的泛化能力。

基于离散化的方法。 这些方法将点云转换为规则的离散表示,然后应用CNN来目标的类别和3D框。李等人[154]提出的第一种方法是使用FCN进行三维目标检测。他们将点云转换成2D点地图,并使用2D FCN来预测目标的边界框和置信度。后来,他们[155]将点云离散化为具有长度、宽度、高度和通道维度的4D张量,并将基于2D·FCN的检测技术扩展到3D范围,用于3D目标检测。与[154]相比,基于3D FCN的方法[155]获得了超过20%的精度增益,但是由于3D卷积和数据的稀疏性,不可避免地消耗了更多的计算资源。为了解决体素的稀疏性问题,Engelcke等人[156]利用以特征为中心的投票方案为每个非空体素生成一组投票,并通过累积投票获得卷积结果。它的计算复杂度与被占用的体素数量成正比。李等人[157]通过堆叠多个稀疏的3D CNNs构建了一个3D主干网络。该方法通过充分利用体素的稀疏性来节省内存和加速计算。这个3D主干网络提取丰富的3D特征用于目标检测,而不引入沉重的计算负担。周等人[136]提出了基于体素的端到端可训练框架VoxelNet。他们将点云分割成等距的体素,并将每个体素内的特征编码成4D张量。然后连接区域proposal网络以产生检测结果。虽然它的性能很强,但由于体素和3D卷积的稀疏性,该方法非常慢。后来严等[158]利用稀疏卷积网络[166]提高了[136]的推理效率。他们还提出了正弦误差角度损失来解决0和 π \pi π方向之间的歧义。Sindagi等人[159]通过在早期融合图像和点云特征,扩展了VoxelNet。具体来说,他们将[136]生成的非空体素投影到图像中,并使用预训练的网络来提取每个投影体素的图像特征。这些图像特征然后与体素特征连接以产生精确的3D框。与[136]、[158]相比,该方法可以有效地利用多模态信息来减少误报和漏报。 Lang等人[137]提出了一种名为PointPillars的3D目标检测。 这种方法利用PointNet[5]来学习以垂直列(Pillars)组织的点云的特征,并将学习到的特征编码为pesudo图像。然后应用2D目标检测流水线来预测3D边界框。在平均精度(AP)方面,PointPillars优于大多数融合方法(包括MV3D [4]、RoarNet [143]和VOD [126])。此外,PointPillars可以在3D和BEV KITTI[14]基准上以62 fps的速度运行,这使得它非常适合实际应用。受观察到的点云的部分空间信息在现有单次检测器的逐步缩小的特征图中不可避免地丢失的启发,何等人[160]提出了一种SA-SSD检测器,以利用细粒度的结构信息来提高定位精度。具体来说,他们首先将点云转换为张量,并将其输入主干网络,以提取多级特征。此外,一个具有点层次监督的辅助网络被用来指导特征学习点云的结构。实验结果表明,SA-SSD在KITTI BEV检测基准的汽车类上排名第一。

基于点的方法。 这些方法直接将原始点云作为它们的输入。3DSSD[161]是这个方向的一个创举。它为Distance-FPS(D-FPS)和Feature-FPS(F-FPS)引入了融合采样策略,以消除耗时的特征传播(FP)层和[133]中的细化模块。然后,候选Candidate Generation(CG)层用于充分利用代表点,这些代表点被进一步输入到具有3D中心标签的无锚回归头中,以预测3D目标框。实验结果表明,3DSSD优于two-stage基于点的方法 PointRCNN[133],同时保持25fps的速度。

其他方法。 Meyer等人[162]提出了一种称为LaserNet的高效3D目标检测器。该方法预测每个点的边界框的概率分布,然后结合这些每个点的分布以生成最终的3D目标框。此外,将点云的Range View(RV)表示用作输入,并提出了一种快速均值偏移算法来减少逐点预测产生的噪声。LaserNet在0到50米范围内实现了最先进的性能,其运行时间明显低于现有方法。Meyer等人[163]然后扩展LaserNet[162]以利用RGB图像提供的密集纹理(例如,50到70米)。具体来说,他们通过将3D点云投影到2D图像上,将LiDAR点与图像像素相关联,并利用这种关联将RGB信息融合到3D点中。他们还将3D语义分割视为学习更好表示的辅助任务。该方法在保持 LaserNet 高效率的同时,在大范围(例如50到70米)目标检测和语义分割方面都取得了显着的改进。灵感来自于这样的观察:一个单独的物体部分上的点可以提供关于物体的位置和方向的丰富信息。Chen等人[164]提出了一个新颖的Hotspot表示法和第一个基于hotspot的无锚框检测器。具体来说,原始点云首先被体素化,然后输入到骨干网络中以生成3D特征图。这些特征图用于对hotspots进行分类并同时预测3D边界框。请注意,热点分配在主干网络的最后一个卷积层。实验结果表明,该方法的性能相当,对稀疏点云具有较强的鲁棒性。 Shi等人[125]提出了一种图形神经网络点GNN,用于从激光雷达点云中检测3D目标。他们首先将输入点云编码为具有固定半径的近邻图,然后将该图输入点GNN以预测目标的类别和方框。

4.2 三维目标跟踪

给定目标在第一帧中的位置,目标跟踪的任务是估计其在后续帧中的状态[167],[168]。 由于三维目标跟踪可以利用点云中丰富的几何信息,因此有望克服基于图像的跟踪所面临的一些缺点,包括遮挡、光照和尺度变化。

受Siamese网络[169]在基于图像的目标跟踪方面的成功启发,Giancola等人[170]提出了一种具有形状完成正则化的3D Siamese网络。具体来说,他们首先使用卡尔曼滤波器生成候选者,并使用形状正则化将模型和候选者编码为一个紧凑的表示。余弦相似性然后被用于在下一帧中搜索被跟踪对象的位置。这种方法可以用作目标跟踪的替代方法,并且明显优于大多数2D目标跟踪方法,包括  STAPLE  C A [ 171 ] \text { STAPLE }_{\mathrm{CA}}[171]  STAPLE CA[171]和SiamFC [169]。为了有效地搜索目标,Zarzar等人[172]利用2DSiamese网络在BEV表示上生成大量粗略的候选对象。然后,他们利用3DSiamese网络中的余弦相似性对候选目标进行细化。 在精确度(即18%)和成功率(即12%)方面,该方法明显优于[170]。 Simon等人[173]提出了一种用于语义点云的3D目标检测和跟踪架构。他们首先通过融合二维视觉语义信息生成体素化语义点云,然后利用时间信息提高多目标跟踪的准确性和鲁棒性。 此外,他们还引入了一个强大而简化的评估指标(即Scale-Rotation-Translation score(SRFs))来加速训练和推理。Complexer YOLO实现了有希望的跟踪性能,并且仍然可以实时运行。此外,Qi等人[174]提出了Point-to-Box(P2B)网络。他们将模板和搜索区域送入骨干网以获得其种子。搜索区域种子用特定目标特征扩充,然后通过Hough投票回归潜在目标中心。实验结果表明,当运行速度为40 fps时,P2B的性能比[170]提高了10%以上。

4.3 3D场景流估计

给出两组点云 X \mathcal{X} X Y \mathcal{Y} Y。三维场景流 D = { d i } N D=\left\{d_{i}\right\}^{N} D={di}N描述了 X \mathcal{X} X中每个点 x i x_{i} xi Y \mathcal{Y} Y中相应位置 x i ′ x_{i}^{\prime} xi的移动,这样 x i ′ = x i + d i x_{i}^{\prime}=x_{i}+d_{i} xi=xi+di。图9显示了两个KITTI点云之间的3D场景流。 与2D视觉中的光流估计类似,有几种方法已经开始从一系列点云中学习有用的信息(例如3D场景流、空间临时信息)。

Liu等人[175]提出FlowNet3D可以直接从一对连续的点云中学习场景流。 FlowNet3D通过流嵌入层学习point-level特征和运动特征。 然而,FlowNet3D有两个问题。 首先,一些预测的运动向量在方向上与地面实况有很大差异。第二,FlowNet很难应用于非静态场景,特别是对于那些以可变形目标为主的场景。为了解决这个问题,Wang等人[176]引入了余弦距离损失,以最小化预测和地面真相之间的角度。此外,他们还提出了一个点到面的距离损失,以提高刚性和动态场景的精度。实验结果表明,这两个损失项将FlowNet3D的精度从57.85%提高到63.43%,并加快和稳定了训练过程。Gu等人[177]提出了一个层次化的Permutohedral Lattice FlowNet(HPLVlowNet)来直接估计来自大规模点云的场景流。提出了几个双边卷积层来恢复原始点云的结构信息,同时降低计算成本。为了有效地处理序列点云,Fan和Yang[178]提出了PointRNN、PointGRU和PointLSTM网络以及一个序列到序列的模型来跟踪移动的点。PointRNN、PointGRU和PointLSTM能够捕捉空间临时信息并对动态点云进行建模。同样,Liu等人[179]提出了MeteorNet来直接从动态点云中学习表示。这种方法学习从时空邻近点聚集信息。进一步引入直接分组和链式流分组来确定临时邻域。然而,上述方法的性能受到数据集规模的限制。Mittal等人[180]提出了两个自监督损失,以在大型无标签数据集上训练他们的网络。他们的主要思想是,一个健壮的场景流估计方法应该在向前和向后预测中都有效。由于场景流解释的不可用性,预测转换点的最近邻被认为是pesudo地面真值。 然而,真正的地面真值可能与最近的点并不相同。为了避免这个问题,他们计算了反向的场景流,并提出了循环一致性损失来将点转换到原始位置。 实验结果表明,这种自监督方法优于基于监督学习的方法。

Deep Learning for 3D Point Clouds: A Survey_第12张图片
表4:在KITTI test BEV检测基准上的比较3D目标检测结果。3D边界框IoU阈值对于汽车是0.7,对于行人和骑自行车的人是0.5。模态是激光雷达(L)和图像(I)。“e”、“M”和“H”分别代表简单、中等和困难类别的物体。为了简单起见,我们省略了值后面的“%”。符号“-”表示结果不可用。

Deep Learning for 3D Point Clouds: A Survey_第13张图片
图9:两个KITTI点云之间的3D场景流,最初在[175]中显示。点云 X \mathcal{X} X Y \mathcal{Y} Y X \mathcal{X} X的平移点云分别以红色、绿色和蓝色高亮显示

4.4 总结

KITTI[14]基准测试是自动驾驶领域最具影响力的数据集之一,在学术界和工业界都得到了广泛应用。表3和表4显示了不同检测器在KITTI test 3D基准测试中获得的结果。可以得出以下结论:

  • 在这两类方法中,基于区域proposal的方法是最常被研究的方法,并且在KITTI test 3D和BEV基准测试中远远优于single shot法。
  • 现有的3D物体检测器有两个限制。首先,现有方法的远程探测能力相对较差。第二,如何充分利用图像中的纹理信息仍然是一个悬而未决的问题。
  • 多任务学习是三维目标检测的未来发展方向。例如,MMF [128]学习跨模态表示,以通过合并多个任务来实现最先进的检测性能。
  • 三维物体跟踪和场景流量估计是新兴的研究课题,自2019年以来逐渐受到越来越多的关注。

5 三维点云分割

三维点云的分割需要了解全局的几何结构和每个点的细微细节。根据分割粒度,三维点云分割方法可分为三类:语义分割(场景级)、实例分割(目标级)和部分分割(部分级)。

5.1 3D语义分割

给定一个点云,语义分割的目标是根据点的语义将其分成几个子集。与三维形状分类的分类法(第3节)类似,有四种语义分割的范式:基于投影、基于离散、基于点和混合方法。

基于投影和离散化的方法的第一步都是将点云转换成中间规则表示,例如多视图[181]、[182]、球形[183]、[184]、[185]、体积[166]、[186]、[187]、立体点阵[188]、[189]和混合表示[190]、[191],如图11所示。然后将中间分割结果投影回原始点云。相比之下,基于点的方法直接作用于不规则的点云。图10示出了几种代表性的方法。

Deep Learning for 3D Point Clouds: A Survey_第14张图片
图10:最相关的基于深度学习的3D语义分割方法的时序概述。

Deep Learning for 3D Point Clouds: A Survey_第15张图片
图11、中间表示的图示。 (a) 和 (b) 最初分别显示在 [182] 和 [183]​​ 中

5.1.1 基于预测的方法

这些方法通常将3D点云投影到2D图像中,包括多视图和球形图像。

多视图表示法。 Lawin等人[181]首先将三维点云从多个虚拟摄像机视图投射到二维平面上。然后,使用多流FCN来预测合成图像上的像素分数。每个点的最终语义标签是通过融合不同视图上的重投影分数获得的。同样,Boulch等人[182]首先使用多个相机位置生成了点云的几个RGB和深度快照。然后,他们使用二维分割网络对这些快照进行了像素化的标注。使用残差校正[192]进一步融合从RGB和深度图像中预测出的分数。基于点云是从局部欧几里得表面采样的假设,Tatarchenko等人[193]介绍了用于密集点云分割的切线卷积。然后直接对表面几何图形进行切线卷积操作。这种方法显示出很好的可扩展性,能够处理具有数百万个点的大规模点云。总的来说,多视图分割方法的性能对视角选择和遮挡很敏感。此外,这些方法没有充分地利用潜在的几何和结构信息,因为投影步骤不可避免地会引入信息损失。

球形表示法。 为了实现三维点云的快速准确分割,Wu等人[183]提出了一个基于SqueezeNet[194]和Conditional Random Field(CRF)的端到端网络。为了进一步提高分割精度,引入了SqueezeSegV2[184],通过利用一个无监督的范围适应pipeline来解决范围转移问题。Milioto等人[185]提出RangeNet++用于LiDAR点云的实时语义分割。二维范围图像的语义标签首先被转移到三维点云中,一个高效的基于GPU的KNN后处理步骤被进一步用来缓解离散误差和推理输出模糊的问题。与单视图投影相比,球面投影保留了更多的信息,适合于LiDAR点云的标注。然而,这种中间表示法不可避免地带来一些问题,如离散误差和遮挡。

5.1.2 基于离散化的方法

这些方法通常将点云转换成密集/稀疏的离散表示,例如体积和稀疏的立体网格。

密集离散化表示。 早期的方法通常将点云体素化为密集的网格,然后利用标准的3D卷积。Huang等人[195]首先将点云划分为一组占位体素,然后将这些中间数据输入全3D CNN进行体素分割。最后,一个体素内的所有点被赋予与该体素相同的语义标签。该方法的性能受到体素粒度和点云划分引起的边界伪影的严重限制。此外,Tchapmi等人[196]提出了SEGCloud来实现细粒度和全局一致的语义分割。该方法引入了确定性三线性插值,以将3D-FCNN [197]生成的粗略体素预测映射回点云,然后使用全连接CRF (FCCRF)来加强这些推断的点标签的空间一致性。Meng等人[186]介绍了一种基于内核的插值变分自动编码器架构,用于对每个体素内的局部几何结构进行编码。代替二进制占用表示,RBF用于每个体素,以获得连续表示,并捕获每个体素中的点分布。 VAE进一步用于将每个体素内的点分布映射到紧凑的潜在空间。然后,使用对称群和等价CNN实现鲁棒特征学习。

由于3D CNN良好的可扩展性,基于体积的网络可以在不同空间大小的点云上自由训练和测试。在Fully-Convolutional Point Network(FCPN)[187]中,首先从点云中分层抽象出不同层次的几何关系,然后使用三维卷积和加权平均池化来提取特征并纳入大范围依赖关系。这种方法可以处理大规模的点云,在推理过程中具有良好的可扩展性。Dai等人[198]提出了ScanComplete,以实现三维扫描完成和每体素语义标签。这种方法利用了完全卷积神经网络的可扩展性,在训练和测试期间可以适应不同的输入数据大小。采用从粗到精的策略来分层提高预测结果的分辨率。

总体而言,体积表示自然保留了3D点云的邻域结构。其常规数据格式还允许直接应用标准3D卷积。这些因素导致该领域的性能稳步提升。 然而,体素化方法本身就引入了离散化的假象和信息损失。通常情况下,高分辨率会导致高内存和计算成本,而低分辨率会带来细节损失。在实践中,选择一个合适的网格分辨率是不难的。

稀疏离散化表示。 体积表示自然是稀疏的,因为非零值的数量只占一小部分。因此,在空间稀疏的数据上应用密集卷积神经网络是低效的。为此,Graham等人[166]提出了基于索引结构的子域稀疏卷积网络。这种方法通过限制卷积的输出只与被占用的体素有关,大大减少了内存和计算成本。同时,其稀疏卷积也可以控制提取特征的稀疏度。这种子域稀疏卷积适用于高效处理高维和空间稀疏数据。此外,Choy等人[199]提出了一个名为MinkowskiNet的4D时空卷积神经网络用于3D视频感知。提出了一种广义的稀疏卷积,以有效处理高维数据。一个三边静止的条件随机场被进一步应用来强制执行一致性。另一方面,Su等人[188]提出了基于Bilateral Convolution Layers(SPLATNet)(BCLs)的Sparse Lattice Networks(SPLATNet)(SPLATNet)。该方法首先将原始点云插值到一个自同构的稀疏网格中,然后应用BCL对稀疏网格中被占据的部分进行卷积。然后将过滤后的输出插值回原始点云。此外,该方法允许灵活地联合处理多视图图像和点云。此外,Rosu等人[189]提出LatticeNet来实现大规模点云的有效处理。还引入了称为DeformsSlice的数据相关插值模块,以将点阵特征反向投影到点云。

5.1.3 混合方法

为了进一步利用所有可用的信息,已经提出了几种方法来从3D扫描中学习多模态特征。Dai和niener[190]提出了一种联合3D-多视图网络,用于组合RGB特征和几何特征。一个三维CNN流和几个二维流被用来提取特征,并提出了一个可区分的反投影层来共同融合所学的二维嵌入和三维几何特征。此外,Chiang等人[200]提出了一个统一的基于点的框架,以从点云中学习2D纹理外观、3D结构和全局上下文特征。该方法直接应用基于点的网络从稀疏采样的点集中提取局部几何特征和全局上下文,无需任何体素化。Jaritz等人[191]提出了Multi-view PointNet(MVPNet)来聚合2D多视图图像的外观特征和规范点云空间中的空间几何特征。

5.1.4 基于点的方法

基于点的网络直接作用于不规则的点云。然而,点云是无序和非结构化的,这使得直接应用标准的CNN是不可行的。为此,开创性的工作PointNet[5]被提出,使用共享MLP学习每点特征,使用对称池化函数学习全局特征。在PointNet的基础上,最近提出了一系列基于点的网络。总的来说,这些方法可以大致分为点式MLP方法、点卷积方法、基于RNN的方法和基于图的方法。

逐点MLP方法。 由于其高效性,这些方法通常使用共享MLP作为其网络的基本单元。然而,通过共享MLP提取的点状特征不能捕捉点云中的局部几何形状和点之间的相互作用[5]。为了为每个点捕获更广泛的上下文并学习更丰富的局部结构,已经引入了几个专用网络,包括基于相邻特征池、基于注意力的聚合和局部-全局特征连接的方法。

Deep Learning for 3D Point Clouds: A Survey_第16张图片
图 12:基于点的方法的说明。 (a)-(d) 最初分别显示在 [54]、[201]、[202]、[203] 中

相邻特征池:为了捕获局部几何图案,这些方法通过聚合来自局部相邻点的信息来学习每个点的特征。特别是,PointNet++ [54] 对点进行分层分组,并从较大的局部区域逐步学习,如图 12(a) 所示。提出了多尺度分组和多分辨率分组的方法,以克服点云的不均匀性和密度变化带来的问题。 后来,Jiang等人[141]提出了一个PointSIFT模块来实现方向编码和尺度感知。该模块通过三级有序卷积对来自八个空间方向的信息进行堆叠和编码。多尺度特征被连接以实现对不同尺度的适应性。与PointNet++中使用的分组技术(即球状查询)不同,Engelmann等人[204]利用K-means聚类和KNN分别定义世界空间和特征空间中的两个邻域。基于来自同一类别的点在特征空间中更接近的假设,引入了成对距离损失和中心点损失来进一步规范特征学习。为了模拟不同点之间的相互作用,Zhao等人[57]提出了PointWeb,通过密集地构建一个局部完全链接的网络来探索局部区域内所有对点之间的关系。提出了一个Adaptive Feature Adjustment(AFA)模块来实现信息互换和特征细化。这种聚合操作有助于网络学习辨别性的特征表示。Zhang等人[205]基于同心球壳的统计数据提出了一种称为Shellconv的排列不变卷积。该方法首先查询一组多尺度同心球,然后在不同的外壳内使用最大池化操作来汇总统计信息,使用 MLP和1D卷积获得最终的卷积输出。胡等人[206]提出了一种高效且轻量级的网络,称为RandLA-Net,用于大规模点云分割。这个网络利用随机点取样,在内存和计算方面取得了显著的高效率。进一步提出了一个局部特征聚合模块来捕捉和保留几何特征。

基于注意力的聚合。为了进一步提高分割的准确性,在点云分割中引入了一个注意力机制[120]。Yang等人[56]提出了一种分组混洗注意力机制来模拟点之间的关系,并提出了一种排列不变、任务不可知且可微分的Gumbel子集采样(GSS)来取代广泛使用的FPS方法。该模块对异常值不太敏感,并且可以选择点的代表性子集。为了更好地捕捉点云的空间分布,Chen等人[207]提出了Local Spatial Aware(LSA)层,以根据点云的空间布局和局部结构来学习空间感知权重。与CRF类似,Zhao等人[208]提出了一个基于注意力的Attention-based Score Refinement(ASR)模块,用于对网络产生的分割结果进行后处理。通过将相邻点的分数与学习到的注意力权重相结合来改进初始分割结果。该模块可以很容易地集成到现有的深度网络中,以提高分段性能。

局部-全局连接:赵等人[112]提出了一种置换不变 P S 2 − N e t \mathrm{PS}^{2}-\mathrm{Net} PS2Net,以结合点云的局部结构和全局上下文。Edgeconv [87]和NetVLAD [209]反复叠加,捕捉局部信息和场景级全局特征。

点卷积方法。 这些方法倾向于为点云提出有效的卷积算子。Hua等人[76]提出了一种逐点卷积算子,其中相邻点被装入核单元,然后与核权重进行卷积。如图12(b)所示,Wang等人[201]提出了一个基于参数化连续卷积层的网络,称为PCCN。该层的核函数由MLPs参数化,并跨越了连续向量空间。Thomas等人[65]提出了一种基于Kernel Point Convolution(KPConv)的Kernel Point Fully Convolutional Network(KP-FCNN)。具体地,KPConv的卷积权重由到核点的欧几里德距离确定,并且核点的数量不是固定的。核点的位置被公式化为球空间中最佳覆盖的优化问题。请注意,半径邻域用于保持一致的感受野,而在每一层中使用网格二次采样以在不同密度的点云下实现高鲁棒性。在 [211] 中,Engelmann等人提供了丰富的消融实验和可视化结果,以展示感受野对基于聚合的方法性能的影响。他们还提出了一种Dilated Point Convolution (DPC)操作来聚合扩张的相邻特征,而不是K个最近邻。这种操作被证明在增加感受野方面非常有效,并且可以容易地整合到现有的基于聚集的网络中。

基于RNN的方法。 为了从点云中捕获固有的上下文特征,Recurrent Neural Networks(RNN)也被用于点云的语义分割。Engelmann等人[213]在PointNet[5]的基础上,首先将一个由点组成的块转化为多尺度块和网格块,以获得输入级上下文。然后,由PointNet提取的块状特征被依次送入Consolidation Units(CU)或Recurrent Consolidation Units(RCU),以获得输出级上下文。实验结果表明,结合空间上下文对提高分割性能具有重要意义。Huang等人[212]提出了一种轻量级局部依赖建模模块,并利用切片池层将无序的点特征集转换为有序的特征向量序列。如图12(c )所示,Ye等人[202]首先提出了逐点Pointwise Pyramid Pooling(3P)模块来捕获由粗到细的局部结构,然后利用双向分层RNN来进一步获得大范围空间相关性。然后应用RNN实现端到端学习。然而,当用全局结构特征聚集局部邻域特征时,这些方法从点云中丢失了丰富的几何特征和密度分布[220]。为了缓解刚性和静态池化操作带来的问题,Zhao等人[220]提出了一个动态聚合网络(DARNet),以考虑全局场景的复杂性和局部几何特征。使用自适应的感受野和节点权重,动态地汇总介质间的特征。Liu等人[221]提出了3DCNN-DQN-RNN用于大规模点云的高效语义解析。这个网络首先使用三维CNN网络学习空间分布和颜色特征,DQN进一步被用来定位属于特定类别的物体。最终连接的特征向量被馈入残差RNN以获得最终的分割结果。

基于图的方法。 为了捕捉3D点云的基本形状和几何结构,有几种方法解决图形网络。如图12(D)所示,Landrieu等人[203]将点云表示为一组相互关联的简单形状和超点,并使用属性有向图(即超点图)来捕捉结构和上下文信息。然后,将大规模点云分割问题分解为三个子问题,即几何齐次分割、超点嵌入和上下文分割。为了进一步改善分割步骤,Landrieu和Boussaha[214]提出了一个有监督的框架,将点云重叠成纯超点。该问题被描述为一个由邻接图构成的深度度量学习问题。此外,本文还提出了一种图形结构的对比损失方法来帮助识别物体之间的边界。

为了更好地捕捉高维空间中的局部几何关系,Kang等人[222]提出了一种基于Graph Embedding Module(GEM)和Pyramid Attention Network(PAN)的PyramNet。GEM模块将点云表示为有向无环图,并使用协方差矩阵代替欧氏距离来构造相邻的相似矩阵。 PAN模块使用四种不同大小的卷积核来提取不同语义强度的特征。 在[215]中,Graph Attention Convolution(GAC)被提出用于从局部邻域集中选择性地学习相关特征。该操作是通过基于不同相邻点和特征通道的空间位置和特征差异,动态地将注意力权重分配给它们来实现的。GAC可以学习捕捉用于分割的鉴别性特征,并具有与常用的CRF模型类似的特征。Ma等人[223]提出了一个点Global Context Reasoning(PointGCR)模块,使用无向图表示沿通道维度捕获全局上下文信息。PointGCR是一个即插即用和端到端的可训练模块。它可以很容易地被集成到现有的分割网络中,以实现性能的提高。

此外,最近的一些工作试图在弱监督下实现点云的语义分割。Wei等人[224]提出了一个two-stage的方法来训练一个具有子云级标签的分割网络。Xu等人[225]研究了几种用于点云的语义分割的非精确监督方案。他们还提出了一个网络,能够在只有部分标签的情况下进行训练(例如10%)。

5.2 实例分割

与语义分割相比,实例分割更具挑战性,因为它需要更精确和更细粒度的点推理。特别是,它不仅需要区分语义不同的点,还需要分离语义相同的实例。总的来说,现有的方法可以分为两组:基于proposal的方法和proposal-free的方法。几个里程碑方法如图13所示。

Deep Learning for 3D Point Clouds: A Survey_第17张图片
图13:最相关的基于深度学习的3D实例分割方法的时序概述。

5.2.1 基于Proposal的方法

这些方法将实例分割问题转化为两个子任务:3D目标检测和实例掩码预测。Hou等人[226]提出了一个Semantic Instance Segmentation(3D-SIS)网络来实现RGB-D扫描的语义实例分割。该网络从颜色和几何特征中学习。 类似于3D目标检测,3D Region Proposal Network(3DRPN)和3D Region of Interesting(3D-RoI)层用于预测边界框位置、目标类别标签和实例掩码。按照通过合成分析的策略,Yi等人[227]提出了一个Generative Shape Proposal Network(GSPN)来生成高objectness的三维proposal。基于proposals的PointNet(R-PointNet)进一步完善了这些proposals。 最终的标签是通过预测每个类标签的每点二进制掩码来获得的。与从点云直接回归三维边界框不同,该方法通过加强几何理解去除了大量无意义的proposals。

Deep Learning for 3D Point Clouds: A Survey_第18张图片
表5:在S3DIS(包括Area5和6重交叉验证)[10]、Semantic3D(包括semantic-8和reduced-8子集)[12]、ScanNet [11]和SemanticKITTI [15]数据集上的比较语义分割结果。总体准确性(OA)、联合平均交集(mIoU)是主要的评估指标。为了简单起见,我们省略了值后面的“%”。符号“-”表示结果不可用。

通过将二维全景分割扩展到三维映射,Narita等人[228]提出了一个在线体积三维映射系统,以共同实现大规模三维重建、语义标签和实例分割。他们首先利用2D语义和实例分割网络获得像素全景标签,然后将这些标签集成到立体地图中。全连接的CRF被进一步用于实现精确的分割。该语义映射系统可以实现高质量的语义映射和有区别的目标识别。Yang等人[229]提出了一种称为3D-BoNet的单阶段(single-stage)、无锚点(anchor-free)和端到端可训练网络,以实现点云上的实例分割。这种方法直接对所有可能的实例进行粗糙的三维边界框的回归,然后利用一个点级的二进制分类器来获得实例标签。特别地,边界框生成任务被描述为一个最优分配问题。 此外,还提出了一种多准则损失函数来正则化生成的边界框。 该方法不需要任何后处理,计算效率高。Zhang等人[230]提出了一个网络,用于大规模户外激光雷达点云的分割。该方法使用自关注块学习点云鸟瞰图上的特征表示。 根据预测的水平中心和高度限制获得最终实例标签。Shi等人[231]提出了一种层次感知的Variational Denoising Recursive AutoEncoder(VDRAE),用于预测室内3D空间的布局。目标proposals通过递归上下文聚合和传播迭代生成和细化。 总的来说,基于proposal的方法[226]、[227]、[229]、[232]是直观和直接的,而且实例分割结果通常具有良好的objectness。然而,这些方法需要多阶段训练和删减冗余proposals。因此,它们通常耗时且计算成本高。

5.2.2 Proposal-free方法

proposal-free方法[233]、[234]、[235]、[236]、[237]、[238]、[239]、[240]没有目标检测模块。相反,他们通常将实例分割看作语义分割后的后续聚类步骤。特别是,大多数现有的方法都基于这样的假设,即属于同一实例的点应该具有非常相似的特征。因此,这些方法主要集中在鉴别特征学习和点分组上。

在一项开创性的工作中,Wang等人[233]首先引入了Similarity Group Proposal Network(SGPN)。该方法首先学习每个点的特征和语义映射,然后引入相似度矩阵来表示每个成对特征之间的相似度。为了学习更多的判别特征,他们使用双铰链损失来相互调整相似度矩阵和语义分割结果。最后,采用启发式和非最大限度的限制方法,将相似的点合并为实例。由于构建相似性矩阵需要消耗大量内存,这种方法的可扩展性是有限的。类似地,Liu等人[237]首先利用子流形稀疏卷积[166]来预测每个体素的语义分数以及相邻体素之间的亲和力。然后,他们引入了一种聚类算法,根据预测的亲和力和网格拓扑将点分组到实例中。Mo等人[241]在PartNet中引入了分段检测网络来实现实例分段。 使用PointNet++作为主干来预测每个点和不相交实例掩码的语义标签。此外,Liang等人[238]提出了一种结构感知的缺失,用于区分嵌入的学习。这种损失同时考虑了特征的相似性和点之间的几何关系。基于注意的图CNN进一步用于通过聚集来自邻域的不同信息来自适应地细化所学习的特征。由于一个点的语义类别和实例标签通常相互依赖,人们提出了几种方法将这两个任务耦合成一个任务。Wang等人[234]通过引入端到端且可学习的关联分段实例和语义(ASIS)模块,将这两项任务整合在一起。实验表明,语义特征和实例特征可以相互支持,从而提高了ASIS模块的性能。类似地,Zhao等人[242]提出了JSNet来实现语义和实例分割。此外,Pham等人[235]首先引入了MultiTask Point-wise Network(MT PNet),为每个点分配一个标签,并通过引入判别损失[243]来规范特征空间中的嵌入。然后,他们将预测的语义标签和嵌入融合到Multi-Value Conditional Random Field(MV-CRF)模型中进行联合优化。最后,利用均值场变分推理产生语义标签和实例标签。Hu等人[244]首先提出了一种Dynamic Region Growing(DRG)方法,将点云动态分离为一组不相交的切,然后使用无监督的K-means++算法对所有切片进行分组。 然后在块之间的上下文信息的引导下执行多尺度块分割。最后,将这些标记的补丁合并到目标级别,以获得最终的语义和实例标签。

为了在全3D场景中实现实例分割,Elich等人[236]提出了一种2D-3D混合网络,以从BEV表示和点云的局部几何特征中联合学习全局一致的实例特征。然后将学习到的特征组合起来,实现语义和实例分割。请注意,与启发式分组合并算法[233]不同,更灵活的Meanshift[245]算法用于将这些点分组到实例中。此外,还引入了多任务学习,例如分段。 Lahoud等人[246]了解了每个实例的独特特征嵌入和估计目标中心的方向信息。提出了特征嵌入损失和方向损失来调整潜在特征空间中的学习特征嵌入。采用均值漂移聚类和非最大值抑制将体素分组为实例。这种方法在ScanNet [11]基准测试中获得了一流的性能。此外,预测的方向信息对于确定实例的边界特别有用。张等人[247]概率嵌入引入点云实例分割。该方法还结合了不确定性估计,并为聚类步骤提出了一个新的损失函数。Jiang等人[240]提出了一个PointGroup网络,它由一个语义分割分支和一个偏移预测分支组成。进一步利用双集聚类算法和ScoreNet来获得更好的分组结果。

总之,free-proposal方法不需要计算量大的区域proposal组成。然而,由这些方法分组的实例段的目标性通常较低,因为这些方法不明确地检测目标边界。

5.3 部分分割

3D形状的部分分割有两个困难。首先,具有相同语义标签的形状部分具有较大的几何变化和歧义。第二,语义相同的物体中的部分数量可能不同。首先,具有相同语义标签的形状部分具有很大的几何变化和模糊性。第二,具有相同语义的目标中的部分数量可能不同。

提出了VoxSegNet[248]以在有限的解决方案下实现对3D体素化数据的细粒度部分分割。提出了一种Spatial Dense Extraction(SDE)模块(由堆叠的空洞残差块组成)来从稀疏体积数据中提取多尺度判别特征。通过逐步应用注意力特征聚合(AFA)模块,进一步重新加权和融合学习到的特征。Kalogerakis等人[249]结合FCN和基于表面的CRF来实现端到端的3D部分分割。他们首先从多个视图生成图像以实现最佳表面覆盖率,并将这些图像输入 2D 网络以生成置信度图。然后,这些置信度图由基于表面的CRF聚合,该CRF负责对整个场景进行一致的标记。易等人[250] 引入了Synchronized Spectral CNN(SyncSpecCNN)来对不规则和非同构形状图执行卷积。为了解决零件多尺度分析和形状信息共享问题,引入了扩展卷积核的谱参数化和谱变换网络。

Wang等人[251]首先通过引入Shape Fully Convolutional Networks(SFCN)并采用三个低级几何特征作为其输入,在3D网格上进行形状分割。然后,他们利用基于投票的多标签图切割来进一步细化分割结果。Zhu等人[252]提出了一种用于3D形状共同分割的弱监督协同CoSegNet。该网络将未分割的3D点云形状的集合作为输入,并通过迭代最小化组一致性损失来产生形状部分标签。类似于CRF,提出了预训练的部分细化网络来进一步细化和去噪部分proposals。Chen等人[253]提出了一种Branched AutoEncoder网络(BAE-NET),用于无监督、oneshot和弱监督3D形状协同分割。该方法将形状共分割任务描述为一个表征学习问题,旨在通过最小化形状重建损失来寻找最简单的部分表征。 基于编码器-解码器体系结构,该网络的每个分支都可以学习特定部分形状的紧凑表示。 然后,从每个分支学习的特征和点坐标被提供给解码器,以产生一个二进制值(指示该点是否属于该部分)。该方法具有良好的泛化能力,可以处理大型三维形状集合(多达5000多个形状)。 然而,该方法对初始参数敏感,并且没有将形状语义纳入网络,这阻碍了该方法在每次迭代中获得鲁棒稳定的估计。 Yu等人[254]提出了一种用于分层形状分割的自顶向下递归部分分解网络(PartNet)。与现有的将形状分割成固定标签集的方法不同,该网络将部分分割表述为级联二进制标签的问题,并根据几何结构将输入点云分解为任意数量的部分。罗等人[255]针对zeroshot 3D部分分割任务介绍了一种基于学习的分组框架。为了提高跨类别的泛化能力,该方法倾向于学习一种分组策略,限制网络在部分的局部背景下学习part-level特征。

5.4 总结

表5显示了现有方法在公共数据集上取得的结果,包括S3DIS[10]、Semantic3D[12]、ScanNet[39]和SemanticKITTI[15]。以下问题需要进一步调查:

  • 得益于常规的数据表示,基于投影的方法和基于离散化的方法都可以利用2D图像中成熟的网络架构。然而,基于投影的方法的主要限制在于由3D-2D投影引起的信息损失,而基于离散化的方法的主要瓶颈在于由分辨率的增加引起的计算和存储成本的立方增加。为此,基于索引结构的稀疏卷积将是一个可行的解决方案,值得进一步探索。

  • 基于点的网络是最常研究的方法。然而,点表示自然没有明确的邻域信息,大多数现有的基于点的方法都采用邻域搜索机制(例如KNN[79]或ball query[54])。这固有地限制了这些方法的效率,最近提出的point-voxel联合表示[256]将是进一步研究的有趣方向。从不平衡的数据中学习仍然是点云分割中的一个挑战性问题。尽管一些方法[65], [203], [205]已经取得了显著的整体性能,但它们在少数类别上的性能仍然是有限的。例如,RandLA Net[206]在Semantic3D的reduced-8子集上实现了76.0%的总体IoU,但在hardscape类上实现了41.1%的极低IoU。

  • 大多数现有方法[5]、[54]、[79]、[205]、[207]都适用于小型点云(例如,1米×1米,4096个点)。 实际上,深度传感器获取的点云通常是巨大的、大规模的。 因此,需要进一步研究大规模点云的有效分割问题。

  • 少数工作[178]、[179]、[199] 已经开始从动态点云中学习时空信息。我们期望时空信息有助于提高后续任务的性能,如3D目标识别、分割和完成。

6 结论

本文综述了三维理解的最新方法,包括三维形状分类、三维目标检测和跟踪、三维场景和目标分割。 对这些方法进行了全面的分类和性能比较。 文中还介绍了各种方法的优缺点,并列出了潜在的研究方向。

REFERENCES

[1] Z. Liang, Y . Guo, Y . Feng, W. Chen, L. Qiao, L. Zhou, J. Zhang, and H. Liu, “Stereo matching using multi-level cost volume and multi-scale feature constancy ,” IEEE TPAMI, 2019.

[2] Y . Guo, F. Sohel, M. Bennamoun, M. Lu, and J. Wan, “Rotational projection statistics for 3D local surface description and object recognition,” IJCV, 2013.

[3] Y . Guo, M. Bennamoun, F. Sohel, M. Lu, and J. Wan, “3D object recognition in cluttered scenes with local surface features: a survey ,” IEEE TPAMI, 2014.

[4] X. Chen, H. Ma, J. Wan, B. Li, and T. Xia, “Multi-view 3D object detection network for autonomous driving,” in CVPR, 2017.

[5] C. R. Qi, H. Su, K. Mo, and L. J. Guibas, “PointNet: Deep learning on point sets for 3D classification and segmentation,” in CVPR, 2017.

[6] Z. Wu, S. Song, A. Khosla, F. Yu, L. Zhang, X. Tang, and J. Xiao, “3D shapeNets: A deep representation for volumetric shapes,” in CVPR, 2015.

[7] M. A. Uy , Q.-H. Pham, B.-S. Hua, T. Nguyen, and S.-K. Yeung, “Revisiting point cloud classification: A new benchmark dataset and classification model on real-world data,” in ICCV, 2019.

[8] A. X. Chang, T. Funkhouser, L. Guibas, P . Hanrahan, Q. Huang, Z. Li, S. Savarese, M. Savva, S. Song, and H. Su, “ShapeNet: An information-rich 3D model repository ,” arXiv preprint arXiv:1512.03012, 2015.

[9] K. Mo, S. Zhu, A. X. Chang, L. Yi, S. Tripathi, L. J. Guibas, and H. Su, “PartNet: A large-scale benchmark for fine-grained and hierarchical part-level 3D object understanding,” in CVPR, 2019.

[10] I. Armeni, O. Sener, A. R. Zamir, H. Jiang, I. Brilakis, M. Fischer, and S. Savarese, “3D semantic parsing of large-scale indoor spaces,” in CVPR, 2016.

[11] A. Dai, A. X. Chang, M. Savva, M. Halber, T. Funkhouser, and M. Nießner, “ScanNet: Richly-annotated 3D reconstructions of indoor scenes,” in CVPR, 2017.

[12] T. Hackel, N. Savinov , L. Ladicky , J. Wegner, K. Schindler, and M. Pollefeys, “Semantic3D.net: A new large-scale point cloud classification benchmark,” ISPRS, 2017.

[13] X. Song, P . Wang, D. Zhou, R. Zhu, C. Guan, Y . Dai, H. Su, H. Li, and R. Yang, “Apollocar3D: A large 3D car instance understanding benchmark for autonomous driving,” in CVPR, 2019.

[14] A. Geiger, P . Lenz, and R. Urtasun, “Are we ready for autonomous driving,” in CVPR, 2012.

[15] J. Behley , M. Garbade, A. Milioto, J. Quenzel, S. Behnke, C. Stachniss, and J. Gall, “SemanticKITTI: A dataset for semantic scene understanding of lidar sequences,” in ICCV, 2019.

[16] G. Elbaz, T. Avraham, and A. Fischer, “3D point cloud registration for localization using a deep neural network auto-encoder,” in CVPR, 2017, pp. 4631–4640.

[17] A. Zeng, K.-T. Yu, S. Song, D. Suo, E. Walker, A. Rodriguez, and J. Xiao, “Multi-view self-supervised deep learning for 6D pose estimation in the amazon picking challenge,” in ICRA, 2017, pp.

1386–1383.

[18] X. Han, H. Laga, and M. Bennamoun, “Image-based 3D object reconstruction: State-of-the-art and trends in the deep learning era,” IEEE TPAMI, 2019.

[19] A. Ioannidou, E. Chatzilari, S. Nikolopoulos, and I. Kompatsiaris, “Deep learning advances in computer vision with 3D data: A survey ,” ACM Computing Surveys, 2017.

[20] E. Ahmed, A. Saint, A. E. R. Shabayek, K. Cherenkova, R. Das, G. Gusev , D. Aouada, and B. Ottersten, “Deep learning advances on different 3D data representations: A survey ,” arXiv preprint arXiv:1808.01462, 2018.

[21] Y . Xie, J. Tian, and X. Zhu, “A review of point cloud semantic segmentation,” IEEE GRSM, 2020.

[22] M. M. Rahman, Y . Tan, J. Xue, and K. Lu, “Recent advances in 3D object detection in the era of deep neural networks: A survey ,” IEEE TIP, 2019.

[23] K. Siddiqi, J. Zhang, D. Macrini, A. Shokoufandeh, S. Bouix, and S. Dickinson, “Retrieving articulated 3-D models using medial surfaces,” Machine Vision and Applications, vol. 19, no. 4, pp.

261–275, 2008.

[24] M. De Deuge, B. Douillard, C. Hung, and A. Quadros, “Unsupervised feature learning for classification of outdoor 3D scans,” in ACRA, 2013.

[25] S. Song, S. P . Lichtenberg, and J. Xiao, “Sun RGB-D: A RGB-D scene understanding benchmark suite,” in CVPR, 2015.

[26] A. Patil, S. Malla, H. Gang, and Y .-T. Chen, “The H3D dataset for full-surround 3D multi-object detection and tracking in crowded urban scenes,” in ICRA, 2019.

[27] M.-F. Chang, J. Lambert, P . Sangkloy , J. Singh, S. Bak, A. Hartnett, D. Wang, P . Carr, S. Lucey , D. Ramanan et al, “Argoverse: 3D tracking and forecasting with rich maps,” in CVPR, 2019.

[28] R. Kesten, M. Usman, J. Houston, T. Pandya, K. Nadhamuni, A. Ferreira, M. Yuan, B. Low, A. Jain, P . Ondruska et al, “Lyft level 5 av dataset 2019,” 2019.

[29] Q.-H. Pham, P . Sevestre, R. S. Pahwa, H. Zhan, C. H. Pang, Y . Chen, A. Mustafa, V . Chandrasekhar, and J. Lin, “A*3D dataset: Towards autonomous driving in challenging environments,” ICRA, 2020.

[30] P . Sun, H. Kretzschmar, X. Dotiwalla, A. Chouard, V . Patnaik, P . Tsui, J. Guo, Y . Zhou, Y . Chai, B. Caine, V . Vasudevan, W. Han, J. Ngiam, H. Zhao, A. Timofeev , S. Ettinger, M. Krivokon, A. Gao, A. Joshi, Y . Zhang, J. Shlens, Z. Chen, and D. Anguelov , “Scalability in perception for autonomous driving: Waymo open dataset,” in CVPR, 2020.

[31] H. Caesar, V . Bankiti, A. H. Lang, S. V ora, V . E. Liong, Q. Xu, A. Krishnan, Y . Pan, G. Baldan, and O. Beijbom, “nuscenes: A multimodal dataset for autonomous driving,” in CVPR, 2020.

[32] D. Munoz, J. A. Bagnell, N. Vandapel, and M. Hebert, “Contextual classification with functional max-margin markov networks,” in CVPR, 2009, pp. 975–982

Deep Learning for 3D Point Clouds: A Survey_第19张图片Deep Learning for 3D Point Clouds: A Survey_第20张图片
Deep Learning for 3D Point Clouds: A Survey_第21张图片Deep Learning for 3D Point Clouds: A Survey_第22张图片

你可能感兴趣的:(3D实例分割,深度学习,3d,人工智能)