根据知网的一篇文章写的总结,详见我的资源:深度学习在点云分类中的研究综述_王文曦.pdf 这篇文章详细介绍了点云语义分割的发展概况。
正文开始
点云的语义分割的发展概况,先上图:
基于深度学习的分类方法
相比于传统算法,深度学习的优势在于无需人工 参与设计,能够实现自动学习大数据的特征[67]。本章 根据点聚合的方式将基于深度学习的点云分类算法划 分为基于投影的点云分类方法和基于原始点云的分类 方法两个大类,并选取具有代表性、性能优越的网络 结构进行展示。
1、基于投影的方法
典型的卷积神经网络是在规则、有序以及结构化 的二维图像上执行的运算。对于不规则,非结构化的 点云数据,将其投影到特定的预先设置的模式后进行 点云特征的提取。本节通过对文献的整理与总结,将 该类别下的方法进一步细分为两类:
- 基于体素网格的方法
- 基于多视图的方法。
(1)体素网格 借鉴卷积神经网络在二维图像语义标注的先验 知识,以及体素与图像数据的组织结构的相似性,学 者们对于将体素化的非结构性点云数据应用于三维卷 积神经网络的模型展开研究。
点 云 的 体 素 化 即 利 用 占 用 网 格 ( Volumetric Occupancy Grid)将环境状态表示为三维网格。最早 的模型是 Maturana[16]等为充分利用点云信息和有效 处理大量点云数据提出的 VoxNet 模型,该模型集成了 体积占用网格与 3D 卷积神经网络。VoxNet 网络参数 少,形式简洁,可以通过多层叠加生成全局标签对点 云分类。Spherical CNNs将 3D 网格投影到封闭球体上, 每个点向球的中心点发出射线,收集到射线与物体模型的交点处距 离与曲面角度信息,由此来捕获投影。作者提出了球 相关(Spherical Correlation)与广义傅里叶快速变换 来提取旋转不变的全局特征。Spherical CNNs 证实了 球面卷积应用于点云分类的有效性。虽然以上方 法展现出解决点云数据无序性和非结构性问题的潜力, 但是仍存在计算时占用内存过大的问题。
为解决点云的稀疏性与庞大的计算开销,学者们 尝试用灵活的八叉树结构代替分辨率固定的体素网格, 例如 OctNet和 OCNN网络等。OctNet 采用混合网 格-八叉树结构对空间分层划分,各个节叶点对应存储 池化要素。该方法不仅避免了冗余的计算和不必要的 内存消耗,而且在保障分辨率的同时能达到更深层次 的网络。Wang等人受到OctNet的启发提出了OCNN, 在 3D CNN 中提取八叉树中包含的特征,一定程度上 减轻计算负担,提高计算效率。索引结构与八叉树类 似的 Kd 树结构也被应用到分类模型中,经典方法 Kd-Net利用 Kd 树结构以从粗到精的方式对点进行 分组。由于网络不依赖卷积结构,因此可有效避免不 良的缩放行为。
但点云存在旋转时会间接影响网络效
果,且将原始点云数据转换成 Kd 树的形式,增加了 计算负担。采用灵活合适的索引结构虽然能够减少计 算时产生的内存消耗,但是训练过程不能充分利用局 部 几 何 结 构 并 且 体 素 的 边 界 会 影 响 计 算 结 果 。 基于网格与传统 CNN 提出 MeshCNN, 以边为单位定义卷积,采用折叠特征值小的边的方式 优化池化部分,自动简化了分类任务。该方法能够捕 捉重要的特征的同时丢弃冗余特征。
上述方法从不同角度为体素化点云在处理过程
中遇到的困难提供解决方案。体素化算法虽然取得了 一定的成果,但是存在丢失重要信息,存储和计算开 销大,适用性不高等弊端。相信伴随科学技术的发 展,存储和计算方法的升级,该类算法也会进一步被 优化。
(2)多视角 早期学者从多个视角对点云投影,使用卷积神经 网络对投影后的 2D 影像进行后续加工。多视图 CNN(Multi-view CNN ,MVCNN)方法的实质是将点云 或者 3D 形状渲染成视图,利用传统的图像卷积进行 特征学习。 首先根据不同情况提出两种相机 设置方式,在不同视角下完成渲染图;将多个视图的 特征信息通过卷积层和池化层整合成一个单一的、紧 凑的 3D 形状描述符,将聚合后的特征输入完全连接 层得到分类结果,具体流程见图。 基于多视图的处理方法中,差异大的渲染图对形 状识别更加有利。为获得更具判别性的信息,首先对不同视图下提取的视觉描述符分组,然后 学习视图间的信息特征并生成组级别描述符,最后通 过加权生成形状级别描述符用于分类任务。 尽管多视图卷积神经网络能够在多视角下获得 三维物体的描述,但在相机设置位置与角度时容易出 现遮挡情况,视图不能得到有效处理将直接影响训练 结果。
基于投影的方法本质上是将非结构化的点云转换 为规则的二维表示的过程,其弊端在于需要计算额外 的局部几何特征,例如平面度、粗糙度以及球度等。 另外,无论是对点云规则化还是从多视角的角度进行 处理,在实现 3D 到 2D 的转换过程中会造成点云信息 的丢失。
2 、基于原始点云的方法
上节中介绍到基于投影的点云分类策略存在计 算复杂度较高,不能对三维点云数据的特性加以利用 等缺点,为此,学者们尝试直接从原始点云中学习特 征信息。本节将从以下四个方面对该类方法分析:(1) 多层感知机;(2)卷积神经网络;(3)图卷积神经网 络;(4)注意力机制。 (1)多层感知机(MLP) 开创性地提出将深度学习模型直接应 用于原始点云的算法—PointNet。它为解决点云的 无序性、旋转不变性以及置换不变性提供了新思路: 通过 MLP 学习单个点的特征并用对称函数编码全局 信息解决点云的无序性问题;采用三维的空间变换网 络(Spatial Transformer Networks,STNs)解决点云旋 转不变性的的问题;在分类时对输入点云进行几何变 换和特征变换,采用最大池聚合点特征解决点云置换 不变性的问题。
pointnet和pointnet++可以看我的另一篇博客,有详细分析: 点云上的深度学习及其在三维场景理解中的应用————PointNet(一)
模型的缺陷在于提取点云特 征时只捕捉到单个点和全局点的信息,无法获取完整 的局部特征信息,且不能充分考虑邻近点的交互关系。 这导致 PointNet 对细粒度模型的分类能力较差,在复杂场景中适用性有限。 由于[30]无法解决局部性的结构问题,继而 提出优化网络 PointNet++,框架如图: 该模型在方法[30]的基础上引入由一系列抽象层组成的多 层次结构,每一层都分为采样层、分组层和特征提取 层三部分。PointNet++提高了特征提取的精度,能够 有效解决划分局部点云和提取点云的局部特征两个问 题,并且可以为大场景提供更高级别的特征。但点间 的联系依旧没有充分的学习。为此研究者们基于 PointNet++的训练框架提出了更多的分类网络,如: Momenet、 So-Net、 结 构 关 系 网 络 (Structural Relation Network,SRN)和 PointWeb:
- Momenet通过对点云坐标添加多项式函数来 提高网络训练的能力,网络能够以高时效、低消耗的 优势获得高精度的分类结果。
- So-Net[33]利用自组织特
征映射(Self-Organizing Feature Mapping,SOFM)分析 点云的分布情况,以此实现点云分类的置换不变性网 络。 - So-Net 结构简单,有良好的并行性,训练速度快, 在分类任务中效果良好。
- Duan等人提出了 SRN 来 学习点间的交互关系。
- Zhao等人从上下文信息机制 中受到启发,提出了 PointWeb 网络。通过局部的上下 文信息,使用自适应特征调整模块(Adaptive Feature Adjustment,AFA)学习点之间的局部特征。
为了有效解决使用 3D 传感器或者重建算法处理
原始点云后存在的异常值和噪声 为此提出PointASNL。网络由自适应采样模块(Adaptive SampLing,AS)及局部-非局部模块(Local-Nonlocal,L-NL)两部分组成。AS 模块能减弱噪声和异常值,有利于点 云的特征学习。L-NL 模块为点云的分类和分割处理提 供准确且稳定的特征信息。其中,利用 L 模块学习局 部特征;利用 NL 模块融合全部采样点的局部特征从 而获得全局特征。
(2)卷积神经网络 卷积神经网络作为最基本的深度学习模型之一, 在目标检测、语义分割、边缘检测等大型图像处理研 究方面表现出色。点云的无序性使其与 2D 图像卷积存在差异。
A-CNN 在大型场景的应用中性能 稳定。图 6 是 A-CNN 中环形卷积的框架图。 2D图像中各点具有固定位置,而点云的位置顺序则存在 很多种可能,如下图7所示。对不同位置点云进行卷积算, 结果会受点云的输入顺序的影响,从而影响卷积的结 果。PointCNN[41]避免了点云的输入顺序对卷积操作的 阻碍,网络中定义的? -变换卷积算子能将具有特定 输入顺序的数据转换为与顺序无关的特征。网络使用?算子转化输入点云坐标,通过 MLP 学习特征信息 后使用?变换矩阵进行特征处理。在分类网络中采用 膨胀卷积思想保持网络深度以及接受场的增长率。 PointCNN 证实了局部结构的开发对点云分类网络的 重要性。但实际上? -变换矩阵和预设结果相差仍有 差距,网络需要进一步改进。 与 2D 图像去掉 RGB 信息后无法被识别的情况 不同,点云仅保留位置信息也可以被有效识别。即点 云中相邻点的空间几何信息可以表达隐含的形状信息。 据此,Liu 等人提出了对点的几何关系编码的卷积算 子 RS-Conv,设计基于几何关系来学习 3D 形状关系 的卷积神经网络 RS-CNN。利用 RS-Conv(图 8) 对点云子集进行卷积计算后,将低维信息代入神经网 络中映射成高维信息,推理点云的空间信息特征,实 现形状上下文的感知,最后通过全连接层得到全局特 征后进行分类处理。结果证明,RS-CNN 具有良好的 目标识别功能。 模型均以 PointNet 中 MLP 的一维卷积的 思想来进行改进,PointConv是在点云上建构深层卷 积网络,用 MLP 学习近似 3D 的卷积核,对点云特征 密度加权。该网络便于操作,提高了训练时效与精度 的同时减轻了计算机存储压力。类似地,核点卷积 (Kernel Points Convolutional,KPConv)也是将卷积自 然推广到点云数据中,不同之处在于卷积计算和核转 换矩阵的方式。KPConv 提供了可变形卷积算子,通 过线性差值得到核转换矩阵,卷积的权重决定了到核 点的欧氏距离。Boulch A 提出将卷积核分为空间和特 征部分的 ConvPoint,选择卷积核空间部分的任意 位置,通过多层感知机训练加权函数。
方向约束全卷积网络(D-FCN): 将原始点云三维坐标和强度值作为模型的输入。利用 方向约束点卷积(D-Conv)模块从投影的二维感受野中 提取三维点集的局部特征。基于 D-Conv 模块进一步 设计了具有下采样和上采样模块的多尺度全卷积神经 网络,以实现多尺度点特征学习。D-FCN 不仅可以处 理任意大小的输入点云,而且可以通过端到端的方式 直接预测所有输入点的语义标签。但模型中采用具有 规则感受场的标准卷积核,不能建立点之间的结构联 系,也不能考虑点密度的变化。
为解决三维点云密度分布不均匀,不能有效识别 细粒度的局部结构问题。DANCE-NET引入了一种 密度感知卷积模块,使用逐点密度重新加权卷积核的 可学习权重,为逼近非均匀分布的三维点集上的连续 卷积提供可能。
(3)图卷积神经网络 现阶段基于点的分类方法都是将整体点云作为 输入,虽然它们都在标准基准上实现了理想的检索精 度,但却忽略海量点云的冗余信息。图神经网络(Graph Neural Networks ,GNN)的概念最早由 Gori等提出, Scarselli 等人对其完善。Bruna等人(2013)首次 提出基于谱图论开发的非欧式域的卷积神经网络。 Kipf等人(2016)在前人的基础上正式提出图卷积 神经网络(Graph Convolution Networks,GCN)。 GCN实际属于 CNN 的优化,通过提取图数据的特征,在 半监督分类任务中效果良好。M. Simonovsky受到边 缘标签应用的启发,提出了可以应用于任意图结构的 边缘卷积网络(ECC)。在进行加权平均的卷积操作 时,ECC 的权重取决于节点间的边权。ECC 将点云数 据的点视作图结构的顶点,使用最大采样法聚合顶点 信息。但将点云改变为图结构的过程中需要大量计算, 导致分类结果并不理想。KCNet通过图卷积沿边缘 聚合点云局部特征。利用图或者树的结构,将局部区 域中无序的点云变得有序化。由于点云属于非线性结 构,使 KCNet 构建图或树的边缘更加繁琐。
网络可以在保持置换不变性的基础上 捕捉局部几何信息,但由于忽略了点之间的向量方向 导致丢失了部分信息。并且 DGCNN 中的空间转换模 块处理点云时需要大量参数,提高了模型的复杂度。 Zhang[51]等人进一步优化 DGCNN,提出链接动态图卷 积神经网络(LDGCNN)。首先取消需要过多参数的 空间变换网络,通过添加跳跃链接聚合不同层的动态 图的层次特征,学习特征中有效的边缘矢量特征。该 网络能够有效避免梯度消失的问题。 Point GNN每一层网络都在循环使用图的边, 因此可以避免不必要的点云分组与采样。Gird-GCN[53] 创新性提出能够降低理论时间复杂度和提高空间覆盖 率的模块:覆盖感知的网格查询模块(Coverage-Aware Grid Query,CAGQ)与网格内容聚合模块(Grid Context Aggregation,GCA)。
Li 等人采用点卷积(Pconv)和点池化(Ppool)方法 学习点云的高层特征,结合图结构提出点云特征学习 网络 PointVGG,并将其应用于目标分类和局部分割。 图 9 为 PointVGG 网络架构, 通过 Pconv 层逐步放大感 受野获取局部几何信息,利用 Ppool 层解决点云的无序 性问题。与直接将局部几何信息聚合成向量的对称函 数不同,Ppool 通过逐步聚集点获得更详细的局部几何 表示。Wang 等人[55]从点云中提取信息紧凑丰富的 Reeb 图,分别用 Reeb 图和 KNN 图捕捉输入点云的上 下文信息。网络使用深度图卷积进行点云过滤,可以 取得良好的分类效果。 (4)注意力机制 注意力机制的工作原理是使系统关注主要信 息,忽略次要信息。受到引入注意力网络对二维图像 的分类方法[的启发,且该机制具有固定排列和不 依赖于点间联系的特性,能符合点云处理的要求,因 此许多学者将注意力机制引入点云处理的算法研究。 基于点云推理的点注意力变压器 (PAT),采用组混洗注意力机制(Group Shuffle Attention, GSA)代替并行注意力机制建模点之间的关系。此外, 网络中还包括 GSA 和 Gumbel 子集采样(Gumbel Subset Sampling, GSS)两部分:GSA 模块可以更好的 挖掘点之间的特征关系,利用 GSS 完成代表性点子集 的选择。 受图卷积知识的启发,有学者将图卷积技术与注 意力机制结合提出了新的分类策略。Chen 等人基于 自注意力机制 (self-attention)提出了 GAPNet,通过在 堆叠的 MLP 层中嵌入图注意力机制来学习原始输入 点云的局部语义信息,使用并行机制(multi-head attention)聚合生成来自不同 GAPLayer 层的注意力特 征。网络中的 GAPLayer 和注意力层可以集成嵌入到 现有的训练模型中,以有效提取无序点云的局部几何 特征,提高模型性能。Wang[58]等人通过引入图注意力 卷积构建 GACNet,网络中的卷积核的形状可以自适 应不同对象的结构。GACNet 在关注局部的同时也考 虑 到 密 度 分 布 和 全 局 上 下 文 关 系 。 清 华 学 者 将 Transform 概念引入点云处理,提出了一种参数少、精 度高的 PCT 网络,见图 10。网络首先将输入点云 的特征语义编码至更高维的特征空间中,然后连接经 历过四层注意力层(包括自注意力模块和偏置注意力 模块)的局部几何信息,获取不同尺度下的语义相似 度,最后聚合点云的局部和全局特征完成分类与分割 的任务。 基于全局-局部图注意力机制的卷积神经网络 (GACNN)中的全局注意模块用来学习点云的空间 分布状态,以获取全局上下文信息特征。网络中的局 部注意模块包括边缘关注和密度关注两部分: 边缘关注模块通过学习邻近点的局部空间布局,动态调整核 权值,以适应点云的结构; 密度注意模块能够解决非均匀采样点的密度不均问题。 GACNN 可以捕捉多尺度的点云特征,提高机载点云的分类精度。
基于全局-局部图注意力机制的卷积神经网络 (GACNN)[60]中的全局注意模块用来学习点云的空间 分布状态,以获取全局上下文信息特征。网络中的局 部注意模块包括边缘关注和密度关注两部分:边缘关 注模块通过学习邻近点的局部空间布局,动态调整核 权值,以适应点云的结构;密度注意模块能够解决非 均匀采样点的密度不均问题。GACNN 可以捕捉多尺 度的点云特征,提高机载点云的分类精度。
3、现有方法结果对比与分析
在常见的三维数据集中 ModelNet10/40 的应用最多。本文中提及到的算法在 该数据集下性能都较为优越,基本在 85%以上,说明 现有的算法对细粒度的物体有较好的识别能力。选择 ModelNet10 数据集的算法中,平均精度与总体精度除 3DshapeNets 其余算法都高于 90%。表现出色的网络 是 Gird-GCN(MA 为 97.4% , OA 为 97.5%) 和 A-CNN(MA 为 95.3%,OA 为 95.5%)。采用双线性池 聚合局部特征卷积的 MHBN 网络在 ModelNet40 数据 集中总体精度达到 94.91%,在所有方法中精度最高。 基于原始点云的分类方法中总体精度大多超过 90%, 该类别下优化 CNN 的方法表现稳定,其中 RS-CNN 性能最优,总体精度在 93.6%。 PointNet++,PointCNN,D-FCN,Dance-Net, DGCNN,GACNET 和 GACNN 等方法均选用了 ISPRS 开发的基准数据集,总体精度全部超过 80%,物体的 分类结果接近于真实场景物体。其中 Dance-Net 使用 逐点密度重新加权卷积核的可学习权重,达到逼近非 均匀分布的三维点集上连续卷积的效果,训练结果最 优,总体精度为 83.9%,分类结果见图 11。在 2019 年 Kpconv,D-FCN,DGCNN,GACNET 以及 GACNN 表现都很出色,图 12 展示了以上算法的分类结果。最 新提出的 GACNN 网络性能优越,利用全局上下文信 息以及局部注意模块学习点云的多尺度信息特征。在 电力线、不透水面两种类别表现最出色。由于 ScanNet 数据集类别较多,PointNet++与 PointCNN 分类效果不 理想,平均精度与总体精度普遍偏低。 从点云分类的精确度角度分析,不同方法各有优 缺点。总体上看,基于点的特征提取结果优于基于投 影的特征提取。原因主要在于点云数据本质上是物体 表面点的集合,单单进行投影转换会造成不必要的计 算。点云的体素化虽然可以将无序的点云结构化,但 是将体素网格作为输入时,低分辨率的体素会导致信 息的丢失,高分辨率的体素会导致计算机超负荷计算。 多视图的方法尽管在性能方面已经优于传统机器学习 的方法,但是分类精度与视点的位置与角度有关,一 定程度上仍依赖于人工设置。直接输入原始点云数据 可以保留信息的完整性,算法性能良好,可应用于多 种场景,该类方法成为现在热门研究方向。其中,基 于优化卷积神经网络与图卷积的算法虽然需要较大的 计算和存储开销,但是网络性能优于同时期的方法。
4、结束语
深度学习的 3D 点云研究作为一个较新的研究领 域正在快速的发展。本文从不同角度的点云特征提取 方法论述三维点云分类的发展过程,重点介绍基于深 度学习的点云分类的研究现状。回顾深度学习技术在 点云分类任务中的应用情况可以发现,该类模型是借 鉴了图像领域的深度学习模型,针对点云的无序性、 稀疏性、非结构化和信息有限性等特点进行改进优化。 本文将此类方法分为基于投影的分类方法和基于原始 点云的分类方法,不同类别下的方法各有优劣。基于 投影的方法在简单场景中具有较强的实用性,但是转 换点云的过程中损失了大量有效的深度信息。直接处 理原始点云虽然在卷积过程需要较高的计算成本,但 是通过评估与分析现有的分类策略,证明了直接处理 点云数据在分类任务中更具优势,能够有效提升点云 分类的精度。尽管深度学习技术可以自动化提取点云 特征,且在点云研究中取得不错的成绩。但不论是基 于投影的算法还是基于原始点云的算法都存在值得进 一步探讨的问题,例如:如何使网络模型兼顾高精度 与高效率;如何更加充分地、灵活地运用点与点之间 的联系等。深度学习应用于点云方面的研究正在不断 被推进,在此期待更多的创新方法的提出。
|