i
i
i
i
i
i
i
i
6.1. 2D Linear Transformations 123
V
T
v
2
v
1
σ
2
u
2
σ
1
u
1
SU
Figure 6.15. What happens when the unit circle is transformed by an arbitrary matrix A.
The two perpendicular vectors v
1
and v
2
, which are the right singular vectors of A, get scaled
and changed in direction to match the left singular vectors, u
1
and u
2
. In terms of elementary
transformations, this can be seen as first rotating the right singular vectors to the canonical
basis, doing an axis-aligned scale, and then rotating the canonical basis to the left singular
vectors.
Singular Value Decomposition
A very similar kind of decomposition can be done with non-symmetric matrices
as well: it’s the Singular Value Decomposition (SVD), also discussed in Sec-
tion 5.4.1. The difference is that the matrices on either side of the diagonal matrix
are no longer the same:
A = USV
T
The two orthogonal matrices that replace the single rotation R are called U and
V, and their columns are called u
i
(the left singular vectors)andv
i
(the right
singular vectors), respectively. In this context, the diagonal entries of S are called
singular values rather than eigenvalues. The geometric interpretation is very sim-
ilar to that of the symmetric eigenvalue decomposition (Figure 6.15):
1. Rotate v
1
and v
2
to the x-andy-axes (the transform by V
T
).
2. Scale in x and y by (σ
1
,σ
2
) (the transform by S).
3. Rotate the x-andy-axes to u
1
and u
2
(the transform by U).
For dimension counters: a
general 2
× 2 matrix has
4 degrees of freedom, and
the SVD rewrites them as
two rotation angles and two
scale factors. One more bit
is needed to keep track of
reflections, but that doesn’t
add a dimension.
The principal difference is between a single rotation and two different orthogonal
matrices. This difference causes another, less important, difference. Because the
SVD has different singular vectors on the two sides, there is no need for neg-
ative singular values: we can always flip the sign of a singular value, reverse
the direction of one of the associated singular vectors, and end up with the same
transformation again. For this reason, the SVD always produces a diagonal ma-
trix with all positive entries, but the matrices U and V are not guaranteed to be
rotations—they could include reflection as well. In geometric applications like
graphics this is an inconvenience, but a minor one: it is easy to differentiate ro-
tations from reflections by checking the determinant, which is +1 for rotations