Intel Open Image Denoise

Martin

Moderator
This is actually something extremely interesting since Intel makes really good libraries. They already did the same with Embree which became the raytracing backbone of most production renderers over night. I would say this library has as much potential. And the greatest thing about it is that it's not limited to certain GPU vendors and therefore it works on all Macs.
Just the size of the library worries me a little bit since it is almost 40 MByte big and therefore the file size of Cheetah3D would explode. I also couldn't find any macOS system requirements yet.
 

misoversaturated

Active member
Thanks Martin for responding!

Regarding file size, at least it is way less than the 230MB of the nVidia Optix denoiser which is less effective, slower and not suitable for Macs with AMD graphics.

In order to work really well like in the Sponza example in their gallery it needs an albedo pass in the g-buffer, I think albedo is when the scene is rendered with an ambient light only, without shading (Or change all material diffuse components into emissive and render without lights).
Also a normal pass is needed for the bump info that is not caught in the albedo.

It would get even more effective with adjusted adaptive sampling when the rendering is not stopped when clean but at the noise level the denoiser can deal with.

Sadly I don't understand how to compile stuff from GitHub and have no info about MacOS requirements either.
 

misoversaturated

Active member
They already did the same with Embree which became the raytracing backbone of most production renderers over night. I would say this library has as much potential.
Indeed it looks like many other renderers are going to get this implemented (sparing their developers from working out their own solutions) and apparently it is also easy to do, it took the devs at LuxCore one week to make it work, and it works great, with deep albedo pass even stuff behind glass or seen through mirrors gets properly denoised (Only on Win and Linux latest builds yet).
 

Somian

Member
The fourth image in the gallery looks incredible. Even humans could barely make out the gaps between the bricks on the left side. If that would be incorporated with Cheetah3D, I would totally forgive a 50MB download size increase (or perhaps an option to download the additional feature from within Cheetah).

I assume, if it is based on machine learning, it might contain some pre-trained data, which can get quite big.
 

Attachments

  • Screen Shot 2019-02-07 at 12.00.59 PM.png
    Screen Shot 2019-02-07 at 12.00.59 PM.png
    109.7 KB · Views: 159

NBS

New member
When its implemented, please put or implement it as an option - for me it's to much filtering on it...
 

misoversaturated

Active member
for me it's to much filtering on it...
That's right, and while Cheetah3D has no post editor yet it would be important to have a percentage input (or slider from 0 to 1) for mixing primary and denoised output.
In LuxCore I use about 75% (via Blender compositor).
 

NBS

New member
This is actually something extremely interesting since Intel makes really good libraries. They already did the same with Embree which became the raytracing backbone of most production renderers over night. I would say this library has as much potential. And the greatest thing about it is that it's not limited to certain GPU vendors and therefore it works on all Macs.
Just the size of the library worries me a little bit since it is almost 40 MByte big and therefore the file size of Cheetah3D would explode. I also couldn't find any macOS system requirements yet.

its available here oidn-0.8.1.x86_64.macos.tar.gz

and is also round about 40MB in size :)
 

misoversaturated

Active member
While integrating Intel OIDN into Falcon seemed like a no-brainer at the time Apple has now started transition to their own silicon, in two years no more Intel Macs will be sold.
OIDN denoiser needs SSE4.1 instruction set on the CPU so it won't run on Apple's M1 chip.
From what I've googled, the mobile chips from Apple have also a "neural net" engine that does image refinement (including denoising), apparently for iPhone camera RAW output.
Making a 3D-render-ready denoising module from that is probably a huge task.

Intel providing a free denoiser on GitHub for everyone was a great gift to the 3D render community, I'm not sure anyone will do something similar on the Apple silicon side.
 

misoversaturated

Active member
That looks promising!
It works with info passes, even across animation frames and seems easy to implement.
If the quality is ok, Intel denoiser implementation could be skipped as it will become obsolete anyways and the Metal denoiser will work for Apple and Intel architectures as well (but only in a future Metal version of Cheetah3D, not the current one which is very suitable for OIDN).
 

misoversaturated

Active member
When Rosetta apparently can emulate SSE4.1 this means Martin can implement Intel OIDN in the current version 7 already (which will be the version for every Mac that won't run Catalina) and keep it for a coming M1 adaptation, the emulated denoiser will be a bit slower there but that's no problem.
Only when Apple ditches Rosetta2 which they won't do in the next years as there are still current Intel Macs sold, OIDN needs to be replaced by the Apple denoiser or else.
 
Last edited:

Hasdrubal

Active member
I see, you want a denoiser now :)

(for me it's a mixed bag. Intel denoiser is more or less on par with optix, they say, but it kills detail (for example bump maps) and I do use it very seldom. But it's crazy fast to use a denoiser as you know from Blender)
 
Top