MathOverflow is a question and answer site for professional mathematicians. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

suppose I got a projective camera model. for this model I would like to back-project a ray through a point in the image plane. I know that the equation for this is the following: $$ y(\lambda) = P^+_0 x_0 + \lambda c_0 $$ where $P^+_0$ denotes the pseudoinverse of the camera matrix. $x_0$ the point on the image plane and $c_0$ the center of the camera.

Now I don't fully get this equation. I get that $P^+_0 x_0$ results in a point on the line we are looking for. Hence we have two points that we can use for constructing a line. However I don't get the parametrization using $\lambda$. Why is the equation not in the form like: $$y(\lambda) = (1-\lambda) a + \lambda b$$

Any help in understanding the original equation of the resulting ray would be appreciated! :D

share|cite|improve this question

I hope it's ok if I provide an answer myself.

Algebraic explanation: we're trying to solve the equation $$PX=x$$ This is a linear system which can be solved using the pseudo-inverse(see): $$X(\lambda)=P^+x+(I-P^+P)\lambda$$ We now $PC=0$, hence $I-P^+P$ is exactly our $C$.

share|cite|improve this answer

The equation is in your form, with $a = P^+_0 x_0$ and $b = P^+_0 x_0 + c_0$.

Since $P c_0 = 0$, $P \lambda c_0 = \lambda P c_0 = 0$. I think that adding a linear multiple of $c_0$ corresponds to sliding along a line normal to the image plane (i.e. parallel to the principal axis), which doesn't change the projected point in the image plane.

By the way, I found the original poster's specific equation on p.162 of Multiple View Geometry in Computer Vision by Richard Hartley and Andrew Zisserman via a web preview.

share|cite|improve this answer
thanks for you answer. however I don't think that it accounts for sliding along the line normal to the image plane, (unless our original point is (0,0)) if it was sliding along the normal we would get lot's of points in 3-space that don't actually map to our original point on the image plane. – tdomhan Jan 31 '12 at 20:11

Your Answer


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.