Adding Profiles

This page describes the internals of YUVColorTypes.jl.

You can implement the conversion methods such as convert_yuv_to_rgb directly. However, except in the case of nonlinear conversions or speed optimization, the conversion processes are completed simply by defining a profile.

RGB color primaries and whitepoint

RGB <-> XYZ conversion matrices

RGB <-> sRGB conversion matrices

YUVColorTypes.mat_srgb_to_rgbFunction
mat_srgb_to_rgb(C{T}) -> NTuple{3,NTuple{3,F}}

Return the conversion matrix from linear sRGB to linear RGB based on C primaries.

source

YUV <-> RGB conversion matrices

Transfer functions

YUVColorTypes.eotfFunction
eotf(C) -> function

Return the display EOTF (Electro-Optical Transfer Function) for color type C.

See also eotf

source
YUVColorTypes.ieotfFunction
ieotf(::Type{C})

Return the inverse EOTF (Electro-Optical Transfer Function) for color type C. This is sometimes referred to as OETF (Opto-Electronic Transfer Function), but OETF is essentially a camera-side characteristic and is distinct from a display-side characteristic.

See also eotf

source