chapter four

4 Projective geometric transformations

 

This chapter covers

  • Popular geometric transformations such as translation, scaling, and rotation
  • Generalization of those geometric transformations
  • Using homogeneous coordinates to turn transformations into matrix multiplications
  • Making a composition out of generalized projective transformations
  • Finding the inverse transformation
  • Making a transformation matrix from several displaced points

The geometric transformation as a matrix multiplication, projective space, and homogeneous coordinates are all associated concepts that not only enable but explain each other. The first one is the most applicable to real-world problems, so it usually gets the most attention. However, to exploit it in the most effective way, you should know a little about the other two.

From this chapter, you’ll learn how to do geometric transformations such as translation, rotation, scaling, and shear. You’ll learn how to generalize them into a matrix multiplication. But you don’t need a book to learn all of that. Any good framework has transformation routines, you can just learn a few functions from there and get the job done.

4.1 Some special cases of geometric transformations

4.1.1 Translation

4.1.2 Scaling

4.1.3 Rotation

4.1.4 Summary

4.2 Generalizations

4.2.1 Linear transformations in Euclidean space

4.2.2 Bundling rotation, scaling, and translation in a single affine transformation

4.2.3 Generalizing affine transformations to projective transformations

4.2.4 An alternative to projective transformations

4.2.5 Summary

4.3 Projective space and homogeneous coordinates

4.3.1 Expanding the whole space with homogeneous coordinates

4.3.2 Making all the transformations a single matrix multiplication. Why?

4.3.3 Summary

4.4 Practical examples

4.4.1 Scanning with a phone

4.4.2 Does a point belong to a triangle?

4.4.3 Summary

4.5 Summary

4.6 Exercises

4.7 Solutions for exercises