第37名解决方案
第37名解决方案
作者:Robin Smits
比赛排名:第37名
首先,非常感谢竞赛主办方和Kaggle,在我看来,这是今年最激动人心的比赛。
我个人参加这次比赛的初衷只是“多学一点”……结果学到的远不止一点 ;-)
通过学习许多新技术、模型,参考一些优秀的Notebook,并最终意外获得第37名,我感到非常高兴。
我一开始是跟随 'old-ufo' 发布的许多精彩帖子和分享的论文开始的。非常感谢!这些是非常棒的起点。
我在本地使用了训练数据以便进行多次验证运行。为了确定我所做的任何更改的效果,我同时查看了本地验证分数和对LB(Leaderboard,排行榜)的影响,因为公开部分的数据占了51%。
我的最终解决方案:
- 由3个预训练模型组成的集成模型。
- LoFTR。 像训练集中一样,将最长边固定调整为840像素。基于 INTER_LANCZOS4 插值进行调整。这在早期就将我的分数提升到了 0.807。
- SuperGlue。 固定1024个关键点。未修改图像处理。
- DKM。 固定256个关键点。图像预处理。根据图像方向将边调整为512和768像素。这将我的分数提升到了 0.820 以上。
- MAGSAC++。 阈值为 0.20,迭代次数为 60K。
我发现 DKM 的图像尺寸调整影响非常大……不幸的是,我只剩下5天时间,无法进一步利用这一发现。
事实证明,我最好的私榜分数是 0.822。在这个版本中,我将 DKM 的关键点数量增加到336个,并将 SuperGlue 的数量减少到832个。然而,该版本的公榜分数和本地验证分数都下降了……所以不幸的是,这并不是一个显而易见的选择。
对我来说无效的尝试:
- 我尝试了 ANMS - SSC 进行非极大值抑制以减少关键点。花了几个晚上的时间,但没能让它正常工作。有趣的是,我读到第10名的解决方案成功使用了它。我以后得再研究一下。
- 我尝试动态平衡关键点数量。如果一个模型发现更多关键点……同时也增加其他模型的数量。反之亦然。与固定数量的关键点相比,效果似乎太小且波动(有时好,有时坏)。
- 我尝试将我的最终集成模型与 ASLFeat 结合。它没有给我带来提升。
- 我尝试将我的最终集成模型与 MatchFormer 结合。它没有给我带来提升。
- 使用来自 SOLD2 的一些过滤后的关键点……分数再次下降。
- 对所有3个模型进行了太多的配置更改,似乎产生了混合且微小的效果。
- 在可用的训练数据集上进行训练。这花了太长时间,而且似乎只损害了性能。
- 使用 RANSAC 的2个阶段。首先是快速轮次以获得更多过滤后的关键点,最后阶段是进行多次迭代的长运行。分数下降了。我在其他一些解决方案中读到他们使用了类似的方法,其中第一阶段的阈值增加了。非常有趣。
- RANSAC 家族的不同版本。MAGSAC++ 目前是最好的。