14#include <peak_icv_c/algorithms/hdr/peak_icv_hdr.h>
173 PEAK_COMMON_NO_DISCARD
Image Process(
const std::vector<Image>& images)
const;
176 friend peak::common::detail::BackendAccessor<HDR>;
180 peak_icv_hdr_handle m_handle{};
186 return PEAK_ICV_C_ABI_PREFIX peak_icv_HDR_Create(&m_handle);
192 if (m_handle !=
nullptr)
194 std::ignore = PEAK_ICV_C_ABI_PREFIX peak_icv_HDR_Destroy(m_handle);
200 peak_icv_hdr_algorithm algorithm;
203 return PEAK_ICV_C_ABI_PREFIX peak_icv_HDR_GetAlgorithm(m_handle, &algorithm);
216 if (images.size() == 0)
221 std::vector<peak_icv_image_handle> imageHandles;
222 imageHandles.reserve(images.size());
223 std::transform(images.begin(), images.end(), std::back_inserter(imageHandles), [](
const auto& image) {
224 return peak::common::detail::BackendAccessor<Image>::BackendHandle(image);
228 return PEAK_ICV_C_ABI_PREFIX peak_icv_HDR_EstimateResponseCurve(m_handle, imageHandles.data(), imageHandles.size());
239 std::vector<peak_icv_image_handle> imageHandles;
240 imageHandles.reserve(images.size());
241 std::transform(images.begin(), images.end(), std::back_inserter(imageHandles), [](
const peak::icv::Image& image) {
242 return peak::common::detail::BackendAccessor<Image>::BackendHandle(image);
245 peak_common_pixel_format outputPixelFormat;
247 return PEAK_ICV_C_ABI_PREFIX peak_icv_HDR_Process_GetOutputPixelFormat(
252 auto*
const outputImageHandle = peak::common::detail::BackendAccessor<Image>::BackendHandle(outputImage);
255 return PEAK_ICV_C_ABI_PREFIX peak_icv_HDR_Process(m_handle, imageHandles.data(), imageHandles.size(), outputImageHandle);
For detailed information about the use of ids_peak_icv Image refer to the Image Guide.
Occurs when an operation cannot be performed due to logical constraints (e.g., camera calibration wit...
Performs High Dynamic Range (HDR) image reconstruction.
HDR()
Constructs an HDR processing object.
void EstimateResponseCurve(const std::vector< Image > &images) const
Estimates the Camera Response Curve (CRC) from a set of input images.
HDRAlgorithm GetAlgorithm() const
Returns the HDR algorithm used by this object.
Image Process(const std::vector< Image > &images) const
Generates an HDR image from the specified input images.
HDRAlgorithm
Specifies the HDR reconstruction algorithm.
@ Debevec
Debevec HDR reconstruction algorithm.
constexpr peak_common_pixel_format CppPixelFormatToCPixelFormat(PixelFormat pixelFormat) noexcept
constexpr PixelFormat CPixelFormatToCppPixelFormat(peak_common_pixel_format pixelFormat) noexcept
void ExecuteAndMapReturnCodes(const CallableType &callableObject)
peak::common::detail::c_type_of_t< Type > * handle_of_t