ORB SLAM2 真是个神奇的算法。他开源了,但是各种不实用。这大概就是学术和工作的区别吧。人家毕竟花了一整个博士阶段去开发这个算法,我们还是应该心存感激。
实验室里用的相机是ZED的双目相机,所以为了这个相机,我做了自己的双目相机数据包和接口,发现实时SLAM速度在i7处理器的条件下也就只能跑5~6Hz左右,这还不考虑做闭环的时间。显然,对于一个正在快速运动的机器人来说,实时的SLAM并不实用。为了能够真正地实时定位,我能想到合理的解决方案是,事先建好地图,然后保存地图(关键点、关键帧及各种所需连接)。等我们需要定位时,直接载入做纯定位即可。
当然,做起来永远没有那么简单。读算法就需要很久,找到问题又要花很久。网上有很多教程,但可惜的是大家都没能把自己的算法彻底开源。所以我尝试提供一个可以直接从github抓下来用的带有保存和加载地图功能的版本,供学习使用。(主要是没人交流,痛苦啊,干脆开一个仓库,求大神帮忙给个pull request啊!)
喜大普奔,现在终于流畅的实现重载功能了(2018/05/02)。一开始是双目ZED相机的功能已经调试好。后续更新我会写在下一段里面。
感谢前辈大神们的博文:
ORB-SLAM2的地图保存_Felaim的博客-CSDN博客
ORB-SLAM2地图加载_Felaim的博客-CSDN博客
ORB-SLAM单目地图保存、加载和定位_文刀雨辰的SLAM奋斗之路-CSDN博客_orbslam3 定位
我的代码同步更新在这里, 反正是献丑了,旨在拯救同胞于苦难。要是觉得有用,帮我github加颗星吧:GitHub - BoomFan/ORB_SLAM2: Real-Time