ORB特征点均匀化

为什么要把特征点均匀化?

纹理丰富的区域提取到的特征点多,弱纹理区域又没什么特征点,导致位姿估算不准。特征点在空间中分布的层次越多、越均匀,特征匹配越能精确的估计出空间几何关系。

怎么实现特征点均匀化

1.给金字塔分配特征点数量,根据总的图像金字塔层数和待提取的特征点总数,计算每一层图像金字塔中需要提取的特征点数量。金字塔层数越高,分辨率越低,能提取的特征点数量越少。用 总的特征点数目/所有金字塔面积和x某层金字塔面积 就是该层金字塔需要得到的特征点数目。在ORB-SLAM2代码中有微小改动,不按照面积均摊,而是按照面积的开方均摊。

2.在该层金字塔处划分格子,ORB-SLAM2 中格子固定尺寸为30x30。

3.对每个格子提取FAST角点,如果初始的FAST 阈值没有检测到角点,就降低 FAST 阈值。这样可以在弱纹理区域也能提取到更多的角点。如果降低一次阈值后,还是提取不到角点,则不再这个格子里提取。这样可以避免提取到质量特别差的角点。

4.使用四叉树均匀的选取FAST 角点,直到达到特征点总数。

四叉树均匀选取角点

1.在一层金字塔上进行均匀选点,首先确定初始节点数目,一般为1个,此时该层所有角点都属于该初始节点。

2.节点进行一次分裂,一个节点分裂为4个节点,四个节点均匀的放在平面内,即n1,n2,n3,n4,然后根据区域的划分不同,角点分属于四个节点。

在这里插入图片描述

3.划分完成后,如果某个节点只拥有一个角点,则下次节点分裂时不再分裂该节点。如果某个节点拥有0个角点,则去除该节点。

4.对拥有角点数目最多的节点进行分裂。

5.重复步骤2,3,4,不断分裂节点,直到节点数与想要得到的特征点数目相同。

6.从每个节点中选出角点响应值最高的角点,作为特征点,删除其余角点。

7.得到均匀化特征点。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Gone_float

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值