Question about CPU Usage Related to Max Scan Range?
Closed this issue · 2 comments
Hi, I've been trying to tweak some configs to get kiss_icp running with a lower cpu load for an Ouster OS1 64 beam sensor.
Counter-intuitively, I noticed that when I increase the max scan range from 100m to say 200m, the compute actually gets significantly faster and I was wondering why that might be? My intuition would say that increasing this range means there is more points to process per iteration (less filtered in pre-processing).
But im seeing like 4X faster compute times using this with basically no odometry performance loss.
Thanks, no isse, just curious.
@JordySehn while I am not the author, I would suggest looking into how many ICP (alignClouds) iterations get performed. If you get better features at longer range, maybe you get faster convergence? Though I guess it can be heavily environment-dependent.
The reason is quite simple
kiss-icp/python/kiss_icp/config/parser.py
Line 90 in 062cc44
In KISS ICP we compute the voxel size according to the max range. More details can be found in the paper
But increasing the max range increase the voxel size of the internal map and thus it gets soarser