OpenImageDenoise

Discussion related to the LuxCore functionality, implementations and API.
User avatar
lacilaci
Donor
Donor
Posts: 1969
Joined: Fri May 04, 2018 5:16 am

Re: OpenImageDenoise

Post by lacilaci »

Browsing forums, it appears that both vray and corona are getting this denoiser too...
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: OpenImageDenoise

Post by Dade »

I added the support for new AVG_SHADING_NORMAL AOV. I assume it is what Intel Denosier is looking for. This is a comparison between SHADING_NORMAL and AVG_SHADING_NORMAL :

avgn.jpg
Support LuxCoreRender project with salts and bounties
epilectrolytics
Donor
Donor
Posts: 790
Joined: Thu Oct 04, 2018 6:06 am

Re: OpenImageDenoise

Post by epilectrolytics »

Dade wrote: Sat Feb 02, 2019 4:45 pmThis is a comparison between SHADING_NORMAL and AVG_SHADING_NORMAL
Looks perfect.
But why to create a new AOV instead of improving the old one, backwards compatibility?
User avatar
lacilaci
Donor
Donor
Posts: 1969
Joined: Fri May 04, 2018 5:16 am

Re: OpenImageDenoise

Post by lacilaci »

Yes this is looking good... Can't wait to try.

I hope this makes first 2.2 alpha version too.
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: OpenImageDenoise

Post by Dade »

epilectrolytics wrote: Sat Feb 02, 2019 5:42 pm
Dade wrote: Sat Feb 02, 2019 4:45 pmThis is a comparison between SHADING_NORMAL and AVG_SHADING_NORMAL
Looks perfect.
But why to create a new AOV instead of improving the old one, backwards compatibility?
Well, the correct one is SHADING_NORMAL while the AVG_SHADING_NORMAL has some meaningless data on edges (like explained by B.Y.O.B. some post ago). But I guess Intel Denoiser uses normal AOV as an hint of where to smooth and where not.
Support LuxCoreRender project with salts and bounties
User avatar
alpistinho
Developer
Developer
Posts: 198
Joined: Thu Jul 05, 2018 11:38 pm
Location: Rio de Janeiro

Re: OpenImageDenoise

Post by alpistinho »

Dade wrote: Sat Feb 02, 2019 4:23 pm
@Acasta69: can you add the intel denoiser to Windows GitHub repository like we do for Intel Embree ? I will do it for Linux.
Hey,

I've got it to compile and linking correctly now. Clearing all the workspace and starting fresh got me through the last mile.
I will try to add the actual code for using the plugin now and hope it doesn't crash at runtime due to some library mismatch.

For now I've added the shared library and the headers manually but I will modify the scripts later to get the files too as soon as we know if the TBB libraries from OIDN and Embree don't conflict.

Thanks,

Daniel
Support LuxCoreRender project with salts and bounties
User avatar
alpistinho
Developer
Developer
Posts: 198
Joined: Thu Jul 05, 2018 11:38 pm
Location: Rio de Janeiro

Re: OpenImageDenoise

Post by alpistinho »

I've added the initial support for the library but couldn't test since LuxcoreUI was refusing to load any test scene, being unable to parse the PLY files included.

Code: Select all

[LuxCore][254.269]   /home/daniel/Documents/lux2/LinuxCompile/LuxCore/scenes/simple
[SDL][254.269] Reading scene: ./simple.scn
[SDL][254.269] Material definition: whitematte
[SDL][254.269] Material definition: redmatte
[SDL][254.269] Material definition: blumatte
[SDL][254.269] Material definition: greenmatte
[SDL][254.269] Material definition: whitelight
[SDL][254.269] Camera type: perspective
[SDL][254.270] Camera position: Point[10.951, -20.663, 8.017]
[SDL][254.270] Camera target: Point[0, 0, 1]
[SDL][254.270] Camera clipping plane disabled
RPly: Error reading 'x' of 'vertex' number 0
RenderConfig loading error: 
Unable to parse PLY file './simple-mat-cube2.ply'
There were also errors during texture parsing

Code: Select all

[LuxCore][25.422]   /home/daniel/Documents/lux2/LinuxCompile/LuxCore/scenes/luxball
[SDL][25.423] Reading scene: ./luxball-copper.scn
[SDL][25.423] Material definition: shell
[SDL][25.423] Material definition: whitematte
[SDL][25.423] Material definition: luxtext
[SDL][25.423] Material definition: blacktext
[SDL][25.423] Material definition: whitelight
RenderConfig loading error: 
Syntax error in texture name: 0,75 0,75 0,75
Any idea of what could be causing this? :oops:
The code is at https://github.com/Alpistinho/LuxCore in the intel_oidn_denoise branch
Thanks
Support LuxCoreRender project with salts and bounties
User avatar
lacilaci
Donor
Donor
Posts: 1969
Joined: Fri May 04, 2018 5:16 am

Re: OpenImageDenoise

Post by lacilaci »

there is an update of the denoiser that fixes some issues with compilation and paths for linux: https://twitter.com/attila_afra/status/ ... 17542?s=09
User avatar
lacilaci
Donor
Donor
Posts: 1969
Joined: Fri May 04, 2018 5:16 am

Re: OpenImageDenoise

Post by lacilaci »

Alright boys and girls, here's how 300 passes look like now with new avg_normal pass. Edges now hold much much better it's almost perfect.

But, here and there you can see edges kinda becoming wobbly and if you look at the normal pass you can see why, sometimes there's a gradient on the object that doesn't make sense and becomes completely black, losing details that would help denoiser!

This might be object shading problem/wrong setup in blender, but I tried flat shading on that part and it just became completely black in the pass....

One way or another, this is now working very well with albedo and avg_normal in hdr mode.
Attachments
compare.jpg
normal.jpg
User avatar
lacilaci
Donor
Donor
Posts: 1969
Joined: Fri May 04, 2018 5:16 am

Re: OpenImageDenoise

Post by lacilaci »

also, here's a 5 minute rendering on a single gtx1060 (rendered at 3000x3000 downscaled to original 1080x1080)
Attachments
passdenoise.jpg
Post Reply