Ubuntu14.04运行ORB_SLAM2出现问题总结

网上有很多运行的博客,我参照的来运行自己的,在最后一步运行ORB_SLAM2的时候竟然一直在卡住,很是头疼啊,经过几天的查找和询问各种大牛,问题算是解决了,打卡记录下。

问题一:在执行./build.sh这一步的时候出现下列问题:

问题的原因是虚拟机内存不够,关闭虚拟机,将虚拟机的内存扩大(我扩大到3G就可以了)

 

问题二:出现/ws/ORB_SLAM2/src/LoopClosing.cc: In member function ‘void ORB_SLAM2::LoopClosing::Run()’:
/ws/ORB_SLAM2/src/LoopClosing.cc:84:20: error: ‘usleep’ was not declared in this scope
         usleep(5000);
                    ^
/ws/ORB_SLAM2/src/LocalMapping.cc: In member function ‘void ORB_SLAM2::LocalMapping::Run()’:
/ws/ORB_SLAM2/src/LocalMapping.cc:94:28: error: ‘usleep’ was not declared in this scope
                 usleep(3000);
                            ^
/ws/ORB_SLAM2/src/LocalMapping.cc:108:20: error: ‘usleep’ was not declared in this scope
         usleep(3000);

 

需要打开相应的代码,在头文件里面添加usleep 的头文件unistd.h,问题就解决了!

 

 

问题三:在运行最后一步单目和rgbd数据的时候出现了下面的问题:

terminate called after throwing an instance of 'std::runtime_error'
  what():  Pangolin X11: Unable to retrieve framebuffer options
已放弃 (核心已转储)

网上的这位大牛解决了这个问题:

http://blog.csdn.net/aaron121211/article/details/51804609

问题四:[rospack] Error: could not call python function 'rosdep2.rospack.init_rospack_interface'

在Ubuntu16.04下安装ROS版本的ORB_SLAM2的时候发生的,原因是系统默认python版本被改成了python3,可以查看系统默认版本:python --version,而ORB_SLAM2需要的是python2,这时候系统里面应该有两个版本的Python,使用Python2 --version查看Python2的版本,使用Python3 --version查看Python3的版本,更改版本号到Python2:

echo alias python=python2 >> ~/.bashrc

最后还需要修改更新下ros的依赖:

sudo rosdep fix-permissions

rosdep update

下面再cmake即可。

 

 

 

 

  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值