• author
    • Vinzenz Haas

      Informationtechnology
    • 23. Mai 2014 in Allgemein

    Zeitraffer-Aufnahmen mit Raspberry PI Camera

    Es ist recht einfach mit der Raspberry Pi Camera automatisiert Bilder aufzunehmen und aus diesen eine Zeitraffer-Aufnahme zusammenzustellen. Um den Weg dorthin etwas zu erleichtern findet ihr anbei eine schrittweise Anleitung mit Code-Beispielen um selbst Zeitraffer-Aufnahmen zu erstellen.

    Raspberry Pi mit Kamera Modul

    Auf dem Raspberry Pi laufen unterschiedliche Linux-Distributionen. Für dieses kleine How-To ist am Raspberry Pi die aktuelle Raspbian (Debian Wheezy) Version installiert. (Release Date: 2014-01-07)

    Für die weiteren Schritte wird die Console (Bash) und Python als Programmiersprache verwendet.

    Verzeichnis für Bilder erstellen

    mkdir -p /home/pi/cam/pic
    

    Python Script für automatisierte Aufnahmen öffnen

    nano /home/pi/cam/raspcam.py
    

    Das folgende Script macht alle 60 Sekunden eine Aufnahme. Durch die Variable
    „sleeptime“ wird der Zeitabstand zwischen den Aufnahmen definiert. In diesem Fall
    ist diese auf 60 Sekunden gesetzt.
    Es gibt noch viele weitere Parameter in dem Script, die je nach belieben geändert
    werden können. Eine Dokumentation ist hier zu finden: http://picamera.readthedocs.org/

    #!/usr/bin/env python2.7
    import picamera
    from time import sleep
    camera = picamera.PiCamera()
    #sleep time in seconds
    sleeptime = 60
    try:
      camera.sharpness = 0
      camera.contrast = 0
      camera.brightness = 50
      camera.saturation = 0
      camera.ISO = 100
      camera.video_stabilization = False
      camera.exposure_compensation = 0
      camera.exposure_mode = 'auto'
      camera.meter_mode = 'average'
      camera.awb_mode = 'auto'
      camera.image_effect = 'none'
      camera.color_effects = None
      camera.rotation = 0
      camera.hflip = False
      camera.vflip = False
      camera.crop = (0.0, 0.0, 1.0, 1.0)
      camera.resolution = (1280, 720)
      for i, filename in enumerate(camera.capture_continuous('{timestamp:%Y-%m-%d-%H-%M-%S}.jpg')):
        sleep(sleeptime)
    finally:
      camera.close()
    

    Das Skript soll einige Zeit laufen bis es Sinn macht aus den Bildern eine Zeitraffer-Aufnahme zu erstellen. Bei einer Bildwiederholfrequenz von 10 Bildern/s sollten, damit ein brauchbare Ergebnis zu sehen ist, mehr als 50 Bilder zur Verfügung stehen. -> In diesem Fall würde das Video 5 Sekunden dauern.

    Um ein Timelapse Video zu erstellen verwenden wir das Tool „mencoder“.

    sudo apt-get install mencoder
    

    Wechseln in das Verzeichnis welches für die Raspberry Pi Camera angelegt wurde.

    cd /home/pi/cam
    

    Erstellen einer Liste aller Bilder für das Tool mencoder

    ls -tr pic/* > frames.txt
    

    Konvertierung des Videos mittels dem Tools mencoder.
    Hiermit werden die Bilder in der Auflösung 1280×720 in ein „avi“ verwandelt bei einer Bildwiederholfrequenz von 10 Bildern pro Sekunde.

    mencoder -nosound -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell:autoaspect:vqscale=3 -vf scale=1280:720 -mf type=jpeg:fps=10 mf://@frames.txt -o timelapse.avi
    

    Fertig!

    Damit das Script direkt beim Start ausgeführt wird muss kann folgender Befehl in
    die Datei /etc/rc.local hinzugefügt werden.

    /home/pi/cam/raspcam.py &
    

    Diese Zeile muss vor der Zeile „exit 0“ stehen.

    Wenn der Raspberry Pi nun startet werden automatisch Bilder aufgenommen.

    Viel Spaß!

    Wenn sich jemand selbst einen kaufen möchte dann nutzt bitte gleich unsere Affilate-Links zu Raspberry-Pi und Camera-Modul

     

    Quellen:
    http://www.raspberrypi.org/wp-content/uploads/2011/10/Raspi-PGB001.png
    http://www.cyberport.de/mall/1/pic/bild0/Bild0-4001781G99-11L_200.JPG
    http://picture2.cyberport.de/mall/1/pic/bild0/Bild0-3964321123-008_250.JPG