gtsfm icon indicating copy to clipboard operation
gtsfm copied to clipboard

Refactor Triangulation Reprojection Error

Open travisdriver opened this issue 1 year ago • 2 comments

When we triangulate with RANSAC, we choose the inliers based on the reprojection errors from a track triangulated with two cameras. Then, we return the inliers, triangulate again with all of the cameras, and recompute all of the reprojection errors.

This means that the recomputed reprojection errors could be larger than those used to choose the best inlier track, and then it can be rejected with the EXCEEDS_REPROJ_THRESHOLD exit flag. I don't think this is consistent.

Therefore, we should either retriangulate the point during RANSAC with all of the identified inlier cameras so that the result is consistent after exiting RANSAC, or we should not recompute the reprojection errors after RANSAC. I think the latter makes more sense.

travisdriver avatar Jun 29 '23 22:06 travisdriver