本文主要是介绍Windows下搭建ORB_SLAM2,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
(一)Orbslam2的安装:
大佬已经改好的windows版,方便实用,安装步骤非常清晰,按着一步步来就可以啦
https://github.com/phdsky/ORBSLAM24Windows
但是!
唯一需要注意的一点就是在安装Pangolin时,CMakeList里人家写了自动从github上下载并安装glew,libpng,libjpg三个库。
所以我们需要自己在windows下安装一个Git::https://github.com/git-for-windows/git/releases/download/v2.12.2.windows.2/Git-2.12.2.2-64-bit.exe
(安装Git时所有按钮我都选的默认默认,因为不知道都是啥意思,所以一路默认到底)
有了Git就可以顺利的用cmake-gui configure啦~~~如果还是下载不下来这三个外接库,那么就打开你的vpn,翻个墙就好啦!
(二)orbslam的运行
直接编译你要运行的程序,如mono_tum等,然后按着上面的github中给出的参数输入到“命令参数”中即可运行。
但是,运行了一段时间后会报错:vector iterators incompatible
这是因为在Tracking.cc中的UpdateLocalKeyFrames()函数中,有一个用迭代器iterator来遍历参数mvpLocalKeyFrames的操作,而且在遍历里面有 mvpLocalKeyFrames.push_back()的操作。这就会引发上面vector iterators incompatible的报错。因为当push_back后可能引发vector的容量的变化,标准库会自动为其新分配一段更大的内存空间,从而使得迭代器失效。
这里我将参数mvpLocalKeyFrames原本迭代器的循环变成了普通的for(int i=0;i<mvpLocalKeyFrames.size();i++)就好了。
这篇关于Windows下搭建ORB_SLAM2的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!