Wavelength to XYZ - what CMFs should I actually be using? #767
Replies: 1 comment 3 replies
-
Hi @aarondemolder and Welcome! First, thanks for the kind words :)
As you might have discovered, they will be very much out-of-gamut for sRGB!
The data for the CIE 1931 2° Standard Observer is that of the CIE and thus does not have the Judd-Vos correction.
This is correct and raises an important question, one that annoys the CIE extremely: many RGB colourspaces are not spectral defined thus they cannot be migrated under another observer trivially. What are the primaries of sRGB under the CIE 1964 10° Standard Observer?
I guess it would depend on what you are trying to achieve, but you are fortunate enough that your display (might encompass) encompasses sRGB (haven't checked the other primaries), so that display should be able to represent all the sRGB gamut without trouble. |
Beta Was this translation helpful? Give feedback.
-
Hey!
This is an excellent resource, and wanted to first of all thank you for the work and making it available. This has been quite a learning experience.
I'm having a bit of confusion with the wavelength_to_XYZ function with various datasets and hoped you could point me in the right direction.
If I have 3 laser sources, 643nm, 520nm and 450nm, and I want to display sRGB content on them, I want to create a matrix that will convert sRGB -> XYZ -> Display.
So I use a cmfs to get my XYZ values for the primaries.
I can then go through the process to get the output matrix, but I notice that there's significant differences to my blue using various data sources because of the short wavelength differences. Where I am getting purple instead of blue. Does the data here take into account the corrections to V(λ) given by http://cvrl.ioo.ucl.ac.uk/database/text/cmfs/ciexyz31.htm or does it only use the original dataset?
I chose 1931 2 deg because it's what I think we can assume for sRGB, unless that assumption is incorrect? Should I instead be using CIE 2012 2 Degree Standard Observer?
Bonus problem:
How can I best avoid hue shift from blue? Where my primary is not along the same axis as for example a rec709 -> BT2020 conversion. Best shown by this section of comparison on a 1976 u,v plot:
(white triangle is my display gamut, yellow= ACEScg, blue/red dot is DCI-P3 and rec709)
Any guidance on this would be absolutely fantastic.
Thank you!
Aaron
Edit: made a silly suggesting sRGB had wavelength primaries and wasn't just a fixed matrix
Beta Was this translation helpful? Give feedback.
All reactions