ICtCp

ICTCP, ICtCp, or ITP is a patented color representation format specified in the Rec. ITU-R BT.2100 standard that is used as a part of the color image pipeline in video and digital photography systems for high dynamic range (HDR) and wide color gamut (WCG) imagery. It was developed by Dolby Laboratories from the IPT color space by Ebner and Fairchild. The format is derived from an associated RGB color space by a coordinate transformation that includes two matrix transformations and an intermediate nonlinear transfer function that is informally known as gamma pre-correction. The transformation produces three signals called I, CT, and CP. The ICTCP transformation can be used with RGB signals derived from either the perceptual quantizer (PQ) or hybrid log-gamma (HLG) nonlinearity functions, but is most commonly associated with the PQ function (which was also developed by Dolby).

The I ("intensity") component is a luma component that represents the brightness of the video, and CT and CP are blue-yellow (named from tritanopia) and red-green (named from protanopia) chroma components.

The ICTCP color representation scheme is conceptually related to the LMS color space, as the color transformation from RGB to ICTCP is defined by first converting RGB to LMS with a 3×3 matrix transformation, then applying the nonlinearity function, and then converting the nonlinear signals to ICTCP using another 3×3 matrix transformation.

Derivation

ICTCP is defined by Rec. 2100 as being derived from RGB as follows:

1. Calculate LMS from BT.2100 RGB:${\begin{bmatrix}L\\M\\S\end{bmatrix}}={\frac {1}{4096}}{\begin{bmatrix}1688&2146&262\\683&2951&462\\99&309&3688\end{bmatrix}}{\begin{bmatrix}R\\G\\B\end{bmatrix}}$
2. Normalize the LMS by a non-linearity:
• If the PQ transfer function is used:${\begin{bmatrix}L'\\M'\\S'\end{bmatrix}}=EOTF_{PQ}^{-1}({\begin{bmatrix}L\\M\\S\end{bmatrix}})$
• If the HLG transfer function is used:${\begin{bmatrix}L'\\M'\\S'\end{bmatrix}}=OETF_{HLG}({\begin{bmatrix}L\\M\\S\end{bmatrix}})$
3. Calculate ICTCP:${\begin{bmatrix}I\\C_{T}\\C_{P}\end{bmatrix}}={\frac {1}{4096}}{\begin{bmatrix}2048&2048&0\\6610&-13613&7003\\17933&-17390&-543\end{bmatrix}}{\begin{bmatrix}L'\\M'\\S'\end{bmatrix}}$

In IPT

The preceder to ICtCp, IPT, has a mostly similar transformation pipeline of input → LMS → nonlinearity → IPT. The only differences are it defines its input to the more general CIEXYZ tristimulus color space and as a result has a more conventional Hunt-Pointer-Estevez (D65) matrix for LMS. The nonlinearity is a fixed gamma of 0.43, quite close to the one used by RLAB. The final matrix is slightly different from the ICtCp matrix, mainly in that is also considers S (blue cone) for intensity.

Characteristics

ICTCP has near constant luminance, which improves chroma subsampling versus YCBCR. ICTCP also improves hue linearity compared with YCBCR, which helps with compression performance and color volume mapping. When combined with adaptive reshaping ICTCP can improve compression performance by 10%. For CIEDE2000 color quantization errors, 10-bit ICTCP would be equivalent to 11.5 bit YCBCR. Luminance constancy is also improved with ICTCP, which has a luminance relationship of 0.998 between the luma and encoded brightness while YCBCR has a luminance relationship of 0.819. An improved constant luminance is an advantage for color processing operations such as chroma subsampling and gamut mapping where only the color difference information is changed.

Uses

ICTCP is supported in the HEVC video coding standard.