APP下载

基于自适应采样和混合注意力的点云配准算法*

2024-01-03侯维广付生鹏

组合机床与自动化加工技术 2023年12期
关键词:源点注意力卷积

侯维广,付生鹏,夏 鑫,刘 晶

(1.沈阳化工大学信息工程学院,沈阳 110142;2.中国科学院沈阳自动化研究所机器人学国家重点实验室,沈阳 110016;3.中国科学院机器人与智能制造创新研究院,沈阳 110169)

0 引言

传统配准方法中应用最广泛的是迭代最近点(ICP)[1]算法,通过建立近邻点查询欧式距离最小的点对,迭代估计源点云到目标点云的坐标变换矩阵和目标函数值。该算法对初始位姿较为敏感且仅适用于小尺度物体变换估计。快速全局配准(fast global registration,FGR)[2]算法使用快速点特征直方图[3-4]特征和交替优化技术来加速全局配准,但对于噪声点比较敏感。全局优化迭代最近点算法(globally optimal ICP,Go-ICP)[5]利用SE(3)搜索全局空间结构,推导出新目标函数的上下界,保证全局最优的同时加快了速度,但其仍对初始位置较为敏感。随着点云数据规模的剧增,传统的配准方法在效率和精度上已不能满足实际需求。

近年来,以深度学习的方法实现点云配准受到了越来越广泛的关注。PointNet[6]是首次使用无序点云作为卷积网络输入的模型,但精度有限。PointNet++[7]利用MSG(multi scale grouping)和MRG(multi resolution grouping)处理点云密度不均的问题,同时使用PointNet对局部点云特征进行提取,丰富了局部特征,但鲁棒性差。PointNetLK[8]是将PointNet与传统方法相结合,采用循环神经网络来降低计算复杂度,在存在一定噪声等条件下提高了配准精度。DCP(deep closest point)[9]模型采用动态图卷积神经网络提取点云特征,并使用transformer架构计算深层次点云之间的相关性。DPVCP(deep virtual corresponding points)[10]利用深度点云特征嵌入方法以提取更精细的局部特征,同时设计CPG(corresponding point generation)层来得到对应点精细反向传播。PRNet(self-supervised learning for partial-to-partial registration)[11]网络使用Gumbel-Softmax来获得采样关键点的对应关系,还设计了actor-critic模块用于更好的预测出更精确的刚性变换矩阵。RPM-Net(robust point matching network)[12]网络利用空间和局部几何来学习混合特征,迭代计算得到最优退火调度的软对应方法并更新变换参数,减小了模型初始位置敏感度,但计算速度慢。但目前基于深度学习的方法仍然容易受到离群点、点云复杂多变等因素的影响,需要进一步降低对这些因素的影响,提高匹配准确率。

受迭代距离感知相似度卷积(iterative distance aware similarity matrix convolution,IDAM)[13]配准网络和PointASNL[14]网络的启发,本文提出一种基于自适应采样的点云配准算法。首先,相比于IDAM点云配准网络使用最远距离采样(farthest point sampling,FPS)方法,本文使用自适应采样方法代替FPS采样,有利于缓解异常点对模型的影响。其次使用动态链接的图神经网络提取特征,有效的捕获点云更多的局部几何特征,丰富点云的表达能力。之后,添加混合注意力模块,利用目标点与源点之间的相对位置构建软对应关系,有效提高特征的特异性,提高配准精度。

1 算法框架及设计

本文基于深度学习的方法提出了一种融合自采样和混合注意力机制的网络结构,具体如图1所示。首先,对于输入点云进行自适应采样,采样后送入特征提取模块,之后使用混合注意力进行点对关系交互并保留L个显著点。其次,组合欧式距离和几何特征构成混合特征矩阵,计算相似度得分,以此取前M对关键点对,根据对应关系为每个点赋予不同的权重,最后采用奇异值分解法得到变换矩阵。

图1 本文算法网络结构

1.1 自适应采样

目前,最远距离采样(farthest point sampling,FPS)法虽然能够获得相对均匀的采样点,但依然存在对异常点敏感和采集时缺失部分点云数据会导致网络难以得到相对准确的几何信息等问题。为了解决以上问题,本文使用自适应采样方法[14]对输入点云进行采样,降低异常点对后续点云配准的影响,产生相对准确的几何信息,提高点云配准精度。

首先,利用FPS进行下采样获得均匀的Ns点集合,表示为Xs∈RNs×3,点集对应的特征集合表示为Fs∈RNs×Dl(Dl指输出通道数),以xi和fi分别表示Ns点集中的采样点及其特征。以K近邻算法得到xi的K个近邻点,记为xi,1,…,xi,K,近邻点集合表示为N(xi),近邻点对应特征记为fi.1,…,fi,K,组内点xi,h特征更新为:

fi,h=Φ(σ(xi,h,xi,j)γ(xi,j),∀xi,j∈N(xi))

(1)

式中:σ()表示匹配操作,用来计算组内成员xi,h、xi,j∈N(xi)之间的对应关系;γ函数表示用来改变特征通道数为D′,Φ()函数表示对得到的特征进行拼接操作。为了减少计算量,可认为γ函数的线性变换形式表示为γ(xi,j)=Wγfi,j,匹配函数σ()是如下两点的点积相似性:

(2)

式中:φ和θ是通过一维卷积实现的两个独立的线性变换。然后,使用ζp和ζf逐点卷积多层感知机(multi-layer perceptron,MLP)及softmax激活函数来获得每个点的对应强度:

(3)

(4)

1.2 特征提取结构

图神经网络(graph neural network,GNN)会忽略图节点的输入顺序,且单独传播,通过提取边缘来学习两节点之间的相关性特征,十分适用于点云处理与特征提取。因此,以GNN为基础,构建动态链接的图神经网络[15]进行特征提取,更有效提取特征的同时避免梯度消失的问题。

对于自适应采样后的点云Ps,构建出有向图G,令顶点为V,边为E:

G=(V,E),V⊂RC,E⊆V×V

(5)

式中:C表示每条边的维数。然后,在每个卷积层前应用KNN来构造出局部有向图,其中心节点为pi,中心节点与其近邻点的边ei计算得:

V={pi|i=1,2,…,n}
E={ei=(ei1,...,eik)|i=1,2,...,n}
eij=pij-pi

(6)

式中:pij是pi的一个邻点,eij表示从pij到pi的有向边。之后,以基于边缘卷积层进行提取局部图特征li:

li=he(G(pi,ei))=max{s(pi,ei1),s(pi,ei2),…,s(pi,eik)}

(7)

式中:he()表示特征提取函数,max()表示最大池化运算,用来提取所有边缘中最主要的特征,且不受近邻点顺序影响;s(pi,eij)表示pi和一个边向量eij的隐藏特征向量,可用MLP提取得到:

(8)

式中:pic和Pijc是pi及其邻点pij在通道c中的值,C和C′分别表示输入点pi及输出向量s(pi,eij)的通道数,wc′c,wc′(c+C),bc′为可训练参数。

由于感受野的增加有利于模型性能的提升,而边缘卷积是从先前特征中提取边缘向量来学习新特征,所以,可以通过使用连续卷积进行扩展感受野,提取更多的边缘向量。因此,添加一组通道数为64的边缘卷积进行分层特征提取,然后进行通过链接更深层次的结构来提取更复杂的特征,同时存在足够的表达能力和泛化能力。

1.3 混合注意力机制

由于原IDAM模型在硬点消除的过程中,仅仅对单点云进行处理,无法考虑到相应的点对信息,可能会错误消去正确对应的点对,降低下一步模型迭代配准的精度。因此在此之前采用基于消息传递的混合注意力[16]方法来获得对应点的软连接,结构如图2所示,通过基于残差连接的多头注意力方法来预测出正确点对的概率,进一步提高正确对应点的权重信息,提高点云配准精度。

图2 混合注意力模型结构图

首先通过自注意力聚合源点云A上所有节点的特征,并在每层中进行更新。设mε→i是所有关键点{j:(i,j)∈ε}的聚合结果,ε∈{εself,εcross},则元素i的剩余消息传递更新为:

(9)

(10)

(11)

之后,使用多头注意力进行特征提取,即4个平行的注意力头,输出源点云A的交互特征:

(12)

式中:LLDGNN表示特征提取后得到的特征,MLP表示一个3层全连接网络,目标点云计算同理。

2 实验结果与分析

2.1 实验设置及数据

本文实验基于Windows10系统,以CPU为Inter i5-10400H和GPU为RTX2070的作为硬件平台。软件环境为Open3D点云库,网络模型以Pytorch框架搭建,设置迭代次数为3,批次大小设置为4,初始学习率为1×10-3,并在30个epoch之后以0.1进行衰减,权重衰减率为1×10-3且无Dropout,最后使用2.4节的优化器对模型进行50 epoch的训练。

本文所有实验使用ModelNet40数据集进行训练和测试,以及在某大学3D点云数据集和实测点云上进行测试。ModelNet40总共有1200多个计算机辅助设计模型,分为40类,包括床、椅子、杯子等,其中训练集为9843个样例。对于给定的模型,以最远点采样方法得到1024个点形成原始点云,随机生成[0°,45°]的旋转角度和[-0.5,0.5]的平移量作用于点云,形成目标点云。

2.2 实验评价指标

本文实验以真实旋转平移矩阵Ggt和预测旋转平移矩阵Gest之间的均方根误差(root mean squared error,RMSE)和平均绝对误差(mean absolute error,MAE)作为评价指标,均方根误差表示了真实旋转平移矩阵与预测旋转平移矩阵之间的相差程度,故均方差越小,说明该模型配准时旋转、平移的精度更高。平均绝对误差值越小,说明旋转平移矩阵的预测误差值越小。

2.3 不可见形状的点云配准

将本文方法和PointNetLK[8]、DeepGMR[17]、DCP[9]、PRNet[11]、FMR[18]以及IDAM[13]进行对比,且均在ModelNet40数据集上进行训练和测试。对比方法中的实验设置与本文一样,测试性能对比结果如表1所示。

表1 不可见形状点云下各算法的配准误差

由于DeepGMR中的高斯混合模型未能得到较好的对应关系,导致在未可见点云形状配准实验中误差最大。由于PointNetLK对初始值的选取比较敏感,容易陷入局部最优解,同样导致了在该实验中配准误差较大。IDAM使用混合特征进行处理,相比其余的方法能够得到更小的配准误差,但是并没有考虑特征间的关联性。本文算法在提取更细致特征的同时给予匹配正确概率大的点对以更大的权重信息,得以减少去除正确的点对,提高模型性能。最终在本实验上得到RMSE(R)为1.07,RMSE(t)为0.009,显著提升了点云配准精度。

图3为本文方法的可视化配准结果。其中浅色为源点云,目标点云是由源点云在[0°,45°]上随机旋转并在[-0.5,0.5]上随机平移得到,如图3a所示。本节实验配准结果如图3b所示,可以清楚的看出本文方法对不可见形状的点云能够精确配准。

(a) 初始点云

2.4 网络泛化性

本节以ModelNet40训练集中的前20个类别进行训练,后20个类别的数据集作为测试集来评估这些点云配准模型的泛化能力,结果如表2所示。

表2 不可见类别点云下各算法的配准误差

由于深度学习方法的训练模型和测试模型均属于不同的类别,配准性能有所下降,但本文方法在各项指标上均优于其他的对比方法,对不可见类别的点云数据具有良好的泛化性。本节配准可视化结果如图4所示。其中浅色为源点云,目标点云是由源点云在[0°,45°]上随机旋转并在[-0.5,0.5]上随机平移得到,如图4a所示。本节实验配准结果如图4b所示,可以看出本文方法在不可见类别的点云上依旧具有良好的配准精度,泛化性较好。

(a) 初始点云

2.5 高斯噪声实验

由于真实场景扫描的点云模型会包含不同程度大小的噪声。因此本小节实验以标准差为0.01,范围为[-0.05,0.05]的高斯噪声,随机添加进所有不可见形状的点云来模拟真实场景,其他设置与2.3节的实验一样,所得结果如表3所示。

表3 不可见形状点云中加入噪声的配准误差

由于添加的高斯噪声对特征的影响较大,PointNetLK和DeepGMR模型的配准性都受到了较大的影响。PRNet和IDAM方法依旧是配准结果较好,主要是因为局部特征描述子的鲁棒性好。本文方法在采样时调整异常的采样点,减少了异常点对模型的影响,同时对不匹配的点对关系给予更低的权重,提高模型对噪声的鲁棒程度,因此本文方法在指标上均优于其他对比方法,具有抵抗噪声的良好泛化能力。

2.6 实测零件点云配准

为验证本文算法在实际场景中的可行性,采用三维激光扫描仪获取三组实物的点云模型进行配准,实物及其对应点云模型如图5所示。

图5 零件实物及对应点云图

同样目标点云是由源点云在[0°,45°]上随机旋转并在[-0.5,0.5]上随机平移得到,依旧选取在ModelNet40数据集上性能较优的DCP,PRNet,FMR和IDAM算法与本文算法进行对比,最终结果如表4所示。

表4 实测零件点云配准误差

由于实际采集的点云包含更多的噪点,极其影响点云模型配准的误差,从表中可以看出DCP误差最大,主要是由于噪点影响了计算出模拟点云位姿,导致了在向目标点云逼近的误差变大。由于FMR是将获得的全局特征组成方位图来计算点云特征的差异,但噪点减小了该差异,导致配准误差同样不好。本文方法在采样阶段减少了噪声的影响,同时动态链接的图神经网络和交叉注意力保证了特征的差异化,因此具有较低的配准误差。本文方法的配准结果如图6所示,其中浅色点云为源点云,可以看出具有良好的配准效果。

图6 零件点云图模型配准图

2.7 消融实验

本节对所提模型进行消融实验研究,以显示每个部分的有效性。这里分别研究了以IDAM模型作为基本模型时,分别添加自适应采样法(记为AS)、动态链接的图神经网络模型(记作LDGNN)和混合注意力机制(记为Att)对模型的影响,结果如表5所示。

表5 实测零件点云配准误差

同时自适应采样方法提升幅度不大,可能是因为ModeldNet40中的点云模型是由CAD模型中采样得到,几乎没有噪声点,因此在噪声点一定的时候,会有一个不错的提升效果。对于LDGNN模块和混合注意力模块对模型提升较大,可能是捕获到更多的点云特征的同时提高对应点的权重,给予了更可靠的对应关系,使得模型配准更加准确。

3 结束语

本文在IDAM点云配准网络的基础上进行了改进,利用自适应采样方法来有效缓解异常点对模型的影响,以动态链接的图神经网络捕获更多的局部信息,同时配合混合注意力来减少特性信息的损失,提高网络的鲁棒性。在ModelNet40数据集和实际扫描的点云模型配准实验结果表明,本文算法与IDAM及部分深度学习的配准网络相比,具有配准精度高,对噪声有更好的鲁棒性以及不错的泛化性。此外,在未来工作中,将继续研究模型的轻量化与配准精度结合,以获得更为精准、快速的配准结果。

猜你喜欢

源点注意力卷积
让注意力“飞”回来
基于3D-Winograd的快速卷积算法设计及FPGA实现
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
隐喻的语篇衔接模式
“扬眼”APP:让注意力“变现”
首届“丝路源点·青年学者研讨会”主题论坛在我校成功举办
A Beautiful Way Of Looking At Things
一种基于卷积神经网络的性别识别方法
具有多条最短路径的最短路问题