ICTCP, ICtCp, or ITP is a 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. Ebner also used IPT as short for "Image Processing Transform".
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. ICTCP was defined as YCC digital format with support for 4:4:4, 4:2:0 and 4:2:0 chroma subsampling in CTA-861-H (that means that in limited range 10 bit mode 0, 1, 2, 3, 1020, 1021, 1022, 1023 values are reserved).
ICTCP is defined by Rec. 2100 as being derived from RGB as follows:
- Calculate LMS from BT.2100 RGB:
- Normalize the LMS by a non-linearity:
- Calculate ICTCP:
- for PQ:
- for HLG:
All three above mentioned matrixes were derived (only the first 2 are known derivations) from the matrixes in IPT. HLG matrix derivation is unknown. The inverted decoding ICTCP matrixes are specified in ITU-T Series H Supplement 18.
ICTCP is defined such that the entire BT.2020 space fits into the range [0, 1] for I and [-0.5, +0.5] for the two chroma components. The related uniform color space ITP used in ΔEITP (Rec. 2124) scales CT by 0.5 to restore uniformity.
The preceder to ICTCP, Ebner & Fairchild IPT color appearance model (1998), has a mostly similar transformation pipeline of input → LMS → nonlinearity → IPT. The differences are that it defines its input to the more general CIEXYZ tristimulus color space and as a result has a more conventional Hunt-Pointer-Estevez (for D65) matrix for LMS. The nonlinearity is a fixed gamma of 0.43, quite close to the one used by RLAB. The second matrix here is slightly different from the ICTCP matrix, mainly in that is also considers S (blue cone) for intensity, but ICTCP has also Rotation matrix (to align skin tones) and Scalar matrix (scaled to fit the full BT.2020 gamut inside the -0.5 to 0.5 region) multiplied with this matrix:
- Calculate LMS (see LMS color space § Hunt, RLAB for D65, slightly different):
- Nonlinearity (L'M'S'): For each of L, M, S components apply a power function:
IPTPQc2 is another related colorspace used by Dolby Vision profile 5 BL+RPU (without EL), if it not marked as HDR10 compatible (HDR10 is also supported by profile 5). c2 means cross talk matrix is used with c = 2%. It should use full range quantization (0-1023 for 10 bit video, no values reserved). Although often referred to as IPTPQc2/IPT, it is different from the 1998 IPT. Documentation on this format is scarce due to its proprietary nature, but a patent on the "IPT-PQ" (perceptually quantized IPT) color space seems to describe how Dolby changed the domain to PQ by changing the traditional power function from 1998 IPT paper to PQ function for each of LMS components. The matrix is as follows and is the same as in 1998 IPT paper on page 146, at least according to a "testing-video" project:
Note the matrix inversion used and an error was made in patent in 1091 number of the matrix (the matrix after inversion is correct in patent). In addition, this format has no nonlinearity, and is assumed to be BT.2020-based.
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, that is why ΔEITP standard was introduced as ITU-R Rec. BT.2124 and is already used in Calman. Luminance constancy is 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.
- "BT.2100-2: Image parameter values for high dynamic range television for use in production and international programme exchange". ITU-R. July 2018.
- "What Is ICtCp – Introduction?" (PDF). Dolby. Retrieved 2016-04-20.
- Ebner, Fritz (1998-07-01). "Derivation and modelling hue uniformity and development of the IPT color space". Theses.
- F.Ebner, M.D.Fairchild, Development and testing of a color space (IPT) with improved hue uniformity. In: Proceedings of The Sixth Color Imaging Conference, 8-13, 1998
- "ST 2084:2014". Society of Motion Picture and Television Engineers.
- "A DTV Profile for Uncompressed High Speed Digital Interfaces (ANSI/CTA-861-H)". Consumer Technology Association®. Retrieved 2021-03-11.
- "ITU-T Recommendation database". ITU. hdl:11.1002/1000/13441. Retrieved 2020-11-14.
- "Recommendation ITU-R BT.2124-0 Objective metric for the assessment of the potential visibility of colour differences in television" (PDF). January 2019.
- Xue, Yang (1 November 2008). "Uniform color spaces based on CIECAM02 and IPT color difference equations". RITTheses: 7.
- Dolby. "Dolby Vision Profiles and Levels Version 1.3.2 - Specification" (PDF). Archived from the original (PDF) on 29 September 2020. Retrieved 27 April 2021.
- , "Signal reshaping and coding in the ipt-pq color space", issued 2016-04-19
- "Dolby Vision with wrong colors · Issue #7326 · mpv-player/mpv". GitHub.
- "testing-av/testing-video: IPTPQc2.java". GitHub.
- "Description of the reshaper parameters derivation process in ETM reference software". phenix.it-sudparis.eu. Retrieved 2020-11-14.
- "Subsampling in ICtCp vs YCbCr" (PDF). Dolby Laboratories, Inc. Archived from the original (PDF) on 20 September 2020.
- "ITP Colour Space and Its Compression Performance for High Dynamic Range and Wide Colour Gamut Video Distribution". ZTE.
- "Evaluation of ICtCp color space and an Adaptive Reshaper for HDR and WCG". IEEE. doi:10.1109/MCE.2017.2714696.
- "BT.2124: Objective metric for the assessment of the potential visibility of colour differences in television". www.itu.int. Retrieved 24 June 2020.
- 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.