Question about projection matrices

  • Context: Graduate 
  • Thread starter Thread starter pamparana
  • Start date Start date
  • Tags Tags
    Matrices Projection
Click For Summary
SUMMARY

This discussion focuses on the creation and properties of projection matrices in linear algebra, specifically using a 4x4 affine transformation matrix to project vectors onto a subspace spanned by the columns of a 3x3 matrix A. The projection matrix is defined as P = A(A^TA)^{-1}A^T, which satisfies the property P^2 = P, confirming its status as a projection matrix. The conversation also highlights the importance of understanding orthogonal projections and the conditions under which the inverse of A^TA exists.

PREREQUISITES
  • Understanding of linear algebra concepts, particularly projection matrices.
  • Familiarity with affine transformations in 3D space.
  • Knowledge of matrix operations, including multiplication and inversion.
  • Proficiency in working with inner products and orthogonal vectors.
NEXT STEPS
  • Study the derivation and properties of projection matrices in linear algebra.
  • Learn about affine transformations and their applications in computer graphics.
  • Explore the concept of orthogonal projections and their geometric interpretations.
  • Investigate the conditions for the invertibility of matrices, particularly A^TA.
USEFUL FOR

Students and professionals in mathematics, computer graphics developers, and anyone interested in understanding the mathematical foundations of projections in vector spaces.

pamparana
Messages
123
Reaction score
0
Hello,

I am looking at some code which creates a projection matrix and I can verify that it is indeed correct as P^2 = P.

The way they do is as follows:

There is a 4x4 matrix which is an affine map between two coordinate systems (takes one from image space to world space). It is a transformation in 3D and the last row is [0 0 0 1] to accommodate for translation.

The procedure is as follows:

They take the 3x3 part of the matrix (so removing the translation bit) and also an appropriate transformation matrix is created. So for example if we only want to have the projection along the "z" plane, it would be:

I = [0 0 0; 0 0 0; 0 0 1]

The final projection matrix is gicen by:

A * I * inverse(A) where A is the 3x3 part.

I can verify that the resulting matrix indeed fulfills the properties of a projection matrix but am unable to get an intuitive feel of why this is so...

I would be very grateful if someone here can shed some light on this...

Thanks,

Luca
 
Physics news on Phys.org
Let's take the problem as this:You have a vector space that is spanned by columns of matrix ##A##; call it ##c(A)##.

Also, you have a vector ##b## that may or may not be in ##c(A)## and you want to find its orthogonal projection on ##c(A)##.

Then, let ##\hat{x}## be the solution such that ##A\hat{x}## is the orthogonal projection of ##b## on ##c(A)##.

So we have vector ##(A\hat{x}-b)## orthogonal to ##c(A)## such that the inner product ##<A\hat{x}-b,v> = 0##, where ##v\in c(A)##.Since columns of ##A## are elements of ##c(A)##, thus...
[tex]\begin{align*}<br /> A^T(A\hat{x}-b)&=0\\<br /> A^TA\hat{x}&=A^Tb<br /> \end{align*}[/tex]If ##A^TA## has an inverse, then...
[tex]\begin{align*}<br /> \hat{x}&=(A^TA)^{-1}A^Tb\\<br /> A\hat{x}&=A(A^TA)^{-1}A^Tb<br /> \end{align*}[/tex]And the projection matrix,
[tex]\begin{align*}<br /> P&=A(A^TA)^{-1}A^T\\<br /> &=AA^{-1}_{left}<br /> \end{align*}[/tex]Again, provided that the inverse exists, you can prove that for any positive integer n, ##P^n=P##.
 
Last edited:

Similar threads

  • · Replies 3 ·
Replies
3
Views
5K
  • · Replies 15 ·
Replies
15
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 5 ·
Replies
5
Views
4K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 1 ·
Replies
1
Views
1K