ROS环境下用笔记本摄像头运行ORB_SLAM2

默认已安装好ROS和ORB_SLAM2,没有安装的可以看我的另一篇文章:Ubuntu18.04安装和配置ORB_SLAM2(非ROS、ROS环境)_混沌浮世的博客-CSDN博客_ubuntu安装orbslam2

一、下载usb_cam功能包

  • 进入ROS工作空间catkin_ws/src目录,通过命令下载 usb_cam
cd ~/catkin_ws/src
git clone https://github.com/bosch-ros-pkg/usb_cam.git usb_cam
  • 回到 catkin_ws目录下, 对下载好的usb_cam进行编译
 cd ..
 catkin_make
  • 编辑bash文件
sudo gedit ~/.bashrc             //打开./bashrc

在文件末尾添加下面的代码

source ~/catkin_ws/devel/setup.bash
  • 使修改立即生效
source ~/.bashrc

二、将电脑上的摄像头接在虚拟机上

  • 点击 虚拟机——可移动设备——“找到摄像头”——断开与主机的连接,连接虚拟机
  • 虚拟机——设置——USB控制器——将USB改成USB3.1

三、安装其它必需文件

  • 在主目录通过以下命令安装文件
sudo apt-get install ros-melodic-camera-info-manager
sudo apt-get install ros-melodic-image-view

其中melodic为ROS版本号,需要根据自己安装的ROS版本进行修改 

四、测试

  • 在终端输入以下代码
roslaunch usb_cam usb_cam-test.launch 

出现摄像头画面即为测试成功

若出现报错检查下摄像头是否与虚拟机连接成功

五、修改ORB_SLAM2中的文件

  • 找到ros_mono.cc的位置 ~/catkin_slam/src/ORB_SLAM2/Examples/ROS/ORB_SLAM2/src 打开文件,将下面代码
ros::Subscriber sub = nodeHandler.subscribe("/camera/image_raw", 1, &ImageGrabber::GrabImage,&igb);

修改为

ros::Subscriber sub = nodeHandler.subscribe("/usb_cam/image_raw", 1, &ImageGrabber::GrabImage,&igb);
  •  编译总的ORB_SLAM2
cd ~/catkin_ws/src/ORB_SLAM2/
mkdir build
cd build
cmake ..
make
  • 再单独编译ROS
 cd        //回到主目录
 cd ~/catkin_ws/src/ORB_SLAM2/Examples/ROS/ORB_SLAM2/
 mkdir build
 cd build
 cmake ..
 make

 六、运行

  • 打开一个终端,输入
roscore
  • 再打开一个终端
roslaunch usb_cam usb_cam-test.launch 
  • 再打开一个终端
rosrun ORB_SLAM2 Mono ~/catkin_ws/src/ORB_SLAM2/Vocabulary/ORBvoc.txt ~/catkin_ws/src/ORB_SLAM2/Examples/ROS/ORB_SLAM2/Asus.yaml

参考文章:最完整---在ROS用自己电脑的摄像头在运行ORB_SLAM2_一大块肉松的博客-CSDN博客_ros使用摄像头的slam

  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

混沌浮世

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值