Sonntag, 12. Mai 2013

Bewegungserkennung mit Live-Video


Bewegungserkennung mit Live-Video

Um EVACmd für die Bewegungserkennung einzurichten benötigen wir einen Raspberry-PI mit installiertem Paket "Motion". In Motion können wir über das Webinterface unter http://IP-DES-RASPBERRY:8080 die Kamera (auch Netzwerkkamera) auswählen und die Einstellungen
der Bewegungserkennung konfigurieren.

Um das Video Live in EVACmd anzuzeigen ist bei erkannter Bewegung mittels httpget die Internetseite der EVACmd aufzurufen mit dem Befehl (z.B. BEW = http://IP-EVA/?BEW).
Die EVACmd erhält dann bei einer Bewegung den Befehl "BEW", auf den Sie reagieren kann.
Für das anzeigen des Videos kann nun entweder der aktuelle Livestream des MOTION verwendet
werden oder der direkte Stream von der Kamera.

Um den Stream direkt anzuzeigen, benötigen wir das Programm ffplay aus dem ffmpeg-Paket.
dieses Programm können wir dann als Regel beim Webinterface eintragen (Wenn 1 eq BEW) dann
Start (Programm CAM1 Bin:bin\ffplay.exe -v 0 [Pfad zum Stream der Cam]).
Um den Stream zu beenden definieren wir eine weitere Regel für einen Timer auf z.B. 15 Sec mit
(\Bin\sleep.exe -s 15, wait = True) und einen Befehl, der ffplay wieder schließt (kill /F /IM ffplay.exe).
Sollte jetzt eine Bewegung eintreten, so wird der Stream geöffnet, gleichzeitig ein Timer gestartet, der den nächsten Prozess nach 15 Sec ausführt und dann ffplay wieder beendet. Voilla !

Eine zweite (unstabile) Möglichkeit ist, den Stream des MOTION direkt per URL von http://IP-RASPBERRY:8081 aufzurufen. Hier besteht sogar die Möglichkeit, die bewegten Bereiche sichtbar zu machen.  Für die Anzeige kann MOD_Show mit der URL verwendet werden. Leider stürzt MOTION hier des öfteren ab, und gibt keine Ausgabe des Videos mehr.

Zusätzlich kann über EVACmd der Befehl des "Bewegung Ende" definiert werden, als Trigger verwende ich hier das Event "Video Ende".

Keine Kommentare:

Kommentar veröffentlichen