Whatever fit better the intuitive concept of what the Convergence AOV: it should start with a (nearly) white image (i.e. all pixels far from convergence) and end with a black image (i.e. all pixels under the halt threshold).alpistinho wrote: ↑Thu Apr 11, 2019 1:02 amDo you want me to normalize this or should I use the same code as before?
Adaptive sampling improvements
Re: Adaptive sampling improvements
Re: Adaptive sampling improvements
You have to add the code for the new AOV in a lot of places, just search for an old one and add the new one everywhere it is mentioned. The specific problem is the lack of a "case" for the new AOV, here: https://github.com/LuxCoreRender/LuxCor ... s.cpp#L119alpistinho wrote: ↑Thu Apr 11, 2019 1:01 am I have wrote the changes to create the new NOISE AOV, and the necessary changes on the convergence test code.
I have broken LuxCoreUI and haven't been able to fix yet. I am getting:Code: Select all
RUNTIME ERROR: Unknown FilmChannelType in Film::GetChannelCount(): 1073741824
Re: Adaptive sampling improvements
Does the daily build contain the new adaptive sampling, and does it work with bidir?
- alpistinho
- Developer
- Posts: 198
- Joined: Thu Jul 05, 2018 11:38 pm
- Location: Rio de Janeiro
Re: Adaptive sampling improvements
Yes and yes. Please report any issues you find!
Re: Adaptive sampling improvements
It looks like brighter parts get much more samples.
I'm not in front of PC right now. Do you need an example scene?
I'm not in front of PC right now. Do you need an example scene?
- alpistinho
- Developer
- Posts: 198
- Joined: Thu Jul 05, 2018 11:38 pm
- Location: Rio de Janeiro
Re: Adaptive sampling improvements
If you have a scene that you believe the sampling is suboptimal, please share
Re: Adaptive sampling improvements
So, I've first seen the issue with this scene (100 samples in both case, warmup and test step is 5 with adaptivity):
But the samplecount difference by brightness is there in the simplest case too (50 samples, warmup and test step is 1):
I've attachet this second, simple test scene.
But the samplecount difference by brightness is there in the simplest case too (50 samples, warmup and test step is 1):
I've attachet this second, simple test scene.
- Attachments
-
- AdaptivityTest2.blend
- (504.78 KiB) Downloaded 141 times
Re: Adaptive sampling improvements
It is intended and the result of this line of code: https://github.com/LuxCoreRender/LuxCor ... t.cpp#L121
Code: Select all
const float imgSum = imgR + imgG + imgB;
const float diff = (imgSum != 0.f) ?
((dr + dg + db) / sqrt(imgR + imgG + imgB)) : 0.f;
It is about perception so we can argue if it is rightThe square root in the denominator is motivated by the logarithmic response of the human visual system to luminance. The term here behaves similarly, is easier to evaluate and was found to yield slightly better results.
- alpistinho
- Developer
- Posts: 198
- Joined: Thu Jul 05, 2018 11:38 pm
- Location: Rio de Janeiro
Re: Adaptive sampling improvements
Hi,
I hope to finish the discussed changes this weekend.
@Dade, can you give me a wiki account so I can update the SDL page when I change it?
@Provisory,
As Dade said, the metric drives the sampling to the brighter regions due to the mentioned psychovisual considerations.
Do you think this is inappropriate?
I hope to finish the discussed changes this weekend.
@Dade, can you give me a wiki account so I can update the SDL page when I change it?
@Provisory,
As Dade said, the metric drives the sampling to the brighter regions due to the mentioned psychovisual considerations.
Do you think this is inappropriate?
Re: Adaptive sampling improvements
In the posted example picture, the bright lamp appears noise-free to me in both renders.
However, the wall is clearly more noisy in the render with adaptive sampling.
In general, I agree that a noise metric should be based on the human vision system, but the metric that is currently used does not seem very good at this to me.
By the way, it looks like the current metric only compares old with new, but not neighboring pixels, is that correct?
However, the wall is clearly more noisy in the render with adaptive sampling.
In general, I agree that a noise metric should be based on the human vision system, but the metric that is currently used does not seem very good at this to me.
By the way, it looks like the current metric only compares old with new, but not neighboring pixels, is that correct?