IDS peak ICV v1.2.0
Loading...
Searching...
No Matches
HDR Class Reference

#include <peak_icv/algorithms/hdr/peak_icv_hdr.hpp>

Inheritance diagram for HDR:

Public Member Functions

 HDR ()
 Constructs an HDR processing object.
 
 ~HDR () override
 
HDRAlgorithm GetAlgorithm () const
 Returns the HDR algorithm used by this object.
 
void Calibrate (const std::vector< Image > &images) const
 Calibrates the HDR processing using a set of input images.
 
Image Process (const std::vector< Image > &image) const
 Generates an HDR image from the specified input images.
 

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 only in exposure.

Internally, the HDR reconstruction is performed using the Debevec algorithm, which is currently the only supported HDR algorithm. The algorithm is fixed at object creation time.

Typical usage consists of:

Limitations

  • All input images must be compatible (same resolution, pixel format, and scene).
  • At least one input image must be provided.
  • Only the Debevec HDR algorithm is currently supported.
Since
ids_peak_icv 1.2

Definition at line 78 of file peak_icv_hdr.hpp.

Constructor & Destructor Documentation

◆ HDR()

HDR ( )
inlineexplicit

Constructs an HDR processing object.

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

Since
ids_peak_icv 1.2

Definition at line 161 of file peak_icv_hdr.hpp.

◆ ~HDR()

~HDR ( )
inlineoverride

Definition at line 168 of file peak_icv_hdr.hpp.

Member Function Documentation

◆ Calibrate()

void Calibrate ( const std::vector< Image > & images) const
inline

Calibrates the HDR processing using a set of input images.

Performs an optional calibration step based on the provided images. The images are expected to represent the same scene captured with different exposure settings.

This step estimates the camera response characteristics used during HDR reconstruction. Calibration can be performed prior to the HDR processing step to reduce processing time.

If calibration is omitted, it is performed automatically during the first call to Process, which may increase the overall HDR processing time.

Parameters
[in]imagesVector of input images used for HDR calibration. Must not be empty.
Since
ids_peak_icv 1.2

Definition at line 192 of file peak_icv_hdr.hpp.

◆ GetAlgorithm()

HDRAlgorithm GetAlgorithm ( ) const
inline

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.

Returns
The HDR algorithm identifier.
Since
ids_peak_icv 1.2

Definition at line 176 of file peak_icv_hdr.hpp.

◆ Process()

Image Process ( const std::vector< Image > & image) const
inline

Generates an HDR image from the specified input images.

Processes the provided images and combines them into a single HDR image using the HDR algorithm associated with this object (currently only the Debevec algorithm is supported).

The input images must represent the same scene captured with different exposure settings and must be compatible with the HDR configuration. All input images must contain exposure time metadata (peak::common::MetadataKey::DeviceExposureTime).

If the HDR object has not been calibrated explicitly using Calibrate, an internal calibration step is performed automatically during processing. This implicit calibration estimates the camera response characteristics and may increase the overall processing time.

Parameters
[in]imageVector of input images used for HDR reconstruction. Must not be empty.
Returns
The resulting HDR image.
Since
ids_peak_icv 1.2

Definition at line 209 of file peak_icv_hdr.hpp.