Class TriangulateProjectiveLinearDLT
Triangulates the location of a 3D point given two or more views of the point using the Discrete Linear Transform (DLT). Works with an uncalibrated camera. Pixel observations and camera projection matrices are input. Works on projective geometry. Normalization is automatically applied each row in the projective matrix.
A geometric test is done using singular values. There should be a fairly obvious null space. If this is not the case then the geometry will be considered bad
[1] Page 312 in R. Hartley, and A. Zisserman, "Multiple View Geometry in Computer Vision", 2nd Ed, Cambridge 2003

Field Summary

Constructor Summary

Method Summary
Modifier and TypeMethodDescriptiontriangulate
(List<Point2D_F64> observations, List<DMatrixRMaj> cameraMatrices, Point4D_F64 found) Given N observations of the same point from two views and a known motion between the two views, triangulate the point's position in camera 'b' reference frame.

Field Details

singularThreshold
public double singularThresholdused in geometry test


Constructor Details

TriangulateProjectiveLinearDLT
public TriangulateProjectiveLinearDLT()


Method Details

triangulate
public GeometricResult triangulate(List<Point2D_F64> observations, List<DMatrixRMaj> cameraMatrices, Point4D_F64 found) Given N observations of the same point from two views and a known motion between the two views, triangulate the point's position in camera 'b' reference frame.
 Parameters:
observations
 Observation in each view in pixel coordinates. Not modified.cameraMatrices
 Camera projection matrices, e.g. x = P*X. 3 by 4 projectives. Not modified.found
 Output, found 3D point in homogenous coordinates. Modified. Returns:
 true if triangulation was successful or false if it failed
