I want to find the location of a camera in 'world coordinates' based on projective geometry. My source of theory is the book Multiple View geometry in Computer Vision, as well as A Flexible New Technique for Camera Calibration .

I performed a camera calibration to get the intrinsic parameters, K and took a picture from a rectangle Pattern (4 points) in the wall to get the projections of the point set in the image. So now I have:

  • Intrinsic parameter matrix K of my camera.
  • Calibrated real world points in the wall X1..X4
  • Measured points x1..x4 (u,v) in the image.
  • Rotation matrix of the camera (in fact the camera is parallel to the wall).

My question is how should I find C having points and projected points X,x,K,R: with the projection matrix below I can't get the z component of C.

$$ x = K R\left[ \begin{array}{c|c} I&-C \end{array} \right] X $$

Pinhole camera geometry

EDIT Based on Peter Sheldrick comment below I came to a potential solution to the equation $$x = P X$$ and I would like to know if is consistent.

$$ x = P\cdot X \\x^T = X^T \cdot P^T \\ (X\cdot X^T)^{-1}\cdot X \cdot x^T = P^T \\ P = x\cdot X^T\cdot (X\cdot X^T)^{-T} $$

  • $\begingroup$ Ingenious solution in your answer. Thanks @PeterSheldrick $\endgroup$ – Guido Feb 21 at 22:51
  • $\begingroup$ @PeterSheldrick, please have a look at my EDIT to see if you find consistent to solve the projective equation. $\endgroup$ – Guido Feb 27 at 11:49
  • $\begingroup$ X and x are in this case matrices with the homogeneous vectors. So X is 4x4 and x is 3x4. I tested and is feasible operation. $\endgroup$ – Guido Feb 28 at 9:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.