Re: [csswg-drafts] Don't force non-legacy colors to interpolate in a gamma-encoded space (#5883)

Hey Chris, @svgeesus 

> _I have seen this "LUV for emissive color, LAB for reflective color" meme repeatedly, but never with any actual evidence._

Yea, I've seen that, and had not given it too much weight until I began some comparative evaluations — I hope you know I question everything and believe no one! (I come from the "question authority" generation after all, LOL). 😎

> _and was given as a rather handwavy justification for standardizing both._

And, both LAB and LUV are a little handwavy. But also computationally simple compared to complete models.

> _ever paper or book or system that I have seen uses LAB and not LUV,_

I do rely a bit on R.W.G. Hunt's **The Reproduction of Colour** where he says:

_"This quantity is called the CIE 1976 (L*u*v*) colour difference ....This type of space is useful in studies of colour television because, in the associated chromaticity diagrams, additive mixtures of stimuli lie on straight lines joining the points representing those stimuli..."_

Otherwise YES I do agree, especially for general color appearance modeling. LUV is near the bottom of the bunch for general purpose appearance modeling and reflective colors, and therefore not given much weight in many books on the subject. In particular I know Mark Fairchild dismisses LUV pretty harshly, and indeed LUV is NOT useful for color differences of reflected/surface colors.

Nevertheless, it seems somewhat prominent in _" HIGH DYNAMIC RANGE IMAGING (2010)"_ though that is probably due to SGI's development of LogLuv.

And stepping away from pure color theory, data visualization has an affinity for LUV over LAB. From "INFORMATION
VISUALIZATION Perception for Design 2nd ed":

_"...These are called the CIElab and the CIEluv uniform color spaces.....the two standards have somewhat different properties that make them useful for different tasks. **Only the CIEluv formula is described here.** It is generally held to be better for specifying large color differences...."_

> _If you have examples of CIE LUV being used, please cite them. If you have examples of a system derived from LUV being used, please name that system._

I _have_ cited/mentioned/examples....  I realize I write a lot, not sure if you have ever received any of the direct emails I've sent you? I also discuss this more in depth in issue #6061 and below are links to 

I have a Gist with examples, links, etc: which was linked in the above message, again:  [**Where's The Luv?**](https://gist.github.com/Myndex/47c793f8a054041bd2b52caa7ad5271c)

### Some Use Cases
- MilSpec specifies uv coordinates for lighting (i.e. such as for signaling colors to be used in dark adapted environments such as a cockpit).
- Tektronix color grading systems use LUV (with a minor mod), as shown in their patents.
- SGI created LogLuv for HDR
- CalMAN™ uses CIELuv
- Data Vis: https://ccom.unh.edu/vislab/projects/ColorSequenceEditor.html
- Data Vis: https://www.csc2.ncsu.edu/faculty/healey/download/sig-course.98.pdf

I've also noticed as I started digging deeper into neurological research the use of CIELUV for research work, such as in this paper: https://www.nature.com/articles/srep42364.pdf

**What Caused my Interest:**
As it happens, in developing SAPC I was working more with LAB — but being often frustrated with a lack of fit to collected data, I started working more with LUV, and also examining other models. TO BE CLEAR: I am not trying to dismiss LAB in any way, but I did add LUV to the models I'm working with, and I've found several aspects that make it favorable over LAB on self illuminated displays.

- I AGREE that Jzazbz is better... it is also more complicated and therefore computationally more expensive.
- Luv is a simple model, 
    - only a single exponent for `L*` which is identical to Lab.
    - The uv is just a scaling of the 1976 UCS.
    - Simplification: Luv is just xyY with Y transformed to `L*` and then `L*` being used as part of scaling the xy
    - As such I *think* I could create a matrix that goes direct from sRGB into Luv without a transit through XYZ (don't hold me to that, I have not fully investigated).
- Regarding usefulness in mixing and gradients, I am also still evaluating (read: eliminating confirmation biases by waiting weeks and reviewing with fresh eyes).
- I have been working on programatic perceptual color sorting... Luv with an eccentric hue based modifier I'm experimenting with "seems" to give useful (better than LAB) results.... 
- Additional examples in the form of artist colorwheels in this brief article I wrote a while ago looks at Lab Luv and others, my conclusion at the time was that neither Lab nor Luv created accurate color wheels, but Luv was better — nevertheless, manual (LUT based) spacing was needed. Article:  https://www.myndex.com/WDEV/colorwheel

## TL;DR

All that said, I am not the publicist for LUV! LOL ... just pointing out that it has useful applications, and my own experiments and comparisons have shown clear advantages over LAB for use on self illuminated displays for color picking.


Thank you!!

Andy




-- 
GitHub Notification of comment by Myndex
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/5883#issuecomment-789423645 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 3 March 2021 04:41:35 UTC