GzSensorMonitor – Real-Time Sensor Feedback Inside Gazebo Harmonic

Hello ROS and Gazebo Community,

We are pleased to announce the release of GzSensorMonitor, an open-source plugin for Gazebo Harmonic that enables real-time visualization of sensor data directly inside the Gazebo simulation.

In a typical simulation workflow, the robot, its environment, and its sensor data are often inspected through different tools or windows. GzSensorMonitor brings the sensor feedback into the simulation itself by providing a virtual monitor inside the Gazebo world.

The plugin can display live data from different sensors, allowing users to observe what the simulated robot is perceiving while simultaneously viewing the simulated environment.

The current release supports:

- RGB camera feedback

- RGB-D camera feedback

- Depth visualization

- LiDAR feedback

- Runtime switching between sensor modes

- Real-time display updates

For example, a camera mounted on a robot can continuously stream its RGB or RGB-D observation to a monitor placed inside the simulated environment. Similarly, depth and LiDAR data can be visualized directly in Gazebo, making it possible to inspect sensor observations without relying on a separate visualization window.

This can be useful across a wide range of simulation workflows, including robotic perception, autonomous navigation, manipulation, sensor development, environment understanding, and testing of sensor configurations. It also provides a convenient way to demonstrate and validate how simulated sensors respond to changes in the environment in real time.

GzSensorMonitor is developed and tested with:

- Ubuntu 24.04

- ROS 2 Jazzy

- Gazebo Harmonic

The project is available on GitHub:

We welcome feedback, suggestions, and contributions from the ROS and Gazebo community.

Authors:

Aachal Sharma & Rahul Gupta

Both authors contributed equally to the design, development, and implementation of GzSensorMonitor.

Uh… Although I really like what you’ve made, there’s still the question: why not use the normal image view Qt windows available in Gz GUI?

1 Like

Yes, that’s actually the idea. The small display represents the kind of display that would be mounted on the physical robot, while the second application acts as the digital twin for monitoring and visualization.

The normal image view in Gazebo is useful for simply viewing the camera feed, but our approach is more application-oriented. It allows us to represent the robot’s physical display and its digital-twin counterpart together, making it easier to monitor the robot’s state and sensor information in a real-time system. So rather than replacing Gazebo’s image view, we are trying to provide a more realistic and practical interface for the actual robot use case.

3 Likes