+-
“五分钟读顶会”别再用RANSAC了,图像匹配更高效方法开源

一 为什么要做局部匹配

图像匹配是计算机视觉的基础工作,广泛用于三维重建,SLAM和视觉定位。图像匹配(image to image)算法集中在提取准确的关键点和描述子,而针对外点过滤的方法较少,最经典的莫过于1981年提出的RANSAC算法。


...


...

随着匹配算法越来越重要,苏黎世联邦理工学院(ETH Zurich)设计实现了一个快速并行的outlier检测器,可以接入到任何关键点和描述子检测pipeline中作为一个filter使用,高效快速地滤除外点;并且算法没有像RANSAC那样公式较多。论文虽然不是基于深度学习,但是通俗易懂,有python实现的源代码开源,在Image Matching Challenge (CVPR2020)取得state-of-art。(不是第一,第一名还没有开源)

...

homograph是很好的几何约束模型,但是由于:2d-2d匹配生成的3d点在空间可能不共面(homograph要求的是共面的点),如果检测的点如果相对较远,则会影响误差,由于遮挡,光照等,有可能匹配的2d-2d 不是一个3d上边的点(误匹配等),畸变也会带来误差。

论文提出一种假设:局部仿射,既然整个图像不满足共面,仿射变换不成立,为什么不做局部仿射变换那?


...


二、匹配对的计算过程

AdaLAM[3]的全称是Adaptive Locally-Affine Matching(自适应局部仿射匹配),本文提出了一种高效快速外点滤除算法。

1.找到初始匹配(最近邻top1):

我们为每个匹配赋值一个score(score可以从ratio test的到,置信度越高score越高),然后使用非极大值抑制得到score最高的match point即选取为seed点;

2、选取满足条件的种子点的附近的点(匹配),构成邻域来支持seed点。

3、每个邻域集合中使用固定迭代次数的ransac,保留那些局部一致较好匹配;

4、并行计算所有的seed点,得到整体的匹配对,根据一定阈值做整体的迭代。


三、优缺点分析

优点:

1.论文用分治的思想,既然图像整体难以满足共面假设,为什么不做局部的共面呢?不仅仅可以提速,还可以提高整体的匹配点召回。

2.用纯数学的方法,可以实现比深度学习OA-Net更高的准确率,很是难得。

缺点:

1.论文是Image Matching Challenge (CVPR2020)的一部分,测试集不包括Aachen Day-Night,MegaDepth,Phototourism,给人感觉不是在一个维度讲故事。

2.在几何约束模型上,也没有DEGENSAC,MAGSAC,连自家的SuperGlue[2]也不比对,乍一看和参考文献[1]主流方法分开的感觉。


参考文献

1.Image matching across wide baselines: From paper to practice.arXiv preprint arXiv:2003.01587, 2020.

2.Superglue: Learning feature matching with graph neural networks. arXiv preprint arXiv:1911.11763, 2019.

3.AdaLAM: Revisiting Handcrafted Outlier Detection.arXiv preprint arXiv:2006.04250v1, 2020.