1 | initial version |
I've used triangulatepoints sucessfuly, although I got better results with an iterative solution based on the code in Hartley and Zisserman
The different format used by the functions is a little annoying
Call cv::undistortPoints() passing in the screen points as cv::Mat(1,4,CV_64FC2) channel [0]=x, [1]=y, then pass the result to cv::correctMatches()
You then need to convert the result to a cv::Mat(2,n,CV_64FC1) for each 'n' points in left and simalrly in right. Remember you need to generate the projection matrix for each camera with cv::stereoRectify()
The result is 4D value in each column - x,y,z,w so you need to divide x,y,z by w