Ask Your Question

solvePnP tvec units and axes directions

asked 2013-07-02 08:33:11 -0600

Alek gravatar image

I'm trying to find the relative position of the camera to the chessboard (or the other way around) - I feel OK with converting between different coordinate systems, e.g. as suggested here. I decided to use chessboard not only for calibration but actual position determination as well at this stage, since I can use the findChessboardCorners to get the imagePoints (and this works OK).

I've read a lot on this topic and feel that I understand the solvePnP outputs (even though I'm completely new to openCV and computer vision in general). Unfortunately, the results I get from solvePnP and physically measuring the test set-up are different: translation in z-direction is off by approx. 25%. x and y directions are completely wrong - several orders of magnitude and different direction than what I've read to be the camera coordinate system (x pointing up the image, y to the right, z away from the camera). The difference persists if I convert tvec and rvec to camera pose in world coordinates.

My questions are: •What are the directions of camera and world coordinate systems' axes? •Does solvePnP output the translation in the same units as I specify the objectPoints? •I specified the world origin as the first of the objectPoints (one of the chessboard corners). Is that OK and is tvec the translation to exactly that point from the camera coordinates?

This is my code (I attach it pro forma as it does not throw any exceptions etc.). I used grayscale images to get the camera intrinsics matrix and distortion coefficients during calibration so decided to perform localisation in grayscale as well. chessCoordinates is a list of chessboard points location in mm with respect to the origin (one of the corner points). camMatrix and distCoefficients come from calibration (performed using the same chessboard and objectPoints).

edit retag flag offensive close merge delete

1 answer

Sort by » oldest newest most voted

answered 2013-07-04 09:04:37 -0600

Alek gravatar image

I asked the same question on Stack Overflow and got a good answer, if you'd like to know it, here it is.

edit flag offensive delete link more

Question Tools


Asked: 2013-07-02 08:33:11 -0600

Seen: 7,456 times

Last updated: Jul 04 '13