En nuestra anterior entrega hablamos del proceso de debayerizado. Como consecuencia de las conclusiones extraídas a partir de los estudios parciales, incompletos o poco realistas que examinamos, se puede elegir una selección más precisa de otros diez métodos que representen un conjunto de algoritmos –desde los más simples a los más sofisticados– y que resuman el estado actual de esa tecnología.

Imagen debayerizada y luego transformada a RGB.
Imagen debayerizada y luego transformada a RGB.

El más sencillo sería el debayerizado bilineal, que consiste en una interpolación básica empleando los valores adyacentes del mismo color. Además habría que tener en cuenta al debayerizado Matlab estándar, al debayerizado con filtrado direccional y decisión a posteriori (DDFAPD), al método de estimación del error cuadrático promedio lineal direccional (DLMMSE) y al método de Wenmiao Lu y Yap-Peng Tan, al que ya hemos hecho referencia anteriormente.

(a) Patrón Bayer (b) Soporte del espectro de una imagen obtenida mediante una matriz de filtros de color: componente de luminancia (círculo sólido) y componentes de crominancia (círculos discontínuos).
(a) Patrón Bayer (b) Soporte del espectro de una imagen obtenida mediante una matriz de filtros de color: componente de luminancia (círculo sólido) y componentes de crominancia (círculos discontínuos).

Como los algoritmos provenientes de la literatura científica han demostrado severas limitaciones prácticas, también hemos decidido considerar –en adelante– dos métodos reales de debayerizado de cámara –denominados Ada3 y Ada5–. Ambos fueron diseñados específicamente para cámaras ARRI y se utilizan para procesar archivos de ARRIRAW con el software gratuito ARRIRAW Converter.

De los datos lineales a los datos de imagen preparados para monitores

El procedimiento de obtención de imágenes –presentables en una pantalla– a partir de los datos lineales que proporciona el sensor, es sencillo. Los datos de entrada constituyen la imagen RGB reconstruida en el campo lineal. Se deduce que los valores de los pixeles se han interpolado empleando uno de los métodos de debayerizado disponibles, pero aún son lineales con respecto al brillo de la escena.

Cuando se muestra una imagen lineal directamente, su apariencia es –en su mayor parte– negra. Sólo son visibles las zonas de altas luces. Cuando se normaliza esa imagen según la exposición, se puede mostrar casi todo el contenido. Los histogramas de las imágenes se muestran con las imágenes de ejemplo. Los datos de salida In  se calculan desde Iraw por medio de un ajuste del intervalo tonal desde 16 bits a [0,1] y la corrección depende del índice de exposición (EI) con un factor de multiplicación. Dicha normalización escala los valores como el gris medio –que se captura usando una carta de grises con reflectancia del 18%– y reasigna los valores RGB –0,18, 0,18, 0,18–.

I_n = \frac{18EI}{400} \cdot \frac{I_{raw}-256}{65535-256}

El siguiente paso es la reconstrucción de los valores de color. Se aplica una conversión de la matriz de color para transformar los valores de cámara –RC, GC, BC– al espacio de color sRGB habitual en los monitores. En primer lugar, se convierten los datos dentro de un espacio de color amplio –Rwg, Gwg, Bwg– cuyos primarios se escogen para evitar la pérdida de información en los blancos, salvo en los casos más extremos.

\begin{bmatrix} R_{wg} \\ G_{wg} \\ B_{wg} \end{bmatrix} = \begin{bmatrix} 1.1766 & -0.119 & -0.0576 \\  -0.0194 & 1.0606 & -0.0412 \\ 0.0367 & -0.2019 & 1.1652 \end{bmatrix}

Después se realiza la conversión desde el espacio de color amplio al espacio de color definido en la recomendación 709 de la ITU, que contiene los mismos primarios que el estándar sRGB, empleando la siguiente matriz:

\begin{bmatrix} R_{s} \\ G_{s} \\ B_{s} \end{bmatrix} = \begin{bmatrix} 1.6175 & -0.5373 & -0.0802 \\  -0.0706 & 1.3346 & -0.2640 \\ -0.0211 & -0.2270 & 1.2481 \end{bmatrix} \begin{bmatrix} R_{wg} \\ G_{wg} \\ B_{wg} \end{bmatrix}

El último paso que falta para obtener una imagen que se pueda visualizar en un monitor es compensar la función de conversión electro-óptica no lineal del dispositivo que va a mostrar dicha imagen –donde C = R, G o B, respectivamente–. Podemos tomar como ejemplo la enmienda 1 de la norma IEC 61966-2-1:

C' = \begin{cases} 12.92 C & \mbox{if } C \leq 0.0031308 \\ 1.055 C^{1/2.4}-0.055 & \mbox{if } C > 0.0031308 \end{cases}  

Transformaciones no lineales: codificación logarítmica y reasignación de tonos

El proceso básico que acabamos de describir en la sección anterior no resulta adecuado para la información de intervalo tonal amplio –HDR– de los sensores de imagen de las cámaras de cinematografía digital actuales.

Datos del monitor, ejemplo de imagen e histograma. Con una función nolineal de reasignación de tonos es posible preservar sombras más agradables y más detalle en las altas luces.
Datos del monitor, ejemplo de imagen e histograma. Con una función no lineal de reasignación de tonos es posible preservar sombras más agradables y más detalle en las altas luces.

En la foto que antecede a estas líneas se muestra la imagen resultante cuando esta se transforma utilizando el procedimiento de procesado de cámara. Este procedimiento incluye, además de los pasos básicos de procesado, transformaciones no lineales para convertir mejor la información de la imagen completa –de alto intervalo tonal– en una representación en el campo de un monitor de intervalo tonal estándar –SDR–.

La primera curva no lineal es una transformación logarítmica –denominada transformación LogC– que se aplica en el espacio de amplio intervalo tonal. La imagen en LogC es un formato con el que se puede capturar en todas las cámaras de ARRI. Otros fabricantes de cámaras presentan formatos logarítmicos similares. Todos ellos permiten preservar la mayoría de la información presente en la imagen, pero al mismo tiempo proporcionan un contenido visible cuando se muestra en un monitor. El formato LogC se diseñó para igualar las características de la película negativa: es lineal para la exposición sobre un amplio rango de valores de la señal.

Después de la conversión de espacio de color se obtienen los datos lineales para el sRGB (a, c). A pesar de que los valores de color están corregidos, los valores del sRGB necesitan una compensación adicional para la gamma del monitor. El resultado de dicha compensación se muestra en (b, d).
Después de la conversión de espacio de color se obtienen los datos lineales para el sRGB (a, c). A pesar de que los valores de color están corregidos, los valores del sRGB necesitan una compensación adicional para la gamma del monitor. El resultado de dicha compensación se muestra en (b, d).

La curva LogC, por lo tanto, transforma los datos lineales en una representación que es lineal para la exposición alrededor de la mitad del rango de la señal. Para evitar que los blancos se quemen –y para mantener la información en los bordes del rango de la señal– la curva se aplana dependiendo del índice de exposición que se elija.

Curva de reasignación de tonos.
Curva de reasignación de tonos.

La segunda curva no lineal es la de reasignación de tonos, aplicada sobre los datos de la LogC. Es sobradamente conocido el hecho de que la reasignación de tonos constituye un factor importante a la hora de alcanzar una imagen fotográfica de alta calidad. Comprime las altas luces y las sombras y proporciona una pendiente pronunciada dentro del rango principal de la señal. El resultado es una imagen de alto contraste en el monitor.

Imagen en formato LogC convertida al espacio de la norma BT.709.
Imagen en formato LogC convertida al espacio de la norma BT.709.

La curva de reasignación de tonos que precede a estas líneas tiene una pendiente bastante pronunciada con el propósito de incrementar el contraste para igualar el intervalo tonal específico del monitor. Asimismo, comprime las altas luces y las sombras de la imagen para evitar que se pierda información en las áreas más brillantes del conjunto.

Filtro de reescalado

En casi todos los casos, los sensores de imagen tienen un tamaño diferente al de su formato de salida. Ese es el motivo por el que se requiere un proceso de filtrado, conocido como reescalado, para adaptar –a escala– las imágenes al formato de salida deseado. El filtro de reescalado supone una elección importante, ya que es posible ajustar la nitidez de la imagen en este paso. El filtrado de la imagen puede influir de manera significativa en las características de dicha imagen. No obstante, como lo habitual es que la reducción de ruido se aplique antes de realizar ningún reescalado, no vamos a analizar aquí esta parte de la cadena de procesado con detalle, ya que no afecta al tema que estamos tratando.

Dejar una respuesta

¡Por favor, introduce tu comentario!
Por favor, introduce aquí tu nombre

       

Los comentarios en esta página pueden ser moderados; en tal caso no aparecerán inmediatamente al ser enviados. Las descalificaciones personales, los comentarios inapropiados, de extensión desmesurada o con demasiados errores ortográficos podrán ser eliminados. Asimismo, en caso de errores considerados tipográficos, el editor se reserva el derecho de corregirlos antes de su publicación con el fin de mejorar la comprensión de los mismos. Recordamos a los lectores que el propósito final de este medio es informar. Para recibir soporte sobre dispositivos o problemas particulares les invitamos a contactar con el correspondiente servicio de atención al cliente.