<aside> đź’ˇ

This document describes the multiple parameters of the ICP used in config: SLAM and config: Relocalization.

</aside>


Example YAML

icp:
		# [optional, default=2] Number of threads used for nearest neighbour search
		num_threads: 2
		# [optional, default=10] Maximimum number of iterations
		num_iter: 5
		# [optional, default=0.2(m)] Outlier rejection distance
		d_max: 0.2

Explanation

num_threads

The ICP performs spatial queries in parallel for speeding up this operation. num_threads is the number of threads used for parallelizing these queries.

num_iter

This parameter sets the maximum number of iterations executed in the ICP, which will end anyway (convergence or not) after this number of iteration is reached.

d_max

Outlier rejection distance at each query. Noting $\mathcal{F}$ the current frame being registered, and $\mathcal{M}$ the map, pairs of nearest neighbors $(p\in\mathcal{F}, q\in\mathcal{M})$ are considered in the ICP if and only if

$$ \left\|p-q\right\|2 < d{max} $$

The d_max parameter is quite sensitive because one would want to keep it low (typically lower than 0.2 m) for having the best accuracy, but not too low for allowing the ICP to “move” enough the registered frame. This can be affected by the sensor’s dynamic or the available geometry in the environment.