Class HomographyEstimator

java.lang.Object
imagingbook.calibration.zhang.HomographyEstimator

public class HomographyEstimator extends Object
This class defines methods for estimating the homography (projective) transformation between pairs of 2D point sets.
  • Field Details

  • Constructor Details

  • Method Details

    • estimateHomographies

      public RealMatrix[] estimateHomographies(Pnt2d[] modelPts, Pnt2d[][] obsPoints)
      Estimates the homographies between a fixed set of 2D model points and multiple observations (image point sets). The correspondence between the points is assumed to be known.
      Parameters:
      modelPts - a sequence of 2D points on the model (calibration target)
      obsPoints - a sequence 2D image point sets (one set per view).
      Returns:
      the sequence of estimated homographies (3 x 3 matrices), one for each view
    • estimateHomography

      public RealMatrix estimateHomography(Pnt2d[] ptsA, Pnt2d[] ptsB)
      Estimates the homography (projective) transformation from two given 2D point sets. The correspondence between the points is assumed to be known.
      Parameters:
      ptsA - the 1st sequence of 2D points
      ptsB - the 2nd sequence of 2D points
      Returns:
      the estimated homography (3 x 3 matrix)
    • refineHomography

      public RealMatrix refineHomography(RealMatrix Hinit, Pnt2d[] pntsA, Pnt2d[] pntsB)
      Refines the initial homography by non-linear (Levenberg-Marquart) optimization.
      Parameters:
      Hinit - the initial (estimated) homography matrix
      pntsA - the 1st sequence of 2D points
      pntsB - the 2nd sequence of 2D points
      Returns:
      the refined homography matrix
    • getJacobianFunction