Class SlamEngine

Class Documentation

class SlamEngine

SLAM engine for processing sensor data using specified backend.

This class provides an interface for running SLAM (Simultaneous Localization and Mapping) algorithms on lidar and other sensor data.

See also

LidarScan

See also

SlamConfig

See also

SlamBackend

Note

Only the “kiss” backend is supported at this time.

Public Functions

SlamEngine(const std::vector<std::shared_ptr<ouster::sdk::core::SensorInfo>> &infos, const SlamConfig &config)

Constructs the SlamEngine.

Parameters:
  • infos[in] – A vector of shared pointers to SensorInfo objects.

  • config[in] – The SlamConfig object containing configuration parameters for the SLAM algorithm.

Throws:

std::runtime_error – If the specified backend is not supported.

void update(ouster::sdk::core::LidarScanSet &scans)

Let SlamEngine process LidarScans to estimate the new state (pose).

This function processes a set of LidarScans provided as vector of shared pointers of LidarScan, The engine returns these LidarScans with their per-column pose corrected.

Parameters:

scans[inout] – A vector of shared pointers to LidarScan objects to be processed.

ouster::sdk::core::PointCloudXYZf get_point_cloud() const

Retrieves the current point cloud from the SLAM engine.

This method returns a point cloud representation as a PointCloudXYZf object, which contains the latest set of 3D points generated by the SLAM engine.

Returns:

A PointCloudXYZf object containing the current point cloud data.