ROS安装与Rviz的摄像头视频采集与标定


  

一.ROS的安装与配置

  ROS 是一个适用于机器人编程的框架,具有分布式、点对点,支持多种语言,组件化工具包
丰富,免费且开源的特点,这个框架把原本松散的零部件耦合在了一起,为他们提供了通信架构。
ROS 虽然叫做操作系统,但并非 Windows、Mac 那样通常意义的操作系统,它只是连接了操作系
统和开发的 ROS 应用程序,所以它也算是一个中间件,基于 ROS 的应用程序之间建立起了沟通
的桥梁,所以也是运行在 Linux 上的运行时环境,在这个环境上,机器人的感知、决策、控制
算法可以更好的组织和运行。
  首先打开虚拟机,笔者使用的为18.04版本的桌面版。

1.添加 ROS 软件源,将下列命令输入到 Ubuntu 的终端执行

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

2.添加密钥,将下列命令输入到 Ubuntu 的终端执行

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

成功后显示如下界面
在这里插入图片描述

3.安装desktop-full

sudo apt-get update
sudo apt-get install ros-melodic-desktop-full

在这里插入图片描述

4.初始化rostep

sudo rosdep init
rosdep update

如若出现找不到命令,则输入下列命令后再次输入上述两个命令

sudo apt-get install python-rosdep

5.设置环境变量

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc

![在这里插入图片描述](https://img-blog.csdnimg.cn/cbeef474220d4dadb5d01f5e65957d00.png

6.安装rosinstall

sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential

在这里插入图片描述

7.验证ROS安装成功与否

打开两个终端,分别输入以下命令

roscore

在这里插入图片描述

启动小海龟仿真器
按 ctrl+alt+t 打开一个新的终端,输入以下命令

rosrun turtlesim turtlesim_node

在这里插入图片描述
出现小乌龟图像后,证明安装ROS完成。

二、使用Rviz显示摄像头视频

1、配置摄像头

①首先USB选择3.1(此处笔者选择的3.1,若为3.0选3.0版本即可)
在这里插入图片描述

②连接主机摄像头
在这里插入图片描述

③用cheese命令检查摄像头的使用。输入cheese后摄像头将自动打开,出现如图所示的画面。
在这里插入图片描述

2、相关功能包的下载

①uvc camera
输入以下命令:

sudo apt-get install ros-melodic-uvc-camera

在这里插入图片描述

②image
输入以下命令:

sudo apt-get install ros-melodic-image-* 
sudo apt-get install ros-melodic-rqt-image-view

下载完毕后如图所示:
在这里插入图片描述

3、使用Rviz显示摄像头视频

①启动ROS

roscore

②再打开一个终端,运行camera节点

rosrun uvc_camera uvc_camera_node

③再打开一个终端,查看消息话题

rostopic list

④打印相机信息

rostopic echo /camera_info

在这里插入图片描述

⑤打开Rviz配置摄像头
输入rviz即可打开摄像头
在这里插入图片描述
注意:要先运行roscore,不然会出现无法连接master的错误:could not contact ROS master…
且不要关闭之前的终端
然后我们需要添加image。点击add,选中image,点击OK以后,配置Image Topic为 /image_raw,然后看见摄像头里的画面啦
在这里插入图片描述
在这里插入图片描述

⑥至此成功完成该步骤,接下来我们就可以开始摄像头的标定啦。
在这里插入图片描述

三、摄像头标定

1.安装usb_cam功能包

sudo apt-get install ros-melodic-usb-cam

在这里插入图片描述

2.启动摄像头

roslaunch usb_cam usb_cam-test.launch

3.安装摄像头标定功能包camera_calibration

sudo apt-get install ros-melodic-camera-calibration

4.相机标定

rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.024 image:=/usb_cam/image_raw camera:=/usb_cam

参数含义:

1)size:标定棋盘格内部角点个数,这里使用的棋盘一共有6行,每行有8个内部角点。

2)square:这个参数对应每个棋盘格的边长,单位是米

3)image和camera:设置摄像头发布的图像话题

我们只需要根据使用的摄像头和标定靶棋盘格尺寸,相应修改以上参数,即可启动标定程序。

5.下载标定靶

可以将图片打印在A4纸上进行标定,也可以用平板打开图片进行标定。
在这里插入图片描述

6.标定说明

标定程序启动成功后,将标定靶放置在摄像头视野范围内,如下图所示:

  • 注意:在没有标定成功前,右边的按钮都为灰色,不能点击。为了提高标定的准确性,应该尽量让标定靶出现在摄像头视野范围内的各个区域,界面右上角的进度条会提示标定进度。
    在这里插入图片描述在这里插入图片描述

对应参数

1 ) X:标定靶在摄像头视野中的左右移动。
2) Y:标定靶在摄像头视野中的上下移动。
3) Size:标定靶在摄像头视野中的前后移动。
4)Skew:标定靶在摄像头视野中的倾斜转动。

不断在视野中移动标定靶,直到“CALIBRATE"按钮变色,按钮变色代表标定程序的参数采集完成。然后点击“CALIBRATE"按钮,标定程序开始自动计算摄像头的标定参数,这个过程需要等待一段时间, 界面可能会变成灰色无响应状态, 注意千万不要将其关闭了。

在这里插入图片描述

7.标定完成

标定完成后,终端会有标定结果的显示,点击save后即可保存,标定参数将保存到默认的文件夹下,并在终端看到该路径,点击“COMMIT"按钮, 提交数据并退出程序,至此标定过程全部完成。

在这里插入图片描述

四.总结

  至此我们便完成了搭建和配置ROS环境,使用Rviz完成摄像头(camera)的视频采集,摄像头的标定的任务。对于ROS系统我们还有很多可以探索,这只是其中极小的一部分,对于视觉的探究远远不应停止与此,有兴趣的读者还可以尝试下载数据集进行运行,体验视觉的独特之处。
  通过本次实验让笔者也颇有收获,同时若有错误欢迎大家积极指正交流,谢谢~


参考

1.Ubuntu18.04下USB摄像头运行和标定
2.ROS下Rviz的摄像头视频采集和标定

  • 8
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值