Denoising adventure

Started by itsdavidblaker, May 08, 2022, 12:24:41 PM

Previous topic - Next topic

itsdavidblaker

Hello!

I'd say the prologue to this post is: https://planetside.co.uk/forums/index.php/topic,26259.0.html
(To summarise, the discussion was figuring out the value of a denoiser in Terragen)

So for this lil' experiment, I've been using https://github.com/DeclanRussell/IntelOIDenoiser
Set up a simple scene and ran a render - I've intentionally made it SUPER noisy so that any results are easy to spot  ;D


Ran this through the denoiser and got this:


Pretty much no difference... Boo!

So why is this not working?

My hypothesis here is that Terragen's internal rendering is attempting to reduce the noise by slightly blurring each sample - potentially from the "Pixel reconstruction filter"? While this is a good feature, the effect it has is that noise is softened over the image to minimize the jiggidyness... These softened areas are interpreted by the denoiser as "noiseless", since there's an amount of coherence between each pixel?


So to test whether this was the case, I made the render even worse. Anti-aliasing is set to 1, and I've switched from "Standard Renderer" to "Path tracer" so that my render has none of the filtering applied. The result is a mess  ;D Note how every single pixel's noise is completely independent to any of its neighbors:


Since the denoiser registers it as "true" noise, it should now process the image properly.

Boom!!!


Okay yeah, it's ugly as hell, BUT what I'm proposing is that if Terragen included a "None" pixel reconstruction filter then we'll be able to push the noisy renders to a higher quality - which can then correctly be processed by a denoiser?

That's just how I imagine this would work anyway  ;D

Thanks for reading, open to thoughts and opinions!

WAS

#1
Gigapixel works pretty darn well on clouds I have found. I didn 1024px image and ballooned to 4k with petty much no noise.

There is other pixel reconstruction modes too. One I think is sharp. Believe Box is what you want. Under filter tab.

Probably also want to turn off AA bloom.

itsdavidblaker

#2
Oh man, you're right about Gigapixel... Damn... Wow!

Silly me, I tried this before with EXR files but gave up after seeing they weren't supported, just checked again now and it seems to like TIFs are the way to go . It's a shame the full 32-bit depth isn't included in the output though, will see what I can do about that.

No luck with the other reconstruction filters sadly, all seem to result in some level of blurrification

Here's a 2-minute render (technically 8, I rendered at twice the size and downscaled with nearest neighbor interpolation so that it simulated an image with the noisy-noise). Sharpened for clarity  ;D


I think I'll survive with the Gigapixel route, but it would be phenomenal for a denoiser (and even a Gigapixel style upscaler) to eventually be implemented, they're just so damn good  ;D

WAS

The background-noise stuff looks way better in that version.

And yeah, a denoiser in TG would be awesome. Especially if it can get all the raw info before pixel reconstruction and stuff.

AA 0.1 seems to work well for sharp noise, least in render I am testing on now.Using Legacy Sampler, no AA Bloom, and the Sharp pixel reconstruciton (Catmull-Rom)

itsdavidblaker

You're right again, just testing now and that noise is looking crispy  ;D

Do you know if it's possible to render more samples without increasing this AA value? So that there's less noise, but we're not having to resort to the blurry-ish AA? Still getting the hang of the more specific settings in Terragen so it's possible I'm missing the obvious there

Thanks!

WAS

I wonder if lowering the pixel noise threshold in sampling would do the trick while preserving the rest of the settings.

WAS

Also starting to think Max Sample (Non-adaptive) would help because we wouldn't have larger pixel breakup in one area (further away) and more dense smaller pixels close up. 

itsdavidblaker

Hmm, haven't had any luck with those suggestions but I hugely appreciate them  ;D Will keep digging though!

WAS

Yeah the only real way I can seem to make a impact on the boundaries and stuff is simply upping the quality of the cloud layer itself. I did 3 and the clouds seem much better, but still having issues with the distant horizon. Initially i thought atmosphere, so I upped samples in the atmosphere but it doesn't seem to make a difference.

itsdavidblaker

Smart idea bumping the quality up to 3! Will test that in the morning

@Matt what do you think about this? Is implementing a "None" pixel filter achievable to implement to Terragen so that we're able to render higher quality uniform noises? Or do you think something else causes this blurred noise? I feel that this is the quickest way to get Terragen renders to work with Open Image Denoise, I'm ready to beg to see it happen ;D


Jeremy

I think, better make a GPU renderer for fast render with high samples which give you noise free images. Unless you need a noise for something else  :)

WAS

#11
Quote from: Jeremy on May 08, 2022, 07:54:05 PMI think, better make a GPU renderer for fast render with high samples which give you noise free images. Unless you need a noise for something else  :)

Ehh, even with GPU rendering, like in Blender, etc, volume gets slower higher you go in samples, so median is to use denoisers. Disney, etc, they all render at actually relatively lower settings, and use denoising AI to clean up. The Moana scene you can download, for example, renders pretty noisey without Intel denoiser.