Supporting image compression formats passthrough (#1461)

* Supporting ros depth compression formats passthrough

* Added image_compression_format (support jpg,png). Use Compression.h constants.

* Bridging gap with #1457

* CoreWrapper: decode_images_on_demand

* rgbd_sync->rgbd_split encoding/decoding test with image_transport validation. rgbd_split color passthrough

* more tests

* fixing ci on kilted+

* fixing test

* fixing lyrical tests

* fixing rolling ci

* Improved test coverage

* fixing some tf waitForTransform deadlocks when sim time is used in tests

* CI: build rtabmap_slam on rolling

rtabmap_slam builds without nav2_msgs, which is not on resolute yet: skip its
key instead of leaving the package out. Only rtabmap_costmap_plugins (and the
rtabmap_ros metapackage pulling it in) still need nav2.
This commit is contained in:
matlabbe
2026-10-10 16:05:08 -07:00
committed by GitHub
parent 82f0754bf7
commit cf7d7ab958
47 changed files with 3962 additions and 250 deletions
+9 -5
View File
@@ -9,7 +9,11 @@ sensor_msgs/Image left
sensor_msgs/Image right
# Compressed images
# use rtabmap::util3d::uncompressImage() from "rtabmap/core/util3d.h"
# use rtabmap::uncompressImage() from "rtabmap/core/Compression.h"
# right_compressed holds a depth image in rtabmap's format (see Mem/DepthCompressionFormat),
# not readable by image_transport plugins: see
# rtabmap_conversions::rtabmapToCompressedDepthTransport() to convert it without
# decompression to compressed_depth_image_transport's format.
uint8[] left_compressed
uint8[] right_compressed
@@ -23,7 +27,7 @@ geometry_msgs/Transform[] local_transform
# raw 2d or 3D laser scan
sensor_msgs/PointCloud2 laser_scan
# compressed 2D or 3D laser scan
# use rtabmap::util3d::uncompressData() from "rtabmap/core/util3d.h"
# use rtabmap::uncompressData() from "rtabmap/core/Compression.h"
uint8[] laser_scan_compressed
int32 laser_scan_max_pts
float32 laser_scan_max_range
@@ -32,11 +36,11 @@ int32 laser_scan_format
geometry_msgs/Transform laser_scan_local_transform
# compressed user data
# use rtabmap::util3d::uncompressData() from "rtabmap/core/util3d.h"
# use rtabmap::uncompressData() from "rtabmap/core/Compression.h"
uint8[] user_data
# compressed occupancy grid
# use rtabmap::util3d::uncompressData() from "rtabmap/core/util3d.h"
# use rtabmap::uncompressData() from "rtabmap/core/Compression.h"
uint8[] grid_ground
uint8[] grid_obstacles
uint8[] grid_empty_cells
@@ -47,7 +51,7 @@ Point3f grid_view_point
KeyPoint[] key_points
Point3f[] points
# compressed descriptors
# use rtabmap::util3d::uncompressData() from "rtabmap/core/util3d.h"
# use rtabmap::uncompressData() from "rtabmap/core/Compression.h"
uint8[] descriptors
GlobalDescriptor[] global_descriptors