Vídeo a partir de imágenes fijas - Zoom

Estoy completando un proyecto escolar sobre computación distribuida. Me han concedido acceso a una supercomputadora Blue Gene para ejecutar un algoritmo para crear imágenes estáticas de conjuntos de Mandelbrot. Tengo el algoritmo creado y funcionando. Los tamaños de imagen son 800x600.

Mi proyecto es combinar estas imágenes para crear un video con un efecto de zoom. Soy nuevo en la creación de videos a partir de imágenes fijas y estoy buscando alguna aclaración sobre algunas cosas.

  1. ¿A qué cuadro/velocidad debo apuntar? Quiero que sea lo más suave posible.
  2. Quiero que el zoom sea bastante fluido, ¿qué tan rápido debo hacer zoom con las imágenes? Mi algoritmo puede ser bastante preciso.

Si alguien pudiera dejarme saber o publicar algunos recursos sobre el asunto. Siento que esto debería ser similar a la creación de dibujos animados como el zoom.

mateo a

Una imagen de ejemplo creada con el algoritmo.

Respuestas (2)

Interesante pregunta. Primero, aquí hay una pregunta para usted: ¿puede su supercomputadora realmente calcular y generar, en tiempo real, un zoom animado en imágenes tan complejas?

Mi suposición (solo una suposición) es que necesitará más de 1/30 seg. para completar cada fotograma (supongamos 30 fotogramas por segundo como una velocidad de fotogramas mínima para lograr un zoom suave). Si ese es el caso, solo necesita escupir una cantidad x de imágenes (mapas de bits) que se pueden reproducir más tarde, a 30 fps, por cualquier computadora que no sea una supercomputadora.

Un zoom es solo un cambio de escala. Suponiendo que no tiene en mente una tasa particular de cambio en la escala, en otras palabras, que no necesita llegar a una escala particular en un tiempo particular, pruebe con un 1% de aumento de escala por cuadro ( Verificaré esto y publicaré una actualización si puedes hacerlo mucho mejor).

Un zoom satisfactorio también implicará suavizar la cabeza y la cola del zoom. Si necesita un algoritmo de aceleración, solo pregunte. Probablemente no estará en el idioma que está usando, pero podrá resolverlo.


ACTUALIZACIÓN: acabo de leer algo sobre Blue Gene. ¡ Tal vez pueda hacer imágenes Mandlebrodt de 800x600 a 30 fps! Pero se aplica la misma tasa de cambio: la suavidad es una cuestión de percepción humana.

No puedo hacerlo en tiempo real, ya que tengo que configurar un trabajo y podría tomar hasta 24 horas encontrar los ciclos libres para ejecutar. ¡Tengo que configurarlo y luego informaré cómo va! ¡Gracias!
Dado que eres técnico y matemático, probablemente ya te hayas dado cuenta de que la cantidad de zoom en cada cuadro se basa en el tamaño del cuadro anterior. Es decir, no desea que el zoom del cuadro se base en el tamaño del cuadro original, como 100 %, 90 %, 80 %, 70 %, ¡porque eso conduciría rápidamente al 0 %! El "tamaño" o "zoom" de cada cuadro debe ser un porcentaje del cuadro anterior. El 99% daría un zoom lento y soñador. El 90% daría un zoom rápido y de carrera.
Bueno, las matemáticas son solo una herramienta; no hay reglas inflexibles sobre cómo usarlo. Usted dice "... la cantidad de zoom en cada fotograma se basa en el tamaño del fotograma anterior..." ¿Qué hay de malo en basar el cambio de escala en el tamaño del fotograma ORIGINAL? Si comienza con un marco de 800x600 y lo aleja en treinta pasos lineales del 1 por ciento (es decir, primero el 99% del original, luego el 98% del original,...) terminará en 568 x 426. Si Aleja el zoom geométricamente (es decir, primero el 99 % del original, luego el 99 % del cuadro 2, ...) y terminas en 598 x 448. Una diferencia del 3 % en un segundo (suponiendo 30 fps). ¿Es esa una diferencia importante?
arty: ¡infórmenos sobre su zoom Blue Gene!

Voy a sugerir 24FPS debido al hecho de que esta es la velocidad de fotogramas de la película, mientras que 30FPS es la televisión. Alternativamente, puede probar 48FPS y 60FPS, ya que tienen el beneficio de sentirse más "reales" o "hiperreales" para el ojo humano.

Pero, ¿por qué el cine es mejor opción que la televisión?