第七周PCL学习--点云配准(七)

目录
引言
一、点云配准
1.1、定义
1.2、含义
1.3、配准过程
1.4、算法原理
1.5、实验
二、总结
三、参考

引言

随着计算机辅助设计技术的发展,通过实物模型产生数字模型的逆向工程技术,由于它的独特魅力获得了越来越广泛的应用,与此同时,硬件设备的日趋完善也为数字模型操作提供了足够的技术支持。在逆向工程计算机视觉、文物数字化等领域中,由于点云的不完整、旋转错位、平移错位等问题,使得要得到完整的点云数据,就需要局部点云配准。

一、点云配准
1.1 定义
为了得到被测物体的完整数据模型,需要确定一个合适的坐标变换,将从各个视角得到的点集合并到一个统一的坐标系下形成一个完整的数据点云,然后就可以
方便地进行可视化等操作,这就是点云数据的配准。
1.2 实质含义
点云配准有手动配准、依赖仪器的配准和自动配准。 通常我们所说的点云配准技术即是指最后一种自动配准。 点云自动配准技术是通过一定的算法或者统计学规律,
利用计算机计算两块点云之间的错位,从而达到把两片点云自动配准的效果。 其实质是把在不同的坐标系中测量得到的数据点云进行坐标变换,以得到整体的数据
模型。 问题的关键是如何求得坐标变换参数 R(旋转矩阵)和 T(平移向量),使得两视角下测得的三维数据测得的三维数据经坐标变换后的距离最小。
因此,点云配准基本的输入输出是:
两个刚性变换的点云:源点云(source)以及目标点云(target)形状、大小相同;
点云配准得到一个旋转平移变换矩阵RTMatrixRTMatrix,简称RTRT,该矩阵表示了这两个点云的位置变换关系,即通过RTRT可以
将源点云变换到目标点云的位置,使二者能够重合。

1.3 配准过程

点云配准按照初始条件与精确度等,可以分为粗略配准与精确配准两种配准方法。

1.3.1 粗略配准
粗略配准是在**源点云与目标点云完全不知道任何初始相对位置的情况下**,所进行的配准方法。该方法的主要目的是在初始条件未知的情况下,快速估算
一个大致的点云配准矩阵。整个计算过程要求比较高的计算速度,对于计算结果的精确度则不做过高的要求。
常见的粗略配准算法的思路包括了:基于局部特征描述的方法、基于全局搜索策略以及通过统计学概率等方法。
(a)基于局部特征描述的方法是通过提取source与target的邻域几何特征,通过几何特征快速确定二者之间的点对的对应关系,再计算此关系进而获得
变换矩阵。而点云的几何特征包括了很多种,比较常见的即为快速点特征直方图(Fast Point Feature Histgrams,简称FPFH)。
(b)基于全局搜索策略的代表算法是采样一致性算法(Sample Consensus Initial Alignment,简称SAC_IA),该算法在source与target之间随机
选取几何特征一致的点组成点对。通过计算对应点对的变换关系,得到最优解。
(c)正态分布算法(NDT)利用统计学概率的方法,根据点云正态分布情况,确定了对应点对从而计算target与source之间的变换关系。
1.3.2 精确配准
精确配准是利用已知的初始变换矩阵,通过迭代最近点算法(ICP算法)等计算得到较为精确的解。ICP算法通过计算source与target对应点距离,
构造旋转平移矩阵RT,通过RT对source变换,计算变换之后的均方差。若均方差满足阈值条件,则算法结束。否则则继续重复迭代直至误差满足
阈值条件或者迭代次数终止。
因此,ICP算法具有以下条件:
配准结果精确度较高,是一种精确配准算法;
对初始矩阵要求严格,差的初始矩阵严重影响算法性能,甚至会造成局部最优的情况;

1.4 点云配准的算法原理介绍

点云配准理论基础
(1)刚性变换矩阵
点云配准的最终目的是通过一定的旋转和平移变换将不同坐标系下的两组或者多组点云数据统一到同一参考坐标系下。这个过程,可以通过一组映射来完成。假设映射变换为H,这H可以用以下的公式来表示。
在这里插入图片描述
其中代表A旋转矩阵,T代表平移向量,V代表透视变换向量,S代表整体的比例因子。因为根据一系列图片得到的点云数据只存在旋转和平移变换,不存在形变,所以将V设为零向量,比例因子S=1。
映射变换H可以表示为:
在这里插入图片描述
其中,旋转矩阵R3X3和平移矩阵T3X1可以通过以下公式来表示:

在这里插入图片描述
其中α、β、γ分别表示点沿x、y、z轴的旋转角度,tx、ty、tz分别表示点沿
x、y、z轴的平移量。

(2)刚性变换矩阵的参数估计
将两个不同坐标系下的点 X和X’进行坐标变换时,可以通过以下公式来实现转换:
在这里插入图片描述 刚性变换矩阵中涉及到六个未知数α、β、γ、 tx、ty、tz。要唯一确定这六个未知参数,需要六个线性方程,即至少需要在待匹配点云重叠区域找到3组对应点对,且3组对应点对不能共线,才可以得到这几个未知数的值,进而完成刚性矩阵的参数估计。通常情况下,人们会选择尽可能多的对应点对,进一步提高刚性变换矩阵的参数估计精度。

(3)目标函数
在待匹配的两组点云数据的重叠区域内,分别选取两个点集来表示源点集和目标点集,其中P={pi|pi∈R3,i=1,2,……n}为源点集,Q ={qj|qj∈R3,j=1,2,……m}为目标点集,m和n分别代码两个点集的规模。设旋转矩阵为R,平移矩阵为t,用f(R,t)来表示源点集P在变换矩阵(R,t)下与目标点集Q之间的误差。则求解最优变换矩阵的问题就可以转化为求满足min(f(R,t))的最优解(R,t)。
在这里插入图片描述

1.4.1 ICP算法原理

ICP算法的基本原理是:分别在带匹配的目标点云P和源点云Q中,按照一定的约束条件,找到最邻近点(pi,qi),然后计算出最优匹配参数R和t,使得误差函数最小。误差函数为E(R,t)为:
在这里插入图片描述
其中n为最邻近点对的个数,pi为目标点云 P 中的一点,qi 为源点云 Q 中与pi对应的最近点,R 为旋转矩阵,t为平移向量。

ICP算法步骤:
(1)在目标点云P中取点集pi∈P;
(2)找出源点云Q中的对应点集qi∈Q,使得||qi-pi||=min;
(3)计算旋转矩阵R和平移矩阵t,使得误差函数最小;
(4)对pi使用上一步求得的旋转矩阵R和平移矩阵t进行旋转和平移变换࿰

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值