Este artículo ha sido reeditado y trasladado a mi Foto-Blog.
Puedes pinchar en el título del artículo para ver su contenido.
Lamento las molestias que pueda ocasionar este traslado.
Intervalómetro PhottixLo único que necesitas para realizar un vídeo con la técnica time-lapse, es un intervalómetro, un trípode robusto, una tarjeta de memoria con capacidad suficiente, y una cámara de fotos digital. Para hacer un solo minuto de vídeo necesitarás hacer 60*25= 1500 fotos. Conviene elegir resoluciones bajas para no rebasar la capacidad de la tarjeta de memoria.
Yo uso el Intervalómetro PHOTTIX NIKOS, pero hay muchos y la elección de marca y modelo no es algo demasiado crítico. La máquina de fotos tampoco tiene que ser una demasiado buena para hacer un vídeo con time-lapse.
Piensa que para un vídeo en calidad HD te basta una resolución de 1920×1080. Si usas resoluciones muy grandes cabrán pocas fotos. El vídeo reproduce a 25 fotogramas por segundo las escenas que tú has capturado usando intervalos de varios segundos entre foto y foto. Por ello sale la escena muy acelerada. Yo he usado intervalos de 3 segundos y de cuatro, pero hay cámaras que necesitan un mínimo de tiempo mayor entre foto y foto para volcar la foto a memoria. La velocidad de acceso de la memoria influirá en este límite.
Un consejo, no uses el autofocus. Deja siempre enfocada la escena manualmente. De esa forma se evita que las condiciones alteren a los sensores y estos produzcan pequeñas variaciones de enfoque a cada rato. En mi primer time-lapse se nota al principio del mismo este fallo. Hay algunos fallos más como reflejos en el cristal de la ventana, los clásicos parpadeos, etc. Es el primer vídeo de este tipo que hago así que es normal. Pese a todos esos fallos no ha quedado mal del todo.
Una vez que has descargado las fotos a tu ordenador lo más habitual es recurrir a algún programa de edición de vídeo, pero si tienes nociones de programación y conoces algo ImageMagick no te resultará imprescindible. En Linux puedes compilar las fotos en un vídeo usando ffmpeg.
Puedes hacer una primera prueba de visualización eligiendo una resolución pequeña que respete las proporciones de las fotos originales.
Los formatos de vídeo digital usan cada vez más la proporción panorámica de 16:9 que yo os recomiendo para vuestros vídeos. Si necesitáis la máxima calidad, recomiendo usar 1920×1080 que es la que usa la televisión de alta definición HDTV. Actualmente muchos profesionales trabajan la edición de vídeo en estos formatos, y es la calidad recomendable para guardar el producto final en forma de máster digital de vídeo. Esto facilita futuras reediciones a máxima calidad. Para Youtube en este momento recomiendo la 1280×720 que se guardará con calidad HD, y para vuestros borradores podéis usar 960×540. Todas ellas 16:9. Yo uso MP4 o AVI.
Las proporciones en fotografía (aspect ratio) suelen ser diferentes de 16:9 pero habitualmente nos sobrará resolución para poder recortar la parte que nos interese de las mismas. Esto variará el encuadre de las fotos, cosa que debes tener presente al situar tu cámara.
¿Cómo procesar las imágenes en Linux si no disponemos de editor de vídeo?
Imaginemos que nuestras fotos son de 2784×1856 (3:2). Serían solo 5 Mega Pixels y hay de sobra con eso para obtener un vídeo muy bueno.
Primero compila un vídeo respetando la proporción original de las fotos solo para echar un vistazo. (en mi caso mi Canon EOS 5D Mark II usa 3:2) .
Esto lo puedes hacer con el comando ffmepg, pero necesitarías que las fotos empezaran numeradas desde el número 1. En lugar de eso seguramente tendrás fotos con estos nombres img_235.jpg, img_236.jpg, … img_1225.jpg, img_1226.jpg.
Yo corregí esto con ayuda de un pequeño script pensado para S.O. Linux. Si tu cámara no es una Canon puede que necesites adaptarlo.
#! /usr/bin/python # -*- coding: latin1 -*- ########################################################### # Procesa todos los ficheros '*.jpg' del directorio actual # y crea una lista de links en un directorio 'jpegs' # con nombres de la forma 'img_%d.jpg' donde %d es un numero # que sigue la secuencia del 1 al ultimo numero de fichero # siguiendo un orden alfabetico de los nombres de ficheros # encontrados con el patron '*.jpg'. # Esto permite aplicar el comando ffmpeg desde ese directorio # para crear un video con esos fotogramas. Ejemplos: # (16:9) # ffmpeg -f image2 -i img_%d.jpg -sameq -s 960x540 out.avi # (3:2) # ffmpeg -f image2 -i img_%d.jpg -sameq -s 900x600 out.avi ########################################################### ################## def comando(comm): import os print comm os.system(comm) ############ def main(): import sys, os finamelist=[] comando("mkdir jpegs") ListaFicheros=os.listdir('.') for fi in ListaFicheros: finame, ext= os.path.splitext(fi) if (ext=='.jpg'): finamelist.append(finame) n=1 finamelist.sort() for fi in finamelist: comando ("cd jpegs ; ln -s ../%s.jpg img_%d.jpg" % (fi,n)) n=n+1 ########################## if __name__ == "__main__": main()
Luego te sitúas en el directorio jpegs creado y usas el comando ffmpeg siguiente:
ffmepeg -i image2 img_%d.jpg -sameq out.avi
Con este primer vídeo podrás localizar las diferentes escenas que deben ser procesadas de alguna manera particular o simplemente suprimidas. Basta localizar el segundo y multiplicar por 25 y obtienes el número del fotograma.
Yo he realizado distintos tratamientos en distintos tramos, pero lo que siempre vas a necesitar es adaptar el formato original que puede venir como (3:2) a un aspecto panorámico (16:9). La división de 16/9 nos da el valor 1.77777. Usaremos este valor más adelante.
Para recortar las imágenes por arriba y por abajo a fin de obtener fotos de proporciones 16:9 uso ImageMagick dentro de un script.
Imaginemos que las fotos de nuestra cámara vinieran con un formato 2784×1856. Lo ideal es cortar un poco por arriba y un poco por abajo. Recortar se hace con la opción crop del comando convert .
Ejemplo:
-crop ANCHOxALTO+X0+Y0
ANCHO= 2784 (Conservamos todo el ancho original).
ALTO= ANCHO/1.77777=1566
X0=0 (Esquina superior izquierda del recorte pegada al borde izquierdo)
Y0= 200 (Eleminamos 200 pixels de alto en la parte superior.
Podemos hacer dos comandos de convert para hacerlo todo.
convert -crop 2784×1566+0+200 img_1234.jpg TMP.jpg
convert -geometry 1920×1080! -quality 90 TMP.jpg fotogramas/img_1234.jpg
(Hemos tomado 1234 como número arbitrario de la foto. Solo es un ejemplo)
Es decir, primero recortamos, generamos un fichero temporal, y luego le damos la resolución definitiva 1929×1080, que necesitamos para un vídeo HD.
Esta forma de trabajo con scripts es un poco tediosa en el caso que necesites hacer diferentes tratamientos para cada tramo, cosa que yo sí he hecho. Los efectos de zoom los he hecho con scripts que recortaban progresivamente encuadres más pequeños, pero no voy a tratar ese tema ahora.
La utilidad convert de ImageMagick te permitirá muchas más cosas. Por ejemplo puedes usar -normalize para hacer que el color más oscuro de una foto se muestre como negro y el más claro como blanco estirando los valores intermedios consiguiendo un efecto contraste en la foto. Es imposible resumir aquí todo lo que te permite hacer esta utilidad. Se necesitaría un libro entero.
http://www.imagemagick.org/script/convert.php
Yo he tenido que programar varios scrips parcheándolos sucesivamente y no dispongo de scripts que sean demasiado útiles. Tendré que ir mejorándolos poco a poco y cuando tenga algo que considere de utilidad general lo ofreceré bajo licencia GPL, pero de momento no dispongo de nada que merezca la pena entregar.
La post-producción es muy importante en la calidad final del vídeo, y los pequeños trucos que yo acabo de mencionar suplen la falta de disponibilidad de buenos editores de vídeo que es con lo que suelen trabajar los profesionales.
Un sitio donde podréis encontrar abundante información sobre time-lapse es la Web de Antonio Casado.