isl-org/Open3D

o3d.t.io.RSBagReader() with libRealSense Depth Post-Processing

Open

#6,164 opened on May 23, 2023

View on GitHub
 (2 comments) (0 reactions) (0 assignees)C++ (2,151 forks)batch import
feature requestgood first issue

Repository metrics

Stars
 (10,036 stars)
PR merge metrics
 (Avg merge 23d 3h) (5 merged PRs in 30d)

Description

Checklist

Proposed new feature or change

When reading a .bag file we would like apply Depth Post-Processing as implemented in the Intel RealSense SDK 2.0 (libRealSense)

The existing o3d.t.io.RSBagReader() class reads a .bag file as-is but we cannot add the libRealSense post processing such as decimation or temporal filters to the depth data.

When using o3d.t.io.RSBagReader() we get a RGBDImage Open3D format from bag_reader.next_frame(). This means there is no space to actually apply depth post-processing.

This work involves adding additional code to o3d.t.io.RSBagReader() to apply additional filters to the depth variable. For example (Python Pseudo Code):

depth_frame = frames.get_depth_frame(); decimation_filter = rs.decimation_filter() decimation_filter.set_option(filter_magnitude, decimation_magnitude) filtered_frame = decimation_filter.process(depth_frame)

Filters could be passed as json or a dictionary of filters

References

https://github.com/oclis/ROS-EYE/blob/ec30974957be471ef60da47f173dfbbffcfc555d/src/realsense_device_manager.py#L49

Additional information

No response

Contributor guide