Heute sind wir mit etwas Lustiges gehen
. Manchmal denke ich, seine Nützlichkeit ist nicht ganz klar, ich meine wirklichen Nutzen
Nicht nur als ein Spielzeug, aber sicher, wenn Sie es lesen, finden Sie es.
Heute werden wir sehen, wie Webcam Mount einem Remote-Monitoring-System mit einem Linux-Server und einem gewöhnlichen USB, die cheapie.
Wir gehen davon aus, dass Sie Ihre Webcam unter Linux, nicht ins Detail gehen müssen, weil sie nicht Gegenstand dieses Artikels und jede Konfiguration wird eine andere Webcam haben. Glücklicherweise sind die meisten USB-Webcams arbeiten heute perfekt unter Linux.
Die Grundlage dieses Artikels fällt auf die Software für die Überwachung der Webcam für Aktivität: Bewegung . Ich benutzte es zum ersten Mal im Jahr 2001, einige Zeit her, und seitdem kann ich bestätigen, ist eine komplette und robuste Lösung.
Motion arbeitet wie die meisten Software-basierten Kameras Bewegungserkennung, nicht viel Geheimnis, überprüfen Sie die Differenz der Pixel zwischen aufeinander folgenden Bildern eingefangen und wenn der Unterschied mehr als eine vorgegebene Schwelle setzt voraus, dass es Bewegung. Dieser Schwellenwert sollte sorgfältig untersucht werden, so dass eine einfache Bewegung der Vorhang oder eine Reflexion der Sonne durch das Fenster nicht als falsch positiv zu springen. Eines der Merkmale, die ihn von anderen ähnlichen Programmen ist, dass man beobachten, wie viele Kameras wie die Bandbreite des USB-Ports können davon ausgehen, müssen aber nicht auf USB werden, denken Sie daran, dass Linux wie jedes Video-Stream ist, wo es herkommt , / dev / VideoX. Wir werden später sehen.
Installation
In meinem Fall, wie Sie es mich wissen diejenigen, die folgen, ich benutze einen Server mit CentOS5 . Es gibt keine U / min für diese Verteilung (oder zumindest ich nicht in ihren Tag zu finden) und Ich mag Dinge, die normalerweise installiert rpm für Einfachheit, so let's bauen es aus den Quellen, so herunterladen und entpacken.
In diesem Ordner finden Sie eine Datei motion.spec.in erhalten, bearbeiten und ändern Sie die ersten Zeilen:
- Name: @ @ PACKAGE_NAME
- Version: @ @ package_version
durch
- Name: Motion
- Version: 3.2 11
Speichern Sie es. Kopieren Sie nun die Original-Datei, die Sie heruntergeladen früher, Motion-3.2.11.tar.gz nach / usr / src / redhat / SOURCES /. Es ist alles wollen nun die RPM zu bauen.
- ] # rpmbuild -bb motion.spec.in [@ Server OSUS Bewegung -3,2 0.11] # rpmbuild-bb motion.spec.in
Wenn alles gut geht, wenn wir usr/src/redhat/RPMS/x86_64/motion-3.2.11-1.x86_64.rpm beendete das RPM in /. Wenn Sie eine 32bit-Architektur habe ich in einem anderen Ordner als x86_64, schauen Sie in / usr / src / redhat / RPMS. Installieren Sie das RPM erstellt, rpm-ivh-1911.03.02-1.x86_64.rpm Bewegung. Erster Schritt abgeschlossen.
Konfiguration
Motion nicht die richtige GUI, obwohl eine einfache Webanwendung die Parameter ändern, um. Alle Ihre Optionen sind motion.conf verwaltet durch die Konfigurationsdatei / etc / Bewegung /. Standardmäßig ist es ziemlich gut eingestellt. Der wichtigste Parameter ist:
- videodevice = / dev/video1
Hier geben Sie an, was Ihre Kamera.
Mit den anderen Einstellungen können Sie die Web-Benutzeroberfläche zu spielen, hier lasse ich einige wichtige.
Erste Wahl Chula. Auf einer Web-Schnittstelle zum Fang direkt von der Kamera zu sehen, so haben Sie einen Ort, von dem zu spionieren. Selbstverständlich müssen Sie den Zugang zum Hafen, von wo aus Sie anzeigen möchten, haben, dh öffnen Sie es in den Router.
- webcam_port 8001
Verbinden Sie http://ipdelservidor:8001/. Surprise!. Mit Firefox werden Sie sehen, wie ein Video, aber eigentlich ist ein Strom von JPG-Bildern. Der Explorer ist nicht sehr glücklich, dass Format und in der Regel wird verwendet, um ein Applet zu konvertieren.
Das folgende ist interessant, weil anstatt die Bilder zeigt die Pixel Unterschied zwischen ihnen, nützlich System vorbereiten und sehen, wie Bewegung.
- setup_mode off
Aktivieren Sie nun die Web-Management für die Konfiguration des Systems und nicht mehr "stuff".
- control_port 8000
- control_localhost off
- control_authentication tuusuario: tucontraseña
Es ist das gleiche mit dem Hafen, vergessen Sie nicht, es zu öffnen.
Http: / / ipdelservidor: 8001 / Connect und Optionen zu spielen mit dem. Alles, was Sie dort touch ab in Echtzeit und ohne Neustart der Bewegung. Sehr nützlich für die Feineinstellung. Denke aber daran, dass Sie die Änderungen speichern, um Sie das nächste Mal den Server neu starten zu bleiben.
Die folgenden ermöglicht es uns, festzustellen, wie viele Frames ändern müssen, um den Alarm auszulösen. Der Standardwert ist 1, und dies wird vielen Fehlalarmen führen, wenn jemand nach Hause kommt, viele Frames wird geändert
.
- minimum_motion_frames ein
Mit diesem Zusatz generieren wir automatisch ein Frame alle X Sekunden. Ist standardmäßig deaktiviert (0), wenn Sie Bilder geben einen Wertebereich wird erstellt jedes, können wir verwenden, um Web stellen eine Webcam auf "semi-real"
. Als ich im College war hatten wir eine Kamera zeigte auf den Raum regelmäßig aktualisiert und wir ein Bild verwendet, um den Schwanz des Zimmers zu kontrollieren und ab wann gab es wenig
.
- X snapshot_interval
Motion hat viele Optionen, um sie alle in der Dokumentation der offiziellen Website zu besprechen können Sie herausfinden, was sie sind und was sie tun sie alle.
Funktionsprüfung
Wir haben alles vorbereitet, wir haben alles richtig konfiguriert, wird es funktionieren?.
Überlegen Sie, was passiert, wenn wir beginnen startete der Service (Service-Bewegung). Ich bewege mich ein wenig vor der Kamera und in diesem Fall:
Ja, begann bewegte Bilder zu erfassen, was geschieht. Aber das ist nicht alles. Wenn Augenblick eine Bewegung erkannt wird Motion-Video-Aufnahme, lächelt Dieb, sind Sie mit der Aufnahme
:
Senden von Warnungen
Es gibt eine Reihe von Ereignissen, die Sie verwenden, um andere Maßnahmen nicht als eine zu senden per E-Mail, SMS, etc. definiert tun kann ...
- on_event_start Wert
- on_event_end Wert
- on_picture_save Wert
- on_motion_detected Wert
- on_movie_start Wert
- on_movie_end Wert
Fügen Sie einfach den vollständigen Befehl, den Sie verwenden möchten. Mit% f Sie Zugriff auf den Dateinamen in das Bild-und Video-Events erzeugt. Zum Beispiel, ich benutze es, um Video to 3GP konvertieren generiert und per E-Mail in Ihrem Handy zu sehen.
- | mail -s "Alertas de movimiento" correo2sms@tuservidor.com on_movie_end ffmpeg-i% f-s QCIF / & & echo ruta/publica/web/video.3gp "http://tuservidor.com/video.3gp Sie hier sehen" | mail-s "Alerts Bewegung correo2sms @ tuservidor.com
Unschlagbarer Strandlage, aber wahr
. Jetzt wäre eine Aufgabe, die E-Mails aus dem Postfach sammelt und ich werde diese SMS zu schicken. Wir könnten auch direkt die SMS geschickt haben, wie wir sahen hier .
"Ich kann mit mehreren Kameras?
So starten Sie eine zweite Kamera (oder mehr) würde am Ende der Konfigurationsdatei fügen Sie so viele Zeilen, wie Sie möchten Kameras einsetzen wird:
- Gewinde / etc/motion/cam2.conf
Wo cam2.conf ist eine Konfigurationsdatei, wo man Veränderungen als motion.conf, plus alle Parameter, die Sie benötigen, videodevice. Denken Sie daran, dass die Häfen Verwaltung und Anzeige sollte anders sein in jeder Kammer.
Ich möchte meine Kamera von außen ohne Öffnen eines Ports zu sehen
Was Sie bekommen mich hart!
Apache kommt zur Rettung. Configure Ports JPEG-Streaming und / oder Administrations-Oberfläche sichtbar zu sein durch Apache:
- ProxyPass / http:// camara.cgi 127,0 0,0 0,1: 8001
- ProxyPassReverse / http:// camara.cgi 127,0 0,0 0,1: 8001
- ProxyPass / http:// admincamara.cgi 127,0 0,0 0,1: 8000
- ProxyPassReverse / http:// admincamara.cgi 127,0 0,0 0,1: 8000
Nun, alles perfekt. Am zweiten Gedanken, wie Sie beginnen, Warnungen an shit ich habe Angst: S, mich zu stehlen Strangulation
.











