欢迎光临散文网 会员登陆 & 注册

ORB- SLAM系列算法中的关键帧

2023-03-08 09:09 作者:老师明明可以靠颜值  | 我要投稿

帧的概念:https://zhuanlan.zhihu.com/p/607657459


那么什么是关键帧?


从帧中挑选出的,对定位任务和建图任务比较重要的帧。相对于关键帧,我们把其他帧称为普通帧。


什么样的帧对定位任务和建图任务比较重要?


前两个关键帧


两个帧能够提取到足够的配对关键点,利用这些配对关键点,能够计算出两帧之间的相对位姿变化,能够计算出这些配对关键点对应的三维点。

注意到,不是任选两个帧,就能够计算出位姿和三维点的,这个两个帧很重要,所以,这两个帧就是第一,第二个关键帧。

也同时注意到,这是第一次求取到位姿,第一次求取到三维点。

为了等到这能够求出位姿和三维点的两帧,有很多普通帧是被抛弃了的,无法求到它们的位姿,所以被抛弃了。

这些普通帧是被无奈抛弃的。

所以有什么办法不抛弃不放弃嘛?

没有其他办法,除非已知普通帧所对应的三维地图点,然后结合帧中图片上的ORB关键点,就可以求取到一个合适的位姿了。


如何让帧所对应的三维地图点已知?

通过ORB关键点匹配,把关键帧的三维地图点对应到普通帧上,就可以认为普通帧上的三维地图点已知了。

所以,一旦我们求得第一、第二个关键帧后,计算普通帧的位姿就容易了,从关键帧匹配一些三维点去优化即可。


后续关键帧


但是,当普通帧离开关键帧越来越远,或者普通帧内容与关键帧差别变大时,普通帧能从关键帧处匹配到的三维关键点会越来越少。 当匹配到的三维关键点少于某个值时,再优化位姿,就没啥效果了。


所以,我们必须在适当的时候,求一下普通帧中的二维ORB关键点对应的三维地图点,以支撑后续普通帧位姿的优化。而这个普通帧,就对建图任务和定位任务比较重要,它就是关键帧了。


所以,第三、第四,以及以后的关键帧,都是为了对普通帧的位姿进行优化而从普通帧中升级来的。


这就是从普通帧中挑选关键帧的策略了。


ORB- SLAM系列算法中的关键帧的评论 (共 条)

分享到微博请遵守国家法律