Announcement

Collapse
No announcement yet.

denoiser causes gradients on smooth walls

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • denoiser causes gradients on smooth walls

    Hi, I'm getting these strong gradients on smooth walls when using the standalone denoiser. It's not terribly noticeable unless you have large sections of light colored wall, but then it's quite bad. When denoised in the frame buffer, this doesn't happen. It only shows up in the stand alone. It's less pronounced using mild setting and more pronounced with strong.

    Below is a simple scene lit with a single VRayLight sphere. I've tried plane light, multiple lights, ies lights, and all produce the same effect. the first image is denoised with the stand alone. 2nd image is from the frame buffer. Max 2024, VRay 6.2

    I added contrast to these in photoshop to make it super obvious, and you can see there is a little bit of gradient in the frame buffer, but nothing close to standalone.

    Standalone Denoiser...
    Click image for larger version

Name:	denoise 2.jpg
Views:	242
Size:	77.4 KB
ID:	1198650

    Denoised in Frame Buffer...
    Click image for larger version

Name:	denoise 1.jpg
Views:	203
Size:	81.4 KB
ID:	1198651



    Here are a couple real project examples...

    Click image for larger version

Name:	denoise spruce1.png
Views:	194
Size:	1.54 MB
ID:	1198653


    Click image for larger version

Name:	denoise srsc.png
Views:	196
Size:	457.4 KB
ID:	1198654




    I'm hoping there is a simple setting that I am missing???
    Attached Files

  • #2
    The gradient´s bending will always occur when having superclean gradients. The noise is your friend this time. in Post, sometimes you add even noise to archive unbended gradients. you can try to have some structure on the wall and decrease it until you don't see it anymore but bending is still suppressed.
    From the photographers perspective, you are dealing with ISO values, which is avoiding bending in such subtle gradients because even the lowest ISO Value still contains enough noise.
    But Rendering does it 100% steril. So if denoising it taking action, you are having it mostly.

    The framebuffer is using 32bit floating (someone corrects me here if I am wrong) so you also can do all the lighting adjustments here with the most adjustment range possible. So that is why it looks so smooth (even you slightly get an idea already what happens when saving the frame) But mostly your final picture might be in 8bit after postprocessing somehow and then you should be prepared...

    Comment


    • #3
      Yeah with an 8bit representation (like a JPEG or an 8bit PNG, and most monitors, even) you simply always get banding without noise. There are only 256 levels to play with in each color channel. The noise helps break it up so you don't see the banding because it dithers the edges of the quantized (posterized) steps.

      Comment


      • #4
        Ahhh, thank you both so much. So, 32 bit is the key. I'm doing a deep dive into this.

        I found that, in After Effects, if I change the Project Settings to 32 bit, everything looks smooth (didn't even re-render or re-denoise the footage). My workflow is to compile passes and make color adjustments in AE, then compile this footage with fades and text and such in Premiere. Once I changed that in AE, all looked good in Premiere too.

        But !!! When I export the video, to an 8 bit format that people in the real world can see, the striping is back.

        So, am I really to understand that a smooth white wall is Impossible in 3d video production??? Either I must add noise or accept banding? Luckily walls often have things on them or in front of them, so it's not typically so glaring. I have yet to have a client complain about this, so maybe the issue is best addressed with my psychiatrist.

        Comment


        • #5
          Not only impossible in 3d video production, but impossible in any 8bit format, even live action. You see it all the time on TV shows, especially if they are compressed (which all are, either by streaming services, by the cable or satellite company, or by OTA broadcasters.... Interestingly, typically OTA HD is a higher quality compression compared to cable or satellite-- go figure). If your video is to be compressed you will often get a better result adding more noise than you think because compression tends to remove noise as a first step in processing. Of course this can make your bitrate jump up, and can cause other artifacts due to the bitrate limiter kicking in. Compressing video at least used to be an art form. Now the distributors typically just do it without much tweaking--mainly automated.

          You need noise/grain to smooth things out. Ideally this noise is of varying sizes so it doesn't appear as just very sharp salt and pepper type noise.

          If you try to have a gradient between 0-16 (8bit values) across 256 pixels you will get one discrete value every 16 pixels. So your bands will be 16pixels wide and pretty ugly. If you had a gradient from black to white (0-255) in the same 256 pixel area then you would have one pixel wide bands, which are not bands, but a smooth gradient.

          You definitely want to do all processing in 16bit linear (if constrained to 0-1.0) or in floating point.This will help the banding as you work, but the final result can still have banding if there is no noise.

          https://www.willgibbons.com/color-banding/

          One method similar to what I used to do in PS sometimes. Blurring the noise in the direction of the gradient can help as well.
          https://fstoppers.com/post-productio...mple-tool-7946

          Plenty more resources with a web search for something like "banding posterization gradient 8bit noise"
          Last edited by Joelaff; 31-12-2023, 12:54 PM.

          Comment


          • #6
            Thanks so much for the thorough explanation. I'm getting it now... I'll try mixing the noise back in with a wall mask. I was already doing something similar at the windows in one project as the denoiser tended to blur it too much where you'd want to clearly see through to the deck furnishing.

            I'll do some more research when time allows, for now I'm confident I can produce what I need to without totally revamping my workflow. Making friends with the noise. And I'll be watching for it on the TV, can't wait to nudge my wife and say "check out That banding posterization gradient!" She'll be very impressed.

            Comment


            • #7
              no wall is without structure - somehow. otherwise, it may come out of laboratories from NASA or so =)
              mix a bit noise in the wall shader (bump e.g.). play with the noise size until you get the balance between size and bending - if visible anyways at all. then you dont need a mask for this purpose either. =)

              Comment


              • #8
                I'd wager the banding would disappear as well if you just raised exposure a little bit.
                The display gamma will hit the darker colors the hardest, so if the wall was to be twice as bright, i'd assume most banding would be gone.
                It should be easy to try in the VFB itself with the display-only exposure control.

                p.s.: the banding will be terminally visible if the VFB setting to dither colors is off.
                Click image for larger version

Name:	image.png
Views:	163
Size:	15.4 KB
ID:	1198798
                ​​




                Last edited by ^Lele^; 03-01-2024, 05:33 AM.
                Lele
                Trouble Stirrer in RnD @ Chaos
                ----------------------
                emanuele.lecchi@chaos.com

                Disclaimer:
                The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

                Comment

                Working...
                X