Convergence AOV

Use this forum for general user support and related questions.
User avatar
Sharlybg
Supporting Users
Posts: 815
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: ADAPTIVITY

Post by Sharlybg » Mon Nov 05, 2018 9:00 pm

lacilaci wrote:
Mon Nov 05, 2018 10:30 am
Ok, let's try something different...

I want to render, go into settings and see adaptivity, read the tooltip and it says that higher values focus on more noisy areas. So I enable it and get what's in attachment.
(default noise threshold and 64warmup and 64test step samples, 60 sec rendering giving roughly 700 samples - more adaptivity more noise :!: )
IF what i read is true I'm losing almost 4X time the normale speed each days :shock:
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA

lacilaci
Posts: 346
Joined: Fri May 04, 2018 5:16 am

Re: ADAPTIVITY

Post by lacilaci » Mon Nov 05, 2018 9:11 pm

Sharlybg wrote:
Mon Nov 05, 2018 9:00 pm
lacilaci wrote:
Mon Nov 05, 2018 10:30 am
Ok, let's try something different...

I want to render, go into settings and see adaptivity, read the tooltip and it says that higher values focus on more noisy areas. So I enable it and get what's in attachment.
(default noise threshold and 64warmup and 64test step samples, 60 sec rendering giving roughly 700 samples - more adaptivity more noise :!: )
IF what i read is true I'm losing almost 4X time the normale speed each days :shock:
well test out if adaptivity helps you or not. In my observations it is always worse, but i dont do caustics.

User avatar
B.Y.O.B.
Developer
Posts: 1732
Joined: Mon Dec 04, 2017 10:08 pm
Location: Germany
Contact:

Re: Convergence AOV

Post by B.Y.O.B. » Mon Nov 05, 2018 9:50 pm

Did you try with one of the cameras from your "first steps" project?
For example the sky should be detected as noise-free immediately and no longer sampled.

From the scene you posted in this thread I agree that there are areas where the human brain sees the noise distribution a lot different than the algorithm LuxCore is using.
By the way like Dade I don't think the noise detection should include tonemapping, it would lead to problems if you start with an overexposed render and later adjust the tonemapping to alter the brightness - suddenly a lot of areas that were overexposed to white (or underexposed to black) would show up with a lot of noise.
I think it should be possible to make the algorithm detect noise more in tune with the human brain - maybe use some log scale for brighter values?
Support LuxCoreRender project with salts and bounties

User avatar
Dade
Developer
Posts: 1458
Joined: Mon Dec 04, 2017 8:36 pm

Re: Convergence AOV

Post by Dade » Mon Nov 05, 2018 10:04 pm

B.Y.O.B. wrote:
Mon Nov 05, 2018 9:50 pm
I think it should be possible to make the algorithm detect noise more in tune with the human brain - maybe use some log scale for brighter values?
Yup, human eye is not equally sensible to all kind of noise (especially at different level of luminance). While, from a mathematical point of view, variance/noise is the same, human perception can be a different story.
Now, as always, when the human factor is involved, there are a lot of personal opinions more than facts but, if you dig in the old work for noise driven metropolis sampler I did for old Lux, you will find some reference to human eye being more sensitive to noise in darker regions than in brighter one.
I will look if I can come out with a solution (like the one you suggested).
Support LuxCoreRender project with salts and bounties

alpistinho
Posts: 7
Joined: Thu Jul 05, 2018 11:38 pm

Re: Convergence AOV

Post by alpistinho » Mon Nov 05, 2018 10:08 pm

B.Y.O.B. wrote:
Mon Nov 05, 2018 9:50 pm
I think it should be possible to make the algorithm detect noise more in tune with the human brain - maybe use some log scale for brighter values?
Probably gamma-correcting the pixel before calculating the convergence since this is designed to approximate our eyes behavior, no?
The idea is the same, however. We perceive smaller variations in dark regions (i.e noise) than we do in the brighter

kintuX
Posts: 248
Joined: Wed Jan 10, 2018 2:37 am

Re: Convergence AOV

Post by kintuX » Mon Nov 05, 2018 10:41 pm

Reminds me of an approach that Troy Sobotka mentioned - Arri Alexa uses to get better natural tonality, which is also the base for Filmic tone mapping.
1. A colour in the physical light quantity sense, ignoring the magic deep complexity of the psycho side of psychophysical, is expressed as ratios between three lights in an RGB system.

2. The purity of a heavily saturated colour is expressed by wide ratios between the lights. A massive intensity, coupled with two low to minimal intensities, is a very saturated primary, for example.

3. No matter how hard you try, a logarithmic or otherwise transfer function will not compress the ratios of a saturated colour. This means it will appear to “float” in your camera photo; the colour seems to persist too strongly in relation to the other colours.

4. The points above are exacerbated by the idea that sensors, and transfer functions, will always have a limited range, which is technically a “good thing”. The downside is that as the light intensities hit that limit, the original ratios will become broken and the famous colour skews take over. Skin turns nasty yellow, skies turn nasty cyan, and ever so often you’ll spot the other member of the Notorious Six, magenta.
In this case, considered as a sort of parallel to human perception of noise...

Otherwise, IMO, present solution feels like working with photography.
So to me, it's nothing wrong - dark, enclosed areas will always produce more noise, unless you:
1. render (gather light) longer
2. use finer film (better sampler)
3. set, balance the scene lighting.

Of course, all this comes valuable if & only after the scene is structured & constructed properly - in compliance with physical reality or so called ground truth... and this is only one. // discretion advised and tolerance acceptable

lacilaci
Posts: 346
Joined: Fri May 04, 2018 5:16 am

Re: Convergence AOV

Post by lacilaci » Tue Nov 06, 2018 6:02 am

B.Y.O.B. wrote:
Mon Nov 05, 2018 9:50 pm
Did you try with one of the cameras from your "first steps" project?
For example the sky should be detected as noise-free immediately and no longer sampled.

From the scene you posted in this thread I agree that there are areas where the human brain sees the noise distribution a lot different than the algorithm LuxCore is using.
By the way like Dade I don't think the noise detection should include tonemapping, it would lead to problems if you start with an overexposed render and later adjust the tonemapping to alter the brightness - suddenly a lot of areas that were overexposed to white (or underexposed to black) would show up with a lot of noise.
I think it should be possible to make the algorithm detect noise more in tune with the human brain - maybe use some log scale for brighter values?
Hmm. I only tried with night setup cause even when I rendered a dark region until sample count shown -1 and halted it was still noisy, this is where I learned adaptivity is making things worse.

Now I guess, sun lit scene would benefit in higher values sampling using adaptivity. But I'm a big fan of clamping so I use as low values as I can before visuals break and so again most of VISIBLE noise always came from shadows and low light interior.

At some point indirect caching will help with such cases but I still think adaptivity should work within a range where it makes sense for the user (imagine my confusion as a simpleton seeing that I get less noise without adaptivity).

I will do more comparisons as I find time and post them here.

User avatar
FarbigeWelt
Posts: 302
Joined: Sun Jul 01, 2018 12:07 pm
Location: Switzerland
Contact:

Re: Convergence AOV

Post by FarbigeWelt » Tue Nov 06, 2018 12:34 pm

In my opinion this is an interesting, constructive thread.
I like to have an experimental setting because I think intensity of an additional sample should be added in relation of previous sample/s. If you add and just average you may get fireflies or noticeable noise, particularly in areas close to tonemaped intensity limits. I assume noise is visible with the same sensitivity in dark and bright areas. Finally, one must be able to have orientation from dusk til dawn and daylight fog. These are natural phenomena for low contrast and color tones in darkness and brightness. Back to the experiment, a new pixel should be added considering a weight ratio and/or a threshold (e.g. clamp). Weight could be a mathematical expression, e.g. I_newInDetector=I_ray*x+I_alreadyInDetector, x adjustable by user or algorithm.
EDIT: I know this example would not solve the noise issue yet. As soon as I have time for it I will propose an appropriate one.
Microsoft Windows 10 Professional, intel i7 4770K, 32 GB, AMD R9 290x 4 GB, AMD R9 390x 8 GB
Instagrammer, please join #luxcorerender for your renderings.

lacilaci
Posts: 346
Joined: Fri May 04, 2018 5:16 am

Re: Convergence AOV

Post by lacilaci » Wed Nov 07, 2018 3:36 pm

So I've tried few region renders on my "first steps" project.
default thersholds and warmup+test step values changing only adaptivity strength / sunlight with default values and clamping of 50 000.

Nightime shows same observations as with monkey(more adaptivity gives worse performance in terms of noise)
Daytime shows almost no changes, it's litteraly a pixel here ant there that has a different value but exactly the same result.

User avatar
FarbigeWelt
Posts: 302
Joined: Sun Jul 01, 2018 12:07 pm
Location: Switzerland
Contact:

Re: Convergence AOV

Post by FarbigeWelt » Sat Nov 10, 2018 5:43 pm

Meanwhile I did some calculations, although my intuions tells me there is a practical, essy solution to reduce noise but the solution seems more a qute complex matter of statistics, the latter would need lots of ram because one had to evaluate a series of samples per pixel, say at least eight. However, I will perform some further calculations.
Microsoft Windows 10 Professional, intel i7 4770K, 32 GB, AMD R9 290x 4 GB, AMD R9 390x 8 GB
Instagrammer, please join #luxcorerender for your renderings.

Post Reply