ICP算法公式推导

一、引言

ICP算法可以用于匹配两个点云,得到两个点云之间的位姿转换关系。本文主要介绍已知对应点的ICP匹配算法。

二、ICP算法

首先计算两个点云的质心:
在这里插入图片描述
然后将原始点云减去对应的质心,得到去除质心的点云:
在这里插入图片描述
计算新产生的两个点云形成的W矩阵,并SVD分解:
在这里插入图片描述
那么,两个原始点云的转换关系R和t如下所示:
在这里插入图片描述

三、推导过程

对于两组点云:
在这里插入图片描述
求解R和t,使得下式最小:
在这里插入图片描述
上式进行变换:
在这里插入图片描述
其中,цx 和 цp分别为X点云和P点云的质心。
转换为去除质心的形式:
在这里插入图片描述
展开得到
在这里插入图片描述
由于后面两项都有
在这里插入图片描述
我们可以令该项等于0,然后式子转化为
在这里插入图片描述
该式子仅与R有关,可以寻找可以最小化上式的R,然后根据=0求解t。

上式进一步转化,得到:
在这里插入图片描述
其中,X’ 和 P‘ 是原始点云减去对应质心的点点云,x’和p’是其中的点。
在这里插入图片描述
展开得到:
在这里插入图片描述

其中旋转矩阵R因为是正交矩阵,所以RTR=1,因此求上式的最小值等价于求最后一项的最小值:
在这里插入图片描述
即该式的最大值:
在这里插入图片描述

进行转化,用矩阵的迹进行表示:
在这里插入图片描述
其中,
在这里插入图片描述
对H进行SVD分解得到:
在这里插入图片描述
设定一个变量X为
在这里插入图片描述
得到:
在这里插入图片描述
此时得到的XH是一个正定对称矩阵

根据定理:

假设矩阵A为正定对称矩阵,则对于任意的正交矩阵B,都有
在这里插入图片描述
类比到我们的推导这里,我们准备求解可以让Trace(RH) 最大的R值,

我们发现,当R=VUT的时候,RH的结果是一个正定对称矩阵

而对于任意一个正定对称矩阵来说,根据定理可以知道,我们再乘以任何一个正交矩阵(旋转矩阵是正交矩阵),都会导致Trace值下降

所以说明,此时的R=VUT取值可以让Trace(RH)取得最大值。

因此:
在这里插入图片描述
在这里插入图片描述
参考文献:
Least-Squares Fitting of Two 3-D Point Sets

  • 14
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值