Transformations Jehee Lee Seoul National University.
-
Upload
millicent-small -
Category
Documents
-
view
218 -
download
0
Transcript of Transformations Jehee Lee Seoul National University.
Transformations
Jehee Lee
Seoul National University
Transformations
• Linear transformations
• Rigid transformations
• Affine transformations
• Projective transformations
T
Global reference frame
Local moving frame
Linear Transformations
• A linear transformation T is a mapping between vector spaces– T maps vectors to vectors– linear combination is invariant under T
• In 3-space, T can be represented by a 3x3 matrix
)()()()( 11000
NN
N
iii TcTcTccT vvvv
major) (Row
major)(Column )(
3331
1333
Nv
vMvT
Examples of Linear Transformations
• 2D rotation
• 2D scaling
y
x
y
x
cossin
sincos
y
x
s
s
y
x
y
x
0
0
yx, yx ,
Examples of Linear Transformations
• 2D shear– Along X-axis
– Along Y-axis
y
dyx
y
xd
y
x
10
1
dxy
x
y
x
dy
x
1
01
Examples of Linear Transformations
• 2D reflection– Along X-axis
– Along Y-axis
y
x
y
x
y
x
10
01
y
x
y
x
y
x
10
01
Properties of Linear Transformations
• Any linear transformation between 3D spaces can be represented by a 3x3 matrix
• Any linear transformation between 3D spaces can be represented as a combination of rotation, shear, and scaling
• Rotation can be represented as a combination of scaling and shear– Is this combination unique ?
Properties of Linear Transformations
• Rotation can be computed as two-pass shear transformations
Changing Bases
• Linear transformations as a change of bases
yx, yx ,
0v
1v1v
0v
y
x
y
x
yxyx
1010
1010
vvvv
vvvv
Changing Bases
• Linear transformations as a change of bases
yx, yx ,
0v
1v1v
0v
11001
11000
vvv
vvv
bb
aa
y
xT
y
x
ba
ba
y
x
y
x
ba
ba
y
x
11
00
11
001010 vvvv
Affine Transformations
• An affine transformation T is a mapping between affine spaces– T maps vectors to vectors, and points to points– T is a linear transformation on vectors– affine combination is invariant under T
• In 3-space,T can be represented by a 3x3 matrix together with a 3x1 translation vector
)()()()( 11000
NN
N
iii TcTcTccT pppp
131333)( TpMpT
Properties of Affine Transformations
• Any affine transformation between 3D spaces can be represented by a 4x4 matrix
• Any affine transformation between 3D spaces can be represented as a combination of a linear transformation followed by translation
110)( 131333 pTMpT
Properties of Affine Transformations
• An affine transf. maps lines to lines
• An affine transf. maps parallel lines to parallel lines
• An affine transf. preserves ratios of distance along a line
• An affine transf. does not preserve absolute distances and angles
Examples of Affine Transformations
• 2D rotation
• 2D scaling
1100
0cossin
0sincos
1
y
x
y
x
yx, yx ,
1100
00
00
1
y
x
s
s
y
x
y
x
Examples of Affine Transformations
• 2D shear
• 2D translation
1100
010
01
1
y
xd
y
x
1100
10
01
1
y
x
t
t
y
x
y
x
Examples of Affine Transformations
• 2D transformation for vectors– Translation is simply ignored
0100
10
01
0
y
x
t
t
y
x
y
x
Examples of Affine Transformations
• 3D rotation
11000
0cossin0
0sincos0
0001
1
z
y
x
z
y
x
11000
0100
00cossin
00sincos
1
z
y
x
z
y
x
11000
0cos0sin
0010
0sin0cos
1
z
y
x
z
y
x
How can we rotate about an arbitrary line ?
Pivot-Point Rotation
• Rotation with respect to a pivot point (x,y)
100
sin)cos1(cossin
sin)cos1(sincos
100
10
01
100
0cossin
0sincos
100
10
01
),()(),(
xy
yx
y
x
y
x
yxTRyxT
Fixed-Point Scaling• Scaling with respect to a fixed point (x,y)
100
)1(0
)1(0
100
10
01
100
00
00
100
10
01
),(),(),(
yss
xss
y
x
s
s
y
x
yxTssSyxT
yy
xx
y
x
yx
Scaling Direction
• Scaling along an arbitrary axis
)(),()(1 RssSR yx
)(1 R),( yx ssS)(R
Composite Transformations
• Composite 2D Translation
),(
),(),(
2121
2211
yyxx
yxyx
tttt
ttttT
T
TT
100
10
01
100
10
01
100
10
01
21
21
1
1
2
2
yy
xx
y
x
y
x
tt
tt
t
t
t
t
Composite Transformations
• Composite 2D Scaling
),(
),(),(
2121
2211
yyxx
yxyx
ssss
ssssT
S
SS
100
00
00
100
00
00
100
00
00
21
21
1
1
2
2
yy
xx
y
x
y
x
ss
ss
s
s
s
s
Composite Transformations
• Composite 2D Rotation
)(
)()(
12
12
R
RRT
100
0)cos()sin(
0)sin()cos(
100
0cossin
0sincos
100
0cossin
0sincos
1212
1212
11
11
22
22
Composing Transformations
• Suppose we want,
• We have to compose two transformations
)90( R )3,(xT
Composing Transformations
• Matrix multiplication is not commutative
)3,()90()90()3,( xx TRRT
Translationfollowed by
rotation
Translationfollowed by
rotation
Composing Transformations
– R-to-L : interpret operations w.r.t. fixed coordinates
– L-to-R : interpret operations w.r.t local coordinates
pRTp )90()3,( xT
)90( R )3,(xT
)90( R)3,(xT
(Column major convention)
Review of Affine Frames
• A frame is defined as a set of vectors {vi | i=1, …, N} and a point o– Set of vectors {vi} are bases of the associate vector
space– o is an origin of the frame– N is the dimension of the affine space– Any point p can be written as
– Any vector v can be written as
NNccc vvvop 2211
NNccc vvvv 2211
Changing Frames
• Affine transformations as a change of frame
yx,
0v
1v
111010
1010
y
x
y
x
yxyx
ovvovv
ovvovv
0v1v
o
o
Changing Frames
• Affine transformations as a change of frame
ovvo
vvv
vvv
100
11001
11000
cc
bb
aa
11001
11001
111
000
111
000
1010
y
x
cba
cba
y
x
y
x
cba
cba
y
x
ovvovv
yx,
0v
1v0v
1v
o
o
Rigid Transformations
• A rigid transformation T is a mapping between affine spaces– T maps vectors to vectors, and points to points– T preserves distances between all points– T preserves cross product for all vectors (to avoid
reflection)
• In 3-spaces, T can be represented as
1det and
where,)( 131333
RIRRRR
TpRpTT
T
Rigid Body Transformations
• Rigid body transformations allow only rotation and translation
• Rotation matrices form SO(3)– Special orthogonal group
IRRRR TT
1det R
(Distance preserving)
(No reflection)
Summary
• Linear transformations– 3x3 matrix– Rotation + scaling + shear
• Rigid transformations– SO(3) for rotation– 3D vector for translation
• Affine transformation– 3x3 matrix + 3D vector or 4x4 homogenous matrix– Linear transformation + translation
• Projective transformation– 4x4 matrix– Affine transformation + perspective projection
Questions
• What is the composition of linear/affine/rigid transformations ?
• What is the linear (or affine) combination of linear (or affine) transformations ?
• What is the linear (or affine) combination of rigid transformations ?