Array (Matrix)

 
 
 

The Array element specifies an array of values for a LUT or matrix. When it is contained by a Matrix element, the format of its contents is different than when it is contained by LUT1D or LUT3D elements.

Contains

  • A series of numeric values specifying the elements of the matrix.

    In a Matrix, the values specify the entries of the matrix which are serialized row by row from top to bottom and from left to right. The scaling of the array values depends on the input and output bit-depths. Color values are treated as column vectors for the purpose of multiplication.

    The scaling of the array values depends on the input and output bit-depths. For example if the input depth is 10i and the output depth is 12i, then a matrix containing entries of 4095/1023 along the main diagonal and entries of 0 everywhere else is the identity transform.

3×3 Matrix Multiplication

4×4 Matrix Multiplication

Contained By

Attributes

dim
"3 3 3" for a 3×3 matrix operating on 3-component values, or "4 4 3" for a 4×4 matrix operating on 3-component values.

Example

3x3 Matrix

<ProcessList id="af6a6c73-aae9-4be6-8051-a796bc480b1c" version="1.2">
    <Matrix inBitDepth="32f" outBitDepth="32f">
        <Array dim="3 3 3">
 0.7841929793  0.0904410034  0.1253670007
 0.0445200019  1.0391299725 -0.0836500004
 0.0358299986 -0.3302420080  1.2944129705
        </Array>
    </Matrix>
</ProcessList>

4x4 Matrix

<ProcessList id="d6783d48-dd96-4c71-99af-f3be0cc9392e" version="1.2">
    <Matrix inBitDepth="32f" outBitDepth="10i">
        <Array dim="4 4 3">
499.99996948   0.00000000   0.00000000  94.99999237
  0.00000000 499.99996948   0.00000000  94.99999237
  0.00000000   0.00000000 499.99996948  94.99999237
  0.00000000   0.00000000   0.00000000   1.00000000
        </Array>
    </Matrix>
 </ProcessList>