目前缺少用于语义分割的 3D LiDAR 数据吗?关于三维点云数据集和方法的调查

目前缺少用于语义分割的 3D LiDAR 数据吗?关于三维点云数据集和方法的调查

原文

Are We Hungry for 3D LiDAR Data for Semantic Segmentation? A Survey of Datasets and Methods

论文地址 https://arxiv.org/abs/2006.04307

摘要

3D 语义分割是机器人和自动驾驶应用的一项基本任务。 最近的工作主要集中在使用深度学习技术上,而开发精细注释的 3D LiDAR 数据集是极其劳动密集型的,并且需要专业技能。 由数据集不足引起的性能限制称为数据饥饿问题。
这项研究对以下问题进行了全面调查:我们是缺少3D LiDAR 数据进行语义分割?
这些研究在三个层次上进行。 首先,对主要的 3D LiDAR 数据集进行广泛审查,然后对三个代表性数据集进行统计分析,以深入了解数据集的大小、多样性和质量,这些是学习深度模型的关键因素。 其次,对 3D 语义分割方法进行了有组织的调查,重点关注使用深度学习技术的最新研究趋势的主流,然后对解决数据饥饿问题(data hunger problem)的现有方法进行系统调查。
最后,对方法论和数据集观点上的剩余问题进行了深入的讨论,并给出了关于数据集偏差、领域和语义差距的开放性问题,从而引出了未来工作中的潜在主题。 据我们所知,这是第一项使用深度学习技术研究 3D 语义分割的数据饥饿问题的工作,这在方法和数据集审查中都得到了解决,我们通过全面的数据集分析分享发现和讨论

引言

如今,LiDAR 已成为许多机器人 [1]、[2]、移动测绘 [3]、[4] 和自动驾驶 [5]、[6] 系统中的主要传感器。 在动态过程中从静态视点 [7] 或移动平台 [8] 捕获的 3D LiDAR 数据提供了具有真实大小的丰富 3D 几何图形的真实世界副本,可以以 3D 格式表示 点云 [9]、[10] 或 2D 网格 [11],例如距离图像,使用静态或数据帧序列。 语义分割[12]、[13]是场景理解的一项基本任务,它根据现实世界中有意义的分类法将整个输入数据划分为不同的语义可解释类别。 随着 LiDAR 传感器在各种应用中的广泛使用,3D LiDAR 数据 [14]、[15] 的语义分割越来越受到关注。 在下文中,我们提到 3D 语义分割来强调解决 3D LiDAR 数据特征的工作,以及潜在通用的语义分割。

语义分割已经研究了几十年。[16] 中对截至 2014 年的早期工作进行了全面回顾。 我们将这些作品称为传统方法,其特点是使用逻辑提取特征特征和自下而上的程序。 受深度学习技术 [17]、[18] 惊人成功的启发,最近的语义分割工作集中在使用深度神经网络来学习更丰富的特征表示,并在端到端中对从输入数据到语义标签的映射进行建模利用end-to-end 模式[19],以下称为深度学习方法。 然而,与传统方法相比,深度学习方法面临着相当大的挑战,即在训练中需要大量手动标记的数据[20]。 训练数据的数量、质量和多样性对深度学习模型的泛化性能有相当大的影响[21]、[22]。
训练数据不足造成的性能限制称为数据饥饿效应,它既体现在数据规模上,也体现在数据多样性上。 正如 G. Marcus 在 [23] 中所指出的,在取得长足进步和热情的背景下,数据饥饿问题是他在当前深度学习系统面临的十大挑战中首先关注的问题。 对于 3D 语义分割任务,需要具有逐点注释的 3D LiDAR 数据,其中 S3DIS [24]、Semantic3D [7] 和 SemanticKITTI [8] 是最流行的数据集。 这些数据集由人工操作员全部或部分注释,这既费时又费力,并且需要特殊的技能和软件,例如,操作员经过培训可以使用专业软件来可视化和注释 3D 点云,这很难解释 比二维图像。 由于这些困难,与 2D 图像 [25]、[26] 相比,用于 3D 语义分割的公开数据集在数据大小和多样性方面都非常有限。 因此,3D 语义分割甚至可能面临严重的数据饥饿问题。

在这项研究中,我们试图回答以下问题。
我们是否缺少使用深度学习技术进行语义分割的 3D LiDAR 数据? 可以采取哪些措施来解决方法论和数据集开发方面的问题,还有哪些问题需要在未来的研究中回答?
为了回答这些问题,在这项工作中采取了以下步骤。 第二节回顾了现有的 3D LiDAR 数据集,并通过对三个代表性数据集的统计分析,深入了解了数据大小和多样性。
第三节简要回顾了 3D 语义分割的现有方法,第四节回顾了已经进行或可能用于解决 3D 语义分割的数据饥饿问题的工作,然后在第五节讨论未来的主题和未解决的问题。
许多调查与这项工作有关。 [27]、[28] 回顾了文献中早期的 3D 点云分割和分类方法。 [12]、[13] [29] 回顾用于语义分割的方法和数据集。 此外,[14]、[15]、[30] [31]、[32] [33] 回顾了用于 3D 语义分割任务的深度学习方法。 此外,[34] 回顾了用于语义分割和检测的多模态方法。 然而,这些调查侧重于对现有方法的总结和分类,并没有强调 3D 数据集或数据饥饿问题。 据我们所知,这是第一项从 3D 语义分割的数据饥饿问题的角度对数据集和方法进行深入调查的工作。 我们工作的主要贡献如下:

• 对现有的 3D 数据集进行了广泛的回顾,根据数据获取方法及其主要应用分为静态数据集、顺序数据集和合成数据集,并对 3D 语义分割方法进行了有组织的调查,重点是主流的 3D 语义分割方法。 使用深度学习技术的最新研究趋势。
• 通过对三个具有代表性的 3D 数据集的数据大小、空间和类别分布、场景多样性和实例质量等方面的数据进行统计分析,深入了解数据饥饿问题,这些是深度学习性能的关键因素 楷模。
• 对解决数据饥饿问题的努力进行了系统调查,包括对精细注释数据要求较低的方法和劳动密集程度较低的数据注释方法,随后对剩余问题进行了深入的讨论并开放 问题,导致未来工作中的潜在主题。

II. 3D LIDAR DATASETS AND STATISTICAL ANALYSIS 3D 激光雷达数据集和统计分析

下面,我们回顾了公开可用的 3D LiDAR 数据集,然后对三个具有代表性的数据集进行了统计分析。

A. 3D LiDAR 数据集 根据数据采集方法和主要应用,3D LiDAR 数据集(如表一所列)分为三组: 1)静态数据集:通过地面激光扫描仪或使用 MLS(移动 激光扫描)系统,主要捕获静态场景对象,用于街景、3D 建模和虚拟现实等应用。 2) 序列数据集:从用于 ADAS(高级驾驶辅助系统)或自动驾驶应用程序的车辆平台收集的帧序列数据,可以进一步分为具有逐点或 3D 边界框注释的数据集。 3) 合成数据集:通过模拟上述任一数据采集系统在虚拟世界中采集的数据。 此外,最流行的图像和 RGB-D 数据集也列在表 I 中以进行比较。
1)静态数据集:静态数据集最常用于点云分类任务。 它们的主要应用场景包括机器人技术、增强现实和城市规划。
如图 1(a) 所示,地面激光扫描仪通常用于从固定视点收集静态密集的 3D LiDAR 数据。 诸如图 1(b) 的 MLS 系统从移动的车辆中捕获 LiDAR 帧序列。 然而,数据通常是静态的,它们重建了没有动态对象运动的大规模街景。
2)序列数据集:序列数据集最常用于自动驾驶任务。 如图 1© 所示,利用自动驾驶系统来捕捉街道上具有移动视点的 LiDAR 帧序列。 这些数据集通常包含比静态数据集更多的帧但稀疏的点。 此外,由于传感器的视点沿道路方向移动,因此道路类别的 LiDAR 点通常分布在一定的角度区域,可以根据系统的设置进行预测。

近年来,出现了具有逐点和实例标签的顺序数据集,这有助于研究 3D 语义分割 [59] 和全景全景分割 [60]。
3) 合成数据集:由于数据标注的劳动密集性,真实数据集的生成非常昂贵。 合成数据集是通过计算机模拟构建的,如图 1(d) 所示,它可以是大规模的,并且具有精细但廉价的注释。 使用此类数据集的问题是由合成场景和真实场景之间的巨大差距引起的。 合成场景通常可以非常逼真,但它们缺乏细节的准确性。 例如,GTA-V [54] 数据集中的行人具有细节丰富的 RGB 信息,但他们的物理模型被简化为圆柱体,由此产生的点云缺乏真实物体的必要细节。

  1. 与图像和 RGB-D 数据集的比较:表 I 列出了一些具有代表性的图像和 RGB-D 数据集,它们具有更大的规模。 与图像和 RGB-D 数据集相比,可以发现无论是用于自动驾驶场景中的语义分割的 Cityscapes [55] 和 ApolloScape [58],还是用于室内场景的 ScanNet [57],它们的像素/帧数都更加充足 比 3D LiDAR 的。 虽然图像和 RGB-D 的研究仍然面临数据饥饿问题,但在 3D LiDAR 数据集领域更为严重。

B. 数据集的统计分析 选择了三个具有代表性的数据集: 1) Semantic3D [7],最大和最流行的静态数据集; 2)SemanticKITTI [8],最大和最流行的顺序数据集; 3) SemanticPOSS [43],一个新的数据集,描述了一个充满汽车、人和骑手的动态城市场景。 这些数据集在大小和场景多样性方面进行了统计分析。

  1. 分析概要:分析数据集大小的一种直接方法是计算点数和比例。 表 II 和图 2 显示了关于三个数据集的范围距离的统计数据作为示例。 可以发现,LiDAR 点在近距离处具有更高的密度。 例如,Semantic3D 和 SemanticKITTI 都有超过 60% 的 LiDAR 点在 10 m 内测得,而在 [30m,70m] 内测得的点不到 10%。 SemanticPOSS 略有不同,因为使用了扫描线排列不均匀的 LiDAR 传感器(Pandora [61]),它在水平 LiDAR 扫描中具有更高的分辨率。 在这些数据集中,LiDAR 点的空间分布非常不平衡,这在图 3 中可以更直观地看到。在距离传感器位置 15m 处画一个圆圈,总共 24,671,679 个 LiDAR 点中有 72% 落入圆圈中,其中大多数 位于具有非常相似特性的一小部分自然地形上。
    这是当前 3D LiDAR 数据集中的常见现象,其中距离传感器位置较近的物体的点密度比较远的物体高得多。
    这一事实导致直接计算点数没有意义,因为大带来的新信息很少,对模型学习帮助不大。 另一方面,对象类别的分布是长尾的。 这反映在图 3(b-c)中,对于从道路视点测量的数据集,大部分数据点可能属于道路。 这种长尾问题(long-tail problem)可能导致深度学习模型在少数类别上的性能下降。

目前缺少用于语义分割的 3D LiDAR 数据吗?关于三维点云数据集和方法的调查_第1张图片

图 2. 点/体素相对于距离的比例:(a) Semantic3D (b) SemanticKITTI © SemanticPOSS,仅计算具有有效标签的 LiDAR 点。 没有障碍物的点比例是模拟结果,供参考。 Semantic3D 的传感器设置不公开,因此 (a) 中没有。 LiDAR点的空间分布不平衡问题可以通过体素化来缓解。 (d) 体素数相对于距离的分布。
曲线“总体素数”与其他曲线之间的差异是每个数据集的空体素数。

目前缺少用于语义分割的 3D LiDAR 数据吗?关于三维点云数据集和方法的调查_第2张图片

图 3 Semantic3D 中 3D LiDAR 帧的点/体素比例比较。 (a) 3D LiDAR 框架的可视化。 (b) LiDAR 点相对于距离的比例。 © LiDAR 点相对于类别的比例。 (d) 体素相对于距离的比例。 (e) 体素相对于类别的比例。 体素分布更均匀,体素上的类别比例与可视化场景更匹配。

在这项研究中,对 LiDAR 点进行重新采样,体素化,以找到具有统一空间分辨率的数据集。
将 3D 空间均匀细分为体素并将 LiDAR 点投影到体素中,获得一组有效体素 V = {vi},每个体素至少有一个 LiDAR 点,其中 vi 是 K 维向量,每列 vik 表示标签 k 的 LiDAR 点在体素 i 中的比例。 在本研究中,网格大小设置为 (0.5 m)3。 需要注意的是,在这样的量化过程中,体素值可能会随着相位变化而变化。 通过计算有效体素的数量和比例,曲线绘制在图 2(a-c)中,显示了关于距离的更均匀分布。 类似的结果也可以在表 II 和图 3 中找到。顺便说一下,激光雷达只能扫描障碍物的表面,因此与整个场景的总体素相比,占用的空间体积很小(见图 . 2(d))。

随后在体素上定义了许多度量来分析数据集的统计数据。 类别比例 Ck 是具有标签 k 的 LiDAR 点或体素的比例。 场景描述符 H 是一个使用类别比例表征场景的 K 维向量。 给定场景的体素集 V,生成描述符 H = (C0, C1 . . . . , C K−1),每个类别比例计算为pic 在这项研究中,V 可以是单个帧(Semantic3D)、帧序列(SemanticKITTI 和 SemanticPOSS)或数据集的体素集。
给定场景 S,场景描述符表示为 HS。
通常,我们使用 HS 来表示单个场景/序列 S 上的结果,并使用 H 来表示整个数据集的平均结果。 车辆、人员和骑手等动态对象与建筑物、树木和地面等静态对象具有很大不同的性质,并且对于自动驾驶应用特别重要。
因此,我们定义了动态场景描述符 O,它只是动态类别的向量。 动态类别是 H 的类别列表的子集,但 O 的每一列是每帧类别的实例数。 与 HS 类似,给定场景 S,动态场景描述符表示为 OS,对于多帧场景,实例数是每帧的平均值。 场景多样性距离 D 用于衡量两个场景在场景描述符上的差异。 为了平衡不同类别的大小,我们表示标准化场景描述符 H~ S = (C~0, C~1 …, C~K-1),其中 z-score 标准化类别比例 C~k = (Ck - 均值(Ck))/标准差(Ck)。 其中,对三个数据集的所有场景计算平均值mean(Ck)和标准差std(Ck)。 给定两个场景 Si 和 S j,场景多样性距离估计为 D(Si , S j ) = ||H~ i - H~ j||2/K。 类似地,动态场景分集距离定义为 DO(Si , S j ) = ||O~i − O~ j||2/KO,其中 O~ 仅包含动态类别的 C~k,KO 是 动态类别。 为了平衡不同类别的大小,还对类别比例的值进行标准化,以减少数据集偏差。

每个数据集都有自己的标签/类别定义,它们有很大不同。 为了比较,一些标签的合并如图4所示。0级是一些原始标签定义。 一些具有相同语言表达的标签因其有偏见的语义上下文而被单独列出。 例如,SemanticPOSS 中的“路”包括人行道区域,但在 SemanticKITTI 中不包括它。 Level 1是针对每个数据集的分析,对一些标签进行适度的合并,以保持每个数据集的特殊性,同时不同数据集的结果仍然可以比较。 级别 2 用于跨数据集分析,其中标签在很大程度上被合并以找到三个数据集的统一定义。

目前缺少用于语义分割的 3D LiDAR 数据吗?关于三维点云数据集和方法的调查_第3张图片

图 4 数据集不同标签定义的集成。 0 级:数据集的一些原始标签。 级别 1:用于每个数据集分析的合并标签。
级别 2:用于跨数据集分析的合并标签。 (*为简单起见,一些次要标签被合并为“其他”。)。

下面,我们首先分析每个数据集的场景描述特征,然后跨场景和数据集比较,以统计评估其场景多样性的差异。
之后,我们讨论有关动态对象表示的数据集。 最后,我们对实例距离和数据质量进行简要分析

  1. Semantic3D:Semantic3D 在训练集中包含 15 个场景。 每个都是使用地面激光扫描仪从固定位置测量的单帧。 一个场景在图 5(a)中可视化,整个数据集场景描述符 H 绘制为直方图。 可以发现,地面、植被和建筑物是主要类别,建筑物的百分比明显高于其他两个数据集。 它没有移动的物体,除了几辆停着的车。
    Semantic3D的场景根据数据测量的地理位置分为城市、农村和郊区三组。 由于只有一个郊区场景 S9,它与图 6(a)中的树结构隔离。
    图 6(a) 显示了使用直方图的场景描述符 HS。 可以发现,同一组的 HS 可能非常不同,例如 S3 和 S8,而不同组的场景可能非常相似,例如 S8 和 S13。 无论场景属于同一组还是不同组,场景对象的类别比例都非常多样化。
    例如,S7 是铁路场景。 它充满了自然地形,几乎没有建筑物。 S3-5 则相反。 它们是充满建筑物但几乎没有植被的大教堂场景。
    Semantic3D 没有移动物体,例如人和骑手。 动态场景描述符 O 不适应 Semantic3D,Semantic3D 的相应结果在图 5 和图 6 中都没有。
    一般来说,Semantic3D 描述的场景非常多样化。
    但是,它描述了没有移动物体的静态场景。
    由于每个场景只有一个 LiDAR 帧,这可能会给训练许多深度学习方法带来困难。
    3) SemanticKITTI:SemanticKITTI 在训练集中包含 23、201 个 LiDAR 帧的 11 个序列,这些帧是从欧洲街道上移动的车辆中连续测量的。
    在这项研究中,每个序列都被视为一个场景; 因此,分析了 11 个场景。 一个场景在图 5(b)中可视化,整个数据集场景描述符 H 绘制为直方图。 与 Semantic3D 相比,SemanticKITTI 描述了更广泛的街道场景,其中植被和地面是最高的两个类别,分别占 50% 和 27% 以上。 与其他数据集相比,建筑物的比例较低。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i0IhVuHy-1646401347985)(https://s2.loli.net/2022/02/28/VJcjQGRlZ92Dvdx.png)]

图 5. 每个数据集的整体分析。 (a-c) 每个数据集由一个代表性场景和整个数据集的场景描述符的直方图可视化。 (d-e) 三种动态对象的每帧平均实例数。 Semantic3D 不存在,因为它主要描述静态场景并且没有实例标签

SemanticKITTI 提供动态对象的实例标签。
动态对象的数量是描述动态场景复杂度的指标,通过统计图5(d)中的每帧实例数来分析。 SemanticKITTI 具有良好的车辆分布多样性。 然而,人和骑手是稀缺的。 很少有场景超过 8 人或 4 名骑手。 图 6(b) 的动态场景描述符 OS 也证实了这一结果。 从图 6(b) 可以看出,类别比例不如 Semantic3D 多样化。
大数据量使得 SemanticKITTI 对训练深度学习模型非常有帮助。 但是,场景不像 Semantic3D 那样多样化,动态对象的数量有限。
4) SemanticPOSS:SemanticPOSS 包含 6 个 LiDAR 帧序列,这些序列是从北京大学校园内移动的车辆中连续测量的。 与在结构化道路或高速公路上收集的其他 3D LiDAR 数据集相比,SemanticPOSS 描述了丰富的动态对象和混合交通的场景。
每个序列被视为一个场景; 因此,分析了 6 个场景。 在图 5© 中,整个数据集场景描述符 H 被绘制为直方图,其中描述了更加动态的街道场景。 从图 6© 的场景描述符来看,它的一般场景多样性一般与 SemanticKITTI 相似,但与 Semantic3D 非常不同。
动态对象的数量在图 5(e)中进行了分析。
与 SemanticKITTI 相比,可以找到更广泛的分布,其中每帧的平均实例分布在车辆的 0 到 32、人的 24 和骑手的 12 之间。 图 6© 的动态场景描述符 OS 也证实了这些结果,即 SemanticPOSS 描述了由不同类型的动态对象和不同拥挤程度填充的场景。
SemanticPOSS 在总共 2,998 个 LiDAR 帧中描述街景。 SemanticKITTI 的数据大小是有限的,但它描述了丰富动态的场景,在其他数据集中是不够的。

5)跨数据集交叉分析:场景多样性分析的混淆矩阵如图7(a)所示,其中每个值是一对场景的场景多样性距离D(Si , S j ); 越白的多样性越少,越深的多样性越多。 例如,第一行比较了 Semantic3D 中场景 S0 的场景多样性距离。 此外,从 Semantic3D 来看,D(S0, S1) 和 D(S0, S2) 是浅灰色,但 D(S0, S3)、D(S0, S4) 和 D(S0, S5) 更暗。 答案可以在图 6(a) 中找到,其中 S0、1、2 是乡村教堂,而 S3、4、5 是大教堂场景。
类似的混淆矩阵如图 7(b)所示,用于分析动态场景多样性。 这里,每个值是该对场景的动态场景分集距离DO(Si , S j )。
数据集的子矩阵通过图 8(a)中的箱线图可视化,用于内部数据集场景多样性分析。 Semantic3D 具有最低的最小值和最高的最大值,反映了更丰富的内部数据集场景多样性。 SemanticPOSS 通常具有较高的中值场景多样性。
一般来说,来自不同数据集的场景往往比内部数据集更加多样化。 图 7(a)中的非对角块比对角块更暗。
SemanticPOSS 提供最丰富的动态场景多样性。
图 7(b) 反映了 SemanticPOSS 与其他动态场景之间的巨大差异。 使用来自同一数据集的值,在图 8(b)中绘制了三个箱线图。 由于 Semantic3D 中缺少运动物体,它的动态场景多样性相当低。 从表 III 中可以看出,SemanticKITTI 和 SemanticPOSS 都有很多车辆,每帧的平均实例数分别为 10.09 和 15.02。
此外,SemanticPOSS 有更多的人和骑手的实例。
从上面的分析中,我们发现场景可能非常多样化,与地理位置没有直接关系。 现有的 3D LiDAR 数据集只反映了非常小的一组真实世界场景,而它们表现出内部数据集的多样性不足,而跨数据集差异很大。
由于领域差距较大,在训练中混合多个数据集可能无法提高模型的准确性,并且在具有较大领域差距的数据集上测试模型也可能导致性能显着下降。

  1. 实例距离和质量:在 3D 数据集中,点云随着与传感器的距离增加而变得稀疏。

因此,远离传感器的点很难被正确分类。 对于一个物体,离传感器越远,它包含的点数越少,被遮挡的可能性就越大。 因为点太少的物体的特征模糊不清,即使是人类也很难明确区分。
图 9 显示了在范围图像视图中具有不同点的一些汽车实例。 很难识别少于 150 个点或超过 25m 的实例。 随着积分的增加,汽车的特征变得清晰起来。 因此,使用点数作为实例质量的衡量标准是合理的。
我们计算了 SemanticKITTI 和 SemanticPOSS 中人和车辆实例的点数分布统计,如图 10 所示。超过 50% 的实例包含的点少于 120 个,这对模型训练没有显着贡献。 尽管 3D LiDAR 数据集包含这些实例是不可避免的,但它们确实会导致数据量膨胀,并加剧 3D LiDAR 语义分割任务中的数据饥饿问题。

三、 3D 语义分割的方法 在本节中,我们对 3D 语义分割的代表性方法进行简要而系统的回顾。

A. 传统和深度学习方法 3D 语义分割的方法已经被广泛研究了几十年。 如图 11 所示,它们根据特征表示和处理流程分为传统和深度学习方法。
传统的 3D 语义分割方法通常使用手工制作的特征来提取点的几何信息,并从支持向量机 (SVM) 或随机森林 (RF) 等分类器输出点标签。

传统方法的一个常见过程是:过度分割点云,然后进行特征提取和语义分类器。 [62] 和 [63]、[64] 是使用该过程的代表性方法。 另一个常见的过程是直接设计每个点的特征向量,而无需事先进行过度分割,例如 [65] 和 [66]。 并且在此基础上,一些方法[38]、[63]、[67]、[68]使用条件随机场(CRF)来聚合上下文信息。
深度学习方法使用深度神经网络来学习特征表示,并通过端到端过程直接将输入数据映射到语义标签。 近期,利用深度神经网络开展了多项关于 3D LiDAR 语义分割的研究,根据输入数据的格式大致可分为四组,如图 11 所示:1)基于点的方法,2 ) 基于图像的方法,3) 基于体素的方法,以及 4) 基于图的方法。 下面,我们对这些方法组进行更详细的回顾。

B. 基于点的方法 基于点的方法将原始点云直接作为输入并输出逐点标签。 这些方法可以处理任意非结构化点云。 原始点云处理的主要难点是如何从非结构化点云中提取局部上下文特征。
1)Point-Wise Shared MLP:PointNet [10] 是用于非结构化点云处理的基于点的深度网络的先驱。 它使用共享的多层感知器(MLP)来提取逐点特征,并通过对称最大池化操作聚合全局特征。 PointNet++ [69] 通过引入相邻点的多尺度分组来提取局部上下文特征,改进了 PointNet [10]。
受 PointNet++ [69] 的启发,许多方法以不同的方式寻求局部特征提取的改进,例如考虑使用不同的采样方法 [59]、[73] 对“邻居”[70]、[71]、[72] 的不同定义 [74],并设计特定的层[75],[76]。
2)点卷积:卷积是二维图像语义分割任务中特征提取的核心操作,它要求有序输入进行局部上下文信息提取。 几种方法有助于从无序的 3D LiDAR 数据构建有序特征序列,然后将卷积深度网络转移到 3D LiDAR 数据。 PointCNN [77] 根据到中心的空间距离对 K 最近点进行排序,这被称为点卷积的 χ-Conv 算子。
为了提高卷积性能和效率,提出了许多特定的卷积网络,例如 A-CNN [78]、KPConv [79]、PointConv [80]、DPC [81]、PointAtrousNet [82]、PointAtrousGraph [83] 、切线卷积 [84]、DAR-Net [85]、ShellNet [86] 和 PVCNN [87]。

3)循环神经网络:循环神经网络(RNN)通常用于提取序列的上下文信息。 对于 3D 语义分割,RNN 可以通过在空间中输入有序特征向量来提取空间上下文。 恩格尔曼等人。 [70] 提出了 Grid (G) 和 Recurrent Consolidation Unit (RCU),将空间划分为多个网格作为网络输入。 RSNet [88] 将无序点转换为具有切片池化层的有序特征向量序列以应用 RNN。
4) Lattice Convolution:稀疏的permutohedral lattice适用于点云等稀疏数据处理。
SPLATNet [89] 应用双边卷积层 (BCL) [90] 来提供点云和稀疏格子之间的转换,从而有效地执行卷积。
并且 LatticeNet [91] 引入了一种新颖的切片算子进行格处理,以获得更好的局部特征表示。

C. 基于图像的方法基于图像的方法将 3D LiDAR 数据投影到表面上以生成 2D 图像作为深度模型输入。 这些方法通常来源于图像语义分割模型,例如全卷积网络(FCN)[19]和U-Net[92]。 具有像素级标签的输出预测被重新投影到原始 3D LiDAR 点。
1)多视图分割:一个简单的投影策略是选择几个位置来拍摄给定点云的照片。 劳文等人。 [93] 围绕固定的垂直轴旋转虚拟相机以生成多视图合成图像,这些图像由基于 FCN 的多流架构处理。 布尔奇等人。 [94] 通过随机选择虚拟相机位置生成 3D LiDAR 数据网格并生成图像。 对于这些多视图方法,选择合适的相机位置和投影策略以减少信息丢失非常重要。
2) 距离图像分割:距离图像通常是通过将一帧 3D LiDAR 数据投影到球面上来生成的。 SqueezeSeg [11] 是一个典型的端到端网络,用于基于 SqueezeNet [95] 和 CRF 的范围图像语义分割。 SqueezeSegV2 [96] 和 SqueezeSegV3 [97] 是 SqueezeSeg 的改进版本。
距离图像分割方法通常在顺序数据集上实现,同时可以结合空间和时间信息。 梅等人。 [98] 和 RangeNet++ [99] 为具有更多区域一致性的预测引入了空间约束。 LU-Net [100] 和 3D-MiniNet [101] 将 3D 空间特征引入投影范围图像。 DeepTemporalSeg [102] 引入了基于贝叶斯滤波器的时间约束,以使预测在时间上更加一致。 一些范围图像分割方法侧重于实时性能,例如 LiSeg [103]、PointSeg [104]、RIU-Net [105]、SalsaNet [106] 和 SalsaNext [107]。
D. 基于体素的方法基于体素的方法将 3D LiDAR 数据转换为体素以进行结构化数据表示。 这些方法通常将体素作为输入,并用一个语义标签预测每个体素。
许多基于体素的方法 [108]、[109]、[110]、[111] [112] 基于 3D 卷积神经网络 (3D CNN)。 然而,基于体素的方法很难找到平衡精度和计算效率的合适体素大小。 一些方法有助于降低稀疏数据上 3D 卷积的计算成本,同时保持可接受的精度,例如 3DCNN-DQN-RNN [113]、子流形稀疏卷积 [114]、高效卷积 [115]、VV-NET [116]、 和 VolMap [117]。

E. 基于图形的方法 基于图形的方法从 3D LiDAR 数据构建图形。 一个顶点通常表示一个点或一组点,边表示顶点之间的邻接关系。 图构建和图卷积是这些方法的两个关键操作。
超点图 (SPG) [118] 采用 PointNet [10] 来编码顶点特征和图卷积以提取上下文信息。 GACNet [119] 提出了一种新颖的图卷积操作,图注意卷积(GAC),以考虑同一对象的点之间的结构关系。 为了学习更多有效的局部特征,一些方法[120]、[121]尝试动态构建图而不是固定图。

四。 解决数据饥饿问题的一些工作

数据饥饿问题目前是深度学习系统的普遍挑战[21],其中已经为机器学习领域的解决方案进行了大量研究,包括计算机视觉、智能车辆和机器人技术。
这些努力可以大致分为两组:1) 开发不需要大量精细注释数据的新方法和 2) 开发人员密集度较低的新数据注释方法。 这两项工作可以进一步分为两组:1) 将领域知识纳入 3D LiDAR 数据处理和 2) 已被证明对其他类型的数据有用但尚未适用于 3D LiDAR 应用程序的通用目的。 在下文中,为了简洁起见,我们将这两组称为 3D LiDAR 方法和通用方法。 图 12 说明了这些努力的最新技术。

A. 方法

1)弱和半监督方法:弱和半监督方法被广泛用于解决数据量大的数据饥饿问题。 他们的目标是尽可能挖掘弱监督的价值。
a) 一般方法:大多数关于弱监督和半监督语义分割的研究都是在图像域中进行的。 由于 ImageNet [26] 等大型图像分类数据集的存在,图像级注释作为语义分割的弱监督很容易获得 [122]、[123]。 有时,图像级弱监督与附加信息相结合以获得更好的性能,例如对象大小的先验知识[124]、指示对象区域的显着性模型[125]、[126]和超像素[127]、[128] . 此外,边界框[122]、[129]、涂鸦[130]和点监督[131]被认为是弱监督。 先验知识可以提供有用的对象性约束 [127]、与类别无关的形状 [132] 或几个先验的组合 [124]。 伪标签本能地使用模型预测来注释未标记的数据,这普遍适用于分类[133]和语义分割[134]、[135]。 此外,对于弱监督和半监督学习,还有各种想法,例如来自视频 [136]、光流 [137] 或其他模式(例如 GPS [138] 和 LiDAR [139])的时空约束。

b) 3D LiDAR 方法:对于 3D LiDAR 语义分割任务,可用的弱监督不如图像相关任务丰富。 徐等人。 [140] 使用一小部分点作为弱监督。 梅等人。 [141]基于先验的人类领域几何知识自动生成弱注释。 Xu等人实施了伪标记。 [142],它还引入了空间关系来辅助半监督框架。
额外的多模态信息 [143] 和时空约束可能会有所帮助。 可以集成约束 [98]、[144] 以帮助模型同时考虑类内紧凑性和类间可分离性。 德万等人。 [102]利用贝叶斯滤波器进行更时间一致的预测。
2)自我监督方法:在将其微调到特定的视觉任务之前,使用 ImageNet [26] 等大规模数据集预训练深度网络是一种常见的选择。
然而,当面对大规模数据集的数据饥饿时,作用。
a) 通用方法:通常,模型在借口任务上进行训练,以学习与目标任务相关的有意义的表示,而无需任何人工注释。 一些典型的借口任务包括上下文预测[145]、[146]、修复[147]、着色[148]和时间相关性[149]、[150]。 尽管研究人员设计了各种借口任务,但自我监督的表现仍然不等于预训练。 已经进行了几项研究[151]来克服这一差距。
b) 3D LiDAR 方法:受用于图像语义分割的上下文预测借口任务的启发,Sauder 等人。 [152]试图通过预测随机重新排列的体素来学习空间分布。
除了从借口任务中学习之外,Maligo 和 Lacroix [153] 通过自监督高斯混合模型将点云分类为一大组类别,注释器可以简单地为这些类别分配语义标签,而不是点级注释。 最近,已经提出了自我监督的预训练方法 [154]、[155] 来学习 3D 数据的强大特征表示,从而提高了不同基准测试的性能。
3)迁移学习:数据饥饿问题不仅反映在数据集大小上。 不同应用场景之间的多样性也阻碍了模型的泛化性能。 迁移学习[156]是处理这个问题的一种方法。

a) 一般方法:迁移学习方法利用从已知源域到新目标域的知识。 基于这些技术,这些方法可以分为几组,例如基于对抗的方法 [157]、基于实例的方法 [158]、基于映射的方法 [159] 和基于网络的方法 [160]。 它已应用于许多视觉应用,包括语义分割[161]。
b) 3D LiDAR 方法:迁移学习可以帮助从其他领域迁移知识,以减少 3D LiDAR 的数据需求。 吴等人。 [11]、[96] 试图通过域适应从 LiDAR 模拟器 GTA-V 获得额外的训练信息。 阿隆索等人。 [162]通过对齐真实数据集之间的数据分布来减少域偏移。
另一种领域适应情况是跨传感器传输知识[163]。 特别是,不同 LiDAR 之间的传输,它利用中间密集表示 [164]、[165] 或从不同 LiDAR 数据 [166]、[167] 中倾斜可传输特征。 类别分布不平衡也是数据饥饿问题的反映。 阿卜杜等人。 [168]提出了一种加权自增量迁移学习方法,该方法重新加权损失函数并优先训练非优势类别。
4)其他方法:语义分割可以看作是场景理解的一种形式。 此外,还有许多研究从不同的角度来解决这个问题。
语义占用图是其中之一,它有效地结合了 3D 和 2D 格式,并从地图级别 [169]、[170] 获得逐像素的场景理解。 顺便说一句,利用贝叶斯滤波器和结合时间信息 [171]、[172] 可以减少数据饥饿的影响。
多模态是另一种允许通过融合 2D 和 3D 数据以供使用 [163]、[171] 以减少数据饥饿效应的方式。
少样本学习旨在通过少量注释和先验知识泛化到新任务。 它是由 Shaban 等人介绍的。 [173] 用于单向语义分割 [174]。
之后,通过原型框架[175]、[176]和基于优化的方法[177]探索了N路语义分割。

B. 数据标注

五、未来的工作和讨论

“数据饥饿”问题越来越被认为是 3D LiDAR 语义分割的一个严重而广泛的挑战。 然而,与计算机视觉和机器学习的研究相比,该问题的解决方案在很大程度上仍是一个未被充分探索的领域。 开发较少依赖精细注释的 3D LiDAR 数据的新方法和开发更多样化的 3D LiDAR 数据集可能成为两个主要关注方向。 下面,我们将详细阐述这些方向上的未来工作,然后讨论未解决的问题,这些问题导致重要但迄今为止很少研究的主题。

A. 方法

与使用视觉图像的大量方法相比,3D LiDAR 数据的研究在广度和深度上都非常有限,并且通常是零星的、不成熟的和不系统的。 据我们所知,一些新的趋势,例如少样本学习,尚未尝试在 3D LiDAR 数据上进行语义分割或相关任务。
下面,我们将讨论这些方面的潜在未来主题。
1)边界框:边界框已被用作开发视觉图像的许多语义分割方法的弱监督信号[122],[129],它们实际上在许多开放数据集中都可用,如表 I 所示。
我们可以利用这些信息来处理 3D LiDAR 数据吗? 到目前为止,解决 3D LiDAR 数据饥饿问题的想法似乎还没有出现。
2)先验知识:与视觉图像不同,3D LiDAR 捕获真实物理尺寸和空间几何形状的真实数据。 可以使用许多先验知识。 例如,地表的近似高程和物体的粗略尺寸。 这些先验知识可以极大地帮助节省学习成本。

  1. 时空约束:视频的语义分割已经在计算机视觉和多媒体社会中进行了研究[195]; 然而,3D LiDAR 数据大多是逐帧处理的,忽略了时间连续性和连贯性线索。 它可以帮助节省计算时间,提高准确性并减少对精细注释数据的需求。
    4)自监督学习:利用大量未标记数据,通过预训练或借口任务进行自监督学习特征表示。 这样的想法引起了一些关注 [155]、[156],但在 3D LiDAR 处理中仍然很少见,而在图像上设计了各种借口任务来学习有意义的表示。 它可能会激发 3D LiDAR 领域的新方向。
    5) Few-Shot Learning:Few-Shot 学习从一些监督和先验知识概括新任务,就像人类一样。 它甚至向前发展到零样本语义分割[196],它从语言特征中转移语义相似性。 少镜头学习的想法是鼓舞人心的,但对 3D LiDAR 数据的研究仍处于早期阶段 [197]、[198]。
    6) 长尾问题:3D LiDAR 数据集是长尾的。 正如第二部分所讨论的,道路、建筑和植被占据了很大比例,而人、汽车和骑手很少,因此难以建模。 对此类数据集的测试揭示了主要类别的表现,而次要类别的表现往往被忽视。 长尾一直是机器学习中的一个普遍问题,已被广泛研究[199]。 由于自然场景中的数据采集和对象占用方式,3D LiDAR 数据集的问题甚至更为严重,而在 3D 语义分割研究中却很少解决。

B. 数据集

深度学习方法的优越性能通常建立在大量精细标注的数据集上。
然而,目前,3D LiDAR 数据集在大小和多样性方面都非常有限。 数据生成如何更高效、更省力? 需要进行更多的研究,下面将讨论一些潜在的主题。
1)标签转移:标签转移是一种获得更多 3D LiDAR 注释的廉价解决方案,它借鉴了其他模态的标签,例如图像 [183]、[184] [182]。
然而,许多方法通常将图像结果投影到 3D LiDAR 数据中,其中正确和错误的注释都会被传输。 最近,[163] 结合 2D 图像和 3D LiDAR 信息来减少跨域过程中的错误。 此外,更多的先验知识,例如 3D LiDAR 数据的大小、几何形状、空间和时间相干性,可能是过滤误报的重要线索。
2)半自动标注:半自动标注是试图在数据生成的效率和质量之间找到平衡点。 一些研究 [200] 使用半自动方法来加速 3D 边界框的标记。
点级语义分割的半自动标注更加复杂。 开发了一些基于 CRF 的方法 [201],但成本改进仍然有限。
3) 数据增强:数据增强是丰富数据多样性的常用技巧,已被证明在 2D 图像 [202] 和 3D LiDAR 对象检测任务 [203] 中实现了与架构改进相比的收益。
然而,对于单个对象有用的常见增强操作,例如随机翻转、旋转和缩放,可能会导致逐点 LiDAR 数据的上下文元素不一致,因此有相当大的增长空间。

4)数据集指标:需要指导数据集的生成,例如 构建新场景的数据集,但避免产生类似的场景重复。 也需要更有效地指导基于数据集的测试。 数据集由非常有限的真实场景快照组成。 对于自动驾驶等现实世界的应用来说,了解在目标场景下可以实现什么样的性能,模型可以适应什么样的场景差异,以及什么样的数据集可以引导出客观反映性能的测试结果是非常重要的。 在现实世界。 已经开发了许多指标来评估模型性能,而我们没有发现能够满足上述需求的广泛接受的数据集指标。
5)不同的激光雷达传感器:近年来,不同厂商开发了许多不同规格的激光雷达传感器,根据系统配置,从不同仰角和角度的视点测量3D点,这可能会改变物体的外观和类别分布。 数据集大部分。 如表 I 所列,大多数数据集是由特定系统配置的特定 LiDAR 传感器开发的。 来自不同传感器的挑战使得很难在更多数据集上训练 3D 语义分割模型。 最近,一些研究[165]、[166]、[164]、[167]尝试了不同类型激光雷达之间的域自适应技术,这表明这一挑战逐渐引起了人们的关注。 可以预见,这些问题在未来值得从数据集和方法论方面进行更多的探索。

C. 开放性问题

1)看不见的物体、新场景和“开放集”问题:目前,研究主要是在“封闭集”[204]中设计算法和评估模型性能,假设测试集服从相同的分布 作为培训之一。
然而,现实世界的应用程序是一个“开放集”问题,这需要深度模型来处理看不见的物体和新场景。 这一直是深度模型的普遍问题,在看不见的类别和新场景中总是会出现大量数据。 然而,对于像自动驾驶这样的应用程序来说,这个问题甚至更为严重,其中一些类别在数据集中是看不到或很少见的,但需要在实际应用程序中处理。 因此,数据饥饿可能始终存在,当模型不确定时,意识到这一点更为重要。
2)数据集偏差和领域差距:实际数据集不可避免地是现实世界的偏差抽样。 数据集偏差是机器学习的普遍问题。 许多研究已经通过跨数据集实验来探索偏差 [21],通过对偏差向量建模来消除损害 [205],并且 [206] 发现许多现有的用于消除数据集偏差的特殊学习算法无助于 CNN 特征。
3D语义分割任务中最受关注的数据集偏差是领域差距,它表现在模型和数据集方面。 前者通常通过迁移学习[156]来解决,以使模型从一个域适应另一个域。 然而,数据集之间的领域差距很少被探索。 利用不同的数据集需要进行严格的研究,其中定量评估领域差距的数据集指标可能是关键之一。
3)感官差距和语义差距:由于感官限制,现实世界中的对象和数据之间存在感官差距,例如。 部分观察、遮挡和稀疏点采样。 语义差距意味着人们基于可能超出数据提供的知识来理解对象,而机器却没有。 例如,一棵树可以在其笔直的树干上进行测量,从目前的数据外观来看,它看起来非常类似于一根杆子。
此外,自行车和摩托车的种类很多,从小到大,感官数据在功能分类上可能无法区分,同一功能类别的物体在不同国家/地区的外观可能有很大差异。 这些感官和语义上的差距给开发数据集共享的通用类别列表带来了很大的困难,这需要社区层面的科学研究。

六、 结论

在这项研究中,我们进行了一项综合调查,以寻求以下问题的答案:“我们是否大量需要 3D LiDAR 数据用于语义分割?”以下研究得到解决。 首先,对主要的 3D LiDAR 数据集进行广泛审查,然后对三个代表性数据集进行统计分析,以深入了解数据集的大小、多样性和质量,这些是训练深度模型的关键因素。 上述研究的主要发现是:

1)由于 3D LiDAR 数据的空间分布不均匀,可以在相同的物体上扫描大量的点,带来的新信息很少,并且大部分数据点属于 传感器视点附近的物体,例如 道路,因此数据集非常长尾。
2)场景可能非常多样化,与地理位置没有直接关系。 现有的 3D LiDAR 数据集仅反映了非常小的一组真实世界场景,而它们表现出内部数据集多样性不足,而跨数据集差异很大。
3)由于领域差距较大,在训练中混合多个数据集可能无法提高模型的准确性,在具有较大领域差距的数据集上测试模型也可能导致性能显着下降。
其次,对 3D 语义分割方法进行了有组织的调查,重点关注使用深度学习技术的最新研究趋势的主流,然后对解决数据饥饿问题的现有努力进行系统调查。 最后,对剩余问题和未解决的问题进行了深入的讨论,从而引出了未来工作中的潜在主题。
对于复杂现实世界中的机器人和自动驾驶应用,数据饥饿可能始终存在。 一方面,重要的是开发依赖于不太精细的注释数据进行训练的方法,并且面对稀有/看不见的对象,当模型不确定时要意识到这一点更为重要。 另一方面,需要度量来衡量数据集/场景的域差距,这需要更有效地指导数据集生成和模型测试。
数据集共享也需要对类别列表进行一般定义,这需要通过国际合作进行科学研究。

你可能感兴趣的:(毕业设计三维点云,深度学习,人工智能,计算机视觉)