2016-07-22 25 views
1

Gibt es eine Möglichkeit, die Gesichtserkennung mit OpenCV zu implementieren? Ich habe versucht, LBPH zu verwenden und mit einem Bild zu trainieren. Es gibt ein Konfidenzmaß, aber ich bin mir nicht sicher, wie genau das für die Verifizierung verwendet werden soll.OpenCV Face Verification

Meine Frage ist, wie kann ich ein Gesichtserkennungssystem erstellen, das mir sagt, wie ähnlich die beiden Gesichter sind/wenn sie dieselbe Person sind oder nicht OpenCV verwenden. Es scheint nicht so, als ob der Konfidenzwert ein genaues Maß ist, wenn ich das richtig mache.

Auch, ist ein höheres Konfidenzniveau besser?

Dank

Antwort

1

OpenCV 3 unterstützt derzeit folgende Algorithmen zur Gesichtserkennung:
- Eigengesichter (siehe createEigenFaceRecognizer())
- Fisherfaces (siehe createFisherFaceRecognizer())
- Local Binary Patterns Histogramme (siehe createLBPHFaceRecognizer ())

Vertrauenswürdigkeit durch diese Algorithmen ist das Ähnlichkeitsmaß zwischen Gesichtern, aber diese Methoden sind wirklich alt und funktionieren schlecht. Ich würde Sie diesen Artikel vorschlagen versuchen: http://www.robots.ox.ac.uk/~vgg/publications/2015/Parkhi15/parkhi15.pdf
Grundsätzlich Sie von hier ausgebildeten caffe Modell herunterladen müssen: http://www.robots.ox.ac.uk/~vgg/software/vgg_face/src/vgg_face_caffe.tar.gz
Verwenden opencv diesen Klassifikator wie gezeigt ausgeführt ist dieses Beispiel: http://docs.opencv.org/trunk/d5/de7/tutorial_dnn_googlenet.html#gsc.tab=0
Dann FC8 Feature-Layer der Größe 4096 sammeln schwimmt aus Caffe-Netzwerk. Und berechnen Sie Ihre Ähnlichkeit als L2 Norm zwischen zwei fc8 Schichten für Ihre Gesichter berechnet.