我们首先对3D数据进行了详细介绍,深入解释了点云,以便读者理解,并提供了用于点云分类的数据集及其获取方法。
我们总结了最近发表的关于点云分类的研究综述,基于此补充了最新研究方法。这些方法根据其特点分为四类,包括基于多视图的、基于体素的、基于点云的方法和基于多形态融合的方法。然后将点云方法细分。
我们根据它们的分类特点,讨论了各类方法的优势和局限性。这种分类更适合研究人员根据实际需求探索这些方法。
我们提供了方法的评估指标和性能比较,以更好地展示各种方法在数据集上的性能,然后分析了该领域的一些当前挑战和未来趋势。
4.3D数据
A.3D数据表示
3D数据有各种表示形式,例如点云、网格和体素。
点云:点云本质上是在3D空间中绘制的大量微小点的集合,如图1(a)所示,它由使用3D激光扫描仪捕获的大量点组成。这些点可以表达目标的空间分布和表面特征。点云中的每个点包含丰富的信息,例如:三维坐标(x、y、z)、颜色信息(r、g、b)和表面法向量等。
网格:3D数据也可以用网格网格表示,可以视为建立点之间局部关系的点集。三角网格,也称为三角面片(如图1(b)所示),是描述3D对象的常用网格之一。一个切片的点和边的集合称为网格。
体素:在3D对象表示中,体素也是一种重要的3D数据表示形式,如图1(c)所示,体素擅长表示非均匀填充的规则采样空间,因此,体素可以有效地表示具有大量空白或均匀填充空间的点云数据。通过将点云数据进行体素化,有利于提高数据计算效率并减少对随机存储器的访问,但是点云数据的体素化不可避免地会带来一定程度的信息丢失。
多视图:多视图图像(如图1(d)所示)也是点云数据的表示形式,它源自单视图图像,是将3D对象渲染为在特定角度下的多个视点的图像。挑战主要在于透视和透视融合的选择。
B.点云数据存储格式
点云有数百种文件格式可用,不同的扫描仪会以许多格式生成原始数据。点云数据文件之间的最大区别在于使用ASCII和二进制。二进制系统直接将数据存储在二进制代码中。常见的点云二进制格式包括FLS、PCD、LAS等。其他几种常见文件类型可以同时支持ASCII和二进制格式。其中包括PLY、FBX。E57以ASCII和二进制代码存储数据,并将许多ASCII和二进制的优点结合在一个文件类型中。以下是一些常用的点云数据存储格式:
Las:las格式主要用于存储LIDAR点云数据,本质上是一个二进制格式文件。LAS文件由三部分组成:头文件区(包括点总数、数据范围、每个点的维度信息)、可变长度记录区(包括坐标系、额外维度等)、点集记录区(包括点坐标信息、R、G、B信息、分类信息、强度信息等)。las格式考虑到LIDAR数据的特点,结构合理,易于扩展。
Ply:PLY的全称是PolygonFileFormat,受obj启发,专门用于存储3D数据。PLY使用名义上的平面多边形列表来表示对象。它可以存储包括颜色、透明度、表面法向量、纹理坐标和数据置信度在内的信息,并且可以为多边形的前后两侧设置不同的属性。该文件有两个版本,一个是ASCII版本,一个是二进制版本。
E57:E57是用于点云存储的供应商中立文件格式。它还可以用于存储激光扫描仪和其他3D成像系统生成的图像和元数据信息,是一个使用固定大小字段和记录的严格格式。它使用ASCII和二进制代码保存数据,并提供了ASCII的大部分可访问性和二进制的速度,可以存储3D点云数据、属性、图像。
PCD:PCD是PointCloudLibrary的官方指定格式。它由头文件和点云数据两部分组成。它用于描述点云的整体信息。它有两种数据存储类型,ASCII和二进制,但PCD文件的头文件必须使用ASCII编码。PCD的一个好处是它很好地适应了PCL,与PCL应用程序相比,性能最高。
C.3D点云公共数据集
ModelNet40:该数据集由普林斯顿大学的视觉和机器人实验室开发。ModelNet40数据集包含合成CAD对象。作为最广泛使用的点云分析基准,ModelNet40因其多样的类别、清晰的形状和良好结构的数据集而受欢迎。该数据集包含40个类别的对象(例如飞机、汽车、植物、灯具),其中9843个用于训练,2468个用于测试。相应的点是从网格表面均匀采样的,然后通过移动到原点并缩放到单位球来进一步预处理。
ModelNet-C:ModelNet-C集合包含185,000个不同的点云,是基于ModelNet40验证集创建的。这个数据集主要用于测试3D点云识别的损伤鲁棒性,其中包括15种损伤类型和每种损伤类型的5种严重程度,例如噪声、密度等。有助于了解模型的鲁棒性。
ModelNet10:ModelNet10是ModelNet40的一个子集,该数据集仅包含10个类别,分为3991个训练和908个测试形状。
SydneyUrbanObjects:该数据集收集于悉尼中央商务区,包含各种常见的城市道路物体,包括631个类别为车辆、行人、标志和树木的扫描对象。
ShapeNet:ShapeNet是由斯坦福大学、普林斯顿大学和芝加哥丰田技术研究所的研究人员开发的大型3DCAD模型仓库。该仓库包含超过3亿个模型,其中22万个模型被分类为3135个类别,使用WordNet上下位关系排列。ShapeNetCore是ShapeNet的一个子集,包括近51,300个独特的3D模型。它提供了55个常见物体类别和注释。ShapeNetSem也是ShapeNet的一个子集,包含12,000个模型。规模较小,但覆盖面更广,包括270个类别。
ScanObjectNN:ScanObjectNN是一个由2902个3D对象组成的真实世界数据集,分为15个类别,由于数据集中的背景、缺失部分和变形等因素,这是一个具有挑战性的点云分类数据集。
5.基于深度学习的点云分类方法
A.基于多视图的方法
基于多视图的方法利用多个视角的信息来描述和识别3D形状。这种方法的优势在于可以从不同的角度获取丰富的特征信息,从而提高了形状识别的准确性。然而,基于多视图的方法在处理大规模场景和利用3D数据的固有几何关系方面仍然存在挑战。例如,在将多个视图特征转换为全局特征时,会忽略其他非最大元素的信息,导致信息丢失。因此,改进基于多视图的方法以充分利用信息,并解决大规模场景和几何关系的挑战是未来研究的方向。
B.基于体素的方法
C.基于点云的方法
局部特征聚合
基于卷积的方法
基于卷积的方法将传统的卷积神经网络(CNN)扩展到处理不规则的三维点云数据上,是处理点云分类的重要方法。这些方法主要包括以下方面的研究:
MonteCarloIntegrationConvolution:将卷积看作蒙特卡洛积分来处理,如MCCNN。
SpatialPoolingConvolution:使用空间池化来对点云进行卷积,例如DNNSP。
HierarchicalConvolution:通过层级结构进行卷积操作,例如SpiderCNN。
这些方法的设计旨在有效地处理点云的不规则性、稀疏性和无序性,从而提高点云分类的准确性和效率。
基于图的方法
基于图的方法利用图神经网络(GNN)等技术处理点云数据。这些方法主要包括以下几种类型:
图卷积网络(GCN)优化:GCN是对CNN的优化,能够在半监督分类任务中表现良好。一些方法对GCN进行了改进,如使用覆盖感知网络查询(CAGQ)提高空间覆盖率,并简化网络模型以解决梯度消失问题。
边缘条件卷积(ECC)网络:ECC网络可应用于任何图结构,并能够捕获图中点之间的关系,有助于图像分割等任务。
动态图CNN(DGCNN):DGCNN通过边缘卷积(EdgeConv)网络模块提取点云的局部几何特征,保持排列不变性,对于3D识别任务具有重要意义。
多级图卷积网络(GCN):这些网络能够分层聚合单视图点云的形状特征,有助于编码对象的几何线索和多视图关系,生成更具体的全局特征。
邻域图滤波器:这种方法使用邻域图滤波器提取特征空间和笛卡尔空间中的邻域特征信息和空间分布信息,有助于更好地理解点云数据。
基于图的方法能够有效地处理点云数据,提取特征并解决分类、分割等任务,为点云分析领域的研究提供了重要的技术支持。
基于注意力机制的方法
点注意力变换器(PAT):使用高效的Group-ShuffleAttention(GSA)代替昂贵的Multi-HeadAttention(MHA),从而减少计算成本。
局部空间感知(LSA)层:学习局部区域的空间关系,生成空间分布权重,执行空间独立操作,从而提取局部信息。
GAPointNet:结合自注意力机制和图卷积,学习局部信息表示,并使用并行机制来聚合不同层级的注意力特征,从而更好地提取局部上下文特征。
全局特征聚合
基于Transformer的方法
基于Transformer的方法在点云处理领域取得了显著的进展。这些方法通过将点云作为输入,并利用Transformer结构中的自注意力机制,实现了对点云的全局特征建模和关联学习。具体而言,这些方法包括以下关键点:
PointTransformer:Engel等人提出的PointTransformer直接操作无序和非结构化的点集。它使用学习分数的焦点模块来提取局部和全局特征,并通过排序网络对局部特征进行排序,最后通过局部全局注意力关联局部和全局特征。
VisualTransformer(VT):Wu等人的VT将Transformer应用于基于特征图的图像标签,更高效地学习和关联稀疏分布的高级概念。
PointCloudTransformer(PCT):Guo等人的PCT是一种基于Transformer的点云学习框架,通过偏移注意力和归一化细化实现了对点云的全局特征建模,具有置换不变性。
Point-BERT:Yu等人的Point-BERT将BERT的概念推广到点云,通过局部块和点云标记器生成局部信息的离散点标签,实现了对点云的建模和学习。
这些方法利用Transformer的优势,在点云处理中取得了令人瞩目的成果,为点云的全局特征建模和关联学习提供了新的思路和方法。
基于全局模块的方法
基于全局模块的方法旨在处理点云中的全局特征聚合问题。这些方法通过设计特定的模块或网络结构,能够有效地捕获整个点云的全局信息,从而提高了点云处理任务的性能。一些方法包括:
全局模块:该模块计算某个位置的响应,作为所有位置特征的加权和,从而聚合全局特征。
PointASNL:该端到端网络结合了自适应采样模块(AS)和局部非局部模块(L-NL),可以有效地处理嘈杂的点云。AS模块通过推理更新点的特征,并通过重新加权初始采样点来缓解偏置效应。L-NL模块由点的局部和非局部单元组成,降低了学习过程对噪声的敏感性。
DeepGCN:这是一种深度GCN架构,采用了一些CNN方法来支持。它包括GCN骨干模块用于输入点云特征转换,融合模块用于生成和融合全局特征,以及MLP模块预测模块用于预测标签。DeepGCN的设计旨在解决GCN训练中梯度消失的问题,使得可以训练更深层的GCN网络。
CurveNet:这是一种基于聚合假设曲线的方法,有效地实现了曲线的聚合策略。CurveNet的网络结构由一系列构建块组成,其中包括曲线分组运算符和曲线聚合运算符。
基于RNN或LSTM的方法RNN(循环神经网络)
D.多态融合方法
6.评估
准确度(Acc)表示正确预测的样本数与总预测样本数的比率,是衡量整体分类准确性的指标。
精度(Pre)表示被预测为正类的真实正类的比例,是衡量分类器预测正类的准确性的指标。
召回率(Rec)表示被预测为正类的样本数与真实正类的总数的比率,是衡量分类器找出所有正类样本的能力的指标。
交并比(IoU)表示预测值与真实值的交集与并集的比率,是衡量两个集合重叠程度的指标。
除了上述指标外,还可以使用整体准确度(OA)、平均准确度(MA)和平均交并比(mIoU)等综合指标来评估方法的性能。这些指标可以帮助研究人员全面了解方法在不同数据集上的表现,并为进一步改进提供参考。
7总结与展望
在点云分类领域,深度学习方法不断创新,为3D应用带来新的可能性。本文综述了近年来基于深度学习的点云分类方法,包括多视图、体素、点云和多态融合等不同类型的方法。通过对比分析,可以看出各种方法在准确性、效率和适用场景等方面存在差异。
未来的研究方向包括提高准确性和效率的平衡、针对室外场景进一步优化方法、简化点云处理流程等。创新型方法的研究也是未来的重点,需要不断探索新的思路和技术。
总的来说,基于深度学习的点云分类方法在不断发展,未来有望取得更大的突破,为3D应用带来更多可能性。
原文标题:必看综述!中科院带你彻底了解基于深度学习的三维点云分类
长沙市望城经济技术开发区航空路6号手机智能终端产业园2号厂房3层(0731-88081133)