Gesichtserkennung
Das Thema Gesichtserkennung ist mit der Bibliothek OpenCV recht leicht. OpenCV umfasst eine Vielzahl von Funktionen zur Bildverarbeitung und -erkennung. Selbst komplexe Aufgaben lassen sich damit häufig über nur wenige Funktionsaufrufe erledigen. Der einzige Nachteil von OpenCV ist ihre Dokumentation: Sie entstammt einem akademischen Umfeld und eine Funktionserklärung kann schon mal aus wenig mehr als einem Verweis auf eine wissenschaftliche Arbeit bestehen. Da aber der Einsatz recht gradlinig ist, reicht es häufig, einfach mit den Funktionsparametern zu spielen, und den Rest beantworten Stackoverflow und Google.
Im Falle der Gesichtserkennung ist nicht einmal das notwendig, der Code besteht aus gerade mal fünf Zeilen:
import cv2 capture = cv2.VideoCapture(0) ret, img = capture.read() cascade = cv2.CascadeClassifier("haarcascade_frontalface_alt2.xml") rects = cascade.detectMultiScale(img, 1.3, 4, \\ cv2.cv.CV_HAAR_SCALE_IMAGE, (20,20))
OpenCV öffnet in der zweiten Zeile die Kameraverbindung und liest in der nachfolgenden Zeile das Kamerabild. In der vierten Zeile wird eine Beschreibungsdatei geladen, am Ende erfolgt die eigentliche Erkennung. Die Positionen der gefundenen Gesichter im Bild befinden sich dann im zurückgegebenen rects-Array. Ist es leer, wurde auch kein Gesicht gefunden.
Die Beschreibungsdatei ist der Dreh- und Angelpunkt der Erkennung. Es handelt sich um eine XML-Datei mit abstrakten, maschinengelernten Beschreibungen (Classifier), wie ein bestimmtes Objekt oder eine Klasse davon aussieht. Wer wie wir nur allgemein Gesichter finden will, kann aus einer Reihe von Beschreibungsdateien auswählen, die von OpenCV mitgeliefert werden.
Wer bestimmte Personen erkennen will, für den liefert OpenCV die notwendigen Werkzeuge mit, um eigene Beschreibungsdateien zu erzeugen.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Intel Galileo getestet: Hardware, die sich freut | LEDs ansteuern |
Wozu der Umweg über Flattr wenn man auch direkt Paypal nutzen kann? Versteh ich nicht.
Danke :] Ich benutze die app täglich auf mehreren PCs und habe mich so drann gewöhnt. Sie...
Besten Dank für die Info. Gruss, gehirnpest
...ein 5 Jahresprojekt, dass dann nach 7 Jahren wegen nicht eingetretenem Erfolg eingestellt.