Take the 2-minute tour ×
MathOverflow is a question and answer site for professional mathematicians. It's 100% free, no registration required.

I have a camera matrix $P$ which defines a projective transformation $\mathbb{P}^3 \rightarrow \mathbb{P}^2$. In the former space there is a plane $[ x|\pi^Tx=0 ]$. The image of the plane under $P$ does not preserve angles. How can I find a transformation $H : \mathbb{P}^2 \rightarrow \mathbb{P}^2$ such that a right angle in the plane remains a right angle after applying $H \circ P$?

The application for this problem is extracting texture from a photo of a planar surface where the surface and camera locations are known.

share|improve this question
add comment

1 Answer 1

up vote 2 down vote accepted

By picking orthogonal coordinates in the given plane you can make an angle preserving projective map $\mathbb{P}^2\to\mathbb{P}^3$ whose image is the given plane. Composing with your camera mapping, you now have a mapping $G\colon\mathbb{P}^2\to\mathbb{P}^2$ that does not preserve angles. Let $H=G^{-1}$. The composition $HG=I$ clearly preserves angles; hence so does $HP$ when restricted to the given plane.

(Reverse the order of composition if you follow the usual computer graphics convention of letting matrices act on the right.)

share|improve this answer
    
Thank you. I got something working yesterday, but I now see how to simplify it. –  Ben Feb 23 '10 at 8:18
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.