4-Points Congruent Sets for Robust Pairwise Surface Registration——4PCS阅读笔记

4-Points Congruent Sets for Robust Pairwise Surface Registration——4PCS阅读笔记

2018年03月08日 10:18:14 Vodake 阅读数:1254 标签: 点云配准计算机视觉

4-Points Congruent Sets for Robust Pairwise Surface Registration


1. 背景

1.1. 问题描述

给定两个处于任意初始位置的点集PP和QQ,找到两个点集之间的最佳刚性变换,使得PP,QQ中两点间距离小于δδ的点数最多。

1.1.1. RANSAC

  • 分别在点集PP和点集QQ中任意选取三个点来组成一个基础关联对
  • 计算这个关联对的旋转矩阵TiTi
  • 计算点集PP中处在点集QQ中的点δδ距离内的点的个数kiki
  • 如果kiki足够大,则认为kiki是个好结果,否则重读以上步骤
  • 这个过程将被重复LL次,选取最高的kiki作为最后的结果

1.1.2 Randomized Alignment

  • 在点集PP中随机选取一个base
  • 计算在点集QQ中所有有可能的bases,得到旋转矩阵
  • 验证配准 
    • 先验证部分点集重合
    • 验证剩余点

如何有效的计算可能的bases,提出4点法,基于共面点(planar congruent sets)

1.2. 4点法概述

使用从点集PP中选取的共面四点作为base BB,然后采用一定的算法在点集QQ中找到所有的与BB近似一致的共面4点对,近似一致指的是两个4点对可以经过刚性变换(rigid transformation)在允许范围(allowed tolerance)δδ内对齐

2. 4点法

2.1 Overview

仿射变换遵循以下法则,给定三个共线点a,b,ca,b,c,那么比例r=||a−ba−c||r=||a−ba−c||是不变的。给定一个共面四点标准对(coplanar 4-points base sets),我们在给定的数据点中寻找近似仿射相等的共面四点对,接着我们确认这些共面四点对与选定的共面四点标准对是否在一定的距离约束下相等。

2.2 4点对的仿射不变性

并非全共线的一个共面四点集X≡a,b,c,dX≡a,b,c,d,定义了两个独立的比率。令abab,cdcd相交于点ee,则两个独立的比率为: 

r1=a−ea−br1=a−ea−b

r2=c−ec−dr2=c−ec−d


在仿射变化中是不变的并且是唯一的。 
仿射不变性 
现在给定一个具有nn个点的点集QQ,以及两个由点PP得到的仿射不变的比率r1r1,r2r2,对每一对点q1,q2⊂Qq1,q2⊂Q,计算他们的中间点: 

e1=q1+r1(q2−q1)e1=q1+r1(q2−q1)

e2=q1+r2(q2−q1)e2=q1+r2(q2−q1)


若任意两对这样的点,一对由r1r1计算得到的中间点和另一对由r2r2计算得到的中间点在允许范围内一致,那么可以认为这两对点可能是PP中基础点的仿射对应点。 
仿射对应点

2.3 如何在3D模型中找到合适的4点

给定一个在一定范围内共面的基础对B⊂PB⊂P,以及另一个点集Q⊂R3Q⊂R3。我们的目标是从点集QQ中找到所有在允许范围δδ与基础对BB一致的4点的集合。

  • 计算给定基础对BB的放射不变比
  • 使用2.2中提到的算法在点集QQ中寻找所有能与基础对BB通过放射变换配对的4点集合
  • 通过检测这些点集的原始位置,保留下只能通过刚性变化配对的点集
  • 通过最小二乘法,对每一对点和BB计算其最佳变化

事实上,考虑到寻求刚性变换的解,对于一个基础对B≡{a,b,c,d}B≡{a,b,c,d},首先计算两两点间的距离d1=||a−b||,d2=||c−d||d1=||a−b||,d2=||c−d||,然后仅仅考虑点集QQ中两点距离在一定范围δδ内为d1d1或d2d2的点对。

3. 4点法(The 4PCS Algorithm)

给定两个点集P,QP,Q,不确定度δδ,以及点集PP与点集QQ芙蓉重叠度的预估ff。我们的目标是找到一个刚性变换使得点集PP中的点尽可能多的与点集QQ中的某些点的距离小于δδ。

  • 在点集PP中选择一些共面4点对。实际上,在选择的过程上是先随机选择3个点,再选择能够与这个三个点在一定范围内组成共面4点对的另一个点。若选择的这个点与其他点相距较远,可以提升配准的稳定度,也就是说更加精确。然而,如果选择的点过远,则会导致选择的点可能不全在两个点集重叠的部分,从而无法计算出理想的变化对。这里使用重复度(overlap)来预估这个最大距离。
  • 对于给定的基础对BB,我们可以定义放射不变比集合。从点集QQ中提取出所有在一定范围δδ内可能与BB相符合的4点集合。U≡{U1,U2,…,Us}U≡{U1,U2,…,Us}。对任一UiUi,通过BB和UiUi的关系可以计算出最佳刚性变换TiTi使得BB和TiTi足够接近。
  • 为了确认唯一的TiTi,我们计算Ti(P)Ti(P),并且统计有多少点与点集QQ之间的距离小于δδ。采用ANN(Approximate Nearest Neighbor)来提高确认效率。具体来说就是首先从点集PP中选择一部分点使用TiTi进行变换,然后统计与点集QQ足够接近的点,如果有足够的点被统计到,那么对余下的点也进行这样的测试,并且为TiTi评估一个分数。最后得到最佳刚性变换矩阵TT。
  • 对于不同的基础对BiBi,我们都可以按照上述的办法找到最佳变化TiTi,根据overlap测试LL组不同的基础对,最终得到最佳变换矩阵ToptTopt。

猜你喜欢

转载自blog.csdn.net/weixin_41230454/article/details/83789095
今日推荐