一种基于多尺度多层级转换器的三维点云分析方法及系统

文档序号:26506687发布日期:2021-09-04 08:53阅读:166来源:国知局
一种基于多尺度多层级转换器的三维点云分析方法及系统

1.本发明涉及三维点云分析技术领域,特别是涉及一种基于多尺度多层级转换器的三维点云分析方法及系统。


背景技术:

2.近年来,三维点云分析受到越来越多的关注,因为三维点云可以提供比二维图像更丰富的几何和光度信息,成为分类和分割任务的首选表示方式。然而,由于三维点云具有不规则、无序和稀疏的特性,从点云中有效、高效地学习特征仍然是一个具有挑战性的问题。
3.目前的方法主要可以分为四类:一、基于体素的方法;将非结构化云体素化成规则的体素网格结构。二、基于多视图的方法;将原始三维点云投影到从不同视点渲染的二维图像集合中,然后使用精心设计的二维卷积神经网络进行图像特征提取。最后融合这些特征形成最终输出表示。三、基于点云的方法;直接对非结构化、无序的点云进行操作,以三维坐标或rgb或法线信息作为初始输入。四、基于图的方法;将点云表示为图来建模点之间的局部几何信息。
4.上面四种方法存在以下缺陷:一、是基于体素的方法由于稀疏性、光栅化过程中几何信息的丢失以及昂贵的内存和计算消耗等原因,难以捕获高分辨率或细粒度特征。二、是在三维点云投影过程中存在信息丢失的问题,在处理稀疏点云时比较耗时。同时,很难确定适当的视图数量来建模底层几何结构。三、是基于点云的方法是通过单独处理每个点的方式来进行特征提取不能捕获数据中的局部空间关系,不足以有效地学习点云的上下文相关表示。


技术实现要素:

5.鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于多尺度多层级转换器的三维点云分析方法及系统,用于解决现有技术中存在的问题。
6.为实现上述目的及其他相关目的,本发明提供一种一种基于多尺度多层级转换器的三维点云分析方法,包括以下步骤:
7.利用最远点采样算法从三维点云中获取多个具有不同分辨率的点云,并根据不同分辨率的点云生成初始点特征图金字塔;
8.获取基于点自注意力机制构建的点金字塔转换器,并利用所述点特征金字塔转换器从所述初始点特征图金字塔中获取具有层级的不同分辨率的特征表示;
9.获取基于多头自注意力机制构建的多层级转换器以及所述点金字塔转换器的输出,并利用所述多层级转换器捕获所述点金字塔转换器输出中各个分支或尺度的不同层级之间的特征相关性或特征交互性;
10.获取基于多头自注意力机制构建的多尺度转换器以及所述多层级转换器的输出,并利用所述多尺度转换器构建多个具有不同分辨率的点特征的关联。
11.可选地,利用最远点采样算法从三维点云中获取多个具有不同分辨率的点云,并根据不同分辨率的点云生成初始点特征图金字塔的过程包括:
12.利用最远点采样算法从包含有n个点的三维点云p中获取多个具有不同分辨率的点云p1、p2和p3;其中,点云p1包含有n1=n个点,点云p2包含有n2=n/2个点,点云p3包含有n3=n/4个点;
13.根据不同分辨率的点云生成初始点特征图金字塔式中,d代表每个点的特征维度,i为分辨率类别。
14.可选地,获取基于点自注意力机制构建的点金字塔转换器,并利用所述点特征金字塔转换器从所述初始点特征图金字塔中获取具有层级的不同分辨率的特征表示的过程包括:
15.定义点自注意力机制,有:
[0016][0017][0018][0019][0020]
式中,l为特征表示的层级,ψ(
·
),φ(
·
)和δ(
·
)表示线性点变换,σ是softmax函数,该函数对特征学习的权重参数进行归一化;w
q
为自注意力机制的查询矩阵权重参数;w
k
∈r
d
×
d

为自注意力机制的键矩阵权重参数;w
v
∈r
d
×
d
为自注意力机制的值矩阵权重参数;
[0021]
将所述初始点特征图金字塔输入至点特征金字塔转换器中,利用点特征金字塔转换器中的每一个分支将所述点特征图金字塔中对应的尺度特征图映射为潜在的特征表示:
[0022][0023]
将来自不同层级的点特征图与初始输入进行连接,生成点金字塔转换器的输出有:
[0024][0025]
可选地,获取基于多头自注意力机制构建的多层级转换器,并利用所述多层级转换器捕获所述点金字塔转换器输出中每个分支或尺度的不同层级之间的特征相关性或特征交互性的过程包括:
[0026]
定义所述多层级转换器的多头自注意力机制,有:
[0027][0028][0029][0030]
[0031][0032]
其中,a
m
表示多头自注意力机制;
[0033]
m是多头自注意力机制中头的个数;
[0034]
m表示多头自注意力机制中的第m个头;
[0035]
为自注意力机制的查询矩阵;
[0036]
为自注意力机制的键矩阵;
[0037]
为自注意力机制的值矩阵;
[0038]
d
q
为查询矩阵维度;
[0039]
d
k
为键矩阵维度;
[0040]
d
v
为值矩阵维度;
[0041]
d
q
=d
k
=d
v
=d

/m;
[0042]
将点金字塔转换器的输出输入至多层级转换器中,映射得到跨层级交互特征图:
[0043]
可选地,获取基于多头自注意力机制构建的多尺度转换器以及所述多层级转换器的输出,并利用所述多尺度转换器构建多个具有不同分辨率的点特征的关联的过程包括:
[0044]
定义所述多尺度转换器的多头自注意力机制,有:
[0045]
f
mst
=ma(f
cat
);
[0046]
获取所述多层级转换器的输出并对其进行上采样,有:
[0047][0048]
连接上采样结果,并编码形成多尺度信息,构建多个具有不同分辨率的点特征的关联,有:
[0049][0050]
本发明还提供一种基于多尺度多层级转换器的三维点云分析系统,包括有:
[0051]
采集模块,用于利用最远点采样算法从三维点云中获取多个具有不同分辨率的点云;
[0052]
点特征图金字塔模块,用于根据不同分辨率的点云生成初始点特征图金字塔;
[0053]
点金字塔转换器模块,用于从所述初始点特征图金字塔中获取具有层级的不同分辨率的特征表示;
[0054]
多层级转换器模块,用于捕获所述点金字塔转换器输出中每个分支或尺度的不同层级之间的特征相关性或特征交互性;
[0055]
多尺度转换器模块,用于根据多层级转换器的输出构建多个具有不同分辨率的点特征的关联。
[0056]
可选地,利用最远点采样算法从三维点云中获取多个具有不同分辨率的点云,并根据不同分辨率的点云生成初始点特征图金字塔的过程包括:
[0057]
利用最远点采样算法从包含有n个点的三维点云p中获取多个具有不同分辨率的
点云p1、p2和p3;其中,点云p1包含有n1=n个点,点云p2包含有n2=n/2个点,点云p3包含有n3=n/4个点;
[0058]
根据不同分辨率的点云生成初始点特征图金字塔式中,d代表每个点的特征维度,i为分辨率类别。
[0059]
可选地,获取基于点自注意力机制构建的点金字塔转换器,并利用所述点特征金字塔转换器从所述初始点特征图金字塔中获取具有层级的不同分辨率的特征表示的过程包括:
[0060]
定义点自注意力机制,有:
[0061][0062][0063][0064][0065]
式中,l为特征表示的层级,ψ(
·
),φ(
·
)和δ(
·
)表示线性点变换,σ是是softmax函数,该函数对特征学习的权重参数进行归一化;w
q
为自注意力机制的查询矩阵权重参数;w
k
∈r
d
×
d

为自注意力机制的键矩阵权重参数;w
v
∈r
d
×
d
为自注意力机制的值矩阵权重参数;
[0066]
将所述初始点特征图金字塔输入至点特征金字塔转换器中,利用点特征金字塔转换器中的每一个分支将所述点特征图金字塔中对应的尺度特征图映射为潜在的特征表示:
[0067][0068]
将来自不同层级的点特征图与初始输入进行连接,生成点金字塔转换器的输出有:
[0069][0070]
可选地,获取基于多头自注意力机制构建的多层级转换器,并利用所述多层级转换器捕获所述点金字塔转换器输出中每个分支或尺度的不同层级之间的特征相关性或特征交互性的过程包括:
[0071]
定义所述多层级转换器的多头自注意力机制,有:
[0072][0073][0074][0075][0076]
[0077]
其中,a
m
表示多头自注意力机制;
[0078]
m是多头自注意力机制中头的个数;
[0079]
m表示多头自注意力机制中的第m个头;
[0080]
为自注意力机制的查询矩阵;
[0081]
为自注意力机制的键矩阵;
[0082]
为自注意力机制的值矩阵;
[0083]
d
q
为查询矩阵维度;
[0084]
d
k
为键矩阵维度;
[0085]
d
v
为值矩阵维度;
[0086]
d
q
=d
k
=d
v
=d

/m;
[0087]
将点金字塔转换器的输出输入至多层级转换器中,映射得到跨层级交互特征图:
[0088]
可选地,获取基于多头自注意力机制构建的多尺度转换器以及所述多层级转换器的输出,并利用所述多尺度转换器构建多个具有不同分辨率的点特征的关联的过程包括:
[0089]
定义所述多尺度转换器的多头自注意力机制,有:
[0090]
f
mst
=ma(f
cat
);
[0091]
获取所述多层级转换器的输出并对其进行上采样,有:
[0092][0093]
连接上采样结果,并编码形成多尺度信息,构建多个不同分辨率的点特征的关联,有:
[0094][0095]
如上所述,本发明提供一种基于多尺度多层级转换器的三维点云分析方法及系统,具有以下有益效果:本发明首先利用最远点采样算法fps获得三个具有不同分辨率的点云,然后通过特征嵌入模块进行潜在的特征学习,生成初始点特征图金字塔。随后,利用点金字塔转换器从初始点特征图金字塔中提取具有层次性的多尺度表示。对于点金字塔转换器的每一个分支,多层级转换器将该分支不同层级特征的连接结果作为输入来捕获跨层级的特征相关性或者特征交互性。最后,通过一个多尺度转换器,构建不同分辨率的点特征之间的关联,进而学习更具辨别能力的特征。本发明突破了传统三维点云分析方法带来的信息损失和高计算复杂度的制约,不需要经过任何体素化或投影等预处理方法,通过本发明可以直接输入原始的点云数据,同时具备捕获点云长范围的上下文信息的能力,具有较好的点云特征描述能力,适合在计算机视觉、计算机图形学、机器人学、遥感等领域推广应用,具有重要的实际应用价值。例如,在遥感领域的应用包括大场景遥感点云拼接以及地形场景重建;在文化遗产保护领域的应用包括基于多目点云拼接重建的古文物数字模型库构建;在计算机视觉领域的典型应用为三维人脸识别、三维目标分类检测与识别和三维运动物体的姿态跟踪;在航空航天领域的应用包括太空非合作目标的运动位姿解算等;在机器
人领域的主要应用包括物体的抓取及摆放姿态的估计;在国防领域的应用包括空对地的精准目标打击等。
附图说明
[0096]
图1为一实施例提供的基于多尺度多层级转换器的三维点云分析方法的流程示意图;
[0097]
图2为一实施例提供的多尺度多层级转换器的框架示意图;
[0098]
图3为一实施例提供的点金字塔转换器中使用的点自注意力机制的结构示意图;
[0099]
图4为一实施例提供的识别精度比较结果图;
[0100]
图5为一实施例提供的shapenet部分分割数据集的部分分割比较结果图;
[0101]
图6a至图6h为一实施例提供的在shapenet上的部分分割结果的可视化示意图;
[0102]
图7为一实施例提供的mlmst实验结果的定量评估图;
[0103]
图8a至图8d为一实施例提供的语义分割结果和ground truth之间的定性比较结果示意图;
[0104]
图9为一实施例提供的基于多尺度多层级转换器的三维点云分析系统的硬件结构示意图。
具体实施方式
[0105]
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0106]
需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0107]
mlmspt:multi

level multi

scale point transformer,多层级多尺度点转换器。
[0108]
rgb:red green blue,rgb色彩模式。
[0109]
nlp:natural language processing,自然语言处理。
[0110]
ppt:point pyramid transformer,点金字塔转换器。
[0111]
mlt:multi

level transformer,多层级转换器。
[0112]
mst:multi

scale transformer,多尺度转换器。
[0113]
请参阅图1,本实施例提供一种基于多尺度多层级转换器的三维点云分析方法,包括以下步骤:
[0114]
s100,利用最远点采样算法从三维点云中获取多个具有不同分辨率的点云,并根据不同分辨率的点云生成初始点特征图金字塔;
[0115]
s200,获取基于点自注意力机制构建的点金字塔转换器,并利用所述点特征金字
塔转换器从所述初始点特征图金字塔中获取具有层级的不同分辨率的特征表示;
[0116]
s300,获取基于多头自注意力机制构建的多层级转换器以及所述点金字塔转换器的输出,并利用所述多层级转换器捕获所述点金字塔转换器输出中每个分支或尺度的不同层级之间的特征相关性或特征交互性;
[0117]
s400,获取基于多头自注意力机制生成的多尺度转换器以及所述多层级转换器的输出,并利用所述多尺度转换器构建多个具有不同分辨率的点特征的关联。
[0118]
本实施例首先利用最远点采样算法fps获得三个不同分辨率的点云,然后通过特征嵌入模块进行潜在的特征学习,生成初始点特征图金字塔。随后,利用点金字塔转换器从初始点特征图金字塔中提取具有层次性的多尺度表示。对于点金字塔转换器的每一个分支,多层级转换器将该分支不同层级特征的连接结果作为输入来捕获跨层级的特征相关性或者特征交互性。最后,通过一个多尺度转换器,构建不同分辨率的点特征之间的关联,进而学习更具辨别能力的特征。
[0119]
在一示例性实施例中,利用最远点采样算法从三维点云中获取多个具有不同分辨率的点云,并根据不同分辨率的点云生成初始点特征图金字塔的过程包括:
[0120]
利用最远点采样算法从包含有n个点的三维点云p中获取多个具有不同分辨率的点云p1、p2和p3;其中,点云p1包含有n1=n个点,点云p2包含有n2=n/2个点,点云p3包含有n3=n/4个点;根据不同分辨率的点云生成初始点特征图金字塔n3=n/4个点;根据不同分辨率的点云生成初始点特征图金字塔式中,d代表每个点的特征维度,i为分辨率类别。
[0121]
在本实施例中,在使用同一算子进行特征提取时,不同的分辨率实际上对应着不同的尺度,或者感受野的大小不同。因此,为了给点云建模具有不同尺度的层次语义或上下文信息,本实施例引入了一个ppt(point pyramid transformer,简称ppt)模块。对输入点云p逐步进行最远点采样fps操作,得到三个具有不同分辨率的点云p1、p2、p3,且点云p1、p2、p3分别包含的点数为:n1=n、n2=n/2、n3=n/4,然后生成初始逐点特征图金字塔d代表每个点的特征维度,i为分辨率类别。
[0122]
在一示例性实施例中,获取基于点自注意力机制构建的点金字塔转换器,并利用所述点特征金字塔转换器从所述初始点特征图金字塔中获取具有层级的不同分辨率的特征表示的过程包括:定义点自注意力机制,有:
[0123][0124][0125][0126][0127]
式中,l为特征表示的层级,ψ(
·
),φ(
·
)和δ(
·
)表示线性点变换,σ是softmax函数,该函数对特征学习的权重参数进行归一化;w
q
为自注意力机制的查询矩阵权重参数;w
k
∈r
d
×
d

为自注意力机制的键矩阵权重参数;w
v
∈r
d
×
d
为自注意力机制的值矩阵权重参数;
[0128]
将所述初始点特征图金字塔输入至点特征金字
塔转换器中,利用点特征金字塔转换器中的每一个分支将所述点特征图金字塔中对应的尺度特征图映射为潜在的特征表示:
[0129][0130]
将来自不同层级的点特征图与初始输入进行连接,生成点金字塔转换器的输出有:
[0131][0132]
具体地,如图2和图3所示,点特征金字塔转换器以p为输入,其中每个分支单独地将对应的尺度特征图映射到潜在的特征表示:图2中给定包含n个点的输入三维点云p∈r
n
×
c
,其中c表示点属性的维度。
[0133]
在实施例中,作为转换器模型的核心,由于自注意力机制是排列不变的,并且可以建模长范围上下文依赖关系,因此点金字塔转换器的基本构建块将基于点自注意力机制。所以,本实施例将注意力操作定义如下:
[0134][0135][0136][0137][0138]
其中,i=1,2,3表示第i尺度或分辨率,l=0,1,2,3,4表示第l层。ψ(
·
),φ(
·
)和δ(
·
)表示线性点变换,σ是是softmax函数,该函数对特征学习的权重参数进行归一化;w
q
为自注意力机制的查询矩阵权重参数;w
k
∈r
d
×
d

为自注意力机制的键矩阵权重参数;w
v
∈r
d
×
d
为自注意力机制的值矩阵权重参数。
[0139]
随后,在本实施例中的点金字塔转换器中,从上到下的每条路径都是通过堆叠四个顺序的点自注意力模块来构建,从而得到特定分辨率点云的逐点特征表示。最后,为了充分研究跨层级信息,需要将来自不同层的点特征图与初始输入相连接,生成点金字塔转换器模块的输出有:
[0140][0141]
由此可知,本实施例可以根据特定的应用场景来修改分辨率或尺度分支的数量、堆叠的点自注意力机制模块或层级以及输入特征图的大小。
[0142]
在一示例性实施例中,获取基于多头自注意力机制构建的多层级转换器,并利用所述多层级转换器捕获所述点金字塔转换器输出中每个分支或尺度的不同层级之间的特征相关性或特征交互性的过程包括:定义所述多层级转换器的多头自注意力机制,有:
[0143][0144][0145]
[0146][0147][0148]
其中,a
m
表示多头自注意力机制;
[0149]
m是多头自注意力机制中头的个数;
[0150]
m表示多头自注意力机制中的第m个头;
[0151]
为自注意力机制的查询矩阵;
[0152]
为自注意力机制的键矩阵;
[0153]
为自注意力机制的值矩阵;
[0154]
d
q
为查询矩阵维度;
[0155]
d
k
为键矩阵维度;
[0156]
d
v
为值矩阵维度;
[0157]
d
q
=d
k
=d
v
=d

/m;
[0158]
将点金字塔转换器的输出输入至多层级转换器中,映射得到跨层级交互特征图:
[0159]
具体地,在本实施例中,通过聚合不同层级的信息可以提高点特征的表达能力。为了充分利用多层级上下文,对层级之间的长范围依赖或交互进行建模,本实施例引入了基于多头自注意力机制的多层级转换器模块,该模块由三个独立并行的多层级转换器组成,分别对应于每个尺度或分辨率路径。
[0160]
本实施例的多层级转换器算子使用作为输入来编码点之间更丰富的关系,正式定义为:
[0161][0162][0163][0164][0165][0166]
其中,a
m
表示多头自注意力机制;m是多头自注意力机制中头的个数;m表示多头自注意力机制中的第m个头;为自注意力机制的查询矩阵;为自注意力机制的键矩阵;为自注意力机制的值矩阵;d
q
为查询矩阵维度;d
k
为键矩阵维度;d
v
为值矩阵维度;d
q
=d
k
=d
v
=d

/m。
[0167]
最后,这三个独立的多层级转换器将点金字塔转换器中的三个分辨率的层级级联特征映射为三个独立的上下文语义表示,即映射得到跨层级交互特征图:
[0168]
在一示例性实施例中,获取基于多头自注意力机制构建的多尺度转换器以及所述多层级转换器的输出,并利用所述多尺度转换器构建多个具有不同分辨率的点特征的关联的过程包括:定义所述多尺度转换器的多头自注意力机制,有:
[0169]
f
mst
=ma(f
cat
);
[0170]
获取所述多层级转换器的输出并对其进行上采样,有:
[0171][0172]
连接上采样结果,并编码形成多尺度信息,构建多个具有不同分辨率的点特征的关联,有:
[0173][0174]
具体地,在本实施例中,不同尺度或分辨率的点特征对应不同的上下文或语义信息。为了增强低、中、高分辨率之间的交互,本实施例还采用多头自注意力机制构建了多尺度转换器,并生成不同尺度之间的关系。
[0175]
将多层级转换器得到的跨层交互特征图输入至本实施例的多尺度转换器中。然后通过pointnet++中使用的插值操作,将这三个不同尺度的特征图直接上采样到与原始网络输入相同的大小,并将它们连接在一起编码多尺度信息,有:
[0176][0177][0178]
然后,在f
cat
执行多尺度转换器操作。由于采用了同样的多头自注意力策略,多尺度转换器表述为:f
mst
=ma(f
cat
)。
[0179]
通过集成多尺度转换器,本实施例可以进一步提高网络的学习能力,以及根据网络的学习能力来学习点的语义和几何增强的更具辨别能力的信息。
[0180]
根据上述记载,在一具体实施例中,为了评估本方法提出的mltmst模型的性能,本方法对三维点云分类、部分分割和语义分割问题进行了广泛的实验,并与现有的方法进行了比较。这里,本方法采用pytorch框架在nvidia titan rtx上实现本方法的转换器架构,该架构具有24g内存,且采用adam优化器和步长lr学习衰减调度器对所有模型进行训练。
[0181]
对三维点云进行分类。本实施例中的分类任务是在modelnet10和modelnet40基准数据集上执行的。modelnet10包含10个类别的2468个训练模型或909个测试模型,modelnet40包含40个类别的12311个cad模型,其中选择9843个实例进行训练,使用2468个形状进行测试。与pointnet一样,从每个对象模型中均匀采样1024个点。在训练过程中,本实施例对输入点云进行操作,包括随机点丢失、[0.8,1.25]中的随机缩放和[

0.1,0.1]中的随机移动,以实现数据增强。本实施例使用初始学习率0.0003训练了250个epoch的分类网络,并设置批量大小为32。与现有技术相比,本方法可以直接对仅包含1024个点的原始xyz坐标进行来产生这些结果。根据图4中modelnet10和modelnet40的识别精度比较结果可知,在modelnet10上,本实施例中的转换器网络可以获得95.5%的总体准确度,达到了次优的结果;而在modelnet40上,本实施例中的模型以92.9%的优越精度获得了最佳性能,优于
体素网格输入、多视图输入和点输入方法;说明了本方法中的多层级多尺度转换器网络的有效性。
[0182]
部分分割。本实施例中的部分分割是一项具有挑战性的任务,其目标是为给定的三维点云对象中的每个点分配一个部分标签。具体地,本实施例在广泛使用的shapenet部分分割数据集上评估了部分分割任务,该数据集涵盖了16种不同类别的16881种三维点云物体形状。每个类别的物体用少于6个部分的标签进行标注,总计50个部分,每个点与一个部分标签相关联。这些模型被分为14007个用做训练示例和2874个用于测试模型。在本实施例中,可以从数据集中抽取2048个点。在训练时,本实施例采用与分类时相同的数据增强策略,同时将分割模型训练为180个epoch,并设置批量大小为8。此外,将点上的相交并集(iou)作为定量评价模型分割结果的指标,并与其他现有方法进行比较。按照上述内容,本实施例将每个类别的iou定义为每个类别中所有形状的iou的平均值。同时,总的平均(miou)最终通过取所有形状实例的欠条平均值来计算。根据图5中shapenet部分分割数据集部分分割与最新方法比较可知,本实施例中的转换器模型达到了更好的部分分割性能,实例miou为86.4%,比目前最先进的方法rs

cnn和elm分别高出0.2%和1.2%。在shapenet上的部分分割结果的可视化如图6a至图6h所示,通过图6a至图6h的结果表明本方法对不同形状的鲁棒性。
[0183]
语义分割。本实施例使用stanford大规模3d室内空间数据集(s3dis)对转换器模型进行语义场景分割实验。该基准提供了由matterport扫描仪在6个室内区域收集的3d点云,这些区域包含来自三个不同建筑的271个房间,每个点都与13个语义标签(例如椅子和天花板)中的一个相关联。根据的模式,为了更好地评估模型的可泛化性,本实施例挑选出area 5(它在一个不同于其他的建筑中)作为本实施例的测试集,其余的区域用于训练本实施例的模型。在训练期间,本实施例使用从数据集采样的4096个点作为输入来训练本实施例的转换器模型。本实施例利用200个epoch,并设置批大小为6。如图7所示,图7给出了mlmst实验结果的定量评估,将本实施例的实验结果与几个最新的技术进行比较。从图7可知,本实施例中的mlmst架构在area 5评估上以62.9%的miou实现了竞争性能,比pointnet高21.8%。具体来说,本实施例中的模型在地板、墙壁、椅子和木板课上取得了领先的结果。此外,图8a至图8d还提供了语义分割结果和ground truth之间的定性比较,通过这些定量和定性的结果,可以进一步验证了本方法的高有效性和应用前景。
[0184]
综上所述,本发明提供一种基于多尺度多层级转换器的三维点云分析方法,可以直接以原始三维点云数据作为输入,克服由投影、体素化等规整化点云操作所带来的信息损失和计算代价过高的问题。同时,以多头自注意力机制作为核心模块,构建点金字塔转换器、多尺度转换器、多层级转换器,从而获得不同尺度以及不同层级之间的点特征依赖,提高特征的表征能力,服务三维点云分析任务。本方法首先利用最远点采样算法fps获得三个具有不同分辨率的点云,然后通过特征嵌入模块进行潜在的特征学习,生成初始点特征图金字塔。随后,利用点金字塔转换器从初始点特征图金字塔中提取具有层次性的多尺度表示。对于点金字塔转换器的每一个分支,多层级转换器将该分支不同层级特征的连接结果作为输入来捕获跨层级的特征相关性或者特征交互性。最后,通过一个多尺度转换器,构建具有不同分辨率的点特征之间的关联,进而学习更具辨别能力的特征。本方法突破了传统三维点云分析方法带来的信息损失和高计算复杂度的制约,不需要经过任何体素化或投影
等预处理方法,通过本方法可以直接输入原始的点云数据,同时具备捕获点云长范围的上下文信息的能力,具有较好的点云特征描述能力,适合在计算机视觉、计算机图形学、机器人学、遥感等领域推广应用,具有重要的实际应用价值。例如,在遥感领域的应用包括大场景遥感点云拼接以及地形场景重建;在文化遗产保护领域的应用包括基于多目点云拼接重建的古文物数字模型库构建;在计算机视觉领域的典型应用为三维人脸识别、三维目标分类检测与识别和三维运动物体的姿态跟踪;在航空航天领域的应用包括太空非合作目标的运动位姿解算等;在机器人领域的主要应用包括物体的抓取及摆放姿态的估计;在国防领域的应用包括空对地的精准目标打击等。
[0185]
如图9所示,本发明还提供一种基于多尺度多层级转换器的三维点云分析系统,包括有:
[0186]
采集模块m10,用于利用最远点采样算法从三维点云中获取多个具有不同分辨率的点云;
[0187]
点特征图金字塔模块m20,用于根据不同分辨率的点云生成初始点特征图金字塔;
[0188]
点金字塔转换器模块m30,用于从所述初始点特征图金字塔中获取具有层级的不同分辨率的特征表示;
[0189]
多层级转换器模块m40,用于捕获所述点金字塔转换器输出中每个分支或尺度的不同层级之间的特征相关性或特征交互性;
[0190]
多尺度转换器模块m50,用于根据多层级转换器的输出构建多个具有不同分辨率的点特征的关联。
[0191]
本实施例首先利用最远点采样算法fps获得三个具有不同分辨率的点云,然后通过特征嵌入模块进行潜在的特征学习,生成初始点特征图金字塔。随后,利用点金字塔转换器从初始点特征图金字塔中提取具有层次性的多尺度表示。对于点金字塔转换器的每一个分支,多层级转换器将该分支不同层级特征的连接结果作为输入来捕获跨层级的特征相关性或者特征交互性。最后,通过一个多尺度转换器,构建不同分辨率的点特征之间的关联,进而学习更具辨别能力的特征。
[0192]
在一示例性实施例中,利用最远点采样算法从三维点云中获取多个具有不同分辨率的点云,并根据不同分辨率的点云生成初始点特征图金字塔的过程包括:
[0193]
利用最远点采样算法从包含有n个点的三维点云p中获取三个具有不同分辨率的点云p1、p2和p3;其中,点云p1包含有n1=n个点,点云p2包含有n2=n/2个点,点云p3包含有n3=n/4个点;根据不同分辨率的点云生成初始点特征图金字塔n3=n/4个点;根据不同分辨率的点云生成初始点特征图金字塔式中,d代表每个点的特征维度,i为分辨率类别。
[0194]
在本实施例中,在使用同一算子进行特征提取时,不同的分辨率实际上对应着不同的尺度,或者感受野的大小不同。因此,为了给点云建模具有不同尺度的层次语义或上下文信息,本实施例引入了一个ppt(point pyramid transformer,简称ppt)模块。对输入点云p逐步进行最远点采样fps操作,得到具有不同分辨率的点云p1、p2、p3,且点云p1、p2、p3分别包含的点为:n1=n、n2=n/2、n3=n/4,然后生成初始逐点特征图金字塔分别包含的点为:n1=n、n2=n/2、n3=n/4,然后生成初始逐点特征图金字塔d代表每个点的特征维度,i为分辨率类别。
[0195]
在一示例性实施例中,获取基于点自注意力机制构建的点金字塔转换器,并利用
所述点特征金字塔转换器从所述初始点特征图金字塔中获取具有层级的不同分辨率的特征表示的过程包括:定义点自注意力机制,有:
[0196][0197][0198][0199][0200]
式中,l为特征表示的层级,ψ(
·
),φ(
·
)和δ(
·
)表示线性点变换,σ是softmax函数,该函数对特征学习的权重参数进行归一化;w
q
为自注意力机制的查询矩阵权重参数;w
k
∈r
d
×
d

为自注意力机制的键矩阵权重参数;w
v
∈r
d
×
d
为自注意力机制的值矩阵权重参数;
[0201]
将所述初始点特征图金字塔输入至点特征金字塔转换器中,利用点特征金字塔转换器中的每一个分支将所述点特征图金字塔中对应的尺度特征图映射为潜在的特征表示:
[0202][0203]
将来自不同层级的点特征图与初始输入进行连接,生成点金字塔转换器的输出有:
[0204][0205]
具体地,如图2和图3所示,点特征金字塔转换器以p输入,其中每个分支单独地将对应的尺度特征图映射到潜在的特征表示:图2中给定包含n个点的输入三维点云p∈r
n
×
c
,其中c表示点属性的维度。
[0206]
在实施例中,作为转换器模型的核心,由于自注意力机制是排列不变的,并且可以建模长范围上下文依赖关系,因此点金字塔转换器的基本构建块将基于点自注意力机制。所以,本实施例将注意力操作定义如下:
[0207][0208][0209][0210][0211]
其中,i=1,2,3表示第i尺度或分辨率,l=0,1,2,3,4表示第l层。ψ(
·
),φ(
·
)和δ(
·
)表示线性点变换,σ是softmax函数,该函数对特征学习的权重参数进行归一化;w
q
为自注意力机制的查询矩阵权重参数;w
k
∈r
d
×
d

为自注意力机制的键矩阵权重参数;w
v
∈r
d
×
d
为自注意力机制的值矩阵权重参数。
[0212]
随后,在本实施例中的点金字塔转换器中,从上到下的每条路径都是通过堆叠四个顺序的点自注意力模块来构建,从而得到特定分辨率点云的逐点特征表示。最后,为了充分研究跨层级信息,需要将来自不同层的点特征图与初始输入相连接,生成点金字塔转换
器模块的输出有:
[0213][0214]
由此可知,本实施例可以根据特定的应用场景来修改分辨率或尺度分支的数量、堆叠的点自注意力机制模块或层级以及输入特征图的大小。
[0215]
在一示例性实施例中,获取基于多头自注意力机制构建的多层级转换器,并利用所述多层级转换器捕获所述点金字塔转换器输出中每个分支或尺度的不同层级之间的特征相关性或特征交互性的过程包括:定义所述多层级转换器的多头自注意力机制,有:
[0216][0217][0218][0219][0220][0221]
其中,a
m
表示多头自注意力机制;
[0222]
m是多头自注意力机制中头的个数;
[0223]
m表示多头自注意力机制中的第m个头;
[0224]
为自注意力机制的查询矩阵;
[0225]
为自注意力机制的键矩阵;
[0226]
为自注意力机制的值矩阵;
[0227]
d
q
为查询矩阵维度;
[0228]
d
k
为键矩阵维度;
[0229]
d
v
为值矩阵维度;
[0230]
d
q
=d
k
=d
v
=d

/m;
[0231]
将点金字塔转换器的输出输入至多层级转换器中,映射得到跨层级交互特征图:
[0232]
具体地,在本实施例中,通过聚合不同层级的信息可以提高点特征的表达能力。为了充分利用多层级上下文,对层级之间的长范围依赖或交互进行建模,本实施例引入了基于多头自注意力机制的多层级转换器模块,该模块由三个独立并行的多层级转换器组成,分别对应于每个尺度或分辨率路径。
[0233]
本实施例的多层级转换器算子使用作为输入来编码点之间更丰富的关系,正式定义为:
[0234]
[0235][0236][0237][0238][0239]
其中,a
m
表示多头自注意力机制;m是多头自注意力机制中头的个数;m表示多头自注意力机制中的第m个头;为自注意力机制的查询矩阵;为自注意力机制的键矩阵;为自注意力机制的值矩阵;d
q
为查询矩阵维度;d
k
为键矩阵维度;d
v
为值矩阵维度;d
q
=d
k
=d
v
=d

/m。
[0240]
最后,这三个独立的多层级转换器将点金字塔转换器中的三个分辨率的层级级联特征映射为三个独立的上下文语义表示,即映射得到跨层级交互特征图:
[0241]
在一示例性实施例中,获取基于多头自注意力机制构建的多尺度转换器以及所述多层级转换器的输出,并利用所述多尺度转换器构建多个具有不同分辨率的点特征的关联的过程包括:定义所述多尺度转换器的多头自注意力机制,有:
[0242]
f
mst
=ma(f
cat
);
[0243]
获取所述多层级转换器的输出并对其进行上采样,有:
[0244][0245]
连接上采样结果,并编码形成多尺度信息,构建多个不同分辨率的点特征的关联,有:
[0246][0247]
具体地,在本实施例中,不同尺度或分辨率的点特征对应不同的上下文或语义信息。为了增强低、中、高分辨率之间的交互,本实施例还采用多头自注意力机制构建了多尺度转换器,并生成不同尺度之间的关系。
[0248]
将多层级转换器得到的跨层交互特征图输入至本实施例的多尺度转换器中。然后通过pointnet++中使用的插值操作,将这三个不同尺度的特征图直接上采样到与原始网络输入相同的大小,并将它们连接在一起编码多尺度信息,有:
[0249][0250][0251]
然后,在f
cat
执行多尺度转换器操作。由于采用了同样的多头自注意力策略,多尺度转换器表述为:f
mst
=ma(f
cat
)。
[0252]
通过集成多尺度转换器,本实施例可以进一步提高网络的学习能力,以及根据网络的学习能力来学习点的语义和几何增强的更具辨别能力的信息。
[0253]
根据上述记载,在一具体实施例中,为了评估本系统提出的mltmst模型的性能,本
系统对三维点云分类、部分分割和语义分割问题进行了广泛的实验,并与现有的方法进行了比较。这里,本系统采用pytorch框架在nvidia titan rtx上实现本系统的转换器架构,该架构具有24g内存,且采用adam优化器和步长lr学习衰减调度器对所有模型进行训练。
[0254]
对三维点云进行分类。本实施例中的分类任务是在modelnet10和modelnet40基准数据集上执行的。modelnet10包含10个类别的2468个训练模型或909个测试模型,modelnet40包含40个类别的12311个cad模型,其中选择9843个实例进行训练,使用2468个形状进行测试。与pointnet一样,从每个对象模型中均匀采样1024个点。在训练过程中,本实施例对输入点云进行操作,包括随机点丢失、[0.8,1.25]中的随机缩放和[

0.1,0.1]中的随机移动,以实现数据增强。本实施例使用初始学习率0.0003训练了250个epoch的分类网络,并设置批量大小为32。与现有技术相比,本系统可以直接对仅包含1024个点的原始xyz坐标进行来产生这些结果。根据图4中modelnet10和modelnet40的识别精度比较结果可知,在modelnet10上,本实施例中的转换器网络可以获得95.5%的总体准确度,达到了次优的结果;而在modelnet40上,本实施例中的模型以92.9%的优越精度获得了最佳性能,优于体素网格输入、多视图输入和点输入方法;说明了本系统中的多层级多尺度转换器网络的有效性。
[0255]
部分分割。本实施例中的部分分割是一项具有挑战性的任务,其目标是为给定的三维点云对象中的每个点分配一个部分标签。具体地,本实施例在广泛使用的shapenet部分分割数据集上评估了部分分割任务,该数据集涵盖了16种不同类别的16881种三维点云物体形状。每个类别的物体用少于6个部分的标签进行标注,总计50个部分,每个点与一个部分标签相关联。这些模型被分为14007个用做训练示例和2874个用于测试模型。在本实施例中,可以从数据集中抽取2048个点。在训练时,本实施例采用与分类时相同的数据增强策略,同时将分割模型训练为180个epoch,并设置批量大小为8。此外,将点上的相交并集(iou)作为定量评价模型分割结果的指标,并与其他现有方法进行比较。按照上述内容,本实施例将每个类别的iou定义为每个类别中所有形状的iou的平均值。同时,总的平均(miou)最终通过取所有形状实例的欠条平均值来计算。根据图5中shapenet部分分割数据集部分分割与最新方法比较可知,本实施例中的转换器模型达到了更好的部分分割性能,实例miou为86.4%,比目前最先进的方法rs

cnn和elm分别高出0.2%和1.2%。在shapenet上的部分分割结果的可视化如图6a至图6h所示,通过图6a至图6h的结果表明本系统对不同形状的鲁棒性。
[0256]
语义分割。本实施例使用stanford大规模3d室内空间数据集(s3dis)对转换器模型进行语义场景分割实验。该基准提供了由matterport扫描仪在6个室内区域收集的3d点云,这些区域包含来自三个不同建筑的271个房间,每个点都与13个语义标签(例如椅子和天花板)中的一个相关联。根据的模式,为了更好地评估模型的可泛化性,本实施例挑选出area 5(它在一个不同于其他的建筑中)作为本实施例的测试集,其余的区域用于训练本实施例的模型。在训练期间,本实施例使用从数据集采样的4096个点作为输入来训练本实施例的转换器模型。本实施例利用200个epoch,并设置批大小为6。如图7所示,图7给出了mlmst实验结果的定量评估,将本实施例的实验结果与几个最新的技术进行比较。从图7可知,本实施例中的mlmst架构在area 5评估上以62.9%的miou实现了竞争性能,比pointnet高21.8%。具体来说,本实施例中的模型在地板、墙壁、椅子和木板课上取得了领先的结果。
此外,图8a至图8d还提供了语义分割结果和ground truth之间的定性比较,通过这些定量和定性的结果,可以进一步验证了本系统的高有效性和应用前景。
[0257]
综上所述,本发明提供一种基于多尺度多层级转换器的三维点云分析系统,可以直接以原始三维点云数据作为输入,克服由投影、体素化等规整化点云操作所带来的信息损失和计算代价过高的问题。同时,以多头自注意力机制作为核心模块,构建点金字塔转换器、多尺度转换器、多层级转换器,从而获得不同尺度以及不同层级之间的点特征依赖,提高特征的表征能力,服务三维点云分析任务。本系统首先利用最远点采样算法fps获得三个具有不同分辨率的点云,然后通过特征嵌入模块进行潜在的特征学习,生成初始点特征图金字塔。随后,利用点金字塔转换器从初始点特征图金字塔中提取具有层次性的多尺度表示。对于点金字塔转换器的每一个分支,多层级转换器将该分支不同层级特征的连接结果作为输入来捕获跨层级的特征相关性或者特征交互性。最后,通过一个多尺度转换器,构建不同分辨率的点特征之间的关联,进而学习更具辨别能力的特征。本系统突破了传统三维点云分析方法带来的信息损失和高计算复杂度的制约,不需要经过任何体素化或投影等预处理方法,通过本系统可以直接输入原始的点云数据,同时具备捕获点云长范围的上下文信息的能力,具有较好的点云特征描述能力,适合在计算机视觉、计算机图形学、机器人学、遥感等领域推广应用,具有重要的实际应用价值。例如,在遥感领域的应用包括大场景遥感点云拼接以及地形场景重建;在文化遗产保护领域的应用包括基于多目点云拼接重建的古文物数字模型库构建;在计算机视觉领域的典型应用为三维人脸识别、三维目标分类检测与识别和三维运动物体的姿态跟踪;在航空航天领域的应用包括太空非合作目标的运动位姿解算等;在机器人领域的主要应用包括物体的抓取及摆放姿态的估计;在国防领域的应用包括空对地的精准目标打击等。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
[0258]
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1