admin管理员组文章数量:1650774
核心思想:本文的目的是为了解决传统匹配的时候detector不鲁棒的问题,例如下图,上边是本文匹配结果,下边是superglue匹配结果:
可以认为是在superglue上的简单改进
整体pipeline:
如下图所示,整体pipeline分为四个模块:
网络输入两张待匹配的image,输出最终的local feature的匹配结果
1> local feature
和传统的deepfeature网络类似,使用cnn网络输出dense的feature map,本文使用的是resnet-18。
从网络中抽取两层feature map(分辨率分别为1/8和1/2,分别命名为coarse 和 fine feature map)
2> coarse loftr
将1>中生成的coarse feature map pair输入到coarse loftr层对特征进行变换,生成较容易匹配的新的feature。
具体这里使用了经典的gnn思想,
2.1 首先将feature的位置和score信息融入coarse feature中(类似superglue)。生成带有位置信息的feature
2.2 然后是self attention,分别输入每张feature map 融合局部邻域信息生成新的feature map
2.3 再然后是cross attention,进行交叉运算,
2.4 最终生成相对较容易匹配的 feature map
上述self attention 和 cross sttention 使用的是和superglue一样标准的多层gnn网络,如下:
核心思想其实就是对特征进行变换,融合本张图片的邻域信息,还有就是融入待匹配图像的信息
3> matching module
该模块和super glue一样将上述生成的新的feature计算feature 距离。生成score matrix,然后对每一行每一列 sofmax归一化。生成P匹配矩阵
上述和super glu基本上一样,只不过不用进行detector使用的是dense 的feature map
4>coarse to fine module
该部分是本文的创新,上述得到的match 是在1/8分辨率下的结果,这时候的detector其实是有误差的,感觉作者是借鉴了ETH的Patch2Pix论文
将detector的位置进行处理,具体做法如下:
首先将上述得到的match提取出来,然后在1>中得到的较为精确的feature map上crop出w*w的window,然后将两个coarse 匹配 window 再次输入到loftr
固定住query的window的中心作为query的feature,然后计算database的window中feature和query的中心的距离,score最高的即为精确的匹配点。
LOSS:
最终的loss为:,其中和superglue一样使用最大似然,是位置误差
本文标签: FreeLocalLoFTRDetectorTransformers
版权声明:本文标题:LoFTR: Detector-Free Local Feature Matching with Transformers 2021 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1729532276a1204961.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论