
















AdaLAM的全称是Adaptive Locally-Affine Matching(自适应局部仿射匹配),本文提出了一种高效快速外点滤除算法。
在图像匹配任务中初始匹配中外点较多,目前难以高效快速地滤除外点。

总共分四步:
接下来重点介绍后3点。
将ratio-test得到的最优次优比作为左图上匹配点的匹配置信度,选择那些在半径内匹配置信度最大的点作为种子点。由于每个匹配点都是独立的,此时可用GPU对该过程进行并行加速。
接下来要寻找一些可以支持种子匹配的匹配对。
令:
其中分别表示两张图上的第个种子匹配对,它们之间符合相似变换(即旋转+缩放,其中旋转, 缩放为)。那么对于任意匹配,其中表示描述子,如果上述匹配满足如下约束关系,就能够被纳入到支持种子点的匹配集合中,该约束关系为:
上式中:
表示两个匹配点之间的角度与尺度差异;与分别表示图像与的种子点扩散半径;表示邻域圈圈的覆盖程度的正则项。
上面的第一个式子表示:初始匹配中与种子点相对位置差不多且在半径在的匹配会加入到;第二个式子告诉我们:上面加入的这些匹配对需要满足角度以及尺度一致性才能够被加入,否则免谈。上面的两个条件需要同时满足才能得到。
我们假设匹配对之间符合局部仿射变换,即上述的每个都满足该假设,那么接下来可利用该假设去滤除一些错误的匹配对:使用RANSAC的思想找到最小解集去拟合仿射矩阵,然后滤除置信度低的匹配对。
由于仅使用2对匹配点就可以得到仿射矩阵,那么即使对每个圈圈求仿射也并不耗时。对于第次迭代,我们可以得到匹配关系,对于集合,我们可以从中随机选择一对匹配:
进而得到二者之间的仿射矩阵,然后我们就可以得到匹配关系对两个匹配对产生的残差,如下式:
然后作者参考文献[^36],设计了置信度(不展开讲),当置信度大于某个阈值,表示该模型对该匹配关系拟合的较好,视该匹配被视为内点;否则为外点。
注意每次迭代需要更新上述残差/置信度以及内点,后一次利用前一次得到的内点去拟合新的仿射矩阵,然后做校验,直至达到最大迭代次数,最后输出内点。

看到没,竟然超过了效果极好的GMS。

实时性:在RTX2080Ti平台下处理4000-8000个点耗时15-25ms。
本文提出了一种高效快速的外点滤除算法,可加入到任何特征匹配算法中,预期能够提高位姿解算的精度。但上述实验结果中对GPU的要求较高,目前不清楚在低配版GPU或者在CPU平台下的表现。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。