Struct EsdfIntegrator::Config

Nested Relationships

This struct is a nested type of Class EsdfIntegrator.

Struct Documentation

struct Config

Public Members

bool full_euclidean_distance = false

Whether to use full euclidean distance (true) or quasi-euclidean (false).

Full euclidean is slightly more accurate (up to 8% in the worst case) but slower.

FloatingPoint max_distance_m = 2.0

Maximum distance to calculate the actual distance to.

Any values above this will be set to default_distance_m.

FloatingPoint min_distance_m = 0.2

Should mirror (or be smaller than) truncation distance in tsdf integrator.

FloatingPoint default_distance_m = 2.0

Default distance set for unknown values and values > max_distance_m.

FloatingPoint min_diff_m = 0.001

For cheaper but less accurate map updates: the minimum difference in a voxel distance, before the change is propagated.

float min_weight = 1e-6

Minimum weight to consider a TSDF value seen at.

int num_buckets = 20

Number of buckets for the bucketed priority queue.

bool multi_queue = false

Whether to push stuff to the open queue multiple times, with updated distances.

bool add_occupied_crust = false

Whether to add an outside layer of occupied voxels.

Basically just sets all unknown voxels in the allocated blocks to occupied. Try to only use this for batch processing, otherwise look into addNewRobotPosition below, which uses clear spheres.

FloatingPoint clear_sphere_radius = 1.5

For marking unknown space around a robot as free or occupied, these are the radiuses used around each robot position.

FloatingPoint occupied_sphere_radius = 5.0