点云配准就是将当前点云匹配进行变换使其和目标点云匹配上. 先推荐一个python的点云处理库: opend3d.
什么时候需要全局配准?我说我知道的场景相机的角度变化太大了.
极少角度的物体重建.
3D 模型的恢复(3D model retrival).
基于点云的重定位
物体识别(object recognition)
这些场景主要是相对位姿变化很大, 或者说是点云的重合度不高. 主要是有两种方法, 特征点匹配的方法和全局ICP的方法. 特征点的方法通过全局特征匹配达到全局配准, 全局ICP的方法通过对变量空间进行搜索的方法达到全局最优解, 目前主要利用Branch and Bound进行搜索. 特征点的方法相对于global ICP来说就是快, 但是它依赖于特征点描述子的表达性能. 如果当前点云和目标点的噪声不一样,比如目标点很光滑几乎没有噪声, 但是当前点很多噪声, 就很容易导致匹配失败, 因为同一特征点的描述子差太多啦. 而ICP的方法可以解决这一点, 因为ICP更多的是形状匹配, 或者说是结构匹配. 下面我们分别介绍一下相关主要论文
feature-based methodsFGR是通过构造函数将非凸的问题通过平滑进行凸化, 但是该算法是找到误差最小的解, 但是由于重合率的问题导致特征点存在超高的无匹配率, 所以最小误差的解并不一定是匹配的最优解.代码已经在opend3d里面有.Fast Global Registrationlink.springer.comteaser利用仿射变换的不变性不断的降低误匹配的点的影响来提高匹配精度. TEASER系列工作开源啦, 本人测试过其代码, 很快很鲁棒, 但是在大规模点云重定位上表现不佳, 主要原因我觉