El Banding

EL BANDING

Para una mejor comprensión, por favor, lea primero el artículo: “Profundidad de Color”

ejemplo-visual-banding-fotografia-niebla_joseluisarmentia.com-pixel16

Ejemplo de imagen posterizada por banding

QUÉ ES EL BANDING

El banding consiste en la visualización de una especie de “bandas” que aparecen en ciertas zonas de la imagen. Para que aparezcan han de concurrir tres factores simultáneos:

  1. Zonas uniformes, sin detalle y con degradados suaves.
  2. Zonas con poco ruido ya que este neutraliza el banding, por lo que suelen ser zonas bien iluminadas.
  3. Imágenes con pocos niveles tonales en el dispositivo de salida (JPG-8 bits), con lo que el efecto se hace visible. A 16 bits y un dispositivo de salida que los reproduzca nunca veríamos bandas. Por todo ello es más fácil que el banding aparezca en el cielo, la piel, los fondos utilizados en los estudios fotográficos, etc.

CÓMO SE PRODUCE LA POSTERIZACIÓN O BANDING

Para entenderlo mejor, realizaremos un sencillo ejercicio:

  1. Creamos una imagen RGB a 8 bits que quepa en pantalla al 100% y realizamos un degradado horizontal de negro a blanco.
degradado-suave-sin-banding-8-bits_joseluisarmentia.com-pixel16

  1. Creamos dos capas de ajuste Curvas. En la primera movemos el punto superior derecho hacia abajo hasta el nivel de salida 32. En la segunda movemos el punto superior derecho hacia la izquierda hasta el nivel de entrada 32.
panel-curvas-photoshop-ajuste-contraste_joseluisarmentia.com-pixel16
panel-curvas-histograma-peine-posterizacion_joseluisarmentia.com-pixel16

El resultado es que el degradado original se ha posterizado y se ve discontinuo:

degradado-con-banding-posterizacion-visible_joseluisarmentia.com-pixel16

Explicación del proceso

Con la primera curva hemos dividido los 255 niveles de la imagen entre 8, por lo que ahora tendremos solo 32 niveles (255/8=32), y con la segunda hemos multiplicado esos 32 niveles otra vez por 8, por lo que volvemos a tener 255 niveles y el resultado debería ser el original, sin embargo no ocurre así. ¿Por qué?

Al reducir los 255 niveles a 32, el nivel 123 (por ejemplo) se reescala a 15 (123/8=15,375). Y ese es el problema, que los decimales se pierden con el redondeo, resultando simplemente “15”. Si posteriormente 15 es multiplicado por 8 ya no da 123 sino 120. Siguiendo el mismo cálculo, el nivel 122 acaba también en 120 y así sucesivamente.

Niveles originalesNiveles finales
108 al 115112
116 al 123120
124 al 131128
detalle-macro-banding-valores-tonales_joseluisarmentia.com-pixel16

Como ha quedado de manifiesto, valores correlativos pero distintos (tonos continuos) se tornan iguales quedando “agrupados” por zonas, siendo esta es la causa última de la aparición del banding. Si cambiamos ahora la imagen a 16 bits, esta volverá verse correcta en un degradado continuo. La razón es que estamos reescalando cada uno de sus 255 niveles a los nuevos 65.535, interpolándose el resto hasta completar el nuevo total.

CÓMO EVITAR LA POSTERIZACIÓN O BANDING

comparativa-degradado-lineal-suave-vs-banding_joseluisarmentia.com-pixel16

efecto-banding-en-gradiente-digital_joseluisarmentia.com-pixel16

solucion-banding-tecnica-dithering-ruido_joseluisarmentia.com-pixel16

Si añadimos a la imagen un poco de ruido Gaussiano, o el más estético grano analógico, observamos que este impide el banding.

Resumiendo y en palabras del ingeniero en telecomunicaciones Guillermo Luijk, erróneamente el banding suele asociarse a la escasez de niveles tonales en zonas de subexposición, y aunque es cierto que en esas zonas que hay pocos niveles, también hay más ruido generado por el propio sensor, que hace un efecto dither* y nos protegerá frente a la posterización. Por ello, donde hay que tener un especial cuidado es en aquellas que estén más limpias de ruido, especialmente en zonas de suaves degradados tonales, como el cielo. Convendría apostillar que las cámaras digitales de última generación incorporaran sensores y firmware que gestionan cada vez mejor ese ruido nativo, por lo que la protección natural en las sombras ante el banding es cada vez es más escasa.

Respecto a los RAW, su posterización no es posible porque, aparte del efecto dither* mencionado, su elevadísimo número de niveles lo impide. El banding aparece siempre como consecuencia del procesado, fundamentalmente al convertir a 8 bits con su correspondiente reescalado, redondeo numérico y escasos niveles. Siempre en los tipos de imágenes descritas.

Como conclusión, se trata de procesar siempre a 16 bits, procurar no aplicar ajustes agresivos, repetitivos e innecesarios (como en el ejemplo expuesto), minimizar las conversiones entre perfiles de color, etc. Y cuando aparezca, añadir un mínimo de ruido o grano analógico a la zona afectada o a toda la imagen.

** El dither, o ruido de dispersión, consiste en añadir ruido a la señal original para reducir la distorsión generada en un proceso (posterización o banding).*