IDS peak ICV v1.3.0
Loading...
Searching...
No Matches
ColorMatrixTransformationModule Class Reference
Inheritance diagram for ColorMatrixTransformationModule:

Data Structures

class  Handle
 

Public Member Functions

 ColorMatrixTransformationModule ()
 Creates an instance of class ColorMatrixTransformationModule.
 
void Dispose ()
 Releases all resources used by this class.
 
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 parameters to their default values.
 
override Image Process (Image inputImage)
 Processes the input image and returns a color corrected and/or saturated output image.
 
override object Process (object input)
 Processes the input image and returns a color corrected and/or saturated output image.
 
void SetAutoFeatureModule (IAutoFeature? module)
 Sets the auto feature module that should take the color correction matrix into account for automatic white balancing.
 
bool HasColorTemperature ()
 Returns whether a color temperature has been set.
 

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.
 
override bool IsEnabled [get, set]
 Gets or sets whether the module is enabled.
 
ColorCorrectionMatrix Matrix [get, set]
 The current Types.ColorCorrectionMatrix.
 
float Saturation [get, set]
 The current saturation value.
 
IntervalF SaturationRange [get]
 Gets the valid range for saturation.
 
ChromaticAdaptionAlgorithm ChromaticAdaptionAlgorithm [get, set]
 The current algorithm used for chromatic adaptation.
 
ColorSpace TargetColorSpace [get, set]
 The current target color space for the chromatic adaptation transformation.
 
uint? ColorTemperature [get, set]
 The current source color temperature in Kelvin to be used for chromatic adaptation.
 
RangeU ColorTemperatureRange [get]
 Gets the valid range for color temperature.
 
int Version = 1 [get]
 The module version.
 

Detailed Description

Color matrix transformation is an image pipeline module that applies a Types.ColorCorrectionMatrix to an image.

Provides the features ColorCorrectionFeature, SaturationFeature and ChromaticAdaptionFeature

Default values:

Since
IDSImaging.Peak.ICV 1.3

Definition at line 46 of file ColorMatrixTransformationModule.cs.

Constructor & Destructor Documentation

◆ ColorMatrixTransformationModule()

Creates an instance of class ColorMatrixTransformationModule.

Definition at line 77 of file ColorMatrixTransformationModule.cs.

Member Function Documentation

◆ Deserialize()

override void Deserialize ( IArchive archive)
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.

Note
This function requires that the archive contains all expected fields as produced by a corresponding Serialize call.
Parameters
archiveThe source archive containing the serialized parameters.
Exceptions
IcvCorruptedExceptionThe archive is malformed, misses keys or the values are invalid.
IcvNotSupportedExceptionThe Version entry indicates an unsupported version.
IcvOutOfRangeExceptionThe values are outside of the valid range.

Reimplemented from ModuleBase.

Definition at line 424 of file ColorMatrixTransformationModule.cs.

◆ Dispose()

void Dispose ( )
inline

Releases all resources used by this class.

Definition at line 349 of file ColorMatrixTransformationModule.cs.

◆ HasColorTemperature()

bool HasColorTemperature ( )
inline

Returns whether a color temperature has been set.

Definition at line 608 of file ColorMatrixTransformationModule.cs.

◆ Process() [1/2]

override Image Process ( Image inputImage)
inline

Processes the input image and returns a color corrected and/or saturated output image.

Note
Supported pixel formats: RGB8, RGB10, RGB12, BGR8, BGR10, BGR12, RGBa8, RGBa10, RGBa12, BGRa8, BGRa10, BGRa12. Images with other formats are passed through unmodified.
Note
This operation disregards any specified image regions and processes the entire image.
Parameters
inputImageThe input image to be processed.
Returns
The input image after in-place color correction and/or saturation has been applied.

Definition at line 528 of file ColorMatrixTransformationModule.cs.

◆ Process() [2/2]

override object Process ( object input)
inlinevirtual

Processes the input image and returns a color corrected and/or saturated output image.

Note
Supported pixel formats: RGB8, RGB10, RGB12, BGR8, BGR10, BGR12, RGBa8, RGBa10, RGBa12, BGRa8, BGRa10, BGRa12. Images with other formats are passed through unmodified.
Note
This operation disregards any specified image regions and processes the entire image.
Parameters
inputThe input image to be processed.
Returns
The input image after in-place color correction and/or saturation has been applied.

Reimplemented from ModuleBase.

Definition at line 571 of file ColorMatrixTransformationModule.cs.

◆ ResetToDefault()

override void ResetToDefault ( )
inlinevirtual

Resets all parameters to their default values.

Default values:

Note
The enabled state does not change when calling this function.

Reimplemented from ModuleBase.

Definition at line 501 of file ColorMatrixTransformationModule.cs.

◆ Serialize()

override void Serialize ( IArchive archive)
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.

Parameters
archiveThe target archive that will store the serialized parameters.

Reimplemented from ModuleBase.

Definition at line 368 of file ColorMatrixTransformationModule.cs.

◆ SetAutoFeatureModule()

void SetAutoFeatureModule ( IAutoFeature? module)
inline

Sets the auto feature module that should take the color correction matrix into account for automatic white balancing.

Definition at line 580 of file ColorMatrixTransformationModule.cs.

Property Documentation

◆ ChromaticAdaptionAlgorithm

The current algorithm used for chromatic adaptation.

Definition at line 176 of file ColorMatrixTransformationModule.cs.

◆ ColorTemperature

uint? ColorTemperature
getset

The current source color temperature in Kelvin to be used for chromatic adaptation.

The initial color temperature is null. In this case, chromatic adaption does not apply.

Exceptions
IcvOutOfRangeExceptionThe value is outside the valid range (see ColorTemperatureRange).

Definition at line 234 of file ColorMatrixTransformationModule.cs.

◆ ColorTemperatureRange

RangeU ColorTemperatureRange
get

Gets the valid range for color temperature.

Definition at line 271 of file ColorMatrixTransformationModule.cs.

◆ IsEnabled

override bool IsEnabled
getset

Gets or sets whether the module is enabled.

Implements IModule.

Definition at line 95 of file ColorMatrixTransformationModule.cs.

◆ Matrix

◆ Saturation

float Saturation
getset

The current saturation value.

Exceptions
IcvOutOfRangeExceptionThe value is outside the valid range (see SaturationRange).

Definition at line 139 of file ColorMatrixTransformationModule.cs.

◆ SaturationRange

IntervalF SaturationRange
get

Gets the valid range for saturation.

Definition at line 161 of file ColorMatrixTransformationModule.cs.

◆ TargetColorSpace

ColorSpace TargetColorSpace
getset

The current target color space for the chromatic adaptation transformation.

Definition at line 202 of file ColorMatrixTransformationModule.cs.

◆ TypeId

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.

Implements IModule.

Definition at line 92 of file ColorMatrixTransformationModule.cs.

◆ Version

int Version = 1
getinherited

The module version.

Definition at line 20 of file ModuleBase.cs.