![]() |
VR-Vantage 3.0.3 API Documentation
|
class seGainLevel More...
Public Member Functions | |
| seGainLevel (seDetector *detector, seOptics *optics, seElectronics *electronics) | |
| constructor | |
| ~seGainLevel () | |
| destructor | |
| double | getRadianceGain () |
| Gets the gain based on the max/min radiance of the sensor. | |
| double | getRadianceLevel () |
| Gets the level based on the max/min radiance of the sensor. | |
| double | getLutGain () |
| Gets the gain based on the max/min radiance of the user defined LUT. | |
| double | getLutLevel () |
| Gets the level based on the max/min radiance of the user defined LUT. | |
| void | addGainLevel (float *inputImage, long width, long height) |
| Adds gain and level to the input image for cpu processing. | |
| void | getGainLevel (double &gain, double &level) |
| Gets the gain and level to scale an image from radiance to 0.0 to 1.0 for display. | |
| void | getFinalGainLevel (double &gain, double &level) |
| Gets the final gain and level to remove the gainScaleFactor and get the image to 0.0 to 1.0 for display. | |
| void | computeHistogram (float *image, long width, long height) |
| Computes the histogram of the given image and calculates the average for AC coupling and the Gain/Level for AGC. | |
| float * | getHistogramEqualizationMap (int &size, bool HPtype=true) |
| Returns the histogram equalizationMap for the current image frame. | |
| void | computeMaxAGC () |
| Computes the AGC of the given image setting the maximum radiance in the scene to 1.0 on the display and the average at 0.5. | |
| void | computeClippedAGC () |
| Computes the AGC of the given image attempting to maintain a certain percentage of the pixels clipped. | |
| double | getApertureGainAdjustment () |
| Computes the gain associated with a small aperture. | |
| double | StandardLuminousEfficacy (void) |
| Computes the luminous efficacy [lum/W] of the "standard" reference source. | |
| double | MCPGain (double InputRadiance, double ThreshRadiance, double g0, double g1, double E) |
| Computes the gain [unitless] of an image intensifier tube at given input radiance. | |
| double | MCPAGCSaturationRadiance (double ElementDimension_mm) |
| Computes the maximum output radiance of an image intensifier tube of a given size, when AGC is enabled. | |
Private Attributes | |
| seDetector * | m_detector |
| pointer to detector object | |
| seOptics * | m_optics |
| pointer to optics object | |
| seElectronics * | m_electronics |
| pointer to electronics object | |
| double | m_gainScaleFactor |
| scale factor between the data coming from the rendering engine and the sensor effects processing. | |
| double | m_gain |
| current gain setting | |
| double | m_level |
| current level setting | |
| double | m_average |
| current average image value | |
| double | m_stdev |
| current standard deviation image value | |
| double | m_maxValue |
| maximum value in the sampled image | |
| double | m_minValue |
| minimum value in the sampled image | |
| float * | m_lineAverage |
| average for each line in the sampled image | |
| int * | m_histogram |
| array holding the general histogram | |
| int * | m_logHistogram |
| array holding the histogram of the high values in a log based addressing. | |
| float * | m_histEqualizationMap |
| array holding the equalization map for histogram equalization technique. | |
| long | m_histogramSize |
| size of the histograms | |
| long | m_totalPixels |
| the total number of pixels in the down sampled image passed to computeHistogram. | |
class seGainLevel
Sensor Effects gain/level class. Holds the data related to the gain/level portion of a device.
| seGainLevel::seGainLevel | ( | seDetector * | detector, |
| seOptics * | optics, | ||
| seElectronics * | electronics | ||
| ) |
constructor
| *detector | |
| *optics | |
| *electronics |
| seGainLevel::~seGainLevel | ( | ) |
destructor
| double seGainLevel::getRadianceGain | ( | ) |
Gets the gain based on the max/min radiance of the sensor.
| double seGainLevel::getRadianceLevel | ( | ) |
Gets the level based on the max/min radiance of the sensor.
| double seGainLevel::getLutGain | ( | ) |
Gets the gain based on the max/min radiance of the user defined LUT.
| double seGainLevel::getLutLevel | ( | ) |
Gets the level based on the max/min radiance of the user defined LUT.
| void seGainLevel::addGainLevel | ( | float * | inputImage, |
| long | width, | ||
| long | height | ||
| ) |
Adds gain and level to the input image for cpu processing.
| *inputImage | - floating point array containing the input image that is modified by the gain and level. |
| width | |
| height |
| void seGainLevel::getGainLevel | ( | double & | gain, |
| double & | level | ||
| ) |
Gets the gain and level to scale an image from radiance to 0.0 to 1.0 for display.
| &gain | |
| &level |
| void seGainLevel::getFinalGainLevel | ( | double & | gain, |
| double & | level | ||
| ) |
Gets the final gain and level to remove the gainScaleFactor and get the image to 0.0 to 1.0 for display.
| &gain | |
| &level |
| void seGainLevel::computeHistogram | ( | float * | image, |
| long | width, | ||
| long | height | ||
| ) |
Computes the histogram of the given image and calculates the average for AC coupling and the Gain/Level for AGC.
Also computes the line averages if necessary.
| *image | |
| width | |
| height |
Returns the histogram equalizationMap for the current image frame.
| void seGainLevel::computeMaxAGC | ( | ) |
Computes the AGC of the given image setting the maximum radiance in the scene to 1.0 on the display and the average at 0.5.
| void seGainLevel::computeClippedAGC | ( | ) |
Computes the AGC of the given image attempting to maintain a certain percentage of the pixels clipped.
| double seGainLevel::getApertureGainAdjustment | ( | ) |
Computes the gain associated with a small aperture.
| double seGainLevel::StandardLuminousEfficacy | ( | void | ) |
Computes the luminous efficacy [lum/W] of the "standard" reference source.
| double seGainLevel::MCPGain | ( | double | InputRadiance, |
| double | ThreshRadiance, | ||
| double | g0, | ||
| double | g1, | ||
| double | E | ||
| ) |
Computes the gain [unitless] of an image intensifier tube at given input radiance.
| InputRadiance | - input radiance |
| ThreshRadiance | - Radiance above which saturation logic kicks in. |
| g0 | [unitless] - linear gain below threshold, generally higher than g1. |
| g1 | [unitless] - limiting (minimum) linear gain at very high input radiance (usually = 1). |
| E | [unitless] - Strength of saturation gain control (usually < 1 to retain monotonicity) |
| double seGainLevel::MCPAGCSaturationRadiance | ( | double | ElementDimension_mm | ) |
Computes the maximum output radiance of an image intensifier tube of a given size, when AGC is enabled.
| ElementDimension_mm | [mm] = Size of detector element on one side |
|
private |
pointer to detector object
|
private |
pointer to optics object
|
private |
pointer to electronics object
|
private |
scale factor between the data coming from the rendering engine and the sensor effects processing.
this keeps accuracy in the data outside the display range for adding noise and keeps transition to 1.0 away from displayed data.
|
private |
current gain setting
|
private |
current level setting
|
private |
current average image value
|
private |
current standard deviation image value
|
private |
maximum value in the sampled image
|
private |
minimum value in the sampled image
|
private |
average for each line in the sampled image
|
private |
array holding the general histogram
|
private |
array holding the histogram of the high values in a log based addressing.
|
private |
array holding the equalization map for histogram equalization technique.
|
private |
size of the histograms
|
private |
the total number of pixels in the down sampled image passed to computeHistogram.