Ignition Sensors

API Reference

6.3.0
ignition::sensors Namespace Reference

Sensors namespace. More...

Classes

class  AirPressureSensor
 AirPressure Sensor Class. More...
 
class  AltimeterSensor
 Altimeter Sensor Class. More...
 
class  BrownDistortionModel
 Brown Distortion Model class. More...
 
class  CameraSensor
 Camera Sensor Class. More...
 
class  DepthCameraSensor
 Depth camera sensor class. More...
 
class  Distortion
 Distortion models for sensor output signals. More...
 
class  DistortionFactory
 Use this distortion manager for creating and loading distortion models. More...
 
class  ForceTorqueSensor
 Force Torque Sensor Class. More...
 
class  GaussianNoiseModel
 Gaussian noise class. More...
 
class  GpuLidarSensor
 GpuLidar Sensor Class. More...
 
class  ImageBrownDistortionModel
 Distortion Model class for image sensors. More...
 
class  ImageDistortionFactory
 Use this distortion manager for creating and loading distortion models. More...
 
class  ImageGaussianNoiseModel
 Gaussian noise class for image sensors. More...
 
class  ImageNoiseFactory
 
class  ImuSensor
 Imu Sensor Class. More...
 
class  Lidar
 Lidar Sensor Class. More...
 
class  LogicalCameraSensor
 Logical Camera Sensor Class. More...
 
class  MagnetometerSensor
 Magnetometer Sensor Class. More...
 
class  Manager
 Loads and runs sensors. More...
 
class  NavSatSensor
 NavSat Sensor Class. More...
 
class  Noise
 Noise models for sensor output signals. More...
 
class  NoiseFactory
 Use this noise manager for creating and loading noise models. More...
 
class  RenderingEvents
 
class  RenderingSensor
 a rendering sensor class More...
 
class  RgbdCameraSensor
 RGBD camera sensor class. More...
 
class  SegmentationCameraSensor
 Segmentation camera sensor class. More...
 
class  Sensor
 a base sensor class More...
 
class  SensorFactory
 A factory class for creating sensors This class instantiates sensor objects based on the sensor type and makes sure they're initialized correctly. More...
 
class  SensorPlugin
 Base sensor plugin interface. More...
 
class  SensorTypePlugin
 Templated class for instantiating sensors of the specified type. More...
 
class  ThermalCameraSensor
 Thermal camera sensor class. More...
 

Typedefs

typedef std::shared_ptr< BrownDistortionModelBrownDistortionModelPtr
 
typedef std::vector< CameraSensorPtrCameraSensor_V
 
typedef std::shared_ptr< CameraSensorCameraSensorPtr
 
typedef std::shared_ptr< DistortionDistortionPtr
 
typedef std::shared_ptr< GaussianNoiseModelGaussianNoiseModelPtr
 
typedef std::vector< GpuLidarSensorPtrGpuLidarSensor_V
 
typedef std::shared_ptr< GpuLidarSensorGpuLidarSensorPtr
 
typedef std::shared_ptr< ImageBrownDistortionModelImageBrownDistortionModelPtr
 
typedef std::shared_ptr< ImageGaussianNoiseModelImageGaussianNoiseModelPtr
 Shared pointer to Noise. More...
 
typedef std::shared_ptr< NoiseNoisePtr
 
typedef std::vector< SensorPtrSensor_V
 
using SensorId = std::size_t
 A string used to identify a sensor. More...
 
typedef std::shared_ptr< SensorSensorPtr
 

Enumerations

enum  DistortionType : int { NONE = 0, CUSTOM = 1, BROWN = 2 }
 Which distortion types we support. More...
 
enum  NoiseType : int { NONE = 0, CUSTOM = 1, GAUSSIAN = 2 }
 Which noise types we support. More...
 
enum  SensorCategory { IMAGE = 0, RAY = 1, OTHER = 2, CATEGORY_COUNT = 3 }
 SensorCategory is used to categorize sensors. This is used to put sensors into different threads. More...
 
enum  SensorDistortionType { SENSOR_DISTORTION_TYPE_BEGIN = 0, NO_DISTORTION = SENSOR_DISTORTION_TYPE_BEGIN, CAMERA_DISTORTION = 1, SENSOR_DISTORTION_TYPE_END }
 
enum  SensorNoiseType {
  SENSOR_NOISE_TYPE_BEGIN = 0, NO_NOISE = SENSOR_NOISE_TYPE_BEGIN, CAMERA_NOISE = 1, MAGNETOMETER_X_NOISE_TESLA = 2,
  MAGNETOMETER_Y_NOISE_TESLA = 3, MAGNETOMETER_Z_NOISE_TESLA = 4, ALTIMETER_VERTICAL_POSITION_NOISE_METERS = 5, ALTIMETER_VERTICAL_VELOCITY_NOISE_METERS_PER_S = 6,
  AIR_PRESSURE_NOISE_PASCALS = 7, ACCELEROMETER_X_NOISE_M_S_S = 8, ACCELEROMETER_Y_NOISE_M_S_S = 9, ACCELEROMETER_Z_NOISE_M_S_S = 10,
  GYROSCOPE_X_NOISE_RAD_S = 11, GYROSCOPE_Y_NOISE_RAD_S = 12, GYROSCOPE_Z_NOISE_RAD_S = 13, LIDAR_NOISE = 14,
  FORCE_X_NOISE_N = 15, FORCE_Y_NOISE_N = 16, FORCE_Z_NOISE_N = 17, TORQUE_X_NOISE_N_M = 18,
  TORQUE_Y_NOISE_N_M = 19, TORQUE_Z_NOISE_N_M = 20, NAVSAT_HORIZONTAL_POSITION_NOISE = 21, NAVSAT_VERTICAL_POSITION_NOISE = 22,
  NAVSAT_HORIZONTAL_VELOCITY_NOISE = 23, NAVSAT_VERTICAL_VELOCITY_NOISE = 24, SENSOR_NOISE_TYPE_END
}
 
enum  WorldFrameEnumType {
  NONE = 0, ENU = 1, NED = 2, NWU = 3,
  CUSTOM = 4
}
 Inline bracket to help doxygen filtering. More...
 

Functions

std::string customType (const sdf::Sensor &_sdf)
 Get the name of a sensor's custom type from SDF. More...
 
std::string customType (sdf::ElementPtr _sdf)
 Get the name of a sensor's custom type from SDF. More...
 

Variables

const SensorId NO_SENSOR = 0
 

Detailed Description

Sensors namespace.

Typedef Documentation

◆ BrownDistortionModelPtr

◆ CameraSensor_V

◆ CameraSensorPtr

◆ DistortionPtr

◆ GaussianNoiseModelPtr

◆ GpuLidarSensor_V

◆ GpuLidarSensorPtr

◆ ImageBrownDistortionModelPtr

◆ ImageGaussianNoiseModelPtr

◆ NoisePtr

◆ Sensor_V

◆ SensorId

A string used to identify a sensor.

◆ SensorPtr

Enumeration Type Documentation

◆ DistortionType

enum DistortionType : int
strong

Which distortion types we support.

Enumerator
NONE 
CUSTOM 
BROWN 

◆ NoiseType

enum NoiseType : int
strong

Which noise types we support.

Enumerator
NONE 
CUSTOM 
GAUSSIAN 

◆ SensorCategory

SensorCategory is used to categorize sensors. This is used to put sensors into different threads.

Enumerator
IMAGE 

Image based sensor class. This type requires the rendering engine.

RAY 

Ray based sensor class.

OTHER 

A type of sensor is not a RAY or IMAGE sensor.

CATEGORY_COUNT 

Number of Sensor Categories.

◆ SensorDistortionType

Enumerator
SENSOR_DISTORTION_TYPE_BEGIN 
NO_DISTORTION 

Noise streams for the Camera sensor.

See also
CameraSensor
CAMERA_DISTORTION 

Noise streams for the Camera sensor.

See also
CameraSensor
SENSOR_DISTORTION_TYPE_END 

◆ SensorNoiseType

Enumerator
SENSOR_NOISE_TYPE_BEGIN 
NO_NOISE 

Noise streams for the Camera sensor.

See also
CameraSensor
CAMERA_NOISE 

Noise streams for the Camera sensor.

See also
CameraSensor
MAGNETOMETER_X_NOISE_TESLA 

Magnetometer body-frame X axis noise in Tesla.

See also
MagnetometerSensor
MAGNETOMETER_Y_NOISE_TESLA 

Magnetometer body-frame Y axis noise in Tesla.

See also
MagnetometerSensor
MAGNETOMETER_Z_NOISE_TESLA 

Magnetometer body-frame Z axis noise in Tesla.

See also
MagnetometerSensor
ALTIMETER_VERTICAL_POSITION_NOISE_METERS 

Vertical noise stream for the altimeter sensor.

See also
AltimeterSensor
ALTIMETER_VERTICAL_VELOCITY_NOISE_METERS_PER_S 

Velocity noise streams for the altimeter sensor.

See also
AltimeterSensor
AIR_PRESSURE_NOISE_PASCALS 

Air Pressure noise streams for the air pressure sensor.

See also
AirPressureSensor
ACCELEROMETER_X_NOISE_M_S_S 

Accelerometer body-frame X axis noise in m/s^2.

See also
ImuSensor
ACCELEROMETER_Y_NOISE_M_S_S 

Accelerometer body-frame Y axis noise in m/s^2.

See also
ImuSensor
ACCELEROMETER_Z_NOISE_M_S_S 

Accelerometer body-frame Z axis noise in m/s^2.

See also
ImuSensor
GYROSCOPE_X_NOISE_RAD_S 

Gyroscope body-frame X axis noise in m/s^2.

See also
ImuSensor
GYROSCOPE_Y_NOISE_RAD_S 

Gyroscope body-frame X axis noise in m/s^2.

See also
ImuSensor
GYROSCOPE_Z_NOISE_RAD_S 

Gyroscope body-frame X axis noise in m/s^2.

See also
ImuSensor
LIDAR_NOISE 

Noise streams for the Lidar sensor.

See also
Lidar
FORCE_X_NOISE_N 

Force body-frame X axis noise in N.

See also
ForceTorqueSensor
FORCE_Y_NOISE_N 

Force body-frame Y axis noise in N.

See also
ForceTorqueSensor
FORCE_Z_NOISE_N 

Force body-frame Z axis noise in N.

See also
ForceTorqueSensor
TORQUE_X_NOISE_N_M 

Torque body-frame X axis noise in Nm.

See also
ForceTorqueSensor
TORQUE_Y_NOISE_N_M 

Torque body-frame Y axis noise in Nm.

See also
ForceTorqueSensor
TORQUE_Z_NOISE_N_M 

Torque body-frame Z axis noise in Nm.

See also
ForceTorqueSensor
NAVSAT_HORIZONTAL_POSITION_NOISE 

Noise streams for the NavSat position sensor.

See also
NavSat
NAVSAT_VERTICAL_POSITION_NOISE 

Noise streams for the NavSat position sensor.

See also
NavSat
NAVSAT_HORIZONTAL_VELOCITY_NOISE 

Noise streams for the NavSat velocity sensor.

See also
NavSat
NAVSAT_VERTICAL_VELOCITY_NOISE 

Noise streams for the NavSat velocity sensor.

See also
NavSat
SENSOR_NOISE_TYPE_END 

◆ WorldFrameEnumType

enum WorldFrameEnumType
strong

Inline bracket to help doxygen filtering.

Reference frames enum

Enumerator
NONE 

NONE : To be used only when <localization> reference orientation tag is empty.

ENU 

ENU (East-North-Up): x - East, y - North, z - Up.

NED 

NED (North-East-Down): x - North, y - East, z - Down.

NWU 

NWU (North-West-Up): x - North, y - West, z - Up.

CUSTOM 

CUSTOM : The frame is described using custom_rpy tag.

Function Documentation

◆ customType() [1/2]

std::string ignition::sensors::customType ( const sdf::Sensor &  _sdf)

Get the name of a sensor's custom type from SDF.

Given an SDF tag as follows:

<sensor name="sensor_name" type="custom" ignition:type="sensor_type">

This function returns sensor_type.

It will return an empty string if the element is malformed. For example, if it misses the ignition:type attribute or is not of type="custom".

Parameters
[in]_sdfSensor SDF object.
Returns
_sensorType Name of sensor type.

◆ customType() [2/2]

std::string ignition::sensors::customType ( sdf::ElementPtr  _sdf)

Get the name of a sensor's custom type from SDF.

Given an SDF tag as follows:

<sensor name="sensor_name" type="custom" ignition:type="sensor_type">

This function returns sensor_type.

It will return an empty string if the element is malformed. For example, if it misses the ignition:type attribute or is not of type="custom".

Parameters
[in]_sdfSensor SDF object.
Returns
_sensorType Name of sensor type.

Variable Documentation

◆ NO_SENSOR

const SensorId NO_SENSOR = 0

Referenced by Manager::CreateSensor().