- Fix compatibility with ZED SDK v4.1
- Add support to Positional Tracking Gen 2
- The parameter pos_tracking_mode can accept the new values GEN_1 and GEN_2, instead of STANDARD and QUALITY
- Add support to NEURAL+ depth mode. Value NEURAL_PLUS for the parameter depth_mode
- The annoying warning Elaboration takes longer... is now emitted only in DEBUG mode
- Remove start_object_detection and stop_object_detection services
- Add enable_object_detection service that takes a bool as parameter to enable/disable the OD module (same behavior as in ROS 2 Wrapper)
- Add parameter 'object_detection/allow_reduced_precision_inference'
- Add parameter 'object_detection/prediction_timeout'
- The parameter 'object_detection/model' is no more an integer, but a string with the full name of the supported OD model
- Add pose and odometry status publishers
- Improve odometry and pose publishing and TF broadcasting
- Add ROS '.clang-format'
- Code refactoring
- Add 'set_roi' and 'reset_roi' services
- Add parameter 'pos_tracking/depth_min_range'
- Add parameter 'pos_tracking/set_as_static'
- Change the parameter 'general/resolution' to 'general/grab_resolution' and replace numeric values with strings
- Add 'general.svo_realtime' parameter
- Change 'general/verbose' to 'general/sdk_verbose'
- Add 'general/region_of_interest' parameter
- Change the parameter 'depth/quality' to 'depth/depth_mode' and replace numeric values with strings
- Improve the behavior of the "NO DEPTH" mode
- Remove the parameters 'depth_downsample_factor' and 'img_downsample_factor'
- Add the parameter 'pub_resolution' and 'pub_downscale_factor'
- Add 'pos_tracking/set_gravity_as_origin' parameter. If 'true' align the positional tracking world to imu gravity measurement. Keep the yaw from the user initial pose.
- Add 'pos_tracking/pos_tracking_mode' parameter. Matches the ZED SDK setting: 'QUALITY', 'STANDARD'
- Fix the warning 'Elaboration takes longer [...]'
- 'pub_frame_rate' now controls the 'InitParameters::grab_compute_capping_fps' parameter of the ZED SDK instead of controlling the frequency of a parallel thread. It's not a Dynamic parameter anymore.
- Change 'general/camera_flip' parameter to string: 'AUTO', 'ON', 'OFF'
- Change 'general/verbose' from bool to integer
- Support for ZED SDK v4.0
- Remove parameter 'object_detection.body_fitting'
- Remove parameter 'depth.sensing_mode'
- Remove parameter 'video.extrinsic_in_camera_frame'
- Skeleton Tracking is no more available. Migrate to ROS 2 Wrapper if you need it
- 'sensors' and 'object_detection' parameters are now in 'common.yaml'
- Move parameters 'general.resolution' and 'general.grab_frame_rate' to cameras yaml files to support the different configurations on ZED X and ZED X Mini.
- Remove support for ROS Melodic that reached EOL
- Add 1080p for ZED X and ZED X Mini
- Fix the frame links of barometer, magnetometer, and temperature sensors for ZED2i
- Add parameter 'sensors/max_pub_rate' to set the maximum publishing frequency of sensors data
- Improve Sensors thread
- Fix wrong TF broadcasting when calling the 'set_pose', 'reset_tracking', and 'reset_odometry' services. Now the initial odometry is coherent with the new starting point.
- Add Plane Detection. See [ZED Documentation](https://www.stereolabs.com/docs/ros/plane_detection/)
- Fix TF timestamp issue in SVO mode
- Fix units for Atmospheric pressure data. Now the value is correctly published in 'Pascal' according to the [topic specification](http://docs.ros.org/en/melodic/api/sensor_msgs/html/msg/FluidPressure.html).
- Add support for the new Neural Depth mode
- Add support for head detection model
- Add support for sport-related object class
- Add support for X_MEDIUM neural network models
- Enable AI for ZED Mini
- Add new '<zed>_base_link' frame on the base of the camera to easily handle camera positioning on robots. Thx @civerachb-cpr
- Improve URDF by adding 3° slope for ZED and ZED2, X-offset for optical frames to correctly match the CMOS sensors position on the PCB, X-offset for mounting screw on ZED2i
- Add 'zed_macro.urdf.xacro' to be included by other 'xacro' file to easily integrate ZED cameras in the robot descriptions. See [PR #771](stereolabs#771) for details. Thx @civerachb-cpr
- New parameter 'save_area_memory_db_on_exit' to force Area Memory saving when the node is closed and Area Memory is enabled and valid.
- Add service 'save_Area_map' to trigger an Area Memory saving.
- New tool function to transform a relative path to absolute.
- Enabled static IMU TF broadcasting even it 'publish_tf' is set to false, making the two options independent. Thx to @bjsowa
- Moved the 'zed_interfaces' folder in the new ['zed-ros-interfaces'](https://github.com/stereolabs/zed-ros-interfaces) repository. The new repository is useful to receive the topics from a ZED node on system where the 'zed-ros-wrapper' repository cannot be fully installed, i.e. systems without CUDA support. For this repository nothing changes because the 'zed_interfaces' folder is replaced by the 'zed-ros-interfaces' git submodule to automatically satisfy all the dependencies.
- Fix sensors topics pubblication for ZED2i. The support for the new camera was not complete
- Fix sensor_msgs type for depth image in OpenNI mode, from 'sensor_msgs::image_encodings::mono16' to 'sensor_msgs::image_encodings::TYPE_16UC1'. Depth image in OpenNI mode is now compatible with the nodelet 'depthimage_to_laserscan'
- Add support for ROS Noetic
- Add support for SDK v3.5
- Add support for the new ZED 2i
- Add new parameter 'pos_tracking/pos_tracking_enabled' to enable positional tracking from start even if not required by any subscribed topic. This is useful, for example, to keep the TF always updated.
- Add new example to start multiple ZED Nodelets inside the same nodelet manager
- Fixed issue #690
- Add support for new DEPTH16_MM data type for depth (OPENNI MODE)
- Fix issue #660: detected objects topic not published if depth computation not active
- Improved support for ZED Object Detection
- Add Skeleton Tracking support
- New Rviz plugin for Object Detection in 'zed-ros-examples'
- New parameters and name changing to fit the new OD features, also the 'start_object_detection' service has been modified to match the new features: - new 'model' parameter to choose the AI model - new 'max_range' parameter to limit the detection range - new 'sk_body_fitting' parameter to enable Skeleton fitting for skeleton AI models - 'people' -> 'mc_people' to indicate that it is related to multiclass AI models - 'vehicles'-> 'mc_vehicles' to indicate that it is related to multiclass AI models - new 'mc_bag' parameter to enable bags detection with multiclass AI models - new 'mc_animal' parameter to enable animals detection with multiclass AI models - new 'mc_electronics' parameter to enable electronic devices detection with multiclass AI models - new 'mc_fruit_vegetable' parameter to enable fruits and vegetables detection with multiclass AI models
- Fixed sync issue between RGB and Depth data (Thx @dennisVi)
- Fixed issues with SVO and sensors data (Thx @dennisVi)
- Object Detection now runs asynchronously respect to data grabbing and Object Detected data are published only when available not affecting the frequency of the publishing of the other data types
- Depth OpenNI topic name changed from 'depth/depth_raw_registered' to 'depth/depth_registered'
- Added new parameter 'sensors/publish_imu_tf' to enable/disable IMU TF broadcasting
- Fixed duplicated IMU timestamp issue (see ticket #577)
- Fixed problem with IMU TF in Rviz: 'odom' and 'zed_camera_center' TFs are now published at the same frequency of the IMU TF, if available)
- IMU TF is now published once as static TF even if the IMU topic is not subscribed
- Fix timestamp update coherency due to parallel threads. Thanks to @matlabbe
- Fix issue with IMU frame link when 'publish_tf' and 'publish_map_tf' are disabled
- Added the new 'zed_interfaces/RGBDSensors' custom topic that contains RGB, Depth, IMU and Magnetometer synchronized topics
- Added a new package 'zed_nodelets' that contains the main 'zed_nodelets/ZEDWrapperNodelet' and new nodelets
- Added a new nodelet 'zed_nodelets/RgbdSensorsSyncNodelet' that subscribes to RGB, Depth, IMU and Magnetometer topics and republish them in a single synchronized message
- Added a new nodelet 'zed_nodelets/RgbdSensorsDemuxNodelet' that subscribes to RGBDSensors and republish RGB, Depth, IMU and Magnetometer as single topics
- Renamed 'zed_interfaces/objects' to 'zed_interfaces/Objects'
- Renamed 'zed_interfaces/object_stamped' to 'zed_interfaces/ObjectStamped'
- Reorganized the 'zed_wrapper/launch' folder adding the 'include' folder
- New online documentation to explain in details the new 'zed_nodelets' package: https://www.stereolabs.com/docs/ros/zed_nodelets/
- Added new package 'zed_interfaces' with isolated declarations of custom messages, services and actions
- Removed not used 'world_frame' parameter
- Removed the'publish_pose_covariance' parameter, now covariance for pose and odometry is always published
- Removed '_m' from parameters 'mapping/resolution_m' and 'mapping/max_mapping_range_m'
- Renamed the parameter 'depth_resample_factor' to 'depth_downsample_factor'
- Renamed the parameter 'img_resample_factor' to 'img_downsample_factor'
- Renamed the parameter 'odometry_db' to 'area_memory_db_path'
- Renamed the parameter 'frame_rate' to 'grab_frame_rate'
- Added new dynamic parameter 'pub_frame_rate' to reduce Video and Depth publishing frequency respect to grabbing frame rate ['grab_frame_rate']
- Added new dynamic parameter 'gamma' for Gamma Control
- Added new dynamic parameter 'depth_texture_conf' to filter depth according to textureness information
- Added new TF frames for all the sensors available on ZED2
- Added publishers for gray images
- Added publisher for Camera to IMU transform: '/<camera_name>/<node_name>/camera_imu_transform'
- Default value for 'depth_confidence' changed from 100 to 50
- Added 'base_frame' as launch parameter to propagate the value of the parameter in the Xacro description
- Fix default value for dynamic parameters not set from 'common.yaml'
- Added xacro support for parametric URDF
- Removed redundant URDFs and added a single parametric URDF based on xacro
- Fixed auto white balance at node start (thanks to @kjaget)
- Removed 'fixed_covariance' and 'fixed_cov_value' parameters (not required anymore)
- Removed 'sens_pub_rate' parameter
- Removed 'confidence_image' message
- Removed 'color_enhancement' parameter, always ON by default
- Mapping does not use presets for resolution, but a float value in range [0.01,0.2]
- Added new parameter 'max_mapping_range_m' for mapping depth range (set to '-1' for auto calculation)
- Moved "multi-camera" launch file in ['zed-ros-examples'](https://github.com/stereolabs/zed-ros-examples/tree/master/examples/zed_multicamera_example)
- Added current GPU ID to Diagnostic information
- The 'confidence' dynamic parameter is now called 'depth_confidence'
- Removed dynamic parametes 'map_resize_factor'
- Added new parameter 'video/img_resample_factor'
- Added new parameter 'depth/map_resample_factor'
- Updated the names for the parameters of the Object Detection module [only ZED2]
- Added a new repository ['zed-ros-examples'](https://github.com/stereolabs/zed-ros-examples) to keep separated the main ZED Wrapper node from Examples and Tutorials. A clean robot installation is now allowed
- ZED 2 support
- Color enhancement support
- Max range is not a dynamic parameter anymore
- Camera temperature added to diagnostic (only ZED2)
- New service to start/stop mapping
- Support for Object Detection (only ZED2)
- Advanced support for on-board sensors (only ZED-M and ZED2)
- New tutorials, see ['zed-ros-examples'](https://github.com/stereolabs/zed-ros-examples)