Automatisch Bilder mit Webcam an Arduino Yún aufnehmen

Nachdem ich mein Problem mit dem Startskript behoben hatte konnte ich auch den eigentlichen Zweck endlich umsetzen. Mit dem Start des Yún sollte auch eine Webcam direkt starten Bilder aufzunehmen und diese auf der SD Karte speichern. Das Ganze soll durchgehend passieren, alle drei Sekunden ein neues Bild.

Nach etwas Suche im Internet fand ich verschiedene Lösungen die mehr oder weniger performant waren. Die beste Idee kam meiner Meinung nach von dem Blogger Luca, der selber ein gutes Tutorial zu dem Thema verfasst hat. Bei mir traten aber ein paar Eigenheiten auf, weshalb ich sein Tutorial gerne etwas erweitern möchte.

Wahl der Webcam

Auf der Seite des verwendeten Paketes gibt es eine Liste von Kameras die verwendet werden können. Meine Wahl fiel auf die Microsoft LifeCam HD-3000, nicht zuletzt da diese schon von anderen an dem Yún betrieben wurde und ich daher sicher sein konnte, dass diese korrekt funktioniert.

Installation der Webcam auf dem Yún

  1. Installiert mittels der Weboberfläche unter System -> Software die Pakete kmod-video-uvc und fswebcam. Sollten diese nicht gefunden werden klickt einmal auf den Button Update lists.
  2. Unter Status -> System Log sollte nun ein Eintrag mit der erkannten Webcam in den letzten Einträgen zu finden sein.

Ein erstes Foto kann nun testweise aufgenommen werden. Wechselt dazu per SSH in ein Verzeichnis mit Schreibrechten und führt den Befehl fswebcam --no-banner --save photo.jpg aus. Wenn alles funktioniert hat sollte nun eine Datei photo.jpg vorhanden sein mit dem ersten Bild der Webcam.

Bilder automatisch aufnehmen lassen:

Generell kann die Erweiterung fswebcam auch durchgehend Fotos aufnehmen. Fügt man den Parameter --loop 3 an, so macht diese automatisch alle drei Sekunden ein neues Foto, bis die Ausführung gestoppt wird, z.B. mit Strg+C. Dieser Aufruf hat aber leider einen Nachteil bei meiner Anwendung. Ruft man die Datei mit dem Bild auf in einem Moment wo ein neues Foto gespeichert wird kann es zu Fehlern während der Anzeige kommen. Es musste also ein Weg gefunden werde den Prozess des Speicherns zu überspringen, welcher ebenfalls so lange läuft wie der Yún selbst. Ich entschied mich hier für ein Startskript, welches mit zwei Dateien arbeitet:

while true
do
    fswebcam --no-banner --quiet --resolution 640x480 --skip 1 --save /www/sd/capture.jpg
    rm /www/sd/cam.jpg
    mv /www/sd/capture.jpg /www/sd/cam.jpg
    sleep 3
done

Defekte / Artefakte in aufgenommenen Bildern

Ich hatte anfangs des Öfteren das Problem, dass die aufgenommenen Bilder Artefakte und falsche Farben aufwiesen. Dies scheint an der Initialisierung zu liegen, wenn die Kamera gestartet wird. Der Parameter --skip 1 behebt diese Problem. Ich habe zum Testen nur diese eine Webcam, es ist durchaus möglich das dies Problem nicht mit jedem Model auftritt. Bei meiner Kamera konnte ich damit alle Probleme beseitigen.

Share:

Einen Kommentar verfassen

Ihre E-Mail-Adresse wird nicht veröffentlicht, sie dient nur der Identifikation! Für die Profilbilder wird Gravatar verwendet und reCAPTCHA, um Spam zu vermeiden.

Kommentare 0

Es sind noch keine Kommentare für diesen Beitrag vorhanden.