关于点云

什么是点云配准

点云配准(Point Cloud Registration)指的是输入两幅点云$P_s$(Source)和$P_t$(Target) ,输出一个变换$T$使得$T(P_s)$和$P_t$的重合程度尽可能高。变换$T$可以是刚性的(Rigid),也可以不是,下面只考虑刚性变换,即变换只包括旋转($R$)、平移($t$)。

点云配准可以分为粗配准(Coarse Registration)和精配准(Fine Registration)两步。粗配准指的是在两幅点云之间的变换完全未知的情况下进行较为粗糙的配准,目的主要是为精配准提供较好的变换初值;精配准则是给定一个初始变换,进一步优化得到更精确的变换。

目前应用最广泛的点云精配准算法是迭代最近点算法(Iterative Closest Point,ICP)及各种变种ICP算法。

ICP,局部点云配准

ICP,Iterative Closest Point,即迭代最近点算法,是应用最广泛的3D点云配准算法之一, 其通过欧式变换求解出两片点云的旋转平移矩阵及对应的配准误差。

算法描述

对于$T$是刚性变换的情形,点云配准问题可以描述为

$$ R^,t^=\mathop{arg\ min}\limits_{R,t}\frac{1}{|P_s|}\sum_{i=1}^{|P_s|}||p_t^i-(R\cdotp_s^i+t)||^2 $$

其中$p_s,p_t$是源点云和目标点云中的对应点

算法流程

  1. 点云预处理,如滤波、清洗等
  2. 利用一些点解出的变换,寻找最近点
  3. 调整部分对应点的权重
  4. 删除不合理对应点