《SuperPoint: Self-Supervised Interest Point Detection and Description》
论文 https://arxiv.org/pdf/1712.07629.pdf
github https://github.com/magicleap/SuperPointPretrainedNetwork
1、SuperPoint网络结构
参考知乎语义SLAM | 深度学习用于特征提取 : SuperPoint(三)
①编码网络
②特征点检测网络:对图片的每个像素都计算一个概率,这个概率表示的就是其为特征点的可能性大小。
③描述子检测网络:先学习半稠密的描述子(不使用稠密的方式是为了减少计算量和内存),然后进行双三次插值算法(bicubic interpolation)得到完整描述子,最后再使用L2标准化(L2-normalizes)得到单位长度的描述。
④损失函数:
特征点检测是用了交叉熵loss
描述子
2、用预训练网络base detector做兴趣点自标注——MagicPoint(之前的工作)
用合成的数据集(主要包括一些典型几何物体)生成一些来检测角点的ground
truth,这里其实指的是候选的特征点,最终的特征点要通过后面HA这一步修正。
这里涉及到了用位姿计算损失函数
优势:比FAST、Harris等对噪声更鲁棒
劣势:对真实图像?对有强corner-like的结构还行,但是好多时候比不上传统方法——>用HA进行cross domain adaptation
(这个是否可以用到我的生成图像方法中?)
3、Homographic Adaptation 核心
个人感觉类似于pytorch里的transform,对原图像进行各种几何变换,比如平移、放缩、旋转、distort等等,获得已知位姿关系的图片对。
有什么用?提高原来的MagicPoint网络对真实图片的真值生成能力。效果还是挺显著的
4、实验设置和实验结果
(1)硬件+网络超参数
(2)评价指标
① Runtime:Titan X GPU上处理480*640的图片 70FPS
② HPatches Repeatability: 每张图片提取300个point,HA后的superpoint提取特征点最稳定
③ HPatches Homography Estimation:(4个指标)重复性、mean localization error (MLE)、nearest neighbor mAP (NN mAP)、matching score (M. Score)