VR-Vantage 3.1 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Private Attributes
seDetector Class Reference

class: seDetector More...

Public Types

enum  ScanDirectionType {
  InvalidScanDirection = -1, ScanDirectionNone = 0, HorizontalScanDirection = 1, VerticalScanDirection = 2,
  FullImageScan = 3, NumScanDirection = 4
}
 ScanDirectionType. More...
enum  AntiBloomingType { ANTI_BLOOMING_NONE, ANTI_BLOOMING_HORIZONTAL, ANTI_BLOOMING_VERTICAL, ANTI_BLOOMING_NUM }
 AntiBloomingType. More...

Public Member Functions

 seDetector ()
 constructor
 ~seDetector ()
 destructor
void loadDefaults ()
 sets all the member data to default values.
void setBandpass (const double ax, const double bx)
 sets the bandpass of the detector
void getBandpass (double &ax, double &bx) const
 gets the bandpass of the detector
void setNumDetectors (const long width, const long height)
 sets the number of detectors of the sensor
void getNumDetectors (long &width, long &height) const
 gets the number of detectors of the sensor
void setPitchDetectors (const double pitchHorz, const double pitchVert)
 sets the size of detectors of the sensor (mm)
void getPitchDetectors (double &pitchHorz, double &pitchVert) const
 gets the size of detectors of the sensor (mm)
void setSampleSize (const double Horz, const double Vert)
 sets the size of samples of the sensor (mm).
void getSampleSize (double &Horz, double &Vert) const
 gets the size of the samples of the sensor (mm)
void setDwellTime (const double dwellTime)
 sets the dwell time of the detectors (usec)
double getDwellTime () const
 gets the dwell time of the detectors (usec)
void setJitterAmplitude (const double amplitudeX, const double amplitudeY)
 sets the amplitude of the platform jitter in x and y of FPA.
void getJitterAmplitude (double &jitterAmplitudeX, double &jitterAmplitudeY) const
 returns the amplitude of the platform jitter in x and y of the FPA The amplitude is in units of mm.
void setJitterFrequency (const double jitterfrequencyX, const double jitterfrequencyY)
 sets the frequency of the platform jitter in x and y of FPA The frequency is in units of Hertz
void getJitterFrequency (double &jitterFrequencyX, double &jitterFrequencyY) const
 returns the frequency of the platform jitter in x and y of the FPA The frequency is in units of Hertz
void setNoiseFrequencyKnee (const double freqKnee)
 sets the noise frequency knee 1/f point the detectors (hz)
void setPoissonNoisePercent (double percent)
double getPoissonNoisePercent () const
void setFInverseNoisePercent (double percent)
double getFInverseNoisePercent () const
double getNoiseFrequencyKnee () const
 gets the noise frequency knee 1/f point the detectors (hz)
void setNoiseFrequencyExp (const double freqExp)
 sets the noise frequency exponent 1/f point the detectors (hz)
double getNoiseFrequencyExp () const
 gets the noise frequency exponent 1/f point the detectors (hz)
void setNoiseEquivalentTemp (const double temp)
 sets the noise equivalent temperature of the detectors
double getNoiseEquivalentTemp () const
 gets the noise equivalent temperature of the detectors (degK)
void setBackgroundTemp (const double temp)
 sets the sensor's system temperature (degK)
double getBackgroundTemp () const
 gets the sensor's system temperature (degK)
double getBackgroundRadiance () const
 gets the sensor's system radiance (W/cm2/sr)
void setFixedPatternNoisePercent (double temp)
 sets the percent of the overall noise that is fixed pattern noise(FPN)
double getFixedPatternNoisePercent () const
 gets the percent of the overall noise that is fixed pattern noise(FPN)
void setNoiseEquivalentRadiance (double temp)
 sets the noise equivalent temperature of the detectors
double getNoiseEquivalentRadiance () const
 gets the noise equivalent radiance of the detectors for visual bands
void setPercentPixelFill (double temp)
 sets the percent pixel fill - 100 to remove it's affect below 100% causes the image to be more blurry
double getPercentPixelFill () const
 gets the percent pixel fill
void setPercentPixelFill (double fillHorz, double fillVert)
 sets the horizontal and vertical percent pixel fill < 0 to internally determine.
void getPercentPixelFill (double &fillHorz, double &fillVert) const
 gets the percent pixel fill for horizontal and vertical directions
void setPercentDeadPixel (double temp)
 sets the percent of the overall pixels that are dead
double getPercentDeadPixel () const
 gets the percent of the overall pixels that are dead
void setNoiseEnable (const bool flag)
 sets the noise enable flag
bool isFullColorEnable () const
 gets the Full Color Enable flag.
void setFullColorEnable (const bool flag)
 sets the Full Color Enable flag
void getChannelSelects (float &redSelect, float &greenSelect, float &blueSelect) const
 gets the channel select values for determining which input channels are used.
void setChannelSelects (float redSelect, float greenSelect, float blueSelect)
 sets the channel select values for determining which input channels are used.
bool isScanningSensorEnable () const
 gets the Scanning Sensor Enable flag.
void setScanningSensorEnable (const bool flag)
 sets the Scanning Sensor Enable flag
bool getNonUniformityEnable () const
 gets the non uniformity Enable flag.
void setNonUniformityEnable (const bool flag)
 sets the non uniformity Enable flag
void setScanMaskFilename (char *scanMaskFileName)
 set the file name for the scan mask image - each pixel in image is a gain applied in the final pass
char * getScanMaskFilename ()
 get the file name for the scan mask image
void setScanMaskGainFilename (char *scanMaskFileName)
 set the file name for the scan mask image - each pixel in image is a gain applied in the final pass
char * getScanMaskGainFilename ()
 get the file name for the scan mask image
void setScanMaskLevelFilename (char *scanMaskFileName)
 set the file name for the scan mask image - each pixel in image is a level applied in the final pass
char * getScanMaskLevelFilename ()
 get the file name for the scan mask image
void setScanMask (float minGain, float maxGain, ScanDirectionType scanDirection, int lineSpacing=1, float minLevel=0.0, float maxLevel=0.0)
 setup Scan Mask with scan direction, scan line spacing, etc to fill the texture with the appropriate gain for each pixel on the screen
float getScanMaskMaxGain () const
 gets the maximum gain desired for the scan mask for the scanning sensor
void setScanMaskMaxGain (float val)
 sets the maximum gain desired for the scan mask for the scanning sensor
float getScanMaskMinGain () const
 gets the minimum gain desired for the scan mask for the scanning sensor
void setScanMaskMinGain (float val)
 sets the minimum gain desired for the scan mask for the scanning sensor
float getScanMaskMaxLevel () const
 gets the maximum level desired for the scan mask for the scanning sensor
void setScanMaskMaxLevel (float val)
 sets the maximum Level desired for the scan mask for the scanning sensor
float getScanMaskMinLevel () const
 gets the minimum gain desired for the scan mask for the scanning sensor
void setScanMaskMinLevel (float val)
 sets the minimum Level desired for the scan mask for the scanning sensor
ScanDirectionType getScanMaskDirection () const
 gets the scan direction desired for the scan mask for the scanning sensor
void setScanMaskDirection (ScanDirectionType val)
 sets the scan direction desired for the scan mask for the scanning sensor
int getScanMaskLineSpacing () const
 gets the line spacing desired for the scan mask for the scanning sensor
void setScanMaskLineSpacing (int val)
 sets the line spacing desired for the scan mask for the scanning sensor
void setScanMaskLevelAdjustment (double adjustment)
 sets the adjustment that is multiplied by the scan mask level value.
double getScanMaskLevelAdjustment () const
 gets the adjustment that is multiplied by the scan mask level value.
bool getScanMaskUserDefined () const
 return whether user defined is set.
void setScanMaskUserDefined (bool userDefined)
 Set the new user defined parameter.
float * getUserDefinedNonUniformityGainData () const
 return the user defined non uniformity data to be applied
void setUserDefinedNonUniformityGainData (float *data)
 set the user defined non uniformity data to be applied
float * getUserDefinedNonUniformityLevelData () const
 return the user defined non uniformity data to be applied
void setUserDefinedNonUniformityLevelData (float *data)
 set the user defined non uniformity data to be applied
bool isNoiseEnable () const
 gets the noise enable flag.
void setNoiseAdjustment (double adjustment)
 sets the adjustment that is multiplied by the calculated noise intensity.
double getNoiseAdjustment () const
 getNoiseAdjustment
void setMotionBlurEnable (const bool flag)
 sets the motion blur enable flag
bool isMotionBlurEnable () const
 gets the motion blur enable flag.
void setMotionBlurWeight (double weight)
 sets the weight of the blur.
double getMotionBlurWeight () const
 gets the weight of the motion blur.
void setWeightThreshold (double threshold)
 sets the threshold used to determine which weights are significant enough to use.
double getWeightThreshold () const
 gets the threshold used to determine which weights are significant enough to use.
double getChargeWellCapacity () const
 gets the saturation threshold number of charges in a pixel well
void setChargeWellCapacity (double threshold)
 sets the saturation threshold number of charges in a pixel well
double getQuantumEfficiency () const
 gets the efficiency for converting photons to electrons in the well
void setQuantumEfficiency (double efficiency)
 sets the efficiency for converting photons to electrons in the well
AntiBloomingType getAntiBloomingType () const
 gets the direction in which anti blooming is applied.
void setAntiBloomingType (AntiBloomingType antibloomDirection)
 sets the direction in which anti blooming is applied.
void getMaterialWavelengthCutOnCutOff (double &cuton, double &cutoff) const
 gets the cuton and cutoff wavelengths for the response of the material in [um]
void setMaterialWavelengthCutOnCutOff (double cuton, double cutoff)
 sets the cuton and cutoff wavelength for the response of the material in [um]
double getMicroChannelPlateDistance () const
 gets the distance between the MCP and the photocathode (PC) in [cm]
void setMicroChannelPlateDistance (double distance)
 sets the distance between the MCP and the photocathode (PC) in [um]
double getPhotoCathodeVoltage () const
 gets the applied voltage across the PhotoCathode and Micro channel plate
void setPhotoCathodeVoltage (double voltage)
 sets the applied voltage across the PhotoCathode and Micro channel plate
double getReadoutNoiseNumElectron () const
 gets the number of electrons for the readout noise
void setReadoutNoiseNumElectron (double electrons)
 sets the number of electrons for the readout noise
double getWellCapacityPercentage () const
 gets the percentage of the well capacity for a desired gain
void setWellCapacityPercentage (double percentage)
 sets the percentage of the well capacity for a desired gain
bool get3DNoiseEnable () const
 gets the state on whether 3D noise is enabled or not
void set3DNoiseEnable (bool enable)
 sets the state on whether 3D noise is enabled or not
float get3DNoiseSigmaH () const
 gets the horizontal STD for 3D noise
void set3DNoiseSigmaH (float STD)
 sets the horizontal STD for 3D noise
float get3DNoiseSigmaV () const
 gets the vertical STD for 3D noise
void set3DNoiseSigmaV (float STD)
 sets the vertical STD for 3D noise
float get3DNoiseSigmaVH () const
 gets the horizontal vertical STD for 3D noise
void set3DNoiseSigmaVH (float STD)
 sets the horizontal vertical STD for 3D noise
float get3DNoiseSigmaT () const
 gets the temporal STD for 3D noise
void set3DNoiseSigmaT (float STD)
 sets the temporal STD for 3D noise
float get3DNoiseSigmaTH () const
 gets the temporal horizontal STD for 3D noise
void set3DNoiseSigmaTH (float STD)
 sets the temporal horizontal STD for 3D noise
float get3DNoiseSigmaTV () const
 gets the temporal vertical STD for 3D noise
void set3DNoiseSigmaTV (float STD)
 sets the temporal vertical STD for 3D noise
float get3DNoiseSigmaTVH () const
 gets the temporal vertical horizontal STD for 3D noise
void set3DNoiseSigmaTVH (float STD)
 sets the temporal vertical horizontal STD for 3D noise
void computeVariables (double focalLen, double horzFOV, double vertFOV, double frameRate)
 computes internal detector specific variables for usage later
void getDetectorAngularSubtense (double &DASHorz, double &DASVert) const
 gets the horizontal and vertical detector angular subtense for the detector
void getNyquistSamplingFrequency (double &nyquistHorz, double &nyquistVert) const
 gets the horizontal and vertical detector angular subtense for the detector
double getScanVelocity () const
 gets the scan velocity for the detector
bool isDirty () const
 Specifies whether the seDetector has been changed.
void setDirty ()
 Specify whether the seDetector has been changed.
void clrDirty ()
 Clear the flag indicating that seDetector has been changed.
bool isScanMaskDirty () const
 Specifies whether the scan mask parameters have been changed.
void setScanMaskDirty ()
 Specify whether the scan mask parameters have been changed.
void clrScanMaskDirty ()
 Clear the flag indicating that the scan mask parameters have been changed.

Private Attributes

double m_ax
 starting wavelength (um)
double m_bx
 ending wavelength (um)
long m_detectorWidth
 number of horizontal detectors
long m_detectorHeight
 number of vertical detectors
double m_horizontalPitch
 horizontal pitch of each detectors (mm)
double m_verticalPitch
 horizontal pitch of each detectors (mm)
double m_horizontalSampleSize
 Horizontal sample size on detector (mm)
double m_verticalSampleSize
 Vertical sample size on detector (mm)
double m_dwellTime
 dwell time of a detector (us)
double m_scanVelocity
 detector scan velocity (mrad/sec)
double m_DASHorz
 horizontal detector anglular subtense (mrad)
double m_DASVert
 vertical detector angular subtense (mrad)
double m_nyquistHorz
 nyquist frequency in the horizontal direction (cyc/mrad)
double m_nyquistVert
 nyquist frequency in the vertical direction (cyc/mrad)
double m_noiseFrequencyKnee
 noise frequency knee 1/f point the detectors (hz)
double m_noiseFrequencyExp
 noise frequency exponent 1/f point the detectors (hz)
double m_noiseEquivalentTemp
 temperature delta of the noise (degK)
double m_BackgroundTemp
 background temperature (degK)
double m_BackgroundRadiance
 background radiance (W/cm2/sr)
double m_percentFixedNoise
 percent of the overall noise that is fixed pattern noise
double m_noiseEquivRadiance
 radiance delta of the noise (uW/cm2/sr)
double m_electronReadoutNoise
 number of electrons for readout noise
double m_percentPixelFill
 percent of the pixel that is covered by the detector
double m_percentHorzPixelFill
 horizontal percent of the pixel that is covered by the detector
double m_percentVertPixelFill
 vertical percent of the pixel that is covered by the detector
double m_percentDeadPixel
 percent of the pixels that are broken and provide no output
double m_percentPoisson
 percent of the overall noise that is Poisson noise
double m_percentFInverse
 percent of the overall noise that is F-Inverse noise
bool m_noiseEnable
 noise enable flag
double m_noiseAdjustment
 adjustment multiplied by the noise gain
double m_weightThreshold
 threshold used to determine which weights are significant enough to use
double m_jitterAmplitudeX
 amplitude of platform jitter in x direction of FPA
double m_jitterAmplitudeY
 amplitude of platform jitter in y direction of FPA
double m_jitterFrequencyX
 frequency of platform jitter in x direction of FPA
double m_jitterFrequencyY
 frequency of platform jitter in x direction of FPA
bool m_motionBlurEnable
 motion blur enable flag
double m_motionBlurWeight
 motion blur weight to adjust the amount of motion blur
bool m_FullColorEnable
 set as full color input for 3 color EO sensors.
float m_redSelect
 the red channel select value for determining how much of the red channel is used.
float m_greenSelect
 the green channel select value for determining how much of the red channel is used.
float m_blueSelect
 the blue channel select value for determining how much of the red channel is used.
bool m_scanningSensorEnable
 set as scanning sensor and cause scanning streaks in image.
bool m_nonUniformityEnable
 set the non uniformity enabled
char m_scanMaskGainFileName [255]
char m_scanMaskLevelFileName [255]
 A single channel *.bmp for per channel level.
ScanDirectionType m_scanMaskDirection
 the scan mask direction setting.
float m_scanMaskMinGain
 the scan mask direction setting.
float m_scanMaskMaxGain
 the scan mask direction setting.
float m_scanMaskMinLevel
 the scan mask direction setting.
float m_scanMaskMaxLevel
 the scan mask direction setting.
int m_scanMaskLineSpacing
 the scan mask direction setting.
bool m_scanMaskDirty
 dirty flag for scan mask
double m_scanMaskLevelAdjustment
 controls the amount of the level mask to apply - 1.0 full effect, 0.0 no effect.
bool m_scanMaskUserDefined
 New parameter to select a user defined scan mask, works same as before if set to false.
float * m_userDefinedNonUniformityGain
 Per pixel Gain Data to be applied.
float * m_userDefinedNonUniformityLevel
 Per pixel Level Data to be applied.
double m_chargeWellCapacity
 charge well count for each detector pixel
double m_quantumEfficiency
 efficiency of the well converting photons to electrons for processing
AntiBloomingType m_antiBloomDirection
 anti bloom directionality
double m_wavelengthCutOn
 cuton wavelength for the material
double m_wavelengthCutOff
 cutoff wavelength for the material
double m_microChannelPlateDistance
 distance between the MCP and the PC (photocathode) for PMT type detectors
double m_photoCathodeVoltage
 voltage from photocathode to the micro channel plate
double m_wellCapacityPercentage
 desired percentage of the well capacity of sensor
bool m_enable3DNoise
 enable 3D noise feature
float m_3DNoiseSigmaH
 horizontal STD for 3D noise
float m_3DNoiseSigmaV
 horizontal STD for 3D noise
float m_3DNoiseSigmaVH
 horizontal and vertical STD for 3D noise
float m_3DNoiseSigmaT
 temporal STD for 3D noise
float m_3DNoiseSigmaTH
 temporal horizontal STD for 3D noise
float m_3DNoiseSigmaTV
 temporal vertical STD for 3D noise
float m_3DNoiseSigmaTVH
 temporal vertical horizontal STD for 3D noise
bool m_dirty
 dirty flag for detector object

Detailed Description

class: seDetector

Sensor Effects detector class. Holds the data related to the device's detectors.

Member Enumeration Documentation

ScanDirectionType.

Specifies the type of scan direction for the scan mask feature

Enumerator:
InvalidScanDirection 
ScanDirectionNone 
HorizontalScanDirection 
VerticalScanDirection 
FullImageScan 
NumScanDirection 

AntiBloomingType.

Specifies the anti blooming method

Enumerator:
ANTI_BLOOMING_NONE 
ANTI_BLOOMING_HORIZONTAL 
ANTI_BLOOMING_VERTICAL 
ANTI_BLOOMING_NUM 

Constructor & Destructor Documentation

seDetector::seDetector ( )

constructor

seDetector::~seDetector ( )

destructor

Member Function Documentation

void seDetector::loadDefaults ( )

sets all the member data to default values.

void seDetector::setBandpass ( const double  ax,
const double  bx 
)

sets the bandpass of the detector

Parameters
ax- start wavelength
bx- end wavelength
void seDetector::getBandpass ( double &  ax,
double &  bx 
) const
inline

gets the bandpass of the detector

Parameters
ax- lower wavelength
bx- upper wavelength
void seDetector::setNumDetectors ( const long  width,
const long  height 
)
inline

sets the number of detectors of the sensor

Parameters
width- number of horizontal detectors
height- number of vertical detectors
void seDetector::getNumDetectors ( long &  width,
long &  height 
) const
inline

gets the number of detectors of the sensor

Parameters
width- number of horizontal detectors
height- number of vertical detectors

Referenced by seGpuProcessor::getResolutionRatio().

void seDetector::setPitchDetectors ( const double  pitchHorz,
const double  pitchVert 
)
inline

sets the size of detectors of the sensor (mm)

Parameters
pitchHorz- horizontal pitch of detector
pitchVert- vertical pitch of detector
void seDetector::getPitchDetectors ( double &  pitchHorz,
double &  pitchVert 
) const
inline

gets the size of detectors of the sensor (mm)

Parameters
pitchHorz- horizontal pitch of detector
pitchVert- vertical pitch of detector
void seDetector::setSampleSize ( const double  Horz,
const double  Vert 
)

sets the size of samples of the sensor (mm).

Allows support for sparse detector arrays where sampling does not equal pixel pitch

Parameters
Horz- horizontal sample size of detector
Vert- vertical pitch of detector
void seDetector::getSampleSize ( double &  Horz,
double &  Vert 
) const
inline

gets the size of the samples of the sensor (mm)

Parameters
hHorz- horizontal sample size of detector
pitchVert- vertical sample size of detector
void seDetector::setDwellTime ( const double  dwellTime)
inline

sets the dwell time of the detectors (usec)

Parameters
dwellTime
double seDetector::getDwellTime ( ) const
inline

gets the dwell time of the detectors (usec)

Returns
double
void seDetector::setJitterAmplitude ( const double  amplitudeX,
const double  amplitudeY 
)
inline

sets the amplitude of the platform jitter in x and y of FPA.

The amplitude is in units of mm

Parameters
amplitudeX
amplitudeY
void seDetector::getJitterAmplitude ( double &  jitterAmplitudeX,
double &  jitterAmplitudeY 
) const
inline

returns the amplitude of the platform jitter in x and y of the FPA The amplitude is in units of mm.

Returns
double
void seDetector::setJitterFrequency ( const double  jitterfrequencyX,
const double  jitterfrequencyY 
)
inline

sets the frequency of the platform jitter in x and y of FPA The frequency is in units of Hertz

Parameters
frequencyX
frequencyY
void seDetector::getJitterFrequency ( double &  jitterFrequencyX,
double &  jitterFrequencyY 
) const
inline

returns the frequency of the platform jitter in x and y of the FPA The frequency is in units of Hertz

Returns
double
void seDetector::setNoiseFrequencyKnee ( const double  freqKnee)
inline

sets the noise frequency knee 1/f point the detectors (hz)

Parameters
freqKnee
void seDetector::setPoissonNoisePercent ( double  percent)
inline
Parameters
percent
double seDetector::getPoissonNoisePercent ( ) const
inline
Returns
double
void seDetector::setFInverseNoisePercent ( double  percent)
inline
Parameters
percent
double seDetector::getFInverseNoisePercent ( ) const
inline
Returns
double
double seDetector::getNoiseFrequencyKnee ( ) const
inline

gets the noise frequency knee 1/f point the detectors (hz)

Returns
double
void seDetector::setNoiseFrequencyExp ( const double  freqExp)
inline

sets the noise frequency exponent 1/f point the detectors (hz)

Parameters
freqExp
double seDetector::getNoiseFrequencyExp ( ) const
inline

gets the noise frequency exponent 1/f point the detectors (hz)

Returns
double
void seDetector::setNoiseEquivalentTemp ( const double  temp)
inline

sets the noise equivalent temperature of the detectors

Parameters
temp
double seDetector::getNoiseEquivalentTemp ( ) const
inline

gets the noise equivalent temperature of the detectors (degK)

Returns
double
void seDetector::setBackgroundTemp ( const double  temp)

sets the sensor's system temperature (degK)

Parameters
temp
double seDetector::getBackgroundTemp ( ) const
inline

gets the sensor's system temperature (degK)

Returns
double
double seDetector::getBackgroundRadiance ( ) const
inline

gets the sensor's system radiance (W/cm2/sr)

Returns
double
void seDetector::setFixedPatternNoisePercent ( double  temp)
inline

sets the percent of the overall noise that is fixed pattern noise(FPN)

Parameters
temp
double seDetector::getFixedPatternNoisePercent ( ) const
inline

gets the percent of the overall noise that is fixed pattern noise(FPN)

Returns
double
void seDetector::setNoiseEquivalentRadiance ( double  temp)
inline

sets the noise equivalent temperature of the detectors

Parameters
temp
double seDetector::getNoiseEquivalentRadiance ( ) const
inline

gets the noise equivalent radiance of the detectors for visual bands

Returns
double
void seDetector::setPercentPixelFill ( double  temp)
inline

sets the percent pixel fill - 100 to remove it's affect below 100% causes the image to be more blurry

Parameters
temp
double seDetector::getPercentPixelFill ( ) const
inline

gets the percent pixel fill

Returns
double
void seDetector::setPercentPixelFill ( double  fillHorz,
double  fillVert 
)

sets the horizontal and vertical percent pixel fill < 0 to internally determine.

Set between 0 - 100 to explicitly control.

Parameters
temp
void seDetector::getPercentPixelFill ( double &  fillHorz,
double &  fillVert 
) const
inline

gets the percent pixel fill for horizontal and vertical directions

void seDetector::setPercentDeadPixel ( double  temp)
inline

sets the percent of the overall pixels that are dead

Parameters
temp
double seDetector::getPercentDeadPixel ( ) const
inline

gets the percent of the overall pixels that are dead

Returns
double
void seDetector::setNoiseEnable ( const bool  flag)
inline

sets the noise enable flag

Parameters
flag
bool seDetector::isFullColorEnable ( ) const
inline

gets the Full Color Enable flag.

Returns
bool
void seDetector::setFullColorEnable ( const bool  flag)
inline

sets the Full Color Enable flag

Parameters
flag
void seDetector::getChannelSelects ( float &  redSelect,
float &  greenSelect,
float &  blueSelect 
) const
inline

gets the channel select values for determining which input channels are used.

Each value is multiplied by the appropriate channel and the sum is passed thru the rest of the processing.

Parameters
redSelect- select value for the red channel
greenSelect- select value for the red channel
blueSelect- select value for the red channel
void seDetector::setChannelSelects ( float  redSelect,
float  greenSelect,
float  blueSelect 
)
inline

sets the channel select values for determining which input channels are used.

Each value is multiplied by the appropriate channel and the sum is passed thru the rest of the processing.

Parameters
redSelect- select value for the red channel
greenSelect- select value for the red channel
blueSelect- select value for the red channel
bool seDetector::isScanningSensorEnable ( ) const
inline

gets the Scanning Sensor Enable flag.

Returns
bool
void seDetector::setScanningSensorEnable ( const bool  flag)
inline

sets the Scanning Sensor Enable flag

Parameters
flag
bool seDetector::getNonUniformityEnable ( ) const
inline

gets the non uniformity Enable flag.

Returns
bool
void seDetector::setNonUniformityEnable ( const bool  flag)
inline

sets the non uniformity Enable flag

Parameters
flag
void seDetector::setScanMaskFilename ( char *  scanMaskFileName)
inline

set the file name for the scan mask image - each pixel in image is a gain applied in the final pass

Parameters
scanMaskFileName
char* seDetector::getScanMaskFilename ( )
inline

get the file name for the scan mask image

Returns
char *scanMaskFileName
void seDetector::setScanMaskGainFilename ( char *  scanMaskFileName)

set the file name for the scan mask image - each pixel in image is a gain applied in the final pass

Parameters
scanMaskFileName
char* seDetector::getScanMaskGainFilename ( )

get the file name for the scan mask image

Returns
char *scanMaskFileName
void seDetector::setScanMaskLevelFilename ( char *  scanMaskFileName)

set the file name for the scan mask image - each pixel in image is a level applied in the final pass

Parameters
scanMaskFileName
char* seDetector::getScanMaskLevelFilename ( )

get the file name for the scan mask image

Returns
char *scanMaskLevelFileName
void seDetector::setScanMask ( float  minGain,
float  maxGain,
ScanDirectionType  scanDirection,
int  lineSpacing = 1,
float  minLevel = 0.0,
float  maxLevel = 0.0 
)

setup Scan Mask with scan direction, scan line spacing, etc to fill the texture with the appropriate gain for each pixel on the screen

Parameters
minGain
maxGain
scanDirection
lineSpacing
minLevel
maxLevel
float seDetector::getScanMaskMaxGain ( ) const
inline

gets the maximum gain desired for the scan mask for the scanning sensor

Returns
maxGain
void seDetector::setScanMaskMaxGain ( float  val)

sets the maximum gain desired for the scan mask for the scanning sensor

Parameters
val
float seDetector::getScanMaskMinGain ( ) const
inline

gets the minimum gain desired for the scan mask for the scanning sensor

Returns
minGain
void seDetector::setScanMaskMinGain ( float  val)

sets the minimum gain desired for the scan mask for the scanning sensor

Parameters
val
float seDetector::getScanMaskMaxLevel ( ) const
inline

gets the maximum level desired for the scan mask for the scanning sensor

Returns
maxLevel
void seDetector::setScanMaskMaxLevel ( float  val)

sets the maximum Level desired for the scan mask for the scanning sensor

Parameters
val
float seDetector::getScanMaskMinLevel ( ) const
inline

gets the minimum gain desired for the scan mask for the scanning sensor

Returns
minLevel
void seDetector::setScanMaskMinLevel ( float  val)

sets the minimum Level desired for the scan mask for the scanning sensor

Parameters
val
ScanDirectionType seDetector::getScanMaskDirection ( ) const
inline

gets the scan direction desired for the scan mask for the scanning sensor

Returns
ScanDirectionType scan direction
void seDetector::setScanMaskDirection ( ScanDirectionType  val)

sets the scan direction desired for the scan mask for the scanning sensor

Parameters
val
int seDetector::getScanMaskLineSpacing ( ) const
inline

gets the line spacing desired for the scan mask for the scanning sensor

Returns
float line spacing
void seDetector::setScanMaskLineSpacing ( int  val)

sets the line spacing desired for the scan mask for the scanning sensor

Parameters
val
void seDetector::setScanMaskLevelAdjustment ( double  adjustment)
inline

sets the adjustment that is multiplied by the scan mask level value.

This can be used as an adjustment knob/slider for real-time control of the effect.

Parameters
adjustment- 0.0 to 1.0
double seDetector::getScanMaskLevelAdjustment ( ) const
inline

gets the adjustment that is multiplied by the scan mask level value.

This can be used as an adjustment knob/slider for real-time control of the effect.

Returns
adjustment from 0.0 to 1.0
bool seDetector::getScanMaskUserDefined ( ) const

return whether user defined is set.

New parameter. False means it works the same as before it was added.

void seDetector::setScanMaskUserDefined ( bool  userDefined)

Set the new user defined parameter.

If not set, use the files if they exist, if they don't exist: use scanDirection.

float* seDetector::getUserDefinedNonUniformityGainData ( ) const

return the user defined non uniformity data to be applied

void seDetector::setUserDefinedNonUniformityGainData ( float *  data)

set the user defined non uniformity data to be applied

float* seDetector::getUserDefinedNonUniformityLevelData ( ) const

return the user defined non uniformity data to be applied

void seDetector::setUserDefinedNonUniformityLevelData ( float *  data)

set the user defined non uniformity data to be applied

bool seDetector::isNoiseEnable ( ) const
inline

gets the noise enable flag.

Returns
bool
void seDetector::setNoiseAdjustment ( double  adjustment)
inline

sets the adjustment that is multiplied by the calculated noise intensity.

This can be used as an adjustment knob/slider.

Parameters
adjustment- 0.0 to 1.0
double seDetector::getNoiseAdjustment ( ) const
inline

getNoiseAdjustment

gets the adjustment that is multiplied by the calculated noise intensity. This can be used as an adjustment knob/slider.

Returns
adjustment from 0.0 to 1.0
void seDetector::setMotionBlurEnable ( const bool  flag)
inline

sets the motion blur enable flag

Parameters
flag
bool seDetector::isMotionBlurEnable ( ) const
inline

gets the motion blur enable flag.

Returns
bool
void seDetector::setMotionBlurWeight ( double  weight)
inline

sets the weight of the blur.

Parameters
weight- 0.0 to 1.0
double seDetector::getMotionBlurWeight ( ) const
inline

gets the weight of the motion blur.

Returns
weight from 0.0 to 1.0
void seDetector::setWeightThreshold ( double  threshold)
inline

sets the threshold used to determine which weights are significant enough to use.

The lower this is set the more a hot/bright area will bloom, but performance will drop.

Parameters
threshold
double seDetector::getWeightThreshold ( ) const
inline

gets the threshold used to determine which weights are significant enough to use.

Returns
double
double seDetector::getChargeWellCapacity ( ) const
inline

gets the saturation threshold number of charges in a pixel well

Returns
double
void seDetector::setChargeWellCapacity ( double  threshold)
inline

sets the saturation threshold number of charges in a pixel well

Parameters
threshold
double seDetector::getQuantumEfficiency ( ) const
inline

gets the efficiency for converting photons to electrons in the well

Returns
double
void seDetector::setQuantumEfficiency ( double  efficiency)
inline

sets the efficiency for converting photons to electrons in the well

Parameters
efficiency
AntiBloomingType seDetector::getAntiBloomingType ( ) const
inline

gets the direction in which anti blooming is applied.

0 for no antibloom, 1 for vertical, 2 for horizontal

Returns
AntiBloomingType
void seDetector::setAntiBloomingType ( AntiBloomingType  antibloomDirection)
inline

sets the direction in which anti blooming is applied.

0 for no antibloom, 1 for vertical, 2 for horizontal

Parameters
antibloomDirection
void seDetector::getMaterialWavelengthCutOnCutOff ( double &  cuton,
double &  cutoff 
) const
inline

gets the cuton and cutoff wavelengths for the response of the material in [um]

void seDetector::setMaterialWavelengthCutOnCutOff ( double  cuton,
double  cutoff 
)
inline

sets the cuton and cutoff wavelength for the response of the material in [um]

Parameters
cutonand cutoff wavelengths [um]
double seDetector::getMicroChannelPlateDistance ( ) const
inline

gets the distance between the MCP and the photocathode (PC) in [cm]

Returns
double MCP to PC distance [cm]
void seDetector::setMicroChannelPlateDistance ( double  distance)
inline

sets the distance between the MCP and the photocathode (PC) in [um]

Parameters
distancein [um]
double seDetector::getPhotoCathodeVoltage ( ) const
inline

gets the applied voltage across the PhotoCathode and Micro channel plate

Returns
double voltage
void seDetector::setPhotoCathodeVoltage ( double  voltage)
inline

sets the applied voltage across the PhotoCathode and Micro channel plate

Parameters
voltage
double seDetector::getReadoutNoiseNumElectron ( ) const
inline

gets the number of electrons for the readout noise

Returns
double numberElectrons
void seDetector::setReadoutNoiseNumElectron ( double  electrons)
inline

sets the number of electrons for the readout noise

Parameters
electrons
double seDetector::getWellCapacityPercentage ( ) const
inline

gets the percentage of the well capacity for a desired gain

Returns
double percentage
void seDetector::setWellCapacityPercentage ( double  percentage)

sets the percentage of the well capacity for a desired gain

Parameters
percentage
bool seDetector::get3DNoiseEnable ( ) const
inline

gets the state on whether 3D noise is enabled or not

Returns
bool enable
void seDetector::set3DNoiseEnable ( bool  enable)
inline

sets the state on whether 3D noise is enabled or not

Parameters
enable
float seDetector::get3DNoiseSigmaH ( ) const
inline

gets the horizontal STD for 3D noise

Returns
double horizontal STD
void seDetector::set3DNoiseSigmaH ( float  STD)
inline

sets the horizontal STD for 3D noise

Parameters
horizontalSTD
float seDetector::get3DNoiseSigmaV ( ) const
inline

gets the vertical STD for 3D noise

Returns
double vertical STD
void seDetector::set3DNoiseSigmaV ( float  STD)
inline

sets the vertical STD for 3D noise

Parameters
verticalSTD
float seDetector::get3DNoiseSigmaVH ( ) const
inline

gets the horizontal vertical STD for 3D noise

Returns
double horizontal vertical STD
void seDetector::set3DNoiseSigmaVH ( float  STD)
inline

sets the horizontal vertical STD for 3D noise

Parameters
horizontalvertical STD
float seDetector::get3DNoiseSigmaT ( ) const
inline

gets the temporal STD for 3D noise

Returns
double temporal STD
void seDetector::set3DNoiseSigmaT ( float  STD)
inline

sets the temporal STD for 3D noise

Parameters
temporalSTD
float seDetector::get3DNoiseSigmaTH ( ) const
inline

gets the temporal horizontal STD for 3D noise

Returns
double temporal horizontal STD
void seDetector::set3DNoiseSigmaTH ( float  STD)
inline

sets the temporal horizontal STD for 3D noise

Parameters
temporalhorizontal STD
float seDetector::get3DNoiseSigmaTV ( ) const
inline

gets the temporal vertical STD for 3D noise

Returns
double temporal vertical STD
void seDetector::set3DNoiseSigmaTV ( float  STD)
inline

sets the temporal vertical STD for 3D noise

Parameters
temporalvertical STD
float seDetector::get3DNoiseSigmaTVH ( ) const
inline

gets the temporal vertical horizontal STD for 3D noise

Returns
double temporal vertical horizontal STD
void seDetector::set3DNoiseSigmaTVH ( float  STD)
inline

sets the temporal vertical horizontal STD for 3D noise

Parameters
temporalvertical horizontal STD
void seDetector::computeVariables ( double  focalLen,
double  horzFOV,
double  vertFOV,
double  frameRate 
)

computes internal detector specific variables for usage later

void seDetector::getDetectorAngularSubtense ( double &  DASHorz,
double &  DASVert 
) const
inline

gets the horizontal and vertical detector angular subtense for the detector

void seDetector::getNyquistSamplingFrequency ( double &  nyquistHorz,
double &  nyquistVert 
) const
inline

gets the horizontal and vertical detector angular subtense for the detector

double seDetector::getScanVelocity ( ) const
inline

gets the scan velocity for the detector

Returns
double
bool seDetector::isDirty ( ) const
inline

Specifies whether the seDetector has been changed.

Returns
bool
void seDetector::setDirty ( )
inline

Specify whether the seDetector has been changed.

void seDetector::clrDirty ( )
inline

Clear the flag indicating that seDetector has been changed.

bool seDetector::isScanMaskDirty ( ) const
inline

Specifies whether the scan mask parameters have been changed.

Returns
bool
void seDetector::setScanMaskDirty ( )
inline

Specify whether the scan mask parameters have been changed.

void seDetector::clrScanMaskDirty ( )
inline

Clear the flag indicating that the scan mask parameters have been changed.

Member Data Documentation

double seDetector::m_ax
private

starting wavelength (um)

double seDetector::m_bx
private

ending wavelength (um)

long seDetector::m_detectorWidth
private

number of horizontal detectors

long seDetector::m_detectorHeight
private

number of vertical detectors

double seDetector::m_horizontalPitch
private

horizontal pitch of each detectors (mm)

double seDetector::m_verticalPitch
private

horizontal pitch of each detectors (mm)

double seDetector::m_horizontalSampleSize
private

Horizontal sample size on detector (mm)

double seDetector::m_verticalSampleSize
private

Vertical sample size on detector (mm)

double seDetector::m_dwellTime
private

dwell time of a detector (us)

double seDetector::m_scanVelocity
private

detector scan velocity (mrad/sec)

double seDetector::m_DASHorz
private

horizontal detector anglular subtense (mrad)

double seDetector::m_DASVert
private

vertical detector angular subtense (mrad)

double seDetector::m_nyquistHorz
private

nyquist frequency in the horizontal direction (cyc/mrad)

double seDetector::m_nyquistVert
private

nyquist frequency in the vertical direction (cyc/mrad)

double seDetector::m_noiseFrequencyKnee
private

noise frequency knee 1/f point the detectors (hz)

double seDetector::m_noiseFrequencyExp
private

noise frequency exponent 1/f point the detectors (hz)

double seDetector::m_noiseEquivalentTemp
private

temperature delta of the noise (degK)

double seDetector::m_BackgroundTemp
private

background temperature (degK)

double seDetector::m_BackgroundRadiance
private

background radiance (W/cm2/sr)

double seDetector::m_percentFixedNoise
private

percent of the overall noise that is fixed pattern noise

double seDetector::m_noiseEquivRadiance
private

radiance delta of the noise (uW/cm2/sr)

double seDetector::m_electronReadoutNoise
private

number of electrons for readout noise

double seDetector::m_percentPixelFill
private

percent of the pixel that is covered by the detector

double seDetector::m_percentHorzPixelFill
private

horizontal percent of the pixel that is covered by the detector

double seDetector::m_percentVertPixelFill
private

vertical percent of the pixel that is covered by the detector

double seDetector::m_percentDeadPixel
private

percent of the pixels that are broken and provide no output

double seDetector::m_percentPoisson
private

percent of the overall noise that is Poisson noise

double seDetector::m_percentFInverse
private

percent of the overall noise that is F-Inverse noise

bool seDetector::m_noiseEnable
private

noise enable flag

double seDetector::m_noiseAdjustment
private

adjustment multiplied by the noise gain

double seDetector::m_weightThreshold
private

threshold used to determine which weights are significant enough to use

double seDetector::m_jitterAmplitudeX
private

amplitude of platform jitter in x direction of FPA

double seDetector::m_jitterAmplitudeY
private

amplitude of platform jitter in y direction of FPA

double seDetector::m_jitterFrequencyX
private

frequency of platform jitter in x direction of FPA

double seDetector::m_jitterFrequencyY
private

frequency of platform jitter in x direction of FPA

bool seDetector::m_motionBlurEnable
private

motion blur enable flag

double seDetector::m_motionBlurWeight
private

motion blur weight to adjust the amount of motion blur

bool seDetector::m_FullColorEnable
private

set as full color input for 3 color EO sensors.

float seDetector::m_redSelect
private

the red channel select value for determining how much of the red channel is used.

float seDetector::m_greenSelect
private

the green channel select value for determining how much of the red channel is used.

float seDetector::m_blueSelect
private

the blue channel select value for determining how much of the red channel is used.

bool seDetector::m_scanningSensorEnable
private

set as scanning sensor and cause scanning streaks in image.

bool seDetector::m_nonUniformityEnable
private

set the non uniformity enabled

char seDetector::m_scanMaskGainFileName[255]
private
char seDetector::m_scanMaskLevelFileName[255]
private

A single channel *.bmp for per channel level.

ScanDirectionType seDetector::m_scanMaskDirection
private

the scan mask direction setting.

float seDetector::m_scanMaskMinGain
private

the scan mask direction setting.

float seDetector::m_scanMaskMaxGain
private

the scan mask direction setting.

float seDetector::m_scanMaskMinLevel
private

the scan mask direction setting.

float seDetector::m_scanMaskMaxLevel
private

the scan mask direction setting.

int seDetector::m_scanMaskLineSpacing
private

the scan mask direction setting.

bool seDetector::m_scanMaskDirty
private

dirty flag for scan mask

double seDetector::m_scanMaskLevelAdjustment
private

controls the amount of the level mask to apply - 1.0 full effect, 0.0 no effect.

bool seDetector::m_scanMaskUserDefined
private

New parameter to select a user defined scan mask, works same as before if set to false.

float* seDetector::m_userDefinedNonUniformityGain
private

Per pixel Gain Data to be applied.

float* seDetector::m_userDefinedNonUniformityLevel
private

Per pixel Level Data to be applied.

double seDetector::m_chargeWellCapacity
private

charge well count for each detector pixel

double seDetector::m_quantumEfficiency
private

efficiency of the well converting photons to electrons for processing

AntiBloomingType seDetector::m_antiBloomDirection
private

anti bloom directionality

double seDetector::m_wavelengthCutOn
private

cuton wavelength for the material

double seDetector::m_wavelengthCutOff
private

cutoff wavelength for the material

double seDetector::m_microChannelPlateDistance
private

distance between the MCP and the PC (photocathode) for PMT type detectors

double seDetector::m_photoCathodeVoltage
private

voltage from photocathode to the micro channel plate

double seDetector::m_wellCapacityPercentage
private

desired percentage of the well capacity of sensor

bool seDetector::m_enable3DNoise
private

enable 3D noise feature

float seDetector::m_3DNoiseSigmaH
private

horizontal STD for 3D noise

float seDetector::m_3DNoiseSigmaV
private

horizontal STD for 3D noise

float seDetector::m_3DNoiseSigmaVH
private

horizontal and vertical STD for 3D noise

float seDetector::m_3DNoiseSigmaT
private

temporal STD for 3D noise

float seDetector::m_3DNoiseSigmaTH
private

temporal horizontal STD for 3D noise

float seDetector::m_3DNoiseSigmaTV
private

temporal vertical STD for 3D noise

float seDetector::m_3DNoiseSigmaTVH
private

temporal vertical horizontal STD for 3D noise

bool seDetector::m_dirty
private

dirty flag for detector object


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


Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)