AutoexposureSettings

Define how to apply autoexposure, i.e. how to compute the current image intensity and when/how to apply the new exposure time.

Member Variables

polygon

std::vector< cv::Point >, default: \{\{50, 50\}, \{1230, 50\}, \{1230, 910\}, \{50, 910\}\} JSON Type: array +Requirement: The array must contain tuples of integers (i.e. arrays of two integers). Contains image coordinate pairs that describe the polygon-shaped ROI used for autoexposure computation.

referenceIntensity

int, default: {60} JSON Type: integer +Requirement: The value must be inside (0, 255). Reference intensity value. The current intensity of an image captured by the camera ideally matches the value.

maxRetryTimeout_ms

size_t, default: {800} within this time, auto-exposure software trigger will retry to get better exposure time for Mono8 lumiscanX takes 170~200ms, so it might retry 2-4 times;

referenceIntensityTolerance

uint8_t, default: {5} If target autoexposrue reference value after capture is within referenceIntensity+-targetTolerance, then auto exposure will stop early, instead of keeping retry until timeout.

allowedIntensityUpperBound

uint8_t, default: {255} This is the upper bound for the allowed intensity. JSON Type: integer +Requirement: The value must be inside (0, 255). and must be larger than allowedIntensityLowerBound and larger than referenceIntensity After image capture, autoexposure will test whether new image’s value is close to reference value If value is larger than this value, then it will consider as invalid autoexposure, camera will try to capture again

allowedIntensityLowerBound

uint8_t, default: {0} This is the lower bound for the allowed intensity. JSON Type: integer +Requirement: The value must be inside (0, 255). and must be smaller than allowedIntensityUpperBound and referenceIntensity After image capture, autoexposure will test whether new image’s value is close to reference value If value is smaller than this value, then it will consider as invalid autoexposure, camera will try to capture again

intensityMeasurementAlgorithm

IntensityMeasurementAlgorithm, default: \{IntensityMeasurementAlgorithm::Mean\} JSON Type: string +Requirement: The value must be selected from following set: \{Mean, Median\} Defines which method is used for determining the reference intensity.

lowerExposureTimeLimit_us

int, default: {500} JSON Type: integer +Requirement: The value must be higher/equal than 500us and lower than upperExposureTimeLimit_us. Lower boundary of calculated autoexposure time.

upperExposureTimeLimit_us

int, default: {1500000} JSON Type: integer +Requirement: The value must be lower/equal than 1500000us and higher than lowerExposureTimeLimit_us. Upper boundary of calculate autoexposure time.

Enumerations

Table 1. IntensityMeasurementAlgorithm
Value Description

Mean

Median