AdaLAM: Revisiting Handcrafted Outlier Detection

本文设计实现了一个快速并行的outlier检测器,可以接入到任何pipeline中作为一个filter使用

 

 

3. Hierarchical Adaptive Affine Verification

        本文仍然是作用在image to image的匹配上的,整体大概思路是这样的:

  1. 首先仍然是根据特征匹配得到密集的匹配对(所有的匹配都取top1,不经过ratio)。

  2. 然后选取seed点,并圈出一个邻域,然后在邻域之内执行ransac,最后只保留inlier点个数多的圈

 

3.1. Preliminaries and core assumptions

使用homograph是一个很好的几何verify,但是由于:

    1: 2d-2d匹配生成的3d点在空间可能不共面(homograph要求的是共面的点)

    2: 如果检测的点如果相对较远,则会影响误差

    3:由于遮挡,光照等,有可能匹配的2d-2d 不是一个3d上边的点(误匹配等)    

    4:畸变也会带来误差

为了解决上述问题,在核心假设的基础上增加了松弛项

3.2 seed的选择

        1.我们的目的是尽可能的选取置信度比较高的seed点,那么怎样选取呢:

            我们为每个匹配赋值一个score(score可以从ratio test的到,置信度越高score越高),然后使用类似sift提取的时候的在一定范围内使用非极大值抑制的到score最高的match point即选取为seed点

    

 3.3. 邻域选取和filter

        邻域的选取使用:

            AdaLAM: Revisiting Handcrafted Outlier Detection_第1张图片 这里其实类似传统的邻域一致性约束,选取满足条件的种子点的附近的点(匹配),构成邻域来支持seed点(匹配)

3.4. Adaptive Affine Verification

最后在每个邻域集合中使用固定迭代次数的ransac,得到AdaLAM: Revisiting Handcrafted Outlier Detection_第2张图片,score比较高的inlier集合,最后整体在过一遍即可。

            

 

结果竟然比OA-NET这样的dl方法都要好,这也验证了dl现在仍然没有办法达到一个好的结果????AdaLAM: Revisiting Handcrafted Outlier Detection_第3张图片

最后贴一张实验结果图:

 

 

你可能感兴趣的:(计算机视觉)