rotation and orientation - seoul national...

45
Rotation and Orientation: Fundamentals Jehee Lee Seoul National University

Upload: others

Post on 09-Jul-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Rotation and Orientation:Fundamentals

Jehee Lee

Seoul National University

Page 2: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

What is Rotation ?

• Not intuitive– Formal definitions are also confusing

• Many different ways to describe– Rotation (direction cosine) matrix

– Euler angles

– Axis-angle

– Rotation vector

– Helical angles

– Unit quaternions

Page 3: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Orientation vs. Rotation

• Rotation

– Circular movement

• Orientation

– The state of being oriented

– Given a coordinate system, the orientation of an

object can be represented as a rotation from a

reference pose

• Analogy

– (point : vector) is similar to (orientation : rotation)

– Both represent a sort of (state : movement)

Page 4: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

2D Orientation

0

2

2

or

Polar Coordinates

Page 5: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

2D Orientation

Although the motion is continuous,

its representation could be discontinuous

0

2

2

or

)(t

Time

Page 6: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

2D Orientation

Many-to-one correspondences

between 2D orientations and their

representations

0

2

2

or

)(t

Time

Page 7: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Extra Parameter

),( yx

X

Y122 yx

Page 8: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Extra Parameter

),( yx

X

Y122 yx

cossin

sincos

2x2 Rotation matrix is yet

another method of using

extra parameters

Page 9: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Complex Number

iyx

Real

Imaginary

Page 10: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Complex Exponentiation

iyx

Real

Imaginary

ie

iiyx

sincos

Page 11: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Rotation Composition

iii eee )(

Real

Imaginary

Page 12: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

2D Rotation

• Complex numbers are good for representing 2D

orientations, but inadequate for 2D rotations

• A complex number cannot distinguish different rotational

movements that result in the same final orientation

– Turn 120 degree counter-clockwise

– Turn -240 degree clockwise

– Turn 480 degree counter-clockwise

Real

Imaginary

2

Page 13: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

2D Rotation and Orientation

• 2D Rotation

– The consequence of any 2D rotational movement can be

uniquely represented by a turning angle

– A turning angle is independent of the choice of the reference

orientation

• 2D Orientation

– The non-singular parameterization of 2D orientations requires

extra parameters

• Eg) Complex numbers, 2x2 rotation matrices

– The parameterization is dependent on the choice of the

reference orientation

Page 14: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

X

Y

Z

X

Y

Z

3D Rotation

• Given two arbitrary orientations of a rigid object,

How many rotations do we

need to transform one

orientation to the other ?

Page 15: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

3D Rotation

• Given two arbitrary orientations of a rigid object,

we can always find a fixed axis of rotation

and a rotation angle about the axis

Page 16: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Euler’s Rotation Theorem

In other words,

• Arbitrary 3D rotation equals to one rotation

around an axis

• Any 3D rotation leaves one vector unchanged

The general displacement of a rigid body with

one point fixed is a rotation about some axis

Leonhard Euler (1707-1783)

Page 17: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Euler angles

• Gimbal

– Hardware implementation of

Euler angles

– Aircraft, Camera

Page 18: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Euler Angles

• Rotation about three

orthogonal axes

– 12 combinations

• XYZ, XYX, XZY, XZX

• YZX, YZY, YXZ, YXY

• ZXY, ZXZ, ZYX, ZYZ

• Gimbal lock

– Coincidence of inner most

and outmost gimbals’

rotation axes

– Loss of degree of freedom

Page 19: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Rotation Vector

• Rotation vector (3 parameters)

• Axis-Angle (2+1 parameters)

),,(ˆ zyx vv

)ˆ,( v

anglescalar :

runit vecto : ˆ

v

Page 20: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

3D Orientation

• Unhappy with three parameters

– Euler angles

• Discontinuity (or many-to-one correspondences)

• Gimbal lock

– Rotation vector (a.k.a Axis/Angle)

• Discontinuity (or many-to-one correspondences)

Page 21: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Using an Extra Parameter

• Euler parameters

2sinˆ

2cos

3

2

1

0

v

e

e

e

e

axisrotation :ˆ

anglerotation :

v

Page 22: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Quaternions

• William Rowan Hamilton (1805-1865)– Algebraic couples (complex number) 1833

iyx 12 iwhere

Page 23: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Quaternions

• William Rowan Hamilton (1805-1865)– Algebraic couples (complex number) 1833

– Quaternions 1843

iyx 12 iwhere

kzjyixw

jikikjkji

jkiijkkij

ijkkji

,,

,,

1222where

Page 24: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Quaternions

William Thomson

“… though beautifully ingenious, have been an

unmixed evil to those who have touched them in

any way.”

Arthur Cayley

“… which contained everything but had to be

unfolded into another form before it could be

understood.”

Page 25: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Unit Quaternions

• Unit quaternions represent 3D rotations

),(

),,,(

v

q

w

zyxw

kzjyixw

12222 zyxw

3S

Page 26: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Rotation about an Arbitrary Axis

• Rotation about axis by angle

1 qpqp ),,,0( zyxpwhere

),,( zyx

),,( zyx

Purely Imaginary Quaternion

2sinˆ,

2cos

vq

Page 27: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Unit Quaternion Algebra

• Identity

• Multiplication

• Inverse

• Unit quaternion space is

– closed under multiplication and inverse,

– but not closed under addition and subtraction

),(

),)(,(

2112212121

221121

vvvvvv

vvqq

wwww

ww

)/(),,,(

)/(),,,(

2222

22221

zyxwzyxw

zyxwzyxw

q

)0,0,0,1(q

Page 28: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Unit Quaternion Algebra

• Antipodal equivalence

– q and –q represent the same rotation

– 2-to-1 mapping between S and SO(3)

– Twice as fast as in SO(3)

)()( pp qq RR

3

Page 29: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Coordinate Free Concepts

• Orientation

– Unit quaternions parameterize 3D orientations without

singularity

• (Finite) Rotation

– Unit quaternions can represent 3D rotation, but

– More convenient to use 3D vectors

• Infinitesimal Rotation

– Can be represented by 3D vectors

Page 30: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Tangent Vector(Infinitesimal Rotation)

3SqT

q

Page 31: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Tangent Vector(Infinitesimal Rotation)

3SqT

q

1q

Page 32: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Tangent Vector(Infinitesimal Rotation)

3SIT

),,,( 0001I

),,,( zyx0

qq 12

Angular Velocity

Page 33: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Exp and Log

log exp

I

)sinˆ,(cos)ˆexp()exp( vvv

Page 34: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Exp and Log

log exp

I

)sinˆ,(cos)ˆexp()exp( vvv

2sinˆ

2cos

3

2

1

0

v

e

e

e

e

Euler

parameters

Page 35: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Rotation Vector

1p

12 ppu

2p

2q

)( 121

12

ppp

upp

1q3

S3R

Page 36: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Rotation Vector

3S

2

1

1 qq

1

1

1 qqI

1p

12 ppu

2p

)( 121

12

ppp

upp

3R

Page 37: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Rotation Vector

2

1

1 qq

1

1

1 qqI

2

1

11

12

logexp

)exp(

qqq

vqq

2

1

1log qqv

1p

12 ppu

2p

)( 121

12

ppp

upp

3R

Page 38: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Rotation Vector

• Finite rotation

– Eg) Angular displacement

– Be careful when you add two rotation vectors

• Infinitesimal rotation

– Eg) Instantaneous angular velocity

– Addition of angular velocity vectors are meaningful

vuvu eee

Page 39: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Spherical Linear Interpolation

• SLERP [Shoemake 1985]

– Linear interpolation of two orientations

t

t1

))(logexp(t

)(),(slerp

2

1

11

2

1

1121

qqq

qqqqq

t

t

Page 40: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Spherical Linear Interpolation

))(logexp(t

)(),(slerp

2

1

11

2

1

1121

qqq

qqqqq

t

t

Page 41: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Coordinate-Invariant Operations

Page 42: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Adding Rotation Vectors

Page 43: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Analogy

• (point : vector) is similar to (orientation : rotation)

Page 44: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Rotation Matrix vs. Unit Quaternion

• Equivalent in many aspects

– Redundant

– No singularity

– Exp & Log

– Special tangent space

• Why quaternions ?

– Fewer parameters

– Simpler algebra

– Easy to fix numerical error

• Why rotation matrices ?

– One-to-one correspondence

– Handle rotation and translation in a uniform way

• Eg) 4x4 homogeneous matrices

Page 45: Rotation and Orientation - Seoul National Universitymrl.snu.ac.kr/courses/CourseAnimation/notes/RotationAnd... · 2016-08-24 · 2D Rotation and Orientation • 2D Rotation –The

Rotation Conversions

• In theory, conversion between any

representations is possible

• In practice, conversion is not simple because of

different conventions

• Quaternion to Matrix

1000

02222

02222

02222

2222

000

0

2222

00

00

2222

0

zyxxzyyzx

xzyzyxzyx

yzxzyxzyx

qqqqqqqqqqqq

qqqqqqqqqqqq

qqqqqqqqqqqq

R