2-d geometry. the image formation pipeline outline vector, matrix basics 2-d point transformations...
Post on 19-Dec-2015
222 views
TRANSCRIPT
2-D Geometry
The Image Formation Pipeline
Outline
Vector, matrix basics 2-D point transformations
Translation, scaling, rotation, shear Homogeneous coordinates and
transformations Homography, affine transformation
Notes on Notation (a little different from book)
Vectors, points: x, v (assume column vectors) Matrices: R, T Scalars: x, a Axes, objects: X, Y, O Coordinate systems: W, C Number systems: R, Z Specials
Transpose operator: xT (as opposed to x0)
Identity matrix: Id Matrices/vectors of zeroes, ones: 0, 1
Block Notation for Matrices Often convenient to write matrices in terms of
parts Smaller matrices for blocks Row, column vectors for ranges of entries on rows,
columns, respectively
E.g.: If A is 3 x 3 and :
2-D Transformations
Types Scaling Rotation Shear Translation
Mathematical representation
2-D Scaling
2-D Scaling
2-D Scaling
1
sx
Horizontal shift proportional to horizontal position
2-D Scaling
1sy
Vertical shift proportional to vertical position
2-D Scaling
Matrix form of 2-D Scaling
2-D Scaling
2-D Rotation
2-D Rotation
µ
2-D Rotation
µ
Matrix form of 2-D Rotation
µ
(this is a counterclockwise rotation; reverse signs of sines to get a clockwise one)
Matrix form of 2-D Rotation
µ
2-D Shear (Horizontal)
2-D Shear (Horizontal)
Horizontal displacement proportional to vertical position
2-D Shear (Horizontal)
(Shear factor h is positive for the figure above)
2-D Shear (Horizontal)
2-D Shear (Vertical)
2-D Translation
2-D Translation
2-D Translation
2-D Translation
2-D Translation
2-D Translation
Representing Transformations
Note that we’ve defined translation as a vector addition but rotation, scaling, etc. as matrix multiplications
It’s inconvenient to have two different operations (addition and multiplication) for different forms of transformation
It would be desirable for all transformations to be expressed in a common, linear form (since matrix multiplications are linear transformations)
Example: “Trick” of additional coordinate makes this possible
Old way:
New way:
Translation Matrix
We can write the formula using this “expanded” transformation matrix as:
From now on, assume points are in this “expanded” form unless otherwise noted:
Homogeneous Coordinates
“Expanded” form is called homogeneous coordinates or projective space
Technically, 2-D projective space P2 is defined as Euclidean space R3 ¡ (0, 0, 0)T
Change to projective space by adding a scale factor (usually but not always 1):
Homogeneous Coordinates: Projective Space
Equivalence is defined up to scale, (non-zero for finite points)
Think of projective points in P2 as rays in R3,
where z coordinate is scale factor All Euclidean points along ray are “same” in this sense
Leaving Projective Space
Can go back to non-homogeneous representation by dividing by scale factor and dropping extra coordinate:
This is the same as saying “Where does the ray
intersect the plane defined by z = 1”?
Homogeneous Coordinates: Rotations, etc.
A 2-D rotation, scaling, shear or other transformation normally expressed by a 2 x 2 matrix R is written in homogeneous coordinates with the following 3 x 3 matrix:
The non-commutativity of matrix multiplication explains why different transformation orders give different results—i.e., RT TR
In homogeneous formIn homogeneous form
Example: Transformations Don’t Commute
Example: Transformations Don’t Commute
Example: Transformations Don’t Commute
Example: Transformations Don’t Commute
2-D Transformations
Full-generality 3 x 3 homogeneous transformation is called a homography
2-D Transformations
Full-generality 3 x 3 homogeneous transformation is called a homography
Translation components
2-D Transformations
Full-generality 3 x 3 homogeneoustransformation is called a homography
Scale/rotation components
2-D Transformations
Full-generality 3 x 3 homogeneous transformation is called a homography
Shear/rotation components
2-D Transformations
Full-generality 3 x 3 homogeneous transformation is called a homography
Homogeneous scaling factor
2-D Transformations
Full-generality 3 x 3 homogeneous transformation is called a homography
When these are zero (as they have been so far), H is an affine transformation