struct Cli

Overview

struct Cli
{
    // fields

    TCLAP::CmdLine cmd {"mola-sm-georeferencing-cli"};
    TCLAP::ValueArg<std::string> argInput {         "i", "input", "Input .simplemap file", true, "map.simplemap", "map.simplemap", cmd};
    TCLAP::ValueArg<std::string> argWriteMMInto {         "",    "write-into", "An existing .mm file in which to write the georeferencing metadata",         false, "map.mm",     "map.mm",         cmd};
    TCLAP::ValueArg<std::string> argOutput {         "o",         "output",         "Write the obtained georeferencing metadata to a file. The format is "         "determined by the file extension: binary gzip(`*.georef`) or YAML "         "(`*.yaml`, `*.yml`).",         false,         "map.georef",         "(map.georef|map.yaml)",         cmd};
    TCLAP::ValueArg<double> argHorz {         "",         "horizontality-sigma",         "For short trajectories(not>10x the GPS uncertainty), this helps to "         "avoid degeneracy.",         false,         1.0,         "1.0",         cmd};
    TCLAP::ValueArg<double> argIMUGravitySigmaDeg {"",                                                   "imu-gravity-sigma-deg",                                                   "IMU gravity alignment uncertainty(degrees).",                                                   false,                                                   3.0,                                                   "3.0",                                                   cmd};
    TCLAP::ValueArg<double> argMinUncertaintyXYZ {         "",         "min-gnss-sigma",         "Minimum per-axis GNSS uncertainty(meters) used as a floor for the "         "ENU noise model. Default: 0.20",         false,         0.20,         "0.20",         cmd};
    TCLAP::ValueArg<unsigned int> argMinFixQuality {         "",         "min-gnss-fix-quality",         "If non-zero, discard GNSS frames whose NMEA GGA fix quality is below "         "this value(1=GPS, 2=DGPS, 4=RTK fixed, 5=RTK float). Default: 0 "         "(filter disabled).",         false,         0,         "0",         cmd};
    TCLAP::ValueArg<std::string> argPlugins {         "l",         "load-plugins",         "One or more(comma separated)*.so files to load as plugins, e.g. "         "defining new CMetricMap classes",         false,         "foobar.so",         "foobar.so",         cmd};
    TCLAP::SwitchArg argNoIMUGravity {         "", "no-imu-gravity",         "Disable using IMU acceleration data for gravity alignment "         "(enabled by default).",         cmd, false};
    TCLAP::ValueArg<std::string> arg_verbosity_level {         "v",   "verbosity", "Verbosity level: ERROR|WARN|INFO|DEBUG(Default: INFO)",         false, "INFO",      "INFO",         cmd};
    TCLAP::ValueArg<std::string> argMM {         "m", "map", "Input .mm map with georef info", false, "map.mm", "map.mm", cmd};
    TCLAP::ValueArg<std::string> argGeoRef {         "g",          "geo-ref", "Input .georef file with georef info", false, "map.georef",         "map.georef", cmd};
    TCLAP::ValueArg<std::string> argTraj {         "t",  "trajectory", "Input .tum trajectory, in map local coordinates",         true, "traj.tum",   "traj.tum",         cmd};
    TCLAP::ValueArg<std::string> argOutKML {         "o",        "output", "The name of the google earth kml file to write to", true, "path.kml",         "path.kml", cmd};
    TCLAP::ValueArg<std::string> arg_kitti_basedir {       "k",       "kitti-basedir",       "Path to the kitti datasets. Overrides to the default, which is "       "reading "       "the env var `KITTI_BASE_DIR`.",       false,       "",       "",       cmd};
    TCLAP::ValueArg<std::string> arg_result_path {       "r",       "result-tum-path",       "File to evaluate, in TUM format",       true,       "result.txt|result_%02i.txt",       "result.txt",       cmd};
    TCLAP::ValueArg<std::string> argSavePathKittiFormat {       "",       "save-as-kitti",       "If given, will transform the input path from the LIDAR frame to the "       "cam0 "       "frame and save the path to a TXT file in the format expected by KITTI "       "dev "       "kit.",       false,       "result.kitti",       "result.kitti",       cmd};
    TCLAP::MultiArg<int> arg_seq {       "s",       "sequence",       "The sequence number of the path{s} file{s} to evaluate, used to find "       "out "       "GT and calibration files for the Kitti dataset.",       false,       "01",       cmd};
    TCLAP::ValueArg<std::string> arg_override_gt_file {       "",       "gt-tum-path",       "If provided, the --sequence flag will be ignored and this particular "       "file "       "in TUM format will be read and used as ground truth to compare "       "against "       "the resulting odometry path.",       false,       "trajectory_gt.txt",       "trajectory_gt.txt",       cmd};
    TCLAP::SwitchArg argSkipFigures {"", "no-figures", "Skip generating the error figures", cmd};
    TCLAP::SwitchArg argResultInKittiFormat {       "", "result-in-kitti-format",       "Use to read solution trajectory files in KITTI(4*3 elements per row) "       "format instead of in TUM format",       cmd};
    std::string kitti_basedir;
};