ORB-SLAM学习(四):特征匹配
#SLAM
2022-07-11
快速搜索候选匹配特征点
之前进行特征点提取的时候对图像进行了网格分割,特征点就存储在对应的网格中,特征匹配的时候就通过这些网格减小搜索范围,提高搜索效率。
特征提取步骤如下:
- 首先,对参考帧的每一个特征点,在当前帧中进行寻找,怎么找呢?以这个特征点位置为圆心,设置一个搜索半径,就在这个圆内寻找可能的特征点,找出来一堆(不止一个)。
- 在找出来的这一堆特征点里面寻找和参考特征点最匹配的特征点(比较描述子距离),找出来最优的和次优的,同时要确保找出来的最佳特征点描述子之间的距离小于设定的最小阈值。
- 找完之后还要进行角度筛查,这一步是通过建立旋转角度直方图实现的。
建立直方图对角度不一致的特征点进行过滤
建立了一个30栏的直方图,存储360°的角度细分,每一列包含12°。
- 对找出来的符合要求的特征点,用参考帧特征点的角度减去当前帧特征点的角度,得到的结果存入直方图中(这样大部分的特征点对会进入同一列中,代表了旋转的角度)。
- 选出频率最高的前三列,这里面的特征点对就是匹配好了的,剩下的特征点对就不要了,被认为是误匹配。