ros环境下配置orb-slam2遇到的问题

第一次写博客,记录一下ros配置orb-slam2的过程与问题,配置过程都是参考各路大神。环境是VMware,Ubuntu18.04,ROS Melodic。

Ubuntu18.04配置ros环境参考博客:Ubuntu18.04安装Ros(最新最详细亲测)_向日葵骑士Faraday的博客-CSDN博客_ubuntu18.04安装ros跟我一步一步来,带你轻松安装ROShttps://blog.csdn.net/KIK9973/article/details/118755045?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165364013016781483734563%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=165364013016781483734563&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-2-118755045-null-null.142%5Ev11%5Econtrol,157%5Ev12%5Econtrol&utm_term=ubuntu18.04%E5%AE%89%E8%A3%85Ros&spm=1018.2226.3001.4187我将orb-slam2工程放在catkin_ws/src文件夹下,随后先进行了非ROS环境的SLAM2编译,因为安装了opencv4.1.0,编译orb-slam2时出现了一堆错误,可以参考以下博客:

ORB-SLAM2在OpenCV4.1.1下的编译问题_K4762的博客-CSDN博客      之前迫不得已在jetson nano上编译orb-slam2,由于之前以及编译安装好了opencv4.1.1,所以直接编译orb-slam2时会出现一堆错误,这里简单记录一下遇到的问题和解决方法。我的环境是Jetson Nano,Ubuntu 1804, ROS Melodic, OpenCV4.1.11.没有glew...https://blog.csdn.net/K4762/article/details/105270600?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165383020516782248539117%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=165383020516782248539117&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-1-105270600-null-null.142%5Ev11%5Econtrol,157%5Ev12%5Econtrol&utm_term=orb-slam2%E5%9C%A8opencv4.1.1%E4%B8%8B%E7%9A%84%E7%BC%96%E8%AF%91%E9%97%AE%E9%A2%98&spm=1018.2226.3001.4187随后进行ros环境下的slam2编译,参考下面博客:

ROS工作空间下安装-编译ORB_SLAM2_不加黄花菜的博客-CSDN博客_orbslam2下载目录一、创建ROS工作空间二、下载ORB_SLAM2开源代码三、添加环境变量四、编译ORB_SLAM21.usleep配置2.编译ORB_SLAM2 - build.sh3.配置lib文件4.编译ORB_SLAM2 - build_ros.sh5.运行./build_ros.sh时出现的错误错误1:解决方法:错误2:解决方法:一、创建ROS工作空间声明:系统配置为 ubuntu-18.04、ROS-melodic依次运行以下命令(在主目录下):https://blog.csdn.net/weixin_41485784/article/details/122482663编译成功后,尝试外接摄像头运行orb-slam2,参考以下博客:

ROS配置ORB_SLAM2_嚣张的叉烧包的博客-CSDN博客_ros配置orbslam2准备工作ORB_SLAM2/ROS的安装,具体安装流程博主之前写过,读者可以自行阅读。 添加环境变量cd ~gedit .bashrcexport ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:PATH/ORB_SLAM2/Examples/ROS其中PATH为ORB_SLAM2的安装路径 编译ROS文件cd ORB_SLAM2的目录下chmod +x build_ros.sh./build_ros.sh 安装摄像头驱动功能包编译usb_cahttps://blog.csdn.net/weixin_43828675/article/details/115312472?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165383083716782388091271%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=165383083716782388091271&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-1-115312472-null-null.142%5Ev11%5Econtrol,157%5Ev12%5Econtrol&utm_term=ROS%E9%85%8D%E7%BD%AEORB_SLAM2&spm=1018.2226.3001.4187其中运行roslaunch usb_cam usb_cam-test.launch时出现了select timeout问题:[ERROR] [1653829004.029895654]: select timeout [usb_cam-1] process has died [pid 2955, exit code 1, cmd /home/ideal/catkin_ws/devel/lib/usb_cam/usb_cam_node __name:=usb_cam __log:=/home/ideal/.ros/log/8b920d36-df4e-11ec-b825-000c29789e23/usb_cam-1.log].

猜测是虚拟机的传输效率不够快,尝试将虚拟机usb的兼容性改为usb3.1,同时将摄像头插入usb3.0,成功导入摄像头视频。

随后用slam2自带的参数文件运行rosrun ORB_SLAM2 Mono /home/ideal/catkin_ws/src/ORB_SLAM2-master/Vocabulary/ORBvoc.txt /home/ideal/catkin_ws/src/ORB_SLAM2-master/Examples/Monocular/TUM1.yaml,出现了段错误(核心已转储),后续查找了很多资料,尝试多种方法,包括删除-march=native等方法都没解决,后面发现有大佬说 和 opencv版本有关系,将opencv版本换成slam2源码作者中推荐的版本可以 解决,但自己没去验证,因为发现虚拟机无法安装cuda,因此打算安装双系统,放弃 此问题

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值