Mejorando la fluidez de EbSynth + Flow

En el ejemplo del artículo anterior, todavía, aparecían algunas vibraciones molestas que hay que terminar corrigiendo a mano, esto puede ser muy molesto si la animación es larga.

Con este script se puede mejorar aún más la calidad de transición entre cuadros y en el caso de que sea necesario generar nuevos cuadros de transición, agregando a la técnica un filtro bilateral, deepflow y color_flow_map.

El filtro bilateral ayuda a que EbSynth no confunda colores o grises entre sí, generando sutiles transiciones o grandes contrastes dependiendo de la imagen que se trate.

bilateral_filter in.png bl.png 0.01 128 16

Deepflow es una técnica para ver la diferencia entre dos imágenes generando un archivo FLO que es casi capaz de recrear una imagen a partir de la otra.

deepflow2 bl1.png bl2.png map.flo -d .4 -iter 5

DeepFlow visto con DeepMatching

Color flow map convierte este archivo FLO en un mapa degradé que ayuda a EbSynth a crear una imagen más fluida con menos saltos y «ruido».

color_flow_map map.flo map.png 0

warp degrade

También podemos recrear la imagen usando Image Magick, pero esta tiene muy baja calidad.

convert in.png map.png -fx 'p{(v.r*w),(v.g*h)}' result.png

EbSynth al tratarse de una red neuronal es capaz de usar el degradé como referencia para armar la nueva imagen y la imagen bilateral como ayuda para las partes que desconoce.

ebsynth -uniformity 0 -style style.png -guide bl1.png bl2.png -weight 500 -guide map.png map1.png -weight 1000 -output result.png

Resultado

View script

Aprovechando esto podemos generar ejemplo un poco más extremo como esta versión invernal

nena versión invernal

Publicado en Experimento, Tutoriales y etiquetado , , , , , .

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

*

code