Cómo capturar la fotografía Time-Lapse con su Raspberry Pi y cámara web DSLR o USB

La fotografía de lapso de tiempo realmente puede darle una idea de cómo funciona el mundo a un nivel macroscópico, más allá de lo concebible para la experiencia humana normal del tiempo.

La fotografía de lapso de tiempo realmente puede darle una idea de cómo funciona el mundo a un nivel macroscópico, más allá de lo concebible para la experiencia humana normal del tiempo.
Anuncio

Mira cómo se mueven las nubes o crece una plántula. La fotografía de lapso de tiempo realmente puede darle una idea de cómo funciona el mundo a un nivel macroscópico, más allá de lo concebible para la experiencia humana normal del tiempo. O en otras palabras: puede convertir la pintura seca en algo bastante interesante. Desafortunadamente, el equipo profesional de lapso de tiempo, al tiempo que agrega la capacidad de girar o mover la cámara, como el Genio, puede costar hasta $ 1000. Hoy, crearemos un controlador básico de lapso de tiempo sin movimiento, para DSLR o una cámara web USB, con solo una Raspberry Pi.

Asegúrate de revisar todos nuestros otros proyectos grandiosos de Raspberry Pi también.

DSLR

Como de costumbre, todo nuestro trabajo con Pi se realizará a través de una línea de comandos SSH, y podemos tomar los archivos usando SFTP con las mismas credenciales si los ha almacenado en Pi en lugar de en la cámara. Si no está seguro de cuál es la dirección IP de su Pi, inicie sesión en su enrutador y vea la lista de los dispositivos actualmente conectados: debería informarse correctamente.

dispositivos conectados

Comience instalando algún software esencial:

sudo apt-get install gphoto2 sudo apt-get install imagemagick 

GPhoto2 es una utilidad de línea de comandos para interactuar directamente con cámaras DSLR compatibles (consulte la lista completa aquí). Utilicé una Canon Rebel T4i / 650D Canon Rebel T4i dSLR Review y Giveaway Canon Rebel T4i dSLR Review y Giveaway Canon acaba de lanzar su nueva Rebel T4i, su primera (de la suerte) muchas aventuras en el mundo de la pantalla táctil dSLR. Esta cámara es un paso adelante de la Canon Rebel T3i (también la convierte en la tercera ... Leer más. Ahora, conecte su cámara al Pi mediante USB.

Como utilicé los valores ISO automáticos y el modo AV, la configuración es relativamente simple y podemos capturar la serie utilizando solo la línea de comandos; la utilidad incluye parámetros integrados de lapso de tiempo. Este es el comando más básico que puede usar para probar las capacidades:

 gphoto2 --capture-image-and-download 

que transferirá el archivo a tu Pi, o

 gphoto2 --capture-image 

para mantener la imagen en la cámara. Con 8 MB de pop, posiblemente sea mejor mantenerlos en la cámara y realizar la costura de la película después del hecho desde una PC o Mac.

Importante: de manera predeterminada, las imágenes se guardan en la SD-RAM, no en la tarjeta de memoria de la cámara. Lo que significa que los perderá a todos (hablo por experiencia). Para garantizar que realmente se guarden, primero debemos establecer el objetivo de captura:

 gphoto2 --get-config /main/settings/capturetarget 

Mire la lista que muestra y establezca el objetivo de la siguiente manera, reemplazando 1 con el que se muestre como su tarjeta.

 gphoto2 --set-config /main/settings/capturetarget=1 

Para capturar en modo de lapso de tiempo, agregue -F e -I para especificar el número total de cuadros que desea capturar, y el intervalo de tiempo entre cada uno. En este ejemplo, captura una vez cada 30 segundos para un total de 1440 fotogramas, que cuando se convierten en una película de 24 FPS equivalen aproximadamente a un minuto. No creo que la batería de mi cámara dure tanto de todos modos, pero veré cuántos recibo.

 gphoto2 --capture-image -F 1440 -I 30 

Una peculiaridad a tener en cuenta; una vez que se completa el comando, la cámara puede apagarse y dejar de responder: tendrá que hacer un ciclo manual del interruptor de encendido (al menos, en mi modelo sí lo hizo). Esto no debería ser un problema en el campo cuando está en uso, pero para fines de prueba se vuelve bastante molesto. Si conoce una solución para esto, hágamelo saber en los comentarios, por favor!

gphoto2-trabajando

Hacer una película

Transfiera los archivos a su computadora de escritorio para procesarlos. En una Mac, he encontrado que lo más fácil es usar la línea de comando, pero primero necesitarás instalar XCode, Homebrew y MPlayer . Para hacer esto, primero descargue Xcode de la tienda de aplicaciones (es gratis), luego desde la pestaña Preferencias -> Descargas, habilite las herramientas de línea de comandos .

xcode-install-CLT

Luego ejecuta (uno a la vez):

 ruby<(curl -fsSkL raw.github.com/mxcl/homebrew/go) brew doctor brew install mplayer 

homebrew

Ahora debería tener instalados los componentes de codificación necesarios. Ejecute los siguientes comandos para crear primero una lista de los archivos .jpg" capturados, luego alimente esa lista al mencoder, una utilidad que se usa para crear videos. Cambie el valor de FPS si prefiere que la película avance más rápido.

 cd ls *.jpg">list.txt mencoder -nosound -ovc lavc -lavcopts vcodec=mpeg4:aspect=16/9:vbitrate=8000000 -vf scale=640:480 -o timelapse.avi -mf type=jpeg:fps=24 mf://@list.txt 

Esto es lo que terminé con, usando 24 FPS de 330 fotogramas cada minuto desde la mañana hasta la media tarde. El clima en Gran Bretaña es realmente malo, desde soleado hasta nublado en intervalos de 5 minutos durante todo el día. Suspiro.

Para codificar una película en Windows, o si prefiere usar una GUI, descargue Avidemux y siga el video tutorial a continuación. Asegúrate de que tus fotos estén numeradas secuencialmente.

Usando una cámara web USB

Por supuesto, no todo el mundo tiene una cámara réflex digital, pero en lugar de comprar un costoso módulo de cámara oficial para la Raspberry Pi, también puede realizar fotografías en lapso de tiempo con una cámara web USB estándar; en mi caso, una PS3 Eye que es por lo general es bastante complicado trabajar en PC o Mac, pero funciona de la caja en el Pi. Es posible que necesite utilizar un concentrador USB con alimentación, y el soporte de la cámara es incompleto.

Primero, verifica si tu webcam ha sido detectada correctamente.

 ls -l /dev/video* 

Con suerte, verá / dev / video0 enumerado de la siguiente manera:

dev-video0

Luego podemos continuar con la instalación del software de captura de la cámara web, y tomar una foto de prueba.

 sudo apt-get install fswebcam 
 fswebcam -d /dev/video0 -r 640x480 test.jpeg 

Eliminar el archivo con:

 rm test.jpg" 

Haga algunas tomas de prueba para posibilitar que coloque la cámara correctamente, luego avanzaremos con el guión de lapso de tiempo.

 mkdir timelapse nano runtimelapse 

Pega lo siguiente:

 #!/bin/bash # Timelapse controller for USB webcam DIR=/home/pi/timelapse x=1 while [ $x -le 1440 ]; do filename=$(date -u +"%d%m%Y_%H%M-%S").jpg" fswebcam -d /dev/video0 -r 640x480 $DIR/$filename x=$(( $x + 1 )) sleep 10; done; 

Para fines de prueba, he establecido el tiempo de espera entre disparos en 10 segundos. Cuando realmente comiences a capturar, quizás quieras cambiar eso a cada minuto. Cambie la siguiente línea para determinar cuántos cuadros capturar, en el ejemplo está configurado como 1440:

 while [ $x -le 1440 ]; do 

Para hacer el script ejecutable, use:

 chmod 755 runtimelapse 

Luego ejecútelo usando:

 ./runtimelapse 

usb-working

Hacer una película

Aún en la línea de comandos de SSH, intentaremos unir la película directamente en el Pi: si ha realizado miles de tomas y su cámara web tiene una resolución más alta, puede encontrar que esto es terriblemente lento, en cuyo caso desplácese hasta la película instrucciones para DSLR, y transfiera los archivos a su PC usando SFTP.

usb-sftp

 cd timelapse ls *.jpg">list.txt sudo apt-get install mencoder mencoder -nosound -ovc lavc -lavcopts vcodec=mpeg4:aspect=16/9:vbitrate=8000000 -vf scale=640:480 -o timelapse.avi -mf type=jpeg:fps=24 mf://@list.txt 

Si todo parece correcto pero obtienes una salida de archivo de 0 KB, significa que no hay suficiente espacio en la carpeta temporal de tu dispositivo. Lo resolví con una instalación limpia y ampliando nuevamente el sistema raíz, parece que BTSync había estropeado algunos archivos temporales.

Aquí está la escena final de una cámara web USB, desde la tarde hasta la noche.

Esto fue mucho más fácil de lo que pensé que sería, ¡y no me sorprendería encontrar a alguien en los comentarios detallando un método aún más fácil! Pruébalo por una visión fascinante de la vida que de otra manera sería difícil de comprender, y comparte un enlace a tus creaciones en los comentarios u otros videos de lapso de tiempo que consideras particularmente inspiradores.

In this article