ros實現計算機UVC_cramer通信


ros實現計算機UVC_cramer通信


目前在沒喲turtlebot的實物的情況下,來模擬進行計算機通信,實現UVC_camera實現遠程傳輸圖像。要求其中一臺計算機帶有USB攝像頭,我們使用uvc——camera,是最常用的usb攝像頭功能包.

  • 安裝uvc_camera功能包

$ sudo apt - get install ros - kinetic - uvc - camera

  • 安裝image相關功能包

$ sudo apt - get install ros - kinetic - image -*
$ sudo apt - get install ros - kinetic - rqt - image - view

  • 運行uvc_camera節點
  • 如果收到"[WARN]:camera calibration file /home/xxxx/.ros/camera_info/camera.yaml not found",可以忽略,這是攝像頭未進行校準的提醒,對我們本節沒有影響。
  • 查看話題消息

$ rostopic list
/ camera _ info
/ image _ raw
/ image _ raw / compressed
/ image _ raw / compressed / parameter _ descriptions
/ image _ raw / compressed / parameter _ updates
/ image _ raw / compressedDepth
/ image _ raw / compressedDepth / parameter _ descriptions
/ image _ raw / compressedDepth / parameter _ updates
/ image _ raw / theora
/ image _ raw / theora / parameter _ descriptions
/ image _ raw / theora / parameter _ updates
/ rosout
/ rosout _ agg

  • 查看圖像信息
    在上一節中我們運行了usc_camera_node節點時會發布圖像信息,我們用image_view和Rviz實際的查看圖像。

  • 用image_view節點查看圖像,後面附加選項“image:=/image_raw”是把話題列表中的話題以圖像的形式上查看的選項。(image_raw爲話題),運行如下指令,攝像頭拍攝的圖像將會在小窗頭中顯示。

$ rosrun image _ view image _ view image :=/ image _ raw

  • 用rqt_image_view节点检查
    rqt_image_view中有GUI元素的rqt插件image_view。运行rqt_image_view节点将显示顯示如上一節所顯示的圖像。与image_view不同,您还可以在运行后从图像查看器GUI中选择一个话题。

$ rqt _ image _ view image :=/ image _ raw

  • 用RViz查看
    我们运行一个可视化工具RViz

$ rviz

RViz运行后,先更改“Displays”选项。单击RViz左下方的[Add],在[By display
type]选项卡中选择[Image],以此加载图像显示功能

image Display添加到RViz

  1. 遠程圖像傳輸

    我們介紹一種从另一台远程计算机上查看安装在机器人上的usb相机的图像信息的方法,實現機器人上的計算機與我們的電腦的通信。

  2. 连接了相机的计算机-主機
    在主機上(鏈接有攝像頭的計算機)運行roscore主節點。在這之前,我們首先要做的是修改網絡變量,ROS_MASTER_URI和ROS_HOMENAME。首先,使用类似gedit的文档编辑程序(sublime、text、vim、emacs和nano),使用以下命令打开bashrc文件。

$ gedit ~/. bashrc

加載bashrac後,修改ROS_MASTER_URI和ROS_HOSTNAME變量。localhost爲本機IP地址,可使用ifconfig來查看。

export ROS _ MASTER _ URI = http:// localhost: 11311
export ROS _ HOSTNAME = localhost

然后运行roscore,并在另一个终端窗口中运行uvc_camera_node节点

$ roscore
$ rosrun uvc _ camera uvc _ camera _ node

3.远程计算机-從機
同样地,在远程计算机上,打开bashrc文件并修改ROS_MASTER_URI和ROS_HOSTNAME变量,将ROS_MASTER_URI设置为连有相机的计算机的IP,并将ROS_HOSTNAME变量更改为远程计算机本身的IP

export ROS _ MASTER _ URI = http:// 主機的localhost: 11311
export ROS _ HOSTNAME = localhost

$ rosrun image _ view image _ view image :=/ image _ raw

這樣我們就可以在從幾上觀察到主機上攝像頭所拍攝的畫面。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值