Operator RGB2XYZ

Operator Library: Prototype

[Warning] Warning

Disclaimer: This module is part of the prototype library. It is absolutely preliminary and subject to extensive changes, even removal. Therefore, this module must not be used for productive designs. It is included for testing purposes only.

The module RGB2XYZ converts the color space from an anticipated sRGB, white point D65 to CIE XYZ. The coefficients are parametrizable to allow customized transformations. Since the XYZ values range [0, 100] the output bit width is 7-bit, however if more bits are selected at the output link the values are scaled by 2^(n-7) to make a higher precision available.

The transformation matrix is defined by the parameters TransMatrixX1 to TransMatrixZ3. These parameters are a 3x3 matrix containing double precision coefficients. The following formula represents the transformation algorithm.

I/O Properties

Property
Operator Type O
Input Link I, image data input
Output Link O, image data output

Supported Link Format

Link Parameter Input Link I Output Link O
Bit Width 24 [21, 63]
Arithmetic unsigned as I
Parallelism any as I
Kernel Columns 1 as I
Kernel Rows 1 as I
Img Protocol {VALT_IMAGE2D, VALT_LINE1D, VALT_PIXEL0D} as I
Color Format VAF_COLOR as I
Color Flavor FL_RGB FL_XYZ
Max. Img Width any as I
Max. Img Height any as I

参数

TransMatrixX1
键入 static read/write parameter
默认 0.4124
范围 [0, 1]

Defines one coefficient of the transformation matrix RGB to XYZ. The value of this coefficient is a double value.

TransMatrixX2
键入 static read/write parameter
默认 0.3576
范围 [0, 1]

Defines one coefficient of the transformation matrix RGB to XYZ. The value of this coefficient is a double value.

TransMatrixX3
键入 static read/write parameter
默认 0.1805
范围 [0, 1]

Defines one coefficient of the transformation matrix RGB to XYZ. The value of this coefficient is a double value.

TransMatrixY1
键入 static read/write parameter
默认 0.2126
范围 [0, 1]

Defines one coefficient of the transformation matrix RGB to XYZ. The value of this coefficient is a double value.

TransMatrixY2
键入 static read/write parameter
默认 0.7152
范围 [0, 1]

Defines one coefficient of the transformation matrix RGB to XYZ. The value of this coefficient is a double value.

TransMatrixY3
键入 static read/write parameter
默认 0.0722
范围 [0, 1]

Defines one coefficient of the transformation matrix RGB to XYZ. The value of this coefficient is a double value.

TransMatrixZ1
键入 static read/write parameter
默认 0.0193
范围 [0, 1]

Defines one coefficient of the transformation matrix RGB to XYZ. The value of this coefficient is a double value.

TransMatrixZ2
键入 static read/write parameter
默认 0.1192
范围 [0, 1]

Defines one coefficient of the transformation matrix RGB to XYZ. The value of this coefficient is a double value.

TransMatrixZ3
键入 static read/write parameter
默认 0.9505
范围 [0, 1]

Defines one coefficient of the transformation matrix RGB to XYZ. The value of this coefficient is a double value.