100 likes | 273 Views
Rotation Representations. 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
E N D
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)
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
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
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: 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φ
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
P é ù + - h - h + z - h - z n 2 ( 1 n 2 ) n n ( 1 ) n n n ( 1 ) n 1 1 1 2 3 1 3 2 ê ú Y = - h - z + - h - h + z R ( ) n n ( 1 ) n n 2 ( 1 n 2 ) n n ( 1 ) n ê ú 1 2 3 2 2 2 3 1 ê ú - h + z - h - z + - h n n ( 1 ) n n n ( 1 ) n n 2 ( 1 n 2 ) ë û 1 3 2 2 3 1 3 3 Y Y = y y y = Y Y where ( , , ), ( n , n , n ) / x yx z 1 2 3 h = Y z = Y and cos , sin O’ O Rotation Axis + Angle • Euler’s Rotation Theorem: • all rotations can be expressed as axis/angle
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