struct mp2p_icp::Results

Overview

#include <Results.h>

struct Results
{
    // fields

    mrpt::poses::CPose3DPDFGaussian optimal_tf;
    double optimalScale = 1.0;
    size_t nIterations = 0;
    IterTermReason terminationReason {IterTermReason::Undefined};
    double quality = 0;
    Pairings finalPairings;
    double gravity_information_share = -1.0;

    // methods

    void serializeTo(mrpt::serialization::CArchive& out) const;
    void serializeFrom(mrpt::serialization::CArchive& in);
    void print(std::ostream& o) const;
};

Fields

mrpt::poses::CPose3DPDFGaussian optimal_tf

The found value (mean + covariance) of the optimal transformation of “local” wrt “global”.

double optimalScale = 1.0

Found scale (if supported by the underlying algorithm) for optimal_tf

size_t nIterations = 0

The number of executed iterations until convergence

double quality = 0

A measure of the ‘quality’ of the matching. Different modules are available to evaluate the quality in ICP_Base.

Pairings finalPairings

A copy of the pairings found in the last ICP iteration.

double gravity_information_share = -1.0

Share of the final rotational information supplied by the gravity prior, in [0,1]; <0 when none was given. See OptimalTF_Result::gravity_information_share : a verticality prior’s actual influence depends on the pair count and lever arms, not on its sigma alone, and this is the only place it can be read off.

Methods

void print(std::ostream& o) const

Print all results in human-friendly format to the given output, for example, use std::cout.