Page 1 of 2
Color rendering
Posted: Tue Oct 19, 2010 7:34 am
by galinette
Dear Indigo team,
For work purposes, I am trying to evaluate the Indigo capabilities in terms of "color proof" image rendering.
For this, I have modified an envmap with photoshop and added flat color squares with the following colors : red(0.5,0,0), green(0,0.5,0), blue(0,0,0.5) and three greys (with intensities of 0.5, 0.25, 0.125)
Then I made a render with that envmap on a very simple scene (you may recognize the soft & exporter!) using the linear tonemapper. The igs code was edited, to set the envmap emitter blackbody to 5503K, and to adjust the gain. The camera WB was set to D55(5503K). I save under EXR and reopen in photoshop.
Here are my first results and impressions:
- The grays are not gray anymore : I have RGB values such as (98,95,98) in the gray squares. Given the two identical WB temps used for the envmap and the camera, colors should be normally preserved
- Same for the pure red, green and blue colors : they are not pure anymore
- The intensity ratio between gray levels is not 2 anymore : its something like 1.7, as if there was some gamma problem. This means the gamma used in the envmap reader is not the same as the one used in the render image saving
- There is a huge vignetting (darkers corners) effect with that lens (120° FOV). Whereas it may look very photographic (real lenses have vignetting), I would expect Indigo to have at least the option not to do that optical imperfectness! Vignetting is best added in post prod for those who want it.
- Last minor issue : the gain of the envmap emitter material seems to have no effect : by changing it from 1 to 1000, I need to set the same tonemapping gain for having a correct exposure.
I'm ready to give some necessary support if you would like to improve the color chain in Indigo. For work, I need to make photorealistic renders of glass materials from measured data, and the color correctness is very important.
Best regards,
Etienne
Re: Color rendering
Posted: Tue Oct 19, 2010 11:52 am
by OnoSendai
Hi Galinette,
Very interesting experiments!
Can you please email me the EXR?
Thanks,
nik
Re: Color rendering
Posted: Tue Oct 19, 2010 1:11 pm
by StompinTom
galinette wrote:
[*]There is a huge vignetting (darkers corners) effect with that lens (120° FOV). Whereas it may look very photographic (real lenses have vignetting), I would expect Indigo to have at least the option not to do that optical imperfectness! Vignetting is best added in post prod for those who want it.
+10 !!!
Re: Color rendering
Posted: Tue Oct 19, 2010 3:40 pm
by OnoSendai
I added a vignetting switch, just for you guys

Re: Color rendering
Posted: Tue Oct 19, 2010 7:29 pm
by Pibuz
That is great news.
VERY looking forward to more postprocess tools Indigo-integrated

Re: Color rendering
Posted: Wed Oct 20, 2010 12:21 am
by StompinTom
OnoSendai wrote:I added a vignetting switch, just for you guys

Thaaaank you! Now I can tiltshift to my heart's content.
Re: Color rendering
Posted: Wed Oct 20, 2010 8:38 am
by galinette
Hi Nick,
The gray level ratio issue is : I have 3 gray squares in the envmap, having intensity ratios of 2 (one is half of the brightest, one is quarter of the brightest)
On the final image, the ratios are not 2, but something like 1.35 (if you conpensate the vignetting)
This could correspond to the following issue : the envmap values are used linearly, but the saved exr is encoded with a gamma of something like 2.2 ( 2^(1/2.2) ~ 1.35 )
Is that the case? I would expect an HDR output to be encoded linearly, without any gamma.
Regards,
Etienne
Re: Color rendering
Posted: Wed Oct 20, 2010 10:03 am
by galinette
Hi Nick,
I have made a new test, as it appears that the D65 standard spectrum is quite far from a 6500K blackbody distribution.
I have replaced the envmap blackbody by the real D65 spectrum in the igs code:
Code: Select all
<base_emission>
<constant>
<regular_tabulated>
<start_wavelength>380E-9</start_wavelength>
<end_wavelength>780E-9</end_wavelength>
<num_values>81</num_values>
<values>
49.9755 52.3118 54.6482 68.7015
82.7549 87.1204 91.486 92.4589
93.4318 90.057 86.6823 95.7736
104.865 110.936 117.008 117.41
117.812 116.337 114.861 115.392
115.923 112.367 108.811 109.083
109.354 108.578 107.802 106.296
104.79 106.24 107.689 106.047
104.405 104.226 104.046 102.023
100 98.1671 96.3342 96.0611
95.788 92.2368 88.6856 89.3459
90.0062 89.8026 89.5991 88.6489
87.6987 85.4936 83.2886 83.4939
83.6992 81.863 80.0268 80.1207
80.2146 81.2462 82.2778 80.281
78.2842 74.0027 69.7213 70.6652
71.6091 72.979 74.349 67.9765
61.604 65.7448 69.8856 72.4863
75.087 69.3398 63.5927 55.0054
46.4182 56.6118 66.8054 65.0941
63.3828
</values>
</regular_tabulated>
</constant>
</base_emission>
Now, I get perfect grays and pure colors. It could be interesting to have access to these standard spectra (D65, D55, A, C, F...) for emitters and not only for the camera. As it is possible to use them with regular_tabulated, maybe this is an exporter feature.
Regarding the linearity/gamma issue, apologies... In fact, when you convert a HDR to 8bit in Photoshop, using a gamma of 1, it is still applying a gamma of 2.2 to the output, causing these linearity errors... The EXR output from Indigo is well linear.
So, the only issue I have now is vignetting, which is clearly an aliasing from Indigo.
Regards,
Etienne
Re: Color rendering
Posted: Wed Oct 20, 2010 11:31 am
by OnoSendai
Hi Etienne,
I ended up making my own EXR.
The renderings below are with vignetting off (new feature

).
The first image:
6500K Correlated colour temperature 'black-body' illuminant, D65 whitepoint.
The light grey colour has RGB values (0.8020, 0.7627, 0.7979), which has a nasty purple tint to it.
The second image:
D65 Illuminant as given by you, and a D65 whitepoint.
The light grey colour has RGB values (0.7686, 0.7744, 0.7738)
So it seems that using 6500K blackbody as opposed to using the actual D65 SPD. gives a purple colour tint.
Re: Color rendering
Posted: Wed Oct 20, 2010 10:29 pm
by galinette
Thanks, that confirms my tests.
It would be very convenient to add some a spectrum classe, in addition to <blackbody> or <regular_tabulated>, which gives access to the standard illuminants. To me, it's not a problem to hack the igs with custom spectra, but that would help other users having a color proof lighting.
These small differences are quite visible on a high-end monitor (Eizo CG234T) and I was wondering why my grey sky was not grey...
I want that non-vignetting feature!!!!
Lastly, how would it be possible to have the same luminance levels in the rendered exr image and in the envmap exr? The envmap blackbody gain has no effect, and the camera lens setting (aperture) changes the exposure, my output image is always much darker (around -13EV) than the source. How could I manage to keep the gain?
Thanks,
Etienne
Re: Color rendering
Posted: Thu Oct 21, 2010 11:29 pm
by OnoSendai
Hi Etienne,
I think it is a good idea to add the standard illuminants as built-in spectrum types, I will do that.
I'm not sure about your last question. Depending on how you set up the background material, the envmap exr values will be converted to different measures (luminance, spectral radiance etc..), with different scaling factors.
The resulting rendered exr will be in different units yet again (each channel is something like energy - spectral irradiance integrated over the duration of the exposure, integrated over all wavelengths multiplied by the colour matching functions etc..)
I guess it would be possible to pick the tonemapping scale to compensate for all the other factors.
Re: Color rendering
Posted: Fri Oct 22, 2010 2:12 am
by galinette
Hi Nick,
That's exactly what I want to do. I would like to calibrate the parameters (envmap, camera, TM) so that I get the same levels at the end.
But currently, I have only two options, and neither work:
- The blackbody gain in the envmap material definition seems to have no effect on output levels. Bug?
- The tonemapper gain has no effect (but that's logical since the exr output is untonemapped)
Etienne
Re: Color rendering
Posted: Fri Oct 22, 2010 3:33 am
by StompinTom
Would it be possible to get a quick build out with the vignetting toggle? It would save me a lot of screwing around in Photoshop this weekend...
Re: Color rendering
Posted: Fri Oct 22, 2010 11:05 am
by OnoSendai
Hi Tom,
that should be possible.
I'll either send you a build or do a 2.6.2 release with it included.
Re: Color rendering
Posted: Tue Jan 31, 2012 10:06 am
by CTZn
galinette wrote:I have replaced the envmap blackbody by the real D65 spectrum in the igs code:
Code: Select all
<base_emission>
<constant>
<regular_tabulated>
<start_wavelength>380E-9</start_wavelength>
<end_wavelength>780E-9</end_wavelength>
<num_values>81</num_values>
<values>
49.9755 52.3118 54.6482 68.7015
82.7549 87.1204 91.486 92.4589
93.4318 90.057 86.6823 95.7736
104.865 110.936 117.008 117.41
117.812 116.337 114.861 115.392
115.923 112.367 108.811 109.083
109.354 108.578 107.802 106.296
104.79 106.24 107.689 106.047
104.405 104.226 104.046 102.023
100 98.1671 96.3342 96.0611
95.788 92.2368 88.6856 89.3459
90.0062 89.8026 89.5991 88.6489
87.6987 85.4936 83.2886 83.4939
83.6992 81.863 80.0268 80.1207
80.2146 81.2462 82.2778 80.281
78.2842 74.0027 69.7213 70.6652
71.6091 72.979 74.349 67.9765
61.604 65.7448 69.8856 72.4863
75.087 69.3398 63.5927 55.0054
46.4182 56.6118 66.8054 65.0941
63.3828
</values>
</regular_tabulated>
</constant>
</base_emission>
[...] As it is possible to use them with regular_tabulated, maybe this is an exporter feature.
Hi Etienne,
I have included this table as a preset for spectra in MtI. By the way I am looking for miscellaneous computed or measured tables that I could add easily, is there a source that you would recommend for harvesting ? Illuminants, absorbtion and more eventually.
I think there is an option to generate data with xls tables, likewise I would not refuse a few pointers.
Thank you.