Does converting an 8-bit image to 16-bit or 32-bit help prevent posterization when editing?

Asked 4/5/2012

6 views

2 answers

0

If I start with an 8 bits-per-channel photo, can converting it to a higher bit depth before doing Levels, Curves, contrast, or color adjustments improve the final result?

I'm mainly wondering whether converting an 8-bit image to 16-bit or 32-bit can reduce combing/posterization caused by repeated tonal edits, or if the missing precision is already gone once the image is 8-bit.

Originally by user9292. Source · Licensed CC BY-SA 4.0

user9292

14y ago

2 Answers

15

Switching to 16 or 32 bits will indeed reduce combing (or posterization, quantization whatever you call it) after multiple edit operations.

Every time you use a multiplicative operation (such as levels, contrast adjustments, curves, colour balance etc. etc.) you'll likely end up with values that are not whole numbers. Apply a long sequence of such operations and you compound the errors until you start to see a visible degradation in image quality.

For example if you apply a levels adjustment and take the 255 level down to 127, you effectively half the brightness value of every pixel. So 133 becomes 67 (it's actually 66.5 but 8 bits can only store 66 or 67). Now later on you apply a levels adjustment that doubles the brightness value of every pixel, 67 becomes 134 - an error of 1. You've lost information, after the two adjustments there can only be 128 possible brightness values in the image instead of 256! If you look at the histogram you see gaps for every odd number, and the graph will resemble a comb (hence the term combing).

If you convert your image to 16 bit by padding on the right with zeros, 133 becomes 34048. Divide by 2 and you get 17024, multiply that by 2 and you get 34048, which converted back to 8 bit (by shifting right) and you get 133! No loss of precision has occurred.

By doing your operations in a higher precision space you effectively store fractions, which retain more information and are then rounded only once when you've finished manipulating the image (as most output devices still only support 8 bits per channel).

If you take an 8 bit image and apply only one operation and convert back to 8 bits you wont see any benefit, however after several operations you will.

Here are some examples:

Original 8bit per channel image

Here it is after I've crushed the levels down to 13, and then back up to 255. Posterization is visible in the sky as we've lost the intermediate values. This is clearly visible in the histogram which features only a few spikes.

Here I tool the original image, converted to 16bit, and then crushed the levels all the way down to 2 and back (effectively dividing by 128). This would have complete destroyed the 8 bit image (it would be reduced from 16 million to about 27 colours!) however the manipulation is not visible in the image, and only just detectable from the histogram.

I edit all my images in 16 bit mode, this provides very good protection against rounding errors. 32bit is probably overkill, you'd have to a huge number of operations to see the benefit of the extra precision.

Originally by user1375. Source · Licensed CC BY-SA 4.0

user1375

14y ago

0

AI Answer

Generated from our catalog & community — verify before relying on it.

Converting an 8-bit image to a higher bit depth can help during editing, but it does not restore detail that was already lost in the original 8-bit data.

What it does help with is preventing additional rounding errors. Adjustments like Levels, Curves, contrast, and color balance often produce fractional values. In 8-bit, those get rounded at each step, and repeated edits can build up visible posterization/combing. If you convert to 16-bit or 32-bit first, later edits are calculated with much finer precision, so you reduce further damage.

So:

  • 8-bit → 16-bit/32-bit before heavy editing: can help preserve quality during the edit process
  • 8-bit → 16-bit/32-bit: does not magically recreate missing tones
  • Best practice: start with higher-bit source data if possible (for example RAW), and do major edits in 16-bit or higher

Also, 16-bit is usually the practical choice for photo editing. 32-bit is generally more useful for special workflows like HDR/scene-referred data than for ordinary edits to an 8-bit photo.

UniqueBot

AI

14y ago

Your Answer