点云配准--对称式ICP

这篇具有很好参考价值的文章主要介绍了点云配准--对称式ICP。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

对称式ICP

写在前面的话

针对于局部平面不完美的情况,提出了一种对称式ICP目标函数,相较于传统的ICP方法,增大了收敛域,提高了收敛速度。论文理论说明不甚清楚,实验较少,但代码开源。

理论

对称目标函数

在icp中对于一对对应点p,q:在点到法线的度量中:
( p − q ) ⋅ n q (3) (p-q) \cdot n_q\tag{3} (pq)nq(3)
只有当局部表面是一个完美平面时上式才成立,因此提出一种标准对称式度量:
( p − q ) ⋅ ( n p + n q ) . (4) (p-q) \cdot\left(n_p+n_q\right) .\tag{4} (pq)(np+nq).(4)
点云配准--对称式ICP,点云,点云配准,算法,计算机视觉

如图1所示,只要p,q位于圆弧上,此时向量(p-q)垂直于向量(np-nq),等式4恒成立。
点云配准--对称式ICP,点云,点云配准,算法,计算机视觉

图2中,当 p 相对于 q 移动时,只要存在某个与 p、q、np 和 nq 一致的圆弧,性质 (p − q) · (np + nq ) = 0 就成立。点到面:当 p 位于 q 和 nq 定义的平面中时,无论 np 如何,点到平面度量为零。
对于等式4而言,在 3D 中也成立:只要 p 和 q 及其法线与某个圆柱体一致,方程 4 的计算结果就为零。
此外,4.1 节研究了一个不同的属性:只要 p 和 q 与位于它们之间的局部二阶曲面一致,方程 4 也成立。虽然此约束仍然为 (p, np ) 相对于 (q, nq ) 移动提供了更大的自由度,但它是比点到平面度量提供的“更有用”的自由形式。(增大了收敛域,更容易找到全局最优变换)。
对于目标函数而言,大多数先前的工作仅将刚体变换应用于其中一个表面(例如,点到面中的变换仅应用于 p),但我们考虑变换的对称形式:我们想象在一个固定的“中性”坐标中(既不在p坐标系也不在q坐标系中)评估度量,并对 P 和 Q 应用相反的变换。因此,我们可以将对称目标制定为:
E s y m m − R N = ∑ i [ ( R i − R − 1 q i + t ) ⋅ ( R n p , i + R − 1 n q , i ) ] 2 , (5) \mathcal{E}_{s y m m-R N}=\sum_i\left[\left(\mathrm{R}_i-\mathrm{R}^{-1} q_i+t\right) \cdot\left(\mathrm{R} n_{p, i}+\mathrm{R}^{-1} n_{q, i}\right)\right]^2,\tag{5} EsymmRN=i[(RiR1qi+t)(Rnp,i+R1nq,i)]2,(5)
我们还探索了该目标的一个更简单的版本,其中法线不旋转。也就是说,每个点对的最小化方向保持固定,而点本身沿相反方向旋转:
E s y m m = ∑ i [ ( R i − R − 1 q i + t ) ⋅ ( n p , i + n q , i ) ] 2 (6) \mathcal{E}_{s y m m}=\sum_i\left[\left(\mathrm{R}_i-\mathrm{R}^{-1} q_i+t\right) \cdot\left(n_{p, i}+n_{q, i}\right)\right]^2\tag{6} Esymm=i[(RiR1qi+t)(np,i+nq,i)]2(6)
为什么这是一个合理的简化?考虑二维中两个单位长度向量的总和。对向量应用相反的旋转可以保留它们的总和的方向,以便每个点对对目标的两个变体的贡献在一定程度上是相同的。在 3D 中,并非所有旋转轴都如此,但当 np 接近 nq 时,这一点也接近正确。 4.3 节中的实验表明,两个目标导致相似的收敛,但 Esymm 导致更简单的推导和实现。因此,本文的其余部分采用 Esymm 作为对称目标。

线性化

我们从 Rodrigues 旋转公式开始的线性化,以了解旋转 R 对向量 v 的影响:
R v = v cos ⁡ θ + ( a × v ) sin ⁡ θ + a ( a ⋅ v ) ( 1 − cos ⁡ θ ) (7) \mathrm{R} v=v \cos \theta+(a \times v) \sin \theta+a(a \cdot v)(1-\cos \theta)\tag{7} Rv=vcosθ+(a×v)sinθ+a(av)(1cosθ)(7)
其中 a 和 θ 是旋转轴和角度。我们观察到,(7) 中的最后一项与增量旋转角 θ 成二次方,因此我们将其丢弃以进行线性化:
R v ≈ v cos ⁡ θ + ( a × v ) sin ⁡ θ = cos ⁡ θ ( v + ( a ~ × v ) ) , (8) \begin{aligned} \mathrm{R} v & \approx v \cos \theta+(a \times v) \sin \theta \\ & =\cos \theta(v+(\tilde{a} \times v)), \end{aligned}\tag{8} Rvvcosθ+(a×v)sinθ=cosθ(v+(a~×v)),(8)

where a ~ = a tan ⁡ θ \tilde{a}=a \tan \theta a~=atanθ. Substituting into (6),
E symm  ≈ ∑ i [ cos ⁡ θ ( p i − q i ) ⋅ n i + cos ⁡ θ ( a ~ × ( p i + q i ) ) ⋅ n i + t ⋅ n i ] 2 = ∑ i cos ⁡ 2 θ [ ( p i − q i ) ⋅ n i + ( ( p i + q i ) × n i ) ⋅ a ~ + n i ⋅ t ~ ] 2 , (9) \begin{aligned} \mathcal{E}_{\text {symm }} \approx & \sum_i\left[\cos \theta\left(p_i-q_i\right) \cdot n_i+\right. \\ & \left.\cos \theta\left(\tilde{a} \times\left(p_i+q_i\right)\right) \cdot n_i+t \cdot n_i\right]^2 \\ =\sum_i \cos ^2 \theta & {\left[\left(p_i-q_i\right) \cdot n_i+\right.} \\ & \left.\left(\left(p_i+q_i\right) \times n_i\right) \cdot \tilde{a}+n_i \cdot \tilde{t}\right]^2, \end{aligned}\tag{9} Esymm =icos2θi[cosθ(piqi)ni+cosθ(a~×(pi+qi))ni+tni]2[(piqi)ni+((pi+qi)×ni)a~+nit~]2,(9)
其中 n i = n p , i + n q , i n_i=n_{p, i}+n_{q, i} ni=np,i+nq,i and t ~ = t / cos ⁡ θ \tilde{t}=t / \cos \theta t~=t/cosθ。现在,我们对目标进行额外的近似加权 1/cos2 θ ,对于较小的 θ ,该值接近 1。 为了数值稳定性进一步考虑归一化,等式9变为如下形式:
∑ i [ ( p ~ i − q ~ i ) ⋅ n i + ( ( p ~ i + q ~ i ) × n i ) ⋅ a ~ + n i ⋅ t ~ ] 2 (10) \sum_i\left[\left(\tilde{p}_i-\tilde{q}_i\right) \cdot n_i+\left(\left(\tilde{p}_i+\tilde{q}_i\right) \times n_i\right) \cdot \tilde{a}+n_i \cdot \tilde{t}\right]^2\tag{10} i[(p~iq~i)ni+((p~i+q~i)×ni)a~+nit~]2(10)
where p ~ i = p i − p ˉ \tilde{p}_i=p_i-\bar{p} p~i=pipˉ and q ~ i = q i − q ˉ \tilde{q}_i=q_i-\bar{q} q~i=qiqˉ. This is a least-squares problem in a ~ \tilde{a} a~ and t ~ \tilde{t} t~, and the final transformation from P \mathcal{P} P to Q Q Q is:
trans ⁡ ( q ˉ ) ∘ rot ⁡ ( θ , a ~ ∥ a ~ ∥ ) ∘ trans ⁡ ( t ~ cos ⁡ θ ) ∘ rot ⁡ ( θ , a ~ ∥ a ~ ∥ ) ∘ trans ⁡ ( − p ˉ ) , (11) \operatorname{trans}(\bar{q}) \circ \operatorname{rot}\left(\theta, \frac{\tilde{a}}{\|\tilde{a}\|}\right) \circ \operatorname{trans}(\tilde{t} \cos \theta) \circ \operatorname{rot}\left(\theta, \frac{\tilde{a}}{\|\tilde{a}\|}\right) \circ \operatorname{trans}(-\bar{p}),\tag{11} trans(qˉ)rot(θ,a~a~)trans(t~cosθ)rot(θ,a~a~)trans(pˉ),(11)
where θ = tan ⁡ − 1 ∥ a ~ ∥ \theta=\tan ^{-1}\|\tilde{a}\| θ=tan1a~.
理论到此结束,后面我会对代码进行分析测试。文章来源地址https://www.toymoban.com/news/detail-735267.html

到了这里,关于点云配准--对称式ICP的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 点云配准(三) 传统点云配准算法概述

             图像配准是图像处理研究领域中的一个典型问题和技术难点,其目的在于比较或融合针对同一对象在不同条件下获取的图像,例如图像会来自不同的采集设备,取自不同的时间,不同的拍摄视角等等,有时也需要用到针对不同对象的图像配准问题。具体地说,对

    2024年02月02日
    浏览(50)
  • 点云配准——经典配准算法及配准效果对比

    目录 点云配准基础知识 什么是点云配准? 点云配准的步骤 粗配准 精配准  点云配准的经典算法 ICP算法 NDT算法 3DSC算法 PFH FPFH 完全配准效果对比         点云配准技术即是通过寻找不同视角下不同点云之间的映射关系,利用一定的算法将同一目标场景的不同点云转换到

    2024年02月02日
    浏览(42)
  • 多视图点云配准算法综述

    作者:杨佳琪,张世坤,范世超等 转载自:华中科技大学学报(自然科学版) 编辑:东岸因为@一点人工一点智能 原文:​​多视图点云配准算法综述​​ 摘要: 以多视图点云配准为研究对象,对近二十余年的多视图点云配准相关研究工作进行了全面的分类归纳及总结。首先

    2024年02月05日
    浏览(47)
  • 激光雷达点云基础-点云滤波算法与点云配准算法

    激光雷达点云处理在五年前就做了较多的工作,最近有一些新的接触发现激光雷达代码原理五年前未见重大更新,或许C++与激光雷达结合本身就是比较高的技术门槛。深度学习调包侠在硬核激光雷达技术面前可以说是完全的自愧不如啊。 1、点云滤波 在获取点云数据时,由于

    2024年03月19日
    浏览(49)
  • 基于深度学习方法的点云算法1——PointNetLK(点云配准)

    请点点赞,会持续更新!!! 基于深度学习方法的点云算法2——PointNet(点云分类分割) 基于深度学习方法的点云算法3——PointNet++(点云分类分割) 基于深度学习方法的点云算法4——PCT: Point Cloud Transformer(点云分类分割) 作者将PointNet看成一个可学习的成像函数(learn

    2024年02月10日
    浏览(44)
  • 自适应点云配准(RANSAC、ICP)

    完整代码:https://github.com/kang-0909/point-cloud-registration/tree/main,记得给个star~ 任务一:将两个形状、大小相同的点云进行配准,进而估计两个点云之间的位姿。 任务二:将一些列深度图反向投影得到点云,经过配准后,得到每个深度图之间的位姿变换,并将相应的点云融合到一

    2024年02月02日
    浏览(37)
  • [点云配准]LCD(2D-3D特征配准算法)例程align_point_cloud.py解析

    跨域描述符LCD可以实现二维图片特征点到三维点云特征点的配准,是个具有通用性的深度学习特征描述子。(图片来源于论文 LCD: Learned Cross-Domain Descriptors for 2D-3D Matching ) 在Github开源的源码里面给出了利用LCD进行 三维点云配准 的例程。align_point_cloud.py,这里对例程如何使用

    2024年02月08日
    浏览(45)
  • PCL - 3D点云配准(registration)介绍

    前面多篇博客都提到过,要善于从官网去熟悉一样东西。API部分详细介绍见 Point Cloud Library (PCL): Module registration 这里博主主要借鉴Tutorial里内容(博主整体都有看完) Introduction — Point Cloud Library 0.0 documentation 接下来主要跑下Registration中的sample例子 一.直接运行下How to use iter

    2024年02月12日
    浏览(54)
  • 点云配准--gicp原理与其在pcl中的使用

    总结:gicp引入了概率信息(使用协方差阵),提出了icp的统一模型,既可以解释点到点和点到面的icp,也在新模型理论的基础上,提出了一种面到面的icp。 论文原文:《Generalized-ICP》 在概率模型中假设存在配准中两个点集, A ^ = { a i ^ } hat{A}=left{hat{a_{i}}right} A ^ = { a i ​

    2024年01月19日
    浏览(55)
  • CVPR2023最佳论文候选:3D点云配准新方法

    文章:3D Registration with Maximal Cliques 作者:Xiyu Zhang Jiaqi Yang* Shikun Zhang Yanning Zhang 编辑:点云PCL 代码: https://github.com/zhangxy0517/3D-Registration-with-Maximal-Cliques.git 欢迎各位加入知识星球,获取PDF论文,欢迎转发朋友圈。文章仅做学术分享,如有侵权联系删文。 公众号致力于点云处

    2024年02月08日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包