Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes
rsimpl::auto_exposure_algorithm Class Reference

#include <zr300.h>

List of all members.

Classes

struct  histogram_metric

Public Member Functions

bool analyze_image (const rs_frame_ref *image)
 auto_exposure_algorithm (fisheye_auto_exposure_state auto_exposure_state)
void modify_exposure (float &exposure_value, bool &exp_modified, float &gain_value, bool &gain_modified)
void update_options (const fisheye_auto_exposure_state &options)

Private Types

enum  rounding_mode_type { round, ceil, floor }

Private Member Functions

void anti_flicker_decrease_exposure_gain (const float &target_exposure, const float &target_exposure0, float &exposure, float &gain)
void anti_flicker_increase_exposure_gain (const float &target_exposure, const float &target_exposure0, float &exposure, float &gain)
void decrease_exposure_gain (const float &target_exposure, const float &target_exposure0, float &exposure, float &gain)
void decrease_exposure_target (float mult, float &target_exposure)
float exposure_to_value (float exp_ms, rounding_mode_type rounding_mode)
float gain_to_value (float gain, rounding_mode_type rounding_mode)
void histogram_score (std::vector< int > &h, const int total_weight, histogram_metric &score)
void hybrid_decrease_exposure_gain (const float &target_exposure, const float &target_exposure0, float &exposure, float &gain)
void hybrid_increase_exposure_gain (const float &target_exposure, const float &target_exposure0, float &exposure, float &gain)
void im_hist (const uint8_t *data, const int width, const int height, const int rowStep, int h[])
void increase_exposure_gain (const float &target_exposure, const float &target_exposure0, float &exposure, float &gain)
void increase_exposure_target (float mult, float &target_exposure)
float round (float x)
template<typename T >
sqr (const T &x)
void static_decrease_exposure_gain (const float &target_exposure, const float &target_exposure0, float &exposure, float &gain)
void static_increase_exposure_gain (const float &target_exposure, const float &target_exposure0, float &exposure, float &gain)

Private Attributes

bool anti_flicker_mode = true
float base_gain = 2.0f
int direction = 0
float eps = 0.01f
float exposure = 10.0f
float exposure_step = 0.1f
float flicker_cycle
float gain = 2.0f
float gain_limit = 15.0f
float hysteresis = 0.075f
float maximal_exposure = 20.f
float minimal_exposure = 0.1f
float minimal_exposure_step = 0.01f
uint8_t over_exposure_limit = 250
int over_exposure_noise_limit = 50
int prev_direction = 0
fisheye_auto_exposure_state state
std::recursive_mutex state_mutex
float target_exposure = 0.0f
uint8_t under_exposure_limit = 5
int under_exposure_noise_limit = 50

Detailed Description

Definition at line 206 of file zr300.h.


Member Enumeration Documentation

Enumerator:
round 
ceil 
floor 

Definition at line 215 of file zr300.h.


Constructor & Destructor Documentation

Definition at line 815 of file zr300.cpp.


Member Function Documentation

Definition at line 867 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::anti_flicker_decrease_exposure_gain ( const float &  target_exposure,
const float &  target_exposure0,
float &  exposure,
float &  gain 
) [private]

Definition at line 1000 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::anti_flicker_increase_exposure_gain ( const float &  target_exposure,
const float &  target_exposure0,
float &  exposure,
float &  gain 
) [private]

Definition at line 974 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::decrease_exposure_gain ( const float &  target_exposure,
const float &  target_exposure0,
float &  exposure,
float &  gain 
) [private]

Definition at line 953 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::decrease_exposure_target ( float  mult,
float &  target_exposure 
) [private]

Definition at line 937 of file zr300.cpp.

float rsimpl::auto_exposure_algorithm::exposure_to_value ( float  exp_ms,
rounding_mode_type  rounding_mode 
) [private]

Definition at line 1065 of file zr300.cpp.

float rsimpl::auto_exposure_algorithm::gain_to_value ( float  gain,
rounding_mode_type  rounding_mode 
) [private]

Definition at line 1076 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::histogram_score ( std::vector< int > &  h,
const int  total_weight,
histogram_metric score 
) [private]

Definition at line 1089 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::hybrid_decrease_exposure_gain ( const float &  target_exposure,
const float &  target_exposure0,
float &  exposure,
float &  gain 
) [private]

Definition at line 1043 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::hybrid_increase_exposure_gain ( const float &  target_exposure,
const float &  target_exposure0,
float &  exposure,
float &  gain 
) [private]

Definition at line 1025 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::im_hist ( const uint8_t *  data,
const int  width,
const int  height,
const int  rowStep,
int  h[] 
) [inline, private]

Definition at line 923 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::increase_exposure_gain ( const float &  target_exposure,
const float &  target_exposure0,
float &  exposure,
float &  gain 
) [private]

Definition at line 942 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::increase_exposure_target ( float  mult,
float &  target_exposure 
) [private]

Definition at line 932 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::modify_exposure ( float &  exposure_value,
bool &  exp_modified,
float &  gain_value,
bool &  gain_modified 
)

Definition at line 820 of file zr300.cpp.

float rsimpl::auto_exposure_algorithm::round ( float  x) [inline, private]

Definition at line 232 of file zr300.h.

template<typename T >
T rsimpl::auto_exposure_algorithm::sqr ( const T &  x) [inline, private]

Definition at line 237 of file zr300.h.

void rsimpl::auto_exposure_algorithm::static_decrease_exposure_gain ( const float &  target_exposure,
const float &  target_exposure0,
float &  exposure,
float &  gain 
) [private]

Definition at line 969 of file zr300.cpp.

void rsimpl::auto_exposure_algorithm::static_increase_exposure_gain ( const float &  target_exposure,
const float &  target_exposure0,
float &  exposure,
float &  gain 
) [private]

Definition at line 964 of file zr300.cpp.

Definition at line 915 of file zr300.cpp.


Member Data Documentation

Definition at line 246 of file zr300.h.

Definition at line 241 of file zr300.h.

Definition at line 244 of file zr300.h.

float rsimpl::auto_exposure_algorithm::eps = 0.01f [private]

Definition at line 245 of file zr300.h.

Definition at line 242 of file zr300.h.

Definition at line 245 of file zr300.h.

Definition at line 246 of file zr300.h.

float rsimpl::auto_exposure_algorithm::gain = 2.0f [private]

Definition at line 242 of file zr300.h.

Definition at line 241 of file zr300.h.

Definition at line 244 of file zr300.h.

Definition at line 241 of file zr300.h.

Definition at line 241 of file zr300.h.

Definition at line 245 of file zr300.h.

Definition at line 243 of file zr300.h.

Definition at line 243 of file zr300.h.

Definition at line 244 of file zr300.h.

Definition at line 246 of file zr300.h.

std::recursive_mutex rsimpl::auto_exposure_algorithm::state_mutex [private]

Definition at line 247 of file zr300.h.

Definition at line 242 of file zr300.h.

Definition at line 243 of file zr300.h.

Definition at line 243 of file zr300.h.


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


librealsense
Author(s): Sergey Dorodnicov , Mark Horn , Reagan Lopez
autogenerated on Tue Jun 25 2019 19:54:41