当前位置: 首页 > news >正文

基于图注意力网络的两阶段图匹配点云配准方法

Two-stage graph matching point cloud registration method based on graph attention network— 基于图注意力网络的两阶段图匹配点云配准方法

从两阶段点云配准方法中找一些图匹配的一些灵感。文章提出了两阶段图匹配点云配准网络(TSGM-Net) TSGM-Net

在这里插入图片描述

摘要概括

  1. 首先,我们设计了动态图到点(DGTP)模块来学习点云局部图的特征表示,以提高局部特征的识别能力

  2. 然后,通过Transformer和引入的边缘阈值λ动态建立边缘,并使用图注意网络提取点云的全局特征以考虑拓扑结构中相似特征之间的关系。

  3. 同时,从节点本身、局部和全局三个维度计算分数,并求和以进行关键点检测。

  4. 最后,提出了一种两阶段图匹配方法,将具有高度相似特征的关键点分为不同的点组,并在第一阶段图匹配中建立点组的对应关系。在第二阶段的图匹配中建立了对应点群中的点的对应关系,从而减少了相似特征对点云配准精度的影响。

构造出来的是一个双阶段的点云配准网络。

导言与相关工作

因为自己对3d相关的一些知识接触的比较少,因此对于点云配准的相关经典算法不在进行解释,只是总结一下与本文密切相关的一些信息,着重学习网络和各个模块的设计方法。

两阶段图匹配点云配准网络(TSGM-Net),以更好地处理具有重复几何结构的点云。

  • 我们设计了一个动态图到点(DGTP)模块,通过为一个点及其多个最近点构建局部完整图并将图的特征表示为点的特征来提取局部特征。

  • 基于局部特征,使用图注意力网络提取点云的全局特征。基于Transformer计算的点间相关性与引入的边缘阈值λ进行比较,为重要节点建立边缘,动态构建点云的全局不完全图

  • 同时,关键点检测模块计算每个点的自得分、局部得分和全局得分,并将三者得分相加得到总得分

  • 之后,该模块会将总得分最大的前 N ​​个点作为关键点,并使用 K 最近邻(KNN)将所选关键点划分为多个点组。对全局视图中的点群进行第一阶段图匹配,然后对局部视图中相应点群中的点进行第二阶段图匹配

采用两阶段图匹配方法,将特征高度相似的点划分为不同的点组进行匹配,以减少错误对应的产生。

在这里插入图片描述

文章的贡献总结

  1. 我们提出了一种两阶段图匹配方法。 第一阶段对点群进行图匹配,第二阶段对对应点群中的点进行图匹配,解决特征高度相似导致的对应错误问题。

  2. 我们设计了一个DGTP模块(动态图到点)。 我们为点云构建局部完整图,并利用图的特征表示作为点的特征,以提高提取局部特征的能力。

  3. 我们利用图注意力网络提取全局特征,并引入边缘阈值λ来动态构造重要节点的边缘,构建点云的全局不完全图,以充分利用图注意力网络来聚合拓扑结构。

  4. 我们从节点本身、局部和全局三个维度计算分数进行关键点检测,从而提高关键点的可靠性。

核心方法—问题描述

  1. 对于三维空间中的两个点云:X和Y 且 X为源点云,Y 为目标点云。

X = { x j ∈ R 3 ∣ j = 1 , ⋯ , J } and  Y = { y k ∈ R 3 ∣ k = 1 , ⋯ , K } X=\left\{x_{j} \in \mathbb{R}^{3} \mid j=1, \cdots, J\right\} \text { and } Y=\left\{y_{k} \in \mathbb{R}^{3} \mid k=1, \cdots, K\right\} X={xjR3j=1,,J} and Y={ykR3k=1,,K}

xj 是X中第j个点的坐标,yk 是Y中第k个点的坐标 J 和 K 是 X 和 Y 中的点的个数。

  1. 点云配准的任务是寻找最优的刚性变换{R,t}对齐两个点云 X 和 Y。其中R代表的是旋转矩阵 t ∈ R3 是平移矩阵

R ∈ S O ( 3 ) R \in S O(3) RSO(3)

  1. 假设 J ==K 且 xj 和 yj 是一对对应点,我们可以通过最小化下面的方程来对齐两个点云。

E ( R , t ) = 1 J ∑ j J ∥ R x j + t − y j ∥ 2 E(R, t)=\frac{1}{J} \sum_{j}^{J}\left\|R x_{j}+t-y_{j}\right\|^{2} E(R,t)=J1jJRxj+tyj2

然而,通常情况下,J≠K,并且X和Y中的点的顺序是不同的。 也许xj和yk是一对对应点,并且X中可能没有点与Y中的点对应。

  1. 对于这种情况,我们决定选择 N 个关键点 点云配准是通过最小化方程来实现的

X k = { x p k ∈ R 3 ∣ p = 1 , ⋯ , N } X^{k}=\left\{x_{p}^{k} \in \mathbb{R}^{3} \mid p=1, \cdots, N\right\} Xk={xpkR3p=1,,N}

Y k = { y q k ∈ R 3 ∣ q = 1 , ⋯ , N } . Y^{k}=\left\{y_{q}^{k} \in \mathbb{R}^{3} \mid q=1, \cdots, N\right\} . Yk={yqkR3q=1,,N}.

其中 M 是从 Xk 中的点到 Yk 中的点的映射

E ( M , R , t ) = 1 N ∑ p N ∥ R x p k + t − y M ( x p k ) k ∥ 2 , E(M, R, t)=\frac{1}{N} \sum_{p}^{N}\left\|R x_{p}^{k}+t-y_{M\left(x_{p}^{k}\right)}^{k}\right\|^{2}, E(M,R,t)=N1pN Rxpk+tyM(xpk)k 2,

核心过程具体实现

整体概述

TSGM-Net的架构如图所示
在这里插入图片描述

根据刚性变换 :

{ R i − 1 , t i − 1 } \left\{R_{i-1}, t_{i-1}\right\} {Ri1,ti1}
通过 i − 1 次迭代求解从而得到变换后的点云Xi−1

  • 对于输入点云 Xi−1 和 Y,我们使用 DGTP 模块进行局部特征提取,使用图注意网络进行全局特征提取

也就是对应图中的第一个部分和第二个部分所描述的结构。

  • 选择质量较高的关键点,并基于KNN将其划分为点组。

通过KNN划分为多个组。

  • 基于组的特征提取用于学习每个点组中关键点拓扑结构并进行图特征表示。

也就是对应图中的第二个部分关键点检测模块和分组的阶段。

  • 第一阶段的图匹配是对每个点群的图特征表示进行,以建立点群之间的对应关系。 第二阶段图匹配根据点群与关键点特征的对应关系建立对应关系M

M = { M R , M t } M=\left\{M_{R}, M_{t}\right\} M={MR,Mt}

对应点群中的点。

最后通过SVD的分解运算得到最后所需要第i次迭代的刚性变换的矩阵。

在这里插入图片描述

在这里插入图片描述

图1 TSGM-Net架构图。 TSGM-Net从点云Xi−1和Y中提取局部和全局特征,并通过关键点检测模块获得关键点。 在两阶段图匹配中,首先将关键点分为点组,并使用图特征表示进行基于组的特征提取。 然后,通过第一阶段的图匹配建立Xi−1和Y之间的点群对应关系Mgroup。 基于Mgroup,对对应点群的关键点进行第二阶段图匹配,得到两个点云之间的对应关系MR和Mt。 最后,使用基于 MR 和 Mt 的 SVD 求解第 i 次迭代的刚性变换 {Ri,ti}

Dynamic Graph-to-Point-DGTP模块

动态图到点模块(DGTP)

论文中对局部特征提取的描述部分

X中的点xj ∈ R3,将xj的3D坐标映射到高维空间,以获得xj的局部特征Fxj。 因此,我们使用DGTP进行特征提取,得到X的局部特征为Fx ∈ RF。

在这里插入图片描述

对于距离xj最近的点xi,通过MLP建立两点之间的边缘特征fji ∈ RF,并将该边缘特征作为点xi的特征

http://www.lryc.cn/news/509016.html

相关文章:

  • 【半导体光电子器件】课后习题答案和知识点汇总
  • Unity命令行传递自定义参数 命令行打包
  • web-worker应用在大文件切片上传
  • Django 模板分割及多语言支持案例【需求文档】-->【实现方案】
  • C中设计不允许继承的类的实现方法是什么?
  • 面对小白的C语言学习方法
  • 使用libgif库解码全过程(C语言)-包括扩展块的处理
  • blazor实现ASP.NET网站用户批量注册方法
  • SpringCloud 入门(4)—— 网关
  • 什么是WebAssembly?怎么使用?
  • v3s点RGB屏 40pin 800x480,不一样的点屏,不通过chosen。
  • 某科技局国产服务器PVE虚拟化技术文档
  • 中科岩创边坡自动化监测解决方案
  • GPT-O3:简单介绍
  • cudnn版本gpu架构
  • 数据库安全-redisCouchdb
  • ubuntu22.04安装PaddleX3
  • Flutter 实现全局悬浮按钮学习
  • 14-C语言多文件编程
  • 基于Springboot的在线问卷调查系统【附源码】
  • Redis热点数据管理全解析:从MySQL同步到高效缓存的完整解决方案
  • 【图书介绍】】几本Linux C\C++编程图书
  • MFC/C++学习系列之简单记录7
  • 使用GPT进行SCI论文润色常用语句
  • Redis密码设置与访问限制(网络安全)
  • php的线程安全与非线程安全版本的区别
  • 标贝科技受邀出席2024ADD数据应用场景大会 共议数据要素发展新契机
  • electron-vite打包后图标不生效问题
  • systemverilog中的unique if
  • 【MySQL篇】事务的认识以及四大特性