PDA

View Full Version : Colour banding



Andy Webb
03-06-2013, 07:13 AM
As anyone any idea why I'm getting a lot of banding in an image.

It's a very dark room with some lights in the centre, all the walls and floor are grey.

There are very distinct steps from one grey to another, dynamic range would be my guess,
but how to get it smoother.

I don't get this doing a graduation from black to dark grey in Photoshop so it's not my monitor,
it looks to all the world like 16 bit colour not 24 bit.

My CS settings are sRGB.

Thanks

RebelHill
03-06-2013, 08:15 AM
using the sRGB preset for CS is the right thing to do... so id hazard its the file format you're saving to, and how LW is "processing" into that format... Does the image appear bandy in LWs image viewer/final render view. If not, then its def the file format. Try something uncompressed like png or tiff, or failing that, something with a high dynamic range, such as EXR and let PS do the downsampling.

Andy Webb
03-06-2013, 08:50 AM
No it's not looking good in the image viewer after an f9 render.

Here's part of the final render.

112254

It looks bad in VPR with Draft Mode off.

I tried rendering a frame using VPR preview and that was absolutely awful. :(:(

Tried saving 24 bit PNG and 32 bit but no difference.

Andy Webb
03-06-2013, 10:03 AM
This looks very much like a limitation of interpolated radiosity.

Trying this with Final Gather, no interpolation and it looks much better.

Tried Monte Carlo without interpolation but it was taking forever.

Clearly low light levels and interpolation do not go well together.

m.d.
03-06-2013, 10:06 AM
I have a lot of experience with this as we deal with high bit depth video all the time....

When viewing a high bit depth image on an 8 bit monitor....you will get banding in gradients...
A lot of times my 10 bit monitor will look perfect, but when viewing the same image on 8 bit it will be full of banding as there are not enough color variations in the monitor to represent the gradient

You may not see this in photoshop....but are you doing an 8 bit gradient in photoshop?

And many people will think that saving to an 8 bit image will solve this...but it won't..as the banding will now be baked into the image...the algorithm saving the image will make the same rounding errors as the monitor would

The only way to go from a high bit depth image to an 8 bit to avoid banding is unfortunately through dithering....rounding off the least significant bit....
In after effects this can be done by applying 0.4% noise, the same as mathematically rounding off the LSB

As lightwave internally is rendering to very high bit depth.....it will always have these issues...but are only seen in smooth gradients
If you can check this out on a high bit depth monitor....using a high bit depth file...to confirm if the banding is an artifact of lightwave.....
If you want PM with the image in a 10bit or higher file and I can confirm it for you...

Otherwise you have to apply a little noise to dither the image....there really is no escaping this for 8 bit display/file formats coming from a high bit depth source

Andy Webb
03-06-2013, 10:16 AM
Thanks for that info m.d.

Saves me trying to get around an impossible situation.

It's not a problem with what I'm doing, it just annoyed me that it was so bad, I had seen this type of banding before but never as awful as this time.

Cheers

m.d.
03-06-2013, 10:22 AM
I ran into this a lot with video from epic....fortunately I had a 10 bit monitor as a sanity check....

The very smooth gradients you have there are the worst offenders

Oversample in LW is slightly akin to dithering, and may also solve this specific issue...but probably is not the answer for most situations.

Andy Webb
03-06-2013, 11:04 AM
Here's a render saved out as a HRD file.

Added 0.1% Gaussian noise and converted to 8 bit in Photoshop, worked a treat :thumbsup:

A bit noisy but that's not a problem for me.

Andy Webb
03-06-2013, 11:09 AM
Works better with uniform noise, not so noisy.

m.d.
03-06-2013, 12:09 PM
The actual mathematical dither amount would be .4% (LSB is 1 bit out of 256....1/256=0.0039....so .4%)....so you may be able to get away with less...but as you have noticed the noise algorithm will affect it as well.

EDIT...
I saw you said .1% noise...I misread it as 1%