Package boofcv.alg.geo.trifocal
Class EnforceTrifocalGeometry
java.lang.Object
boofcv.alg.geo.trifocal.EnforceTrifocalGeometry
Applies geometric constraints to an estimated trifocal tensor. See page 394 in [1].
References:
- R. Hartley, and A. Zisserman, "Multiple View Geometry in Computer Vision", 2nd Ed, Cambridge 2003
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
computeErrorVector
(DMatrixRMaj A, DMatrixRMaj errors) Returns the algebraic error vector.protected void
constructE
(Point3D_F64 e2, Point3D_F64 e3) The matrix E is a linear system for computing the trifocal tensor.void
extractSolution
(TrifocalTensor tensor) Inserts the found trifocal tensor into the provided object.void
process
(Point3D_F64 e2, Point3D_F64 e3, DMatrixRMaj A) Computes a trifocal tensor which minimizes the algebraic error given the two epipoles and the linear constraint matrix.
-
Field Details
-
E
-
-
Constructor Details
-
EnforceTrifocalGeometry
public EnforceTrifocalGeometry()
-
-
Method Details
-
process
Computes a trifocal tensor which minimizes the algebraic error given the two epipoles and the linear constraint matrix. The epipoles are from a previously computed trifocal tensor.- Parameters:
e2
- Epipole of first image in the second imagee3
- Epipole of first image in the third imageA
- Linear constraint matrix for trifocal tensor created from image observations.
-
computeErrorVector
Returns the algebraic error vector. error = A*U*x. length = number of observations -
extractSolution
Inserts the found trifocal tensor into the provided object. -
constructE
The matrix E is a linear system for computing the trifocal tensor. The columns are the unknown square matrices from view 2 and 3. The right most column in both projection matrices are the provided epipoles, whose values are inserted into E
-