Transformation Matrices - TU Chemnitz

120
Transformation Matrices Dr.-Ing. John Nassour Artificial Intelligence & Neuro Cognitive Systems FakultΓ€t fΓΌr Informatik 0 0 1 1 1 2 2 2

Transcript of Transformation Matrices - TU Chemnitz

Page 1: Transformation Matrices - TU Chemnitz

Transformation Matrices

Dr.-Ing. John Nassour

Artificial Intelligence & Neuro Cognitive Systems FakultΓ€t fΓΌr Informatik

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1 𝒑

𝑧2

𝑦2

π‘₯2 𝑧𝑛

𝑦𝑛 π‘₯𝑛

Page 2: Transformation Matrices - TU Chemnitz

Suggested literature

β€’ Robot Modeling and Control β€’ Robotics: Modelling, Planning and Control

14.10.2014 J.Nassour 2

Page 3: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 3

Motivation

A large part of robot kinematics is concerned with the establishment of various coordinate systems to represent the positions and orientations of rigid objects, and with transformations among these coordinate systems. Indeed, the geometry of three-dimensional space and of rigid motions plays a central role in all aspects of robotic manipulation. A rigid motion is the action of taking an object and moving it to a different location without altering its shape or size

Page 4: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 4

Transformation

The operations of ROTATION and TRANSLATION. Introduce the notion of HOMOGENEOUS TRANSFORMATIONS (combining the operations of rotation and translation into a single matrix multiplication).

Page 5: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 5

Representing Positions

The coordinate vectors that represent the location of the point 𝒑 in space with respect to coordinate frames π’πŸŽ π’™πŸŽ π’šπŸŽ and π’πŸ π’™πŸ π’šπŸ, respectively are:

Page 6: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 6

Representing Positions

Lets assign coordinates that represent the position of the origin of one coordinate system (frame) with respect to another.

Page 7: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 7

Representing Positions

What is a difference between the geometric entity called 𝒑 and any particular coordinate vector 𝒗 that is assigned to represent 𝒑?

𝒑 is independent of the choice of coordinate systems. 𝒗 depends on the choice of coordinate frames.

Page 8: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 8

Representing Positions

A point corresponds to a specific location in space. A vector specifies a direction and a magnitude (e.g. displacements or forces). The point 𝒑 is not equivalent to the vector π’—πŸ, the displacement from the origin π’πŸŽ to the point 𝒑 is given by the vector π’—πŸ.

We will use the term vector to refer to what are sometimes called free vectors, i.e., vectors that are not constrained to be located at a particular point in space.

Page 9: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 9

Representing Positions When assigning coordinates to vectors, we use the same notational convention that we used when assigning coordinates to points. Thus, π’—πŸ and π’—πŸ are geometric entities that are invariant with respect to the choice of coordinate systems, but the representation by coordinates of these vectors depends directly on the choice of reference coordinate frame.

Page 10: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 10

Coordinate Convention

In order to perform algebraic manipulations using coordinates, it is essential that all coordinate vectors be defined with respect to the same coordinate frame. In the case of free vectors, it is enough that they be defined with respect to parallel coordinate frames.

Page 11: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 11

Coordinate Convention

An expression of the form: is not defined since the frames π’πŸŽ π’™πŸŽ π’šπŸŽ and π’πŸ π’™πŸ π’šπŸ are not parallel.

Page 12: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 12

Coordinate Convention

An expression of the form: is not defined since the frames π’πŸŽ π’™πŸŽ π’šπŸŽ and π’πŸ π’™πŸ π’šπŸ are not parallel.

Thus, we see a clear need, not only for a representation system that allows points to be expressed with respect to various coordinate systems, but also for a mechanism that allows us to transform the coordinates of points that are expressed in one coordinate system into the appropriate coordinates with respect to some other coordinate frame.

Page 13: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 13

Representing Rotations

In order to represent the relative position and orientation of one rigid body with respect to another, we will rigidly attach coordinate frames to each body, and then specify the geometric relationships between these coordinate frames.

Page 14: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 14

Representing Rotations

In order to represent the relative position and orientation of one rigid body with respect to another, we will rigidly attach coordinate frames to each body, and then specify the geometric relationships between these coordinate frames.

Page 15: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 15

Representing Rotations

In order to represent the relative position and orientation of one rigid body with respect to another, we will rigidly attach coordinate frames to each body, and then specify the geometric relationships between these coordinate frames.

How to describe the orientation of one coordinate frame relative to another frame?

Page 16: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 16

Rotation In The Plane

Page 17: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 17

Rotation In The Plane

Fram π’πŸ π’™πŸ π’šπŸ is obtained by rotating frame π’πŸŽ π’™πŸŽ π’šπŸŽ by an angle 𝜽. The coordinate vectors for the axes of frame π’πŸ π’™πŸ π’šπŸ with respect to coordinate frame π’πŸŽ π’™πŸŽ π’šπŸŽ are described by a rotation matrix:

where𝒙 𝟏𝟎 and π’š 𝟏

𝟎 are the coordinates in frame π’πŸŽ π’™πŸŽ π’šπŸŽ of unit vectors 𝒙 𝟏 and π’š 𝟏 , respectively.

Page 18: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 18

Rotation In The Plane

𝑹 𝟏𝟎 is a matrix whose column vectors are the coordinates of the (unit vectors along the)

axes of frame π’πŸ π’™πŸ π’šπŸ expressed relative to frame π’πŸŽ π’™πŸŽ π’šπŸŽ.

Page 19: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 19

Rotation In The Plane

𝑹 𝟏𝟎 describes the orientation of frame π’πŸ π’™πŸ π’šπŸ with respect to the frame π’πŸŽ π’™πŸŽ π’šπŸŽ.

The dot product of two unit vectors gives the projection of one onto the other

𝑹 𝟎𝟏 =?

Page 20: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 20

Rotation In The Plane

The dot product of two unit vectors gives the projection of one onto the other

The orientation of frame π’πŸŽ π’™πŸŽ π’šπŸŽ with respect to the frame π’πŸ π’™πŸ π’šπŸ.

Since the inner product is commutative

Page 21: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 21

Rotations In Three Dimensions

Each axis of the frame π’πŸπ’™πŸπ’šπŸπ’›πŸ is projected onto coordinate frame π’πŸŽπ’™πŸŽπ’šπŸŽπ’›πŸŽ. The resulting rotation matrix is given by:

Page 22: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 22

Rotation About π’›πŸŽ By An Angle 𝜽

Page 23: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 23

Rotation About π’›πŸŽ By An Angle 𝜽

Called a basic rotation matrix (about the z-axis) 𝑹 𝒛,𝜽

Page 24: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 24

Basic Rotation Matrix About The Z-axis

Page 25: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 25

Basic Rotation Matrix About The X-axis

𝑹 𝒙,𝜽

Page 26: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 26

Basic Rotation Matrix About The Y-axis

𝑹 π’š,𝜽

Page 27: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 27

Example Find the description of frame π’πŸπ’™πŸπ’šπŸπ’›πŸ with respect to the frame π’πŸŽπ’™πŸŽπ’šπŸŽπ’›πŸŽ.

Page 28: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 28

Example

The coordinates of π’™πŸare

The coordinates of π’šπŸare

The coordinates of π’›πŸ are

Find the description of frame π’πŸπ’™πŸπ’šπŸπ’›πŸ with respect to the frame π’πŸŽπ’™πŸŽπ’šπŸŽπ’›πŸŽ.

Page 29: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 29

Example Find the description of frame π’πŸπ’™πŸπ’šπŸπ’›πŸ with respect to the frame π’πŸŽπ’™πŸŽπ’šπŸŽπ’›πŸŽ.

The coordinates of π’™πŸare

The coordinates of π’šπŸare

The coordinates of π’›πŸ are

Page 30: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 30

Rotational Transformations

𝑺 is a rigid object to which a coordinate π’‡π’“π’‚π’Žπ’† 𝟏 is attached. Given π’‘πŸ of the point 𝒑, determine the coordinates of 𝒑 relative to a fixed reference π’‡π’“π’‚π’Žπ’† 𝟎.

The projection of the point 𝒑 onto the coordinate axes of the π’‡π’“π’‚π’Žπ’† 𝟎:

Page 31: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 31

Rotational Transformations

Page 32: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 32

Rotational Transformations

Thus, the rotation matrix 𝑹 𝟏𝟎 can be used not

only to represent the orientation of coordinate frame π’πŸ π’™πŸ π’šπŸ π’›πŸ with respect to frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ , but also to transform the coordinates of a point from one frame to another. If a given point is expressed relative to

π’πŸ π’™πŸ π’šπŸ π’›πŸ by coordinates π’‘πŸ , then 𝑹 𝟏𝟎 π’‘πŸ

represents the same point expressed relative to the frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

Page 33: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 33

Rotational Transformations

It is possible to derive the coordinates for 𝒑𝒃 given only the coordinates for 𝒑𝒂 and the rotation matrix that corresponds to the rotation about π’›πŸŽ. Suppose that a coordinate frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ is rigidly attached to the block. After the rotation by 𝝅, the block’s coordinate frame, which is rigidly attached to the block, is also rotated by 𝝅.

Rotation matrices to represent rigid motions

Page 34: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 34

Rotational Transformations

The coordinates of 𝒑𝒃 with respect to the reference frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ :

Rotation matrices to represent rigid motions

Page 35: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 35

Rotational Transformations Rotation matrices to represent vector rotation with respect to a coordinate frame.

Reminder:

Page 36: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 36

Summary: Rotation Matrix

1.It represents a coordinate transformation relating the coordinates of a point p in two different frames.

2. It gives the orientation of a transformed coordinate frame with respect to a fixed coordinate frame. 3. It is an operator taking a vector and rotating it to a new vector in the same coordinate system.

Page 37: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 37

Similarity Transformations The matrix representation of a general linear transformation is transformed from one frame to another using a so-called similarity transformation. For example, if 𝑨 is the matrix representation of a given linear transformation in π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ and 𝑩 is the representation of the same linear transformation in π’πŸ π’™πŸ π’šπŸ π’›πŸ then 𝑨 and 𝑩 are related as:

where 𝑹 𝟏𝟎 is the coordinate transformation between frames π’πŸ π’™πŸ π’šπŸ π’›πŸ and

π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ . In particular, if 𝑨 itself is a rotation, then so is 𝑩, and thus the use of similarity transformations allows us to express the same rotation easily with respect to different frames.

Page 38: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 38

Example

Suppose frames π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ and π’πŸ π’™πŸ π’šπŸ π’›πŸ are related by the rotation

If 𝑨 = 𝑹𝒛relative to the frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ, then, relative to frame π’πŸ π’™πŸ π’šπŸ π’›πŸ we have

𝑩 is a rotation about the π’›πŸŽ βˆ’ π’‚π’™π’Šπ’” but expressed relative to the frame π’πŸ π’™πŸ π’šπŸ π’›πŸ .

Page 39: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 39

Rotation With Respect To The Current Frame

The matrix 𝑹 𝟏𝟎 represents a rotational transformation between the frames π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ

and π’πŸ π’™πŸ π’šπŸ π’›πŸ. Suppose we now add a third coordinate frame π’πŸ π’™πŸ π’šπŸ π’›πŸ related to the frames π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ and π’πŸ π’™πŸ π’šπŸ π’›πŸ by rotational transformations. A given point 𝒑 can then be represented by coordinates specified with respect to any of these three frames: π’‘πŸŽ, π’‘πŸ and π’‘πŸ. The relationship among these representations of 𝒑 is:

where each𝑹 π’‹π’Š is a rotation matrix

Page 40: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 40

In order to transform the coordinates of a point 𝒑 from its representation π’‘πŸ in the frame π’πŸ π’™πŸ π’šπŸ π’›πŸ to its representation π’‘πŸŽ in the frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ , we may first transform to its

coordinates π’‘πŸ in the frame π’πŸ π’™πŸ π’šπŸ π’›πŸ using 𝑹 𝟐𝟏 and then

transform π’‘πŸ to π’‘πŸŽ using 𝑹 𝟏𝟎 .

Composition Law for Rotational Transformations

Page 41: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 41

Composition Law for Rotational Transformations

Coincident: lie exactly on top of each other

Suppose initially that all three of the coordinate frames are coincide. We first rotate the frame π’πŸ π’™πŸ π’šπŸ π’›πŸ relative to π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ according to the

transformation 𝑹 𝟏𝟎 .

Then, with the frames π’πŸ π’™πŸ π’šπŸ π’›πŸ and π’πŸ π’™πŸ π’šπŸ π’›πŸ coincident, we rotate π’πŸ π’™πŸ π’šπŸ π’›πŸ

relative to π’πŸ π’™πŸ π’šπŸ π’›πŸ according to the transformation 𝑹 𝟐𝟏 .

In each case we call the frame relative to which the rotation occurs the current frame.

Page 42: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 42

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝝓 about the current π’š βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle 𝜭 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”.

Page 43: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 43

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝝓 about the current π’š βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle 𝜭 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”.

Page 44: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 44

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝝓 about the current π’š βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle 𝜭 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”.

Page 45: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 45

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝝓 about the current π’š βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle 𝜭 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”.

Page 46: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 46

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝜭 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle 𝝓 about the current π’š βˆ’ π’‚π’™π’Šπ’”

Page 47: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 47

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝜭 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle 𝝓 about the current π’š βˆ’ π’‚π’™π’Šπ’”

Page 48: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 48

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝜭 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle 𝝓 about the current π’š βˆ’ π’‚π’™π’Šπ’”

Rotational transformations do not commute

Page 49: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 49

Rotation With Respect To The Fixed Frame

Performing a sequence of rotations, each about a given fixed coordinate frame, rather than about successive current frames. For example we may wish to perform a rotation about π’™πŸŽ followed by a rotation about π’šπŸŽ (and not π’šπŸŽ!). We will refer to π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ as the fixed frame. In this case the composition law given before is not valid.

The composition law is obtained by multiplying the successive rotation matrices in the reverse order from that given by

Page 50: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 50

Rotation with Respect to the Fixed Frame

Suppose we have two frames π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ and

π’πŸ π’™πŸ π’šπŸ π’›πŸ related by the rotational transformation 𝑹 𝟏𝟎 .

If 𝑹 represents a rotation relative to π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ, the representation for 𝑹 in the current frame π’πŸ π’™πŸ π’šπŸ π’›πŸ is given by:

Similarity Transformations

With applying the composition law for rotations about the current axis:

composition law for rotations about the current axis

Reminder:

Page 51: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 51

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝝓 about π’šπŸŽ βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle𝜭about the fixed π’›πŸŽβˆ’π’‚π’™π’Šπ’”

Similarity Transformations

Reminder:

composition law for rotations about the current axis

composition law for rotations about the fixed axis

The second rotation about the fixed axis is given by

which is the basic rotation about the z-axis expressed relative to the frame π’πŸ π’™πŸ π’šπŸ π’›πŸ using a similarity transformation.

Page 52: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 52

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝝓 about π’šπŸŽ βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle𝜭about the fixed π’›πŸŽβˆ’π’‚π’™π’Šπ’”

Similarity Transformations

Reminder:

composition law for rotations about the current axis

composition law for rotations about the fixed axis

Therefore, the composition rule for rotational transformations

Page 53: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 53

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝝓 about π’šπŸŽ βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle𝜭about the fixed π’›πŸŽβˆ’π’‚π’™π’Šπ’”

Page 54: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 54

Example Suppose a rotation matrix R represents β€’ a rotation of angle 𝝓 about π’šπŸŽ βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle𝜭about the fixed π’›πŸŽβˆ’π’‚π’™π’Šπ’”

Suppose a rotation matrix R represents β€’ a rotation of angle 𝝓 about the current π’š βˆ’ π’‚π’™π’Šπ’” followed by β€’ a rotation of angle 𝜭 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”.

Page 55: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 55

Summary To note that we obtain the same basic rotation matrices, but in the reverse order.

Rotation with Respect to the Fixed Frame

Rotation with Respect to the Current Frame

Page 56: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 56

Rules for Composition of Rotational Transformations

We can summarize the rule of composition of rotational transformations by: Given a fixed frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ a current frame π’πŸ π’™πŸ π’šπŸ π’›πŸ, together with rotation

matrix 𝑹 𝟏𝟎 relating them, if a third frame π’πŸ π’™πŸ π’šπŸ π’›πŸ is obtained by a rotation 𝑹

performed relative to the current frame then post-multiply 𝑹 𝟏𝟎 by 𝑹 = 𝑹 𝟐

𝟏 to obtain

In each case 𝑹 𝟐𝟎 represents the transformation between the frames π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ and

π’πŸ π’™πŸ π’šπŸ π’›πŸ.

If the second rotation is to be performed relative to the fixed frame then it is both

confusing and inappropriate to use the notation 𝑹 𝟐𝟏 to represent this rotation. Therefore,

if we represent the rotation by 𝑹, we pre-multiply 𝑹 𝟏𝟎 by 𝑹 to obtain

Page 57: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 57

Example

Find R for the following sequence of basic rotations: 1. A rotation of Ο΄ about the current x-axis 2. A rotation of Ο† about the current z-axis 3. A rotation of Ξ± about the fixed z-axis 4. A rotation of Ξ² about the current y-axis 5. A rotation of Ξ΄ about the fixed x-axis

Rotation with Respect to the Fixed Frame

Rotation with Respect to the Current Frame

Reminder:

Page 58: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 58

Example

Find R for the following sequence of basic rotations: 1. A rotation of Ο΄ about the current x-axis 2. A rotation of Ο† about the current z-axis 3. A rotation of Ξ± about the fixed z-axis 4. A rotation of Ξ² about the current y-axis 5. A rotation of Ξ΄ about the fixed x-axis

Rotation with Respect to the Fixed Frame

Rotation with Respect to the Current Frame

Reminder:

Page 59: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 59

Example

Find R for the following sequence of basic rotations: 1. A rotation of Ο΄ about the current x-axis 2. A rotation of Ο† about the current z-axis 3. A rotation of Ξ± about the fixed z-axis 4. A rotation of Ξ² about the current y-axis 5. A rotation of Ξ΄ about the fixed x-axis

Rotation with Respect to the Fixed Frame

Rotation with Respect to the Current Frame

Reminder:

Page 60: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 60

Example

Find R for the following sequence of basic rotations: 1. A rotation of Ο΄ about the current x-axis 2. A rotation of Ο† about the current z-axis 3. A rotation of Ξ± about the fixed z-axis 4. A rotation of Ξ² about the current y-axis 5. A rotation of Ξ΄ about the fixed x-axis

Rotation with Respect to the Fixed Frame

Rotation with Respect to the Current Frame

Reminder:

Page 61: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 61

Example

Find R for the following sequence of basic rotations: 1. A rotation of Ο΄ about the current x-axis 2. A rotation of Ο† about the current z-axis 3. A rotation of Ξ± about the fixed z-axis 4. A rotation of Ξ² about the current y-axis 5. A rotation of Ξ΄ about the fixed x-axis

Rotation with Respect to the Fixed Frame

Rotation with Respect to the Current Frame

Reminder:

Page 62: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 62

Example

Find R for the following sequence of basic rotations: 1. A rotation of Ο΄ about the current x-axis 2. A rotation of Ο† about the current z-axis 3. A rotation of Ξ± about the fixed z-axis 4. A rotation of Ξ² about the current y-axis 5. A rotation of Ξ΄ about the fixed x-axis

Rotation with Respect to the Fixed Frame

Rotation with Respect to the Current Frame

Reminder:

Page 63: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 63

Example

Find R for the following sequence of basic rotations: 1. A rotation of Ξ΄ about the fixed x-axis 2. A rotation of Ξ² about the current y-axis 3. A rotation of Ξ± about the fixed z-axis 4. A rotation of Ο† about the current z-axis 5. A rotation of Ο΄ about the current x-axis

Rotation with Respect to the Fixed Frame

Rotation with Respect to the Current Frame

Reminder:

Page 64: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 64

Rotations in Three Dimensions

Each axis of the frame π’πŸ π’™πŸ π’šπŸ π’›πŸ is projected onto the coordinate frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ. The resulting rotation matrix is given by

Reminder:

The nine elements π’“π’Šπ’‹ in a general rotational transformation R are not independent

quantities. 𝑹𝝐 𝑺𝑢 πŸ‘

Where 𝑺𝑢(n) denotes the Special Orthogonal group of order n.

Page 65: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 65

Rotations In Three Dimensions

For any π‘…πœ– 𝑆𝑂 𝑛 The following properties hold β€’ 𝑅𝑇 = π‘…βˆ’1 πœ– 𝑆𝑂 𝑛 β€’ The columns and the rows of 𝑅 are mutually orthogonal β€’ Each column and each row of 𝑅 are is a unit vector β€’ det 𝑅 = 1 (the determinant) Where 𝑆𝑂(n) denotes the Special Orthogonal group of order n.

Example for 𝑹𝑻 = π‘Ήβˆ’πŸ 𝝐 𝑺𝑢 𝟐 :

Page 66: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 66

Parameterizations Of Rotations

As each column of 𝑅 are is a unit vector, then we can write:

As the columns of 𝑅 are mutually orthogonal, then we can write:

Together, these constraints define six independent equations with nine unknowns, which implies that there are three free variables.

The nine elements π’“π’Šπ’‹ in a general rotational transformation R are not independent

quantities. π‘…πœ– 𝑆𝑂 3

Where 𝑆𝑂(n) denotes the Special Orthogonal group of order n.

Page 67: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 67

We present three ways in which an arbitrary rotation can be represented using only three independent quantities: β€’ Euler Angles representation β€’ Roll-Pitch-Yaw representation β€’ Axis/Angle representation

Parameterizations of Rotations

Page 68: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 68

Euler Angles Representation

We can specify the orientation of the frame π’πŸ π’™πŸ π’šπŸ π’›πŸ relative to the frameπ’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ by three angles (𝝓, 𝜽, 𝝍), known as Euler Angles, and obtained by three successive rotations as follows: 1. rotation about the z-axis by the angle 𝝓 2. rotation about the current yβˆ’axis by the angle 𝜽 3. rotation about the current zβˆ’axis by the angle 𝝍

Page 69: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 69

Euler Angles Representation

Page 70: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 70

Page 71: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 71

Trigonometry (Atan vs. Atan2) Reminder:

Page 72: Transformation Matrices - TU Chemnitz

Trigonometry (Atan vs. Atan2) Reminder:

14.10.2014 J.Nassour 72

Page 73: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 73

Trigonometry (Atan vs. Atan2) Reminder:

tan(angle) = opposite/adjacent

atan(opposite/adjacent) = angle

Page 74: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 74

Euler Angles Representation Given a matrix π‘…πœ– 𝑆𝑂 3 Determine a set of Euler angles 𝝓, 𝜽, and 𝝍 so that 𝑹 = 𝑹𝒁𝒀𝒁

If π’“πŸπŸ‘ β‰  𝟎 and π’“πŸπŸ‘ β‰  𝟎, it follow that: 𝝓=Atan2(π’“πŸπŸ‘, π’“πŸπŸ‘) where the function π΄π‘‘π‘Žπ‘›2(𝑦, π‘₯) computes the arctangent of the ration 𝑦/π‘₯. Then squaring the summing of the elements (1,3) and (2,3) and using the element (3,3) yields:

𝜽=Atan2(+ π’“πŸπŸ‘πŸ + π’“πŸπŸ‘

𝟐, π’“πŸ‘πŸ‘) or 𝜽=Atan2(βˆ’ π’“πŸπŸ‘πŸ + π’“πŸπŸ‘

𝟐, π’“πŸ‘πŸ‘) If we consider the first choice then π’”π’Šπ’ (𝜽) > 𝟎 then: 𝝍=Atan2(π’“πŸ‘πŸ, βˆ’π’“πŸ‘πŸ) If we consider the second choice then π’”π’Š 𝒏 𝜽 < 𝟎 then: 𝝍=Atan2(βˆ’ π’“πŸ‘πŸ, π’“πŸ‘πŸ) and 𝝓=Atan2(βˆ’π’“πŸπŸ‘,βˆ’π’“πŸπŸ‘)

Page 75: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 75

Euler Angles Representation Given a matrix π‘…πœ– 𝑆𝑂 3 Determine a set of Euler angles 𝝓, 𝜽, and 𝝍 so that 𝑹 = 𝑹𝒁𝒀𝒁

If π’“πŸπŸ‘ = π’“πŸπŸ‘ = 𝟎, then the fact that R is orthogonal implies that π’“πŸ‘πŸ‘ = ±𝟏 and that π’“πŸ‘πŸ = π’“πŸ‘πŸ = 𝟎 thus R has the form: If π’“πŸ‘πŸ‘ = +𝟏 then π‘πœƒ = 1 and π‘ πœƒ = 0, so thatπœƒ = 0. Thus, the sum 𝝓 + 𝝍 can be determined as 𝝓 + 𝝍 = Atan2(π’“πŸπŸ, π’“πŸπŸ) = Atan2(βˆ’ π’“πŸπŸ, π’“πŸπŸ) There is infinity of solutions.

Page 76: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 76

Euler Angles Representation Given a matrix π‘…πœ– 𝑆𝑂 3 Determine a set of Euler angles 𝝓, 𝜽, and 𝝍 so that 𝑹 = 𝑹𝒁𝒀𝒁

If π’“πŸπŸ‘ = π’“πŸπŸ‘ = 𝟎, then the fact that R is orthogonal implies that π’“πŸ‘πŸ‘ = ±𝟏 and that π’“πŸ‘πŸ = π’“πŸ‘πŸ = 𝟎 thus R has the form: If π’“πŸ‘πŸ‘ = βˆ’πŸ then π‘πœƒ = βˆ’1 and π‘ πœƒ = 0, so thatπœƒ = Ο€. Thus, the 𝝓 βˆ’ 𝝍 can be determined as 𝝓 βˆ’ 𝝍 = Atan2(βˆ’π’“πŸπŸ, βˆ’π’“πŸπŸ) = Atan2( π’“πŸπŸ, π’“πŸπŸ) As before there is infinity of solutions.

Page 77: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 77

Roll-Pitch-Yaw Representation A rotation matrix 𝑹 can also be described as a product of successive rotations about the principal coordinate axes π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ taken in a specific order. These rotations define the roll, pitch, and yaw angles, which we shall also denote (𝝓, 𝜽, 𝝍)

We specify the order in three successive rotations as follows: 1. Yaw rotation about π’™πŸŽ βˆ’axis by the angle 𝝍 2. Pitch rotation about π’šπŸŽ βˆ’ axis by the angle 𝜽 3. Roll rotation about π’›πŸŽ βˆ’ axis by the angle 𝝓

Since the successive rotations are relative to the fixed frame, the resulting transformation matrix is given by:

Page 78: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 78

Roll-Pitch-Yaw Representation A rotation matrix 𝑹 can also be described as a product of successive rotations about the principal coordinate axes π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ taken in a specific order. These rotations define the roll, pitch, and yaw angles, which we shall also denote (𝝓, 𝜽, 𝝍)

We specify the order in three successive rotations as follows: 1. Yaw rotation about π’™πŸŽ βˆ’axis by the angle 𝝍 2. Pitch rotation about π’šπŸŽ βˆ’ axis by the angle 𝜽 3. Roll rotation about π’›πŸŽ βˆ’ axis by the angle 𝝓

Since the successive rotations are relative to the fixed frame, the resulting transformation matrix is given by:

Page 79: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 79

Roll-Pitch-Yaw Representation A rotation matrix 𝑹 can also be described as a product of successive rotations about the principal coordinate axes π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ taken in a specific order. These rotations define the roll, pitch, and yaw angles, which we shall also denote (𝝓, 𝜽, 𝝍)

We specify the order in three successive rotations as follows: 1. Yaw rotation about π’™πŸŽ βˆ’axis by the angle 𝝍 2. Pitch rotation about π’šπŸŽ βˆ’ axis by the angle 𝜽 3. Roll rotation about π’›πŸŽ βˆ’ axis by the angle 𝝓

Since the successive rotations are relative to the fixed frame, the resulting transformation matrix is given by:

Page 80: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 80

Roll-Pitch-Yaw Representation A rotation matrix 𝑹 can also be described as a product of successive rotations about the principal coordinate axes π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ taken in a specific order. These rotations define the roll, pitch, and yaw angles, which we shall also denote (𝝓, 𝜽, 𝝍)

We specify the order in three successive rotations as follows: 1. Yaw rotation about π’™πŸŽ βˆ’axis by the angle 𝝍 2. Pitch rotation about π’šπŸŽ βˆ’ axis by the angle 𝜽 3. Roll rotation about π’›πŸŽ βˆ’ axis by the angle 𝝓

Since the successive rotations are relative to the fixed frame, the resulting transformation matrix is given by:

Page 81: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 81

Roll-Pitch-Yaw Representation A rotation matrix 𝑹 can also be described as a product of successive rotations about the principal coordinate axes π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ taken in a specific order. These rotations define the roll, pitch, and yaw angles, which we shall also denote (𝝓, 𝜽, 𝝍)

We specify the order in three successive rotations as follows: 1. Yaw rotation about π’™πŸŽ βˆ’axis by the angle 𝝍 2. Pitch rotation about π’šπŸŽ βˆ’ axis by the angle 𝜽 3. Roll rotation about π’›πŸŽ βˆ’ axis by the angle 𝝓

Since the successive rotations are relative to the fixed frame, the resulting transformation matrix is given by:

Page 82: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 82

Roll-Pitch-Yaw Representation A rotation matrix 𝑹 can also be described as a product of successive rotations about the principal coordinate axes π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ taken in a specific order. These rotations define the roll, pitch, and yaw angles, which we shall also denote (𝝓, 𝜽, 𝝍)

We specify the order in three successive rotations as follows: 1. Yaw rotation about π’™πŸŽ βˆ’axis by the angle 𝝍 2. Pitch rotation about π’šπŸŽ βˆ’ axis by the angle 𝜽 3. Roll rotation about π’›πŸŽ βˆ’ axis by the angle 𝝓

Since the successive rotations are relative to the fixed frame, the resulting transformation matrix is given by:

Instead of yaw-pitch-roll relative to the fixed frames we could also interpret the above transformation as roll-pitch-yaw, in that order, each taken with respect to the current frame. The end result is the same matrix.

𝝍

𝜽

𝝓

Page 83: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 83

Roll-Pitch-Yaw Representation Find the inverse solution to a given rotation matrix R.

Determine a set of Roll-Pitch-Yaw angles 𝝓, 𝜽, and 𝝍 so that 𝑹 = 𝑹𝑿𝒀𝒁

𝝍

𝜽

𝝓

Page 84: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 84

Axis/Angle Representation Rotations are not always performed about the principal coordinate axes. We are often interested in a rotation about an arbitrary axis in space. This provides both a convenient way to describe rotations, and an alternative parameterization for rotation matrices.

Let π’Œ = [π’Œπ’™, π’Œπ’š, π’Œπ’›]𝑻, expressed in the frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ, be

a unit vector defining an axis. We wish to derive the rotation matrix π‘Ήπ’Œ,𝜽 representing a rotation of 𝜽 about this axis. A possible solution is to rotate first π’Œ by the angles necessary to align it with 𝒛, then to rotate by 𝜽 about 𝒛, and finally to rotate by the angels necessary to align the unit vector with the initial direction.

Page 85: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 85

Axis/Angle Representation Rotations are not always performed about the principal coordinate axes. We are often interested in a rotation about an arbitrary axis in space. This provides both a convenient way to describe rotations, and an alternative parameterization for rotation matrices.

Let π’Œ = [π’Œπ’™, π’Œπ’š, π’Œπ’›]𝑻, expressed in the frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ, be

a unit vector defining an axis. We wish to derive the rotation matrix π‘Ήπ’Œ,𝜽representing a rotation of 𝜽 about this axis. The sequence of rotations to be made with respect to axes of fixed frame is the following: β€’ Align π’Œ with 𝒛 (which is obtained as the sequence of a

rotation by βˆ’πœΆ about 𝒛 and a rotation of βˆ’πœ· about π’š). β€’ Rotate by 𝜽 about 𝒛. β€’ Realign with the initial direction of π’Œ, which is obtained as

the sequence of a rotation by 𝜷 about π’š and a rotation by 𝜢 about 𝒛.

π‘Ήπ’Œ,𝜽 = 𝑹𝒛,𝜢 π‘Ήπ’š,πœ·π‘Ήπ’›,πœ½π‘Ήπ’š,βˆ’πœ·π‘Ήπ’›,βˆ’πœΆ

Page 86: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 86

Axis/Angle Representation

π‘Ήπ’Œ,𝜽 = 𝑹𝒛,𝜢 π‘Ήπ’š,πœ·π‘Ήπ’›,πœ½π‘Ήπ’š,βˆ’πœ·π‘Ήπ’›,βˆ’πœΆ

Page 87: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 87

Axis/Angle Representation Rotations are not always performed about the principal coordinate axes. We are often interested in a rotation about an arbitrary axis in space. This provides both a convenient way to describe rotations, and an alternative parameterization for rotation matrices.

π‘Ήπ’Œ,𝜽 = 𝑹𝒛,𝜢 π‘Ήπ’š,πœ·π‘Ήπ’›,πœ½π‘Ήπ’š,βˆ’πœ·π‘Ήπ’›,βˆ’πœΆ

Page 88: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 88

Axis/Angle Representation

Any rotation matrix π‘…πœ– 𝑆𝑂 3 can be represented by a single rotation about a suitable axis in space by a suitable angle.

𝑹 = π‘Ήπ’Œ,𝜽 where π’Œ is a unit vector defining the axis of rotation, and 𝜽 is the angle of rotation about π’Œ. The matrix π‘Ήπ’Œ,𝜽 is called the axis/angle representation of 𝑹. Given 𝑹 find 𝜽 and π’Œ:

Reminder:

Page 89: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 89

Axis/Angle Representation

The axis/angle representation is not unique since a rotation of βˆ’πœ½ about βˆ’π’Œ is the same as a rotation of 𝜽 about π’Œ.

π‘Ήπ’Œ,𝜽 = π‘Ήβˆ’π’Œ,βˆ’πœ½ If 𝜽 = 𝟎 then 𝑹 is the identity matrix and the axis of rotation is undefined.

Page 90: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 90

Example Suppose 𝑹 is generated by a rotation of 90Β°about 𝑧0 followed by a rotation of 30Β° about 𝑦0 followed by a rotation of 60Β° about 𝑦0. Find the axis/angle representation of 𝑹

Reminder: The axis/angle representation of 𝑹

Page 91: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 91

Example Suppose 𝑹 is generated by a rotation of 90Β°about 𝑧0 followed by a rotation of 30Β° about 𝑦0 followed by a rotation of 60Β° about 𝑦0. Find the axis/angle representation of 𝑹

Reminder: The axis/angle representation of 𝑹

Page 92: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 92

Example Suppose 𝑹 is generated by a rotation of 90Β°about 𝑧0 followed by a rotation of 30Β° about 𝑦0 followed by a rotation of 60Β° about 𝑦0. Find the axis/angle representation of 𝑹

Reminder: The axis/angle representation of 𝑹

Page 93: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 93

Example Suppose 𝑹 is generated by a rotation of 90Β°about 𝑧0 followed by a rotation of 30Β° about 𝑦0 followed by a rotation of 60Β° about 𝑦0. Find the axis/angle representation of 𝑹

Reminder: The axis/angle representation of 𝑹

Page 94: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 94

Example Suppose 𝑹 is generated by a rotation of 90Β°about 𝑧0 followed by a rotation of 30Β° about 𝑦0 followed by a rotation of 60Β° about 𝑦0. Find the axis/angle representation of 𝑹

Reminder: The axis/angle representation of 𝑹

Page 95: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 95

Axis/Angle Representation The above axis/angle representation characterizes a given rotation by four quantities, namely the three components of the equivalent axis π’Œ and the equivalent angle 𝜽. However, since the equivalent axis π’Œ is given as a unit vector only two of its components are independent. The third is constrained by the condition that π’Œ is of unit length. Therefore, only three independent quantities are required in this representation of a rotation 𝑹. We can represent the equivalent axis/angle by a single vector 𝒓 as: since π’Œ is a unit vector, the length of the vector 𝒓 is the equivalent angle 𝜽 and the direction of 𝒓 is the equivalent axis π’Œ.

Page 96: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 96

Rigid Motions

A rigid motion is a pure translation together with a pure rotation. A rigid motion is an ordered pair (𝒅, 𝑹) where 𝒅 ∈ β„πŸ‘ and 𝑹 ∈ 𝑺𝑢 πŸ‘ . The group of all rigid motions is known as the Special Euclidean Group and is denoted by 𝑺𝑬 πŸ‘ . We see then that 𝑺𝑬 πŸ‘ = β„πŸ‘ Γ— 𝑺𝑢 πŸ‘ .

Page 97: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 97

One Rigid Motion If frame π’πŸ π’™πŸ π’šπŸ π’›πŸ is obtained from frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ by first applying a rotation

specified by 𝑹 𝟏𝟎 followed by a translation given (with respect to π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ) by 𝒅 𝟏

𝟎 , then the coordinates π’‘πŸŽ are given by:

π’‘πŸŽ = 𝑹 𝟏𝟎 π’‘πŸ + 𝒅 𝟏

𝟎

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1

𝒅 𝟏𝟎

𝑹 𝟏𝟎

𝒑

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1

π’‘πŸŽ

π’‘πŸ

Page 98: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 98

Two Rigid Motions If frame π’πŸ π’™πŸ π’šπŸ π’›πŸ is obtained from frame π’πŸ π’™πŸ π’šπŸ π’›πŸ by first applying a rotation

specified by 𝑹 𝟐𝟏 followed by a translation given (with respect to π’πŸ π’™πŸ π’šπŸ π’›πŸ) by 𝒅 𝟐

𝟏 . If frame π’πŸ π’™πŸ π’šπŸ π’›πŸ is obtained from frame π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ by first applying a rotation

specified by 𝑹 𝟏𝟎 followed by a translation given (with respect to π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ) by 𝒅 𝟏

𝟎 , find the coordinates π’‘πŸŽ.

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1

𝒑

𝑧2

𝑦2

π‘₯2

For the first rigid motion:

π’‘πŸŽ = 𝑹 𝟏𝟎 π’‘πŸ + 𝒅 𝟏

𝟎 For the second rigid motion:

π’‘πŸ = 𝑹 𝟐𝟏 π’‘πŸ + 𝒅 𝟐

𝟏 Both rigid motions can be described as one rigid motion:

π’‘πŸŽ = 𝑹 𝟐𝟎 π’‘πŸ + 𝒅 𝟐

𝟎

π’‘πŸŽ = 𝑹 𝟏𝟎 𝑹 𝟐

𝟏 π’‘πŸ + 𝑹 𝟏𝟎 𝒅 + 𝒅 𝟏

𝟎𝟐𝟏

Page 99: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 99

Two Rigid Motions

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1

𝒑

𝑧2

𝑦2

π‘₯2

𝑹 𝟐𝟎 The orientation transformations can simply be multiplied together.

𝒅 𝟐𝟎 The translation transformation is the sum of:

β€’ 𝒅 𝟏𝟎 the vector from the origin π‘œ0 to the origin π‘œ1 expressed with respect to π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

β€’ 𝑹 𝟏𝟎 𝒅 𝟐

𝟏 the vector from π‘œ1 to π‘œ2 expressed in the orientation of the coordinate system π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

π’‘πŸŽ = 𝑹 𝟏𝟎 𝑹 𝟐

𝟏 π’‘πŸ + 𝑹 𝟏𝟎 𝒅 + 𝒅 𝟏

𝟎𝟐𝟏

Page 100: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 100

Three Rigid Motions

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1

𝒑

𝑧2

𝑦2

π‘₯2

π’‘πŸŽ = ?

𝑧3

𝑦3 π‘₯3

Page 101: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 101

Homogeneous Transformations

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1 𝒑

𝑧2

𝑦2

π‘₯2

π’‘πŸŽ = ?

𝑧𝑛

𝑦𝑛 π‘₯𝑛

A long sequence of rigid motions, find π’‘πŸŽ.

π’‘πŸŽ = 𝑹 π’πŸŽ 𝒑𝒏 + 𝒅 𝒏

𝟎

Page 102: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 102

Homogeneous Transformations

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1 𝒑

𝑧2

𝑦2

π‘₯2

π’‘πŸŽ = ?

𝑧𝑛

𝑦𝑛 π‘₯𝑛

A long sequence of rigid motions, find π’‘πŸŽ. Represent rigid motions in matrix so that

composition of rigid motions can be reduced to matrix multiplication as was the case for

composition of rotations π’‘πŸŽ = 𝑹 𝒏

𝟎 𝒑𝒏 + 𝒅 π’πŸŽ

Page 103: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 103

Homogeneous Transformations A long sequence of rigid motions, find π’‘πŸŽ.

Represent rigid motions in matrix so that composition of rigid motions can be reduced to

matrix multiplication as was the case for composition of rotations

π’‘πŸŽ = 𝑹 π’πŸŽ 𝒑𝒏 + 𝒅 𝒏

𝟎

𝐇 =𝑹 𝒅

; 𝒅 ∈ β„πŸ‘, 𝑹 ∈ 𝑺𝑢 πŸ‘

Page 104: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 104

Homogeneous Transformations A long sequence of rigid motions, find π’‘πŸŽ.

Represent rigid motions in matrix so that composition of rigid motions can be reduced to

matrix multiplication as was the case for composition of rotations

π’‘πŸŽ = 𝑹 π’πŸŽ 𝒑𝒏 + 𝒅 𝒏

𝟎

𝐇 =𝑹 π’…πŸŽ 𝟏

; 𝒅 ∈ β„πŸ‘, 𝑹 ∈ 𝑺𝑢 πŸ‘

Transformation matrices of the form H are called homogeneous transformations. A homogeneous transformation is therefore a matrix representation of a rigid motion.

Page 105: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 105

Homogeneous Transformations A long sequence of rigid motions, find π’‘πŸŽ.

Represent rigid motions in matrix so that composition of rigid motions can be reduced to

matrix multiplication as was the case for composition of rotations

π’‘πŸŽ = 𝑹 π’πŸŽ 𝒑𝒏 + 𝒅 𝒏

𝟎

𝐇 =𝑹 π’…πŸŽ 𝟏

; 𝒅 ∈ β„πŸ‘, 𝑹 ∈ 𝑺𝑢 πŸ‘

π‡βˆ’πŸ = 𝑹𝑻 βˆ’π‘Ήπ‘»π’…πŸŽ 𝟏

The inverse transformation π‘―βˆ’πŸis given by

Page 106: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 106

Ex. :Two Rigid Motions

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1

𝒑

𝑧2

𝑦2

π‘₯2

𝑹 𝟐𝟎 The orientation transformations can simply be multiplied together.

𝒅 𝟐𝟎 The translation transformation is the sum of:

β€’ 𝒅 𝟏𝟎 the vector from the origin π‘œ0 to the origin π‘œ1 expressed with respect to π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

β€’ 𝑹 𝟏𝟎 𝒅 𝟐

𝟏 the vector from π‘œ1 to π‘œ2 expressed in the orientation of the coordinate system π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

π’‘πŸŽ = 𝑹 𝟏𝟎 𝑹 𝟐

𝟏 π’‘πŸ + 𝑹 𝟏𝟎 𝒅 + 𝒅 𝟏

𝟎𝟐𝟏

𝐇 =𝑹 π’…πŸŽ 𝟏

; 𝒅 ∈ β„πŸ‘, 𝑹 ∈ 𝑺𝑢 πŸ‘

𝑹 𝟏𝟎 𝒅 𝟏

𝟎

𝟎 𝟏 𝑹 𝟐

𝟏 𝒅 𝟐𝟏

𝟎 𝟏= 𝑹 𝟏

𝟎 𝑹 𝟐𝟏 𝑹 𝟏

𝟎 𝒅 + 𝒅 𝟏𝟎

𝟐𝟏

0 1

Page 107: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 107

Ex. :Two Rigid Motions

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1

𝒑

𝑧2

𝑦2

π‘₯2

𝑹 𝟐𝟎 The orientation transformations can simply be multiplied together.

𝒅 𝟐𝟎 The translation transformation is the sum of:

β€’ 𝒅 𝟏𝟎 the vector from the origin π‘œ0 to the origin π‘œ1 expressed with respect to π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

β€’ 𝑹 𝟏𝟎 𝒅 𝟐

𝟏 the vector from π‘œ1 to π‘œ2 expressed in the orientation of the coordinate system π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

π’‘πŸŽ = 𝑹 𝟏𝟎 𝑹 𝟐

𝟏 π’‘πŸ + 𝑹 𝟏𝟎 𝒅 + 𝒅 𝟏

𝟎𝟐𝟏

𝐇 =𝑹 π’…πŸŽ 𝟏

; 𝒅 ∈ β„πŸ‘, 𝑹 ∈ 𝑺𝑢 πŸ‘

𝑹 𝟏𝟎 𝒅 𝟏

𝟎

𝟎 𝟏 𝑹 𝟐

𝟏 𝒅 𝟐𝟏

𝟎 𝟏= 𝑹 𝟏

𝟎 𝑹 𝟐𝟏 𝑹 𝟏

𝟎 𝒅 + 𝒅 𝟏𝟎

𝟐𝟏

0 1

Page 108: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 108

Ex. :Two Rigid Motions

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1

𝒑

𝑧2

𝑦2

π‘₯2

𝑹 𝟐𝟎 The orientation transformations can simply be multiplied together.

𝒅 𝟐𝟎 The translation transformation is the sum of:

β€’ 𝒅 𝟏𝟎 the vector from the origin π‘œ0 to the origin π‘œ1 expressed with respect to π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

β€’ 𝑹 𝟏𝟎 𝒅 𝟐

𝟏 the vector from π‘œ1 to π‘œ2 expressed in the orientation of the coordinate system π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

π’‘πŸŽ = 𝑹 𝟏𝟎 𝑹 𝟐

𝟏 π’‘πŸ + 𝑹 𝟏𝟎 𝒅 + 𝒅 𝟏

𝟎𝟐𝟏

𝐇 =𝑹 π’…πŸŽ 𝟏

; 𝒅 ∈ β„πŸ‘, 𝑹 ∈ 𝑺𝑢 πŸ‘

𝑹 𝟏𝟎 𝒅 𝟏

𝟎

𝟎 𝟏 𝑹 𝟐

𝟏 𝒅 𝟐𝟏

𝟎 𝟏= 𝑹 𝟏

𝟎 𝑹 𝟐𝟏 𝑹 𝟏

𝟎 𝒅 + 𝒅 𝟏𝟎

𝟐𝟏

0 1

Page 109: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 109

Ex. :Two Rigid Motions

π‘₯0

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1

𝒑

𝑧2

𝑦2

π‘₯2

𝑹 𝟐𝟎 The orientation transformations can simply be multiplied together.

𝒅 𝟐𝟎 The translation transformation is the sum of:

β€’ 𝒅 𝟏𝟎 the vector from the origin π‘œ0 to the origin π‘œ1 expressed with respect to π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

β€’ 𝑹 𝟏𝟎 𝒅 𝟐

𝟏 the vector from π‘œ1 to π‘œ2 expressed in the orientation of the coordinate system π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ.

π’‘πŸŽ = 𝑹 𝟏𝟎 𝑹 𝟐

𝟏 π’‘πŸ + 𝑹 𝟏𝟎 𝒅 + 𝒅 𝟏

𝟎𝟐𝟏

𝐇 =𝑹 π’…πŸŽ 𝟏

; 𝒅 ∈ β„πŸ‘, 𝑹 ∈ 𝑺𝑢 πŸ‘

𝑹 𝟏𝟎 𝒅 𝟏

𝟎

𝟎 𝟏 𝑹 𝟐

𝟏 𝒅 𝟐𝟏

𝟎 𝟏= 𝑹 𝟏

𝟎 𝑹 𝟐𝟏 𝑹 𝟏

𝟎 𝒅 + 𝒅 𝟏𝟎

𝟐𝟏

0 1

We must augment the vectors π’‘πŸŽ, π’‘πŸ and π’‘πŸ by the addition of a fourth component of 1:

π‘·πŸŽ = π’‘πŸŽ

1, π‘·πŸ = π’‘πŸ

1, π‘·πŸ = π’‘πŸ

1

Page 110: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 110

Homogeneous Transformations

π‘·πŸŽ = 𝑯 π‘·πŸπŸπŸŽ

π‘·πŸŽ = 𝑯 π‘·πŸπŸπŸŽ

….. 𝑷𝒏 = 𝑯 𝑷𝒏

π’πŸŽ

𝑦0

𝑧0

𝑦1

π‘₯1

𝑧1 𝒑

𝑧2

𝑦2

π‘₯2 𝑧𝑛

𝑦𝑛 π‘₯𝑛

π‘·πŸŽ = π’‘πŸŽ

1

Page 111: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 111

Basic Homogeneous Transformations

Page 112: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 112

Homogeneous Transformations

𝐻 10 =

𝑛π‘₯ 𝑠π‘₯𝑛𝑦 𝑠𝑦

π‘Žπ‘₯ 𝑑π‘₯

π‘Žπ‘¦ 𝑑𝑦

𝑛𝑧 𝑠𝑧

0 0π‘Žπ‘§ 𝑑𝑧

0 1

=𝑛 𝑠0 0

π‘Ž 𝑑0 1

𝒏 is a vector representing the direction of π’™πŸ in the π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ system

𝒔 is a vector representing the direction of π’šπŸ in the π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ system

𝒂 is a vector representing the direction of π’›πŸ in the π’πŸŽ π’™πŸŽ π’šπŸŽ π’›πŸŽ system

Page 113: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 113

Composition Rule For Homogeneous Transformations

Given a homogeneous transformation 𝑯 𝟏𝟎 relating two frames, if a second rigid

motion, represented by 𝑯 is performed relative to the current frame, then:

𝐻 = 𝐻 10 𝐻2

0 whereas if the second rigid motion is performed relative to the fixed frame, then:

𝐻 = 𝐻20 𝐻 1

0

Page 114: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 114

Example

Find 𝑯 for the following sequence of 1. a rotation by 𝜢 about the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 2. a translation of 𝒃 units along the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 3. a translation of 𝒅 units along the current 𝒛 βˆ’ π’‚π’™π’Šπ’”, followed by 4. a rotation by angle 𝚹 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”

Transformation with respect to the current frame

𝑯 = 𝑯 𝟏𝟎 π‘―πŸ

𝟎 Transformation with respect to the fixed frame

𝑯 = π‘―πŸπŸŽ 𝑯 𝟏

𝟎

Reminder:

Page 115: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 115

Example

Find 𝑯 for the following sequence of 1. a rotation by 𝜢 about the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 2. a translation of 𝒃 units along the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 3. a translation of 𝒅 units along the current 𝒛 βˆ’ π’‚π’™π’Šπ’”, followed by 4. a rotation by angle 𝚹 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”

Transformation with respect to the current frame

𝑯 = 𝑯 𝟏𝟎 π‘―πŸ

𝟎 Transformation with respect to the fixed frame

𝑯 = π‘―πŸπŸŽ 𝑯 𝟏

𝟎

Reminder:

Page 116: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 116

Example

Find 𝑯 for the following sequence of 1. a rotation by 𝜢 about the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 2. a translation of 𝒃 units along the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 3. a translation of 𝒅 units along the current 𝒛 βˆ’ π’‚π’™π’Šπ’”, followed by 4. a rotation by angle 𝚹 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”

Transformation with respect to the current frame

𝑯 = 𝑯 𝟏𝟎 π‘―πŸ

𝟎 Transformation with respect to the fixed frame

𝑯 = π‘―πŸπŸŽ 𝑯 𝟏

𝟎

Reminder:

Page 117: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 117

Example

Find 𝑯 for the following sequence of 1. a rotation by 𝜢 about the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 2. a translation of 𝒃 units along the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 3. a translation of 𝒅 units along the current 𝒛 βˆ’ π’‚π’™π’Šπ’”, followed by 4. a rotation by angle 𝚹 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”

Transformation with respect to the current frame

𝑯 = 𝑯 𝟏𝟎 π‘―πŸ

𝟎 Transformation with respect to the fixed frame

𝑯 = π‘―πŸπŸŽ 𝑯 𝟏

𝟎

Reminder:

Page 118: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 118

Example

Find 𝑯 for the following sequence of 1. a rotation by 𝜢 about the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 2. a translation of 𝒃 units along the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 3. a translation of 𝒅 units along the current 𝒛 βˆ’ π’‚π’™π’Šπ’”, followed by 4. a rotation by angle 𝚹 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”

Transformation with respect to the current frame

𝑯 = 𝑯 𝟏𝟎 π‘―πŸ

𝟎 Transformation with respect to the fixed frame

𝑯 = π‘―πŸπŸŽ 𝑯 𝟏

𝟎

Reminder:

Page 119: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 119

Example

Find 𝑯 for the following sequence of 1. a rotation by 𝜢 about the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 2. a translation of 𝒃 units along the current 𝒙 βˆ’ π’‚π’™π’Šπ’”, followed by 3. a translation of 𝒅 units along the current 𝒛 βˆ’ π’‚π’™π’Šπ’”, followed by 4. a rotation by angle 𝚹 about the current 𝒛 βˆ’ π’‚π’™π’Šπ’”

Transformation with respect to the current frame

𝑯 = 𝑯 𝟏𝟎 π‘―πŸ

𝟎 Transformation with respect to the fixed frame

𝑯 = π‘―πŸπŸŽ 𝑯 𝟏

𝟎

Reminder:

Page 120: Transformation Matrices - TU Chemnitz

14.10.2014 J.Nassour 120

Example Find 𝑯 𝟐

𝟎