Ubuntu14.04 使用本地摄像头跑ORB SLAM2

Posted 1228073191blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu14.04 使用本地摄像头跑ORB SLAM2相关的知识,希望对你有一定的参考价值。

前面的准备:

Ubuntu14.04安装 ROS 安装步骤和问题总结

Ubuntu14.04+ROS 启动本地摄像头

 

STEP1:第一个终端

roscore

STEP2:第二个终端运行usb_cam

roslaunch usb_cam usb_cam-test.launch

STEP3:

rosrun ORB_SLAM2 Mono /home/zc/Desktop/ORBvoc.txt  /home/zc/Desktop/Asus.yaml

我把

./Vocabulary/ORBvoc.txt

/home/zc/Desktop/ORB_SLAM2/Examples/ROS/ORB_SLAM2/Asus.yaml(此处还没有标定,后续要做)

这两个文件都拷贝到桌面上去了,如果直接运行一直有问题。

 

运行后出现问题:

技术图片

尝试解决问题:

OpenCV Error: Bad argument (Invalid pointer to file storage) in cvGetFileNodeByName, file /build/opencv-_msWgW/opencv-2.4.8+dfsg1/modules/core/src/persistence.cpp, line 740
terminate called after throwing an instance of ‘cv::Exception‘
what(): /build/opencv-_msWgW/opencv-2.4.8+dfsg1/modules/core/src/persistence.cpp:740: error: (-5) Invalid pointer to file storage in function cvGetFileNodeByName

问题原因:

查阅资料发现是OpenCV3与ROS兼容问题,因为indigo里面自带的是opencv2.4.8,而我要用的程序是基于opencv3的。(这里因为之前跟着SLAM14讲在做)

解决方法:在程序所在工作空间中加入最新的cv_bridge包,重新catkin-make,这样就可以解决该问题了。

链接:https://pan.baidu.com/s/1CsCfjrIUyepNqxKhECIsyQ
提取码:n1rm

 

以上是关于Ubuntu14.04 使用本地摄像头跑ORB SLAM2的主要内容,如果未能解决你的问题,请参考以下文章

怎么在ubuntu下装ORB-SLAM2,并用单目摄像头实时跑起来

Ubuntu14.04+ROS 启动本地摄像头

基于Ubuntu 16.04,手持Kinect v2,实时跑通ORB_SLAM2

ORB-SLAM(单目版本)编译与运行

ubuntu18.04 ubuntu20.04 ORB_slam3安装运行测试

ubuntu14.04,SONY摄像机使用1394线传输视频,cheese无法识别设备,是不是支持?啥视频采集软件支持?