gtsam-develop 4.3a0.dev202506061330__cp311-cp311-macosx_11_0_arm64.whl → 4.3a0.dev202508020718__cp311-cp311-macosx_11_0_arm64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of gtsam-develop might be problematic. Click here for more details.

gtsam/gtsam/__init__.pyi CHANGED
@@ -11,7 +11,7 @@ from . import noiseModel
11
11
  from . import so3
12
12
  from . import symbol_shorthand
13
13
  from . import utilities
14
- __all__ = ['AHRSFactor', 'AcceleratingScenario', 'AlgebraicDecisionTreeKey', 'AssignmentKey', 'BarometricFactor', 'BatchFixedLagSmoother', 'BearingFactor2D', 'BearingFactor3D', 'BearingFactorPose2', 'BearingRange2D', 'BearingRange3D', 'BearingRangeFactor2D', 'BearingRangeFactor3D', 'BearingRangeFactorPose2', 'BearingRangeFactorPose3', 'BearingRangePose2', 'BearingRangePose3', 'BetweenFactorConstantBias', 'BetweenFactorDouble', 'BetweenFactorPoint2', 'BetweenFactorPoint3', 'BetweenFactorPose2', 'BetweenFactorPose3', 'BetweenFactorRot2', 'BetweenFactorRot3', 'BetweenFactorSO3', 'BetweenFactorSO4', 'BetweenFactorSimilarity2', 'BetweenFactorSimilarity3', 'BetweenFactorVector', 'BinaryMeasurementPoint3', 'BinaryMeasurementRot3', 'BinaryMeasurementUnit3', 'BlockJacobiPreconditionerParameters', 'Cal3', 'Cal3Bundler', 'Cal3DS2', 'Cal3DS2_Base', 'Cal3Fisheye', 'Cal3Unified', 'Cal3_S2', 'Cal3_S2Stereo', 'Cal3f', 'CalibratedCamera', 'CameraSetCal3Bundler', 'CameraSetCal3DS2', 'CameraSetCal3Fisheye', 'CameraSetCal3Unified', 'CameraSetCal3_S2', 'CameraSetPinholePoseCal3_S2', 'Chebyshev1Basis', 'Chebyshev2', 'Chebyshev2Basis', 'CombinedImuFactor', 'ComponentDerivativeFactorChebyshev1Basis', 'ComponentDerivativeFactorChebyshev2', 'ComponentDerivativeFactorChebyshev2Basis', 'ComponentDerivativeFactorFourierBasis', 'ConjugateGradientParameters', 'ConstantTwistScenario', 'ConstantVelocityFactor', 'ConvertNoiseModel', 'CustomFactor', 'DSFMapIndexPair', 'DecisionTreeFactor', 'DegeneracyMode', 'DerivativeFactorChebyshev1Basis', 'DerivativeFactorChebyshev2', 'DerivativeFactorChebyshev2Basis', 'DerivativeFactorFourierBasis', 'DiscreteBayesNet', 'DiscreteBayesTree', 'DiscreteBayesTreeClique', 'DiscreteCluster', 'DiscreteConditional', 'DiscreteDistribution', 'DiscreteEliminationTree', 'DiscreteFactor', 'DiscreteFactorGraph', 'DiscreteJunctionTree', 'DiscreteKeys', 'DiscreteLookupDAG', 'DiscreteLookupTable', 'DiscreteMarginals', 'DiscreteSearch', 'DiscreteSearchSolution', 'DiscreteValues', 'DoglegOptimizer', 'DoglegParams', 'DotWriter', 'DummyPreconditionerParameters', 'EdgeKey', 'EliminateDiscrete', 'EliminateForMPE', 'EliminateQR', 'EpipolarTransfer', 'EssentialMatrix', 'EssentialMatrixConstraint', 'EssentialMatrixFactor', 'EssentialMatrixFactor2', 'EssentialMatrixFactor3', 'EssentialMatrixFactor4Cal3Bundler', 'EssentialMatrixFactor4Cal3DS2', 'EssentialMatrixFactor4Cal3Fisheye', 'EssentialMatrixFactor4Cal3Unified', 'EssentialMatrixFactor4Cal3_S2', 'EssentialMatrixFactor4Cal3f', 'EssentialMatrixFactor5Cal3Bundler', 'EssentialMatrixFactor5Cal3DS2', 'EssentialMatrixFactor5Cal3Fisheye', 'EssentialMatrixFactor5Cal3Unified', 'EssentialMatrixFactor5Cal3_S2', 'EssentialMatrixFactor5Cal3f', 'EssentialTransferFactorCal3Bundler', 'EssentialTransferFactorCal3_S2', 'EssentialTransferFactorCal3f', 'EssentialTransferFactorKCal3Bundler', 'EssentialTransferFactorKCal3_S2', 'EssentialTransferFactorKCal3f', 'EvaluationFactorChebyshev1Basis', 'EvaluationFactorChebyshev2', 'EvaluationFactorChebyshev2Basis', 'EvaluationFactorFourierBasis', 'Event', 'ExtendedKalmanFilterConstantBias', 'ExtendedKalmanFilterNavState', 'ExtendedKalmanFilterPoint2', 'ExtendedKalmanFilterPoint3', 'ExtendedKalmanFilterPose2', 'ExtendedKalmanFilterPose3', 'ExtendedKalmanFilterRot2', 'ExtendedKalmanFilterRot3', 'ExtendedKalmanFilterSimilarity2', 'ExtendedKalmanFilterSimilarity3', 'Factor', 'FindKarcherMeanPoint2', 'FindKarcherMeanPoint3', 'FindKarcherMeanPose2', 'FindKarcherMeanPose3', 'FindKarcherMeanRot2', 'FindKarcherMeanRot3', 'FindKarcherMeanSO3', 'FindKarcherMeanSO4', 'FitBasisChebyshev1Basis', 'FitBasisChebyshev2', 'FitBasisChebyshev2Basis', 'FitBasisFourierBasis', 'FixedLagSmoother', 'FixedLagSmootherResult', 'FourierBasis', 'FrobeniusBetweenFactorPose2', 'FrobeniusBetweenFactorPose3', 'FrobeniusBetweenFactorRot2', 'FrobeniusBetweenFactorRot3', 'FrobeniusBetweenFactorSO3', 'FrobeniusBetweenFactorSO4', 'FrobeniusFactorPose2', 'FrobeniusFactorPose3', 'FrobeniusFactorRot2', 'FrobeniusFactorRot3', 'FrobeniusFactorSO3', 'FrobeniusFactorSO4', 'FrobeniusPriorPose2', 'FrobeniusPriorPose3', 'FrobeniusPriorRot2', 'FrobeniusPriorRot3', 'FrobeniusPriorSO3', 'FrobeniusPriorSO4', 'FundamentalMatrix', 'GPSFactor', 'GPSFactor2', 'GPSFactor2Arm', 'GPSFactor2ArmCalib', 'GPSFactorArm', 'GPSFactorArmCalib', 'GaussNewtonOptimizer', 'GaussNewtonParams', 'GaussianBayesNet', 'GaussianBayesTree', 'GaussianBayesTreeClique', 'GaussianConditional', 'GaussianDensity', 'GaussianEliminationTree', 'GaussianFactor', 'GaussianFactorGraph', 'GaussianISAM', 'GeneralSFMFactor2Cal3Bundler', 'GeneralSFMFactor2Cal3DS2', 'GeneralSFMFactor2Cal3Fisheye', 'GeneralSFMFactor2Cal3Unified', 'GeneralSFMFactor2Cal3_S2', 'GeneralSFMFactor2Cal3f', 'GeneralSFMFactorCal3Bundler', 'GeneralSFMFactorCal3DS2', 'GeneralSFMFactorCal3Fisheye', 'GeneralSFMFactorCal3Unified', 'GeneralSFMFactorCal3_S2', 'GeneralSFMFactorPoseCal3Bundler', 'GeneralSFMFactorPoseCal3DS2', 'GeneralSFMFactorPoseCal3Fisheye', 'GeneralSFMFactorPoseCal3Unified', 'GeneralSFMFactorPoseCal3_S2', 'GenericProjectionFactorCal3DS2', 'GenericProjectionFactorCal3Fisheye', 'GenericProjectionFactorCal3Unified', 'GenericProjectionFactorCal3_S2', 'GenericStereoFactor3D', 'GenericValueCal3Bundler', 'GenericValueCal3DS2', 'GenericValueCal3Fisheye', 'GenericValueCal3Unified', 'GenericValueCal3_S2', 'GenericValueCalibratedCamera', 'GenericValueConstantBias', 'GenericValueEssentialMatrix', 'GenericValueMatrix', 'GenericValuePoint2', 'GenericValuePoint3', 'GenericValuePose2', 'GenericValuePose3', 'GenericValueRot2', 'GenericValueRot3', 'GenericValueStereoPoint2', 'GenericValueVector', 'GncGaussNewtonOptimizer', 'GncGaussNewtonParams', 'GncLMOptimizer', 'GncLMParams', 'GncLossType', 'GraphvizFormatting', 'HessianFactor', 'HybridBayesNet', 'HybridBayesTree', 'HybridBayesTreeClique', 'HybridConditional', 'HybridFactor', 'HybridGaussianConditional', 'HybridGaussianFactor', 'HybridGaussianFactorGraph', 'HybridNonlinearFactor', 'HybridNonlinearFactorGraph', 'HybridOrdering', 'HybridSmoother', 'HybridValues', 'ISAM2', 'ISAM2Clique', 'ISAM2DoglegParams', 'ISAM2GaussNewtonParams', 'ISAM2Params', 'ISAM2Result', 'ISAM2ThresholdMap', 'ImuFactor', 'ImuFactor2', 'IncrementalFixedLagSmoother', 'IndexPair', 'IndexPairSetAsArray', 'InitializePose3', 'IterativeOptimizationParameters', 'JacobianFactor', 'JacobianVector', 'JointMarginal', 'KalmanFilter', 'KarcherMeanFactorPoint2', 'KarcherMeanFactorPoint3', 'KarcherMeanFactorPose2', 'KarcherMeanFactorPose3', 'KarcherMeanFactorRot2', 'KarcherMeanFactorRot3', 'KarcherMeanFactorSO3', 'KarcherMeanFactorSO4', 'KernelFunctionType', 'KeyGroupMap', 'KeyList', 'KeySet', 'LabeledSymbol', 'LevenbergMarquardtOptimizer', 'LevenbergMarquardtParams', 'LinearContainerFactor', 'LinearizationMode', 'MFAS', 'MT19937', 'MagFactor', 'MagFactor1', 'MagPoseFactorPose2', 'MagPoseFactorPose3', 'ManifoldEvaluationFactorChebyshev1BasisPose2', 'ManifoldEvaluationFactorChebyshev1BasisPose3', 'ManifoldEvaluationFactorChebyshev1BasisRot2', 'ManifoldEvaluationFactorChebyshev1BasisRot3', 'ManifoldEvaluationFactorChebyshev2BasisPose2', 'ManifoldEvaluationFactorChebyshev2BasisPose3', 'ManifoldEvaluationFactorChebyshev2BasisRot2', 'ManifoldEvaluationFactorChebyshev2BasisRot3', 'ManifoldEvaluationFactorChebyshev2Pose2', 'ManifoldEvaluationFactorChebyshev2Pose3', 'ManifoldEvaluationFactorChebyshev2Rot2', 'ManifoldEvaluationFactorChebyshev2Rot3', 'ManifoldEvaluationFactorFourierBasisPose2', 'ManifoldEvaluationFactorFourierBasisPose3', 'ManifoldEvaluationFactorFourierBasisRot2', 'ManifoldEvaluationFactorFourierBasisRot3', 'Marginals', 'NavState', 'NoiseFormat', 'NoiseModelFactor', 'NonlinearEquality2Cal3_S2', 'NonlinearEquality2CalibratedCamera', 'NonlinearEquality2ConstantBias', 'NonlinearEquality2PinholeCameraCal3Bundler', 'NonlinearEquality2PinholeCameraCal3Fisheye', 'NonlinearEquality2PinholeCameraCal3Unified', 'NonlinearEquality2PinholeCameraCal3_S2', 'NonlinearEquality2Point2', 'NonlinearEquality2Point3', 'NonlinearEquality2Pose2', 'NonlinearEquality2Pose3', 'NonlinearEquality2Rot2', 'NonlinearEquality2Rot3', 'NonlinearEquality2SO3', 'NonlinearEquality2SO4', 'NonlinearEquality2SOn', 'NonlinearEquality2Similarity2', 'NonlinearEquality2Similarity3', 'NonlinearEquality2StereoPoint2', 'NonlinearEqualityCal3_S2', 'NonlinearEqualityCalibratedCamera', 'NonlinearEqualityConstantBias', 'NonlinearEqualityPinholeCameraCal3Bundler', 'NonlinearEqualityPinholeCameraCal3Fisheye', 'NonlinearEqualityPinholeCameraCal3Unified', 'NonlinearEqualityPinholeCameraCal3_S2', 'NonlinearEqualityPoint2', 'NonlinearEqualityPoint3', 'NonlinearEqualityPose2', 'NonlinearEqualityPose3', 'NonlinearEqualityRot2', 'NonlinearEqualityRot3', 'NonlinearEqualitySO3', 'NonlinearEqualitySO4', 'NonlinearEqualitySOn', 'NonlinearEqualitySimilarity2', 'NonlinearEqualitySimilarity3', 'NonlinearEqualityStereoPoint2', 'NonlinearFactor', 'NonlinearFactorGraph', 'NonlinearISAM', 'NonlinearOptimizer', 'NonlinearOptimizerParams', 'Ordering', 'OrientedPlane3', 'OrientedPlane3DirectionPrior', 'OrientedPlane3Factor', 'PCGSolverParameters', 'PinholeCameraCal3Bundler', 'PinholeCameraCal3DS2', 'PinholeCameraCal3Fisheye', 'PinholeCameraCal3Unified', 'PinholeCameraCal3_S2', 'PinholeCameraCal3f', 'PinholePoseCal3Bundler', 'PinholePoseCal3DS2', 'PinholePoseCal3Fisheye', 'PinholePoseCal3Unified', 'PinholePoseCal3_S2', 'PlanarProjectionFactor1', 'PlanarProjectionFactor2', 'PlanarProjectionFactor3', 'Pose2', 'Pose3', 'Pose3AttitudeFactor', 'PoseRotationPrior2D', 'PoseRotationPrior3D', 'PoseTranslationPrior2D', 'PoseTranslationPrior3D', 'PreconditionerParameters', 'PreintegratedAhrsMeasurements', 'PreintegratedCombinedMeasurements', 'PreintegratedImuMeasurements', 'PreintegratedRotation', 'PreintegratedRotationParams', 'PreintegrationCombinedParams', 'PreintegrationParams', 'PrintDiscreteValues', 'PrintKeyList', 'PrintKeySet', 'PrintKeyVector', 'PriorFactorCal3Bundler', 'PriorFactorCal3DS2', 'PriorFactorCal3Fisheye', 'PriorFactorCal3Unified', 'PriorFactorCal3_S2', 'PriorFactorCalibratedCamera', 'PriorFactorConstantBias', 'PriorFactorDouble', 'PriorFactorNavState', 'PriorFactorPinholeCameraCal3Bundler', 'PriorFactorPinholeCameraCal3Fisheye', 'PriorFactorPinholeCameraCal3Unified', 'PriorFactorPinholeCameraCal3_S2', 'PriorFactorPoint2', 'PriorFactorPoint3', 'PriorFactorPose2', 'PriorFactorPose3', 'PriorFactorRot2', 'PriorFactorRot3', 'PriorFactorSO3', 'PriorFactorSO4', 'PriorFactorSOn', 'PriorFactorSimilarity2', 'PriorFactorSimilarity3', 'PriorFactorStereoPoint2', 'PriorFactorUnit3', 'PriorFactorVector', 'Quaternion', 'RangeFactor2', 'RangeFactor2D', 'RangeFactor3', 'RangeFactor3D', 'RangeFactorCalibratedCamera', 'RangeFactorCalibratedCameraPoint', 'RangeFactorPose2', 'RangeFactorPose3', 'RangeFactorSimpleCamera', 'RangeFactorSimpleCameraPoint', 'RangeFactorWithTransform2D', 'RangeFactorWithTransform3D', 'RangeFactorWithTransformPose2', 'RangeFactorWithTransformPose3', 'RedirectCout', 'ReferenceFrameFactorPoint3Pose3', 'Rot2', 'Rot3', 'Rot3AttitudeFactor', 'RotateDirectionsFactor', 'RotateFactor', 'SO3', 'SO4', 'SOn', 'Sampler', 'Scenario', 'ScenarioRunner', 'SfmData', 'SfmTrack', 'SfmTrack2d', 'ShonanAveraging2', 'ShonanAveraging3', 'ShonanAveragingParameters2', 'ShonanAveragingParameters3', 'ShonanFactor3', 'Similarity2', 'Similarity3', 'SimpleFundamentalMatrix', 'SmartFactorBasePinholeCameraCal3Bundler', 'SmartFactorBasePinholeCameraCal3DS2', 'SmartFactorBasePinholeCameraCal3Fisheye', 'SmartFactorBasePinholeCameraCal3Unified', 'SmartFactorBasePinholeCameraCal3_S2', 'SmartFactorBasePinholePoseCal3Bundler', 'SmartFactorBasePinholePoseCal3DS2', 'SmartFactorBasePinholePoseCal3Fisheye', 'SmartFactorBasePinholePoseCal3Unified', 'SmartFactorBasePinholePoseCal3_S2', 'SmartProjectionFactorPinholeCameraCal3Bundler', 'SmartProjectionFactorPinholeCameraCal3DS2', 'SmartProjectionFactorPinholeCameraCal3Fisheye', 'SmartProjectionFactorPinholeCameraCal3Unified', 'SmartProjectionFactorPinholeCameraCal3_S2', 'SmartProjectionFactorPinholePoseCal3Bundler', 'SmartProjectionFactorPinholePoseCal3DS2', 'SmartProjectionFactorPinholePoseCal3Fisheye', 'SmartProjectionFactorPinholePoseCal3Unified', 'SmartProjectionFactorPinholePoseCal3_S2', 'SmartProjectionParams', 'SmartProjectionPoseFactorCal3Bundler', 'SmartProjectionPoseFactorCal3DS2', 'SmartProjectionPoseFactorCal3Fisheye', 'SmartProjectionPoseFactorCal3Unified', 'SmartProjectionPoseFactorCal3_S2', 'SmartProjectionRigFactorPinholePoseCal3Bundler', 'SmartProjectionRigFactorPinholePoseCal3DS2', 'SmartProjectionRigFactorPinholePoseCal3Fisheye', 'SmartProjectionRigFactorPinholePoseCal3Unified', 'SmartProjectionRigFactorPinholePoseCal3_S2', 'StereoCamera', 'StereoPoint2', 'SubgraphSolver', 'SubgraphSolverParameters', 'Symbol', 'SymbolicBayesNet', 'SymbolicBayesTree', 'SymbolicBayesTreeClique', 'SymbolicCluster', 'SymbolicConditional', 'SymbolicEliminationTree', 'SymbolicFactor', 'SymbolicFactorGraph', 'SymbolicJunctionTree', 'TableDistribution', 'TableFactor', 'TransferFactorFundamentalMatrix', 'TransferFactorSimpleFundamentalMatrix', 'TranslationRecovery', 'TriangulationFactorCal3Bundler', 'TriangulationFactorCal3DS2', 'TriangulationFactorCal3Fisheye', 'TriangulationFactorCal3Unified', 'TriangulationFactorCal3_S2', 'TriangulationFactorPoseCal3Bundler', 'TriangulationFactorPoseCal3DS2', 'TriangulationFactorPoseCal3Fisheye', 'TriangulationFactorPoseCal3Unified', 'TriangulationFactorPoseCal3_S2', 'TriangulationParameters', 'TriangulationResult', 'Unit3', 'Value', 'Values', 'VariableIndex', 'VectorComponentFactorChebyshev1Basis', 'VectorComponentFactorChebyshev2', 'VectorComponentFactorChebyshev2Basis', 'VectorComponentFactorFourierBasis', 'VectorDerivativeFactorChebyshev1Basis', 'VectorDerivativeFactorChebyshev2', 'VectorDerivativeFactorChebyshev2Basis', 'VectorDerivativeFactorFourierBasis', 'VectorEvaluationFactorChebyshev1Basis', 'VectorEvaluationFactorChebyshev2', 'VectorEvaluationFactorChebyshev2Basis', 'VectorEvaluationFactorFourierBasis', 'VectorValues', 'cartesianProduct', 'checkConvergence', 'gtsfm', 'html', 'imuBias', 'initialCamerasAndPointsEstimate', 'initialCamerasEstimate', 'isDebugVersion', 'lago', 'linear_independent', 'load2D', 'load3D', 'markdown', 'mrsymbol', 'mrsymbolChr', 'mrsymbolIndex', 'mrsymbolLabel', 'noiseModel', 'parse2DFactors', 'parse3DFactors', 'readBal', 'readG2o', 'save2D', 'so3', 'symbol', 'symbolChr', 'symbolIndex', 'symbol_shorthand', 'triangulateNonlinear', 'triangulatePoint3', 'triangulateSafe', 'utilities', 'writeBAL', 'writeG2o']
14
+ __all__ = ['AHRSFactor', 'AcceleratingScenario', 'AlgebraicDecisionTreeKey', 'AssignmentKey', 'BarometricFactor', 'BatchFixedLagSmoother', 'BearingFactor2D', 'BearingFactor3D', 'BearingFactorPose2', 'BearingRange2D', 'BearingRange3D', 'BearingRangeFactor2D', 'BearingRangeFactor3D', 'BearingRangeFactorPose2', 'BearingRangeFactorPose3', 'BearingRangePose2', 'BearingRangePose3', 'BetweenFactorConstantBias', 'BetweenFactorDouble', 'BetweenFactorPoint2', 'BetweenFactorPoint3', 'BetweenFactorPose2', 'BetweenFactorPose3', 'BetweenFactorRot2', 'BetweenFactorRot3', 'BetweenFactorSL4', 'BetweenFactorSO3', 'BetweenFactorSO4', 'BetweenFactorSimilarity2', 'BetweenFactorSimilarity3', 'BetweenFactorVector', 'BinaryMeasurementPoint3', 'BinaryMeasurementRot3', 'BinaryMeasurementUnit3', 'BlockJacobiPreconditionerParameters', 'Cal3', 'Cal3Bundler', 'Cal3DS2', 'Cal3DS2_Base', 'Cal3Fisheye', 'Cal3Unified', 'Cal3_S2', 'Cal3_S2Stereo', 'Cal3f', 'CalibratedCamera', 'CameraSetCal3Bundler', 'CameraSetCal3DS2', 'CameraSetCal3Fisheye', 'CameraSetCal3Unified', 'CameraSetCal3_S2', 'CameraSetPinholePoseCal3_S2', 'Chebyshev1Basis', 'Chebyshev2', 'Chebyshev2Basis', 'CombinedImuFactor', 'ComponentDerivativeFactorChebyshev1Basis', 'ComponentDerivativeFactorChebyshev2', 'ComponentDerivativeFactorChebyshev2Basis', 'ComponentDerivativeFactorFourierBasis', 'ConjugateGradientParameters', 'ConstantTwistScenario', 'ConstantVelocityFactor', 'ConvertNoiseModel', 'CustomFactor', 'DSFMapIndexPair', 'DecisionTreeFactor', 'DegeneracyMode', 'DerivativeFactorChebyshev1Basis', 'DerivativeFactorChebyshev2', 'DerivativeFactorChebyshev2Basis', 'DerivativeFactorFourierBasis', 'DiscreteBayesNet', 'DiscreteBayesTree', 'DiscreteBayesTreeClique', 'DiscreteCluster', 'DiscreteConditional', 'DiscreteDistribution', 'DiscreteEliminationTree', 'DiscreteFactor', 'DiscreteFactorGraph', 'DiscreteJunctionTree', 'DiscreteKeys', 'DiscreteLookupDAG', 'DiscreteLookupTable', 'DiscreteMarginals', 'DiscreteScenario', 'DiscreteSearch', 'DiscreteSearchSolution', 'DiscreteValues', 'DoglegOptimizer', 'DoglegParams', 'DotWriter', 'DummyPreconditionerParameters', 'EdgeKey', 'EliminateDiscrete', 'EliminateForMPE', 'EliminateQR', 'EpipolarTransfer', 'EssentialMatrix', 'EssentialMatrixConstraint', 'EssentialMatrixFactor', 'EssentialMatrixFactor2', 'EssentialMatrixFactor3', 'EssentialMatrixFactor4Cal3Bundler', 'EssentialMatrixFactor4Cal3DS2', 'EssentialMatrixFactor4Cal3Fisheye', 'EssentialMatrixFactor4Cal3Unified', 'EssentialMatrixFactor4Cal3_S2', 'EssentialMatrixFactor4Cal3f', 'EssentialMatrixFactor5Cal3Bundler', 'EssentialMatrixFactor5Cal3DS2', 'EssentialMatrixFactor5Cal3Fisheye', 'EssentialMatrixFactor5Cal3Unified', 'EssentialMatrixFactor5Cal3_S2', 'EssentialMatrixFactor5Cal3f', 'EssentialTransferFactorCal3Bundler', 'EssentialTransferFactorCal3_S2', 'EssentialTransferFactorCal3f', 'EssentialTransferFactorKCal3Bundler', 'EssentialTransferFactorKCal3_S2', 'EssentialTransferFactorKCal3f', 'EvaluationFactorChebyshev1Basis', 'EvaluationFactorChebyshev2', 'EvaluationFactorChebyshev2Basis', 'EvaluationFactorFourierBasis', 'Event', 'ExtendedKalmanFilterConstantBias', 'ExtendedKalmanFilterNavState', 'ExtendedKalmanFilterPoint2', 'ExtendedKalmanFilterPoint3', 'ExtendedKalmanFilterPose2', 'ExtendedKalmanFilterPose3', 'ExtendedKalmanFilterRot2', 'ExtendedKalmanFilterRot3', 'ExtendedKalmanFilterSL4', 'ExtendedKalmanFilterSimilarity2', 'ExtendedKalmanFilterSimilarity3', 'Factor', 'FindKarcherMeanPoint2', 'FindKarcherMeanPoint3', 'FindKarcherMeanPose2', 'FindKarcherMeanPose3', 'FindKarcherMeanRot2', 'FindKarcherMeanRot3', 'FindKarcherMeanSO3', 'FindKarcherMeanSO4', 'FitBasisChebyshev1Basis', 'FitBasisChebyshev2', 'FitBasisChebyshev2Basis', 'FitBasisFourierBasis', 'FixedLagSmoother', 'FixedLagSmootherResult', 'FourierBasis', 'FrobeniusBetweenFactorGal3', 'FrobeniusBetweenFactorPose2', 'FrobeniusBetweenFactorPose3', 'FrobeniusBetweenFactorRot2', 'FrobeniusBetweenFactorRot3', 'FrobeniusBetweenFactorSO3', 'FrobeniusBetweenFactorSO4', 'FrobeniusBetweenFactorSimilarity2', 'FrobeniusBetweenFactorSimilarity3', 'FrobeniusFactorGal3', 'FrobeniusFactorPose2', 'FrobeniusFactorPose3', 'FrobeniusFactorRot2', 'FrobeniusFactorRot3', 'FrobeniusFactorSO3', 'FrobeniusFactorSO4', 'FrobeniusFactorSimilarity2', 'FrobeniusFactorSimilarity3', 'FrobeniusPriorGal3', 'FrobeniusPriorPose2', 'FrobeniusPriorPose3', 'FrobeniusPriorRot2', 'FrobeniusPriorRot3', 'FrobeniusPriorSO3', 'FrobeniusPriorSO4', 'FrobeniusPriorSimilarity2', 'FrobeniusPriorSimilarity3', 'FundamentalMatrix', 'GPSFactor', 'GPSFactor2', 'GPSFactor2Arm', 'GPSFactor2ArmCalib', 'GPSFactorArm', 'GPSFactorArmCalib', 'Gal3', 'GaussNewtonOptimizer', 'GaussNewtonParams', 'GaussianBayesNet', 'GaussianBayesTree', 'GaussianBayesTreeClique', 'GaussianConditional', 'GaussianDensity', 'GaussianEliminationTree', 'GaussianFactor', 'GaussianFactorGraph', 'GaussianISAM', 'GeneralSFMFactor2Cal3Bundler', 'GeneralSFMFactor2Cal3DS2', 'GeneralSFMFactor2Cal3Fisheye', 'GeneralSFMFactor2Cal3Unified', 'GeneralSFMFactor2Cal3_S2', 'GeneralSFMFactor2Cal3f', 'GeneralSFMFactorCal3Bundler', 'GeneralSFMFactorCal3DS2', 'GeneralSFMFactorCal3Fisheye', 'GeneralSFMFactorCal3Unified', 'GeneralSFMFactorCal3_S2', 'GeneralSFMFactorPoseCal3Bundler', 'GeneralSFMFactorPoseCal3DS2', 'GeneralSFMFactorPoseCal3Fisheye', 'GeneralSFMFactorPoseCal3Unified', 'GeneralSFMFactorPoseCal3_S2', 'GenericProjectionFactorCal3DS2', 'GenericProjectionFactorCal3Fisheye', 'GenericProjectionFactorCal3Unified', 'GenericProjectionFactorCal3_S2', 'GenericStereoFactor3D', 'GenericValueCal3Bundler', 'GenericValueCal3DS2', 'GenericValueCal3Fisheye', 'GenericValueCal3Unified', 'GenericValueCal3_S2', 'GenericValueCalibratedCamera', 'GenericValueConstantBias', 'GenericValueEssentialMatrix', 'GenericValueMatrix', 'GenericValuePoint2', 'GenericValuePoint3', 'GenericValuePose2', 'GenericValuePose3', 'GenericValueRot2', 'GenericValueRot3', 'GenericValueStereoPoint2', 'GenericValueVector', 'GncGaussNewtonOptimizer', 'GncGaussNewtonParams', 'GncLMOptimizer', 'GncLMParams', 'GncLossType', 'GraphvizFormatting', 'HessianFactor', 'HybridBayesNet', 'HybridBayesTree', 'HybridBayesTreeClique', 'HybridConditional', 'HybridFactor', 'HybridGaussianConditional', 'HybridGaussianFactor', 'HybridGaussianFactorGraph', 'HybridNonlinearFactor', 'HybridNonlinearFactorGraph', 'HybridOrdering', 'HybridSmoother', 'HybridValues', 'ISAM2', 'ISAM2Clique', 'ISAM2DoglegParams', 'ISAM2GaussNewtonParams', 'ISAM2Params', 'ISAM2Result', 'ISAM2ThresholdMap', 'ImuFactor', 'ImuFactor2', 'IncrementalFixedLagSmoother', 'IndexPair', 'IndexPairSetAsArray', 'InitializePose3', 'IterativeOptimizationParameters', 'JacobianFactor', 'JacobianVector', 'JointMarginal', 'KalmanFilter', 'KarcherMeanFactorPoint2', 'KarcherMeanFactorPoint3', 'KarcherMeanFactorPose2', 'KarcherMeanFactorPose3', 'KarcherMeanFactorRot2', 'KarcherMeanFactorRot3', 'KarcherMeanFactorSO3', 'KarcherMeanFactorSO4', 'KernelFunctionType', 'KeyGroupMap', 'KeyList', 'KeySet', 'LabeledSymbol', 'LevenbergMarquardtOptimizer', 'LevenbergMarquardtParams', 'LinearContainerFactor', 'LinearizationMode', 'MFAS', 'MT19937', 'MagFactor', 'MagFactor1', 'MagPoseFactorPose2', 'MagPoseFactorPose3', 'ManifoldEvaluationFactorChebyshev1BasisPose2', 'ManifoldEvaluationFactorChebyshev1BasisPose3', 'ManifoldEvaluationFactorChebyshev1BasisRot2', 'ManifoldEvaluationFactorChebyshev1BasisRot3', 'ManifoldEvaluationFactorChebyshev2BasisPose2', 'ManifoldEvaluationFactorChebyshev2BasisPose3', 'ManifoldEvaluationFactorChebyshev2BasisRot2', 'ManifoldEvaluationFactorChebyshev2BasisRot3', 'ManifoldEvaluationFactorChebyshev2Pose2', 'ManifoldEvaluationFactorChebyshev2Pose3', 'ManifoldEvaluationFactorChebyshev2Rot2', 'ManifoldEvaluationFactorChebyshev2Rot3', 'ManifoldEvaluationFactorFourierBasisPose2', 'ManifoldEvaluationFactorFourierBasisPose3', 'ManifoldEvaluationFactorFourierBasisRot2', 'ManifoldEvaluationFactorFourierBasisRot3', 'Marginals', 'NavState', 'NoiseFormat', 'NoiseModelFactor', 'NonlinearEquality2Cal3_S2', 'NonlinearEquality2CalibratedCamera', 'NonlinearEquality2ConstantBias', 'NonlinearEquality2PinholeCameraCal3Bundler', 'NonlinearEquality2PinholeCameraCal3Fisheye', 'NonlinearEquality2PinholeCameraCal3Unified', 'NonlinearEquality2PinholeCameraCal3_S2', 'NonlinearEquality2Point2', 'NonlinearEquality2Point3', 'NonlinearEquality2Pose2', 'NonlinearEquality2Pose3', 'NonlinearEquality2Rot2', 'NonlinearEquality2Rot3', 'NonlinearEquality2SL4', 'NonlinearEquality2SO3', 'NonlinearEquality2SO4', 'NonlinearEquality2SOn', 'NonlinearEquality2Similarity2', 'NonlinearEquality2Similarity3', 'NonlinearEquality2StereoPoint2', 'NonlinearEqualityCal3_S2', 'NonlinearEqualityCalibratedCamera', 'NonlinearEqualityConstantBias', 'NonlinearEqualityPinholeCameraCal3Bundler', 'NonlinearEqualityPinholeCameraCal3Fisheye', 'NonlinearEqualityPinholeCameraCal3Unified', 'NonlinearEqualityPinholeCameraCal3_S2', 'NonlinearEqualityPoint2', 'NonlinearEqualityPoint3', 'NonlinearEqualityPose2', 'NonlinearEqualityPose3', 'NonlinearEqualityRot2', 'NonlinearEqualityRot3', 'NonlinearEqualitySL4', 'NonlinearEqualitySO3', 'NonlinearEqualitySO4', 'NonlinearEqualitySOn', 'NonlinearEqualitySimilarity2', 'NonlinearEqualitySimilarity3', 'NonlinearEqualityStereoPoint2', 'NonlinearFactor', 'NonlinearFactorGraph', 'NonlinearISAM', 'NonlinearOptimizer', 'NonlinearOptimizerParams', 'Ordering', 'OrientedPlane3', 'OrientedPlane3DirectionPrior', 'OrientedPlane3Factor', 'PCGSolverParameters', 'PinholeCameraCal3Bundler', 'PinholeCameraCal3DS2', 'PinholeCameraCal3Fisheye', 'PinholeCameraCal3Unified', 'PinholeCameraCal3_S2', 'PinholeCameraCal3f', 'PinholePoseCal3Bundler', 'PinholePoseCal3DS2', 'PinholePoseCal3Fisheye', 'PinholePoseCal3Unified', 'PinholePoseCal3_S2', 'PlanarProjectionFactor1', 'PlanarProjectionFactor2', 'PlanarProjectionFactor3', 'Pose2', 'Pose3', 'Pose3AttitudeFactor', 'PoseRotationPrior2D', 'PoseRotationPrior3D', 'PoseTranslationPrior2D', 'PoseTranslationPrior3D', 'PreconditionerParameters', 'PreintegratedAhrsMeasurements', 'PreintegratedCombinedMeasurements', 'PreintegratedImuMeasurements', 'PreintegratedRotation', 'PreintegratedRotationParams', 'PreintegrationCombinedParams', 'PreintegrationParams', 'PrintDiscreteValues', 'PrintKeyList', 'PrintKeySet', 'PrintKeyVector', 'PriorFactorCal3Bundler', 'PriorFactorCal3DS2', 'PriorFactorCal3Fisheye', 'PriorFactorCal3Unified', 'PriorFactorCal3_S2', 'PriorFactorCalibratedCamera', 'PriorFactorConstantBias', 'PriorFactorDouble', 'PriorFactorNavState', 'PriorFactorPinholeCameraCal3Bundler', 'PriorFactorPinholeCameraCal3Fisheye', 'PriorFactorPinholeCameraCal3Unified', 'PriorFactorPinholeCameraCal3_S2', 'PriorFactorPoint2', 'PriorFactorPoint3', 'PriorFactorPose2', 'PriorFactorPose3', 'PriorFactorRot2', 'PriorFactorRot3', 'PriorFactorSL4', 'PriorFactorSO3', 'PriorFactorSO4', 'PriorFactorSOn', 'PriorFactorSimilarity2', 'PriorFactorSimilarity3', 'PriorFactorStereoPoint2', 'PriorFactorUnit3', 'PriorFactorVector', 'Quaternion', 'RangeFactor2', 'RangeFactor2D', 'RangeFactor3', 'RangeFactor3D', 'RangeFactorCalibratedCamera', 'RangeFactorCalibratedCameraPoint', 'RangeFactorPose2', 'RangeFactorPose3', 'RangeFactorSimpleCamera', 'RangeFactorSimpleCameraPoint', 'RangeFactorWithTransform2D', 'RangeFactorWithTransform3D', 'RangeFactorWithTransformPose2', 'RangeFactorWithTransformPose3', 'RedirectCout', 'ReferenceFrameFactorPoint3Pose3', 'Rot2', 'Rot3', 'Rot3AttitudeFactor', 'RotateDirectionsFactor', 'RotateFactor', 'SL4', 'SO3', 'SO4', 'SOn', 'Sampler', 'Scenario', 'ScenarioRunner', 'SfmData', 'SfmTrack', 'SfmTrack2d', 'ShonanAveraging2', 'ShonanAveraging3', 'ShonanAveragingParameters2', 'ShonanAveragingParameters3', 'ShonanFactor3', 'Similarity2', 'Similarity3', 'SimpleFundamentalMatrix', 'SmartFactorBasePinholeCameraCal3Bundler', 'SmartFactorBasePinholeCameraCal3DS2', 'SmartFactorBasePinholeCameraCal3Fisheye', 'SmartFactorBasePinholeCameraCal3Unified', 'SmartFactorBasePinholeCameraCal3_S2', 'SmartFactorBasePinholePoseCal3Bundler', 'SmartFactorBasePinholePoseCal3DS2', 'SmartFactorBasePinholePoseCal3Fisheye', 'SmartFactorBasePinholePoseCal3Unified', 'SmartFactorBasePinholePoseCal3_S2', 'SmartProjectionFactorPinholeCameraCal3Bundler', 'SmartProjectionFactorPinholeCameraCal3DS2', 'SmartProjectionFactorPinholeCameraCal3Fisheye', 'SmartProjectionFactorPinholeCameraCal3Unified', 'SmartProjectionFactorPinholeCameraCal3_S2', 'SmartProjectionFactorPinholePoseCal3Bundler', 'SmartProjectionFactorPinholePoseCal3DS2', 'SmartProjectionFactorPinholePoseCal3Fisheye', 'SmartProjectionFactorPinholePoseCal3Unified', 'SmartProjectionFactorPinholePoseCal3_S2', 'SmartProjectionParams', 'SmartProjectionPoseFactorCal3Bundler', 'SmartProjectionPoseFactorCal3DS2', 'SmartProjectionPoseFactorCal3Fisheye', 'SmartProjectionPoseFactorCal3Unified', 'SmartProjectionPoseFactorCal3_S2', 'SmartProjectionRigFactorPinholePoseCal3Bundler', 'SmartProjectionRigFactorPinholePoseCal3DS2', 'SmartProjectionRigFactorPinholePoseCal3Fisheye', 'SmartProjectionRigFactorPinholePoseCal3Unified', 'SmartProjectionRigFactorPinholePoseCal3_S2', 'StereoCamera', 'StereoPoint2', 'SubgraphSolver', 'SubgraphSolverParameters', 'Symbol', 'SymbolicBayesNet', 'SymbolicBayesTree', 'SymbolicBayesTreeClique', 'SymbolicCluster', 'SymbolicConditional', 'SymbolicEliminationTree', 'SymbolicFactor', 'SymbolicFactorGraph', 'SymbolicJunctionTree', 'TableDistribution', 'TableFactor', 'TransferFactorFundamentalMatrix', 'TransferFactorSimpleFundamentalMatrix', 'TranslationRecovery', 'TriangulationFactorCal3Bundler', 'TriangulationFactorCal3DS2', 'TriangulationFactorCal3Fisheye', 'TriangulationFactorCal3Unified', 'TriangulationFactorCal3_S2', 'TriangulationFactorPoseCal3Bundler', 'TriangulationFactorPoseCal3DS2', 'TriangulationFactorPoseCal3Fisheye', 'TriangulationFactorPoseCal3Unified', 'TriangulationFactorPoseCal3_S2', 'TriangulationParameters', 'TriangulationResult', 'Unit3', 'Value', 'Values', 'VariableIndex', 'VectorComponentFactorChebyshev1Basis', 'VectorComponentFactorChebyshev2', 'VectorComponentFactorChebyshev2Basis', 'VectorComponentFactorFourierBasis', 'VectorDerivativeFactorChebyshev1Basis', 'VectorDerivativeFactorChebyshev2', 'VectorDerivativeFactorChebyshev2Basis', 'VectorDerivativeFactorFourierBasis', 'VectorEvaluationFactorChebyshev1Basis', 'VectorEvaluationFactorChebyshev2', 'VectorEvaluationFactorChebyshev2Basis', 'VectorEvaluationFactorFourierBasis', 'VectorValues', 'cartesianProduct', 'checkConvergence', 'gtsfm', 'html', 'imuBias', 'initialCamerasAndPointsEstimate', 'initialCamerasEstimate', 'isDebugVersion', 'lago', 'linear_independent', 'load2D', 'load3D', 'markdown', 'mrsymbol', 'mrsymbolChr', 'mrsymbolIndex', 'mrsymbolLabel', 'noiseModel', 'parse2DFactors', 'parse3DFactors', 'readBal', 'readG2o', 'save2D', 'so3', 'symbol', 'symbolChr', 'symbolIndex', 'symbol_shorthand', 'triangulateNonlinear', 'triangulatePoint3', 'triangulateSafe', 'utilities', 'writeBAL', 'writeG2o']
15
15
  class AHRSFactor(NonlinearFactor):
16
16
  def __getstate__(self) -> tuple:
17
17
  ...
@@ -144,6 +144,8 @@ class BatchFixedLagSmoother(FixedLagSmoother):
144
144
  ...
145
145
  def calculateEstimateRot3(self, key: int) -> Rot3:
146
146
  ...
147
+ def calculateEstimateSL4(self, key: int) -> SL4:
148
+ ...
147
149
  def calculateEstimateSimilarity2(self, key: int) -> Similarity2:
148
150
  ...
149
151
  def calculateEstimateSimilarity3(self, key: int) -> Similarity3:
@@ -435,6 +437,19 @@ class BetweenFactorRot3(NoiseModelFactor):
435
437
  ...
436
438
  def serialize(self) -> str:
437
439
  ...
440
+ class BetweenFactorSL4(NoiseModelFactor):
441
+ def __getstate__(self) -> tuple:
442
+ ...
443
+ def __init__(self, key1: int, key2: int, relativePose: SL4, noiseModel: noiseModel.Base) -> None:
444
+ ...
445
+ def __setstate__(self, arg0: tuple) -> None:
446
+ ...
447
+ def deserialize(self, serialized: str) -> None:
448
+ ...
449
+ def measured(self) -> SL4:
450
+ ...
451
+ def serialize(self) -> str:
452
+ ...
438
453
  class BetweenFactorSO3(NoiseModelFactor):
439
454
  def __getstate__(self) -> tuple:
440
455
  ...
@@ -537,11 +552,6 @@ class BlockJacobiPreconditionerParameters(PreconditionerParameters):
537
552
  def __init__(self) -> None:
538
553
  ...
539
554
  class Cal3:
540
- @staticmethod
541
- def Dim() -> int:
542
- """
543
- return DOF, dimensionality of tangent space
544
- """
545
555
  def K(self) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[3]], numpy.dtype[numpy.float64]]:
546
556
  """
547
557
  return calibration matrix K
@@ -561,10 +571,6 @@ class Cal3:
561
571
  """
562
572
  aspect ratio
563
573
  """
564
- def dim(self) -> int:
565
- """
566
- return DOF, dimensionality of tangent space
567
- """
568
574
  def equals(self, K: Cal3, tol: float) -> bool:
569
575
  """
570
576
  Check if equal up to specified tolerance.
@@ -712,6 +718,10 @@ class Cal3DS2_Base(Cal3):
712
718
  """
713
719
  def deserialize(self, serialized: str) -> None:
714
720
  ...
721
+ def k(self) -> numpy.ndarray[tuple[typing.Literal[4], typing.Literal[1]], numpy.dtype[numpy.float64]]:
722
+ """
723
+ return distortion parameter vector
724
+ """
715
725
  def k1(self) -> float:
716
726
  """
717
727
  First distortion coefficient.
@@ -720,6 +730,14 @@ class Cal3DS2_Base(Cal3):
720
730
  """
721
731
  Second distortion coefficient.
722
732
  """
733
+ def p1(self) -> float:
734
+ """
735
+ First tangential distortion coefficient.
736
+ """
737
+ def p2(self) -> float:
738
+ """
739
+ Second tangential distortion coefficient.
740
+ """
723
741
  def print(self, s: str = '') -> None:
724
742
  """
725
743
  print with optional string
@@ -748,6 +766,10 @@ class Cal3DS2_Base(Cal3):
748
766
 
749
767
  Returns: point in (distorted) image coordinates
750
768
  """
769
+ def vector(self) -> numpy.ndarray[tuple[typing.Literal[9], typing.Literal[1]], numpy.dtype[numpy.float64]]:
770
+ """
771
+ Return all parameters as a vector.
772
+ """
751
773
  class Cal3Fisheye(Cal3):
752
774
  def __getstate__(self) -> tuple:
753
775
  ...
@@ -976,6 +998,16 @@ class Cal3_S2(Cal3):
976
998
  Dcal: optional 2*5 Jacobian wrpt Cal3 parameters
977
999
  Dp: optional 2*2 Jacobian wrpt intrinsic coordinates
978
1000
 
1001
+ Returns: point in intrinsic coordinates
1002
+ """
1003
+ @typing.overload
1004
+ def calibrate(self, p: numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]:
1005
+ """
1006
+ Convert homogeneous image coordinates to intrinsic coordinates.
1007
+
1008
+ Args:
1009
+ p: point in image coordinates
1010
+
979
1011
  Returns: point in intrinsic coordinates
980
1012
  """
981
1013
  def deserialize(self, serialized: str) -> None:
@@ -1024,7 +1056,7 @@ class Cal3_S2(Cal3):
1024
1056
 
1025
1057
  Returns: point in image coordinates
1026
1058
  """
1027
- class Cal3_S2Stereo(Cal3):
1059
+ class Cal3_S2Stereo(Cal3_S2):
1028
1060
  @typing.overload
1029
1061
  def __init__(self) -> None:
1030
1062
  ...
@@ -1034,12 +1066,39 @@ class Cal3_S2Stereo(Cal3):
1034
1066
  @typing.overload
1035
1067
  def __init__(self, v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> None:
1036
1068
  ...
1069
+ @typing.overload
1070
+ def __init__(self, fov: float, w: int, h: int, b: float) -> None:
1071
+ ...
1037
1072
  def __repr__(self, s: str = '') -> str:
1038
1073
  ...
1039
1074
  def baseline(self) -> float:
1040
1075
  """
1041
1076
  return baseline
1042
1077
  """
1078
+ @typing.overload
1079
+ def calibrate(self, p: numpy.ndarray[tuple[typing.Literal[2], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[2], typing.Literal[1]], numpy.dtype[numpy.float64]]:
1080
+ """
1081
+ Convert image coordinates uv to intrinsic coordinates xy.
1082
+
1083
+ Args:
1084
+ p: point in image coordinates
1085
+ Dcal: optional 2*6 Jacobian wrpt Cal3_S2Stereo parameters
1086
+ Dp: optional 2*2 Jacobian wrpt intrinsic coordinates
1087
+
1088
+ Returns: point in intrinsic coordinates
1089
+ """
1090
+ @typing.overload
1091
+ def calibrate(self, p: numpy.ndarray[tuple[typing.Literal[2], typing.Literal[1]], numpy.dtype[numpy.float64]], Dcal: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], Dp: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[2], typing.Literal[1]], numpy.dtype[numpy.float64]]:
1092
+ """
1093
+ Convert image coordinates uv to intrinsic coordinates xy.
1094
+
1095
+ Args:
1096
+ p: point in image coordinates
1097
+ Dcal: optional 2*6 Jacobian wrpt Cal3_S2Stereo parameters
1098
+ Dp: optional 2*2 Jacobian wrpt intrinsic coordinates
1099
+
1100
+ Returns: point in intrinsic coordinates
1101
+ """
1043
1102
  def equals(self, other: Cal3_S2Stereo, tol: float) -> bool:
1044
1103
  """
1045
1104
  Check if equal up to specified tolerance.
@@ -1056,6 +1115,28 @@ class Cal3_S2Stereo(Cal3):
1056
1115
  """
1057
1116
  Given 6-dim tangent vector, create new calibration.
1058
1117
  """
1118
+ @typing.overload
1119
+ def uncalibrate(self, p: numpy.ndarray[tuple[typing.Literal[2], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[2], typing.Literal[1]], numpy.dtype[numpy.float64]]:
1120
+ """
1121
+ Convert intrinsic coordinates xy to image coordinates uv, fixed derivaitves.
1122
+
1123
+ Args:
1124
+ p: point in intrinsic coordinates
1125
+
1126
+ Returns: point in image coordinates
1127
+ """
1128
+ @typing.overload
1129
+ def uncalibrate(self, p: numpy.ndarray[tuple[typing.Literal[2], typing.Literal[1]], numpy.dtype[numpy.float64]], Dcal: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], Dp: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[2], typing.Literal[1]], numpy.dtype[numpy.float64]]:
1130
+ """
1131
+ Convert intrinsic coordinates xy to image coordinates uv, fixed derivaitves.
1132
+
1133
+ Args:
1134
+ p: point in intrinsic coordinates
1135
+ Dcal: optional 2*6 Jacobian wrpt Cal3_S2Stereo parameters
1136
+ Dp: optional 2*2 Jacobian wrpt intrinsic coordinates
1137
+
1138
+ Returns: point in image coordinates
1139
+ """
1059
1140
  def vector(self) -> numpy.ndarray[tuple[typing.Literal[6], typing.Literal[1]], numpy.dtype[numpy.float64]]:
1060
1141
  """
1061
1142
  vectorized form (column-wise)
@@ -1847,9 +1928,7 @@ class CombinedImuFactor(NoiseModelFactor):
1847
1928
  def evaluateError(self, pose_i: Pose3, vel_i: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], pose_j: Pose3, vel_j: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], bias_i: imuBias.ConstantBias, bias_j: imuBias.ConstantBias) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
1848
1929
  ...
1849
1930
  def preintegratedMeasurements(self) -> PreintegratedCombinedMeasurements:
1850
- """
1851
- Access the preintegrated measurements.
1852
- """
1931
+ ...
1853
1932
  def serialize(self) -> str:
1854
1933
  ...
1855
1934
  class ComponentDerivativeFactorChebyshev1Basis(NoiseModelFactor):
@@ -2864,6 +2943,21 @@ class DiscreteMarginals:
2864
2943
  """
2865
2944
  def print(self, s: str = '', keyFormatter: typing.Callable[[int], str] = ...) -> None:
2866
2945
  ...
2946
+ class DiscreteScenario(Scenario):
2947
+ @staticmethod
2948
+ def FromCSV(csv_filepath: str) -> DiscreteScenario:
2949
+ """
2950
+ Named constructor to create a scenario from a CSV file.
2951
+
2952
+ The CSV file should contain a header row followed by data rows. All timestamps will be normalized so that the first timestamp in the file corresponds to t=0 for the scenario. Expected CSV format (16 columns): timestamp,px,py,pz,qw,qx,qy,qz,vx,vy,vz,omegax,omegay,omegaz,ax,ay,az
2953
+
2954
+ Args:
2955
+ csv_filepath: Path to the CSV file.
2956
+
2957
+ Returns: A constructed DiscreteScenario.
2958
+ """
2959
+ def __init__(self, poses: dict[float, Pose3], angularVelocities_b: dict[float, numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]], velocities_n: dict[float, numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]], accelerations_n: dict[float, numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]]) -> None:
2960
+ ...
2867
2961
  class DiscreteSearch:
2868
2962
  @staticmethod
2869
2963
  def FromFactorGraph(factorGraph: DiscreteFactorGraph, ordering: Ordering, buildJunctionTree: bool = False) -> DiscreteSearch:
@@ -3390,6 +3484,15 @@ class ExtendedKalmanFilterRot3:
3390
3484
  ...
3391
3485
  def update(self, measurementFactor: NoiseModelFactor) -> Rot3:
3392
3486
  ...
3487
+ class ExtendedKalmanFilterSL4:
3488
+ def Density(self) -> JacobianFactor:
3489
+ ...
3490
+ def __init__(self, key_initial: int, x_initial: SL4, P_initial: noiseModel.Gaussian) -> None:
3491
+ ...
3492
+ def predict(self, motionFactor: NoiseModelFactor) -> SL4:
3493
+ ...
3494
+ def update(self, measurementFactor: NoiseModelFactor) -> SL4:
3495
+ ...
3393
3496
  class ExtendedKalmanFilterSimilarity2:
3394
3497
  def Density(self) -> JacobianFactor:
3395
3498
  ...
@@ -3550,6 +3653,15 @@ class FourierBasis:
3550
3653
  @staticmethod
3551
3654
  def WeightMatrix(N: int, x: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]:
3552
3655
  ...
3656
+ class FrobeniusBetweenFactorGal3(NoiseModelFactor):
3657
+ @typing.overload
3658
+ def __init__(self, j1: int, j2: int, T12: Gal3) -> None:
3659
+ ...
3660
+ @typing.overload
3661
+ def __init__(self, key1: int, key2: int, T12: Gal3, model: noiseModel.Base) -> None:
3662
+ ...
3663
+ def evaluateError(self, T1: Gal3, T2: Gal3) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3664
+ ...
3553
3665
  class FrobeniusBetweenFactorPose2(NoiseModelFactor):
3554
3666
  @typing.overload
3555
3667
  def __init__(self, j1: int, j2: int, T12: Pose2) -> None:
@@ -3604,6 +3716,33 @@ class FrobeniusBetweenFactorSO4(NoiseModelFactor):
3604
3716
  ...
3605
3717
  def evaluateError(self, T1: SO4, T2: SO4) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3606
3718
  ...
3719
+ class FrobeniusBetweenFactorSimilarity2(NoiseModelFactor):
3720
+ @typing.overload
3721
+ def __init__(self, j1: int, j2: int, T12: Similarity2) -> None:
3722
+ ...
3723
+ @typing.overload
3724
+ def __init__(self, key1: int, key2: int, T12: Similarity2, model: noiseModel.Base) -> None:
3725
+ ...
3726
+ def evaluateError(self, T1: Similarity2, T2: Similarity2) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3727
+ ...
3728
+ class FrobeniusBetweenFactorSimilarity3(NoiseModelFactor):
3729
+ @typing.overload
3730
+ def __init__(self, j1: int, j2: int, T12: Similarity3) -> None:
3731
+ ...
3732
+ @typing.overload
3733
+ def __init__(self, key1: int, key2: int, T12: Similarity3, model: noiseModel.Base) -> None:
3734
+ ...
3735
+ def evaluateError(self, T1: Similarity3, T2: Similarity3) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3736
+ ...
3737
+ class FrobeniusFactorGal3(NoiseModelFactor):
3738
+ @typing.overload
3739
+ def __init__(self, key1: int, key2: int) -> None:
3740
+ ...
3741
+ @typing.overload
3742
+ def __init__(self, j1: int, j2: int, model: noiseModel.Base) -> None:
3743
+ ...
3744
+ def evaluateError(self, T1: Gal3, T2: Gal3) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3745
+ ...
3607
3746
  class FrobeniusFactorPose2(NoiseModelFactor):
3608
3747
  @typing.overload
3609
3748
  def __init__(self, key1: int, key2: int) -> None:
@@ -3658,6 +3797,29 @@ class FrobeniusFactorSO4(NoiseModelFactor):
3658
3797
  ...
3659
3798
  def evaluateError(self, T1: SO4, T2: SO4) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3660
3799
  ...
3800
+ class FrobeniusFactorSimilarity2(NoiseModelFactor):
3801
+ @typing.overload
3802
+ def __init__(self, key1: int, key2: int) -> None:
3803
+ ...
3804
+ @typing.overload
3805
+ def __init__(self, j1: int, j2: int, model: noiseModel.Base) -> None:
3806
+ ...
3807
+ def evaluateError(self, T1: Similarity2, T2: Similarity2) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3808
+ ...
3809
+ class FrobeniusFactorSimilarity3(NoiseModelFactor):
3810
+ @typing.overload
3811
+ def __init__(self, key1: int, key2: int) -> None:
3812
+ ...
3813
+ @typing.overload
3814
+ def __init__(self, j1: int, j2: int, model: noiseModel.Base) -> None:
3815
+ ...
3816
+ def evaluateError(self, T1: Similarity3, T2: Similarity3) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3817
+ ...
3818
+ class FrobeniusPriorGal3(NoiseModelFactor):
3819
+ def __init__(self, j: int, M: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], model: noiseModel.Base) -> None:
3820
+ ...
3821
+ def evaluateError(self, g: Gal3) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3822
+ ...
3661
3823
  class FrobeniusPriorPose2(NoiseModelFactor):
3662
3824
  def __init__(self, j: int, M: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], model: noiseModel.Base) -> None:
3663
3825
  ...
@@ -3688,6 +3850,16 @@ class FrobeniusPriorSO4(NoiseModelFactor):
3688
3850
  ...
3689
3851
  def evaluateError(self, g: SO4) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3690
3852
  ...
3853
+ class FrobeniusPriorSimilarity2(NoiseModelFactor):
3854
+ def __init__(self, j: int, M: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], model: noiseModel.Base) -> None:
3855
+ ...
3856
+ def evaluateError(self, g: Similarity2) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3857
+ ...
3858
+ class FrobeniusPriorSimilarity3(NoiseModelFactor):
3859
+ def __init__(self, j: int, M: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], model: noiseModel.Base) -> None:
3860
+ ...
3861
+ def evaluateError(self, g: Similarity3) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
3862
+ ...
3691
3863
  class FundamentalMatrix:
3692
3864
  @staticmethod
3693
3865
  def Dim() -> int:
@@ -3891,6 +4063,87 @@ class GPSFactorArmCalib(NonlinearFactor):
3891
4063
  """
3892
4064
  def serialize(self) -> str:
3893
4065
  ...
4066
+ class Gal3:
4067
+ @staticmethod
4068
+ def Expmap(xi: numpy.ndarray[tuple[typing.Literal[10], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Gal3:
4069
+ """
4070
+ Exponential map at identity: tangent vector xi -> manifold element g.
4071
+ """
4072
+ @staticmethod
4073
+ def Identity() -> Gal3:
4074
+ """
4075
+ Return the identity element.
4076
+ """
4077
+ @staticmethod
4078
+ def Logmap(g: Gal3) -> numpy.ndarray[tuple[typing.Literal[10], typing.Literal[1]], numpy.dtype[numpy.float64]]:
4079
+ """
4080
+ Logarithmic map at identity: manifold element g -> tangent vector xi.
4081
+ """
4082
+ @typing.overload
4083
+ def __init__(self) -> None:
4084
+ ...
4085
+ @typing.overload
4086
+ def __init__(self, R: Rot3, r: numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]], v: numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]], t: float) -> None:
4087
+ ...
4088
+ @typing.overload
4089
+ def __init__(self, M: numpy.ndarray[tuple[typing.Literal[5], typing.Literal[5]], numpy.dtype[numpy.float64]]) -> None:
4090
+ ...
4091
+ def __mul__(self, arg0: Gal3) -> Gal3:
4092
+ ...
4093
+ def __repr__(self, s: str = '') -> str:
4094
+ ...
4095
+ def between(self, other: Gal3) -> Gal3:
4096
+ ...
4097
+ def compose(self, other: Gal3) -> Gal3:
4098
+ ...
4099
+ def equals(self, other: Gal3, tol: float) -> bool:
4100
+ """
4101
+ Check equality within tolerance.
4102
+ """
4103
+ def expmap(self, xi: numpy.ndarray[tuple[typing.Literal[10], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Gal3:
4104
+ ...
4105
+ def inverse(self) -> Gal3:
4106
+ """
4107
+ Return the inverse of this element.
4108
+ """
4109
+ def localCoordinates(self, g: Gal3) -> numpy.ndarray[tuple[typing.Literal[10], typing.Literal[1]], numpy.dtype[numpy.float64]]:
4110
+ """
4111
+ localCoordinates as required by manifold concept: finds tangent vector between *this and g
4112
+ """
4113
+ def logmap(self, g: Gal3) -> numpy.ndarray[tuple[typing.Literal[10], typing.Literal[1]], numpy.dtype[numpy.float64]]:
4114
+ """
4115
+ logmap as required by manifold concept Applies logarithmic map to group element that takes *this to g
4116
+ """
4117
+ def matrix(self) -> numpy.ndarray[tuple[typing.Literal[5], typing.Literal[5]], numpy.dtype[numpy.float64]]:
4118
+ """
4119
+ Return 5x5 homogeneous matrix representation.
4120
+ """
4121
+ def print(self, s: str = '') -> None:
4122
+ """
4123
+ Print with optional string prefix.
4124
+ """
4125
+ def retract(self, xi: numpy.ndarray[tuple[typing.Literal[10], typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Gal3:
4126
+ ...
4127
+ def rotation(self) -> Rot3:
4128
+ """
4129
+ Access rotation component (Rot3)
4130
+ """
4131
+ def time(self) -> float:
4132
+ """
4133
+ Access time component (double)
4134
+ """
4135
+ def translation(self) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]:
4136
+ """
4137
+ Access translation component (Point3)
4138
+ """
4139
+ def vec(self) -> numpy.ndarray[tuple[typing.Literal[25], typing.Literal[1]], numpy.dtype[numpy.float64]]:
4140
+ """
4141
+ Vectorize 5x5 matrix into a 25-dim vector.
4142
+ """
4143
+ def velocity(self) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[1]], numpy.dtype[numpy.float64]]:
4144
+ """
4145
+ Access velocity component (Vector3)
4146
+ """
3894
4147
  class GaussNewtonOptimizer(NonlinearOptimizer):
3895
4148
  @typing.overload
3896
4149
  def __init__(self, graph: NonlinearFactorGraph, initialValues: ...) -> None:
@@ -6723,6 +6976,8 @@ class ISAM2:
6723
6976
  ...
6724
6977
  def calculateEstimateRot3(self, key: int) -> Rot3:
6725
6978
  ...
6979
+ def calculateEstimateSL4(self, key: int) -> SL4:
6980
+ ...
6726
6981
  def calculateEstimateSimilarity2(self, key: int) -> Similarity2:
6727
6982
  ...
6728
6983
  def calculateEstimateSimilarity3(self, key: int) -> Similarity3:
@@ -7027,9 +7282,7 @@ class ImuFactor(NonlinearFactor):
7027
7282
  def evaluateError(self, pose_i: Pose3, vel_i: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], pose_j: Pose3, vel_j: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], bias: imuBias.ConstantBias) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
7028
7283
  ...
7029
7284
  def preintegratedMeasurements(self) -> PreintegratedImuMeasurements:
7030
- """
7031
- Access the preintegrated measurements.
7032
- """
7285
+ ...
7033
7286
  def serialize(self) -> str:
7034
7287
  ...
7035
7288
  class ImuFactor2(NonlinearFactor):
@@ -7048,9 +7301,7 @@ class ImuFactor2(NonlinearFactor):
7048
7301
  def evaluateError(self, state_i: NavState, state_j: NavState, bias_i: imuBias.ConstantBias) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
7049
7302
  ...
7050
7303
  def preintegratedMeasurements(self) -> PreintegratedImuMeasurements:
7051
- """
7052
- Access the preintegrated measurements.
7053
- """
7304
+ ...
7054
7305
  def serialize(self) -> str:
7055
7306
  ...
7056
7307
  class IncrementalFixedLagSmoother(FixedLagSmoother):
@@ -8396,6 +8647,11 @@ class NonlinearEquality2Rot3(NoiseModelFactor):
8396
8647
  ...
8397
8648
  def evaluateError(self, x1: Rot3, x2: Rot3) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
8398
8649
  ...
8650
+ class NonlinearEquality2SL4(NoiseModelFactor):
8651
+ def __init__(self, key1: int, key2: int, mu: float = 10000.0) -> None:
8652
+ ...
8653
+ def evaluateError(self, x1: SL4, x2: SL4) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
8654
+ ...
8399
8655
  class NonlinearEquality2SO3(NoiseModelFactor):
8400
8656
  def __init__(self, key1: int, key2: int, mu: float = 10000.0) -> None:
8401
8657
  ...
@@ -8621,6 +8877,21 @@ class NonlinearEqualityRot3(NoiseModelFactor):
8621
8877
  ...
8622
8878
  def serialize(self) -> str:
8623
8879
  ...
8880
+ class NonlinearEqualitySL4(NoiseModelFactor):
8881
+ def __getstate__(self) -> tuple:
8882
+ ...
8883
+ @typing.overload
8884
+ def __init__(self, j: int, feasible: SL4) -> None:
8885
+ ...
8886
+ @typing.overload
8887
+ def __init__(self, j: int, feasible: SL4, error_gain: float) -> None:
8888
+ ...
8889
+ def __setstate__(self, arg0: tuple) -> None:
8890
+ ...
8891
+ def deserialize(self, serialized: str) -> None:
8892
+ ...
8893
+ def serialize(self) -> str:
8894
+ ...
8624
8895
  class NonlinearEqualitySO3(NoiseModelFactor):
8625
8896
  def __getstate__(self) -> tuple:
8626
8897
  ...
@@ -8817,6 +9088,8 @@ class NonlinearFactorGraph:
8817
9088
  ...
8818
9089
  def addPriorRot3(self, key: int, prior: Rot3, noiseModel: noiseModel.Base) -> None:
8819
9090
  ...
9091
+ def addPriorSL4(self, key: int, prior: SL4, noiseModel: noiseModel.Base) -> None:
9092
+ ...
8820
9093
  def addPriorSO3(self, key: int, prior: SO3, noiseModel: noiseModel.Base) -> None:
8821
9094
  ...
8822
9095
  def addPriorSO4(self, key: int, prior: SO4, noiseModel: noiseModel.Base) -> None:
@@ -10501,7 +10774,9 @@ class Pose2:
10501
10774
  logmap with optional derivatives
10502
10775
  """
10503
10776
  def matrix(self) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[3]], numpy.dtype[numpy.float64]]:
10504
- ...
10777
+ """
10778
+ return transformation matrix
10779
+ """
10505
10780
  def print(self, s: str = '') -> None:
10506
10781
  """
10507
10782
  print with optional string
@@ -10760,7 +11035,7 @@ class Pose3:
10760
11035
  @typing.overload
10761
11036
  def inverse(self) -> Pose3:
10762
11037
  """
10763
- inverse transformation with derivatives
11038
+ inverse transformation
10764
11039
  """
10765
11040
  @typing.overload
10766
11041
  def inverse(self, H: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> Pose3:
@@ -11136,9 +11411,7 @@ class PreintegratedCombinedMeasurements:
11136
11411
  def deserialize(self, serialized: str) -> None:
11137
11412
  ...
11138
11413
  def equals(self, expected: PreintegratedCombinedMeasurements, tol: float) -> bool:
11139
- """
11140
- equals
11141
- """
11414
+ ...
11142
11415
  def integrateMeasurement(self, measuredAcc: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], measuredOmega: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], deltaT: float) -> None:
11143
11416
  ...
11144
11417
  def predict(self, state_i: NavState, bias: imuBias.ConstantBias) -> NavState:
@@ -11148,9 +11421,7 @@ class PreintegratedCombinedMeasurements:
11148
11421
  def print(self, s: str = 'Preintegrated Measurements:') -> None:
11149
11422
  ...
11150
11423
  def resetIntegration(self) -> None:
11151
- """
11152
- Re-initializePreintegratedCombinedMeasurements.
11153
- """
11424
+ ...
11154
11425
  def resetIntegrationAndSetBias(self, biasHat: imuBias.ConstantBias) -> None:
11155
11426
  ...
11156
11427
  def serialize(self) -> str:
@@ -11183,27 +11454,19 @@ class PreintegratedImuMeasurements:
11183
11454
  def deserialize(self, serialized: str) -> None:
11184
11455
  ...
11185
11456
  def equals(self, expected: PreintegratedImuMeasurements, tol: float) -> bool:
11186
- """
11187
- equals
11188
- """
11457
+ ...
11189
11458
  def integrateMeasurement(self, measuredAcc: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], measuredOmega: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], deltaT: float) -> None:
11190
11459
  ...
11191
11460
  def predict(self, state_i: NavState, bias: imuBias.ConstantBias) -> NavState:
11192
11461
  ...
11193
11462
  def preintMeasCov(self) -> numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]:
11194
- """
11195
- Return pre-integrated measurement covariance.
11196
- """
11463
+ ...
11197
11464
  def preintegrated(self) -> numpy.ndarray[tuple[typing.Literal[9], typing.Literal[1]], numpy.dtype[numpy.float64]]:
11198
11465
  ...
11199
11466
  def print(self, s: str = '') -> None:
11200
- """
11201
- print
11202
- """
11467
+ ...
11203
11468
  def resetIntegration(self) -> None:
11204
- """
11205
- Re-initializePreintegratedImuMeasurements.
11206
- """
11469
+ ...
11207
11470
  def resetIntegrationAndSetBias(self, biasHat: imuBias.ConstantBias) -> None:
11208
11471
  ...
11209
11472
  def serialize(self) -> str:
@@ -11315,8 +11578,6 @@ class PreintegrationCombinedParams(PreintegrationParams):
11315
11578
  ...
11316
11579
  def getBiasAccCovariance(self) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[3]], numpy.dtype[numpy.float64]]:
11317
11580
  ...
11318
- def getBiasAccOmegaInit(self) -> numpy.ndarray[tuple[typing.Literal[6], typing.Literal[6]], numpy.dtype[numpy.float64]]:
11319
- ...
11320
11581
  def getBiasOmegaCovariance(self) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[3]], numpy.dtype[numpy.float64]]:
11321
11582
  ...
11322
11583
  def print(self, s: str = '') -> None:
@@ -11325,8 +11586,6 @@ class PreintegrationCombinedParams(PreintegrationParams):
11325
11586
  ...
11326
11587
  def setBiasAccCovariance(self, cov: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> None:
11327
11588
  ...
11328
- def setBiasAccOmegaInit(self, cov: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> None:
11329
- ...
11330
11589
  def setBiasOmegaCovariance(self, cov: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> None:
11331
11590
  ...
11332
11591
  class PreintegrationParams(PreintegratedRotationParams):
@@ -11622,6 +11881,19 @@ class PriorFactorRot3(NoiseModelFactor):
11622
11881
  ...
11623
11882
  def serialize(self) -> str:
11624
11883
  ...
11884
+ class PriorFactorSL4(NoiseModelFactor):
11885
+ def __getstate__(self) -> tuple:
11886
+ ...
11887
+ def __init__(self, key: int, prior: SL4, noiseModel: noiseModel.Base) -> None:
11888
+ ...
11889
+ def __setstate__(self, arg0: tuple) -> None:
11890
+ ...
11891
+ def deserialize(self, serialized: str) -> None:
11892
+ ...
11893
+ def prior(self) -> SL4:
11894
+ ...
11895
+ def serialize(self) -> str:
11896
+ ...
11625
11897
  class PriorFactorSO3(NoiseModelFactor):
11626
11898
  def __getstate__(self) -> tuple:
11627
11899
  ...
@@ -12397,6 +12669,86 @@ class RotateFactor(NoiseModelFactor):
12397
12669
  """
12398
12670
  print
12399
12671
  """
12672
+ class SL4:
12673
+ @staticmethod
12674
+ def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> SL4:
12675
+ ...
12676
+ @staticmethod
12677
+ def Hat(xi: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[4], typing.Literal[4]], numpy.dtype[numpy.float64]]:
12678
+ ...
12679
+ @staticmethod
12680
+ def Identity() -> SL4:
12681
+ """
12682
+ identity for group operation
12683
+ """
12684
+ @staticmethod
12685
+ def Logmap(g: SL4) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
12686
+ ...
12687
+ @staticmethod
12688
+ def Vee(X: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]:
12689
+ ...
12690
+ def __getstate__(self) -> tuple:
12691
+ ...
12692
+ @typing.overload
12693
+ def __init__(self) -> None:
12694
+ ...
12695
+ @typing.overload
12696
+ def __init__(self, T: numpy.ndarray[tuple[typing.Literal[4], typing.Literal[4]], numpy.dtype[numpy.float64]]) -> None:
12697
+ ...
12698
+ def __mul__(self, arg0: SL4) -> SL4:
12699
+ ...
12700
+ def __repr__(self, s: str = '') -> str:
12701
+ ...
12702
+ def __setstate__(self, arg0: tuple) -> None:
12703
+ ...
12704
+ @typing.overload
12705
+ def between(self, sl4: SL4) -> SL4:
12706
+ ...
12707
+ @typing.overload
12708
+ def between(self, sl4: SL4, H1: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], H2: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> SL4:
12709
+ ...
12710
+ @typing.overload
12711
+ def compose(self, sl4: SL4) -> SL4:
12712
+ ...
12713
+ @typing.overload
12714
+ def compose(self, sl4: SL4, H1: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], H2: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> SL4:
12715
+ ...
12716
+ def deserialize(self, serialized: str) -> None:
12717
+ ...
12718
+ def equals(self, sl4: SL4, tol: float) -> bool:
12719
+ """
12720
+ assert equality up to a tolerance
12721
+ """
12722
+ def expmap(self, v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> SL4:
12723
+ """
12724
+ expmap as required by manifold concept Applies exponential map to v and composes with *this
12725
+ """
12726
+ @typing.overload
12727
+ def inverse(self) -> SL4:
12728
+ """
12729
+ inverse transformation
12730
+ """
12731
+ @typing.overload
12732
+ def inverse(self, H: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> SL4:
12733
+ ...
12734
+ def localCoordinates(self, g: SL4, Horigin: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], Hp2: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> numpy.ndarray[tuple[typing.Literal[15], typing.Literal[1]], numpy.dtype[numpy.float64]]:
12735
+ ...
12736
+ def logmap(self, g: SL4) -> numpy.ndarray[tuple[typing.Literal[15], typing.Literal[1]], numpy.dtype[numpy.float64]]:
12737
+ """
12738
+ logmap as required by manifold concept Applies logarithmic map to group element that takes *this to g
12739
+ """
12740
+ def matrix(self) -> numpy.ndarray[tuple[typing.Literal[4], typing.Literal[4]], numpy.dtype[numpy.float64]]:
12741
+ """
12742
+ convert to 4*4 matrix
12743
+ """
12744
+ def print(self, s: str = '') -> None:
12745
+ """
12746
+ print with optional string
12747
+ """
12748
+ def retract(self, v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], Horigin: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]], Hv: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> SL4:
12749
+ ...
12750
+ def serialize(self) -> str:
12751
+ ...
12400
12752
  class SO3:
12401
12753
  @staticmethod
12402
12754
  def AxisAngle(axis: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]], theta: float) -> SO3:
@@ -13159,6 +13511,11 @@ class Similarity2:
13159
13511
  Each pair is of the form (aTi, bTi). Given a list of pairs in frame a, and a list of pairs in frame b, Align() will compute the best-fit Similarity2 aSb transformation to align them. First, the rotation aRb will be computed as the average (Karcher mean) of many estimates aRb (from each pair). Afterwards, the scale factor will be computed using the algorithm described here: http://www5.informatik.uni-erlangen.de/Forschung/Publikationen/2005/Zinsser05-PSR.pdf
13160
13512
  """
13161
13513
  @staticmethod
13514
+ def Dim() -> int:
13515
+ """
13516
+ Dimensionality of tangent space = 4 DOF - used to autodetect sizes.
13517
+ """
13518
+ @staticmethod
13162
13519
  def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Similarity2:
13163
13520
  """
13164
13521
  Exponential map at the identity.
@@ -13169,6 +13526,11 @@ class Similarity2:
13169
13526
  Hat maps from tangent vector to Lie algebra.
13170
13527
  """
13171
13528
  @staticmethod
13529
+ def Identity() -> Similarity2:
13530
+ """
13531
+ Return an identity transform.
13532
+ """
13533
+ @staticmethod
13172
13534
  def Logmap(S: Similarity2) -> numpy.ndarray[tuple[typing.Literal[4], typing.Literal[1]], numpy.dtype[numpy.float64]]:
13173
13535
  """
13174
13536
  Log map at the identity$ [t_x, t_y, \\delta, \\lambda] $.
@@ -13193,8 +13555,18 @@ class Similarity2:
13193
13555
  @typing.overload
13194
13556
  def __init__(self, T: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> None:
13195
13557
  ...
13558
+ def __mul__(self, arg0: Similarity2) -> Similarity2:
13559
+ ...
13196
13560
  def __repr__(self, s: str = '') -> str:
13197
13561
  ...
13562
+ def between(self, other: Similarity2) -> Similarity2:
13563
+ ...
13564
+ def compose(self, other: Similarity2) -> Similarity2:
13565
+ ...
13566
+ def dim(self) -> int:
13567
+ """
13568
+ Dimensionality of tangent space = 4 DOF.
13569
+ """
13198
13570
  def equals(self, sim: Similarity2, tol: float) -> bool:
13199
13571
  """
13200
13572
  Compare with tolerance.
@@ -13203,18 +13575,28 @@ class Similarity2:
13203
13575
  """
13204
13576
  expmap as required by manifold concept Applies exponential map to v and composes with *this
13205
13577
  """
13578
+ def inverse(self) -> Similarity2:
13579
+ """
13580
+ Return the inverse.
13581
+ """
13582
+ def localCoordinates(self, t2: Similarity2) -> numpy.ndarray[tuple[typing.Literal[4], typing.Literal[1]], numpy.dtype[numpy.float64]]:
13583
+ ...
13206
13584
  def logmap(self, g: Similarity2) -> numpy.ndarray[tuple[typing.Literal[4], typing.Literal[1]], numpy.dtype[numpy.float64]]:
13207
13585
  """
13208
13586
  logmap as required by manifold concept Applies logarithmic map to group element that takes *this to g
13209
13587
  """
13210
13588
  def matrix(self) -> numpy.ndarray[tuple[typing.Literal[3], typing.Literal[3]], numpy.dtype[numpy.float64]]:
13211
13589
  """
13212
- Calculate 4*4 matrix group equivalent.
13590
+ Calculate 3*3 matrix group equivalent.
13213
13591
  """
13214
13592
  def print(self, s: str = '') -> None:
13215
13593
  """
13216
13594
  Print with optional string.
13217
13595
  """
13596
+ def retract(self, v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Similarity2:
13597
+ """
13598
+ retract as required by manifold concept: applies v at *this
13599
+ """
13218
13600
  def rotation(self) -> Rot2:
13219
13601
  """
13220
13602
  Return a GTSAM rotation.
@@ -13255,6 +13637,11 @@ class Similarity3:
13255
13637
  Each pair is of the form (aTi, bTi). Given a list of pairs in frame a, and a list of pairs in frame b, Align() will compute the best-fit Similarity3 aSb transformation to align them. First, the rotation aRb will be computed as the average (Karcher mean) of many estimates aRb (from each pair). Afterwards, the scale factor will be computed using the algorithm described here: http://www5.informatik.uni-erlangen.de/Forschung/Publikationen/2005/Zinsser05-PSR.pdf
13256
13638
  """
13257
13639
  @staticmethod
13640
+ def Dim() -> int:
13641
+ """
13642
+ Dimensionality of tangent space = 7 DOF - used to autodetect sizes.
13643
+ """
13644
+ @staticmethod
13258
13645
  def Expmap(v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Similarity3:
13259
13646
  """
13260
13647
  Exponential map at the identity.
@@ -13270,6 +13657,11 @@ class Similarity3:
13270
13657
  Returns: 4*4 element of Lie algebra that can be exponentiated
13271
13658
  """
13272
13659
  @staticmethod
13660
+ def Identity() -> Similarity3:
13661
+ """
13662
+ Return an identity transform.
13663
+ """
13664
+ @staticmethod
13273
13665
  def Logmap(s: Similarity3) -> numpy.ndarray[tuple[typing.Literal[7], typing.Literal[1]], numpy.dtype[numpy.float64]]:
13274
13666
  """
13275
13667
  Log map at the identity$ [R_x,R_y,R_z, t_x, t_y, t_z, \\lambda] $.
@@ -13294,8 +13686,18 @@ class Similarity3:
13294
13686
  @typing.overload
13295
13687
  def __init__(self, T: numpy.ndarray[tuple[M, N], numpy.dtype[numpy.float64]]) -> None:
13296
13688
  ...
13689
+ def __mul__(self, arg0: Similarity3) -> Similarity3:
13690
+ ...
13297
13691
  def __repr__(self, s: str = '') -> str:
13298
13692
  ...
13693
+ def between(self, other: Similarity3) -> Similarity3:
13694
+ ...
13695
+ def compose(self, other: Similarity3) -> Similarity3:
13696
+ ...
13697
+ def dim(self) -> int:
13698
+ """
13699
+ Dimensionality of tangent space = 7 DOF.
13700
+ """
13299
13701
  def equals(self, sim: Similarity3, tol: float) -> bool:
13300
13702
  """
13301
13703
  Compare with tolerance.
@@ -13304,6 +13706,12 @@ class Similarity3:
13304
13706
  """
13305
13707
  expmap as required by manifold concept Applies exponential map to v and composes with *this
13306
13708
  """
13709
+ def inverse(self) -> Similarity3:
13710
+ """
13711
+ Return the inverse.
13712
+ """
13713
+ def localCoordinates(self, t2: Similarity3) -> numpy.ndarray[tuple[typing.Literal[7], typing.Literal[1]], numpy.dtype[numpy.float64]]:
13714
+ ...
13307
13715
  def logmap(self, g: Similarity3) -> numpy.ndarray[tuple[typing.Literal[7], typing.Literal[1]], numpy.dtype[numpy.float64]]:
13308
13716
  """
13309
13717
  logmap as required by manifold concept Applies logarithmic map to group element that takes *this to g
@@ -13316,6 +13724,10 @@ class Similarity3:
13316
13724
  """
13317
13725
  Print with optional string.
13318
13726
  """
13727
+ def retract(self, v: numpy.ndarray[tuple[M, typing.Literal[1]], numpy.dtype[numpy.float64]]) -> Similarity3:
13728
+ """
13729
+ retract as required by manifold concept: applies v at *this
13730
+ """
13319
13731
  def rotation(self) -> Rot3:
13320
13732
  """
13321
13733
  Return a GTSAM rotation.
@@ -15671,6 +16083,8 @@ class Values:
15671
16083
  ...
15672
16084
  def atRot3(self, j: int) -> Rot3:
15673
16085
  ...
16086
+ def atSL4(self, j: int) -> SL4:
16087
+ ...
15674
16088
  def atSO3(self, j: int) -> SO3:
15675
16089
  ...
15676
16090
  def atSO4(self, j: int) -> SO4:
@@ -15748,6 +16162,9 @@ class Values:
15748
16162
  def insert(self, j: int, P: SOn) -> None:
15749
16163
  ...
15750
16164
  @typing.overload
16165
+ def insert(self, j: int, H: SL4) -> None:
16166
+ ...
16167
+ @typing.overload
15751
16168
  def insert(self, j: int, rot3: Rot3) -> None:
15752
16169
  ...
15753
16170
  @typing.overload
@@ -15876,6 +16293,9 @@ class Values:
15876
16293
  def insert_or_assign(self, j: int, P: SOn) -> None:
15877
16294
  ...
15878
16295
  @typing.overload
16296
+ def insert_or_assign(self, j: int, H: SL4) -> None:
16297
+ ...
16298
+ @typing.overload
15879
16299
  def insert_or_assign(self, j: int, rot3: Rot3) -> None:
15880
16300
  ...
15881
16301
  @typing.overload
@@ -16024,6 +16444,9 @@ class Values:
16024
16444
  def update(self, j: int, P: SOn) -> None:
16025
16445
  ...
16026
16446
  @typing.overload
16447
+ def update(self, j: int, H: SL4) -> None:
16448
+ ...
16449
+ @typing.overload
16027
16450
  def update(self, j: int, rot3: Rot3) -> None:
16028
16451
  ...
16029
16452
  @typing.overload