Class DeskewMethod

Inheritance Relationships

Derived Types

Class Documentation

class DeskewMethod

Abstract interface for LiDAR frame deskewing strategies.

A DeskewMethod encapsulates the logic required to correct (deskew) the frame poses for each LidarFrame within the FrameSet.

Typical usage pattern:

  • Construct a concrete deskew method passing SensorInfo per-sensor.

  • Update set per-sensor timestamp offsets.

  • Invoke update() with a FrameSet to apply deskewing in-place.

Subclassed by ouster::sdk::mapping::ConstantVelocityDeskewMethod, ouster::sdk::mapping::InertialIntegrationImuDeskewMethod

Public Functions

DeskewMethod(const std::vector<std::shared_ptr<ouster::sdk::core::SensorInfo>> &infos, const core::Matrix4dR &initial_pose = core::Matrix4dR::Identity())

Construct a deskew method from sensor info structures.

Parameters:
  • infos[in] A vector of shared pointers to SensorInfo objects, one per sensor.

  • initial_pose[in] Pose used to anchor the first frame before a motion model has been established. Defaults to identity.

virtual ~DeskewMethod() = default

Virtual destructor.

virtual void update(ouster::sdk::core::FrameSet &frame_set) = 0

Perform in-place deskewing of all frames in the set.

Parameters:

frame_set[inout] A FrameSet containing one or more temporally adjacent LiDAR frames. Implementations adjust the LidarFrame poses based on an assumed motion model to reduce distortion caused by sensor movement during LidarFrame acquisition.

inline virtual void set_last_pose(int64_t timestamp_ns, const core::Matrix4dR &pose)

Set the last pose computed from SLAM.

Parameters:
  • timestamp_ns[in] A timestamp corresponding to the last pose.

  • pose[in] A Matrix4dR object corresponding to the last pose.

inline virtual void finalize_after_registration(ouster::sdk::core::FrameSet &frame_set, int64_t anchor_timestamp_ns, const core::Matrix4dR &corrected_anchor_pose)

Finalize deskewing after registration has corrected the frame.

Implementations may use the post-registration anchor to refine current frame poses before saving state for the next update. The default behavior preserves the previous feedback path.

Parameters:
  • frame_set[inout] The lidar frame set to finalize.

  • anchor_timestamp_ns[in] Timestamp of the anchor point in nanoseconds.

  • corrected_anchor_pose[in] Post-registration corrected pose of the anchor.