Knusper knusper knäuschen, wer knappert an meinem Häuschen?

Begonnen von Rince, 19 Juni 2013, 16:15:38

Vorheriges Thema - Nächstes Thema

Rince

Hi,

zwei Sachen vorweg:
1. ich bin kein Kontrollfreak und denke auch nicht an 1984
2. ich akzeptiere, dass es keine Resonanz geben wird, dann werde ich das Posting in 10 Jahren nochmal nach oben pushen :)


Idee:
Auf einem kleinen Rechner (Raspberry oder sowas reicht zur Not aus) laufen einige openCV Programme, die die Arbeit erledigen und FHEM ihre Ergebnisse mitteilen.

openCV
www.opencv.org

Beispiel:
http://www.raspberrypi.org/archives/3645 (seht euch das Video an)
http://thinkrpi.wordpress.com/ (Dokumentation dazu)


Woran ich denke:
Jemand klingelt an meiner Haustür
FHEM sagt mir, wer da ist (also falls es jemand bekanntes ist)

Was man wohl braucht:
Eine Kamera, die Bilder vom Hauseingang schießt. IPCAM gibt es ja netterweise schon :)
Jemand, der von Programmierung was versteht und sich openCV ansehen will...


Grundlegendes:
openCV ist quasi eine mächtige Programmierbibliothek um Spezialprogramme für Bildbearbeitung (oder Video) zu entwerfen.
Eigenfaces ist eine Methode der Gesichtsidentifizierung, die auf Grund einer Datenbank mit möglichst vielen Gesichtern einer Person (so 80-100 Stück) eine schnelle Identifizierung ermöglicht.



So könnte es ablaufen:

Vorbereitung:
Man nimmt eine Zeit lang brav mit der WebCam 5-10 Bilder von jeder Person auf die man erkennen möchte, so viele wie möglich.
Diese sortiert man in Unterverzeichnisse mit dem Namen der Person.

/Rohbild_Hans_von_vorne oder /Rohbild_Hans_von_links oder /Rohbild_Hans_von_rechts

Nun kommt openCV ins Spiel:

Man bräuchte ein openCV Programm, welches in diesen Verzeichnissen alle Bilder zunächst automatisch bearbeitet und in neue Verzeichnis packt.
Das Bearbeiten sollte automatisch gehen und müsste Umfassen: Farbaufbereitung (wir brauchen schwarz weiß) Gesicht ausschneiden (openCV kann das, Hintergründe sind für Eigenfaces ein Graus), Helligkeit anpassen...

Diese Resultate könnte es dann in Verzeichnisse ablegen wie:
/Hans_von_vorne oder /Hans_von_links oder /Hans_von_rechts


Nun käme ein weiteres openCV Programm ins Spiel, welches nun auf Grund der vielen Bilder einer Person quasi die Referenzwerte für Eigenfaces erzeugt und in eine Datenbank schreibt.


Das war Teil 1, die Vorbereitung.


Nun zum Alltagsbetrieb:
Bewegungsmelder springt an
IPCAM macht eine Reihe von Bildern

Jetzt wieder openCV:
Bild nehmen, aufbereiten wie oben, Gesicht ausschneiden und in der Datenbank nachsehen, ob es einen passenden Namen gibt :)
Wenn ja, diesen an FHEM übermitteln.

Angeblich kann ein Raspberry so 7-10 Bilder / Sekunde identifizieren

Wenn man will, könnte man die aufbereiteten Bilder gleich noch speichern, so dass, nach einem erneuten Training, die Erkennungsleistung besser wird :)


Klingt das spannend oder eher abschreckend?
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

Erasor

Ich find die Idee super. Nur umsetzen kann ich das leider nicht...

Rince

Ok,
es sind noch keine 10 jahre vergangen, aber es gibt Fortschritte :)

http://www.raspberrypi.org/facial-recognition-opencv-on-the-camera-board/

http://thinkrpi.wordpress.com/2013/05/22/opencv-and-camera-board-csi/


Könnte auch eine elegante Variante sein, rauszufinden wer in einem Raum ist :)
So ganz ohne Bluetooth Sensoren und sonstiges :)
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

strauch

Also bei mir wäre für sowas der FAF (Family.......) sowas von zu niedrig, die sind schon nicht so wirklich begeistert das ich die Smartphones für Presence hernehme und das kann ich auch verstehen. Vorallem weil die Hütte so nervige E-Mails verschickt, wenn die Fenster nicht geschlossen wurden o.ä. ;-).
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.