IDS peak ICV v1.4.0
Loading...
Searching...
No Matches
Hdr Class Reference
Inheritance diagram for Hdr:

Data Structures

class  Handle
 

Public Member Functions

 Hdr ()
 Constructs an HDR processing object.
 
void Dispose ()
 Releases all resources.
 
void EstimateResponseCurve (IEnumerable< Image > images)
 Estimates the Camera Response Curve (CRC) from a set of input images.
 
Image Process (IEnumerable< Image > images)
 Generates an HDR image from the specified input images.
 

Properties

HdrAlgorithm Algorithm [get]
 Returns the HDR algorithm used by this object.
 
ResponseCurve ResponseCurve [get, set]
 

Detailed Description

Performs High Dynamic Range (HDR) image reconstruction.

This class provides functionality to generate a High Dynamic Range (HDR) image from a set of input images captured with different exposure settings. The input images are expected to depict the same scene while varying exactly one parameter: either the exposure time OR the gain.

Internally, the HDR reconstruction is performed using the Debevec algorithm. A key part of this process is determining the Camera Response Curve (CRC), which maps digital pixel values to relative radiance. The algorithm is fixed at construction time.

Typical usage:

Note
All input images must have the same resolution, the same pixel format and be captured from an identical viewpoint of the same scene without any change in camera position or scene content. Any mismatch may lead to invalid HDR reconstruction results.

Limitations:

  • All input images must be compatible (same resolution, pixel format, and scene).
  • At least two input images must be provided.
  • Only the Debevec HDR algorithm is currently supported.
Since
IDSImaging.Peak.ICV 1.3

Constructor & Destructor Documentation

◆ Hdr()

Hdr ( )
inline

Constructs an HDR processing object.

Creates and initializes an HDR object using the default HDR reconstruction algorithm (Debevec).

Since
IDSImaging.Peak.ICV 1.3

Member Function Documentation

◆ Dispose()

void Dispose ( )
inline

Releases all resources.

Since
IDSImaging.Peak.ICV 1.3

◆ EstimateResponseCurve()

void EstimateResponseCurve ( IEnumerable< Image > images)
inline

Estimates the Camera Response Curve (CRC) from a set of input images.

This method calculates the response characteristics of the camera sensor. The CRC defines the relationship between scene radiance and the measured pixel values.

All input images must meet the following conditions:

  • Represent the same scene.
  • Be compatible in size and pixel format.
  • Contain valid metadata for either exposure time or gain, and the values for the chosen parameter must vary across the given images (e.g., DeviceExposureTime or DeviceGain).

Performing this estimation step explicitly can significantly reduce the processing time of subsequent calls to Process, as the curve does not need to be re-calculated.

If this method is not called, the response curve is estimated automatically during the first call to Process.

Supported pixel formats
  • Mono8
  • RGB8

See the Pixel and Pixel Format Specifications for a detailed description of the pixel formats.

Parameters
imagesImages of the same scene with different exposure time or gain metadata. Must not be empty.
Exceptions
ArgumentNullExceptionimages is null.
IcvNotPossibleExceptionThe class is already disposed.
Since
IDSImaging.Peak.ICV 1.3

◆ Process()

Image Process ( IEnumerable< Image > images)
inline

Generates an HDR image from the specified input images.

Processes the provided images and combines them into a single HDR image.

If a pixel is under- or overexposed across all input images this pixel is clamped to the HDR image's global minimum or maximum values, respectively. All clamped pixels are excluded from the image region.

All input images must meet the following conditions:

  • Represent the same scene.
  • Be compatible in size and pixel format.
  • Contain valid metadata for either exposure time or gain, and the values for the chosen parameter must vary across the given images (e.g., DeviceExposureTime or DeviceGain).

If the camera response curve has not been explicitly estimated using EstimateResponseCurve, an internal estimation step is performed automatically wenn this is first called. This may increase the overall processing time for the first call.

Supported pixel formats
  • Mono8
  • RGB8

See the Pixel and Pixel Format Specifications for a detailed description of the pixel formats.

Parameters
imagesImages of the same scene with different exposure time or gain metadata. Must not be empty.
Returns
The resulting HDR image with pixel format Mono32f resp. RGB32f.
Exceptions
IcvNullPointerExceptionThe given image enumerable is null or empty.
IcvNotPossibleExceptionThe class is already disposed.
Since
IDSImaging.Peak.ICV 1.3

Property Documentation

◆ Algorithm

HdrAlgorithm Algorithm
get

Returns the HDR algorithm used by this object.

The algorithm is defined at construction time and determines how the input images are combined during HDR reconstruction.

Since
IDSImaging.Peak.ICV 1.3

◆ ResponseCurve

Exceptions
IcvNotPossibleExceptionNo response curve is currently set. Use the setter of this property or EstimateResponseCurve to set a response curve first.
Since
IDSImaging.Peak.ICV 1.4