无人机用ROS(1)传输压缩图片

系统信息

PC:Ubuntu 20.04.4 LTS + ROS noetic
UAV:Tinker Edge R + Debian buster + ROS noetic + Raspbarry Pi Camera V2

软件

PC端

安装解压工具包:

sudo apt install ros-${ROS_DISTRO}-image-transport-plugins

UAV端

使用gscam的例程v4ljpeg.launch,做必要的修改:

<launch>
  <!-- This launchfile should bring up a node that broadcasts a ros image
       transport on /webcam/image_raw -->

  <arg name="DEVICE" default="/dev/video5"/>
  <!-- The GStreamer framerate needs to be an integral fraction -->
  <arg name="FPS" default="30/1"/>
  <arg name="PUBLISH_FRAME" default="false"/>

  <node ns="v4l" name="gscam_driver_v4l" pkg="gscam" type="gscam" output="screen">
    <param name="camera_name" value="default"/>
    <param name="camera_info_url" value="package://gscam/examples/uncalibrated_parameters.ini"/>
    <param name="gscam_config" value="v4l2src device=$(arg DEVICE) do-timestamp=true is-live=true ! video/x-raw,width=640,height=480,format=NV12,framerate=$(arg FPS) ! videoflip method=rotate-180 ! jpegenc ! multipartmux ! multipartdemux ! jpegparse"/>
    <param name="use_gst_timestamps" value="true"/>
    <param name="image_encoding" value="jpeg"/>
    <param name="frame_id" value="/v4l_frame"/>
    <param name="sync_sink" value="true"/>
  </node>

</launch>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
rosbridge_websocket是ROS中通信的一个重要组件,它可以通过WebSocket提供一个实时的ROS消息通信桥接服务。在ROS系统中,信息传输是十分重要的,尤其是涉及到图像等大数据的传输传输图片的方法主要包括将图片转换为ROS中图像消息类型,并使用ROS自带的图像传输功能将其发送至rosbridge_websocket。在ROS中,图像消息通常使用sensor_msgs/Image类型,它包含了图像信息(如高度,宽度和颜色等)和图像数据(如byte[]数组)。图像数据可以通过compression和encoding参数进行压缩和编码,从而降低数据传输量和增强图像质量。 要将图片发送至rosbridge_websocket,首先需要通过ROS的ImageTransport库获取一个发布者对象,并设置图像数据的压缩和编码方式。接着,可以在ROS节点中编写一个订阅者对象,订阅发布者发布的消息,成功接收到图像消息后,可以通过rosbridge_websocket发送到客户端。 使用rosbridge_websocket传输图像需要注意两个问题,一是数据传输量大,为了保证传输效率,可以采用图像数据压缩技术,二是传输过程中可能会遇到网络延迟等问题,需要通过ROS的错误处理机制,对异常情况进行处理,保证数据传输的可靠性和稳定性。 总之,rosbridge_websocket可以非常便捷的传输图像等大数据类型,为ROS中信息传输和通信提供了高效和可靠的解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值