LIMO-Velo icon indicating copy to clipboard operation
LIMO-Velo copied to clipboard

Leaf size is too small for the input dataset

Open wpwebrobotics opened this issue 2 years ago • 2 comments

Hi, thanks for sharing the code. I am trying the slam using a rosbag made from Velodyne VLP-16 output and IMU Vectornav 100. The rosbag seems to me to have nothing special but I get this error: [pcl::VoxelGrid::applyFilter] Leaf size is too small for the input dataset. Integer indices would overflow. I have tried different values for downsample_prec (from 0.1 to 3) to no avail. What could it be? Thank you.

wpwebrobotics avatar Jul 12 '22 15:07 wpwebrobotics

Check the number of points in compensated. This is a problem that happens when using the pcl::VoxelGrid and a too small pointcloud.

You can try bigger deltas (try keeping it at 0.1 in the last stage of the Initialization), lowering the downsample_rate (to 1?) and check that the min_dist is adequate for your robot/aplication (maybe indoor robots do need points in a 4 meter radius) ideally the min_dist would cover just only the robot.

If it's a puntual occurrence, you could try to increase the Config.MAX_POINTS2MATCH hyperparameter (not referenced in the YAML): https://github.com/Huguet57/LIMO-Velo/blob/57f32058eddab9ed1461f856bb3987742c22f362/src/main.cpp#L81

Huguet57 avatar Jul 19 '22 10:07 Huguet57

I would guess it's likely to be the min_dist value if it's an indoor application. The default value of 4 in the xaloc.yaml file is for a 2m x 1.5m autonomous car in an outdoor scenario.

Huguet57 avatar Jul 19 '22 10:07 Huguet57

We have observed that this problem disappears if we require more IMU readings when initializing. Thanks for pointing it out and sorry for the delayed response!

Huguet57 avatar Apr 16 '23 18:04 Huguet57