#include <peak_icv/pipeline/detail/peak_icv_debayer_module.hpp>

Public Member Functions | |
| DebayerModule () | |
| Creates an instance of class DebayerModule with default settings. | |
| ~DebayerModule () override | |
| DebayerModule (const DebayerModule &other)=delete | |
| Copy constructor for class DebayerModule is deleted. | |
| DebayerModule (DebayerModule &&other) noexcept | |
| DebayerModule & | operator= (const DebayerModule &other)=delete |
| Copy assignment for class DebayerModule is deleted. | |
| DebayerModule & | operator= (DebayerModule &&other) noexcept |
| void | Serialize (peak::common::serialization::IArchive &archive) const override |
| Serializes the object's internal state into the provided archive. | |
| void | Deserialize (const peak::common::serialization::IArchive &archive) override |
| Restores the object's state from the provided archive. | |
| void | SetEnabled (bool enabled) override |
| Enables or disables the module. | |
| bool | IsEnabled () const override |
| Gets whether this module is currently enabled. | |
| const char * | GetType () const override |
| Returns the type of the module for serialization purposes. | |
| void | ResetToDefault () override |
| Resets all module settings to its default settings. | |
| void | SetChannelLayout (DebayerChannelLayout layout) |
| Set the output channel layout for debayered images. | |
| DebayerChannelLayout | GetChannelLayout () const |
| Gets the current channel layout setting. | |
| void | SetConversionPolicy (DebayerConversionPolicy policy) |
| Set the debayer conversion policy. | |
| DebayerConversionPolicy | GetConversionPolicy () const |
| Retrieves the current conversion policy. | |
| void | SetTargetBitDepth (size_t bitDepth) |
| Set the target bit depth for processed images. | |
| void | SetProcessingPolicy (ProcessingPolicy policy) |
| Set the processing policy. | |
| peak::icv::Image | Process (const peak::icv::Image &input) const |
| Converts a Bayer or mono image to a color image, or returns the input image unchanged. | |
| peak::common::Any | Process (const peak::common::Any &input) const override |
| Converts a Bayer or mono image to a color image, or returns the input image unchanged. | |
| void | ReleaseBuffers () const |
| Frees unused internal buffers. | |
Debayer is an image pipeline module that converts Bayer RAW images into standard color formats.
It performs demosaicing on Bayer-pattern RAW images, converting them into full-color images using configurable channel layouts such as RGB, BGR, RGBA, or BGRA. The bit depth of the output is inferred from the input, depending on the selected processing policy.
The module can also be configured to convert Bayer or monochrome images, while passing through other image types unchanged.
Definition at line 99 of file peak_icv_debayer_module.hpp.
|
inline |
Creates an instance of class DebayerModule with default settings.
Definition at line 365 of file peak_icv_debayer_module.hpp.
|
inlineoverride |
Definition at line 372 of file peak_icv_debayer_module.hpp.
|
delete |
Copy constructor for class DebayerModule is deleted.
|
inlinenoexcept |
Definition at line 380 of file peak_icv_debayer_module.hpp.
|
inlineoverridevirtual |
Restores the object's state from the provided archive.
This function reads and applies all necessary parameters from the given archive to reconstruct the internal state of the object. It ensures that the object is restored to a valid and consistent state.
| archive | The source archive containing the serialized parameters. |
| CorruptedException | If Archive is malformed, misses keys or the values are invalid |
| NotSupportedException | If the 'Version' entry indicates an unsupported version. |
Implements ISerializable.
Definition at line 411 of file peak_icv_debayer_module.hpp.
|
inline |
Gets the current channel layout setting.
Definition at line 448 of file peak_icv_debayer_module.hpp.
|
inline |
Retrieves the current conversion policy.
Definition at line 459 of file peak_icv_debayer_module.hpp.
|
inlineoverridevirtual |
Returns the type of the module for serialization purposes.
Implements IModule.
Definition at line 437 of file peak_icv_debayer_module.hpp.
|
inlineoverridevirtual |
Gets whether this module is currently enabled.
true if enabled; otherwise false.Implements IModule.
Definition at line 432 of file peak_icv_debayer_module.hpp.
|
delete |
Copy assignment for class DebayerModule is deleted.
|
inlinenoexcept |
Definition at line 389 of file peak_icv_debayer_module.hpp.
|
inlineoverridevirtual |
Converts a Bayer or mono image to a color image, or returns the input image unchanged.
A demosaicing algorithm is applied according to the configured conversion policy. The input image is returned unchanged if the module is disabled, the policy indicates bypass, or the image format is not eligible for conversion. Otherwise, the Bayer RAW image is converted to the configured output format.
| input | The input image (Bayer, mono, or already color). |
| peak::common::InvalidCastException | If the input cast to peak::icv::Image failed. |
Implements IModule.
Definition at line 576 of file peak_icv_debayer_module.hpp.
|
inline |
Converts a Bayer or mono image to a color image, or returns the input image unchanged.
A demosaicing algorithm is applied according to the configured conversion policy. The input image is returned unchanged if the module is disabled, the policy indicates bypass, or the image format is not eligible for conversion. Otherwise, the Bayer RAW image is converted to the configured output format.
| input | The input image (Bayer, mono, or already color). |
Definition at line 571 of file peak_icv_debayer_module.hpp.
|
inline |
Frees unused internal buffers.
This module uses pre-allocated internal buffers to accelerate conversions. When the image size or pixel format changes, new buffers are allocated, which may cause the internal buffer pool to grow over time. This function can be used to release unused buffers and reduce memory usage.
Definition at line 604 of file peak_icv_debayer_module.hpp.
|
inlineoverridevirtual |
Resets all module settings to its default settings.
Implements IModule.
Definition at line 421 of file peak_icv_debayer_module.hpp.
|
inlineoverridevirtual |
Serializes the object's internal state into the provided archive.
This function populates the given archive with all parameters required to fully represent the current state of the object. It ensures that the object can be reconstructed or transmitted accurately by saving all relevant data members in a consistent and structured format.
| archive | The target archive that will store the serialized parameters. |
Implements ISerializable.
Definition at line 402 of file peak_icv_debayer_module.hpp.
|
inline |
Set the output channel layout for debayered images.
This controls the order and number of color channels in the converted image.
| layout | The channel layout to use (e.g., RGB, BGRA). |
Definition at line 442 of file peak_icv_debayer_module.hpp.
|
inline |
Set the debayer conversion policy.
This policy determines which types of input images will be converted. All other image types are passed through unchanged.
| policy | The desired conversion policy. |
Definition at line 453 of file peak_icv_debayer_module.hpp.
|
inlineoverridevirtual |
Enables or disables the module.
| enabled | Set to true to enable, or false to disable. |
Implements IModule.
Definition at line 427 of file peak_icv_debayer_module.hpp.
|
inline |
Set the processing policy.
The processing policy defines how the target bit depth interacts with the input image bit depth.
| policy | The desired ProcessingPolicy. |
Definition at line 566 of file peak_icv_debayer_module.hpp.
|
inline |
Set the target bit depth for processed images.
The effective output bit depth depends on the selected ProcessingPolicy:
| bitDepth | The desired target bit depth (e.g., 8, 10, 12). |
Definition at line 268 of file peak_icv_debayer_module.hpp.