domingo, 27 de enero de 2008

Trabajando con imágenes premultiplicadas

A la hora de crear una composición, casi siempre tenemos un esquema que se repite: un fondo sobre el que se van añadiendo otras capas de imágenes que, o bien proceden de rodajes de imagen real, o bien serán imágenes sintéticas, generadas, por ejemplo, con software 3D. Es sobre todo en este último caso donde tenemos que tener muy en cuenta el concepto "premultiplicado" (premultiply).

Al generar elementos para una composición con un software 3D, tenemos la gran ventaja de poder contar con una máscara perfecta de ese objeto, un recorte preciso de la silueta que podemos incluir en el archivo. Es el "maravilloso" canal alfa que tanto nos facilita el trabajo. El canal alfa no es más que una imagen que no contiene información de color, sólo blanco (zona visible) y negro (zona transparente de la imagen) .

Cuando decimos que una imagen está "premultiplicada" por su alfa quiere decir que , si los pixels blancos tienen un valor de 1 (opaco) y los pixels negros un valor de 0 (transparente) y a continuación los multiplicamos por los pixels de la imagen (canales RGB), por pura lógica matemática, los pixels multiplicados por 1 mantendrán inmutables sus valores mientras que los pixels multiplicados por 0, se convertirán en negro.


A la hora de componer este tipo de imágenes sobre otro fondo es cuando suelen ocurrir problemas con la "premultiplicación". Los problemas se evidencian en los contornos, donde esos valores no son ni 0 ni 1, ni blanco, ni negro...son grises, con lo cual son "semitransparentes" y al componer nuestras imágenes, esa semitransparencia dejará ver los pixels negros del fondo. Así mismo, el problema puede agravarse al introducir correctores de color y otros filtros a esa imagen ya que afectarán también al canal alfa, pues realizan nuevas operaciones matemáticas sobre estos pixels, modificando así sus valores y por tanto su transparencia.



Normalmente los softwares de composición están preparados para este problema y al introducir una imagen premultiplicada la reconocen y automáticamente "reconvierten" los pixels del contorno, asimiándolos con los colores de los pixels más cercanos y anulando el color negro. Habitualmente esta opción se puede conectar y desconectar, es importante tenerla identificada y recurrir a ella cuando sea preciso (por ejemplo en Digital Fusion se encuetra dentro de los nodos LOADER nombrada como "post-multiply by alpha").


Cuando además, la imagen con alfa contiene desenfoque de movimiento, el problema suele ser mucho peor, ya que aumenta el número de pixels afectados por la premultiplicación.

Para solucionar esto muchos programas incluyen algunas ayudas que palían el problema. Al generar una imagen en 3D con alfa, es probable que el software que utilicemos nos permita desactivar la opción "premultiply" (en algunos software la no premultiplicación puede aparecer nombrada como "straight").
Lo que hace esta opción es modificar los valores RGB del contorno de la imagen para que al "premultiplicarla" se vea correctamente. De esta manera "inventa" pixels a su alrededor, para eliminar el contorno negro al componerla sobre otra imagen.




Si bien muchas veces no tendremos que preocuparnos por estos conceptos, cuando nos embarcamos en composiciones complejas con multitud de capas y corrección de color de cada una de ellas, es probable que nos encontremos con esos dichosos halos negros que al menos ahora sabemos de dónde provienen.


4 comentarios:

Anónimo dijo...

Muy buen Blog y muy util.

Sigue asi que estas haciendo un buen trabajo.

Deberias promocionar un poco el blog porque me ha costado encontrarlo pero es de lo mejorcito que he visto.

Efecto HD dijo...

Gracias por tu comentario, me anima a seguir mejorando este blog. Lo de la promoción es una asignatura pendiente... a ver si me muevo un poco. Gracias y no dudes en hacer cualquier sugerencias.

Anónimo dijo...

Vaya pedazo de blog, no es que sea UTIL, sino que es un autentico profesor online.muchas gracias

Anónimo dijo...

Felicidades por este blog, de lo mejorcito que hay por la red, la explicacion de algunos conceptos basicos que muchas veces se dan por hecho, hace que algunas cosas se entiendan mucho mejor. Te animo a que sigas con estos tutoriales que son increiblemente utiles para aprender y comprender el uso de estos programas. Lo dicho FELICIDADES y sigue con ello.

Estamos en obras

Estamos de mudanza. EfectoHD se traslada a un nuevo servidor dedicado, con dominio propio y un nuevo diseño. Esperamos estar de vuelta lo an...