论文标题:
Unsupervised Deep Probabilistic Approach for Partial Point Cloud Registration
论文作者:
Guofeng Mei; Hao Tang; Xiaoshui Huang; Weijie Wang; Juan Liu; Jian Zhang; Luc Van Gool; Qiang Wu
1. 摘要
目前,点云配准方法面临着部分数据重叠且依赖于标记数据的挑战,为了解决这些问题,提出了一种无监督的深度点云的概率配准框架UDPReg。首先采用网络从点云中学习高斯混合模型(GMM)的后验概率分布,在局部点云配准问题上,应用Sinkhorn算法来预测在GMM的混合权重约束下的分布级别对应关系。为了实现无监督学习,设计了三种基于分布一致性的损失:自一致性、交叉一致性和局部对比。自一致性损失是通过鼓励欧几里得和特征空间中的GMM共享相同的后验分布来公式化。交叉一致性损失源于属于同一簇的两个部分重叠的点云的点共享簇质心的事实,且允许网络灵活地学习两个对齐点云变换不变的后验分布。局部对比损失有助于网络提取有区别的局部特征。实验结果表明UDPReg在3DMatch/3DLoMatch和ModelNet/ModelLoNet基准测试上取得了具有竞争力的性能。
2. 创新点
1)提出了一种基于无监督学习的概率框架来配准部分重叠的点云方案;
2)提供了一个深度概率框架,通过采用Sinkhorn算法来预测分布级对应来解决部分点云配准问题;
3)制定了自一致性、交叉一致性和局部对比损失,以使坐标和特征空间中的后验概率一致,从而能够以无监督的方式训练特征提取器;
4)在全面的实验中实现了最先进的性能,包括合成和现实世界的数据集。
3. 网络结构
UDPReg使用共享加权网络分别从源点云 P s P_s Ps和目标点云 P t P_t Pt中提取点级特征 F s F_s Fs和 F t F_t Ft,计算重叠分数 O s O_s Os和 O t O_t Ot。簇头利用 F s F_s Fs和 F t F_t Ft计算概率矩阵 S s S_s Ss和 S t S_t St,用于估计GMM参数。最后,利用簇群和点级匹配模块估计对应 M M M,这些对应 M M M用于估计变换 t t t。
图1|UDPReg网络结构©️【深蓝AI】编译
4. 方法
4.1 基于提出GMM的配准方法
· 特征提取
编码器采用类似于Resnet和跨步卷积组成的共享编码器KPConv-FPN。同时将原始点云 P s P_s Ps和 P t P_t Pt降采样为重叠点云 P ‾ s \overline{P}s Ps和 P ‾ t \overline{P}t Pt,然后,应用自注意和交叉注意对两个部分重叠点云的上下文信息进行编码,输出条件特征 F ‾ s \overline{F}s Fs和 F ‾ t \overline{F}t Ft。最后,共享解码器从条件特征和输出点向特征描述符 F s F_s Fs和 F t F_t Ft,其重叠分数为 O s O_s Os和 O t O_t Ot。解码层则结合线性层的NN上采样,并包括相应编码器层的跳过连接。
· 学习特征
与之前只考虑概率配准模型中点的空间坐标不同,提出了一种学习空间坐标和特征空间上的联合分布方法,即应用一个MLP(簇头 ψ ψ ψ),以 F s F_s Fs和 F t F_t Ft作为输入并输出联合对数概率,以及一个作用于对数概率的Softmax算子,分别生成概率矩阵 S s S_s Ss和 S t S_t St。另外直接添加高斯核密度来处理异常值,GMM参数 Θ x Θ_x Θx在三维坐标空间中由 L L L个三元组( π j x , μ j x , ∑ j x \pi^x_{j},\mu^x_{j}, {\textstyle \sum_{j}^{x}} πjx,μjx,∑jx)组成。给定 ψ ψ ψ的输出 S x S_x Sx和点坐标 P x P_x Px,GMMs计算为:
π j x = 1 N x ∑ i = 1 s ^ i j x \pi ^x_{j}=\frac{1}{N_x} {\textstyle \sum_{i=1}} \hat{s}^x_{ij} πjx=Nx1∑i=1s^ijx μ j x = 1 N x π j x ∑ i = 1 s ^ i j x p i x \mu ^x_{j}=\frac{1}{N_x \pi^x_{j}} {\textstyle \sum_{i=1}} \hat{s}^x_{ij} p^x_i μjx=Nxπjx1∑i=1s^ijxpix ∑ j x = ∑ i = 1 s ^ i j x ( p i x − μ j x ) ( p i x − μ j x ) T {\textstyle \sum_{j}^{x}}={\textstyle \sum_{i=1}} \hat{s}^x_{ij} (p^x_i-\mu^x_j)(p^x_i-\mu^x_j)^T ∑jx=∑i=1s^ijx(pix−μjx)(pix−μjx)T G x ( x ) = ∑ j = 1 π j x N ( x ∣ μ i x , ∑ j x ) , x ∈ { s , t } G^x(x)={\textstyle \sum_{j=1}} \pi^x_{j}N(x|\mu^x_i,\textstyle\sum^x_j),x\in \left \{ s,t \right \} Gx(x)=∑j=1πjxN(x∣μix,∑jx),x∈{s,t}
与坐标空间类似,基于概率矩阵 S s S_s Ss和 S t S_t St,特征空间中点云 P s P_s Ps和 P t P_t Pt的GMM参数计算为:
μ j f x = ∑ i = 1 N x s ^ i j x f i x N x π j x , ∑ j f x s ^ i j x ( f i x − μ j f x ) ( f i x − μ j f x ) T \mu_j^{fx}=\sum_{i=1}^{Nx} \frac{\hat s_{ij}^x f_i^x}{Nx \pi_j^x} , {\textstyle \sum_{j}^{fx}}\hat s_{ij}^x(f_i^x-\mu_j^{fx})(f_i^x-\mu_j^{fx}) ^T μjfx=i=1∑NxNxπjxs^ijxfix,∑jfxs^ijx(fix−μjfx)(fix−μjfx)T
其中,坐标空间和特征空间中的GMM共享混合系数。
· 簇级匹配
加权的分布级对应关系不是间接地在 G s G_s Gs和 G t G_t Gt之间进行最大似然估计,而是基于GMM的混合权重和分布在特征空间中的 L 2 L_2 L2距离,将其表示为对分量的软分配,这是因为当两个点云部分重叠时,( π j x , μ j x , ∑ j x \pi^x_{j},\mu^x_{j}, {\textstyle \sum_{j}^{x}} πjx,μjx,∑jx)和( π j t , μ j t , ∑ j t \pi^t_{j},\mu^t_{j}, {\textstyle \sum_{j}^{t}} πjt,μjt,∑jt)并不完全匹配。此外,排列的组分应具有相似的混合权重和较小的距离。为了估计对应关系,首先计算两个GMM之间的距离,如下所示:
D ( Φ i f s , Φ j f t ) = ∫ R ( Φ i f s ( x ) − Φ j f t ( x ) ) 2 d x D(\Phi_i^{fs},\Phi_j^{ft} )=\int_{\mathbb{R}} (\Phi_i^{fs}(x)-\Phi_j^{ft}(x))^2dx D(Φifs,Φjft)=∫R(Φifs(x)−Φjft(x))2dx
在部分重叠配准中,一些分量被遮挡在另一帧中,因此进行直接求解,将代价矩阵改为元素满足的 D ^ \hat D D^,如果 i , j i,j i,j小于 L L L,则 D ^ i j = D i j \hat D_{ij}=D_{ij} D^ij=Dij,否则 D ^ i j = z \hat D_{ij}=z D^ij=z, z z z是一个可学习的参数。扩展分配矩阵 Γ ∈ R L × L \Gamma\in R^{L\times L} Γ∈RL×L可以通过求解以下优化问题来估计:
m i n Γ ∑ i j Γ i j D ^ i j , s . t . , Γ 1 L = π ^ s , Γ T 1 L = π ^ t , Γ i j ∈ [ 0 , 1 ] min_\Gamma \sum _{ij} \Gamma _{ij} \hat D_ij, s.t.,\Gamma 1_L=\hat \pi^s,\Gamma ^T1_L=\hat \pi^t,\Gamma _{ij}\in [0,1] minΓij∑ΓijD^ij,s.t.,Γ1L=π^s,ΓT1L=π^t,Γij∈[0,1]
通过Sinkhorn算法寻求最优解。之后, Γ \Gamma Γ的每个条目 ( i , j ) (i,j) (i,j)表示组件之间的匹配置信度。
· 点级匹配
首先通过将每个点分配给几何空间中最近的质心来将点划分为簇。分组后,获得由点组成的三维块以及相应的聚类分数和描述符。这些能够提取到对应点。对于质心 μ i s \mu^s_i μis的关联点集 C i s C^s_i Cis和特征集 F i s F^s_i Fis表示为:
{ C i s = { p s ∈ P s ∣ ∥ p s − μ i s ∥ 2 ≤ ∥ p s − μ ˉ i s ∥ 2 , i ≠ j } F i s = { f j s ∈ F s ∣ p j s ∈ C i s } S i s = { s j i s ∈ s i s ∣ p j s ∈ C i s } \left\{\begin{matrix} \begin{aligned} &C^s_i=\left \{ p^s \in P^s| \left \| p^s-\mu^s_i\right \|_2\le \left \| p^s- \bar{\mu}^s_i\right \|_2 ,i\ne j \right \} \\&F^s_i=\left \{f^s_j \in F^s|p^s_j \in C^s_i \right \} \\&S^s_i=\left \{s^s_{ji} \in s^s_i|p^s_j \in C^s_i \right \} \end{aligned} \end{matrix}\right. ⎩ ⎨ ⎧Cis={ps∈Ps∣∥ps−μis∥2≤∥ps−μˉis∥2,i=j}Fis={fjs∈Fs∣pjs∈Cis}Sis={sjis∈sis∣pjs∈Cis}
对 μ j t \mu^t_j μjt执行同样的运算符,得到 C i t , F i t , S i t C^t_i,F^t_i,S^t_i Cit,Fit,Sit。为了提高计算效率,每个patch基于概率抽取 K K K个点。与聚类级预测类似,给定一对重叠的patch μ i s , C i s , F i s \mu^s_i,C^s_i,F^s_i μis,Cis,Fis和 C i t , F i t , S i t C^t_i,F^t_i,S^t_i Cit,Fit,Sit,提取点对应就是通过求解优化问题从而匹配两个较小的对应尺度点云 ( C i s , C i t ) (C^s_i,C^t_i) (Cis,Cit):
m i n Γ i ⟨ D i , Γ i ⟩ , s . t . , Γ T 1 K = S i t , Γ i 1 K = S i s min_{\Gamma^i} \left \langle D^i,\Gamma ^i \right \rangle ,s.t.,\Gamma ^T1_K=S^t_i,\Gamma ^i1_K=S^s_i minΓi⟨Di,Γi⟩,s.t.,ΓT1K=Sit,Γi1K=Sis
其中, Γ i \Gamma ^i Γi表示一个对齐矩阵。之后,从 ( C i s , C i t ) (C^s_i,C^t_i) (Cis,Cit)中选择对应每一行 Γ i \Gamma ^i Γi具有最大置信度得分,再从一对patch中提取每个对应集合,得到最终的点对应集M。最后,利用RANSAC变体以M作为输入来估计变换矩阵。
4.2 基于一致性的无监督学习
· 自一致性损失
自一致性损失增强点云在坐标和特征空间中共享相同的后验分布。它可以直接使用,因为训练网络参数相当于优化 Θ s Θ_s Θs和 Θ t Θ_t Θt,故GMMs参数可以通过最大化 Θ s Θ_s Θs和 Θ t Θ_t Θt样本的对数似然来拟合到观测数据点,然而,对数似然函数在训练过程中是不稳定的,因为对于特定的均值和一些退化的协方差矩阵的组合,它的值趋于无穷大。为了避免协方差退化,在混合权值的约束下,根据估计的点到质心的距离来近似每个聚类的点的概率。利用表示 P s P_s Ps和 P t P_t Pt的经验分布矩阵表示为 γ s = { γ i j s } \gamma ^s=\left \{ \gamma ^s_{ij} \right \} γs={γijs}和 γ t = { γ i j t } \gamma ^t=\left \{ \gamma ^t_{ij} \right \} γt={γijt},得到优化目标:
m i n γ x ∑ i , j γ i j x ∥ p i x − μ j x ∥ 2 2 , s . t . , ∑ i γ i j x = N x π j x , ∑ j γ i j x = 1 , γ i j ∈ [ 0 , 1 ] \begin{aligned} & min_{\gamma ^x} \sum_{i,j}\gamma^x_{ij} \left \| p^x_i-\mu ^x_j \right \| ^2_2, \\& s.t.,\sum_{i}\gamma ^x_{ij}=N_x\pi ^x_{j},\sum_{j}\gamma^x_{ij}=1,\gamma_{ij} \in[0,1] \end{aligned} minγxi,j∑γijx pix−μjx 22,s.t.,i∑γijx=Nxπjx,j∑γijx=1,γij∈[0,1]
通过采用一种高效版本的Sinkhorn算法来解决此公式的最小化问题。坐标和特征空间共享相同的后验分布意味着 S x S_x Sx和 γ x \gamma^x γx应该相等,这会导致交叉熵损失。因此,得到自洽损失公式如下:
L s c = − ∑ i j γ i j s l o g s i j t − ∑ i j γ i j t l o g s i j t L_{sc}=-\sum_{ij}\gamma ^s_{ij}logs^t_{ij}-\sum_{ij} \gamma ^t_{ij}logs^t_{ij} Lsc=−ij∑γijslogsijt−ij∑γijtlogsijt
· 交叉一致损失
所得到自洽损失只能促使学习到的表征具有空间敏感性,但不能保证学习到的特征是变换不变性的。因此,引入交叉一致性损失来鼓励网络学习变换不变的特征表示。交叉一致性损失是基于如果点被严格变换,聚类标记不应该改变的事实,这就意味着,如果点 p s ∈ P s p_s∈P_s ps∈Ps和点 p t ∈ P t p_t∈P_t pt∈Pt属于同一个簇,则应该共享同一个簇质心。因此,交叉一致性损失可以充分利用两个对齐点云的信息。假设当前估计的旋转和平移是 R R R和 t t t,定义 P ˉ s = R P s + t \bar{P} ^s=RP^s+t Pˉs=RPs+t和 P = c a t ( P ˉ , P t ) P=cat(\bar{P},P^t) P=cat(Pˉ,Pt)。然后在特征空间和欧几里得空间中计算全局GMMs的参数为:
π j = ∑ i s i j N , μ j f = ∑ i s i j f i π j N , μ j e = ∑ i s i j p i π j N \pi _j=\frac{\sum_i s_{ij}}{N} ,\mu_j^f=\frac{\sum_i s_{ij}f_i}{\pi _j N},\mu_j^e=\frac{\sum_i s_{ij}p_i}{\pi _j N} πj=N∑isij,μjf=πjN∑isijfi,μje=πjN∑isijpi
为避免两个对齐的点云被分成单独的簇,我假设聚类满足两个约束:
1)GMMs在坐标和特征空间中具有近似均匀的混合权值。
2)如果点 p i p_i pi属于分区 j j j,则点 p i p_i pi与其耦合质心的距离最短。
设 γ = { γ i j } \gamma =\left \{ \gamma_{ij} \right \} γ={γij}为经验概率矩阵,可以通过最小化以下目标来确保这两个约束
其中 λ i ∈ [ 0 , 1 ] \lambda_i\in[0,1] λi∈[0,1]为学习参数。求解此式后,可将交叉一致性损失推断为
L c c ( γ , S ) = − ∑ i j γ i j l o g s i j L_{cc}(\gamma ,S)=-\sum_{ij}\gamma _{ij} logs_{ij} Lcc(γ,S)=−ij∑γijlogsij
· 局部对比损失
局部邻域为点云对象的特征学习提供了必要的信息,如果网络从其他完整对象中捕获局部结构信息,则可以在训练过程中增强模型对不完整对象的鲁棒性。而点云的局部描述符主要来源于点及其相邻点,可以通过引入局部对比损失来对点云的局部信息进行建模。具体过程是通过给定点云的质心,通过逐点欧式距离搜索其近邻点和特征向量,然后构建InfoNCE之后的局部对比损失,将特征向量拉近质心,同时将其推离其他点的近邻向量,且源点云与目标点云处理类似:
L l c = − 1 L ∑ i = 1 L l o g e x p ( μ i f s μ i f t T ) ∑ j = 1 L e x p ( μ i f s μ i f t T ) − 1 L ∑ i = 1 L l o g e x p ( μ i f s μ i s T ) e x p ( μ i f t μ i t T ) ∑ j = 1 L e x p ( μ i f s μ j s T ) e x p ( μ i f t μ j t T ) \begin{aligned} & L_{lc}=-\frac{1}{L}\sum_{i=1}^Llog\frac{exp(\mu _i^{f_s} \mu_i^{f_t T})}{\sum_{j=1}^Lexp(\mu _i^{f_s} \mu_i^{f_t T})}- \\& \frac{1}{L}\sum_{i=1}^Llog\frac{exp(\mu _i^{f_s} \mu_i^{s T})exp(\mu _i^{f_t} \mu_i^{t T})}{\sum_{j=1}^Lexp(\mu _i^{f_s} \mu_j^{s T})exp(\mu _i^{f_t} \mu_j^{t T})} \end{aligned} Llc=−L1i=1∑Llog∑j=1Lexp(μifsμiftT)exp(μifsμiftT)−L1i=1∑Llog∑j=1Lexp(μifsμjsT)exp(μiftμjtT)exp(μifsμisT)exp(μiftμitT)
最终的损失是自一致性损失、交叉一致性损失和局部对比损失的组合:
L = L s c + L c c + L l c L=L_{sc}+L_{cc}+L_{lc} L=Lsc+Lcc+Llc
5. 实验结果
5.1 3DMatch和3DLoMatch的配准结果
3DMatch和3DLoMatch数据集的配准结果如表1所示,粗体表示最佳性能,而最佳无监督结果用下划线标记。对于3DMatch和3DLoMatch,本方法优于所有无监督方法,并且在场景中实现了最低的平均旋转(RRE)和平移(RTE)误差,也达到了最高的平均配准召回率(3DMatch上的91.4%和3DLoMatch上的64.3%)。UDPReg在很大程度上超过了SGP(3DMatch上的RR为85.5%)约为5.9%。而且本方法也超过了一些有监督的方法,如OGMM,FCGF,D3Feat,DGR和Predator1k,在高重叠和低重叠场景下都显示出它的有效性。
表1|3DMatch和3DLoMatch数据集的配准结果©️【深蓝AI】编译
图2和图3显示了3DMatch和3DLoMatch的定性结果示例。在3DMatch的图2中有1例SGP失败,在3DLoMatch的图3中有2例SGP失败,但本文方法均成功。这是因为无监督方法可以学习到更多的判别特征,进而让匹配策略可以处理部分重叠配准,这进一步表明了UDPReg的有效性。
图2|3DMatch的配准结果©️【深蓝AI】编译
图3|3DLoMatch的配准结果©️【深蓝AI】编译
5.2 ModelNet40的配准结果
ModelNet40数据集的配准结果如表2所示,其中粗体表示标准的最佳结果,下划线表示无监督方法的最佳结果。与无监督方法相比,在正常重叠(ModelNet)和低重叠(ModeLoNet)机制下,UDPReg在所有指标上都优于基于对应的CEMNet、RIENet和基于GMM的UGMM。与监督方法相比,UDPReg在旋转和平移方面优于所有以前的方法。
表2|ModelNet和ModeLoNet数据集的结果©️【深蓝AI】编译
除定量结果外,图4显示了在偏度大于70%的ModelNet结果,还提供了图5中超过50.0%部分重叠的ModeLoNet配准结果。与最近的SOTA无监督方法RIENet相比,UDPReg在具有挑战性的数据集ModeLoNet上更准确地完成了转换。
图4|不同方法在ModelNet上部分重叠超过70%的配准结果©️【深蓝AI】编译
图5|不同方法在ModelLoNet上部分重叠大于50%的配准结果©️【深蓝AI】编译
6. 结论
提出了一种基于分布一致性的无监督深度概率配准框架。该方法的优点之一是将概率配准扩展到处理部分重叠的点云配准,采用Sinkhorn算法预测分布级对应关系。此外,提出的自一致、交叉一致和局部对比损失以无监督的方式训练特征提取器。实验结果表明,该算法具有较好的性能。
7. 结语
总的来看,这篇无监督的点云配准论文最终的效果不错,通过经典的编码器和解码器架构进行创新,利用GMMs及三种损失函数将无监督的点云配准结果推向新的高度,同时网络结构上最后一层利用LeakyReLU激活函数,最后使用AdamW进行优化,这都是可以借鉴的地方。
编译|William
审核|Los
移步公众号【深蓝AI】,第一时间获取自动驾驶、人工智能与机器人行业最新最前沿论文和科技动态。