https://github.com/gazebosim/gz-sensors
Provides numerous sensor models designed to generate realistic data from simulation environments.
https://github.com/gazebosim/gz-sensors
gazebo gazebosim hacktoberfest ignition-rendering ignition-robotics ignition-sensors robotics robotics-simulation sensors sensors-models simulation
Last synced: 7 months ago
JSON representation
Provides numerous sensor models designed to generate realistic data from simulation environments.
- Host: GitHub
- URL: https://github.com/gazebosim/gz-sensors
- Owner: gazebosim
- License: apache-2.0
- Created: 2020-04-15T09:18:13.000Z (over 6 years ago)
- Default Branch: gz-sensors9
- Last Pushed: 2025-03-24T21:07:39.000Z (over 1 year ago)
- Last Synced: 2025-03-28T17:02:06.250Z (over 1 year ago)
- Topics: gazebo, gazebosim, hacktoberfest, ignition-rendering, ignition-robotics, ignition-sensors, robotics, robotics-simulation, sensors, sensors-models, simulation
- Language: C++
- Homepage: https://gazebosim.org
- Size: 8.77 MB
- Stars: 81
- Watchers: 11
- Forks: 64
- Open Issues: 54
-
Metadata Files:
- Readme: README.md
- Changelog: Changelog.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Authors: AUTHORS
Awesome Lists containing this project
README
# Gazebo Sensors : Sensor models for simulation
**Maintainer:** ichen AT openrobotics DOT org
[](https://github.com/gazebosim/gz-sensors/issues)
[](https://github.com/gazebosim/gz-sensors/pulls)
[](https://community.gazebosim.org)
[](https://www.apache.org/licenses/LICENSE-2.0)
Build | Status
-- | --
Test coverage | [](https://codecov.io/gh/gazebosim/gz-sensors/tree/gz-sensors9)
Ubuntu Noble | [](https://build.osrfoundation.org/job/gz_sensors-ci-gz-sensors9-noble-amd64)
Homebrew | [](https://build.osrfoundation.org/job/gz_sensors-ci-gz-sensors9-homebrew-amd64)
Windows | [](https://build.osrfoundation.org/job/gz_sensors-9-clowin/)
Gazebo Sensors, a component of [Gazebo](https://gazebosim.org),
provides numerous sensor models
designed to generate realistic data from simulation environments. Gazebo Sensors is used in conjunction with [Gazebo Libraries](https://gazebosim.org/libs), and especially relies on the rendering capabilities from [Gazebo Rendering](https://gazebosim.org/libs/rendering) and physics simulation from [Gazebo Physics](https://gazebosim.org/libs/physics).
# Table of Contents
[Features](#features)
[Install](#install)
[Usage](#usage)
[Folder Structure](#folder-structure)
[Code of Conduct](#code-of-conduct)
[Contributing](#contributing)
[Versioning](#versioning)
[License](#license)
# Features
Gazebo Sensors provides a set of sensors models that can be
configured at run time to mimic specific real-world sensors. A noise model
is also provided that can be used to introduce Gaussian or custom noise
models into sensor streams.
## Supported Sensors
| **Sensor Name** | **API Link** | **SDF Element** | **Notes** |
|---------------------------|-------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------|----------------------------------------------------|
| **Air Pressure Sensor** | [AirPressureSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1AirPressureSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_air_pressure) | Measures atmospheric pressure |
| **Air Speed Sensor** | [AirSpeedSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1AirSpeedSensor.html) | N/A | Measures the speed of air relative to the sensor |
| **Altimeter** | [AltimeterSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1AltimeterSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_altimeter) | Measures altitude above a reference point |
| **Bounding Box Camera** | [BoundingBoxCameraSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1BoundingBoxCameraSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_camera) | Captures images with bounding box annotations |
| **Camera** | [CameraSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1CameraSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_camera) | Captures standard RGB images |
| **Depth Camera** | [DepthCameraSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1DepthCameraSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#camera_depth_camera) | Captures depth information |
| **Doppler Velocity Log** | [DopplerVelocityLog](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1DopplerVelocityLog.html) | N/A | Measures relative velocity of an underwater vehicle |
| **Force-Torque** | [ForceTorqueSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1ForceTorqueSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_force_torque) | Measures forces and torques on a joint |
| **GPU Lidar** | [GpuLidarSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1GpuLidarSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_lidar) | Simulates a 3D laser scanner using GPU acceleration|
| **IMU** | [ImuSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1ImuSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_imu) | Measures linear acceleration and angular velocity |
| **Logical Camera** | [LogicalCameraSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1LogicalCameraSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_logical_camera) | Detects models within a specified volume |
| **Magnetometer** | [MagnetometerSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1MagnetometerSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_magnetometer) | Measures magnetic field strength and direction |
| **NavSat (GPS)** | [NavSatSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1NavSatSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_navsat) | Simulates GPS-like positioning sensor |
| **RGBD Camera** | [RGBDCameraSensor](https://gazebosim.org/api/sensors/7/classgz_1_1sensors_1_1RgbdCameraSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_camera) | Captures RGB + Depth streams |
| **Segmentation Camera** | [SegmentationCameraSensor](https://gazebosim.org/api/sensors/9/classgz_1_1sensors_1_1SegmentationCameraSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_camera) | Captures labeled segmentation images |
| **Thermal Camera** | [ThermalCameraSensor](https://gazebosim.org/api/sensors/7/classgz_1_1sensors_1_1ThermalCameraSensor.html) | [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_camera) | Detects heat signature |
| **Wide Angle Camera** | [WideAngleCameraSensor](https://gazebosim.org/api/sensors/8/classgz_1_1sensors_1_1WideAngleCameraSensor.html)| [``](http://sdformat.org/spec?ver=1.12&elem=sensor#sensor_camera) | Captures wide field of view |
# Install
See the [installation tutorial](https://gazebosim.org/api/sensors/9/installation.html).
# Usage
Please refer to the [examples directory](https://github.com/gazebosim/gz-sensors/tree/main/examples).
A list of sensors and SDF examples can be found in the [SDF specification](http://sdformat.org/spec?ver=1.12&elem=sensor)
# Folder Structure
Refer to the following table for information about important directories and files in this repository.
```
├── examples Example programs.
├── include/gz/sensors Header files that will be installed.
├── src Source files and unit tests.
├── test
│ ├── integration Integration tests.
│ ├── performance Performance tests.
│ └── regression Regression tests.
├── tutorials Tutorials, written in markdown.
├── Changelog.md Changelog.
├── CMakeLists.txt CMake build script.
└── README.md This readme.
```
# Contributing
Please see the [contribution guide](https://gazebosim.org/docs/all/contributing).
# Code of Conduct
Please see
[CODE_OF_CONDUCT.md](https://github.com/gazebosim/gz-sim/blob/main/CODE_OF_CONDUCT.md).
# Versioning
This library uses [Semantic Versioning](https://semver.org/). Additionally, this library is part of the [Gazebo project](https://gazebosim.org) which periodically releases a versioned set of compatible and complimentary libraries. See the [Gazebo website](https://gazebosim.org) for version and release information.
# License
This library is licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0). See also the [LICENSE](https://github.com/gazebosim/gz-sensors/blob/main/LICENSE) file.