Page 1 of 3

Best noise reduction approach

Posted: Thu Dec 10, 2020 8:45 am
by daros
\Hi, i'm struggling a bit with Oidn which always blurs important details form renderings.
We tried by using multiple samplers but results are very similar one to each other.
In the following image the main problem is the floor in the background which suddenly blurs.
I know there are multiple tricks to avoid this by using albedo, or other channels, as a signal/noise reference for oidn, but i don't know which is the best one. Can someone please help me with that?
View 02 2400x1200.jpg

Re: Best noise reduction approach

Posted: Thu Dec 10, 2020 9:29 am
by B.Y.O.B.
OIDN will use the ALBEDO and AVG_SHADING_NORMAL AOVs when the are present. Did you enable them?
(I'm assuming you are not rendering inside Blender, where this happens automatically)

Re: Best noise reduction approach

Posted: Thu Dec 10, 2020 10:03 am
by daros
Thanks BYOB, yes , we re rendering from command line. Do you think it's enough to enable albedo form the image pipeline or something like that?

Re: Best noise reduction approach

Posted: Thu Dec 10, 2020 10:06 am
by daros
Don't worrie, i think we can manage it now. Thanks !

Re: Best noise reduction approach

Posted: Thu Dec 10, 2020 10:09 am
by Sharlybg
B.Y.O.B. wrote: Thu Dec 10, 2020 9:29 am OIDN will use the ALBEDO and AVG_SHADING_NORMAL AOVs when the are present. Did you enable them?
(I'm assuming you are not rendering inside Blender, where this happens automatically)
Is that enough :

Code: Select all

film.outputs.0.type = "RGB_IMAGEPIPELINE"
film.outputs.0.index = 0
film.outputs.0.filename = "RGB_IMAGEPIPELINE_0.png"
film.outputs.1.type = "ALBEDO"
film.outputs.1.filename = "ALBEDO.exr"
film.outputs.2.type = "AVG_SHADING_NORMAL"
film.outputs.2.filename = "AVG_SHADING_NORMAL.exr"

Re: Best noise reduction approach

Posted: Thu Dec 10, 2020 10:43 am
by Dade
The best (and expansive) solution to help OIDN (and most denoisers) to not loose details is to render at higher resolution (2x or 4x, etc.), denoise, and than scale down to the intended image resolution.

Re: Best noise reduction approach

Posted: Thu Dec 10, 2020 11:09 am
by B.Y.O.B.
@Sharlybg, yes, that looks correct. You should see the difference in the denoised result.

Re: Best noise reduction approach

Posted: Fri Dec 11, 2020 9:14 am
by Sharlybg
B.Y.O.B. wrote: Thu Dec 10, 2020 11:09 am @Sharlybg, yes, that looks correct. You should see the difference in the denoised result.
We are now able to output the OIDN require passes to the disk but we don't know if OIDN is using theses files (we also don't see improvement on the denoising).
Is there a particular folder where to put the files or something to tell OIDN to do to take passes in account ?

Re: Best noise reduction approach

Posted: Fri Dec 11, 2020 9:21 am
by B.Y.O.B.
OIDN doesn't read the files from disk, they are read directly from RAM if the AOVs are enabled in LuxCore.

Re: Best noise reduction approach

Posted: Fri Dec 11, 2020 10:02 am
by Dade
Sharlybg wrote: Fri Dec 11, 2020 9:14 am
B.Y.O.B. wrote: Thu Dec 10, 2020 11:09 am @Sharlybg, yes, that looks correct. You should see the difference in the denoised result.
We are now able to output the OIDN require passes to the disk but we don't know if OIDN is using theses files (we also don't see improvement on the denoising).
Is there a particular folder where to put the files or something to tell OIDN to do to take passes in account ?
The plugin print a warning if they are not available/found (in memory, not on disk): https://github.com/LuxCoreRender/LuxCor ... dn.cpp#L87