pose_optimizer_node.h

Class

class Node

Represents a trajectory node, including its pose and downsampled point cloud.

Public Functions

Node(uint64_t ts, const ouster::impl::PoseH &pose, const Eigen::Array<double, Eigen::Dynamic, 3> &pts = Eigen::Array<double, 0, 3, 0>())

Constructor for a trajectory node.

Parameters:
  • ts[in] Timestamp of the node.

  • pose[in] Homogeneous pose of the node.

  • pts[in] Downsampled point cloud.

Node(uint64_t ts, const Eigen::Quaterniond &rotation, const Eigen::Vector3d &position, const Eigen::Array<double, Eigen::Dynamic, 3> &pts = Eigen::Array<double, 0, 3, 0>())

Constructor for a trajectory node.

Parameters:
  • ts[in] Timestamp of the node.

  • rotation[in] Rotational component of the pose.

  • position[in] Translational component of the pose.

  • pts[in] Downsampled point cloud.

void update_pose()

Updates the pose of the node.

This function updates the homogeneous pose matrix of the node based on the quaternion and position vector, which are refined by the pose optimization iteration.

const ouster::impl::PoseH &get_pose() const

Retrieves the pose of the node.

Returns:

The homogeneous pose of the node.

bool operator<(const Node &other) const

Compares nodes by their timestamps.

Parameters:

other[in] The other node to compare with.

Returns:

True if this node’s timestamp is less than the other node’s timestamp, false otherwise.

Public Members

EIGEN_MAKE_ALIGNED_OPERATOR_NEW uint64_t ts

Timestamp of the node.

Eigen::Array<double, Eigen::Dynamic, 3> pts

Downsampled point cloud.

Eigen::Quaterniond rotation

Rotational component of the pose.

Eigen::Vector3d position

Translational component of the pose.

Structs

struct NodePtrComparator

Comparator for shared pointers to Node.