0%

Super Generalized 4PCS for 3D Registration

问题:在尺度不确定的场景下,复杂度还是 o(n2)o(n^2),后续算法也有这个问题。

这篇文章核心思想是使用八叉树和球与长方体相交算法,
解决在已知查询第二个点云 q 长度为 d 时复杂度为 o(n2)o(n^2) 问题。

  1. 4pcss4pcs 实现了不同的 ExtractPairs4pcs 与多尺度的 s4pcs 都是使用的 o(n2)o(n^2) 复杂度逐点搜索长度。
  2. 核心算法在类 IntersectionFunctorprocess 方法中。
    1. 首先将点云按照最长边缩放到单位长度
    2. 然后遍历每一个点 (primitive),将与球体相交的方块进行多次分裂
    3. 分为提前停止分裂的和最后一次分裂两部分的 长方体 (node) 存储进结果
  3. split 算法
    1. 首先将 xyz 投影到同一维度上,用 中值 的左右两侧表示第几块
    2. 首先按 x 分成 2 段
    3. 然后按 y 再将 x 的2段分为 4 段
    4. 同样 z 会得到 8 段