Zum Inhalt springen

Gesichtserkennung in PHP

Man sieht immer wieder, dass verschiedene Fotoapplikationen die Gesichter in Fotos erkennen können und entsprechend hervorheben. Diese Technik gibt es natürlich auch im Web. Neben umfangreichen Bibliotheken wie openCV gibt es auch einfache Möglichkeiten ein Gesicht zu erkennen. Eine schöne Bibliothek für PHP in reinem PHP schauen wir uns heute an.

Die Bibliothek ist komplett in PHP geschrieben und auf github zu finden. Das Herzstück ist die FaceDetector-Klasse. Diese bietet 2 Möglichkeiten das angegebene Bild zu verarbeiten. Entweder wird das Gesicht markiert und die Bilddatei als Jpeg inklusive der Markierung zurückgegeben oder man erhält die Informationen für die Markierung als JSON-String.

Die Analyse wird mit Hilfe gewisser Informationen durchgeführt, die in Form einer dat-Datei mitgeliefert werden. Somit kann man gleich loslegen und mit nur wenigen Zeilen PHP-Code ein nettes Ergebnis erzielen.

$detector = new Face_Detector('detection.dat');
$detector->face_detect('bild.jpg');
$detector->toJpeg();

Das gefundene Gesicht wird immer mit einem Quadrat eingerahmt. Daher sieht der JSON-String auch so aus:

{'x':192, 'y':192, 'w':204.8}

Unschön bei der Klasse sind die vielen Notices, da ImageColorAt anscheinend auf Positionen zugreift, die nicht existieren. Hier müsste noch nachgebessert werden. Dank Github ist dies ja recht leicht zu erledigen.

Published inAllgemein

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close