chrono::sensor::ChCameraSensor Class Reference
Description
Camera class.
#include <ChCameraSensor.h>
Inheritance diagram for chrono::sensor::ChCameraSensor:
Collaboration diagram for chrono::sensor::ChCameraSensor:
Public Member Functions | |
ChCameraSensor (std::shared_ptr< chrono::ChBody > parent, float updateRate, chrono::ChFrame< double > offsetPose, unsigned int w, unsigned int h, float hFOV, unsigned int supersample_factor=1, CameraLensModelType lens_model=CameraLensModelType::PINHOLE, bool use_gi=false, float gamma=2.2) | |
Constructor for the base camera class that defaults to a pinhole lens model. More... | |
~ChCameraSensor () | |
camera class destructor | |
float | GetHFOV () const |
returns the camera's horizontal field of view. More... | |
CameraLensModelType | GetLensModelType () const |
returns the lens model type used for rendering More... | |
bool | GetUseGI () |
returns if the cemera requesting global illumination More... | |
float | GetGamma () |
returns the gamma correction value of this camera. More... | |
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. More... | |
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. More... | |
virtual | ~ChSensor () |
Class destructor. | |
void | SetOffsetPose (chrono::ChFrame< double > pose) |
Set the sensor's relative position and orientation. More... | |
ChFrame< double > | GetOffsetPose () |
Get the sensor's relative position and orientation. More... | |
std::shared_ptr< ChBody > | GetParent () const |
Get the object to which the sensor is attached. More... | |
void | SetName (std::string name) |
Set the sensor's name. More... | |
std::string | GetName () const |
Get the name of the sensor. More... | |
float | GetUpdateRate () const |
Get the sensor update rate (Hz) More... | |
void | SetLag (float t) |
Set the lag parameter. More... | |
float | GetLag () const |
Get the sensor lag (seconds) More... | |
void | SetCollectionWindow (float t) |
Set the collection window. More... | |
float | GetCollectionWindow () const |
Get the sensor data collection window (seconds) More... | |
void | SetUpdateRate (float updateRate) |
Set the sensor update rate (Hz) More... | |
unsigned int | GetNumLaunches () |
Get the number of times the sensor has been updated. More... | |
void | IncrementNumLaunches () |
Increments the count of number of updates. | |
std::list< std::shared_ptr< ChFilter > > | GetFilterList () const |
Get the sensor's list of filters. More... | |
void | PushFilter (std::shared_ptr< ChFilter > filter) |
Add a filter to the sensor. More... | |
void | PushFilterFront (std::shared_ptr< ChFilter > filter) |
Add a filter to the front of the list on a sensor. More... | |
void | LockFilterList () |
Gives ability to lock the filter list to prevent race conditions. More... | |
template<class UserBufferType > | |
UserBufferType | GetMostRecentBuffer () |
Get the last filter in the list that matches the template type. More... | |
template<> | |
CH_SENSOR_API UserR8BufferPtr | GetMostRecentBuffer () |
template<> | |
CH_SENSOR_API UserRGBA8BufferPtr | 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. More... | |
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
◆ ChCameraSensor()
CH_SENSOR_API chrono::sensor::ChCameraSensor::ChCameraSensor | ( | std::shared_ptr< chrono::ChBody > | parent, |
float | updateRate, | ||
chrono::ChFrame< double > | offsetPose, | ||
unsigned int | w, | ||
unsigned int | h, | ||
float | hFOV, | ||
unsigned int | supersample_factor = 1 , |
||
CameraLensModelType | lens_model = CameraLensModelType::PINHOLE , |
||
bool | use_gi = false , |
||
float | gamma = 2.2 |
||
) |
Constructor for the base camera class 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. supersample_factor The number of rays that should be sampled per pixel for antialiasing. lens_model A enum specifying the desired lens model. use_gi Enable the global illumination, with significant decrease in performace gamma correction of the image, 1 for linear color space, 2.2 for sRGB
Member Function Documentation
◆ GetGamma()
|
inline |
returns the gamma correction value of this camera.
1 means no correction and the image is in linear color space. Useful for other ML applications 2.2 means the image is in sRGB color space. Useful for display
- Returns
- Gamma value of the image
◆ GetHFOV()
|
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()
|
inline |
returns the lens model type used for rendering
- Returns
- An enum specifying which lens model is being used. (0: PINHOLE, 1: SPHERICAL)
◆ GetUseGI()
|
inline |
returns if the cemera requesting global illumination
- Returns
- True if it does request
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_sensor/sensors/ChCameraSensor.h
- /builds/uwsbel/chrono/src/chrono_sensor/sensors/ChCameraSensor.cpp