I have been working on Visual Odometry and using OpenCV's recoverPose function to decompose the Essential Matrix into a rotation matrix and translation unit vector.
int cv::recoverPose(InputArray E,
InputArray points1,
InputArray points2,
InputArray cameraMatrix,
OutputArray R,
OutputArray t,
double distanceThresh,
InputOutputArray mask = noArray(),
OutputArray triangulatedPoints = noArray()
)
One of the problems I'm facing is getting way too many instances in which there is 0 number of inliers. So, I'm thinking to experiment with the distanceThresh
variable. However, I'm not sure about its unit. The documentation only says
distanceThresh - threshold distance which is used to filter out far away points (i.e. infinite points).
So, is it in pixels or meters or something else? Without knowing that, it's not intuitive what values to try! (The default value is 50.0
)