
Public Member Functions | |
| DebayerModule () | |
| Creates an instance of class DebayerModule. | |
| void | Dispose () |
| Releases all resources used by this class. | |
| override object | Process (object input) |
| Converts a Bayer or mono image to a color image, or returns the input image unchanged. | |
| override Image | Process (Image inputImage) |
| Converts a Bayer or mono image to a color image, or returns the input image unchanged. | |
| override void | Serialize (IArchive archive) |
| Serializes the object's internal state into the provided archive. | |
| override void | Deserialize (IArchive archive) |
| Restores the object's state from the provided archive. | |
| override void | ResetToDefault () |
| Resets all module settings to its default settings. | |
| void | ReleaseBuffers () |
| Frees unused internal buffers. | |
Static Public Attributes | |
| const DebayerChannelLayout | DefaultChannelLayout = DebayerChannelLayout.RGB |
| The default channel layout. | |
| const DebayerConversionPolicy | DefaultConversionPolicy = DebayerConversionPolicy.BayerOnly |
| The default conversion policy. | |
| const uint | DefaultTargetBitDepth = 8 |
| The default target bit depth. | |
| const ProcessingPolicy | DefaultPolicy = ProcessingPolicy.Fast |
| The default processing policy. | |
Properties | |
| override string | TypeId [get] |
| The unique type identifier for this module implementation.This should be a unique string identifying the specific implementation of the module. | |
| DebayerChannelLayout | ChannelLayout = DefaultChannelLayout [get, set] |
| The output channel layout used for debayered images. | |
| DebayerConversionPolicy | ConversionPolicy = DefaultConversionPolicy [get, set] |
| The debayer conversion policy. | |
| uint | TargetBitDepth = DefaultTargetBitDepth [get, set] |
| The target bit depth for processed images. | |
| ProcessingPolicy | ProcessingPolicy = DefaultPolicy [get, set] |
| The processing policy defines how the target bit depth interacts with the input image bit depth. | |
| int | Version = 1 [get] |
| The module version. | |
| virtual bool | IsEnabled = true [get, set] |
| Get whether this module is enabled. | |
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.
|
inline |
Creates an instance of class DebayerModule.
|
inlinevirtual |
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. |
| IcvCorruptedException | The archive is malformed, misses keys or the values are invalid. |
| IcvNotSupportedException | The Version entry indicates an unsupported version. |
Reimplemented from ModuleBase.
|
inline |
Releases all resources used by this class.
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.
| inputImage | The input image (Bayer, mono, or already color). |
|
inlinevirtual |
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). |
Reimplemented from ModuleBase.
|
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.
|
inlinevirtual |
Resets all module settings to its default settings.
Reimplemented from ModuleBase.
|
inlinevirtual |
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. |
Reimplemented from ModuleBase.
|
static |
The default channel layout.
|
static |
The default conversion policy.
|
static |
The default processing policy.
|
static |
The default target bit depth.
|
getset |
The output channel layout used for debayered images.
This controls the order and number of color channels in the converted image.
|
getset |
The debayer conversion policy.
This policy determines which types of input images will be converted. All other image types are passed through unchanged.
|
getsetinherited |
Get whether this module is enabled.
When disabled, Process returns the input image unchanged.
Implements IModule.
The processing policy defines how the target bit depth interacts with the input image bit depth.
|
getset |
The target bit depth for processed images.
The effective output bit depth depends on the selected ProcessingPolicy:
Typical values are 8, 10, or 12.
|
get |
The unique type identifier for this module implementation.This should be a unique string identifying the specific implementation of the module.
Implements IModule.
|
getinherited |
The module version.