HCL color space
HCL (Hue-Chroma-Luminance) or Lch refers to any of the many cylindrical color space models that are designed to accord with human perception of color with the three parameters. Lch has been adopted by information visualization practitioners to present data without the bias implicit in using varying saturation.[1][2][3] They are, in general, designed to have characteristics of both cylindrical translations of the RGB color space, such as HSL and HSV, and the L*a*b* color space.. Some conflicting definitions of the terms are:
- "HCL" designed in 2005 by Sarifuddin and Missaou, which is a transformation of whatever type of RGB color space is in use.[4]
- A name for a cylindrical transformation of CIELuv (CIE Lch(uv)) employed by Ihaka (2003)[1] and adopted by Zeileis et al. (2009)[2]. This name appears to be the one most commonly used in information visualization. Ihaka, Zeileis, and co-authors also provide software implementations and web pages to promote its use.[5]
- A name for cylindrical CIELab (CIE Lch(ab)), employed by chroma.js.
Derivation
Color-making attributes
HCL concerns the following attributes of color appearance:[upper-alpha 1]
- Hue
- The "attribute of a visual sensation according to which an area appears to be similar to one of the perceived colors: red, yellow, green, and blue, or to a combination of two of them".[6]
- Lightness, value
- The "brightness relative to the brightness of a similarly illuminated white".[6]
- Luminance (Y or Lv,Ω)
- The radiance weighted by the effect of each wavelength on a typical human observer, measured in SI units in candela per square meter (cd/m2). Often the term luminance is used for the relative luminance, Y/Yn, where Yn is the luminance of the reference white point.
- Colorfulness
- The "attribute of a visual sensation according to which the perceived color of an area appears to be more or less chromatic".[6]
Sarifuddin 2005
The HSL and HSV color spaces are more intuitive translations of the RGB color space, because they provide a single hue number. However, their luminance variation does not match the way humans perceive color. Perceptually uniform color spaces outperform RGB in cases such as high noise environments.[7] Sarifuddin, noting the lack of blue hue consistency of CIELab—a common complaint among its users—[8]decided to make their own color space by mashing up some of the features.[4] The result, being a simpler transformation from (non-linear) sRGB than the other color spaces, may have more potential in machine learning.
From RGB
The luminance is essentially a combination of the HSL "L" with a correction factor.
Q is a tuning parameter that varies luminosity between a highly saturated color and white:
Chroma also uses the correction factor Q to maintain linearity. It also reshapes the color space into a cone superficially similar to the one seen in HSV.
The Hue calculation, like Chroma, somewhat resembles the circular/nonhexagonal variant of HSL.
Color difference
The CH correction factor has been described as unrealistic.[9] Unlike what is claimed in the paper, it does not appear to be an improvement over established color difference metrics.[10]
To RGB
See the long-form corrected report.[4]
CIE color spaces
CIE-based Lch color spaces are transformations of the two chroma values (ab or uv) into the polor coordinate. See the respective articles for how the underlying coordinates are derived.
Implementations
CIE Lch has been implemented in a wide range of ways: as programmatic code for generating color swatches in statistics tools, as standalone tools for designing and testing swatches, or as libraries that allow other programs to use the color space. Some implementations include:
- Statistical tools:
- d3.js Data Driven Documents JavaScript library (CIE Lch[ab])
- Swatch designs:
- The colorspace package, for the R statistical programming language (CRAN) and for the Python language (Documentation). Also comes with pre-made sets of swatches.
- The scientific color maps, a set of pre-made swatches.
- Library:
References
- "Clearly, if color appearance is to be described in a systematic, mathematical way, definitions of the phenomena being described need to be precise and universally agreed upon."[6]
- Ihaka, Ross (2003). "Colour for Presentation Graphics". In Hornik, Kurt; Leisch, Friedrich; Zeileis, Achim (eds.). Proceedings of the 3rd International Workshop on Distributed Statistical Computing, Vienna, Austria. ISSN 1609-395X.
- Zeileis, Achim; Hornik, Kurt; Murrell, Paul (2009). "Escaping RGBland: Selecting Colors for Statistical Graphics". Computational Statistics & Data Analysis. 53 (9): 3259–3270. doi:10.1016/j.csda.2008.11.033.
- Stauffer, Reto; Mayr, Georg J.; Dabernig, Markus; Zeileis, Achim (2015). "Somewhere over the Rainbow: How to Make Effective Use of Colors in Meteorological Visualizations". Bulletin of the American Meteorological Society. 96 (2): 203–216. Bibcode:2015BAMS...96..203S. doi:10.1175/BAMS-D-13-00155.1. hdl:10419/101098.
- Sarifuddin, M. & Missaoui, Rokia (2005). A New Perceptually Uniform Color Space with Associated Color Similarity Measure for Content-Based Image and Video Retrieval (PDF). Multimedia Information Retrieval Workshop, 28th Annual ACM SIGIR Conference.. Abstract/long-form corrected report
- Zeileis, Achim; Fisher, Jason C.; Hornik, Kurt; Ihaka, Ross; McWhite, Claire D.; Murrell, Paul; Stauffer, Reto; Wilke, Claus O. (2019). "Colorspace: A Toolbox for Manipulating and Assessing Colors and Palettes". arXiv:1903.06490 [stat.CO].
- Fairchild (2005), pp. 83–93
- Paschos, G. (2001). "Perceptually Uniform Color Spaces for Color Texture Analysis: An Empirical Evaluation". IEEE Transactions on Image Processing. 10 (6): 932–937. Bibcode:2001ITIP...10..932P. doi:10.1109/83.923289.
- McLellan, M. R.; Lind, L. R.; Kime, R. W. (1995). "Hue Angle Determinations and Statistical Analysis for Multiquadrant Hunter L,a,b Data". Journal of Food Quality. 18 (3): 235–240. doi:10.1111/j.1745-4557.1995.tb00377.x.
- tatarize. "HCL color to RGB and backward". Stack Overflow.
- Tatarize (4 September 2012). "HCL: a new Color Space for a pack of lies". Ssnot!. Retrieved 22 May 2019.