Composición digital

Ajustar Compartir Imprimir Citar
Cuatro imágenes reunidas en una imagen final

Composición digital es el proceso de ensamblar digitalmente múltiples imágenes para crear una imagen final, generalmente para impresión, películas o visualización en pantalla. Es el análogo digital de la composición de películas ópticas.

Matemáticas

La operación básica utilizada en la composición digital se conoce como 'mezcla alfa', donde se usa un valor de opacidad, 'α', para controlar las proporciones de dos valores de píxeles de entrada que terminan hasta un solo píxel de salida.

Como ejemplo simple, supongamos que hay dos imágenes del mismo tamaño disponibles y se van a componer. Las imágenes de entrada se denominan imagen de primer plano e imagen de fondo. Cada imagen consta del mismo número de píxeles. La composición se realiza combinando matemáticamente la información de los píxeles correspondientes de las dos imágenes de entrada y registrando el resultado en una tercera imagen, que se denomina imagen compuesta.

Considere tres píxeles;

y

Entonces, considerando los tres canales de color y suponiendo que los canales de color se expresan en un espacio de color γ=1 (es decir, los valores medidos son proporcionales a la intensidad de la luz), tenemos:

cr = α fr + (1 − α) br
cg = α fg + (1 − α) bg
cb = α fb + (1 − α) bb

Tenga en cuenta que si las operaciones se realizan en un espacio de color en el que γ no es igual a 1, la operación generará efectos no lineales que pueden verse potencialmente como artefactos de alias (o 'jaggies') a lo largo de bordes afilados en el mate. En términos más generales, la composición no lineal puede tener efectos como "halos" alrededor de objetos compuestos, porque la influencia del canal alfa no es lineal. Es posible que un artista de composición compense los efectos de la composición en un espacio no lineal.

La combinación alfa es una operación costosa si se realiza en una imagen completa o en una escena 3D. Si esta operación se tiene que hacer en videojuegos en tiempo real hay un truco fácil para potenciar el rendimiento.

cFuera. = α fdentro + (1 − α) bdentro
cFuera. = α fdentro + bdentro − α bdentro
cFuera. = bdentro + α (fdentro bdentro)

Simplemente reescribiendo la expresión matemática uno puede ahorrar el 50% de las multiplicaciones requeridas.

Propiedades algebraicas

Cuando es necesario combinar varias capas parcialmente transparentes, vale la pena considerar las propiedades algebraicas de los operadores de composición utilizados. Específicamente, la asociatividad y la conmutatividad determinan cuándo se puede o no evitar el cálculo repetido.

Considere el caso cuando tenemos cuatro capas para combinar para producir la imagen final: F=A*(B*(C*D)) donde A, B, C, D son capas de imagen parcialmente transparentes y " *" denota un operador de composición (con la capa izquierda encima de la capa derecha). Si solo cambia la capa C, deberíamos encontrar una manera de evitar volver a mezclar todas las capas al calcular F. Sin ninguna consideración especial, tendrían que ocurrir cuatro mezclas de imagen completa. Para los operadores de composición que son conmutativos, como la mezcla aditiva, es seguro reordenar las operaciones de mezcla. En este caso, podríamos calcular T=A*(B*D) solo una vez y simplemente combinar T*C para producir F, una sola operación. Desafortunadamente, la mayoría de los operadores no son conmutativos. Sin embargo, muchos son asociativos, lo que sugiere que es seguro reagrupar las operaciones en F=(A*B)*(C*D), es decir, sin cambiar su orden. En este caso podemos calcular S:=A*B una vez y guardar este resultado. Para formar F con un operador asociativo, solo necesitamos realizar dos operaciones de composición adicionales para integrar la nueva capa S, calculando F:=S*(C*D). Tenga en cuenta que esta expresión indica la composición de C con todas las capas debajo de él en un paso y luego la combinación de todas las capas encima con el resultado anterior para producir la imagen final en el segundo paso.

Si todas las capas de una imagen cambian con regularidad, pero todavía es necesario componer muchas capas (como en el renderizado distribuido), la conmutatividad de un operador de composición aún se puede aprovechar para acelerar el cálculo a través del paralelismo, incluso cuando no hay ganancia de pre-cálculo. De nuevo, considere la imagen F=A*(B*(C*D)). Cada operación de composición en esta expresión depende de la siguiente, lo que lleva a un cálculo en serie. Sin embargo, la asociatividad puede permitirnos reescribir F=(A*B)*(C*D) donde claramente hay dos operaciones que no dependen una de la otra y que pueden ejecutarse en paralelo. En general, podemos construir un árbol de operaciones de composición por pares con una altura logarítmica en el número de capas.

Software

El sistema de composición no lineal de mayor importancia histórica fue el Cineon, que operaba en un espacio de color logarítmico, que imita más fielmente la respuesta a la luz natural de las emulsiones cinematográficas (el sistema Cineon, fabricado por Kodak, ya no se fabrica). Debido a las limitaciones de la velocidad de procesamiento y la memoria, los artistas de composición generalmente no podían permitirse el lujo de que el sistema hiciera conversiones intermedias al espacio lineal para los pasos de composición. Con el tiempo, las limitaciones se han vuelto mucho menos significativas y ahora la mayoría de las composiciones se realizan en un espacio de color lineal, incluso en los casos en que las imágenes de origen están en un espacio de color logarítmico.

La composición a menudo también incluye escalar, retocar y corregir el color de las imágenes.

Composición basada en nodos y capas

Hay dos flujos de trabajo de composición digital radicalmente diferentes: composición basada en nodos y composición basada en capas.

La composición basada en nodos representa una composición completa como un gráfico acíclico dirigido, que vincula objetos multimedia y efectos en un mapa de procedimiento, que presenta de forma intuitiva la progresión desde la entrada de origen hasta la salida final y, de hecho, es la forma en que todas las aplicaciones de composición manejan internamente composicion. Este tipo de interfaz de composición permite una gran flexibilidad, incluida la capacidad de modificar los parámetros de un paso anterior de procesamiento de imágenes "en contexto" (mientras ve el compuesto final). Los paquetes de composición basados en nodos a menudo manejan mal los efectos de tiempo y los fotogramas clave, ya que su flujo de trabajo no proviene directamente de una línea de tiempo, como lo hacen los paquetes de composición basados en capas. El software que incorpora una interfaz basada en nodos incluye Natron (software Libre), Apple Shake, Blender, BlackMagicDesign Fusion y The Foundry's Nuke.

La composición basada en capas representa cada objeto multimedia en una composición como una capa separada dentro de una línea de tiempo, cada una con sus propios límites de tiempo, efectos y fotogramas clave. Todas las capas se apilan, una encima de la siguiente, en el orden deseado; y la capa inferior generalmente se procesa como base en la imagen resultante, y cada capa superior se procesa progresivamente sobre la capa previamente compuesta, moviéndose hacia arriba hasta que todas las capas se han convertido en el compuesto final. La composición basada en capas es muy adecuada para efectos 2D rápidos y 3D limitados, como gráficos en movimiento, pero se vuelve incómoda para composiciones más complejas que implican numerosas capas. Una solución parcial a esto son algunos programas' capacidad de ver el orden compuesto de elementos (como imágenes, efectos u otros atributos) con un diagrama visual llamado diagrama de flujo para anidar composiciones, o "comps," directamente en otras composiciones, lo que agrega complejidad al orden de renderizado al componer primero las capas en la composición inicial y luego combinar ese imome resultante (< ¿imome?).