chrono::sensor::ChFilterPhysCameraDefocusBlur Class Reference

Description

A filter that adjust the brightness of the image according to exposure time and sensitivity coefficients.

#include <ChFilterPhysCameraDefocusBlur.h>

Inheritance diagram for chrono::sensor::ChFilterPhysCameraDefocusBlur:
Collaboration diagram for chrono::sensor::ChFilterPhysCameraDefocusBlur:

Public Member Functions

 ChFilterPhysCameraDefocusBlur (float focal_length, float focus_dist, float aperture_num, float pixel_size, float defocus_gain, float defocus_bias, std::string name="Defocus Blur Filter in Phys Camera")
 Class constructor. More...
 
virtual void Apply ()
 Apply function.
 
void SetFilterCtrlParameters (float focal_length, float focus_dist, float aperture_num)
 Set control parameters in the filter function. More...
 
void SetFilterModelParameters (float pixel_size, float defocus_gain, float defocus_bias)
 Set model parameters in the filter function. More...
 
virtual void Initialize (std::shared_ptr< ChSensor > pSensor, std::shared_ptr< SensorBuffer > &bufferInOut)
 Initializes all data needed by the filter access apply function. More...
 
- Public Member Functions inherited from chrono::sensor::ChFilter
virtual ~ChFilter ()
 Virtual class destructor.
 
std::string & Name ()
 Accesses the name of the filter. More...
 

Additional Inherited Members

- Protected Member Functions inherited from chrono::sensor::ChFilter
 ChFilter (std::string name)
 protected constructor for the filter which requires a name as input. More...
 
void InvalidFilterGraphNullBuffer (std::shared_ptr< ChSensor > pSensor)
 Error function for invalid filter graph: null buffer found.
 
void InvalidFilterGraphBufferTypeMismatch (std::shared_ptr< ChSensor > pSensor)
 Error function for invalid filter graph: type mismatch in graph.
 
void InvalidFilterGraphSensorTypeMismatch (std::shared_ptr< ChSensor > pSensor)
 Error function for invalid filter graph: type mismatch in graph.
 

Constructor & Destructor Documentation

◆ ChFilterPhysCameraDefocusBlur()

chrono::sensor::ChFilterPhysCameraDefocusBlur::ChFilterPhysCameraDefocusBlur ( float  focal_length,
float  focus_dist,
float  aperture_num,
float  pixel_size,
float  defocus_gain,
float  defocus_bias,
std::string  name = "Defocus Blur Filter in Phys Camera" 
)

Class constructor.

Parameters
focal_length(f) focal length
focus_dist(U) focus distance
aperture_num(N) F-number (or aperture number) = focal_length / aperture_diameter
pixel_size(C) length of a pixel
defocus_gainproportional gain
defocus_bias[px], defocus-blur diameter bias
nameThe string name of the filter

Member Function Documentation

◆ Initialize()

CH_SENSOR_API void chrono::sensor::ChFilterPhysCameraDefocusBlur::Initialize ( std::shared_ptr< ChSensor pSensor,
std::shared_ptr< SensorBuffer > &  bufferInOut 
)
virtual

Initializes all data needed by the filter access apply function.

Parameters
pSensorA pointer to the sensor on which the filter is attached.
bufferInOutA buffer that is passed into the filter. This data is what will be made available for the user.

Implements chrono::sensor::ChFilter.

◆ SetFilterCtrlParameters()

CH_SENSOR_API void chrono::sensor::ChFilterPhysCameraDefocusBlur::SetFilterCtrlParameters ( float  focal_length,
float  focus_dist,
float  aperture_num 
)

Set control parameters in the filter function.

Parameters
focal_length(f) focal length
focus_dist(U) focus distance
aperture_num(N) F-number (or aperture number) = focal_length / aperture_diameter

◆ SetFilterModelParameters()

CH_SENSOR_API void chrono::sensor::ChFilterPhysCameraDefocusBlur::SetFilterModelParameters ( float  pixel_size,
float  defocus_gain,
float  defocus_bias 
)

Set model parameters in the filter function.

Parameters
pixel_size(C) length of a pixel
defocus_gain(defocus_gain) proportional gain
defocus_bias[px], (defocus_bias) bias

The documentation for this class was generated from the following files:
  • /builds/uwsbel/chrono/src/chrono_sensor/filters/ChFilterPhysCameraDefocusBlur.h
  • /builds/uwsbel/chrono/src/chrono_sensor/filters/ChFilterPhysCameraDefocusBlur.cpp