Open main menu

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.[1] It was developed by Dolby Laboratories from the IPT color space by Ebner and Fairchild.[2] 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.[3]

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.[4]

ICtCp top view.png


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

  1. Calculate LMS from BT.2100 RGB: 
  2. Normalize the LMS by a non-linearity:
    • If the PQ transfer function is used: 
    • If the HLG transfer function is used: 
  3. Calculate ICTCP: 

In IPTEdit

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.[5]


ICTCP has near constant luminance, which improves chroma subsampling versus YCBCR.[6] ICTCP also improves hue linearity compared with YCBCR, which helps with compression performance and color volume mapping.[7] When combined with adaptive reshaping ICTCP can improve compression performance by 10%.[8] For CIEDE2000 color quantization errors, 10-bit ICTCP would be equivalent to 11.5 bit YCBCR.[3] 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.[3] 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.[3]


ICTCP is supported in the HEVC video coding standard.[9]


  1. ^ a b "BT.2100-2: Image parameter values for high dynamic range television for use in production and international programme exchange". ITU-R. July 2018.
  2. ^ Ebner; Fairchild (1998), Development and Testing of a Color Space with Improved Hue Uniformity, Proc. IS&T 6th Color Imaging Conference, Scottsdale, AZ, pp. 8–13.
  3. ^ a b c d "ICtCp Dolby White Paper" (PDF). Dolby. Retrieved 2016-04-20.
  4. ^ "ST 2084:2014". Society of Motion Picture and Television Engineers.
  5. ^ Xue, Yang (1 November 2008). "Uniform color spaces based on CIECAM02 and IPT color difference equations". RITTheses: 7.
  6. ^ "Subsampling in ICtCp vs YCbCr" (PDF). Dolby Laboratories, Inc.
  7. ^ "ITP Colour Space and Its Compression Performance for High Dynamic Range and Wide Colour Gamut Video Distribution" (PDF). ZTE.
  8. ^ "Evaluation of ICtCp color space and an Adaptive Reshaper for HDR and WCG" (PDF). IEEE.
  9. ^ Peng Yin; Chad Fogg; Gary J. Sullivan; Alexis Michael Tourapis (2016-03-19). "Draft text for ICtCp support in HEVC (Draft 1)". JCT-VC. Retrieved 2016-04-20.