zoukankan      html  css  js  c++  java
  • 基于点云几何特征匹配的配准概述

         在点云数据只有三维坐标时进行配准,这个时候,我们所能提取到的就只有点云的几何特征,常用的特征包括,点云的曲率,点云中平面四边形的仿射不变性等特征。
         事实上不管是什么配准方法,都是基于特征匹配的原理。无论是从图像当中获取额外的辅助的信息,或者只是从三维点云当中提取的几何特征,都是为了更好得抽象出点云的特征以及两个点云之间的对应点。毫无疑问,如果我们能够通过遍历点云的各个点基所对应的变换,肯定能够找到最佳的变换,但是这个计算量是一个天文数字,在实际应用当中是不太可能的。所以人们想出了各种方法试图在减少计算量的同时又尽量保证配准的精度。
         现在比较成熟的点云配准基本分为两部分,首先进行粗配准,粗配准的算法多样,也是我觉得在点云配准当中最重要也是最值得研究的部分,说是粗配准,但是要求要有较高的精度,粗配准的主要作用是为后续的精准配准ICP算法提供较好的迭代初始位置。经过粗配准之后,这两个点云的重合程度已经很高了,若要进一步提高,就需要后续的精准配准,现在一般都是采用ICP(迭代最近点)算法或者其变种来进行的,通过多次迭代,可以进一步提高配准的精度,但是若是没有粗配准提供较好的迭代初始位置,ICP算法往往会陷入局部区域的最优解,而得不到全局的最优解。
         本文主要关注基于点云集合特征匹配的粗配准。无论什么方法,点云粗配准的关键其实就是找出尽可能多而准确的对应点,然后再利用这些对应点求取刚体变换矩阵。
         首先是利用点云的曲率不变性,通过k邻域法以及最小二乘法拟合两点云的每一点的所在曲面,然后算出其法向量,进一步求取该点的曲率,然后通过曲率以及其他的一些手段,进一步将两点云分别简化为特征点云(例如曲率的极值点云),之后再循环遍历,寻找两点云特征点的的对应点,最终使用这些对应点计算出相应的旋转平移变换矩阵。
         4PCS算法同样是使用了点云的几何特征来提取对应点,不同的是该算法使用了另一个特征--平面四边形的仿射不变性,来寻找对应点,使得复杂度大大减少(O(n3) ->O(n2),n为点的数量)。
      未完待续。。。。。。这是个人学习的感想,如有错误还希望能够指出

    作者: Elliott Zheng

    出处: http://www.cnblogs.com/elliottzheng/p/6664218.html>

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接 如有问题, 可邮件(elliott.zheng@foxmail.com)咨询.

  • 相关阅读:
    POJ 3259 Wormholes【BellmanFord】
    POJ 2960 SNim【SG函数的应用】
    ZOJ 3578 Matrixdp水题
    HDU 2897 邂逅明下【bash博弈】
    BellmanFord 算法及其优化【转】
    【转】几个Java的网络爬虫
    thinkphp 反字符 去标签 自动加点 去换行 截取字符串 冰糖
    php 二维数组转 json文本 (jquery datagrid 数据格式) 冰糖
    PHP 汉字转拼音(首拼音,所有拼音) 冰糖
    设为首页与加入收藏 兼容firefox 冰糖
  • 原文地址:https://www.cnblogs.com/elliottzheng/p/6664218.html
Copyright © 2011-2022 走看看