Package com.irurueta.ar.sfm
Class BasePairedViewsSparseReconstructorConfiguration<T extends BasePairedViewsSparseReconstructorConfiguration<T>>
java.lang.Object
com.irurueta.ar.sfm.BasePairedViewsSparseReconstructorConfiguration<T>
- Type Parameters:
T
- an actual implementation of a configuration class.
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
BaseSlamPairedViewsSparseReconstructorConfiguration
,PairedViewsSparseReconstructorConfiguration
public abstract class BasePairedViewsSparseReconstructorConfiguration<T extends BasePairedViewsSparseReconstructorConfiguration<T>>
extends Object
implements Serializable
Base class containing configuration for a paired view based sparse re-constructor.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate boolean
Indicates whether a general scene (points laying in a general 3D position) is allowed.private boolean
Indicates whether a planar scene (points laying in a 3D plane) is allowed.private boolean
Indicates whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used.static final boolean
Indicates whether a general (points are laying in a general 3D position) scene is allowed.static final boolean
Indicates whether a planar (points laying in a 3D plane) scene is allowed.static final boolean
Indicates whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used.static final boolean
Default value indicating that inlier data is kept after robust fundamental matrix estimation.static final boolean
Default value indicating that residual data is kept after robust fundamental matrix estimation.static final double
Default confidence of robustly estimated fundamental matrix.static final int
Default maximum number of iterations to make while robustly estimating fundamental matrix.static final double
Default threshold to determine whether samples for robust fundamental matrix estimation are inliers or not.static final boolean
Indicates that fundamental matrix covariance is kept by default after the estimation.static final boolean
Indicates that planar homography covariance is kept by default after estimation.static final boolean
Indicates whether intrinsic parameters are known by default.static final FundamentalMatrixEstimatorMethod
Default non-robust fundamental matrix estimator method used internally within a robust estimator.static final double
Default aspect ratio for paired cameras.static final CorrectorType
Default corrector type to use for point triangulation when pairs of cameras are being estimated using either Dual Image of Absolute Conic (DIAC), Dual Absolute Quadric (DAQ) or essential matrix methods.static final InitialCamerasEstimatorMethod
Default method to use for paired cameras' estimation.static final boolean
Default value indicating whether valid triangulated points are marked during paired cameras estimation using either Dual Image of Absolute Conic (DIAC) or essential matrix methods.static final double
Default horizontal principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.static final double
Default vertical principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.static final boolean
Default value indicating that inlier data is kept after robust planar homography estimation.static final boolean
Default value indicating that residual data is kept after robust planar homography estimation.static final double
Default confidence of robustly estimated planar homography.static final int
Default maximum number of iterations to make while robustly estimating planar homography.static final double
Default threshold to determine whether samples for robust projective 2D transformation estimation are inliers or not.static final boolean
Indicates that estimated fundamental matrix is refined by default using all found inliers.static final boolean
Indicates that planar homography is refined by default using all found inliers.static final com.irurueta.numerical.robust.RobustEstimatorMethod
Default robust fundamental matrix estimator method.static final com.irurueta.numerical.robust.RobustEstimatorMethod
Default robust planar homography estimator method.private boolean
Indicates whether inliers must be kept during robust fundamental matrix estimation.private boolean
Indicates whether residuals must be computed and kept during robust fundamental matrix estimation.private double
Confidence of robustly estimated fundamental matrix.private int
Maximum number of iterations to robustly estimate fundamental matrix.private double
Threshold to determine whether samples for robust fundamental matrix estimation are inliers or not.private boolean
Indicates whether covariance of estimated fundamental matrix is kept after the estimation.private boolean
Indicates whether planar homography covariance is kept after estimation.private boolean
Indicates whether intrinsic parameters are known.private FundamentalMatrixEstimatorMethod
Method to use for non-robust fundamental matrix estimation.private double
Aspect ratio for paired cameras.private CorrectorType
Corrector type to use for point triangulation when pairs of cameras are being estimated using either Dual Image of Absolute Conic (DIAC) or essential matrix methods or null if no corrector is used.private InitialCamerasEstimatorMethod
Method to use for paired cameras' estimation.private boolean
Value indicating whether valid triangulated points are marked during paired cameras estimation using either Dual Image of Absolute Conic (DIAC) or essential matrix methods.private boolean
Value indicating that inlier data is kept after robust planar homography estimation.private boolean
Value indicating that residual data is kept after robust planar homography estimation.private double
Confidence of robustly estimated planar homography.private int
Maximum number of iterations to make while robustly estimating planar homography.private double
Threshold to determine whether samples for robust projective 2D transformation estimation are inliers or not.private double
Horizontal principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.private double
Vertical principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.private boolean
Indicates whether estimated fundamental matrix is refined among all found inliers.private boolean
Indicates whether planar homography is refined using all found inliers or not.private com.irurueta.numerical.robust.RobustEstimatorMethod
Method to use for robust fundamental matrix estimation.private com.irurueta.numerical.robust.RobustEstimatorMethod
Robust method to use for planar homograpy estimation. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
Constructor. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Indicates whether intrinsic parameters are known.boolean
Indicates whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used.boolean
Indicates whether inliers must be kept during robust fundamental matrix estimation.boolean
Indicates whether residuals must be computed and kept during robust fundamental matrix estimation.double
Gets confidence of robustly estimated fundamental matrix.int
Gets maximum number of iterations to robustly estimate fundamental matrix.double
Gets threshold to determine whether samples for robust fundamental matrix estimation are inliers or not.Gets method to use for non-robust fundamental matrix estimation.double
Gets aspect ratio for paired cameras estimation using DAQ or DIAC methods.Gets corrector type to use for point triangulation when pairs of cameras are being estimated using either DIAC or essential matrix methods or null if no corrector is used.Gets method to use for paired cameras' estimation.boolean
Gets value indicating whether valid triangulated points are marked during paired cameras estimation using either DIAC or essential matrix methods.boolean
Gets value indicating that inlier data is kept after robust planar homography estimation.boolean
Gets value indicating that residual data is kept after robust planar homography estimation.double
Gets confidence of robustly estimated planar homography.int
Gets maximum number of iterations to make while robustly estimating planar homography.double
Gets threshold to determine whether samples for robust projective 2D transformation estimation are inliers or not.double
Gets horizontal principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.double
Gets vertical principal point value to use for paired cameras estimation using DIAC or DAQ methods.com.irurueta.numerical.robust.RobustEstimatorMethod
Gets method to use for robust fundamental matrix estimation.com.irurueta.numerical.robust.RobustEstimatorMethod
Gets robust method to use for planar homography estimation.boolean
Indicates whether covariance of estimated fundamental matrix is kept after the estimation.boolean
Indicates whether estimated fundamental matrix is refined among all found inliers.boolean
Indicates whether a general scene (points laying in a general 3D position) is allowed.boolean
Indicates whether planar homography covariance is kept after estimation.boolean
Indicates whether planar homography is refined using all found inliers or not.boolean
Indicates whether a planar scene (points laying in a 3D plane) is allowed or not.setDaqUseHomogeneousPointTriangulator
(boolean daqUseHomogeneousPointTriangulator) Specifies whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used.setFundamentalMatrixComputeAndKeepInliers
(boolean fundamentalMatrixComputeAndKeepInliers) Specifies whether inliers must be kept during robust fundamental matrix estimation.setFundamentalMatrixComputeAndKeepResiduals
(boolean fundamentalMatrixComputeAndKeepResiduals) Specifies whether residuals must be computed and kept during robust fundamental matrix estimation.setFundamentalMatrixConfidence
(double fundamentalMatrixConfidence) Sets confidence of robustly estimated fundamental matrix.setFundamentalMatrixCovarianceKept
(boolean keepFundamentalMatrixCovariance) Specifies whether covariance of estimated fundamental matrix is kept after the estimation.setFundamentalMatrixMaxIterations
(int fundamentalMatrixMaxIterations) Sets maximum number of iterations to robustly estimate fundamental matrix.setFundamentalMatrixRefined
(boolean refineFundamentalMatrix) Specifies whether estimated fundamental matrix is refined among all found inliers.setFundamentalMatrixThreshold
(double fundamentalMatrixThreshold) Sets threshold to determine whether samples for robust fundamental matrix estimation are inliers or not.setGeneralSceneAllowed
(boolean allowGeneralScene) Specifies whether a general scene (points laying in a general 3D position) is allowed.setIntrinsicParametersKnown
(boolean intrinsicParametersKnown) Specifies whether intrinsic parameters are known.Sets method to use for non-robust fundamental matrix estimation.setPairedCamerasAspectRatio
(double pairedCamerasAspectRatio) Sets aspect ratio for paired cameras estimation using DAQ or DIAC methods.Sets corrector type to use for point triangulation when pairs of cameras are being estimated using either DIAC or essential matrix methods or null if no corrector is used.Sets method to use for paired cameras' estimation.setPairedCamerasMarkValidTriangulatedPoints
(boolean pairedCamerasMarkValidTriangulatedPoints) Sets value indicating whether valid triangulated points are marked during paired cameras estimation using either DIAC or essential matrix methods.setPlanarHomographyComputeAndKeepInliers
(boolean planarHomographyComputeAndKeepInliers) Specifies whether inlier data is kept after robust planar homography estimation.setPlanarHomographyComputeAndKeepResiduals
(boolean planarHomographyComputeAndKeepResiduals) Sets value indicating that residual data is kept after robust planar homography estimation.setPlanarHomographyConfidence
(double planarHomographyConfidence) Sets confidence of robustly estimated planar homography.setPlanarHomographyCovarianceKept
(boolean keepPlanarHomographyCovariance) Specifies whether planar homography covariance is kept after estimation.setPlanarHomographyMaxIterations
(int planarHomographyMaxIterations) Sets maximum number of iterations to make while robustly estimating planar homography.setPlanarHomographyRefined
(boolean refinePlanarHomography) Specifies whether planar homography is refined using all found inliers or not.setPlanarHomographyThreshold
(double planarHomographyThreshold) Sets threshold to determine whether samples for robust projective 2D transformation estimation are inliers or not.setPlanarSceneAllowed
(boolean allowPlanarScene) specifies whether a planar scene (points laying in a 3D plane) is allowed or not.setPrincipalPointX
(double principalPointX) Sets horizontal principal point value to use for paired cameras estimation using DIAC or DAQ methods.setPrincipalPointY
(double principalPointY) Sets vertical principal point value to use for paired cameras estimation using DIAC or DAQ methods.setRobustFundamentalMatrixEstimatorMethod
(com.irurueta.numerical.robust.RobustEstimatorMethod method) Sets method to use for robust fundamental matrix estimation.setRobustPlanarHomographyEstimatorMethod
(com.irurueta.numerical.robust.RobustEstimatorMethod robustPlanarHomographyEstimatorMethod) Sets robust method to use for planar homography estimation.
-
Field Details
-
DEFAULT_ROBUST_FUNDAMENTAL_MATRIX_ESTIMATOR_METHOD
public static final com.irurueta.numerical.robust.RobustEstimatorMethod DEFAULT_ROBUST_FUNDAMENTAL_MATRIX_ESTIMATOR_METHODDefault robust fundamental matrix estimator method. This is only used when general scenes are allowed. -
DEFAULT_NON_ROBUST_FUNDAMENTAL_MATRIX_ESTIMATOR_METHOD
public static final FundamentalMatrixEstimatorMethod DEFAULT_NON_ROBUST_FUNDAMENTAL_MATRIX_ESTIMATOR_METHODDefault non-robust fundamental matrix estimator method used internally within a robust estimator. This is only used when general scenes are allowed. -
DEFAULT_REFINE_FUNDAMENTAL_MATRIX
public static final boolean DEFAULT_REFINE_FUNDAMENTAL_MATRIXIndicates that estimated fundamental matrix is refined by default using all found inliers. This is only used when general scenes are allowed.- See Also:
-
DEFAULT_KEEP_FUNDAMENTAL_MATRIX_COVARIANCE
public static final boolean DEFAULT_KEEP_FUNDAMENTAL_MATRIX_COVARIANCEIndicates that fundamental matrix covariance is kept by default after the estimation. This is only used when general scenes are allowed.- See Also:
-
DEFAULT_FUNDAMENTAL_MATRIX_CONFIDENCE
public static final double DEFAULT_FUNDAMENTAL_MATRIX_CONFIDENCEDefault confidence of robustly estimated fundamental matrix. By default, this is 99%. This is only used when general scenes are allowed.- See Also:
-
DEFAULT_FUNDAMENTAL_MATRIX_MAX_ITERATIONS
public static final int DEFAULT_FUNDAMENTAL_MATRIX_MAX_ITERATIONSDefault maximum number of iterations to make while robustly estimating fundamental matrix. By default, this is 5000 iterations. This is only used when general scenes are allowed.- See Also:
-
DEFAULT_FUNDAMENTAL_MATRIX_THRESHOLD
public static final double DEFAULT_FUNDAMENTAL_MATRIX_THRESHOLDDefault threshold to determine whether samples for robust fundamental matrix estimation are inliers or not. This is only used when general scenes are allowed.- See Also:
-
DEFAULT_FUNDAMENTAL_MATRIX_COMPUTE_AND_KEEP_INLIERS
public static final boolean DEFAULT_FUNDAMENTAL_MATRIX_COMPUTE_AND_KEEP_INLIERSDefault value indicating that inlier data is kept after robust fundamental matrix estimation. This is only used when general scenes are allowed.- See Also:
-
DEFAULT_FUNDAMENTAL_MATRIX_COMPUTE_AND_KEEP_RESIDUALS
public static final boolean DEFAULT_FUNDAMENTAL_MATRIX_COMPUTE_AND_KEEP_RESIDUALSDefault value indicating that residual data is kept after robust fundamental matrix estimation. This is only used when general scenes are allowed.- See Also:
-
DEFAULT_PAIRED_CAMERAS_ESTIMATOR_METHOD
Default method to use for paired cameras' estimation. Each pair of cameras is computed as an initial pair of cameras, however they are appended to the last pair of cameras using the last known camera location and rotation. -
DEFAULT_DAQ_USE_HOMOGENEOUS_POINT_TRIANGULATOR
public static final boolean DEFAULT_DAQ_USE_HOMOGENEOUS_POINT_TRIANGULATORIndicates whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used.- See Also:
-
DEFAULT_PAIRED_CAMERAS_ASPECT_RATIO
public static final double DEFAULT_PAIRED_CAMERAS_ASPECT_RATIODefault aspect ratio for paired cameras.- See Also:
-
DEFAULT_PAIRED_CAMERAS_PRINCIPAL_POINT_X
public static final double DEFAULT_PAIRED_CAMERAS_PRINCIPAL_POINT_XDefault horizontal principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.- See Also:
-
DEFAULT_PAIRED_CAMERAS_PRINCIPAL_POINT_Y
public static final double DEFAULT_PAIRED_CAMERAS_PRINCIPAL_POINT_YDefault vertical principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.- See Also:
-
DEFAULT_PAIRED_CAMERAS_CORRECTOR_TYPE
Default corrector type to use for point triangulation when pairs of cameras are being estimated using either Dual Image of Absolute Conic (DIAC), Dual Absolute Quadric (DAQ) or essential matrix methods. -
DEFAULT_PAIRED_CAMERAS_MARK_VALID_TRIANGULATED_POINTS
public static final boolean DEFAULT_PAIRED_CAMERAS_MARK_VALID_TRIANGULATED_POINTSDefault value indicating whether valid triangulated points are marked during paired cameras estimation using either Dual Image of Absolute Conic (DIAC) or essential matrix methods.- See Also:
-
DEFAULT_ALLOW_GENERAL_SCENE
public static final boolean DEFAULT_ALLOW_GENERAL_SCENEIndicates whether a general (points are laying in a general 3D position) scene is allowed. When true, an initial geometry estimation is attempted for planar points.- See Also:
-
DEFAULT_ALLOW_PLANAR_SCENE
public static final boolean DEFAULT_ALLOW_PLANAR_SCENEIndicates whether a planar (points laying in a 3D plane) scene is allowed. When true, an initial geometry estimation is attempted for planar points.- See Also:
-
DEFAULT_ROBUST_PLANAR_HOMOGRAPHY_ESTIMATOR_METHOD
public static final com.irurueta.numerical.robust.RobustEstimatorMethod DEFAULT_ROBUST_PLANAR_HOMOGRAPHY_ESTIMATOR_METHODDefault robust planar homography estimator method. This is only used when planar scenes are allowed. -
DEFAULT_REFINE_PLANAR_HOMOGRAPHY
public static final boolean DEFAULT_REFINE_PLANAR_HOMOGRAPHYIndicates that planar homography is refined by default using all found inliers. This is only used when planar scenes are allowed.- See Also:
-
DEFAULT_KEEP_PLANAR_HOMOGRAPHY_COVARIANCE
public static final boolean DEFAULT_KEEP_PLANAR_HOMOGRAPHY_COVARIANCEIndicates that planar homography covariance is kept by default after estimation. This is only used when planar scenes are allowed.- See Also:
-
DEFAULT_PLANAR_HOMOGRAPHY_CONFIDENCE
public static final double DEFAULT_PLANAR_HOMOGRAPHY_CONFIDENCEDefault confidence of robustly estimated planar homography. By default, it is 99%. This is only used when planar scenes are allowed.- See Also:
-
DEFAULT_PLANAR_HOMOGRAPHY_MAX_ITERATIONS
public static final int DEFAULT_PLANAR_HOMOGRAPHY_MAX_ITERATIONSDefault maximum number of iterations to make while robustly estimating planar homography. By default, this is 5000 iterations. This is only used when planar scenes are allowed.- See Also:
-
DEFAULT_PLANAR_HOMOGRAPHY_THRESHOLD
public static final double DEFAULT_PLANAR_HOMOGRAPHY_THRESHOLDDefault threshold to determine whether samples for robust projective 2D transformation estimation are inliers or not. This is only used when planar scenes are allowed.- See Also:
-
DEFAULT_PLANAR_HOMOGRAPHY_COMPUTE_AND_KEEP_INLIERS
public static final boolean DEFAULT_PLANAR_HOMOGRAPHY_COMPUTE_AND_KEEP_INLIERSDefault value indicating that inlier data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.- See Also:
-
DEFAULT_PLANAR_HOMOGRAPHY_COMPUTE_AND_KEEP_RESIDUALS
public static final boolean DEFAULT_PLANAR_HOMOGRAPHY_COMPUTE_AND_KEEP_RESIDUALSDefault value indicating that residual data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.- See Also:
-
DEFAULT_KNOWN_INTRINSIC_PARAMETERS
public static final boolean DEFAULT_KNOWN_INTRINSIC_PARAMETERSIndicates whether intrinsic parameters are known by default. When intrinsic parameters are known, essential matrix method is used for paired camera estimation. If intrinsic parameters are unknown, pairs of cameras are auto-calibrated using either DAQ (Dual Absolute Quadric) or DIAC (Dual Image of Absolute Conic) methods.- See Also:
-
nonRobustFundamentalMatrixEstimatorMethod
Method to use for non-robust fundamental matrix estimation. This is only used when general scenes are allowed. -
robustFundamentalMatrixEstimatorMethod
private com.irurueta.numerical.robust.RobustEstimatorMethod robustFundamentalMatrixEstimatorMethodMethod to use for robust fundamental matrix estimation. This is only used when general scenes are allowed. -
refineFundamentalMatrix
private boolean refineFundamentalMatrixIndicates whether estimated fundamental matrix is refined among all found inliers. This is only used when general scenes are allowed. -
keepFundamentalMatrixCovariance
private boolean keepFundamentalMatrixCovarianceIndicates whether covariance of estimated fundamental matrix is kept after the estimation. This is only used when general scenes are allowed. -
fundamentalMatrixConfidence
private double fundamentalMatrixConfidenceConfidence of robustly estimated fundamental matrix. This is only used when general scenes are allowed. -
fundamentalMatrixMaxIterations
private int fundamentalMatrixMaxIterationsMaximum number of iterations to robustly estimate fundamental matrix. This is only used when general scenes are allowed. -
fundamentalMatrixThreshold
private double fundamentalMatrixThresholdThreshold to determine whether samples for robust fundamental matrix estimation are inliers or not. This is only used when general scenes are allowed. -
fundamentalMatrixComputeAndKeepInliers
private boolean fundamentalMatrixComputeAndKeepInliersIndicates whether inliers must be kept during robust fundamental matrix estimation. This is only used when general scenes are allowed. -
fundamentalMatrixComputeAndKeepResiduals
private boolean fundamentalMatrixComputeAndKeepResidualsIndicates whether residuals must be computed and kept during robust fundamental matrix estimation. This is only used when general scenes are allowed. -
pairedCamerasEstimatorMethod
Method to use for paired cameras' estimation. -
daqUseHomogeneousPointTriangulator
private boolean daqUseHomogeneousPointTriangulatorIndicates whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used. -
pairedCamerasAspectRatio
private double pairedCamerasAspectRatioAspect ratio for paired cameras. -
principalPointX
private double principalPointXHorizontal principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods. -
principalPointY
private double principalPointYVertical principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods. -
pairedCamerasCorrectorType
Corrector type to use for point triangulation when pairs of cameras are being estimated using either Dual Image of Absolute Conic (DIAC) or essential matrix methods or null if no corrector is used. -
pairedCamerasMarkValidTriangulatedPoints
private boolean pairedCamerasMarkValidTriangulatedPointsValue indicating whether valid triangulated points are marked during paired cameras estimation using either Dual Image of Absolute Conic (DIAC) or essential matrix methods. -
knownIntrinsicParameters
private boolean knownIntrinsicParametersIndicates whether intrinsic parameters are known. When intrinsic parameters are known, essential matrix method is used for paired camera estimation. If intrinsic parameters are unknown, pairs of cameras are auto-calibrated using either DAQ (Dual Absolute Quadric) or DIAC (Dual Image of Absolute Conic) methods. -
allowGeneralScene
private boolean allowGeneralSceneIndicates whether a general scene (points laying in a general 3D position) is allowed. When true, an initial geometry estimation is attempted for general points. -
allowPlanarScene
private boolean allowPlanarSceneIndicates whether a planar scene (points laying in a 3D plane) is allowed. When true, an initial geometry estimation is attempted for planar points. -
robustPlanarHomographyEstimatorMethod
private com.irurueta.numerical.robust.RobustEstimatorMethod robustPlanarHomographyEstimatorMethodRobust method to use for planar homograpy estimation. This is only used when planar scenes are allowed. -
refinePlanarHomography
private boolean refinePlanarHomographyIndicates whether planar homography is refined using all found inliers or not. This is only used when planar scenes are allowed. -
keepPlanarHomographyCovariance
private boolean keepPlanarHomographyCovarianceIndicates whether planar homography covariance is kept after estimation. This is only used when planar scenes are allowed. -
planarHomographyConfidence
private double planarHomographyConfidenceConfidence of robustly estimated planar homography. By default, this is 99%. This is only used when planar scenes are allowed. -
planarHomographyMaxIterations
private int planarHomographyMaxIterationsMaximum number of iterations to make while robustly estimating planar homography. By default, this is 5000. This is only used when planar scenes are allowed. -
planarHomographyThreshold
private double planarHomographyThresholdThreshold to determine whether samples for robust projective 2D transformation estimation are inliers or not. -
planarHomographyComputeAndKeepInliers
private boolean planarHomographyComputeAndKeepInliersValue indicating that inlier data is kept after robust planar homography estimation. This is only used when planar scenes are allowed. -
planarHomographyComputeAndKeepResiduals
private boolean planarHomographyComputeAndKeepResidualsValue indicating that residual data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.
-
-
Constructor Details
-
BasePairedViewsSparseReconstructorConfiguration
protected BasePairedViewsSparseReconstructorConfiguration()Constructor.
-
-
Method Details
-
getNonRobustFundamentalMatrixEstimatorMethod
Gets method to use for non-robust fundamental matrix estimation. This is only used when general scenes are allowed.- Returns:
- method to use for non-robust fundamental matrix estimation.
-
setNonRobustFundamentalMatrixEstimatorMethod
Sets method to use for non-robust fundamental matrix estimation. This is only used when general scenes are allowed.- Parameters:
method
- method to use for non-robust fundamental matrix estimation.- Returns:
- this instance so that method can be easily chained.
-
getRobustFundamentalMatrixEstimatorMethod
public com.irurueta.numerical.robust.RobustEstimatorMethod getRobustFundamentalMatrixEstimatorMethod()Gets method to use for robust fundamental matrix estimation. This is only used when general scenes are allowed.- Returns:
- method to use for robust fundamental matrix estimation.
-
setRobustFundamentalMatrixEstimatorMethod
public T setRobustFundamentalMatrixEstimatorMethod(com.irurueta.numerical.robust.RobustEstimatorMethod method) Sets method to use for robust fundamental matrix estimation. This is only used when general scenes are allowed.- Parameters:
method
- method to use for robust fundamental matrix estimation.- Returns:
- this instance so that method can be easily chained.
-
isFundamentalMatrixRefined
public boolean isFundamentalMatrixRefined()Indicates whether estimated fundamental matrix is refined among all found inliers. This is only used when general scenes are allowed.- Returns:
- true if fundamental matrix is refined, false otherwise.
-
setFundamentalMatrixRefined
Specifies whether estimated fundamental matrix is refined among all found inliers. This is only used when general scenes are allowed.- Parameters:
refineFundamentalMatrix
- true if fundamental matrix is refined, false otherwise.- Returns:
- this instance so that method can be easily chained.
-
isFundamentalMatrixCovarianceKept
public boolean isFundamentalMatrixCovarianceKept()Indicates whether covariance of estimated fundamental matrix is kept after the estimation. This is only used when general scenes are allowed.- Returns:
- true if covariance is kept, false otherwise.
-
setFundamentalMatrixCovarianceKept
Specifies whether covariance of estimated fundamental matrix is kept after the estimation. This is only used when general scenes are allowed.- Parameters:
keepFundamentalMatrixCovariance
- true if covariance is kept, false otherwise.- Returns:
- this instance so that method can be easily chained.
-
getFundamentalMatrixConfidence
public double getFundamentalMatrixConfidence()Gets confidence of robustly estimated fundamental matrix. This is only used when general scenes are allowed.- Returns:
- confidence of robustly estimated fundamental matrix.
-
setFundamentalMatrixConfidence
Sets confidence of robustly estimated fundamental matrix. This is only used when general scenes are allowed.- Parameters:
fundamentalMatrixConfidence
- confidence of robustly estimated fundamental matrix.- Returns:
- this instance so that method can be easily chained.
-
getFundamentalMatrixMaxIterations
public int getFundamentalMatrixMaxIterations()Gets maximum number of iterations to robustly estimate fundamental matrix. This is only used when general scenes are allowed.- Returns:
- maximum number of iterations to robustly estimate fundamental matrix.
-
setFundamentalMatrixMaxIterations
Sets maximum number of iterations to robustly estimate fundamental matrix. This is only used when general scenes are allowed.- Parameters:
fundamentalMatrixMaxIterations
- maximum number of iterations to robustly estimate fundamental matrix.- Returns:
- this instance so that method can be easily chained.
-
getFundamentalMatrixThreshold
public double getFundamentalMatrixThreshold()Gets threshold to determine whether samples for robust fundamental matrix estimation are inliers or not. This is only used when general scenes are allowed.- Returns:
- threshold to determine whether samples for robust fundamental matrix estimation are inliers or not.
-
setFundamentalMatrixThreshold
Sets threshold to determine whether samples for robust fundamental matrix estimation are inliers or not. This is only used when general scenes are allowed.- Parameters:
fundamentalMatrixThreshold
- threshold to determine whether samples for robust fundamental matrix estimation are inliers or not.- Returns:
- this instance so that method can be easily chained.
-
getFundamentalMatrixComputeAndKeepInliers
public boolean getFundamentalMatrixComputeAndKeepInliers()Indicates whether inliers must be kept during robust fundamental matrix estimation. This is only used when general scenes are allowed.- Returns:
- true if inliers must be kept during robust fundamental matrix estimation, false otherwise.
-
setFundamentalMatrixComputeAndKeepInliers
Specifies whether inliers must be kept during robust fundamental matrix estimation. This is only used when general scenes are allowed.- Parameters:
fundamentalMatrixComputeAndKeepInliers
- true if inliers must be kept during robust fundamental matrix estimation, false otherwise.- Returns:
- this instance so that method can be easily chained.
-
getFundamentalMatrixComputeAndKeepResiduals
public boolean getFundamentalMatrixComputeAndKeepResiduals()Indicates whether residuals must be computed and kept during robust fundamental matrix estimation. This is only used when general scenes are allowed.- Returns:
- true if residuals must be computed and kept, false otherwise.
-
setFundamentalMatrixComputeAndKeepResiduals
public T setFundamentalMatrixComputeAndKeepResiduals(boolean fundamentalMatrixComputeAndKeepResiduals) Specifies whether residuals must be computed and kept during robust fundamental matrix estimation. This is only used when general scenes are allowed.- Parameters:
fundamentalMatrixComputeAndKeepResiduals
- true if residuals must be computed and kept, false otherwise.- Returns:
- this instance so that method can be easily chained.
-
getPairedCamerasEstimatorMethod
Gets method to use for paired cameras' estimation.- Returns:
- method to use for paired cameras' estimation.
-
setPairedCamerasEstimatorMethod
Sets method to use for paired cameras' estimation.- Parameters:
method
- method to use for paired cameras' estimation.- Returns:
- this instance so that method can be easily chained.
-
getDaqUseHomogeneousPointTriangulator
public boolean getDaqUseHomogeneousPointTriangulator()Indicates whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used.- Returns:
- true if homogeneous point triangulator is used, false if an inhomogeneous point triangulator is used instead.
-
setDaqUseHomogeneousPointTriangulator
Specifies whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used.- Parameters:
daqUseHomogeneousPointTriangulator
- true if homogeneous point triangulator is used, false if an inhomogeneous point triangulator is used instead.- Returns:
- this instance so that method can be easily chained.
-
getPairedCamerasAspectRatio
public double getPairedCamerasAspectRatio()Gets aspect ratio for paired cameras estimation using DAQ or DIAC methods.- Returns:
- aspect ratio for initial cameras using DAQ or DIAC methods.
-
setPairedCamerasAspectRatio
Sets aspect ratio for paired cameras estimation using DAQ or DIAC methods.- Parameters:
pairedCamerasAspectRatio
- aspect ratio for paired cameras using DAQ or DIAC methods.- Returns:
- this instance so that method can be easily chained.
-
getPrincipalPointX
public double getPrincipalPointX()Gets horizontal principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.- Returns:
- horizontal principal point value to use for paired cameras estimation using DIAC or DAQ methods.
-
setPrincipalPointX
Sets horizontal principal point value to use for paired cameras estimation using DIAC or DAQ methods.- Parameters:
principalPointX
- horizontal principal point value to use for paired cameras estimation using DIAC or DAQ methods.- Returns:
- this instance so that method can be easily chained.
-
getPrincipalPointY
public double getPrincipalPointY()Gets vertical principal point value to use for paired cameras estimation using DIAC or DAQ methods.- Returns:
- vertical principal point value to use for paired cameras estimation using DIAC or DAQ methods.
-
setPrincipalPointY
Sets vertical principal point value to use for paired cameras estimation using DIAC or DAQ methods.- Parameters:
principalPointY
- vertical principal point value to use for initial cameras estimation using DIAC or DAQ methods.- Returns:
- this instance so that method can be easily chained.
-
getPairedCamerasCorrectorType
Gets corrector type to use for point triangulation when pairs of cameras are being estimated using either DIAC or essential matrix methods or null if no corrector is used.- Returns:
- corrector type to use for point triangulation when initial cameras are being estimated using either DIAC or essential matrix methods or null if no corrector is used.
-
setPairedCamerasCorrectorType
Sets corrector type to use for point triangulation when pairs of cameras are being estimated using either DIAC or essential matrix methods or null if no corrector is used.- Parameters:
type
- corrector type to use for point triangulation when pairs of cameras are being estimated using either DIAC or essential matrix methods or null if no corrector is used.- Returns:
- this instance so that method can be easily chained.
-
getPairedCamerasMarkValidTriangulatedPoints
public boolean getPairedCamerasMarkValidTriangulatedPoints()Gets value indicating whether valid triangulated points are marked during paired cameras estimation using either DIAC or essential matrix methods.- Returns:
- value indicating whether valid triangulated points are marked during paired cameras estimation using either DIAC or essential matrix methods.
-
setPairedCamerasMarkValidTriangulatedPoints
public T setPairedCamerasMarkValidTriangulatedPoints(boolean pairedCamerasMarkValidTriangulatedPoints) Sets value indicating whether valid triangulated points are marked during paired cameras estimation using either DIAC or essential matrix methods.- Parameters:
pairedCamerasMarkValidTriangulatedPoints
- value indicating whether valid triangulated points are marked during paired cameras estimation using either DIAC or essential matrix methods.- Returns:
- this instance so that method can be easily chained.
-
areIntrinsicParametersKnown
public boolean areIntrinsicParametersKnown()Indicates whether intrinsic parameters are known. When instrinsic parameters are known, essential matrix method can be used for paired camera estimation. If intrinsic parameters are unknown, pairs of cameras should be auto-calibrated using either DAQ (Dual Absolute Quadric) or DIAC (Dual Image of Absolute Conic) methods.- Returns:
- true if intrinsic parameters are known, false otherwise.
-
setIntrinsicParametersKnown
Specifies whether intrinsic parameters are known. When intrinsic parameters are known, essential matrix method can be used for paired camera estimation. If intrinsic parameters are unknown, pairs of cameras should be auto-calibrated using either DAQ (Dual Absolute Quadric) or DIAC (Dual Image of Absolute Conic) methods.- Parameters:
intrinsicParametersKnown
- true if intrinsic parameters are known, false otherwise.- Returns:
- this instance so that method can be easily chained.
-
isGeneralSceneAllowed
public boolean isGeneralSceneAllowed()Indicates whether a general scene (points laying in a general 3D position) is allowed. When true, an initial geometry estimation is attempted for general points.- Returns:
- true if general scene is allowed, false otherwise.
-
setGeneralSceneAllowed
Specifies whether a general scene (points laying in a general 3D position) is allowed. When true, an initial geometry estimation is attempted for general points.- Parameters:
allowGeneralScene
- true if general scene is allowed, false otherwise.- Returns:
- this instance so that method can be easily chained.
-
isPlanarSceneAllowed
public boolean isPlanarSceneAllowed()Indicates whether a planar scene (points laying in a 3D plane) is allowed or not. When true, an initial geometry estimation is attempted for planar points.- Returns:
- true if planar scene is allowed, false otherwise.
-
setPlanarSceneAllowed
specifies whether a planar scene (points laying in a 3D plane) is allowed or not. When true, an initial geometry estimation is attempted for planar points.- Parameters:
allowPlanarScene
- true if planar scene is allowed, false otherwise.- Returns:
- this instance so that method can be easily chained.
-
getRobustPlanarHomographyEstimatorMethod
public com.irurueta.numerical.robust.RobustEstimatorMethod getRobustPlanarHomographyEstimatorMethod()Gets robust method to use for planar homography estimation. This is only used when planar scenes are allowed.- Returns:
- robust method to use for planar homography estimation.
-
setRobustPlanarHomographyEstimatorMethod
public T setRobustPlanarHomographyEstimatorMethod(com.irurueta.numerical.robust.RobustEstimatorMethod robustPlanarHomographyEstimatorMethod) Sets robust method to use for planar homography estimation. This is only used when planar scenes are allowed.- Parameters:
robustPlanarHomographyEstimatorMethod
- robust method to use for planar homography estimation.- Returns:
- this instance so that method can be easily chained.
-
isPlanarHomographyRefined
public boolean isPlanarHomographyRefined()Indicates whether planar homography is refined using all found inliers or not. This is only used when planar scenes are allowed.- Returns:
- true if planar homography is refined, false otherwise.
-
setPlanarHomographyRefined
Specifies whether planar homography is refined using all found inliers or not. This is only used when planar scenes are allowed.- Parameters:
refinePlanarHomography
- true if planar homography must be refined, false otherwise.- Returns:
- this instance so that method can be easily chained.
-
isPlanarHomographyCovarianceKept
public boolean isPlanarHomographyCovarianceKept()Indicates whether planar homography covariance is kept after estimation. This is only used when planar scenes are allowed.- Returns:
- true if planar homography covariance is kept, false otherwise.
-
setPlanarHomographyCovarianceKept
Specifies whether planar homography covariance is kept after estimation. This is only used when planar scenes are allowed.- Parameters:
keepPlanarHomographyCovariance
- true if planar homography covariance is kept, false otherwise.- Returns:
- this instance so that method can be easily chained.
-
getPlanarHomographyConfidence
public double getPlanarHomographyConfidence()Gets confidence of robustly estimated planar homography. By default, this is 99%. This is only used when planar scenes are allowed.- Returns:
- confidence of robustly estimated planar homography.
-
setPlanarHomographyConfidence
Sets confidence of robustly estimated planar homography. By default, this is 99%. This is only used when planar scenes are allowed.- Parameters:
planarHomographyConfidence
- confidence of robustly estimated planar homography.- Returns:
- this instance so that method can be easily chained.
-
getPlanarHomographyMaxIterations
public int getPlanarHomographyMaxIterations()Gets maximum number of iterations to make while robustly estimating planar homography. By default, this is 5000. This is only used when planar scenes are allowed.- Returns:
- maximum number of iterations to make while robustly estimating planar homography.
-
setPlanarHomographyMaxIterations
Sets maximum number of iterations to make while robustly estimating planar homography. By default, this is 5000. This is only used when planar scenes are allowed.- Parameters:
planarHomographyMaxIterations
- maximum number of iterations to make while robustly estimating planar homography.- Returns:
- this instance so that method can be easily chained.
-
getPlanarHomographyThreshold
public double getPlanarHomographyThreshold()Gets threshold to determine whether samples for robust projective 2D transformation estimation are inliers or not. This is only used when planar scenes are allowed.- Returns:
- threshold to robustly estimate projective 2D transformation.
-
setPlanarHomographyThreshold
Sets threshold to determine whether samples for robust projective 2D transformation estimation are inliers or not. This is only used when planar scenes are allowed.- Parameters:
planarHomographyThreshold
- threshold to robustly estimate projective 2D transformation.- Returns:
- this instance so that method can be easily chained.
-
getPlanarHomographyComputeAndKeepInliers
public boolean getPlanarHomographyComputeAndKeepInliers()Gets value indicating that inlier data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.- Returns:
- true if inlier data is kept, false otherwise.
-
setPlanarHomographyComputeAndKeepInliers
Specifies whether inlier data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.- Parameters:
planarHomographyComputeAndKeepInliers
- true if inlier data is kept, false otherwise.- Returns:
- this instance so that method can be easily chained.
-
getPlanarHomographyComputeAndKeepResiduals
public boolean getPlanarHomographyComputeAndKeepResiduals()Gets value indicating that residual data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.- Returns:
- true if residual data is kept, false otherwise.
-
setPlanarHomographyComputeAndKeepResiduals
public T setPlanarHomographyComputeAndKeepResiduals(boolean planarHomographyComputeAndKeepResiduals) Sets value indicating that residual data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.- Parameters:
planarHomographyComputeAndKeepResiduals
- true if residual data is kept, false otherwise.- Returns:
- this instance so that method can be easily chained.
-