Me pregunto si hay una forma de calcular automáticamente la imagen transparente a partir de un conjunto de imágenes no transparentes. Sin trabajo manual con píxeles individuales o configuración manual de opacidades.
Muchas veces necesito exportar imágenes de "editores de imágenes" que no admiten fondos transparentes (ejemplo: PowerPoint). Todavía puedo darle a la imagen cualquier fondo. Por ejemplo, puedo exportar dos muestras con fondos mutuamente inversos (como se ve en las 2 muestras a continuación). O puedo crear de 3 a 5 imágenes con fondos, por ejemplo: rojo, verde, azul, blanco, negro.
Ejemplo:
2 muestras con fondos mutuamente inversos que conducen al resultado esperado (estoy buscando una técnica/complemento para obtener ese resultado):
Con un conjunto de este tipo, basado en las diferencias entre las muestras, debería quedar completamente claro qué píxel tiene qué valor alfa.
¿Existe un método/complemento para convertir el conjunto de muestras descrito anteriormente en una sola imagen con transparencia derivada correctamente?
Prefiero GIMP.
EDITAR:
Una muestra más para ilustrar la idea. Se utilizan brillos semitransparentes:
Esto se puede hacer 'perfectamente'. Debe alinear las dos imágenes como dice Horatio. Sin embargo, voy a atacar esto matemáticamente.
Así que tienes 4 canales para arreglar. El canal alfa es el más fácil. Coloca las capas una encima de la otra y resta la capa naranja por la azul (esto da mejor contraste). Luego abra el cuadro de canales y duplique la capa con la mayor diferencia de color.
Imagen 1: duplica el canal con más diferencia de color.
Ejecute niveles en la capa copiada para que el color más brillante sea blanco usando el selector de puntos. No ajuste gamma o punto negro. Este es ahora su canal alfa perfecto (aunque con una resolución de color ligeramente desafiada). Invierta el canal copiado .
Si tuviera que aplicar el alfa ahora en la imagen, se quedaría con el tono de color premultiplicado. Esto sería fácil en After Effects, pero en Photoshop tienes que hacer el trabajo pesado tú mismo. Defringe puede funcionar para algunos casos simples, pero hay una mejor manera que garantiza que sea lo mejor posible.
Para quitar el mate haz una nueva capa. Rellena toda la capa con el color de fondo. Luego cargue el alfa y rellénelo con negro, esta es su pantalla de color mate. Asegúrese de que NO se corte de la imagen con variación de color o manche el proceso (a menos que planee eliminar el fondo en lugar del mate, pero esa es otra secuencia matemática) .
Imagen 2: Pantalla a color mate.
Reste la pantalla de color mate de su capa de color. Esto le da el canal de color.
Imagen 3: Canal de color.
Ahora aún necesita fusionar el alfa y el canal de color juntos. Así que combine las capas del canal de color. Luego cargue el canal copiado como una máscara de capa.
Así que ahora solo tenemos un problema, Photoshop usa Straight matte. Sí, así es, los píxeles tienen el color completamente saturado independientemente del alfa. Así que aplica la máscara a la capa. Luego ejecute Layer -> Matting -> Remove Black Matte
Imagen 4: Resultado final.
Y esto es casi tan bueno como parece. Calculé que habría obtenido un nivel alfa más si hubiera hecho un complemento. Principalmente porque podría hacer rodar la eliminación de halos en la pila de operaciones.
Para automatizar:
Puede hacer una acción a partir de esto y su selector de color siempre está lejos de forma automática. Esto podría estar escrito, pero tengo otras cosas que hacer. De todos modos, describí todas las matemáticas que intervienen en esto.
PD: pedí el fondo negro ya que lo habría hecho un paso más corto.
Tome "imagen IZQUIERDA", colóquela en la capa sobre "imagen CENTRO" para que estén perfectamente alineados. Use el modo de fusión de capa "restar". Todo lo que sea igual será negro.
Aplane la imagen, copie todo, deshaga el aplanamiento y luego péguelo en una nueva capa. Seleccione a través del color en el negro con la configuración de "borrosidad" más amplia. Oculte la capa y aplique la selección negra como una máscara de capa a la imagen IZQUIERDA o CENTRAL.
Juan B
miroxlav
Ryan
OGHaza
Juan B
miroxlav
joojaa
miroxlav
joojaa
OGHaza