3 ms·
David Madore answered on Twitter : https://twitter.com/gro_tsen/status/1483054395524796421 https://twitter.com/gro_tsen/status/1483054395524796421, the discrepa
by brohee 5y ago
David Madore answered on Twitter : https://twitter.com/gro_tsen/status/1483054395524796421 https://twitter.com/gro_tsen/status/1483054395524796421, the discrepancy is likely due to you using Python's colourscience package SPECTRAL_SHAPE_DEFAULT which is based on ASTM E308-15 based on CIE and him using better color conversion functions from http://cvrl.ioo.ucl.ac.uk/index.htm http://cvrl.ioo.ucl.ac.uk/index.htm
- kelsolaar 5y agoHi, Yes, and as discussed on Twitter, sRGB is defined for the CIE 1931 2 Degree Standard Observer, not other observers. It is not defined spectrally but as a set of chromaticity coordinates (in the CIE 1931 Chromaticity Diagram). Thus, strictly speaking, sRGB values can only be computed for the CIE 1931 2 Degree Standard Observer. I tried four different observers, using strict integration: - CIE 1931 2 Degree Standard Observer: [ 153.9026317 , 180.75617631, 255. ] - CIE 1964 10 Degree Standard Observer: [ 150.32288938, 184.67113624, 255. ] - CIE 2012 2 Degree Standard Observer: [ 145.14899585, 180.69807338, 255. ] - CIE 2012 10 Degree Standard Observer: [ 148.44893332, 185.66849549, 255. ] - Article: (148,177,255)
- kelsolaar 5y agoAfter a great discussion on Twitter, it comes down to normalisation: I normalised the final EOTF-1 sRGB encoded values while the author normalised the intermediate linear sRGB values and did the EOTF-1 encoding after. We used the same Standard Observer.
- saurik 5y agoIs there reason to believe either of these is more correct? (Very very naively, I would have believed normalizing an intermediate value would be "wrong", but I don't actually know anything about this ;P.)
- mncharity 5y ago> strictly speaking Perhaps think of it as two steps? One of physics and biology, using minimally-flawed spectra, CMFs, and math, to get a plausible chromaticity. And a separate step of communication, using standards of sRGB and image ICC tags (rendering intent), to get browsers to convey that chromaticity to the user as a minimally-misleading (for the use case) color. Thus the 10 vs 2 deg CMF choice might depend on the physical angular size of the emitting area. And before browsers supported rendering intent, for use cases where users were eyeball comparing the color with screen white, one might calculate using a very non-standard D58 white-point, as the blue-ish D65 would make white chromaticity render as a pink color, with users misled to think the chromaticity was pink.