Class HomographyInducedStereo3Pts

java.lang.Object
boofcv.alg.geo.h.HomographyInducedStereo3Pts

public class HomographyInducedStereo3Pts extends Object

Computes the homography induced by a plane from 3 point correspondences. Works with both calibrated and uncalibrated cameras. The Fundamental/Essential matrix must be known. The found homography will be from view 1 to view 2. The passed in Fundamental matrix must have the following properties for each set of point correspondences: x2*F*x1 = 0, where x1 and x2 are views of the point in image 1 and image 2 respectively. For more information see [1].

[1] Page 332, R. Hartley, and A. Zisserman, "Multiple View Geometry in Computer Vision", 2nd Ed, Cambridge 2003

  • Constructor Details

    • HomographyInducedStereo3Pts

      public HomographyInducedStereo3Pts()
  • Method Details

    • setFundamental

      public void setFundamental(DMatrixRMaj F, @Nullable @Nullable Point3D_F64 e2)
      Specify the fundamental matrix and the camera 2 epipole.
      Parameters:
      F - Fundamental matrix.
      e2 - Epipole for camera 2. If null it will be computed internally.
    • process

      public boolean process(AssociatedPair p1, AssociatedPair p2, AssociatedPair p3)
      Estimates the homography from view 1 to view 2 induced by a plane from 3 point associations. Each pair must pass the epipolar constraint. This can fail if the points are colinear.
      Parameters:
      p1 - Associated point observation
      p2 - Associated point observation
      p3 - Associated point observation
      Returns:
      True if successful or false if it failed
    • getHomography

      public DMatrixRMaj getHomography()
      The found homography from view 1 to view 2
      Returns:
      homography