So habe ich mit diesem Problem für eine Weile gekämpft, so würde ich es schätzen, wenn jemand mir damit geholfen.Rotation auf pattern matched Bild mit SIFT über OpenCV Python
Ich versuche einen physischen Roboter zu erstellen, der ein Puzzle löst. Das Bild des fertigen Puzzle wird zusammen mit einem Bild von verstreuten Stücke
Ich habe opencv bekommen zur Verfügung gestellt werden Konturen zu finden und jedes Stück herausgreifen und sie drehen, so dass sie alle parallel zu den horizontalen Achsen (alle "diamond" oder "diagonal" Stücke sind gedreht, so dass sie wie Quadrate aussehen)
Ich habe SIFT verwendet, um eine Reihe kleiner quadratischer Stücke an das Gesamtbild anzupassen.
Comparing an un-rotated square piece to the full picture
Das Problem ist, das nicht in der richtigen Ausrichtung ist. Wie würde ich herausfinden, ob ich 90, 180, 270 Grad drehen muss?
Ein anderes Problem, das ich habe, ist zu bestimmen, in welchem Quadranten (nicht-adrant?) Das Stück ist. Zum Beispiel gehört dieses Stück zur unteren rechten Ecke. Gibt es eine Funktion, die die meisten ähnlichen Schlüsselpunkte identifiziert und dann in eine der neun Regionen einordnet?
Hallo, können Sie etwas genauer auf die Durchführung einer Regression eingehen? Ich habe darüber nachgedacht und, wenn ich den Roboter brauche, um das Stück den gesamten fehlenden Winkel irgendwie zu drehen, könnte ich genauso gut den benötigten Winkel auf einmal berechnen, anstatt es vorzeitig zu drehen und dann zu berechnen, welche der vier Optionen zu Führen Sie – elliot430
aus. Sie müssten sich für eine Kostenfunktion entscheiden. In diesem Fall wird durch das Anwenden einer Transformation wie Drehung auf Ihr Bild ein anderes Bild erzeugt. Sie können dieses Bild mit dem Zielfeld vergleichen, um den Winkel zu finden, der die geringsten Kosten verursacht. –