Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

PoseTranslationPrior

Open In Colab

PoseTranslationPrior<POSE> is a unary factor that applies a prior constraint only to the translation component of a POSE variable (e.g., Pose2 or Pose3). It ignores the rotation component of the pose variable during error calculation. The error is calculated as the difference between the translation component of the pose variable and the measured prior translation, expressed in the tangent space (which is typically just vector subtraction for Point2 or Point3).

This is useful when you have information about the absolute position of a pose but little or no information about its orientation (e.g., GPS measurement).

Creating a PoseTranslationPrior

Provide the key of the pose variable, the measured prior translation (Point3 for Pose3, Point2 for Pose2), and a noise model defined on the translation space dimension (e.g., 3 for Point3).

PoseTranslationPrior: PoseTranslationPrior  keys = { x0 }
isotropic dim=3 sigma=0.5
Measured Translation[
	10;
	20;
	5
]

Evaluating the Error

The error depends only on the translation part of the Pose3 value in the Values object.

Error with correct translation: 0.0 (Should be near zero)
Error with incorrect translation: 0.11999999999999986 (Should be non-zero)
Error with different rotation: 0.11999999999999986 (Should reflect Jacobian change)
Unwhitened error with different rotation: [ 0.2 -0.1  0.1] (Should be [0.2, -0.1, 0.1])