OpenCV detectMultiScale () Parameter minNeighbors
Ich bin derzeit mit Haar-Klassifikatoren, um Objekte zu erkennen.
Auf meine Weise habe ich das gar nicht verstehen, was ist der minNeighbors parameter, was ist
es repräsentiert?
Eigentlich verstehe ich nicht, was werden die Nachbarn von der Erkennung
Kandidat Rechteck. Kann bitte jemand definieren die benachbarten Idee?
InformationsquelleAutor der Frage blakeO | 2014-03-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haar cascade classifier arbeitet mit einem gleitenden Fenster Ansatz. Wenn Sie einen Blick auf die cascade-Dateien, die Sie sehen können parameter size die in der Regel einen ziemlich kleinen Wert wie 20 20. Dies ist das kleinste Fenster cascade erkennen kann. Also, indem man ein sliding window Ansatz, ziehen Sie ein Fenster über das Bild, als Sie die Größe ändern und wieder suchen, bis Sie können nicht in der Größe verändern es weiter. So mit jeder iteration haar - Kaskaden-Klassifikator true Ausgänge gespeichert werden. Also, wenn dieses Fenster geschoben wird, im Bild, in der Größe verändert und glitten wieder auf, es sind tatsächlich erkennt viele viele " false-positives. Sie können überprüfen, was es erkennt, indem minNeighbors 0. Also hier ein Beispiel :
So gibt es eine Menge face-detection aufgrund der Größe des sliding window und eine Menge von Fehlalarmen zu. So zur Vermeidung von false-positives und Holen die richtige Gesicht Rechteck aus Erkennungen, Nachbarschaft Ansatz angewendet wird. Es ist wie wenn es in der Nachbarschaft der anderen Rechtecke als es ist ok, können Sie geben Sie nicht weiter. Also diese Zahl bestimmt, wie viel Nachbarschaft ist erforderlich, übergeben Sie es als ein Gesicht Rechteck. In das gleiche Bild, wenn es 1 :
Also durch erhöhen dieser Zahl können Sie die Vermeidung von false-positives, aber vorsichtig sein, durch die Erhöhung es Sie auch verlieren wahr positiv zu. Wenn es 3 ein perfektes Ergebnis :
InformationsquelleAutor der Antwort yutasrobot
Vom OpenCV-Dokumentation:
In anderen Worten, diese parameter wirken sich auf die Qualität der erkannten Gesichter. Höherer Wert führt zu weniger Funde, aber mit höherer Qualität.
Die Idee, die hinter diesem parameter ist, dass der Detektor läuft auf einem mehreren Skala Stil und gleichzeitig folgende Schiebefenster Strategie. Nach diesem Schritt, wird es geben Sie mehrere Antworten aus, sogar für einen einzigen Gesichts-region. Dieser parameter neigt zu filtern, die diese Reaktionen ebenso wie durch die Einrichtung eines " lower-bound-Schwelle, d.h. es wird nur gezählt, gültig Gesicht, wenn die Anzahl der Antworten für diese Fläche ist höher als
minNeighbors
.Lernen, dass andere Parameter der CascadeClassifier::detectMultiScalecheck-out dieser Beitrag , antwortete ich, früher.
InformationsquelleAutor der Antwort herohuyongtao