struct mrpt::tfest::TSE2RobustParams

Parameters for se2_l2_robust().

See function for more details

#include <mrpt/tfest/se2.h>

struct TSE2RobustParams
{
    //
fields

    unsigned int ransac_minSetSize {3};
    unsigned int ransac_maxSetSize {20};
    double ransac_mahalanobisDistanceThreshold {3.0};
    unsigned int ransac_nSimulations {0};
    bool ransac_fuseByCorrsMatch {true};
    double ransac_fuseMaxDiffXY {0.01};
    double ransac_fuseMaxDiffPhi {mrpt::DEG2RAD(0.1)};
    bool ransac_algorithmForLandmarks {true};
    double probability_find_good_model {0.999};
    unsigned int ransac_min_nSimulations {1500};
    double max_rmse_to_end {0};
    bool verbose {false};
    TFunctorCheckPotentialMatch user_individual_compat_callback;
    void* user_individual_compat_callback_userdata;

    // construction

    TSE2RobustParams();
};

Fields

unsigned int ransac_minSetSize {3}

(Default=3)

unsigned int ransac_maxSetSize {20}

(Default = 20)

double ransac_mahalanobisDistanceThreshold {3.0}

(Default = 3.0)

unsigned int ransac_nSimulations {0}

(Default = 0) If set to 0, an adaptive algorithm is used to determine the number of iterations, such as a good model is found with a probability p=0.999, or that passed as the parameter probability_find_good_model

bool ransac_fuseByCorrsMatch {true}

(Default = true) If true, the weight of Gaussian modes will be increased when an exact match in the subset of correspondences for the modes is found.

Otherwise, an approximate method is used as test by just looking at the resulting X,Y,PHI means. Threshold in this case are: ransac_fuseMaxDiffXY, ransac_fuseMaxDiffPhi

double ransac_fuseMaxDiffXY {0.01}

(Default = 0.01)

double ransac_fuseMaxDiffPhi {mrpt::DEG2RAD(0.1)}

(Default=0.1degree) (In radians)

bool ransac_algorithmForLandmarks {true}

(Default = true) Use Mahalanobis distance (true) or Euclidean dist (false)

double probability_find_good_model {0.999}

(Default = 0.999) See parameter ransac_nSimulations.

When using probability_find_good_model, the minimum number of iterations can be set with ransac_min_nSimulations

unsigned int ransac_min_nSimulations {1500}

(Default = 1500) See parameter probability_find_good_model

double max_rmse_to_end {0}

Stop searching for solutions when the RMSE of one solution is below this threshold.

Special value “0” means “auto”, which employs “2*normalizationStd”.

bool verbose {false}

(Default=false)

TFunctorCheckPotentialMatch user_individual_compat_callback

If provided, this user callback will be invoked to determine the individual compatibility between each potential pair of elements.

Can check image descriptors, geometrical properties, etc.

Returns:

Must return true if the pair is a potential match, false otherwise.

void* user_individual_compat_callback_userdata

User data to be passed to user_individual_compat_callback()

Construction

TSE2RobustParams()

Default values.