
The easier way to generate virtual 2D laser scan from 3D information is to use the depthimage_to_laserscan package and the provided DepthImageToLaserScanNodelet nodelet. Most of the mapping packages included in ROS require 2D laser scan information to work (see gmapping, cartographer, amcl). It is important to remap the name of this topic to correctly match the name of the available topic to demux, i.e. Note: The RgbdSensorsDemuxNodelet subscribes to a topic called rgbd_sens. Or you can use it inside a nodelet manager to exploit zero-copy, if you have other nodelets that can be combined together to process the provided data. $ rosrun nodelet nodelet standalone zed_nodelets/RgbdSensorsDexNodelet _name: =demux_nodelet rgbd_sens: = You can start the RgbdSensorsSyncNodelet nodelet and the ZEDWrapperNodelet nodelet in the same nodelet manager easily using the zed_sync_nodelet.launch launch file provided in the zed_nodelet_example package: Size of message queue for each synchronized topic If false all the message must have the same timestamp, this is almost impossible if subscribing also to IMU and Magnetometer topics and the parameter sensors_timestamp_sync is false in the ZED nodelet Use approximate synchronization for the input topics. The name of the ZED nodelet publishing the topics to be synchronized The nodelet can be configured using the follow parameters, the file sync.yaml with the definition of all the parameters and their default values is provided in the zed_wrapper package: Parameter The topic allows to publish visual/depth information (RGBD) synchronized with inertial and orientation data Parameters The custom topic RGBDSensors is defined in the package zed_interface as: To perform this operation we provide the nodelet zed_nodelets/RgbdSensorsSyncNodelet that allows to synchronize RGB, Depth, IMU and Magnetometer information in a single custom topic RGBDSensors. Sometimes it is useful to synchronize and mux a few topics in one single topic using their timestamp, for example to save a rosbag or to guarantee that all the topics published in the same instant are received on the other side of a network.
#Zed header how to#
To demonstrate how to use the ZED nodelet exploiting the power of nodelets we provide two examples: Furthermore intra-process communication allows to reduce the network traffic for nodes running on the same machine.

Instead, using zero-copy, no memory copy is required as the memory is simply shared between the nodelets that are contained in the same nodelet manager process. Subscribing to these kind of topics using the standard node serialized communication requires a lot of memory copies that generate latency and requires more computational power. Why is this important? The ZED nodelet publishes images and pointclouds at high frequency. In this way the different nodelets can exploit the advantages of the intra process communication that allows zero copy passing of data between nodelets. To really perceive the power of the nodelet package it is necessary to load more nodelets inside the same nodelet manager, that is inside the same process. Roslaunch zed_wrapper zed_camera_nodelet.launch camera_model: =zed2
