先总结一下:
这个文章是对D2Net的更进一步,主要解决了D2Net的痛点——keypoint太不准了。我实际用D2Net进行三维重建就感受到,D2Net并不是高精度的像素级匹配,而更像是图像检索的DELF。它在4pixel threshold 的精度以下完全没法跟传统的SIFT之类比,只有当阈值放大才能有特别出众的效果。
这个文章解决了这个痛点,而且benchmark看起来效果也是特别好。
贡献点:
1 使用deformable convolutional network(DCN)来增强基础特征提取能力;
2 利用了网络特征的固有层次性,提出了新的多尺度检测机制,能够检测更加准确的关键点;
3 这个网络是trained from scratch, d2net在分类任务上进行了初始化;
3 Methods
3.1 Prerequisites
1 Deformable convolutional networks (DCN): 这种是可以学习几何形变的卷积,应用在这里很棒,传统的卷积在RFNet已经用堆叠在扩感受野,其实结果已经很受限了。
2 D2-Net :这个就是d&d方法,在检测到描述子同时得到特征点坐标,借用了他的loss函数。
3.2. DCN with Geometric Constraints
原本的DCN可能包含过多的形变可能性,但是在本任务中其实主要需求的是三种:1) similarity, 2) affine and 3) homography.
3.3. Selective and Accurate Keypoint Detection
1 稍微改变了d2net的特征点判断标准 主要是通道上的判断
2 使用了一种分层的尺度融合方法
3.4. Learning Framework
网络结构:
使用L2Net作为基准,最后三层换成DCN,1 3 8层用来融合尺度(1,2,3),这个参数是他们尝试出来的。
Loss函数:
同D2Net基本上一样,主要是M使用的是不用的衡量方法,更加稳定。
3.5. Implementations
没啥新奇的,不过他们用480x480还能有比较好的尺度结果真是不错。同时注意了训练质量,对于匹配match不够32的image pair是不会反传的。