Serialized Form

  • Package com.irurueta.ar

  • Package com.irurueta.ar.calibration

  • Package com.irurueta.ar.calibration.estimators

  • Package com.irurueta.ar.epipolar

  • Package com.irurueta.ar.epipolar.estimators

  • Package com.irurueta.ar.sfm

    • Class com.irurueta.ar.sfm.AbsoluteOrientationConstantVelocityModelSlamPairedViewsSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.AbsoluteOrientationConstantVelocityModelSlamSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.AbsoluteOrientationConstantVelocityModelSlamTwoViewsSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.AbsoluteOrientationSlamPairedViewsSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.AbsoluteOrientationSlamSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.AbsoluteOrientationSlamTwoViewsSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.BasePairedViewsSparseReconstructorConfiguration

      class BasePairedViewsSparseReconstructorConfiguration extends Object implements Serializable
      • Serialized Fields

        • allowGeneralScene
          boolean allowGeneralScene
          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.
        • allowPlanarScene
          boolean allowPlanarScene
          Indicates whether a planar scene (points laying in a 3D plane) is allowed. When true, an initial geometry estimation is attempted for planar points.
        • daqUseHomogeneousPointTriangulator
          boolean daqUseHomogeneousPointTriangulator
          Indicates whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used.
        • fundamentalMatrixComputeAndKeepInliers
          boolean fundamentalMatrixComputeAndKeepInliers
          Indicates whether inliers must be kept during robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • fundamentalMatrixComputeAndKeepResiduals
          boolean fundamentalMatrixComputeAndKeepResiduals
          Indicates whether residuals must be computed and kept during robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • fundamentalMatrixConfidence
          double fundamentalMatrixConfidence
          Confidence of robustly estimated fundamental matrix. This is only used when general scenes are allowed.
        • fundamentalMatrixMaxIterations
          int fundamentalMatrixMaxIterations
          Maximum number of iterations to robustly estimate fundamental matrix. This is only used when general scenes are allowed.
        • fundamentalMatrixThreshold
          double fundamentalMatrixThreshold
          Threshold to determine whether samples for robust fundamental matrix estimation are inliers or not. This is only used when general scenes are allowed.
        • keepFundamentalMatrixCovariance
          boolean keepFundamentalMatrixCovariance
          Indicates whether covariance of estimated fundamental matrix is kept after the estimation. This is only used when general scenes are allowed.
        • keepPlanarHomographyCovariance
          boolean keepPlanarHomographyCovariance
          Indicates whether planar homography covariance is kept after estimation. This is only used when planar scenes are allowed.
        • knownIntrinsicParameters
          boolean knownIntrinsicParameters
          Indicates 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.
        • nonRobustFundamentalMatrixEstimatorMethod
          FundamentalMatrixEstimatorMethod nonRobustFundamentalMatrixEstimatorMethod
          Method to use for non-robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • pairedCamerasAspectRatio
          double pairedCamerasAspectRatio
          Aspect ratio for paired cameras.
        • pairedCamerasCorrectorType
          CorrectorType 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.
        • pairedCamerasEstimatorMethod
          InitialCamerasEstimatorMethod pairedCamerasEstimatorMethod
          Method to use for paired cameras' estimation.
        • pairedCamerasMarkValidTriangulatedPoints
          boolean pairedCamerasMarkValidTriangulatedPoints
          Value indicating whether valid triangulated points are marked during paired cameras estimation using either Dual Image of Absolute Conic (DIAC) or essential matrix methods.
        • planarHomographyComputeAndKeepInliers
          boolean planarHomographyComputeAndKeepInliers
          Value indicating that inlier data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.
        • planarHomographyComputeAndKeepResiduals
          boolean planarHomographyComputeAndKeepResiduals
          Value indicating that residual data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.
        • planarHomographyConfidence
          double planarHomographyConfidence
          Confidence of robustly estimated planar homography. By default, this is 99%. This is only used when planar scenes are allowed.
        • planarHomographyMaxIterations
          int planarHomographyMaxIterations
          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.
        • planarHomographyThreshold
          double planarHomographyThreshold
          Threshold to determine whether samples for robust projective 2D transformation estimation are inliers or not.
        • principalPointX
          double principalPointX
          Horizontal principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.
        • principalPointY
          double principalPointY
          Vertical principal point value to use for paired cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.
        • refineFundamentalMatrix
          boolean refineFundamentalMatrix
          Indicates whether estimated fundamental matrix is refined among all found inliers. This is only used when general scenes are allowed.
        • refinePlanarHomography
          boolean refinePlanarHomography
          Indicates whether planar homography is refined using all found inliers or not. This is only used when planar scenes are allowed.
        • robustFundamentalMatrixEstimatorMethod
          com.irurueta.numerical.robust.RobustEstimatorMethod robustFundamentalMatrixEstimatorMethod
          Method to use for robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • robustPlanarHomographyEstimatorMethod
          com.irurueta.numerical.robust.RobustEstimatorMethod robustPlanarHomographyEstimatorMethod
          Robust method to use for planar homograpy estimation. This is only used when planar scenes are allowed.
    • Class com.irurueta.ar.sfm.BaseSlamPairedViewsSparseReconstructorConfiguration

      class BaseSlamPairedViewsSparseReconstructorConfiguration extends BasePairedViewsSparseReconstructorConfiguration<T extends BaseSlamPairedViewsSparseReconstructorConfiguration<C,T>> implements Serializable
      • Serialized Fields

        • calibrationData
          C extends BaseCalibrationData calibrationData
          Calibration data for accelerometer and gyroscope. This data is usually captured and estimated in an offline step previous to the actual scene reconstruction. Calibration data is usually obtained by keeping the system in a constant state of motion (e.g. acceleration and rotation). If this is null, no calibration data will be used.
        • cameraPositionCovariance
          com.irurueta.algebra.Matrix cameraPositionCovariance
          Matrix containing covariance of measured camera positions. This should usually be an "almost" diagonal matrix, where diagonal elements are close to the position estimation error variance. Values of this matrix are device specific and depends on factors such as resolution of images, pictures quality, gyroscope and accelerometer accuracy. This matrix must be a 3x3 symmetric positive definite matrix.
        • notifyAvailableSlamData
          boolean notifyAvailableSlamData
          Indicates whether new available SLAM state is notified each time that a whole set of IMU (Inertial Measurement Unit) data is received.
        • notifyEstimatedSlamCamera
          boolean notifyEstimatedSlamCamera
          Indicates whether any new camera that can be estimated by means of SLAM using IMU data, will be notified each time that accelerometer, gyroscope and orientation data is received.
    • Class com.irurueta.ar.sfm.BaseSlamSparseReconstructorConfiguration

      class BaseSlamSparseReconstructorConfiguration extends BaseSparseReconstructorConfiguration<T extends BaseSlamSparseReconstructorConfiguration<C,T>> implements Serializable
      • Serialized Fields

        • calibrationData
          C extends BaseCalibrationData calibrationData
          Calibration data for accelerometer and gyroscope. This data is usually captured and estimated in an offline step previous to the actual scene reconstruction. Calibration data is usually obtained by keeping the system in a constant state of motion (e.g. acceleration and rotation). If this is null, no calibration data will be used.
        • cameraPositionCovariance
          com.irurueta.algebra.Matrix cameraPositionCovariance
          Matrix containing covariance of measured camera positions. This should usually be an "almost" diagonal matrix, where diagonal elements are close to the position estimation error variance. Values of this matrix are device specific and depends on factors such as resolution of images, pictures quality, gyroscope and accelerometer accuracy. This matrix must be a 3x3 symmetric positive definite matrix.
        • notifyAvailableSlamData
          boolean notifyAvailableSlamData
          Indicates whether new available SLAM state is notified each time that a whole set of IMU (Inertial Measurement Unit) data is received.
        • notifyEstimatedSlamCamera
          boolean notifyEstimatedSlamCamera
          Indicates whether any new camera that can be estimated by means of SLAM using IMU data, will be notified each time that accelerometer, gyroscope and orientation data is received.
    • Class com.irurueta.ar.sfm.BaseSlamTwoViewsSparseReconstructorConfiguration

      class BaseSlamTwoViewsSparseReconstructorConfiguration extends BaseTwoViewsSparseReconstructorConfiguration<T extends BaseSlamTwoViewsSparseReconstructorConfiguration<C,T>> implements Serializable
      • Serialized Fields

        • calibrationData
          C extends BaseCalibrationData calibrationData
          Calibration data for accelerometer and gyroscope. This data is usually captured and estimated in an offline step previous to the actual scene reconstruction. Calibration data is usually obtained by keeping the system in a constant state of motion (e.g. acceleration and rotation). If this is null, no calibration data will be used.
        • notifyAvailableSlamData
          boolean notifyAvailableSlamData
          Indicates whether new available SLAM state is notified each time that a whole set of IMU (Inertial Measurement Unit) data is received.
        • notifyEstimatedSlamCamera
          boolean notifyEstimatedSlamCamera
          Indicates whether any new camera that can be estimated by means of SLAM using IMU data, will be notified each time that accelerometer, gyroscope and orientation data is received.
    • Class com.irurueta.ar.sfm.BaseSparseReconstructorConfiguration

      class BaseSparseReconstructorConfiguration extends Object implements Serializable
      • Serialized Fields

        • additionalCamerasAllowNullspaceDimension2
          boolean additionalCamerasAllowNullspaceDimension2
          Indicates whether dimension 2 null-space is allowed while estimating additional cameras using either EPnP or UPnP.
        • additionalCamerasAllowNullspaceDimension3
          boolean additionalCamerasAllowNullspaceDimension3
          Indicates whether dimension 3 null-space is allowed while estimating additional cameras using EPnP.
        • additionalCamerasAllowPlanarConfiguration
          boolean additionalCamerasAllowPlanarConfiguration
          Indicates whether planar configuration is allowed for additional cameras estimation using either EPnP or UPnP.
        • additionalCamerasAspectRatio
          double additionalCamerasAspectRatio
          Aspect ratio for additional cameras.
        • additionalCamerasComputeAndKeepInliers
          boolean additionalCamerasComputeAndKeepInliers
          Indicates whether inliers must be kept during additional camera estimation.
        • additionalCamerasComputeAndKeepResiduals
          boolean additionalCamerasComputeAndKeepResiduals
          Indicates whether residuals must be computed and kept during additional camera estimation.
        • additionalCamerasConfidence
          double additionalCamerasConfidence
          Confidence of estimated additional cameras.
        • additionalCamerasHorizontalPrincipalPoint
          double additionalCamerasHorizontalPrincipalPoint
          Horizontal coordinate of principal point for additional cameras when UPnP (Uncalibrated Perspective-n-Point) method is used for additional cameras estimation and neither Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) are estimated to find intrinsic parameters when adding new cameras.
        • additionalCamerasIntrinsics
          com.irurueta.geometry.PinholeCameraIntrinsicParameters additionalCamerasIntrinsics
          Intrinsic parameters to use for additional cameras estimation when neither Dual Image of Absolute Conic (DIAC) nor Dual Absolute Quadric (DAQ) are used for intrinsic parameters' estimation.
        • additionalCamerasMaxIterations
          int additionalCamerasMaxIterations
          Maximum allowed number of iterations for additional cameras estimation.
        • additionalCamerasPlanarThreshold
          double additionalCamerasPlanarThreshold
          Threshold to determine whether 3D matched points to estimate additional cameras are in a planar configuration.
        • additionalCamerasRobustEstimationMethod
          com.irurueta.numerical.robust.RobustEstimatorMethod additionalCamerasRobustEstimationMethod
          Robust method to estimate additional cameras.
        • additionalCamerasSkewness
          double additionalCamerasSkewness
          Skewness for additional cameras when UPnP (Uncalibrated Perspective-n-Point) method is used for additional cameras' estimation.
        • additionalCamerasSuggestAspectRatioEnabled
          boolean additionalCamerasSuggestAspectRatioEnabled
          Value indicating whether aspect ratio is suggested or not during additional cameras' estimation.
        • additionalCamerasSuggestedAspectRatioValue
          double additionalCamerasSuggestedAspectRatioValue
          Value of aspect ratio to be suggested when suggestion is enabled during additional cameras' estimation.
        • additionalCamerasSuggestedHorizontalFocalLengthValue
          double additionalCamerasSuggestedHorizontalFocalLengthValue
          Value of suggested horizontal focal length during additional cameras' estimation.
        • additionalCamerasSuggestedPrincipalPointValue
          com.irurueta.geometry.InhomogeneousPoint2D additionalCamerasSuggestedPrincipalPointValue
          Value of principal point to be suggested when suggestion is enabled during additional cameras' estimation.
        • additionalCamerasSuggestedSkewnessValue
          double additionalCamerasSuggestedSkewnessValue
          Value of skewness to be suggested when suggestion is enabled during additional cameras' estimation.
        • additionalCamerasSuggestedVerticalFocalLengthValue
          double additionalCamerasSuggestedVerticalFocalLengthValue
          Value of suggested vertical focal length during additional cameras' estimation.
        • additionalCamerasSuggestHorizontalFocalLengthEnabled
          boolean additionalCamerasSuggestHorizontalFocalLengthEnabled
          Value indicating whether horizontal focal length value is suggested or not during additional cameras' estimation.
        • additionalCamerasSuggestPrincipalPointEnabled
          boolean additionalCamerasSuggestPrincipalPointEnabled
          Value indicating whether principal point is suggested or not during additional cameras' estimation.
        • additionalCamerasSuggestSkewnessValueEnabled
          boolean additionalCamerasSuggestSkewnessValueEnabled
          Value indicating whether skewness is not suggested during additional cameras' estimation.
        • additionalCamerasSuggestVerticalFocalLengthEnabled
          boolean additionalCamerasSuggestVerticalFocalLengthEnabled
          Value indicating whether vertical focal length value is suggested or not during additional cameras' estimation.
        • additionalCamerasThreshold
          double additionalCamerasThreshold
          Threshold to determine whether samples for robust pinhole camera estimation are inliers or not.
        • additionalCamerasUseFastRefinement
          boolean additionalCamerasUseFastRefinement
          Value indicating whether fast refinement is used for additional cameras' estimation.
        • additionalCamerasVerticalPrincipalPoint
          double additionalCamerasVerticalPrincipalPoint
          Vertical coordinate of principal point for additional cameras when UPnP (Uncalibrated Perspective-n-Point) method is used for additional cameras estimation and neither Dual Image of Absolute Conic (DIAC) nor Dual Absolute Quadric (DAQ) are estimated to find intrinsic parameters when adding new cameras.
        • allowGeneralScene
          boolean allowGeneralScene
          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.
        • allowPlanarScene
          boolean allowPlanarScene
          Indicates whether a planar scene (points laying in a 3D plane) is allowed. When true, an initial geometry estimation is attempted for planar points.
        • daqUseHomogeneousPointTriangulator
          boolean daqUseHomogeneousPointTriangulator
          Indicates whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used.
        • fundamentalMatrixComputeAndKeepInliers
          boolean fundamentalMatrixComputeAndKeepInliers
          Indicates whether inliers must be kept during robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • fundamentalMatrixComputeAndKeepResiduals
          boolean fundamentalMatrixComputeAndKeepResiduals
          Indicates whether residuals must be computed and kept during robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • fundamentalMatrixConfidence
          double fundamentalMatrixConfidence
          Confidence of robustly estimated fundamental matrix. This is only used when general scenes are allowed.
        • fundamentalMatrixMaxIterations
          int fundamentalMatrixMaxIterations
          Maximum number of iterations to robustly estimate fundamental matrix. This is only used when general scenes are allowed.
        • fundamentalMatrixThreshold
          double fundamentalMatrixThreshold
          Threshold to determine whether samples for robust fundamental matrix estimation are inliers or not. This is only used when general scenes are allowed.
        • initialCamerasAspectRatio
          double initialCamerasAspectRatio
          Aspect ratio for initial cameras.
        • initialCamerasCorrectorType
          CorrectorType initialCamerasCorrectorType
          Corrector type to use for point triangulation when initial cameras are being estimated using either Dual Image of Absolute Conic (DIAC) or essential matrix methods or null if no corrector is used.
        • initialCamerasEstimatorMethod
          InitialCamerasEstimatorMethod initialCamerasEstimatorMethod
          Method to use for initial cameras' estimation.
        • initialCamerasMarkValidTriangulatedPoints
          boolean initialCamerasMarkValidTriangulatedPoints
          Value indicating whether valid triangulated points are marked during initial cameras estimation using either Dual Image of Absolute Conic (DIAC) or essential matrix methods.
        • initialIntrinsic1
          com.irurueta.geometry.PinholeCameraIntrinsicParameters initialIntrinsic1
          Intrinsic parameters of first camera estimated using the essential matrix method.
        • initialIntrinsic2
          com.irurueta.geometry.PinholeCameraIntrinsicParameters initialIntrinsic2
          Intrinsic parameters of second camera estimated using the essential matrix method.
        • keepCovarianceAdditionalCameras
          boolean keepCovarianceAdditionalCameras
          Indicates whether covariance is kept after refining result of additional cameras' estimation.
        • keepFundamentalMatrixCovariance
          boolean keepFundamentalMatrixCovariance
          Indicates whether covariance of estimated fundamental matrix is kept after the estimation. This is only used when general scenes are allowed.
        • keepPlanarHomographyCovariance
          boolean keepPlanarHomographyCovariance
          Indicates whether planar homography covariance is kept after estimation. This is only used when planar scenes are allowed.
        • mNonRobustFundamentalMatrixEstimatorMethod
          FundamentalMatrixEstimatorMethod mNonRobustFundamentalMatrixEstimatorMethod
          Method to use for non-robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • mRobustFundamentalMatrixEstimatorMethod
          com.irurueta.numerical.robust.RobustEstimatorMethod mRobustFundamentalMatrixEstimatorMethod
          Method to use for robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • planarHomographyComputeAndKeepInliers
          boolean planarHomographyComputeAndKeepInliers
          Value indicating that inlier data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.
        • planarHomographyComputeAndKeepResiduals
          boolean planarHomographyComputeAndKeepResiduals
          Value indicating that residual data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.
        • planarHomographyConfidence
          double planarHomographyConfidence
          Confidence of robustly estimated planar homography. By default, this is 99%. This is only used when planar scenes are allowed.
        • planarHomographyMaxIterations
          int planarHomographyMaxIterations
          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.
        • planarHomographyThreshold
          double planarHomographyThreshold
          Threshold to determine whether samples for robust projective 2D transformation estimation are inliers or not.
        • pointTriangulatorConfidence
          double pointTriangulatorConfidence
          Confidence of robustly triangulated points. By default, this is 99%.
        • pointTriangulatorMaxIterations
          int pointTriangulatorMaxIterations
          Maximum number of iterations to make while robustly estimating triangulated points. By default, this is 5000 iterations.
        • pointTriangulatorThreshold
          double pointTriangulatorThreshold
          Threshold to determine whether samples for robust point triangulator are inliers or not.
        • principalPointX
          double principalPointX
          Horizontal principal point value to use for initial cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.
        • principalPointY
          double principalPointY
          Vertical principal point value to use for initial cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAC) methods.
        • refineAdditionalCameras
          boolean refineAdditionalCameras
          Indicates whether additional cameras are refined to minimize overall projection error among all found inliers.
        • refineFundamentalMatrix
          boolean refineFundamentalMatrix
          Indicates whether estimated fundamental matrix is refined among all found inliers. This is only used when general scenes are allowed.
        • refinePlanarHomography
          boolean refinePlanarHomography
          Indicates whether planar homography is refined using all found inliers or not. This is only used when planar scenes are allowed.
        • robustPlanarHomographyEstimatorMethod
          com.irurueta.numerical.robust.RobustEstimatorMethod robustPlanarHomographyEstimatorMethod
          Robust method to use for planar homography estimation. This is only used when planar scenes are allowed.
        • robustPointTriangulatorMethod
          com.irurueta.numerical.robust.RobustEstimatorMethod robustPointTriangulatorMethod
          Robust method for point triangulation when points are matched in more than two views.
        • useDAQForAdditionalCamerasIntrinsics
          boolean useDAQForAdditionalCamerasIntrinsics
          Indicates that additional cameras intrinsics are estimated using the Dual Absolute Quadric (DAQ).
        • useDIACForAdditionalCamerasIntrinsics
          boolean useDIACForAdditionalCamerasIntrinsics
          Indicates that additional cameras intrinsics are estimated using the Dual Image of Absolute Conic (DIAC).
        • useEPnPForAdditionalCamerasEstimation
          boolean useEPnPForAdditionalCamerasEstimation
          Indicates whether EPnP (Efficient Perspective-n-Point) method is used for additional cameras' estimation. Either EPnP or UPnP must be used for additional cameras' estimation.
        • useHomogeneousPointTriangulator
          boolean useHomogeneousPointTriangulator
          Indicates whether homogeneous point triangulator must be used or not to estimate 3D points when only two matches are available.
        • useUPnPForAdditionalCamerasEstimation
          boolean useUPnPForAdditionalCamerasEstimation
          Indicates whether UPnP (Uncalibrated Perspective-n-Point) method is used for additional cameras' estimation. Either EPnP or UPnP must be used for additional cameras' estimation.
    • Class com.irurueta.ar.sfm.BaseTwoViewsSparseReconstructorConfiguration

      class BaseTwoViewsSparseReconstructorConfiguration extends Object implements Serializable
      • Serialized Fields

        • allowGeneralScene
          boolean allowGeneralScene
          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.
        • allowPlanarScene
          boolean allowPlanarScene
          Indicates whether a planar scene (points laying in a 3D plane) is allowed. When true, an initial geometry estimation is attempted for planar points.
        • daqUseHomogeneousPointTriangulator
          boolean daqUseHomogeneousPointTriangulator
          Indicates whether an homogeneous point triangulator is used for point triangulation when Dual Absolute Quadric (DAQ) camera initialization is used.
        • fundamentalMatrixComputeAndKeepInliers
          boolean fundamentalMatrixComputeAndKeepInliers
          Indicates whether inliers must be kept during robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • fundamentalMatrixComputeAndKeepResiduals
          boolean fundamentalMatrixComputeAndKeepResiduals
          Indicates whether residuals must be computed and kept during robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • fundamentalMatrixConfidence
          double fundamentalMatrixConfidence
          Confidence of robustly estimated fundamental matrix. This is only used when general scenes are allowed.
        • fundamentalMatrixMaxIterations
          int fundamentalMatrixMaxIterations
          Maximum number of iterations to robustly estimate fundamental matrix. This is only used when general scenes are allowed.
        • fundamentalMatrixThreshold
          double fundamentalMatrixThreshold
          Threshold to determine whether samples for robust fundamental matrix estimation are inliers or not. This is only used when general scenes are allowed.
        • initialCamerasAspectRatio
          double initialCamerasAspectRatio
          Aspect ratio for initial cameras.
        • initialCamerasCorrectorType
          CorrectorType initialCamerasCorrectorType
          Corrector type to use for point triangulation when initial cameras are being estimated using either Dual Image of Absolute Conic (DIAC) or essential matrix methods or null if no corrector is used.
        • initialCamerasEstimatorMethod
          InitialCamerasEstimatorMethod initialCamerasEstimatorMethod
          Method to use for initial estimation of cameras.
        • initialCamerasMarkValidTriangulatedPoints
          boolean initialCamerasMarkValidTriangulatedPoints
          Value indicating whether valid triangulated points are marked during initial cameras estimation using either Dual Image of Absolute Conic (DIAC) or essential matrix methods.
        • initialIntrinsic1
          com.irurueta.geometry.PinholeCameraIntrinsicParameters initialIntrinsic1
          Intrinsic parameters of first camera estimated using the essential matrix method.
        • initialIntrinsic2
          com.irurueta.geometry.PinholeCameraIntrinsicParameters initialIntrinsic2
          Intrinsic parameters of second camera estimated using the essential matrix method.
        • keepFundamentalMatrixCovariance
          boolean keepFundamentalMatrixCovariance
          Indicates whether covariance of estimated fundamental matrix is kept after the estimation. This is only used when general scenes are allowed.
        • keepPlanarHomographyCovariance
          boolean keepPlanarHomographyCovariance
          Indicates whether planar homography covariance is kept after estimation. This is only used when planar scenes are allowed.
        • mNonRobustFundamentalMatrixEstimatorMethod
          FundamentalMatrixEstimatorMethod mNonRobustFundamentalMatrixEstimatorMethod
          Method to use for non-robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • mRobustFundamentalMatrixEstimatorMethod
          com.irurueta.numerical.robust.RobustEstimatorMethod mRobustFundamentalMatrixEstimatorMethod
          Method to use for robust fundamental matrix estimation. This is only used when general scenes are allowed.
        • planarHomographyComputeAndKeepInliers
          boolean planarHomographyComputeAndKeepInliers
          Value indicating that inlier data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.
        • planarHomographyComputeAndKeepResiduals
          boolean planarHomographyComputeAndKeepResiduals
          Value indicating that residual data is kept after robust planar homography estimation. This is only used when planar scenes are allowed.
        • planarHomographyConfidence
          double planarHomographyConfidence
          Confidence of robustly estimated planar homography. By default, this is 99%. This is only used when planar scenes are allowed.
        • planarHomographyMaxIterations
          int planarHomographyMaxIterations
          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.
        • planarHomographyThreshold
          double planarHomographyThreshold
          Threshold to determine whether samples for robust projective 2D transformation estimation are inliers or not.
        • principalPointX
          double principalPointX
          Horizontal principal point value to use for initial cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.
        • principalPointY
          double principalPointY
          Vertical principal point value to use for initial cameras estimation using Dual Image of Absolute Conic (DIAC) or Dual Absolute Quadric (DAQ) methods.
        • refineFundamentalMatrix
          boolean refineFundamentalMatrix
          Indicates whether estimated fundamental matrix is refined among all found inliers. This is only used when general scenes are allowed.
        • refinePlanarHomography
          boolean refinePlanarHomography
          Indicates whether planar homography is refined using all found inliers or not. This is only used when planar scenes are allowed.
        • robustPlanarHomographyEstimatorMethod
          com.irurueta.numerical.robust.RobustEstimatorMethod robustPlanarHomographyEstimatorMethod
          Robust method to use for planar homography estimation. This is only used when planar scenes are allowed.
    • Exception com.irurueta.ar.sfm.CancelledReconstructionException

      class CancelledReconstructionException extends ReconstructionException implements Serializable
    • Class com.irurueta.ar.sfm.ConstantVelocityModelSlamPairedViewsSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.ConstantVelocityModelSlamSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.ConstantVelocityModelSlamTwoViewsSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.EstimatedCamera

      class EstimatedCamera extends Object implements Serializable
      • Serialized Fields

        • camera
          com.irurueta.geometry.PinholeCamera camera
          Estimated camera.
        • covariance
          com.irurueta.algebra.Matrix covariance
          Covariance of estimated camera. This can be computed during camera estimation.
        • id
          String id
          ID to identify this instance. This is useful in case that this data is stored in some sort of database and must be set externally.
        • qualityScore
          double qualityScore
          Quality score of estimated camera. The larger the value, the better the quality. This is used for robust estimators such as PROSAC or PROMedS. This value is typically obtained during camera estimation.
        • viewId
          int viewId
          ID of view for which camera has been estimated.
    • Class com.irurueta.ar.sfm.EstimatedFundamentalMatrix

      class EstimatedFundamentalMatrix extends Object implements Serializable
      • Serialized Fields

        • covariance
          com.irurueta.algebra.Matrix covariance
          Covariance of estimated fundamental matrix. This can be computed during estimation.
        • fundamentalMatrix
          FundamentalMatrix fundamentalMatrix
          Estimated fundamental matrix.
        • id
          String id
          ID to identify this instance. This is useful in case that this data is stored in some sort of database and must be set externally.
        • inliers
          BitSet inliers
          Indicates which samples used for fundamental matrix estimation where considered inliers.
        • leftSamples
          List<Sample2D> leftSamples
          Left samples used for fundamental matrix estimation.
        • qualityScore
          double qualityScore
          Quality score of estimated fundamental matrix. The larger the value, the better the quality.
        • rightSamples
          List<Sample2D> rightSamples
          Right samples used for fundamental matrix estimation.
        • viewId1
          int viewId1
          ID of first view related by fundamental matrix.
        • viewId2
          int viewId2
          ID of second view related by fundamental matrix.
    • Exception com.irurueta.ar.sfm.FailedReconstructionException

      class FailedReconstructionException extends ReconstructionException implements Serializable
    • Exception com.irurueta.ar.sfm.InitialCamerasEstimationFailedException

      class InitialCamerasEstimationFailedException extends StructureFromMotionException implements Serializable
    • Class com.irurueta.ar.sfm.KnownBaselineSparseReconstructorConfiguration

      class KnownBaselineSparseReconstructorConfiguration extends BaseSparseReconstructorConfiguration<KnownBaselineSparseReconstructorConfiguration> implements Serializable
      • Serialized Fields

        • baseline
          double baseline
          Camera baseline (expressed in a unit of distance such as meters). Contains the real separation between camera centers so that the real scale of cameras and reconstructed points can be retrieved.
    • Class com.irurueta.ar.sfm.KnownBaselineTwoViewsSparseReconstructorConfiguration

      class KnownBaselineTwoViewsSparseReconstructorConfiguration extends BaseTwoViewsSparseReconstructorConfiguration<KnownBaselineTwoViewsSparseReconstructorConfiguration> implements Serializable
      • Serialized Fields

        • baseline
          double baseline
          Camera baseline (expressed in a unit of distance such as meters). Contains the real separation between camera centers so that the real scale of cameras and reconstructed points can be retrieved.
    • Class com.irurueta.ar.sfm.MatchedSamples

      class MatchedSamples extends Object implements Serializable
      • Serialized Fields

        • cameras
          EstimatedCamera[] cameras
          Cameras associated to the views of each of the matched points.
        • inliers
          BitSet inliers
          Indicates whether match between a pair of views has been considered an inlier or not. Position 0 of this bitset corresponds to viewIds in positions 0 and 1, position 1 of bitset corresponds to viewIds in positions 1 and 2, and so on.
        • qualityScore
          double qualityScore
          Quality score of a match.
        • reconstructedPoint
          ReconstructedPoint3D reconstructedPoint
          3D reconstructed point. Initially, might not be available
        • samples
          Sample2D[] samples
          2D matched samples on different views. Each of these points correspond to projections of the same 3D point into different views.
        • viewIds
          int[] viewIds
          ID's of views where matched points belong to.
    • Class com.irurueta.ar.sfm.PairedViewsSparseReconstructorConfiguration

      class PairedViewsSparseReconstructorConfiguration extends BasePairedViewsSparseReconstructorConfiguration<PairedViewsSparseReconstructorConfiguration> implements Serializable
    • Exception com.irurueta.ar.sfm.Point3DTriangulationException

      class Point3DTriangulationException extends StructureFromMotionException implements Serializable
    • Class com.irurueta.ar.sfm.PointColorData

      class PointColorData extends Object implements Serializable
      • Serialized Fields

        • id
          String id
          ID to identify this instance. This is useful in case that this data is stored in some sort of database and must be set externally.
        • qualityScore
          double qualityScore
          Quality score of color data. The larger the value the higher the quality of color data.
    • Class com.irurueta.ar.sfm.ReconstructedPoint3D

      class ReconstructedPoint3D extends Object implements Serializable
      • Serialized Fields

        • colorData
          PointColorData colorData
          Color data of reconstructed point (i.e. RGB or YUV values), if available.
        • covariance
          com.irurueta.algebra.Matrix covariance
          Covariance of reconstructed point. This can be computed during point triangularization.
        • id
          String id
          ID to identify this instance. This is useful in case that this data is stored in some sort of database and must be set externally.
        • inlier
          boolean inlier
          Indicates whether reconstructed point is an inlier or not.
        • point
          com.irurueta.geometry.Point3D point
          Coordinates of reconstructed 3D point.
        • qualityScore
          double qualityScore
          Quality score of sampled point. The larger the value, the better the quality. This is used for robust estimators such as PROSAC or PROMedS. This value is typically obtained from algorithms determining point correspondences.
    • Exception com.irurueta.ar.sfm.ReconstructionException

      class ReconstructionException extends StructureFromMotionException implements Serializable
    • Class com.irurueta.ar.sfm.Sample2D

      class Sample2D extends Object implements Serializable
      • Serialized Fields

        • colorData
          PointColorData colorData
          Color data of sampled point (i.e. RGB or YUV values), if available.
        • covariance
          com.irurueta.algebra.Matrix covariance
          Covariance of sampled points. This is obtained from the algorithms determining points of interest or point correspondences. If covariance cannot be determined, a typical value might be to consider 1 pixel accuracy. This might be null if covariance cannot be determined.
        • id
          String id
          ID to identify this instance. This is useful in case that this data is stored in some sort of database and must be set externally.
        • point
          com.irurueta.geometry.Point2D point
          2D sampled point coordinates.
        • qualityScore
          double qualityScore
          Quality score of sampled point. The larger the value, the better the quality. This is used for robust estimators such as PROSAC or PROMedS. This value is typically obtained from algorithms determining quality of points of interest.
        • reconstructedPoint
          ReconstructedPoint3D reconstructedPoint
          3D reconstructed point.
        • viewId
          int viewId
          ID of view where 2D point has been sampled.
    • Class com.irurueta.ar.sfm.SlamPairedViewsSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.SlamSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.SlamTwoViewsSparseReconstructorConfiguration

    • Class com.irurueta.ar.sfm.SparseReconstructorConfiguration

      class SparseReconstructorConfiguration extends BaseSparseReconstructorConfiguration<SparseReconstructorConfiguration> implements Serializable
    • Exception com.irurueta.ar.sfm.StructureFromMotionException

      class StructureFromMotionException extends ARException implements Serializable
    • Class com.irurueta.ar.sfm.TwoViewsSparseReconstructorConfiguration

      class TwoViewsSparseReconstructorConfiguration extends BaseTwoViewsSparseReconstructorConfiguration<TwoViewsSparseReconstructorConfiguration> implements Serializable
  • Package com.irurueta.ar.slam

    • Class com.irurueta.ar.slam.AbsoluteOrientationBaseSlamEstimator

      class AbsoluteOrientationBaseSlamEstimator extends BaseSlamEstimator<D extends BaseCalibrationData> implements Serializable
      • Serialized Fields

        • accumulatedOrientation
          com.irurueta.geometry.Quaternion accumulatedOrientation
          Average orientation accumulated since last full sample.
        • accumulatedOrientationSamples
          int accumulatedOrientationSamples
          Number of orientation samples accumulated since last full sample.
        • orientationTimestampNanos
          long orientationTimestampNanos
          Timestamp expressed in nanoseconds since the epoch time of the last sample containing absolute orientation.
        • tempQ
          com.irurueta.geometry.Quaternion tempQ
          Temporary quaternion. For memory reuse.
    • Class com.irurueta.ar.slam.AbsoluteOrientationConstantVelocityModelSlamCalibrationData

      class AbsoluteOrientationConstantVelocityModelSlamCalibrationData extends BaseCalibrationData implements Serializable
    • Class com.irurueta.ar.slam.AbsoluteOrientationConstantVelocityModelSlamEstimator

      class AbsoluteOrientationConstantVelocityModelSlamEstimator extends AbsoluteOrientationBaseSlamEstimator<AbsoluteOrientationConstantVelocityModelSlamCalibrationData> implements Serializable
      • Serialized Fields

        • control
          com.irurueta.algebra.Matrix control
          Column matrix containing mU values to be passed as control values during Kalman filter prediction.
        • deltaOrientation
          com.irurueta.geometry.Quaternion deltaOrientation
          Variation of orientation respect to last sample.
        • jacobianPredictionU
          com.irurueta.algebra.Matrix jacobianPredictionU
          Jacobian respect u control during state prediction (16x13).
        • jacobianPredictionX
          com.irurueta.algebra.Matrix jacobianPredictionX
          Jacobian respect x state during prediction (16x16).
        • kalmanFilter
          com.irurueta.numerical.signal.processing.KalmanFilter kalmanFilter
          Kalman's filter to remove effects of noise.
        • lastAngularSpeedX
          double lastAngularSpeedX
          Last sample of angular speed along x-axis.
        • lastAngularSpeedY
          double lastAngularSpeedY
          Last sample of angular speed along y-axis.
        • lastAngularSpeedZ
          double lastAngularSpeedZ
          Last sample of angular speed along z-axis.
        • lastOrientation
          com.irurueta.geometry.Quaternion lastOrientation
          Last sample of absolute orientation.
        • lastTimestampNanos
          long lastTimestampNanos
          Last timestamp of a full sample expressed in nanoseconds since the epoch time.
        • measurement
          com.irurueta.algebra.Matrix measurement
          Measurement data for the Kalman filter in a column matrix. Contains data in the following order: [accelerationX] [accelerationY] [accelerationZ] [angularSpeedX] [angularSpeedY] [angularSpeedZ]
        • measurementMatrix
          com.irurueta.algebra.Matrix measurementMatrix
          Matrix of size 3x13 relating system status with obtained measures. [1 0 0 0 0 0 0 0 0 0 0 0 0] [0 1 0 0 0 0 0 0 0 0 0 0 0] [0 0 1 0 0 0 0 0 0 0 0 0 0]
        • predictionAvailable
          boolean predictionAvailable
          Indicates whether a prediction has been made to initialize the internal Kalman filter. Corrections can only be requested to Kalman filter once a prediction has been made. Attempts to request corrections before having a prediction will be ignored.
        • stateOrientation
          com.irurueta.geometry.Quaternion stateOrientation
          Current state orientation.
        • u
          double[] u
          Control signals containing the following values: quaternion-change-a, quaternion-change-b, quaternion-change-c, quaternion-change-d, linear-velocity-change-x, linear-velocity-change-y, linear-velocity-change-z, angular-velocity-change-x, angular-velocity-change-y, angular-velocity-change-z.
        • x
          double[] x
          Contains device status containing the following values: position-x, position-y, position-z, quaternion-a, quaternion-b, quaternion-c, quaternion-d, linear-velocity-x, linear-velocity-y, linear-velocity-z, angular-velocity-x, angular-velocity-y, angular-velocity-z.
    • Class com.irurueta.ar.slam.AbsoluteOrientationSlamCalibrationData

      class AbsoluteOrientationSlamCalibrationData extends BaseCalibrationData implements Serializable
    • Class com.irurueta.ar.slam.AbsoluteOrientationSlamEstimator

      class AbsoluteOrientationSlamEstimator extends AbsoluteOrientationBaseSlamEstimator<AbsoluteOrientationSlamCalibrationData> implements Serializable
      • Serialized Fields

        • control
          com.irurueta.algebra.Matrix control
          Column matrix containing mU values to be passed as control values during Kalman filter prediction.
        • deltaOrientation
          com.irurueta.geometry.Quaternion deltaOrientation
          Variation of orientation respect to last sample.
        • jacobianPredictionU
          com.irurueta.algebra.Matrix jacobianPredictionU
          Jacobian respect u control during state prediction (16x13).
        • jacobianPredictionX
          com.irurueta.algebra.Matrix jacobianPredictionX
          Jacobian respect x state during prediction (16x16).
        • kalmanFilter
          com.irurueta.numerical.signal.processing.KalmanFilter kalmanFilter
          Kalman's filter to remove effects of noise.
        • lastAccelerationX
          double lastAccelerationX
          Last sample of linear acceleration along x-axis.
        • lastAccelerationY
          double lastAccelerationY
          Last sample of linear acceleration along y-axis.
        • lastAccelerationZ
          double lastAccelerationZ
          Last sample of linear acceleration along z-axis.
        • lastAngularSpeedX
          double lastAngularSpeedX
          Last sample of angular speed along x-axis.
        • lastAngularSpeedY
          double lastAngularSpeedY
          Last sample of angular speed along y-axis.
        • lastAngularSpeedZ
          double lastAngularSpeedZ
          Last sample of angular speed along z-axis.
        • lastOrientation
          com.irurueta.geometry.Quaternion lastOrientation
          Last sample of absolute orientation.
        • lastTimestampNanos
          long lastTimestampNanos
          Last timestamp of a full sample expressed in nanoseconds since the epoch time.
        • measurement
          com.irurueta.algebra.Matrix measurement
          Measurement data for the Kalman filter in a column matrix. Contains data in the following order: [accelerationX] [accelerationY] [accelerationZ] [angularSpeedX] [angularSpeedY] [angularSpeedZ]
        • measurementMatrix
          com.irurueta.algebra.Matrix measurementMatrix
          Matrix of size 3x16 relating system status with obtained measures. [1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] [0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0] [0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0]
        • predictionAvailable
          boolean predictionAvailable
          Indicates whether a prediction has been made to initialize the internal Kalman filter. Corrections can only be requested to Kalman filter once a prediction has been made. Attempts to request corrections before having a prediction will be ignored.
        • stateOrientation
          com.irurueta.geometry.Quaternion stateOrientation
          Current state orientation.
        • u
          double[] u
          Control signals containing the following values: quaternion-change-a, quaternion-change-b, quaternion-change-c, quaternion-change-d, linear-velocity-change-x, linear-velocity-change-y, linear-velocity-change-z, linear-acceleration-change-x, linear-acceleration-change-y, linear-acceleration-change-z, angular-velocity-change-x, angular-velocity-change-y, angular-velocity-change-z.
        • x
          double[] x
          Contains device status containing the following values: position-x, position-y, position-z, quaternion-a, quaternion-b, quaternion-c, quaternion-d, linear-velocity-x, linear-velocity-y, linear-velocity-z, linear-acceleration-x, linear-acceleration-y, linear-acceleration-z, angular-velocity-x, angular-velocity-y, angular-velocity-z.
    • Class com.irurueta.ar.slam.BaseCalibrationData

      class BaseCalibrationData extends Object implements Serializable
      • Serialized Fields

        • controlCovariance
          com.irurueta.algebra.Matrix controlCovariance
          Control signal covariance to take into account for estimation of process noise during Kalman prediction stage.
        • controlLength
          int controlLength
          Length of control signal.
        • controlMean
          double[] controlMean
          Control signal mean to correct biases in control signal.
        • stateLength
          int stateLength
          Length of state in SLAM estimator.
    • Class com.irurueta.ar.slam.BaseSlamEstimator

      class BaseSlamEstimator extends Object implements Serializable
      • Serialized Fields

        • accelerometerTimestampNanos
          long accelerometerTimestampNanos
          Timestamp expressed in nanoseconds since the epoch time of the last accelerometer sample.
        • accumulatedAccelerationSampleX
          double accumulatedAccelerationSampleX
          Average of acceleration along x-axis accumulated since last full sample. Expressed in meters per squared second (m/s^2).
        • accumulatedAccelerationSampleY
          double accumulatedAccelerationSampleY
          Average of acceleration along y-axis accumulated since last full sample. Expressed in meters per squared second (m/s^2).
        • accumulatedAccelerationSampleZ
          double accumulatedAccelerationSampleZ
          Average of acceleration along z-axis accumulated since last full sample. Expressed in meters per squared second (m/s^2).
        • accumulatedAccelerometerSamples
          int accumulatedAccelerometerSamples
          Number of accelerometer samples accumulated since last full sample.
        • accumulatedAngularSpeedSampleX
          double accumulatedAngularSpeedSampleX
          Average of angular speed along x-axis accumulated since last full sample. Expressed in radians per second (rad/s).
        • accumulatedAngularSpeedSampleY
          double accumulatedAngularSpeedSampleY
          Average of angular speed along y-axis accumulated since last full sample. Expressed in radians per second (rad/s).
        • accumulatedAngularSpeedSampleZ
          double accumulatedAngularSpeedSampleZ
          Average of angular speed along z-axis accumulated since last full sample. Expressed in radians per second (red/s).
        • accumulatedGyroscopeSamples
          int accumulatedGyroscopeSamples
          Number of gyroscope samples accumulated since last full sample.
        • accumulationEnabled
          boolean accumulationEnabled
          Indicates whether accumulation of samples is enabled or not.
        • calibrationData
          D extends BaseCalibrationData calibrationData
          Calibration data. When provided, its mean and covariance are used to correct control samples and adjust process covariance matrix during Kalman filtering in prediction stage.
        • error
          boolean error
          Indicates whether an error occurred during the estimation. If an error occurs the estimator should be restarted since state values might become unreliable.
        • gyroscopeTimestampNanos
          long gyroscopeTimestampNanos
          Timestamp expressed in nanoseconds since the epoch time of the last gyroscope sample.
        • stateAccelerationX
          double stateAccelerationX
          Current linear acceleration of the device along x-axis expressed in meters per squared second (m/s^2).
        • stateAccelerationY
          double stateAccelerationY
          Current linear acceleration of the device along y-axis expressed in meters per squared second (m/s^2).
        • stateAccelerationZ
          double stateAccelerationZ
          Current linear acceleration of the device along z-axis expressed in meters per squared second (m/s^2).
        • stateAngularSpeedX
          double stateAngularSpeedX
          Angular speed of rotation of the device along x-axis expressed in radians per second (rad/s).
        • stateAngularSpeedY
          double stateAngularSpeedY
          Angular speed of rotation of the device along y-axis expressed in radians per second (rad/s).
        • stateAngularSpeedZ
          double stateAngularSpeedZ
          Angular speed of rotation of the device along z-axis expressed in radians per second (rad/s).
        • statePositionX
          double statePositionX
          Current position of the device along x-axis expressed in meters (m).
        • statePositionY
          double statePositionY
          Current position of the device along y-axis expressed in meters (m).
        • statePositionZ
          double statePositionZ
          Current position of the device along z-axis expressed in meters (m).
        • stateQuaternionA
          double stateQuaternionA
          A value of quaternion containing current device orientation.
        • stateQuaternionB
          double stateQuaternionB
          B value of quaternion containing current device orientation.
        • stateQuaternionC
          double stateQuaternionC
          C value of quaternion containing current device orientation.
        • stateQuaternionD
          double stateQuaternionD
          D value of quaternion containing current device orientation.
        • stateVelocityX
          double stateVelocityX
          Current linear velocity of the device along x-axis expressed in meters per second (m/s).
        • stateVelocityY
          double stateVelocityY
          Current linear velocity of the device along y-axis expressed in meters per second (m/s).
        • stateVelocityZ
          double stateVelocityZ
          Current linear velocity of the device along z-axis expressed in meters per second (m/s).
    • Class com.irurueta.ar.slam.ConstantVelocityModelSlamCalibrationData

      class ConstantVelocityModelSlamCalibrationData extends BaseCalibrationData implements Serializable
    • Class com.irurueta.ar.slam.ConstantVelocityModelSlamEstimator

      class ConstantVelocityModelSlamEstimator extends BaseSlamEstimator<ConstantVelocityModelSlamCalibrationData> implements Serializable
      • Serialized Fields

        • control
          com.irurueta.algebra.Matrix control
          Column matrix containing mU values to be passed as control values during Kalman filter prediction.
        • jacobianPredictionU
          com.irurueta.algebra.Matrix jacobianPredictionU
          Jacobian respect u control during state prediction (13x6).
        • jacobianPredictionX
          com.irurueta.algebra.Matrix jacobianPredictionX
          Jacobian respect x state during prediction (13x13).
        • kalmanFilter
          com.irurueta.numerical.signal.processing.KalmanFilter kalmanFilter
          Kalman's filter to remove effects of noise.
        • lastAngularSpeedX
          double lastAngularSpeedX
          Last sample of angular speed along x-axis.
        • lastAngularSpeedY
          double lastAngularSpeedY
          Last sample of angular speed along y-axis.
        • lastAngularSpeedZ
          double lastAngularSpeedZ
          Last sample of angular speed along z-axis.
        • lastTimestampNanos
          long lastTimestampNanos
          Last timestamp of a full sample expressed in nanoseconds since the epoch time.
        • measurement
          com.irurueta.algebra.Matrix measurement
          Measurement data for the Kalman filter in a column matrix. Contains data in the following order: [accelerationX] [accelerationY] [accelerationZ] [angularSpeedX] [angularSpeedY] [angularSpeedZ]
        • measurementMatrix
          com.irurueta.algebra.Matrix measurementMatrix
          Matrix of size 3x13 relating system status with obtained measures. [1 0 0 0 0 0 0 0 0 0 0 0 0] [0 1 0 0 0 0 0 0 0 0 0 0 0] [0 0 1 0 0 0 0 0 0 0 0 0 0]
        • predictionAvailable
          boolean predictionAvailable
          Indicates whether a prediction has been made to initialize the internal Kalman filter. Corrections can only be requested to Kalman filter once a prediction has been made. Attempts to request corrections before having a prediction will be ignored.
        • u
          double[] u
          Control signals containing the following values: linear-velocity-change-x, linear-velocity-change-y, linear-velocity-change-z, angular-velocity-change-x, angular-velocity-change-y, angular-velocity-change-z.
        • x
          double[] x
          Contains device status containing the following values: position-x, position-y, position-z, quaternion-a, quaternion-b, quaternion-c, quaternion-d, linear-velocity-x, linear-velocity-y, linear-velocity-z, angular-velocity-x, angular-velocity-y, angular-velocity-z.
    • Class com.irurueta.ar.slam.SlamCalibrationData

      class SlamCalibrationData extends BaseCalibrationData implements Serializable
    • Class com.irurueta.ar.slam.SlamEstimator

      class SlamEstimator extends BaseSlamEstimator<SlamCalibrationData> implements Serializable
      • Serialized Fields

        • control
          com.irurueta.algebra.Matrix control
          Column matrix containing mU values to be passed as control values during Kalman filter prediction.
        • jacobianPredictionU
          com.irurueta.algebra.Matrix jacobianPredictionU
          Jacobian respect u control during state prediction (16x9).
        • jacobianPredictionX
          com.irurueta.algebra.Matrix jacobianPredictionX
          Jacobian respect x state during prediction (16x16).
        • kalmanFilter
          com.irurueta.numerical.signal.processing.KalmanFilter kalmanFilter
          Kalman's filter to remove effects of noise.
        • lastAccelerationX
          double lastAccelerationX
          Last sample of linear acceleration along x-axis.
        • lastAccelerationY
          double lastAccelerationY
          Last sample of linear acceleration along y-axis.
        • lastAccelerationZ
          double lastAccelerationZ
          Last sample of linear acceleration along z-axis.
        • lastAngularSpeedX
          double lastAngularSpeedX
          Last sample of angular speed along x-axis.
        • lastAngularSpeedY
          double lastAngularSpeedY
          Last sample of angular speed along y-axis.
        • lastTimestampNanos
          long lastTimestampNanos
          Last timestamp of a full sample expressed in nanoseconds since the epoch time.
        • measurement
          com.irurueta.algebra.Matrix measurement
          Measurement data for the Kalman filter in a column matrix. Contains data in the following order: [accelerationX] [accelerationY] [accelerationZ] [angularSpeedX] [angularSpeedY] [angularSpeedZ]
        • measurementMatrix
          com.irurueta.algebra.Matrix measurementMatrix
          Matrix of size 3x16 relating system status with obtained measures. [1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] [0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0] [0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0]
        • mLastAngularSpeedZ
          double mLastAngularSpeedZ
          Last sample of angular speed along z-axis.
        • predictionAvailable
          boolean predictionAvailable
          Indicates whether a prediction has been made to initialize the internal Kalman filter. Corrections can only be requested to Kalman filter once a prediction has been made. Attempts to request corrections before having a prediction will be ignored.
        • u
          double[] u
          Control signals containing the following values: linear-velocity-change-x, linear-velocity-change-y, linear-velocity-change-z, linear-acceleration-change-x, linear-acceleration-change-y, linear-acceleration-change-z, angular-velocity-change-x, angular-velocity-change-y, angular-velocity-change-z.
        • x
          double[] x
          Contains device status containing the following values: position-x, position-y, position-z, quaternion-a, quaternion-b, quaternion-c, quaternion-d, linear-velocity-x, linear-velocity-y, linear-velocity-z, linear-acceleration-x, linear-acceleration-y, linear-acceleration-z, angular-velocity-x, angular-velocity-y, angular-velocity-z.
    • Exception com.irurueta.ar.slam.SlamException

      class SlamException extends ARException implements Serializable