基于点云-体素的几何自适应点云分类和分割方法及装置
未命名
07-23
阅读:137
评论:0
1.本发明涉及计算机视觉技术领域,特别是指一种基于点云-体素的几何自适应点云分类和分割方法及装置。
背景技术:
2.近年来,基于点云数据的分析和处理在三维理解领域变得越来越火热,吸引了学术界和工业界众多研究人员的注意。不同于像素规则排布的二维图像,点云由三维空间中散乱、不规则分布的点组成,使得人们无法将发展成熟的二维卷积网络直接应用于点云的分析和处理。同时,点云稀疏和无结构化的特性也对三维卷积网络的使用带来了阻碍和挑战。基于此,人们开始直接基于原始点云进行研究,并逐渐产生了很多具有代表性的工作。
3.在近几年的工作中,人们研究的重点是通过使用卷积、图和注意力等运算来设计精细化的局部聚合算子,用于提取点云中的局部几何信息。这些精细化的局部聚合算子虽然取得了不错的效果,但结构设计复杂,运算量大,对不同的点云没有自适应性。而且,近几年的工作表明,精细化设计的局部聚合算子对于点云分析网络的性能提升逐渐趋于饱和,这表明更加复杂的局部聚合算子并不能为网络的性能带来大幅度的提升。
技术实现要素:
4.本发明实施例提供了基于点云-体素的几何自适应点云分类和分割方法及装置,能够提高点云形状分类和部件分割的精度并具有高效快速的特点。所述技术方案如下:
5.一方面,提供了一种基于点云-体素的几何自适应点云分类和分割方法,该方法应用于电子设备,该方法包括:
6.构建基于体素的深度卷积算子和基于点的位置自适应池化算子;
7.根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块,自适应地提取和融合输入点云中不同尺度的特征;
8.根据构建的特征提取模块,构建基于点云-体素的几何自适应网络;
9.输入点云分类数据集和点云部件分割数据集对构建的几何自适应网络进行训练,利用训练好的几何自适应网络实现点云的形状分类和部件分割任务。
10.进一步地,构建的基于体素的深度卷积算子,用于将点云离散化为体素,使用三维深度卷积对体素进行卷积运算,对计算得到的体素特征反体素化,得到点云中的粗粒度局部特征。
11.进一步地,所述将点云离散化为体素,使用三维深度卷积对体素进行卷积运算,对计算得到的体素特征反体素化,得到点云中的粗粒度局部特征包括:
12.假设一输入点云其中,表示点云的坐标,表示点云的特征,表示实数集,n表示点云中点的数量,d表示每个点特征的维度,将所述点云转换到以质心为原点的局部坐标系,将所有点的坐标除以点到原点的最远距离,从而将所有点归一化到一个单位圆内,对所有点的坐标进行缩放和平移,使其处于[0,1]区间内;其
中,归一化后的点云表示为
[0013]
将归一化后的点云离散划分为体素;其中,经过离散化操作,点云特征转化成了体素特征r表示体素的分辨率;
[0014]
使用三维深度卷积对体素特征进行特征提取,对提取得到的体素特征进行反体素化处理,得到点云中的粗粒度局部特征
[0015]
进一步地,构建的基于点的位置自适应池化算子,用于将点云局部区域内邻域点和中心点的相对坐标和特征差值编码为权重,使用该权重对邻域点特征进行加权,将加权后的邻域点特征池化后作为中心点的特征,得到点云中的细粒度几何特征。
[0016]
进一步地,所述将点云局部区域内邻域点和中心点的相对坐标和特征差值编码为权重,使用该权重对邻域点特征进行加权,将加权后的邻域点特征池化后作为中心点的特征,得到点云中的细粒度几何特征包括:
[0017]
a1,对于点云中的一个点pi,使用k最近邻算法寻找它的k个邻域点pj,将邻域点与中心点的坐标和特征分别作差,得到邻域点和中心点的相对坐标
△
p
ij
和特征差值
△fij
;其中,pi为中心点,为中心点,表示中心点i的局部邻域;
[0018]
a2,将特征差值
△fij
映射为和相对坐标
△
p
ij
相同维度的特征向量
△
p
′
ij
:
[0019]
△
p
′
ij
=γ(
△fij
)
[0020]
其中,γ表示由两层多层感知器组成的编码器;
[0021]
a3,将特征向量
△
p
′
ij
与相对坐标
△
p
ij
拼接得到权重w:
[0022]
△
p
″
ij
={
△
p
′
ij
|
△
p
ij
}
[0023]
其中,|表示按通道维度拼接;
[0024]
a4,使用权重w对邻域点特征进行加权;
[0025]
a5,对加权后的邻域点特征进行池化后作为中心点的特征;
[0026]
a6,点云中的所有点都执行步骤a1-a5后,得到点云特征该点云特征包含点云中细粒度的几何信息。
[0027]
进一步地,所述根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块包括:
[0028]
将构建的基于体素的深度卷积算子和基于点的位置自适应池化算子进行并联,组合成具有点云和体素两个分支的基于点云-体素的特征提取模块。
[0029]
进一步地,所述基于点云-体素的特征提取模块,用于通过体素分支提取点云中的粗粒度局部特征,通过点云分支提取点云中的细粒度几何特征,将两个分支提取的特征进行相加融合,得到包含点云中不同尺度信息的融合特征。
[0030]
进一步地,构建的基于点云-体素的几何自适应网络包括:特征嵌入模块、多层pavd模块、特征聚合模块和检测头模块;其中,所述多层pavd模块为由多个pavd模块依次连接而成;pavd模块为基于点云-体素的特征提取模块;
[0031]
特征嵌入模块,用于将输入点云的低维坐标转化为高维特征;
[0032]
多层pavd模块,用于基于点云和体素两种表示方式对特征嵌入模块输出的高维点云特征进行特征提取;其中,所述pavd模块包括:体素分支和点云分支,点云分支使用基于
点的位置自适应池化算子提取点云中的细粒度几何特征,体素分支使用基于体素的深度卷积算子提取点云中的粗粒度局部特征,两个分支的特征通过逐元素相加实现特征融合;
[0033]
特征聚合模块,用于对各个pavd模块输出的融合后的特征进行进一步的融合;
[0034]
检测头模块,用于对特征聚合模块输出的点云特征进行检测,完成分类或分割任务,所述检测头模块由三层mlp组成,每个检测头中都加入了dropout层。
[0035]
一方面,提供了一种基于点云-体素的几何自适应点云分类和分割装置,包括:
[0036]
第一构建模块,用于构建基于体素的深度卷积算子和基于点的位置自适应池化算子;
[0037]
第二构建模块,用于根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块,自适应地提取和融合输入点云中不同尺度的特征;
[0038]
第三构建模块,用于根据构建的特征提取模块,构建基于点云-体素的几何自适应网络;
[0039]
分类分割模块,用于输入点云分类数据集和点云部件分割数据集对构建的几何自适应网络进行训练,利用训练好的几何自适应网络实现点云的形状分类和部件分割任务。
[0040]
一方面,提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现上述基于点云-体素的几何自适应点云分类和分割方法。
[0041]
一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现上述基于点云-体素的几何自适应点云分类和分割方法。
[0042]
本发明实施例提供的技术方案带来的有益效果至少包括:
[0043]
本发明实施例中,构建基于体素的深度卷积算子和基于点的位置自适应池化算子;根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块,自适应地提取和融合输入点云中不同尺度的特征;根据构建的特征提取模块,构建基于点云-体素的几何自适应网络;输入点云分类数据集和点云部件分割数据集对构建的几何自适应网络进行训练,利用训练好的几何自适应网络实现点云的形状分类和部件分割任务,这样,能够提高点云形状分类和部件分割的精度并具有高效快速的特点。
附图说明
[0044]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0045]
图1为本发明实施例提供的基于点云-体素的几何自适应点云分类和分割方法的流程示意图;
[0046]
图2为本发明实施例提供的基于点的位置自适应池化算子的工作流程示意图;
[0047]
图3为本发明实施例提供的基于点云-体素的几何自适应网络的结构示意图;
[0048]
图4为本发明实施例提供的基于点云-体素的几何自适应点云分类和分割装置的结构示意图;
[0049]
图5是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
[0050]
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0051]
如图1所示,本发明实施例提供了一种基于点云-体素的几何自适应点云分类和分割方法,该方法可以由电子设备实现,该电子设备可以是终端或服务器,该方法包括:
[0052]
s101,构建基于体素的深度卷积算子和基于点的位置自适应池化算子;
[0053]
本实施例中,构建的基于体素的深度卷积算子,首先将点云离散化为体素,然后使用三维深度卷积对体素进行卷积运算,最后对计算得到的体素特征反体素化,从而得到点云中的粗粒度局部特征;此过程的具体步骤可以表述如下:
[0054]
假设一输入点云其中,表示点云的坐标,表示点云的特征,表示实数集,n表示点云中点的数量,d表示每个点特征的维度,将点云转换到以质心为原点的局部坐标系,将所有点的坐标除以点到原点的最远距离,从而将所有点归一化到一个单位圆内,对所有点的坐标进行缩放和平移,使它们处于[0,1]区间内;其中,在对点云归一化的整个过程内,只涉及点云的坐标,而每个点的特征保持不变,因此归一化后的点云可以表示为
[0055]
将归一化后的点云离散划分为体素,具体做法是先统计每个体素内包含了哪些点,然后对这些点的特征求平均值,这个平均值就作为每个体素的特征,此过程可以表示为:
[0056][0057]
其中,表示体素(u,v,w)的特征,(u,v,w)表示体素的坐标,n
u,v,w
表示落在体素(u,v,w)内点的数量,表示点的坐标,r表示体素的分辨率,表示向下取整,γ为表征点是否属于体素(u,v,w)的符号函数,取值0或1为点对应的点云特征。
[0058]
经过离散化操作,点云特征转化成了体素特征
[0059]
使用三维深度卷积对体素特征进行特征提取;其中,深度卷积来源于深度可分离卷积,深度可分离卷积将传统的全卷积分解成两步去执行,分别是深度(depth-wise)卷积和点(point-wise)卷积,相比于全卷积,深度可分离卷积在不影响网络精度的情况下大大减少了卷积运算的参数量和计算量,提升了网络的运行效率;使用两层三维深度卷积来充当体素的特征提取网络,每个三维深度卷积层后都附加批归一化(batch normalization)层和relu非线性激活函数层,通过三维深度卷积,获取到点云中的粗粒度局部特征。
[0060]
由于后续需要将点云特征和体素特征相融合,必须将提取得到的体素特征转换回点云特征的表示形式,即点云的反体素化处理。在对点云体素化时,曾将多个点的特征相加取平均作为一个体素网格的特征,因此在反体素化时,需要进行插值,即将一个体素网格的
特征通过某种插值算法传播给多个点。常用的插值算法有最近邻插值、双线性插值和三线性插值,这里选择使用三线性插值算法,因为最近邻插值传播给邻域内每个点的特征是一样的,而点云中每个点的特征显然不应该是一样的,同时,体素处于三维空间,因此不适合使用双线性插值。反体素化完成后,体素特征变换回点云特征此特征包含点云中的粗粒度局部信息,其中,中的上标l表示局部(local)的意思。
[0061]
本实施例中,构建的基于点的位置自适应池化算子,用于将点云局部区域内邻域点和中心点的相对坐标和特征差值编码为权重,使用该权重对邻域点特征进行加权,将加权后的邻域点特征池化后作为中心点的特征,从而得到点云中的细粒度几何特征。
[0062]
本实施例中,为了更好地提取点云中的细粒度几何信息,需要充分利用点云的坐标。在现有工作的基础上,提出了基于点的位置自适应池化算子,首先将点云局部区域内邻域点和中心点的相对坐标和特征差值编码为权重,再使用该权重对邻域点特征进行加权,最后将加权后的邻域点特征池化后作为中心点的特征,从而得到点云中的细粒度几何特征;这样,通过邻域点和中心点的相对坐标和特征差值,可以得到点云局部范围内点与点之间的相对位置关系和特征相似度,进一步可以获得点云的局部形状等几何信息。此过程的具体步骤可以表述如下:
[0063]
如图2所示,该图为基于点的位置自适应池化算子提取点云中的细粒度几何特征的流程示意图,其中,图2(a)部分表示基于点云的坐标使用k最近邻(k-nearest neighbor,knn)算法为点云中每个点寻找局部邻域,具体的:首先通过knn算法,可以得到点云局部区域内中心点的坐标和特征,分别用pi和fi表示,以及邻域点的坐标和特征,分别用pj和fj表示,其中示,其中表示中心点的局部邻域;
[0064]
图2(b)部分表示通过邻域点和中心点的相对坐标和特征差值编码得到的权重对邻域点特征进行加权,图2(c)部分表示对加权后的邻域点特征进行池化,在这里选择最大池化。接下来,主要介绍一下图2(b)、图2(c)部分中涉及到的模块结构和原理:
[0065]
第一步,将邻域点和中心点的坐标和特征相减,得到相对坐标
△
p
ij
和特征差值
△fij
;
[0066]
第二步,使用特征映射模块γ(由多层感知器(multilayer perceptron,mlp)组成),将特征差值
△fij
映射为和相对坐标
△
p
ij
相同维度的特征向量
△
p
′
ij
=γ(
△fij
),将
△
p
′
ij
和对相对坐标
△
p
ij
进行拼接,得到维度为6的特征向量
△
p
″
ij
={
△
p
′
ij
|
△
p
ij
};其中,|表示按通道维度拼接;
[0067]
第三步,使用特征压缩模块α(由多层感知器组成)将邻域点特征的维度压缩至原来的1/6,再使用特征重复操作β将压缩后的特征复制6份,从而邻域点特征的维度从d变为6
·
(d/6),此步将邻域点特征分为6组,此时的邻域点特征表示为f
″j;其中,
[0068]
第四步,将第二步得到的6维度的特征向量
△
p
″
ij
作为权重w,对第三步得到的邻域点特征f
″j进行分组(以组为单位)加权,得到加权后的邻域点特征f
″′j。经过以上四步操作,将点云局部区域内的坐标位置信息融入到了局部区域的特征之中,从而可以很容易地获取和感知点云中的几何信息。
[0069]
第五步,在得到加权后的邻域点特征fj″′
后,使用最大池化操作对所有的邻域点
特征进行池化,将池化后的特征更新为中心点的特征,该操作实现了点云局部区域的特征聚合,聚合后的特征包含了点云中的细粒度几何信息。
[0070]
本实施例中,对点云中的所有点都执行图2(a)-图2(c)中的操作后,得到点云特征该点云特征包含点云中细粒度的几何信息,其中,中的上标g表示几何(geometric)的意思。
[0071]
s102,根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块(简称pavd模块),自适应地提取和融合输入点云中不同尺度的特征;
[0072]
本实施例中,将构建的基于体素的深度卷积算子和基于点的位置自适应池化算子进行并联,组合成具有点云和体素两个分支的基于点云-体素的特征提取模块。
[0073]
本实施例中,所述基于点云-体素的特征提取模块,用于通过体素分支提取点云中的粗粒度局部特征,通过点云分支提取点云中的细粒度几何特征,将两个分支提取的特征进行相加融合,得到包含点云中不同尺度信息的融合特征。
[0074]
s103,根据构建的特征提取模块,构建基于点云-体素的几何自适应网络(简称pavdnet网络);
[0075]
本实施例中,将构建的pavd模块作为基本的网络层,来构建pavdnet网络,如图3(a)所示,构建的pavdnet网络包括:特征嵌入模块、多层pavd模块、特征聚合模块和检测头模块;其中,所述多层pavd模块为由多个pavd模块依次连接而成;pavd模块为基于点云-体素的特征提取模块;
[0076]
如图3(b)所示,特征嵌入模块,用于将输入点云的低维坐标转化为高维特征,方便之后的特征提取,该模块由两层多层感知器(mlp)组成,每层mlp都包含一维卷积(1d convolution)、批归一化(batch-normalization)和relu非线性激活函数;
[0077]
如图3(c)、(d)所示,多层pavd模块,用于基于点云和体素两种表示方式对特征嵌入模块输出的高维点云特征进行特征提取;其中,所述pavd模块包括:体素分支和点云分支,如图3(c)所示,体素分支使用基于体素的深度卷积算子提取点云中的粗粒度局部特征,如图3(d)所示,点云分支使用基于点的位置自适应池化算子提取点云中的细粒度几何特征,两个分支的特征通过逐元素相加实现特征融合;
[0078]
如图3(e)所示,特征聚合模块,用于对各个pavd模块输出的融合后的特征进行进一步的融合,该模块由一层mlp组成;
[0079]
检测头模块,用于对特征聚合模块输出的点云特征进行检测,完成分类或分割任务,所述检测头模块由三层mlp组成,为了抑制网络的过拟合和提升网络的鲁棒性,每个检测头中都加入了dropout层。
[0080]
s104,输入点云分类数据集和点云部件分割数据集对构建的几何自适应网络进行训练,利用训练好的几何自适应网络实现点云的形状分类和部件分割等点云处理任务。
[0081]
如图3所示,分类结果可以包括:飞机等;以飞机为例,分割结果可以包括:机翼、机身、机尾和引擎等。
[0082]
为了验证本发明实施例提供的基于点云-体素的几何自适应点云分类和分割方法的有效性,使用modelnet40、scanobjectnn和shapenet part三种数据集中提供的评估指标测试其性能:
[0083]
(1)平均类别准确率(mean class accuracy,macc),数值越大越好;
[0084]
(2)整体准确率(overall accuracy,oa),数值越大越好;
[0085]
(3)类别平均交并比(category miou),数值越大越好;
[0086]
(4)实例平均交并比(instance miou),miou值越大,表示预测值和标签值重叠部分越多,分割结果越精确;
[0087]
其中,整体准确率和实例平均交并比是最主要的考察指标。
[0088]
本实施例中,应用modelnet40和scanobjectnn数据集来分别评估基于点云-体素的几何自适应网络在人工合成数据集和真实数据集上的点云形状分类性能,应用shapenet part数据集评估基于点云-体素的几何自适应网络的点云部件分割性能;其中,
[0089]
modelnet40是一个人工合成的点云分类数据集,包含共40个类别的12311个cad三维模型,在点云形状分类和表面法向量评估等任务中应用广泛;
[0090]
scanobjectnn是一个真实的点云分类数据集,包含15个类别的实际扫描对象,所有类别加起来共有15000个对象,其中有2902个唯一的对象实例。由于是真实扫描数据集,每个对象中都包含一定的遮挡、噪声和背景信息,因此在scanobjectnn数据集上的形状分类任务对于每个方法来说都有一定的挑战性
[0091]
shapenet part是一个点云部件分割数据集,包含16,880个三维模型,这些三维模型共有16个类别和50个部件标签,其中每类模型都包含2-6个部件。
[0092]
在实施过程中,构建基于体素的深度卷积算子和基于点的位置自适应池化算子;根据构建的基于体素的深度卷积算子和基于点的位置自适应池化算子,构建基于点云-体素的特征提取模块,自适应地提取和融合输入点云中不同尺度的特征;根据构建的基于点云-体素的特征提取模块,构建基于点云-体素的几何自适应网络;利用构建的基于点云-体素的几何自适应网络完成点云的形状分类和部件分割任务。
[0093]
在本实施例中,针对modelnet40数据集,将其中的9843个模型作为训练集,其余的2468个模型作为测试集。对数据集中的每个模型进行均匀采样,选出1024个点作为训练和测试时使用的点云数据。在训练阶段,对点云进行尺度为[-0.1,0.1]的随机平移,尺度为[0.8,1.25]的随机缩放,以及最大概率为0.875的随机点丢弃,通过这些方法来增广数据集,以此增强网络的泛化能力和鲁棒性。在测试阶段,直接使用原点云数据,而不使用这些数据增广方法。训练时使用的初始学习率为0.001,批量大小为8,迭代次数为200;针对scanobjectnn数据集,选取其中最难的和使用最广泛的pb_t50_rs版本对pavdnet网络进行测试。对数据集中的每个模型进行均匀采样,选出1024个点作为训练和测试时使用的点云数据。在训练阶段,对点云进行尺度为[-0.1,0.1]的随机平移和尺度为[0.9,1.1]的随机缩放,通过这些方法来增广数据集,以此增强网络的泛化能力和鲁棒性。在测试阶段,直接使用原点云数据,而不使用这些数据增广方法。训练时使用的初始学习率为0.001,批量大小32,迭代次数为250;针对shapenet part数据集,选取14006个模型作为训练集,其余2874个模型作为测试集。对数据集中的每个模型进行均匀采样,选出2048个点作为训练和测试时使用的点云数据。在训练阶段,对点云进行尺度为[-0.1,0.1]的随机平移,尺度为[0.8,1.25]的随机缩放,与形状分类任务一样,通过这些方法来增广数据集和增强网络的泛化能力。在测试阶段,直接使用原点云数据,而不使用这些数据增广方法。训练时使用的初始学习率为0.001,批量大小为8,迭代次数为200。
[0094]
为了验证本发明所述方法的性能,本实施例中,选择了近几年基于深度学习的点云形状分类和部件分割方法进行了对比,实验结果如表1~3所示;其中,表1表示不同方法在modelnet40数据集上的点云形状分类结果,表2表示不同方法在scanobjectnn数据集上的点云形状分类结果,表3表示不同方法在shapenet part数据集上的部件分割结果。
[0095]
由表1可以看出,相比于其他方法,本实施例提出的pavdnet网络取得了91.9%的macc和93.7%的oa,是表1所有方法中最高的,这证明了本实施例提出的pavdnet网络在modelnet40分类数据集上的有效性。
[0096]
表1不同方法在modelnet40数据集上的点云形状分类结果
[0097]
方法输入形式maccoa3dshapenets体素77.384.7voxnet体素83.085.9pointnet点云86.289.2mvcnn多视图-90.1kd-net点云-91.8pointnet++点云-91.9pointgrid点云-92.0specgcn点云-92.1pointcnn点云88.192.2dgcnn点云90.292.2pointweb点云89.492.3spidercnn点云-92.4pvcnn点云-92.4pointconv点云-92.5point2sequence点云90.492.6kpconv点云-92.9rs-cnn点云-92.9pointasnl点云-92.9interpcnn点云-93.0pct点云-93.2pt点云90.693.7pavdnet(ours)点云91.993.7
[0098]
由表2可以看出,相比于其他方法,本实施例提出的pavdnet网络取得了85.3%的macc和87.2%的oa,是表1所有方法中最高的,这证明了本实施例提出的pavdnet网络在scanobjectnn分类数据集上的有效性。
[0099]
表2不同方法在scanobjectnn数据集上的点云形状分类结果
[0100]
方法输入形式maccoapointnet点云63.468.2spidercnn点云69.873.7pointnet++点云75.477.9
dgcnn点云73.678.1pointcnn点云75.178.5drnet点云78.080.3gbnet点云77.880.5simpleview点云-80.5pranet点云79.182.1mvtn点云-82.8pvcnn点云83.585.0pointmlp点云83.985.4pavdnet(ours)点云85.387.2
[0101]
由表3可以看出,相比于其他方法,本实施例提出的pavdnet网络取得了最高的86.7%的实例miou,比同类方法pvcnn高出0.5%,比最近的基于注意力机制的方法pct和pt分别高出0.3%和0.1%,表明了本实施例提出的pavdnet网络在shapenet part数据集上的有效性。
[0102]
表3不同方法在shapenet part数据集上的部件分割结果。
[0103]
方法cat.miouins.mioukd-net77.482.3pointnet80.483.7pointnet++81.985.1pcnn81.885.1dgcnn82.385.2point2sequence82.285.2spidercnn82.485.3pointcnn84.686.1pointasnl83.486.1pointmlp84.686.1assanet-86.1rs-cnn84.086.2pvcnn-86.2pointgrid82.286.4kpconv85.186.4pct83.186.4pt83.786.6stratifiedformer-86.6pavdnet(ours)84.986.7
[0104]
为了验证本实施例所述的方法各部分的意义,本实施例中还进行了消融实验。实验结果如表4~8所示,其中,表4描述了pavd模块体素分支和点云分支的消融实验;表5描述了pavd模块两个分支的特征融合方式的消融实验;表6描述了pavd模块体素分支中体素分辨率大小的消融实验;表7描述了pavd模块点云分支中邻域点数量的消融实验;表8描述了
pavd模块点云分支中权重组成成分的消融实验。
[0105]
由表4可以看出,在只有点云分支时,pavdnet网络取得的oa下降了0.4%,在只有体素分支时,oa下降了0.9%。可以看出,同时使用两种点云表示方式的效果要好于单独使用一种的,体现了基于多表示方式融合的方法的优点。
[0106]
表4关于pavd模块体素分支和点云分支的消融实验
[0107]
分支maccoa只有点云分支90.193.3只有体素分支90.492.8两个分支都有91.993.7
[0108]
由表5可以看出,相加融合的效果要优于拼接的效果,因此选择相加融合。
[0109]
表5关于pavd模块两个分支的特征融合方式的消融实验
[0110]
融合方式maccoa相加91.993.7拼接90.993.1
[0111]
由表6可以看出,当体素大小为16时,取得的oa最高。因此,在基于体素的深度卷积算子中将体素的分辨率设置为16。
[0112]
表6关于pavd模块体素分支中体素分辨率的消融实验
[0113]
体素分辨率maccoa1691.993.73290.893.46490.593.0
[0114]
由表7可以看出,当邻域点数量不大于16时,pavdnet网络取得的oa随体素邻域点数量的增大而增大,当邻域点数量大于16时,oa开始降低。因此,在基于点的位置自适应池化算子中将邻域点的数量设置为16。
[0115]
表7关于pavd模块点云分支中邻域点数量的消融实验
[0116]
邻域点的数量maccoa891.493.61691.993.72490.793.43290.793.3
[0117]
由表8可以看出,当只使用邻域点和中心点的相对坐标作为权重时,pavdnet取得的oa下降了0.5%。在将邻域点和中心点的特征差值也作为一部分权重的情况下,使用相加融合取得oa比只使用相对坐标的高0.2%,使用拼接融合取得的oa比只使用相对坐标的高0.5%。因此,在基于点的位置自适应池化算子中,选择将相对坐标和特征差值映射得到的特征向量进行拼接融合。
[0118]
表8关于pavd模块点云分支中权重组成成分的消融实验
[0119]
权重组成maccoa相对坐标90.793.2
相对坐标、特征差值(相加)91.393.4相对坐标、特征差值(拼接)91.993.7
[0120]
以上诸多消融实验的结果,证明了的方法中各个部分设计的意义和有效性。
[0121]
本实施例中,还将对pavdnet网络进行空间和时间上的复杂度分析,并与其他方法进行对比。依旧以在modelnet40数据集上的形状分类实验作为分析对比的基础,不同方法的时空复杂度如表9所示,所有方法的输入数据均为1
×
1024大小的点云,其中,1表示batch size的大小,1024表示点云中点的数量。从表9中可以看出,与同类方法pvcnn相比,pavdnet网络在减少2/3的参数量和只增加少量计算量的情况下取得了1.3%的oa的提升,运行速度也相差不大。与最近的方法pointmlp相比,pavdnet在达到同等水平oa的情况下,其参数量和计算量具有极大的优势,展现了提出的pavdnet网络的有效性和高效性。
[0122]
表9不同方法的时空复杂度分析
[0123][0124]
本发明实施例所述的基于点云-体素的几何自适应点云分类和分割方法,至少具有以下优点:
[0125]
(1)提出一种基于体素的深度卷积算子,该算子使用三维深度卷积完成体素卷积运算,可以更加高效地提取点云中的粗粒度局部特征;
[0126]
(2)提出一种基于点的位置自适应池化算子,该算子将邻域点和中心点的相对坐标作为权重对邻域点特征进行加权,较好地融入了点云中的几何结构信息,同时将邻域点和中心点的特征差值也作为一部分权重,较好地表征了点云局部范围的特征相似度,使得池化算子提取到的特征中包含更多的细粒度几何信息;
[0127]
(3)提出一种高效的基于点云-体素的几何自适应网络,该网络可以同时提取点云中的粗粒度局部特征和细粒度几何特征,实现了两种特征间的优势互补,可以用于点云的形状分类和部件分割等任务,并且具有高效快速的优点;
[0128]
(4)提出的基于点云-体素的几何自适应网络展现出了优良的性能,大量实验结果表明,提出的网络在modelnet40、scanobjectnn和shapenet part多个数据集上均取得了有竞争力的表现。
[0129]
本发明还提供一种基于点云-体素的几何自适应点云分类和分割装置的具体实施方式,由于本发明提供的基于点云-体素的几何自适应点云分类和分割装置与前述基于点云-体素的几何自适应点云分类和分割方法的具体实施方式相对应,该基于点云-体素的几何自适应点云分类和分割装置可以通过执行上述方法具体实施方式中的流程步骤来实现本发明的目的,因此上述基于点云-体素的几何自适应点云分类和分割方法具体实施方式中的解释说明,也适用于本发明提供的基于点云-体素的几何自适应点云分类和分割装置的具体实施方式,在本发明以下的具体实施方式中将不再赘述。
[0130]
如图4所示,本发明实施例还提供一种基于点云-体素的几何自适应点云分类和分割装置,包括:
[0131]
第一构建模块11,用于构建基于体素的深度卷积算子和基于点的位置自适应池化算子;
[0132]
第二构建模块12,用于根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块,自适应地提取和融合输入点云中不同尺度的特征;
[0133]
第三构建模块13,用于根据构建的特征提取模块,构建基于点云-体素的几何自适应网络;
[0134]
分类分割模块14,用于输入点云分类数据集和点云部件分割数据集对构建的几何自适应网络进行训练,利用训练好的几何自适应网络实现点云的形状分类和部件分割任务。
[0135]
本发明实施例所述的基于点云-体素的几何自适应点云分类和分割装置,构建基于体素的深度卷积算子和基于点的位置自适应池化算子;根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块,自适应地提取和融合输入点云中不同尺度的特征;根据构建的特征提取模块,构建基于点云-体素的几何自适应网络;输入点云分类数据集和点云部件分割数据集对构建的几何自适应网络进行训练,利用训练好的几何自适应网络实现点云的形状分类和部件分割任务,这样,能够提高点云形状分类和部件分割的精度并具有高效快速的特点。
[0136]
图5是本发明实施例提供的一种电子设备600的结构示意图,该电子设备600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)601和一个或一个以上的存储器602,其中,所述存储器602中存储有至少一条指令,所述至少一条指令由所述处理器601加载并执行以实现上述基于点云-体素的几何自适应点云分类和分割方法。
[0137]
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述基于点云-体素的几何自适应点云分类和分割方法。例如,所述计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
[0138]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0139]
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种基于点云-体素的几何自适应点云分类和分割方法,其特征在于,包括:构建基于体素的深度卷积算子和基于点的位置自适应池化算子;根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块,自适应地提取和融合输入点云中不同尺度的特征;根据构建的特征提取模块,构建基于点云-体素的几何自适应网络;输入点云分类数据集和点云部件分割数据集对构建的几何自适应网络进行训练,利用训练好的几何自适应网络实现点云的形状分类和部件分割任务。2.根据权利要求1所述的基于点云-体素的几何自适应点云分类和分割方法,其特征在于,构建的基于体素的深度卷积算子,用于将点云离散化为体素,使用三维深度卷积对体素进行卷积运算,对计算得到的体素特征反体素化,得到点云中的粗粒度局部特征。3.根据权利要求2所述的基于点云-体素的几何自适应点云分类和分割方法,其特征在于,所述将点云离散化为体素,使用三维深度卷积对体素进行卷积运算,对计算得到的体素特征反体素化,得到点云中的粗粒度局部特征包括:假设一输入点云其中,表示点云的坐标,表示点云的特征,表示实数集,n表示点云中点的数量,d表示每个点特征的维度,将所述点云转换到以质心为原点的局部坐标系,将所有点的坐标除以点到原点的最远距离,从而将所有点归一化到一个单位圆内,对所有点的坐标进行缩放和平移,使其处于[0,1]区间内;其中,归一化后的点云表示为将归一化后的点云离散划分为体素;其中,经过离散化操作,点云特征转化成了体素特征r表示体素的分辨率;使用三维深度卷积对体素特征进行特征提取,对提取得到的体素特征进行反体素化处理,得到点云中的粗粒度局部特征4.根据权利要求1所述的基于点云-体素的几何自适应点云分类和分割方法,其特征在于,构建的基于点的位置自适应池化算子,用于将点云局部区域内邻域点和中心点的相对坐标和特征差值编码为权重,使用该权重对邻域点特征进行加权,将加权后的邻域点特征池化后作为中心点的特征,得到点云中的细粒度几何特征。5.根据权利要求4所述的基于点云-体素的几何自适应点云分类和分割方法,其特征在于,所述将点云局部区域内邻域点和中心点的相对坐标和特征差值编码为权重,使用该权重对邻域点特征进行加权,将加权后的邻域点特征池化后作为中心点的特征,得到点云中的细粒度几何特征包括:a1,对于点云中的一个点p
i
,使用k最近邻算法寻找它的k个邻域点p
j
,将邻域点与中心点的坐标和特征分别作差,得到邻域点和中心点的相对坐标
△
p
ij
和特征差值
△
f
ij
;其中,p
i
为中心点,为中心点,表示中心点i的局部邻域;a2,将特征差值
△
f
ij
映射为和相对坐标
△
p
ij
相同维度的特征向量
△
p
′
ij
:
△
p
′
ij
=γ(
△
f
ij
)其中,γ表示由两层多层感知器组成的编码器;
a3,将特征向量
△
p
′
ij
与相对坐标
△
p
ij
拼接得到权重w:
△
p
″
ij
={
△
p
′
ij
|
△
p
ij
}其中,|表示按通道维度拼接;a4,使用权重w对邻域点特征进行加权;a5,对加权后的邻域点特征进行池化后作为中心点的特征;a6,点云中的所有点都执行步骤a1-a5后,得到点云特征该点云特征包含点云中细粒度的几何信息。6.根据权利要求1所述的基于点云-体素的几何自适应点云分类和分割方法,其特征在于,所述根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块包括:将构建的基于体素的深度卷积算子和基于点的位置自适应池化算子进行并联,组合成具有点云和体素两个分支的基于点云-体素的特征提取模块。7.根据权利要求6所述的基于点云-体素的几何自适应点云分类和分割方法,其特征在于,所述基于点云-体素的特征提取模块,用于通过体素分支提取点云中的粗粒度局部特征,通过点云分支提取点云中的细粒度几何特征,将两个分支提取的特征进行相加融合,得到包含点云中不同尺度信息的融合特征。8.根据权利要求1所述的基于点云-体素的几何自适应点云分类和分割方法,其特征在于,构建的基于点云-体素的几何自适应网络包括:特征嵌入模块、多层pavd模块、特征聚合模块和检测头模块;其中,所述多层pavd模块为由多个pavd模块依次连接而成;pavd模块为基于点云-体素的特征提取模块;特征嵌入模块,用于将输入点云的低维坐标转化为高维特征;多层pavd模块,用于基于点云和体素两种表示方式对特征嵌入模块输出的高维点云特征进行特征提取;其中,所述pavd模块包括:体素分支和点云分支,点云分支使用基于点的位置自适应池化算子提取点云中的细粒度几何特征,体素分支使用基于体素的深度卷积算子提取点云中的粗粒度局部特征,两个分支的特征通过逐元素相加实现特征融合;特征聚合模块,用于对各个pavd模块输出的融合后的特征进行进一步的融合;检测头模块,用于对特征聚合模块输出的点云特征进行检测,完成分类或分割任务,所述检测头模块由三层mlp组成,每个检测头中都加入了dropout层。9.一种基于点云-体素的几何自适应点云分类和分割装置,其特征在于,包括:第一构建模块,用于构建基于体素的深度卷积算子和基于点的位置自适应池化算子;第二构建模块,用于根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块,自适应地提取和融合输入点云中不同尺度的特征;第三构建模块,用于根据构建的特征提取模块,构建基于点云-体素的几何自适应网络;分类分割模块,用于输入点云分类数据集和点云部件分割数据集对构建的几何自适应网络进行训练,利用训练好的几何自适应网络实现点云的形状分类和部件分割任务。
技术总结
本发明提供一种基于点云-体素的几何自适应点云分类和分割方法及装置,属于计算机视觉技术领域。所述方法包括:构建基于体素的深度卷积算子和基于点的位置自适应池化算子;根据构建的深度卷积算子和位置自适应池化算子,构建基于点云-体素的特征提取模块,自适应地提取和融合输入点云中不同尺度的特征;根据构建的特征提取模块,构建基于点云-体素的几何自适应网络;输入点云分类数据集和点云部件分割数据集对构建的几何自适应网络进行训练,利用训练好的几何自适应网络实现点云的形状分类和部件分割任务。采用本发明,能够提高点云形状分类和部件分割的精度并具有高效快速的特点。点。点。
技术研发人员:曾慧 赵天孟 李擎 刘红敏 樊彬
受保护的技术使用者:北京科技大学顺德创新学院
技术研发日:2023.04.04
技术公布日:2023/7/21
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种骨再生胶原肽缓释水凝胶及其制备方法 下一篇:一种水性PU清漆的制备方法与流程
