struct mrpt::maps::COccupancyGridMap2D::TLaserSimulUncertaintyParams


Input params for laserScanSimulatorWithUncertainty()

#include <mrpt/maps/COccupancyGridMap2D.h>

struct TLaserSimulUncertaintyParams
    // fields

    double UT_alpha {0.99};
    double UT_kappa {.0};
    double UT_beta {2.0};
    size_t MC_samples {10};
    mrpt::poses::CPosePDFGaussian robotPose;
    float aperture {M_PIf};
    bool rightToLeft {true};
    float maxRange {80.f};
    mrpt::poses::CPose3D sensorPose;
    size_t nRays {361};
    float rangeNoiseStd {.0f};
    float angleNoiseStd {.0f};
    unsigned int decimation {1};
    float threshold {.6f};
    TLaserSimulUncertaintyMethod method {sumUnscented};

    // construction



double UT_alpha {0.99}

[sumUnscented] UT parameters.

Defaults: alpha=0.99, kappa=0, betta=2.0

size_t MC_samples {10}

[sumMonteCarlo] MonteCarlo parameter: number of samples (Default: 10)

mrpt::poses::CPosePDFGaussian robotPose

The robot pose Gaussian, in map coordinates.

Recall that sensor pose relative to this robot pose must be specified in the observation object

float aperture {M_PIf}

(Default: M_PI) The “aperture” or field-of-view of the range finder, in radians (typically M_PI = 180 degrees).

bool rightToLeft {true}

(Default: true) The scanning direction: true=counterclockwise; false=clockwise

float maxRange {80.f}

(Default: 80) The maximum range allowed by the device, in meters (e.g.

80m, 50m,…)

mrpt::poses::CPose3D sensorPose

(Default: at origin) The 6D pose of the sensor on the robot at the moment of starting the scan.

float rangeNoiseStd {.0f}

(Default: 0) The standard deviation of measurement noise.

If not desired, set to 0

float angleNoiseStd {.0f}

(Default: 0) The sigma of an optional Gaussian noise added to the angles at which ranges are measured (in radians)

unsigned int decimation {1}

(Default: 1) The rays that will be simulated are at indexes: 0, D, 2D, 3D,…

float threshold {.6f}

(Default: 0.6f) The minimum occupancy threshold to consider a cell to be occupied

TLaserSimulUncertaintyMethod method {sumUnscented}

(Default: sumMonteCarlo) Select the method to do the uncertainty propagation