Image Pipeline etc.
Forum rules
Please upload a testscene that allows developers to reproduce the problem, and attach some images.
Please upload a testscene that allows developers to reproduce the problem, and attach some images.
Image Pipeline etc.
Hi,
I like working with LuxCore a lot, but i seem to be running into things i don't understand or get wrong with the image pipeline. My issues revolve around white balancing, tonemapping and light group compositing. A few examples:
- Empty scene, emitter plane with 3000 Kelvin Blackbody. Image Pipeline on Camera - White Balance set to 3000K. Should be white, seems to do nothing
- I can add spectral textures as Blackbody to geo emitters, yet i do not find a way add them to light sources, where they would be at least as handy
- Reinhard Tonemapper does what it should, yet is (sanely) not propagated into the light group render AOVs. If i composit the AOVs in Blenders Compositor, there is no Reinhard, just the "Tonemapper", which seems to work very strangely and i do not get anything but very washed out results compared to the Reinhard from the LuxCore image pipeline
Does anyone have a neat workflow on how to use the image pipeline together with lightgroups and the compositor?
Thanks!
I like working with LuxCore a lot, but i seem to be running into things i don't understand or get wrong with the image pipeline. My issues revolve around white balancing, tonemapping and light group compositing. A few examples:
- Empty scene, emitter plane with 3000 Kelvin Blackbody. Image Pipeline on Camera - White Balance set to 3000K. Should be white, seems to do nothing
- I can add spectral textures as Blackbody to geo emitters, yet i do not find a way add them to light sources, where they would be at least as handy
- Reinhard Tonemapper does what it should, yet is (sanely) not propagated into the light group render AOVs. If i composit the AOVs in Blenders Compositor, there is no Reinhard, just the "Tonemapper", which seems to work very strangely and i do not get anything but very washed out results compared to the Reinhard from the LuxCore image pipeline
Does anyone have a neat workflow on how to use the image pipeline together with lightgroups and the compositor?
Thanks!
Last edited by Gobo on Wed Sep 16, 2020 9:30 am, edited 1 time in total.
Re: Image Pipeline etc.
About white balance there is something strange.
In my opinion is not working well or, at least, I can't understand how should it work.
It's very easy to reproduce, as you wrote.
In my opinion is not working well or, at least, I can't understand how should it work.
It's very easy to reproduce, as you wrote.
Re: Image Pipeline etc.
But are you working inside Blender or using directly the LuxCore API ?
Reinhard is an "auto" balancing tone mapper, it uses the total image luminance for his work and, indeed, the total image luminance of a single light group is different from the luminance of all light groups.
You need to use a "fixed" tonemapper (something like linear tonemapping) in order to apply the same parameters to the single light group and to the sum of them.
Re: Image Pipeline etc.
Sorry, forgot to add that - all inside blender.
Re: Image Pipeline etc.
Ok, I will test the case you described and see what happen.
Re: Image Pipeline etc.
Would it be silly to think the LuxCore image pipeline would make sense as a single Node for use in the Blender Compositor?
Re: Image Pipeline etc.
I have reworked the support for white balance plugin (and light groups white balance). The source of the problem was that white balance plugin was applying the the white point, not reversing it. So the proposed test (3000K black body + 3000K white balance) was shifting the temperature 2 times in the same direction instead of applying it to light source and than reversing it in post processing.
I have added two new parameters both to white balance plugin and light groups support: ".reverse" and ".normalize".
Code: Select all
film.imagepipeline.0.type = WHITE_BALANCE
film.imagepipeline.0.temperature = 3000
# Default value: true
film.imagepipeline.0.reverse = 1
# Default value: false
film.imagepipeline.0.normalize = 0
#
film.imagepipeline.1.type = TONEMAP_LINEAR
film.imagepipeline.1.scale = 1
#
film.imagepipeline.2.type = GAMMA_CORRECTION
film.imagepipeline.2.value = 2.2
Code: Select all
scene.textures.lighttex.type = blackbody
scene.textures.lighttex.temperature = 3000
scene.textures.lighttex.normalize = 0
This is a rendering with black body 3000K and white balance 6500K:
and it is "warm" as expected. This is a rendering with black body 3000K and white balance 3000K:
and it is "neutral" as expected. This is a rendering with black body 6500K and white balance 3000K:
and it is "cold" as expected.
This should be coherent with what people expect.
Note: by setting ".reverse" default value to "true", I'm breaking the compatibility with the past behavior but this shouldn't be a big deal.
Re: Image Pipeline etc.
Thank you very much, master!
└(=^‥^=)┐
└(=^‥^=)┐
Re: Image Pipeline etc.
Great. Thank you very much!!!
Re: Image Pipeline etc.
tested with the daily build but it seems not working.
And, actually it seems it brokes also the tonemapping.
I mean inside Blender, not tested with the standalone.
simple scene. one area light, one cam, a cube and a plane (both with disney mat).
the light (with power mode) and the cam is set like this and I get correctly this yellowish render
The I switch ON white balance
Then I select "reverse" as white balance mode
And, actually it seems it brokes also the tonemapping.
I mean inside Blender, not tested with the standalone.
simple scene. one area light, one cam, a cube and a plane (both with disney mat).
the light (with power mode) and the cam is set like this and I get correctly this yellowish render
The I switch ON white balance
Then I select "reverse" as white balance mode