Hi All
I have a question about using the existing utilities for converting a CIE (x,y) chromaticity to RGB for use of adjusting the default sun and sky colors. I have researched the following site to get some background about this:
From searching through the archive of this message board I came across a
response by Greg to a previous question that I had for adjusting the sun color:
http://www.radiance-online.org/pipermail/radiance-general/2005-January/002263.html
My question is how may I convert from a CIE(x,y) chromaticity to RGB using on two variables as was performed for the above. The Radiance function file xyz_rgb.cal requires three variables (x,y and the luminosity, z). The reason why I am asking this is because I wish for the values that I'll employ to be in the physically valid range (i.e. .265074126*r + .670114631*g + .064811243*b = 1).
Thanks
Marcus
Hi Marcus,
To get RGB values from CIE Yxy input, you need an additional conversion from Yxy to XYZ, i.e.:
X = Y*x/y;
{ Y = Y; }
Z = Y*(1 - x - y)/y;
This can go inline with xyz_rgb.cal like so:
rcalc -e 'Y_i=$1;x_i=$2;y_i=$3' -e 'X_i=Y_i*x_i/y_i;Z_i=Y_i*(1-x_i-y_i)/y_i' -f xyz_rgb.cal
If you give Y x y on input, you'll get RGB on output. (You can use a Y of 1 if you like.)
-Greg
···
From: "Marcus Jacobs" <[email protected]>
Date: June 23, 2005 8:20:24 PM BDT
Hi All
I have a question about using the existing utilities for converting a CIE (x,y) chromaticity to RGB for use of adjusting the default sun and sky colors. I have researched the following site to get some background about this:
Colour Rendering of Spectra
From searching through the archive of this message board I came across a
response by Greg to a previous question that I had for adjusting the sun color:
[Radiance-general] Sun Color
My question is how may I convert from a CIE(x,y) chromaticity to RGB using on two variables as was performed for the above. The Radiance function file xyz_rgb.cal requires three variables (x,y and the luminosity, z). The reason why I am asking this is because I wish for the values that I'll employ to be in the physically valid range (i.e. .265074126*r + .670114631*g + .064811243*b = 1).
Thanks
Marcus
Hi Marcs,
These are the formulas you need to convert from Yxy to radiance-rgb:
X=x*Y/y;
Z=(1-x-y)*Y/y;
r= 2.565*X -1.167*Y -0.398*Z;
g= -1.022*X +1.978*Y +0.044*Z;
b= 0.075*X -0.252*Y +1.177*Z;
Raphael
···
At 23.06.2005 21:20, you wrote:
Hi All
I have a question about using the existing utilities for converting a CIE (x,y) chromaticity to RGB for use of adjusting the default sun and sky colors. I have researched the following site to get some background about this:
Colour Rendering of Spectra
From searching through the archive of this message board I came across a response by Greg to a previous question that I had for adjusting the sun color:
[Radiance-general] Sun Color
My question is how may I convert from a CIE(x,y) chromaticity to RGB using on two variables as was performed for the above. The Radiance function file xyz_rgb.cal requires three variables (x,y and the luminosity, z). The reason why I am asking this is because I wish for the values that I'll employ to be in the physically valid range (i.e. .265074126*r + .670114631*g + .064811243*b = 1).
Thanks
Marcus
_______________________________________________
Radiance-general mailing list
[email protected]
http://www.radiance-online.org/mailman/listinfo/radiance-general