返回列表

31st place solution - single DELG model.

401. Google Landmark Recognition 2020 | landmark-recognition-2020

开始: 2020-07-29 结束: 2020-09-29 计算机视觉 数据算法赛
第31名方案 - 单一DELG模型

第31名方案 - 单一DELG模型

作者: Kirderf (Grandmaster) | 比赛: Landmark Recognition 2020 | 排名: 31st

第31名模型概述

我只使用了一个单一的DELG模型,没有进行额外的训练,仅使用了预训练权重,并进行了额外的参数调整以及后处理/预处理,例如以下内容。

RANSAC 参数

这对我来说是一个新领域,没有太多经验,所以我开始大量阅读,并在论坛上发布了一些发现,主题为“RANSAC的世界”。

MAX_INLIER_SCORE(最大内点得分)

在这里我测试了一些值,起初值为20时效果最好,但在论文中看到使用了值70,为了保险起见,我最终选择了一个中间值。我无法确定这是否是原始ransac实现的一部分,也找不到关于该主题的论文,所以没有花太多时间。我也开始使用 DELG_SCORE_THRESHOLD_TENSOR,不想过多限制数据。

MAX_REPROJECTION_ERROR, MAX_RANSAC_ITERATIONS, HOMOGRAPHY_CONFIDENCE

我参考了以下研究论文作为代码参考:“Image Matching Across Wide Baselines: From Paper to Practice”(8月17日发布)以及 Github 上的 pydegensac 项目。

“像往常一样,您可以设置点计为内点的像素阈值、max_iters 和 confidence。除此之外,还有以下选项:
laf_consistensy_coef。如果 > 0,则意味着将检查特征的缩放和方向是否与找到的最佳模型一致。检查阈值是 px_th * laf_consistensy_coef。因为它们通常不如关键点中心精确,建议设置 laf_consistensy_coef > 1,例如 3。
error_type。对应质量的度量。可以是 'sampson', 'symm_sq_max', 'symm_max', 'symm_sq_sum', 'symm_sum'。精确定义请参考 Hartley 和 Zisserman 的《Multi View Geometry》第 4.2 章。
symmetric_error_check 是否应使用 'symm_max' 误差类型对内点进行额外检查。”

我测试了 PyRANSAC 中包含的许多其他选项,如 Symmetric_error_check, Error_type, laf_consistensy_coef,但并没有提高分数,默认参数(Pixel Threshold, Max_iters 和 Conf)在这个问题上效果最好。

从论文中我看到 PyRANSAC 使用的 MAX_REPROJECTION_ERROR 范围是 0.1-20,最佳阈值在 0.24-2.0 之间,baseline kernel 使用的是 4.0。对于这个地标识别问题,通过本地验证我发现值为 12 时效果最好,但在最终模型中我使用了 13,因为它的竞赛得分更高。

关于 max iterations(最大迭代次数),论文中写道:

我们总结了每种方法组合的最佳超参数——RANSAC 最大迭代次数 η 和比率测试阈值 r。RANSAC 迭代次数 Γ 对于 PyRANSAC 设为 250k,DEGENSAC 设为 50k,GC-RANSAC 和 MAGSAC 均设为 10k。

许多公开 kernel 使用了更高的迭代次数,并报告在该区间内结果良好。在 DELG 论文中,验证使用了 1k,baseline 也是一样。我在对该参数的研究中也可以看到,迭代次数与离群值比率有关,这在视频中描述得很好。我的结论是 5k 次迭代足以满足推理限制和问题需求,经过区间测试后我最终也使用了 5k。

同一篇论文讨论了 confidence level(置信度水平):

“本文考虑的所有方法都有三个共同参数:估计中的置信水平 τ;离群值(极线)阈值 η;以及最大迭代次数 Γ。我们发现置信度值是最不敏感的,所以我们将其设置为 τ = 0.999999”

我保留了 baseline 的 0.99 值,因为它对结果影响不大,此时我已经把 kernel 调整到了极限。

Max_distance(最大距离)

我将 max_distance 保留为 0.85,尽管有些论文使用 0.8,我也能看到较高值有更好的结果,所以这里有一系列选择,但最终还是保留了默认值,已经进行了太多的调整

同比赛其他方案