一起自学SLAM算法:7.6 SFM、BA和SLAM比较
连载文章,长期更新,欢迎关注:
SFM、BA和SLAM是在不同研究领域所讨论的问题,由于经常会遇到并且初学者比较容易混淆,这里就拿出来说明一下。
SFM(structure from motion,运动重建)是计算机视觉领域的概念,通过收集到的无序图片进行离线三维重建,可以理解为多个图片的拼接。SFM一般使用在比较大的范围,比如构建一个城市的百度地图。SFM具有两个鲜明的特点,一个特点是输入算法的图片是无序的,另一个特点是重建过程离线进行对实时性没有要求。
BA(bundle adjustment,光束平差法)是摄影测量领域的概念,通过估计运动相机的位姿来反推场景中路标点的位姿,场景路标点又可以反过来作用于相机位姿估计,这其实就是一个局部优化问题。相机位姿与路标的通过相机观测模型进行约束关联,其实就是用到了重投影误差这个约束。与SFM相比,输入BA算法的图片是需要有顺序的。
SLAM是移动机器人领域的概念,利用机器人的运动模型和观测模型数据实时估计机器人位姿和路标。与BA相比,SLAM除了有观测数据还有运动数据,SLAM有回环检测能通过全局优化消除累积误差,并且SLAM计算要求尽可能的实时性。从这里可以看出,SLAM其实涵盖了SFM和BA所研究的问题,是一个更为复杂和困难的问题。
源码仓库
-
Gitee下载(国内访问速度快):gitee.com/xiihoo-robot/Books_Robot_SLAM_Navigation
参考文献
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)