Struct PoseToPoseConstraint
Defined in File pose_optimizer_constraint.h
Inheritance Relationships
Base Type
public ouster::sdk::mapping::Constraint(Class Constraint)
Struct Documentation
-
struct PoseToPoseConstraint : public ouster::sdk::mapping::Constraint
Pose-to-pose constraint - enforces relative transform between two poses.
Public Functions
-
inline PoseToPoseConstraint()
Default constructor.
-
inline PoseToPoseConstraint(uint64_t timestamp1, uint64_t timestamp2, const Eigen::Matrix4d &relative_pose = Eigen::Matrix4d::Identity(), double rotation_weight = 1.0, const Eigen::Array3d &translation_weights = Eigen::Array3d::Ones())
Construct a relative pose-to-pose constraint.
- Parameters:
timestamp1[in] – Timestamp of the first pose (nanoseconds).
timestamp2[in] – Timestamp of the second pose (nanoseconds).
relative_pose[in] – Expected relative transform from pose1 to pose2. Use identity to let the optimizer auto-estimate it via ICP.
rotation_weight[in] – Optional rotation weight.
translation_weights[in] – Optional translation weights.
-
inline virtual ConstraintType get_type() const override
Get the constraint type.
- Returns:
ConstraintType The constraint category.
-
inline virtual std::unique_ptr<Constraint> clone() const override
Clone this PoseToPoseConstraint, preserving its constraint id.
- Returns:
std::unique_ptr<Constraint> Deep copy of this constraint.
Public Members
-
uint64_t timestamp1
Timestamp of the first pose (nanoseconds).
-
uint64_t timestamp2
Timestamp of the second pose (nanoseconds).
-
Eigen::Matrix4d relative_pose = Eigen::Matrix4d::Identity()
Expected relative transform from pose1 to pose2 (4x4 SE3 matrix).
-
double rotation_weight = 1.0
Weight for the rotational component of the relative constraint.
-
inline PoseToPoseConstraint()