Class HomogeneousPoint3DRefiner


public class HomogeneousPoint3DRefiner extends Point3DRefiner<HomogeneousPoint3D>
Refines an homogeneous 3D point by taking into account an initial estimation, inlier samples and their residuals. This class can be used to find a solution that minimizes error of inliers in LMSE terms. Typically, a refiner is used by a robust estimator, however it can also be useful in some other situations.
  • Constructor Details

    • HomogeneousPoint3DRefiner

      public HomogeneousPoint3DRefiner()
      Constructor.
    • HomogeneousPoint3DRefiner

      public HomogeneousPoint3DRefiner(HomogeneousPoint3D initialEstimation, boolean keepCovariance, BitSet inliers, double[] residuals, int numInliers, List<Plane> samples, double refinementStandardDeviation)
      Constructor.
      Parameters:
      initialEstimation - initial estimation to be set.
      keepCovariance - true if covariance of estimation must be kept after refinement, false otherwise.
      inliers - set indicating which of the provided matches are inliers.
      residuals - residuals for matched samples.
      numInliers - number of inliers on initial estimation.
      samples - collection of samples.
      refinementStandardDeviation - standard deviation used for Levenberg-Marquardt fitting.
    • HomogeneousPoint3DRefiner

      public HomogeneousPoint3DRefiner(HomogeneousPoint3D initialEstimation, boolean keepCovariance, com.irurueta.numerical.robust.InliersData inliersData, List<Plane> samples, double refinementStandardDeviation)
      Constructor.
      Parameters:
      initialEstimation - initial estimation to be set.
      keepCovariance - true if covariance of estimation must be kept after refinement, false otherwise.
      inliersData - inlier data, typically obtained from a robust estimator.
      samples - collection of samples.
      refinementStandardDeviation - standard deviation used for Levenberg-Marquardt fitting.
  • Method Details