2017-12-10 18 views
0

Ich habe ein Objekt dreht sich um die y-Achse in 2 Dimensionsbild, ich möchte den Rotationswinkel um die Y-Achse wissen, wenn ich nach der Rotation bereits den Anfangspunkt (X, Y) und den Punkt (X ', Y) habe. Ich habe versucht, die 3-dimensionalen Rotationsgleichungen (https://www.siggraph.org/education/materials/HyperGraph/modeling/mod_tran/3drota.htm) zu befolgen, um den Wert des Rotationswinkels unabhängig von der Rotationsrichtung auszuwerten, aber ich kenne den Z-Wert aus der 2-Dimension nicht, um den Rotationswinkel aus den Gleichungen zu bestimmen.Wie bekomme ich den Drehwinkel um die y-Achse, wenn ich den Anfangspunkt (x, y) und den Ergebnispunkt (x ', y) nach Drehung im 2D-Raum kenne

+1

Können Sie sich um eine Y-Achse "drehen" ohne Z-Achse? – macroland

+0

Setzen von z auf 0 sollte es zu einem planaren Fall machen, was Sie brauchen – Ben

+0

erste z-Achse ist auf Null oder 1 gesetzt, aber der resultierende Punkt weiß nicht die z-Achse davon, und wenn ich z-Achse auf Null gesetzt die Gleichung, um den Winkel witl gleich zu erhalten: x '= x cos (Theta), cos (Theta) = X'/X, was, wenn X = Null? –

Antwort

0

Ich finde heraus, dass ich die genauen Drehwinkel nicht kennen kann, weil ich keine vollständigen Informationen über die Lage der Punkte nach und vor der Drehung habe, ich habe nur eine Projektion von Punkten (nach und vor der Drehung) (x, y) im 2D-Bild (Plan) wie "Nico Schertler" in den Kommentaren sagte, so fand ich eine Näherungslösung, die das 2D-Objekt einem ähnlichen 3D-Modell für dasselbe Objekt zuordnen und die gleiche Bewegung auf dem 3D-Objekt simulieren soll Um Näherungsinformationen über Winkel zu erhalten, möchte ich in meinem Fall die Rotationswinkel eines menschlichen Kopfes (Kopfpose) kennen, also habe ich einige 2D-Kopfmerkmale auf ein anderes 3D-Modell abgebildet und nach einem tiefen Eintauchen in die Mathematik habe ich eine Rotationsmatrix erhalten hier gezeigt (http://www.learnopencv.com/head-pose-estimation-using-opencv-and-dlib/)

Verwandte Themen