Rotation Representations

Slides:



Advertisements
Similar presentations
Today Composing transformations 3D Transformations
Advertisements

Affine Transformations
Lecture 3: orientation Computer Animation.
Computer Vision, Robert Pless
Inverse Kinematics Professor Nicola Ferrier ME 2246,
John C. Hart CS 318 Interactive Computer Graphics
Chris Hall Aerospace and Ocean Engineering
3D Kinematics Eric Whitman 1/24/2010. Rigid Body State: 2D p.
HCI 530 : Seminar (HCI) Damian Schofield. HCI 530: Seminar (HCI) Transforms –Two Dimensional –Three Dimensional The Graphics Pipeline.
Orientation & Quaternions
1 Last lecture  Path planning for a moving Visibility graph Cell decomposition Potential field  Geometric preliminaries Implementing geometric primitives.
Ch. 2: Rigid Body Motions and Homogeneous Transforms
3-D Geometry.
3D orientation.
CSCE 689: Computer Animation Rotation Representation and Interpolation
CSCE 441: Computer Graphics Rotation Representation and Interpolation
CSCE 641: Computer Graphics Rotation Representation and Interpolation Jinxiang Chai.
Orientations Goal: –Convenient representation of orientation of objects & characters in a scene Applications to: – inverse kinematics –rigid body simulation.
CS I400/B659: Intelligent Robotics Rigid Transformations.
CS 450: COMPUTER GRAPHICS 3D TRANSFORMATIONS SPRING 2015 DR. MICHAEL J. REALE.
Computer Vision Group Prof. Daniel Cremers Autonomous Navigation for Flying Robots Lecture 3.1: 3D Geometry Jürgen Sturm Technische Universität München.
Advanced Graphics (and Animation) Spring 2002
1 Kinematics ( 運動學 ) Primer Jyun-Ming Chen Fall 2009.
3D Kinematics Consists of two parts 3D rotation 3D translation  The same as 2D 3D rotation is more complicated than 2D rotation (restricted to z- axis)
Rotations and Translations
Week 5 - Wednesday.  What did we talk about last time?  Project 2  Normal transforms  Euler angles  Quaternions.
Rick Parent - CIS681 ORIENTATION Use Quaternions Interpolating rotations is difficult.
Maths and Technologies for Games Quaternions CO3303 Week 1.
KINEMATICS of a ROLLING BALL Wayne Lawton Department of Mathematics National University of Singapore Lecture based on my student’s MSc.
Advanced Computer Graphics Spring 2014
Rotation and Orientation: Fundamentals Jehee Lee Seoul National University.
CS 551/645 Fall 2000 Parameterized Rotations, Curves, and Surfaces.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 17, 2015 TRANSFORMATIONS AFFINE TRANSFORMATIONS QUATERNIONS.
Comparing Two Motions Jehee Lee Seoul National University.
Week 5 - Monday.  What did we talk about last time?  Lines and planes  Trigonometry  Transforms  Affine transforms  Rotation  Scaling  Shearing.
End effector End effector - the last coordinate system of figure Located in joint N. But usually, we want to specify it in base coordinates. 1.
Learning from the Past, Looking to the Future James R. (Jim) Beaty, PhD - NASA Langley Research Center Vehicle Analysis Branch, Systems Analysis & Concepts.
Fundamentals of Computer Animation Orientation and Rotation.
Quantum Two 1. 2 Angular Momentum and Rotations 3.
Five Geographic Themes; Location
Spherical Geometry Patrick Showers Michelle Zrebiec.
Transformations Review 4/18/2018 ©Babu 2009.
Computer Animation Algorithms and Techniques
CPSC 641: Computer Graphics Rotation Representation and Interpolation
CS 445 / 645 Introduction to Computer Graphics
3D Kinematics Consists of two parts
Ch. 2: Rigid Body Motions and Homogeneous Transforms
More Rigid Transforms, 3D Rotations
COMPUTER GRAPHICS CHAPTERS CS 482 – Fall 2017 TRANSFORMATIONS
Coordinate Transformations in Three Dimensions
Mathematics is a language.
3D Transformations Source & Courtesy: University of Wisconsin,
Homogeneous Coordinates (Projective Space)
Lecture 03: Linear Algebra
Translation, Rotation, and Transformation
COMP 175: Computer Graphics February 9, 2016
CSC4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Transformations.
GAM 325/425: Applied 3D Geometry
Rotational Kinematics
Fused Angles and the Deficiencies of Euler Angles
UMBC Graphics for Games
CS-378: Game Technology Lecture #2: Transformations Prof. Okan Arikan
Geometric Objects and Transformations (II)
Quantum Two.
A definition we will encounter: Groups
True Wind Facilitator Notes:
VIRTUAL ENVIRONMENT.
UNIVERSITY OF ILLINOIS AT URBANA-CHAMPAIGN
Rotation and Orientation: Fundamentals
Screw Rotation and Other Rotational Forms
Presentation transcript:

Rotation Representations notes

Rotations Differ from Translations Rotations are non-Euclidean like travelling on a globe vs. a grid Rotations are not commutative x-rotate, y-rotate is not equal y-rotate, x-rotate etc. Rotations are non-linear true of all parameterizations other than trivial SO(3) Rotations are not very intuitive, because when it comes to space, we think linearly. For example, if you get in a rocket ship and start moving to the left, you’ll keep going forever, never revisiting anyplace you’ve been, unless you change directions. This seems correct. However, if I continuously increase a rotation, I will keep coming back to my starting orientation an infinite number of times, because a rotation of zero degrees is equal to a rotation of 360 degrees. This is similar to moving on a sphere… and is a consequence of rotations being non-Euclidean. Secondly, if I give someone directions for traveling on a grid, and tell them their destination is 5 blocks to the left and 4 blocks up from here, it doesn’t matter whether they first go 5 blocks over and then 4 blocks up, or first go 4 blocks up and then five blocks over. But rotating first by 40 degrees around the X axis and then 50 degrees around the Y axis is very different from rotating 50 degrees around the Y axis and then 40 degrees around the X axis. And finally, rotations are non-linear functions of their parameters, whereas translations are linear functions. OK, so rotations are different from more intuitive translations in a number of ways. Why is that a problem?

Rotation Parameterization Represent rotation space in Euclidean R3 e.g. Euler angles, exponential map Pros three parameters for three DOFs Cons singularities, potentially poor interpolation Parameterizations of rotations fall into two major groups - those that use Euclidean params, and those that use non-Euclidean. The first group represents a non-Euclidean 3 DOF rotation with 3 Euclidean parameters by “flattening” the rotation space. This sounds strange, but it’s very similar to what map-makers do when they attempt to represent the surface of the Earth on a grid by distorting the geometry as you get close to the poles. We’ll examine two different parameterizations that take this approach: Euler angles and the exponential map. The advantages to this approach are that we need only three parameters to represent three rotational DOFs, and our tools are happy because our parameterizations are Euclidean. Unfortunately, there are also problems, namely singularities and potential problems when we interpolate in these parameter spaces. We’ll examine this problems in detail when we talk about the individual parameterizations.

Rotation Parameterization non-Euclidean space e.g. unit quaternions (S3) Pros singularity free Cons must take extra measures to stay in legal sub-space four parameters required for three DOFs Our other alternative is to use a non-Euclidean parameter space with the same topology as the rotation space. The most famous of these is unit quaternions - the surface of the unit-radius sphere in four dimensional space. The strengths of such parameterizations (we will be examining quaternions later) are exactly the weak points of the Euclidean ones - they are singularity-free and interpolate rotations well. The downside is that we must now take extra, explicit measures to enable our tools to function properly on these non-Euclidean parameterizations. Also, such parameterizations always require more than 3 parameters to represent a three DOF rotation; quaternions require 4 - this means our algorithms will be less efficient.

Euler angles (φ,θ,ψ) An Euler angle is a rotation about a single Cartesian axis Create multi-DOF rotations by concatenating Eulers R = Rψ Rθ Rφ 3 DOFs can be obtained by concatenating: An Euler angle is a rotation about a single Cartesian axis We can Create multi-DOF rotations by concatenating Eulers For example, we Can get a three DOF by concatenating X, Y, and Z Euler angles together. In doing so the The order in which the rotations are applied must remain fixed: always rotate first about X, then Y, then Z. Euler-X Euler-Y Euler-Z

X-Convention Most commonly used The rotation given by Euler angles (φ,θ,ψ), where the first rotation is by an angle φ about the z-axis, the second is by an angle θ about the x-axis, and the third is by an angle ψ about the z-axis (again). R = Rψ Rθ Rφ

Yaw-Pitch-Roll Convention

Singularities More than one sets of parameters can create the same rotation matrix. Gimbal lock - two or more axes align, results in loss of rotational DOFs For Yaw-Pitch-Roll Convention As we mentioned previously, the Euler angle parameter space has singularities. The definition of a singularity is a continuous subspace of the entire parameter space, all of whose elements correspond to the same value (in this case, rotation). To continue our analogy to globes and maps, singularities occur at the north and south poles - each is but a single point on the globe, but when the map is unwrapped as we talked about before, the entire line at the top of the map corresponds to the north pole, and similarly for the south pole. Why is this bad? Because singularities induce gimbal lock - a state familiar to mechanical engineers in which two or more rotational axes lign up, resulting in a loss of a rotational DOF. What does that mean?! Let’s see...

Rotation Axis + Angle Euler’s Rotation Theorem: all rotations can be expressed as axis/angle P Y O O’ Y = ú û ù ê ë é - + sin , cos and / ) ( ), where 1 3 2 z h y n R yx x

Quaternions Traditional solution: Use unit quaternions to represent rotations S3 has same topology as rotation space (a sphere), so no singularities A member of unit sphere in R4 q=(qx,qy,qz,qw) a rotation about unit axis v However, gimbal lock, and thus singularities, are just unacceptable for IK and any form of optimization (including spacetime). The traditional solution in graphics is to use unit-length quaternions to represent rotations. The set of all unit-length quaternions forms the surface of a 4 D sphere, and is called S^3. Since the space of rotations has the same topology as a sphere, there are no singularities in the mapping of unit quaternions to rotations.