Again transmissivity for color filter, / glass

Hi Greg,

OK, i think i was dead wrong! Thinking about some things makes your brain go crazy.
But i don't want to give up. I went through your paper, several times, and through your discussion with Will on the list about "specifying sources".
Additionally i read "Tools for Lighting Design an Analysis".
To get this right from scratch:

1. I have reflectance values for surfaces in XYZ. Measured with an spectrofotometer with a D65 test source inside. Actually it was the same
   Minolta CM-2002 as in your paper. I have data with and without the specular component. (SCI or SCE) Which on would you suggest or does it depend on the surface?
2. These surfaces are to be seen in a scene with sources which have color temperatures ranging from 2400 to 3000 Kelvin.
    For these sources i calculated the xy coordinates with blackbody.cal.
   3. I think this is the first problem. The reflectance values for the surfaces should have been measured with a tungsten test illuminant in the spectrofotometer.
    And the spectral data would have been better than XYZ. Is that right?

4. As i understand you in your conversation with Will, the premultiplying part is only efficient if i would have spectral data. If i have only XYZ data, i convert both reflectance values and color values of the sources to Sharp RGB color space like so:
rcalc -f xyz_rgb.cal -f Sharp.cal -e '$1=R($1,$2,$3); $2=G($1,$2,$3); $3=B($1,$2,$3);'

5. Now i render my picture and add the correct primaries to the picture header with your suggested script. (addSharp.csh)

6. When i call 'ximage' with rtrace -I, i should get the right illuminance values or not?

7. To change the primaries for a special display i use 'pcond' later. I guess 'pcond' does a white point transformation?

8. Does 'normtiff' does a white point transformation as well?

Would this procedure be the best what i can get out if my data for "correct" color display?
Many thanks again and regards,

Christian

Hi Christian,

It sounds like we're back on track, here. I'm relieved.

1. I have reflectance values for surfaces in XYZ. Measured with an spectrofotometer with a D65 test source inside. Actually it was the same
  Minolta CM-2002 as in your paper. I have data with and without the specular component. (SCI or SCE) Which on would you suggest or does it depend on the surface?

I typically use the SCE to get the diffuse and the difference between the SCI and SCE (specular included and excluded) measurements to get the specular reflectance component, but it only works for fairly smooth surfaces. If a surface is too rough, the components get mixed in the glossy reflection, which ends up being larger than the specular trap in the CM-2002.

For non-metals, the SCE value is better for determining the surface color. For metallic surfaces, I would use SCI.

2. These surfaces are to be seen in a scene with sources which have color temperatures ranging from 2400 to 3000 Kelvin.
   For these sources i calculated the xy coordinates with blackbody.cal.
  3. I think this is the first problem. The reflectance values for the surfaces should have been measured with a tungsten test illuminant in the spectrofotometer.
   And the spectral data would have been better than XYZ. Is that right?

Did you erase the info. from the CM-2002? Maybe the spectral data is still there. It would be better to use it if you have it. Even if you used a tungsten illuminant to determine the XYZ value, shifting to a different illuminant without the spectral data is a shaky business.

4. As i understand you in your conversation with Will, the premultiplying part is only efficient if i would have spectral data. If i have only XYZ data, i convert both reflectance values and color values of the sources to Sharp RGB color space like so:
rcalc -f xyz_rgb.cal -f Sharp.cal -e '$1=R($1,$2,$3); $2=G($1,$2,$3); $3=B($1,$2,$3);'

This is correct.

5. Now i render my picture and add the correct primaries to the picture header with your suggested script. (addSharp.csh)

Right.

6. When i call 'ximage' with rtrace -I, i should get the right illuminance values or not?

Umm... It doesn't matter what you give to ximage at that point, since you're having rtrace do the calculation. This is just as well, since ximage ignores the color primary and white point information in the picture header, and would report (slightly) wrong luminance with the 'l' command starting from anything besides Radiance RGB color space.

7. To change the primaries for a special display i use 'pcond' later. I guess 'pcond' does a white point transformation?

Yes. It performs a proper von Kries transformation, using the Sharp color adaptation matrix.

8. Does 'normtiff' does a white point transformation as well?

Yes. If a Radiance converter takes a -p option with 6 arguments, then it's doing color and white point conversion.

Would this procedure be the best what i can get out if my data for "correct" color display?

I think so. I won't make you any warranties, though. Without spectral data, the accuracy is going to be highly dependent on your particular materials.

-Greg