Struct SLAMOptions

Struct Documentation

struct SLAMOptions

A struct to configure SLAMAlign.

Public Members

bool trustPose = false

Use the unmodified Pose of new Scans. If false, apply the relative refinement of previous Scans.

bool metascan = false

Match scans to the combined Pointcloud of all previous Scans instead of just the last Scan.

bool createFrames = false

Keep track of all previous Transformations of Scans for Animation purposes like ‘show’ from slam6D.

bool verbose = false

Show more detailed output. Useful for fine-tuning Parameters or debugging.

bool useHDF = false

Indicates if a HDF file containing the scans should be used.

double reduction = -1

The Voxel size for Octree based reduction.

double minDistance = -1

Ignore all Points closer than

to the origin of a scan.

double maxDistance = -1

Ignore all Points farther away than

from the origin of a scan.

int icpIterations = 100

Number of iterations for ICP. ICP should ideally converge before this number is met, but this number places an upper Bound on calculation time

double icpMaxDistance = 25

The maximum distance between two points during ICP.

int maxLeafSize = 20

The maximum number of Points in a Leaf of a KDTree.

double epsilon = 0.00001

The epsilon difference between ICP-errors for the stop criterion of ICP.

bool doLoopClosing = false

Use simple Loopclosing.

bool doGraphSLAM = false

Use complex Loopclosing with GraphSLAM.

double closeLoopDistance = 500

The maximum distance between two poses to consider a closed loop or an Edge in the GraphSLAM Graph. Mutually exclusive to closeLoopPairs

int closeLoopPairs = -1

The minimum pair overlap between two poses to consider a closed loop or an Edge in the GraphSLAM Graph. Mutually exclusive to closeLoopDistance

int loopSize = 20

The minimum number of Scans to be considered a Loop to prevent Loopclosing from triggering on adjacent Scans. Also used in GraphSLAM when considering other Scans for Edges. For Loopclosing, this value needs to be at least 6, for GraphSLAM at least 1

int slamIterations = 50

Number of ICP iterations during Loopclosing and number of GraphSLAM iterations.

double slamMaxDistance = 25

The maximum distance between two points during SLAM.

double slamEpsilon = 0.5

The epsilon difference of SLAM corrections for the stop criterion of SLAM.

double diffPosition = 50

max difference of position (euclidean distance) new and old

double diffAngle = 50

max difference of angle (sum of 3 angles) new and old

bool useScanOrder = true

use scan order as icp order (if false: start with lowest distance)

double rotate_angle = 0

rotate this angle around y axis