Comment capturer le temps écoulé avec un Raspberry Pi et une webcam DSLR ou USB
Regardez les nuages bouger ou les semis pousser. La photographie accélérée peut vraiment vous donner une idée de la façon dont le monde fonctionne à un niveau macro, au-delà de ce que l’expérience humaine normale du temps peut imaginer. Ou pour le dire autrement : cela peut transformer le fait de regarder la peinture sécher en beaucoup de plaisir. Malheureusement, les plates-formes professionnelles de time-lapse comme les sprites, tout en ajoutant la possibilité de faire pivoter ou de déplacer la caméra, peuvent coûter jusqu’à 1 000 $. Aujourd’hui, nous allons créer un contrôleur de time-lapse de base sans mouvement – pour un reflex numérique ou une webcam USB – avec juste un Raspberry Pi.
Assurez-vous de consulter tous nos autres grands projets Raspberry Pi.
DSLR
Comme d’habitude, tout notre travail avec le Pi se fera via la ligne de commande SSH, et si vous stockez les fichiers sur le Pi au lieu de la caméra, nous pouvons récupérer les fichiers en utilisant SFTP avec les mêmes informations d’identification. Si vous n’êtes pas sûr de l’adresse IP du Pi, connectez-vous à votre routeur et consultez la liste des appareils actuellement connectés – il devrait se signaler correctement.
Installez d’abord quelques logiciels de base :
sudo apt-get install gphoto2
sudo apt-get install imagemagick
GPhoto2 est un utilitaire de ligne de commande qui interagit directement avec les appareils photo reflex numériques pris en charge (voir la liste complète ici). J’utilise un Canon Rebel T4i/650D. Connectez maintenant la caméra au Pi via USB.
Faire une vidéo du jour
Depuis que j’ai utilisé la valeur ISO automatique et le mode AV, la configuration était relativement simple, nous avons juste utilisé la ligne de commande pour capturer la série – l’utilitaire inclut un paramètre de retard intégré. Il s’agit de la commande la plus basique pouvant être utilisée pour tester la fonctionnalité :
gphoto2 – capturer l’image et télécharger
Cela transférera le fichier sur votre Pi, ou
gphoto2 – capture d’image
Gardez l’image sur l’appareil photo. À 8 Mo chacun, il est préférable de les enregistrer sur l’appareil photo, puis d’effectuer l’assemblage vidéo sur un PC ou un Mac.
important: Par défaut, les images sont enregistrées sur SD-RAM, et non sur la carte mémoire de l’appareil photo. Cela signifie que vous les perdez tous (je parle d’expérience). Pour nous assurer qu’ils sont réellement enregistrés, nous devons d’abord définir la cible de capture :
gphoto2 –get-config /main/settings/capturetarget
Regardez la liste qu’il affiche et définissez la cible comme suit, en remplaçant 1 Celui qui apparaît comme votre carte prévaudra.
gphoto2 –set-config /main/settings/capturetarget=1
Pour capturer en mode accéléré, ajoutez -F et -Une génération Précisez le total Cadre tu veux capturer ce moment intervalle entre chacun. Dans cet exemple, 1440 images sont capturées toutes les 30 secondes, ce qui, lorsqu’il est transformé en un film 24 FPS, équivaut à environ une minute. Je ne pense pas que la batterie de mon appareil photo durera aussi longtemps, mais je verrai combien je peux obtenir.
gphoto2 –capture-image -F 1440 -I 30
Une bizarrerie à garder à l’esprit ; l’appareil photo peut s’éteindre et ne plus répondre une fois la commande terminée – vous devez éteindre manuellement l’interrupteur d’alimentation (au moins sur mon modèle). Cela ne devrait pas être un problème sur le terrain lors de l’utilisation, mais à des fins de test, cela peut devenir assez ennuyeux. Si vous connaissez une solution à ce problème, faites-le moi savoir dans les commentaires !
Faire un film
Transférez les fichiers sur votre ordinateur de bureau pour traitement. Sur un Mac, j’ai trouvé plus facile d’utiliser la ligne de commande, mais vous aurez besoin de XCode, Brassage maisonet joueur Installez d’abord.Pour ce faire, téléchargez d’abord Xcode depuis l’App Store (c’est gratuit), puis téléchargez-le depuis priorité -> Télécharger onglet, activer outil de ligne de commande.
Exécutez ensuite (un à la fois):
rubis <(curl -fsSkL raw.github.com/mxcl/homebrew/go)
médecin de brassage
Brasser installer mplayer
Vous devriez maintenant avoir installé les composants d’encodage nécessaires. L’exécution de la commande suivante crée d’abord une liste de fichiers .jpg capturés, puis envoie cette liste à mencoder, un utilitaire de création de vidéos. Modifiez la valeur FPS si vous souhaitez que votre film s’exécute plus rapidement.
CD <您的延时照片目录>
ls *.jpg > liste.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
C’est ce que j’ai obtenu, 24 FPS en utilisant 330 images par minute du matin au midi. Le temps au Royaume-Uni est vraiment mauvais, passant du soleil au nuageux avec des intervalles de 5 minutes tout au long de la journée. soupir.
Pour encoder des films sous Windows, ou si vous préférez utiliser l’interface graphique, téléchargez Avidemux et suivez le didacticiel vidéo ci-dessous. Assurez-vous que vos photos sont numérotées de manière séquentielle.
Utilisation d’une webcam USB
Bien sûr, tout le monde n’a pas de reflex numérique, mais au lieu d’acheter un module d’appareil photo officiel coûteux pour le Raspberry Pi, vous pouvez également utiliser une webcam USB standard pour la photographie en accéléré – dans mon cas, la PS3 Eye sur un PC ou travailler sur un Mac est souvent fastidieux, mais fonctionne immédiatement sur un Pi. Vous devrez peut-être utiliser un concentrateur USB alimenté et la prise en charge de la caméra est sommaire.
Tout d’abord, vérifiez que votre webcam est correctement détectée.
ls -l /dev/vidéo*
J’espère que vous verrez /dev/video0 répertorié comme ceci :
Nous pouvons ensuite procéder à l’installation du logiciel de capture de la webcam et le tester.
sudo apt-get install fswebcam
fswebcam -d /dev/video0 -r 640×480 test.jpeg
Supprimer les fichiers:
rm test.jpg
Prenez quelques photos d’essai afin de positionner correctement l’appareil photo, puis nous passerons au script time-lapse.
timelapse mkdir
Laps de temps d’exécution nano
Collez ce qui suit :
#!/bin/bash
# Contrôleur de délai pour webcam USB
DIR=/home/pi/timelapse
x=1
même si [ $x -le 1440 ]; Faire
nom_fichier=$(date-u + »%d%m%Y_%H%M-%S »).jpg
fswebcam -d /dev/video0 -r 640×480 $DIR/$filename
x=$(($x + 1))
dormir 10 ;
Achevée;
À des fins de test, j’ai réglé le temps d’attente entre les prises de vue sur 10 secondes. Vous voudrez peut-être changer cela à chaque minute lorsque vous démarrez réellement la capture. Modifiez les lignes suivantes pour déterminer le nombre d’images à capturer, défini sur 1440 dans l’exemple :
même si [ $x -le 1440 ]; Faire
Pour rendre le script exécutable, utilisez :
délai d’exécution chmod 755
Puis lancez-le avec :
./runtimelapse
Faire un film
Toujours sur la ligne de commande SSH, nous essaierons d’assembler le film directement sur le Pi – si vous avez pris des milliers de photos et que votre webcam a une résolution plus élevée, vous trouverez peut-être que cela est très lent, dans ce cas Faites défiler vers le haut à la description de Movie DSLR et utilisez SFTP pour transférer le fichier sur votre PC.
timelapse cd
ls *.jpg > liste.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 tout semble correct, mais que vous obtenez une sortie de fichier de 0 Ko, cela signifie que vous n’avez pas assez d’espace sur le dossier temporaire de votre appareil. Je l’ai résolu en effectuant une nouvelle installation et en étendant à nouveau le système racine – BTSync semblait gâcher certains fichiers temporaires.
C’est la scène réalisée par la webcam USB, du soir au noir.
C’est beaucoup plus facile que je ne le pensais – je ne serais pas surpris de voir quelqu’un dans le détail des commentaires d’une manière plus simple ! Essayez des vues fascinantes de la vie qui seraient autrement incompréhensibles et partagez un lien vers votre création dans les commentaires ou d’autres vidéos accélérées que vous trouvez particulièrement inspirantes.
A propos de l’auteur