Rotation in 3D-Raum |
| 19.06.2014, 17:53 | hugoW. | Auf diesen Beitrag antworten » |
| Rotation in 3D-Raum Angenommen, ich habe eine Kamera, die an einer Wand befestigt ist und mit leichter Neigung auf den Boden guckt. Die Kamera ist in der Lage die Tiefe von Punkten zu bestimmen, so dass ihre Ausgabe 3D-Punkte sind. Das Koordinatensystem der Kamera sei so definiert, dass die z-Achse von der Kamera hoch zeigt, die y-Achse der Sichtrichtung der Kamera entspricht und x orthogonal zu beiden Achsen nach rechts von der Kamera zeigt. Nimmt man nun mit dieser Kamera eine Szene auf, so entspricht der Boden der Szene nicht der xy-Ebene des Kamerakoordinatensystems. Aufgabe: Finde die Rotationsmatrix, die sozusagen die xy-Ebene und die Bodenebene aufeinander legt. Ich glaube, dass es sich hierbei um die Rotation um die x-Achse handelt, und zwar um den Winkel zwischen der z-Achse und der normalen der Bodenebene. Ich würde nun berechnen: winkel = acos(dot(normale_bodenebene, z-Achse)); Rotationsmatrix: 1 0 0 0 cos(winkel ) -sin(winkel ) 0 sin(winkel ) cos(winkel ) Ist das korrekt so? Muss ich sicherstellen, dass die z-Achse und die Normale der Bodenebene in die gleiche Richtung zeigen oder so etwas? Auf was muss ich noch achten? Herzlichen Dank! |
||
|
|
Verwandte Themen
| Die Beliebtesten » |
| Die Größten » |
|
| Die Neuesten » |
|
