Verwirrung bezüglich Ankerkästen in YOLO

8

Ich gehe den Kurs von Andrew NG durch, in dem es um YOLO geht, aber er geht nicht auf die Implementierungsdetails von Ankerkästen ein.

Schauen Sie sich den Code an, jede Ankerbox wird durch zwei Werte dargestellt, aber was genau repräsentieren diese Werte?

Was die Notwendigkeit von Ankerboxen angeht, bin ich auch ein wenig verwirrt darüber - Soweit ich weiß, haben die Grundwahrheitsbezeichnungen ungefähr 6 Variablen:

1) P_o, die prüfen, ob es sich um ein Objekt oder einen Hintergrund handelt,

2,3) Bx, By (das sind die Mittelkoordinaten)

4,5) Bh, Bw welche sind die (Höhe und Breite der Box)

6) C (Objektklasse, die davon abhängt, wie viele Klassenbezeichnungen Sie haben, sodass Sie mehrere C haben können)

Zum Erstellen des Begrenzungsrahmens

Bh wird durch 2 geteilt, wobei eine Hälfte von den Mittelpunkten (Bx, By) nach oben und die andere Hälfte nach unten verläuft.

Wenn wir unseren Klassifikator trainieren, wären die Vorhersagefelder dann im Verlauf des Trainings nicht nahe an den Grundwahrheitsbezeichnungen? Wenn unser Grundwahrheitsetikett also eine hohe Höhe, eine geringe Breite als Kästchen für einige Bilder und eine geringe Höhe und große Breite für andere Bilder aufweist, würde unser Klassifizierer nicht automatisch lernen, zu unterscheiden, wann er übereinander verwendet werden soll trainiert werden? Wenn ja, wozu dienen dann Ankerkästen? Und was bedeuten diese Zahlen für Ankerkästen?

Vielen Dank.

Mondond
quelle

Antworten:

1

Kein Profi, aber ich glaube, ich kenne einige Antworten auf Ihre Fragen.

Wenn wir unseren Klassifikator trainieren, würden sich die Vorhersagefelder im Verlauf des Trainings nicht in der Nähe der Bodenwahrheitsbezeichnungen befinden

Ich denke, das hat YOLO v1 getan. Laut dem Video von Andrew NG werden die Begrenzungsrahmen eingeführt, um mehrere Objekte in derselben Gitterzelle zu lösen. Und gemäß diesem Beitrag stellt die Zuweisung von Ankerboxen sicher, dass eine Ankerbox die Grundwahrheit für ein Objekt vorhersagt, das in seiner eigenen Gittermitte zentriert ist, und nicht für eine Gitterzelle, die weit entfernt ist (wie YOLO es kann).

Was bedeuten diese Zahlen für Ankerkästen?

Sie sind nur Breite und Höhe (Form). In YOLO v2 wird es verwendet, um die IOU zu berechnen, vorausgesetzt, alle Boxen befinden sich an derselben Position (ohne Berücksichtigung der Position). Man könnte sich vorstellen, dass nur versucht wird, die Form anzupassen. Und es verwendet (1-IOU) als Abstand, wenn das K-Mittel-Clustering angewendet wird.

Jamie M Zhang
quelle