opencvcomputer-visiontriangulationopencv-solvepnp

Recovering pose from 3D triangulated points


I have a stereocamera setup where I use the OpenCV method cv::triangulatePoints to detect the checkeboard corners in 3D space. I was wondering what the method is to take these triangulated points and accurately estimate a 3D pose of the checkerboard.

One method I have encountered was found here, feeding the points into a PnP algorithm:

http://answers.opencv.org/question/168400/triangulating-points-into-world-space-and-using-in-solvepnp/

While this is a simple solution to my problem, I am not sure if this is completely correct, as most of my experience with method is for single camera use.

Any insight would be appreciated!


Solution

  • Fit a plane to the points. The normal to the plane plus any two axes orthogonal to the normal and to each other define the pose of your checkerboard object with respect to the camera.

    Note that for a checkerboard-like object you don't need stereo to find the orientation.