Project Chrono: chrono::sensor::ChSegmentationCamera Class Reference

Public Member Functions | List of all members
chrono::sensor::ChSegmentationCamera Class Reference
SENSOR module » Sensors

## Description

Camera class.

`#include <ChSegmentationCamera.h>`

Inheritance diagram for chrono::sensor::ChSegmentationCamera:
[legend]
Collaboration diagram for chrono::sensor::ChSegmentationCamera:
[legend]

## Public Member Functions
| ChSegmentationCamera (std::shared_ptr< chrono::ChBody > parent, float updateRate, chrono::ChFrame< double > offsetPose, unsigned int w, unsigned int h, float hFOV, CameraLensModelType lens_model=CameraLensModelType::PINHOLE)
| Constructor for a segmentation camera that defaults to a pinhole lens model.
| ~ChSegmentationCamera ()
| camera class destructor
float | GetHFOV () const
| returns the camera's horizontal field of view.
CameraLensModelType | GetLensModelType () const
| returns the lens model type used for rendering
LensParams | GetLensParameters () const
| returns the lens model parameters
void | SetRadialLensParameters (ChVector3f params)
| Sets the parameters for a radial lens distortion model Parameters should be given for the forward model The backward distortion model will the used and calculated from the forward parameters given.
Public Member Functions inherited from chrono::sensor::ChOptixSensor
| ChOptixSensor (std::shared_ptr< chrono::ChBody > parent, float updateRate, chrono::ChFrame< double > offsetPose, unsigned int w, unsigned int h)
| Constructor for the base camera class that defaults to a pinhole lens model.
virtual | ~ChOptixSensor ()
| camera class destructor
PipelineType | GetPipelineType ()
unsigned int | GetWidth ()
unsigned int | GetHeight ()
CUstream | GetCudaStream ()
Public Member Functions inherited from chrono::sensor::ChSensor
| ChSensor (std::shared_ptr< chrono::ChBody > parent, float updateRate, chrono::ChFrame< double > offsetPose)
| Constructor for the base sensor class.
virtual | ~ChSensor ()
| Class destructor.
void | SetOffsetPose (chrono::ChFrame< double > pose)
| Set the sensor's relative position and orientation.
ChFrame< double > | GetOffsetPose ()
| Get the sensor's relative position and orientation.
std::shared_ptr< ChBody > | GetParent () const
| Get the object to which the sensor is attached.
void | SetName (std::string name)
| Set the sensor's name.
std::string | GetName () const
| Get the name of the sensor.
float | GetUpdateRate () const
| Get the sensor update rate (Hz).
void | SetLag (float t)
| Set the lag parameter.
float | GetLag () const
| Get the sensor lag (seconds).
void | SetCollectionWindow (float t)
| Set the collection window.
float | GetCollectionWindow () const
| Get the sensor data collection window (seconds).
void | SetUpdateRate (float updateRate)
| Set the sensor update rate (Hz).
unsigned int | GetNumLaunches ()
| Get the number of times the sensor has been updated.
void | IncrementNumLaunches ()
| Increments the count of number of updates.
std::list< std::shared_ptr< ChFilter > > | GetFilterList () const
| Get the sensor's list of filters.
void | PushFilter (std::shared_ptr< ChFilter > filter)
| Add a filter to the sensor.
void | PushFilterFront (std::shared_ptr< ChFilter > filter)
| Add a filter to the front of the list on a sensor.
void | LockFilterList ()
| Gives ability to lock the filter list to prevent race conditions.
template<class UserBufferType>
UserBufferType | GetMostRecentBuffer ()
| Get the last filter in the list that matches the template type.
template<>
CH_SENSOR_API UserR8BufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserRGBA8BufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserDepthBufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserDIBufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserXYZIBufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserRadarBufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserRadarXYZBufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserAccelBufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserGyroBufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserMagnetBufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserGPSBufferPtr | GetMostRecentBuffer ()
template<>
CH_SENSOR_API UserTachometerBufferPtr | GetMostRecentBuffer ()

## Additional Inherited Members
Protected Attributes inherited from chrono::sensor::ChOptixSensor
PipelineType | m_pipeline_type
| the type of pipeline for rendering
Protected Attributes inherited from chrono::sensor::ChSensor
float | m_updateRate
| sensor update rate
float | m_lag
| sensor lag from the time all scene information is available (sensor processing time)
float | m_collection_window
| time over which data is collected.
float | m_timeLastUpdated
| time since previous update
std::shared_ptr< chrono::ChBody > | m_parent
| object to which the sensor is attached
chrono::ChFrame< double > | m_offsetPose
| position and orientation of the sensor relative to its parent
std::string | m_name
| name of the sensor
unsigned int | m_num_launches
| number of times the sensor has been updated
std::list< std::shared_ptr< ChFilter > > | m_filters
| filter list for post-processing sensor data
bool | m_filter_list_locked = false
| gives ability to lock the filter list to prevent race conditions

## Constructor & Destructor Documentation

## ◆ ChSegmentationCamera()

CH_SENSOR_API chrono::sensor::ChSegmentationCamera::ChSegmentationCamera | ( | std::shared_ptr< chrono::ChBody > | parent,
|  | float | updateRate,
|  | chrono::ChFrame< double > | offsetPose,
|  | unsigned int | w,
|  | unsigned int | h,
|  | float | hFOV,
|  | CameraLensModelType | lens_model = CameraLensModelType::PINHOLE )

Constructor for a segmentation camera that defaults to a pinhole lens model.

Parameters

  parent | A shared pointer to a body on which the sensor should be attached.
  updateRate | The desired update rate of the sensor in Hz.
  offsetPose | The desired relative position and orientation of the sensor on the body.
  w | The width of the image the camera should generate.
  h | The height of the image the camera should generate.
  hFOV | The horizontal field of view of the camera lens.
  lens_model | A enum specifying the desired lens model.

## Member Function Documentation

## ◆ GetHFOV()

float chrono::sensor::ChSegmentationCamera::GetHFOV | ( |  | ) | const
| inline

returns the camera's horizontal field of view.

Vertical field of view is determined by the image aspect ratio and the lens model

Returns
  The horizontal field of view of the camera lens

## ◆ GetLensModelType()

CameraLensModelType chrono::sensor::ChSegmentationCamera::GetLensModelType | ( |  | ) | const
| inline

returns the lens model type used for rendering

Returns
  An enum specifying which lens model is being used. (0: PINHOLE, 1: SPHERICAL)

## ◆ GetLensParameters()

LensParams chrono::sensor::ChSegmentationCamera::GetLensParameters | ( |  | ) | const
| inline

returns the lens model parameters

Returns
  LensParams of lens parameters. Will default to zeros for any terms not used. These are coverted for the inverse model

## ◆ SetRadialLensParameters()

void chrono::sensor::ChSegmentationCamera::SetRadialLensParameters | ( | ChVector3f | params | ) |

Sets the parameters for a radial lens distortion model Parameters should be given for the forward model The backward distortion model will the used and calculated from the forward parameters given.

Parameters

  params | the set of 3 radial parameters (k1,k2,k3)

The documentation for this class was generated from the following files:

- D:/W/B/src/chrono-9.0.1/src/chrono_sensor/sensors/ChSegmentationCamera.h
- D:/W/B/src/chrono-9.0.1/src/chrono_sensor/sensors/ChSegmentationCamera.cpp