chennuo0125-HIT / lidar_imu_calib

automatic calibration of 3D lidar and IMU extrinsics

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[pcl::VoxelGrid::applyFilter] Leaf size is too small for the input dataset. Integer indices would overflow.

hmellor opened this issue · comments

I am getting the following warning/error repeatedly when using the calibration tool:

[pcl::VoxelGrid::applyFilter] Leaf size is too small for the input dataset. Integer indices would overflow.

I am using the following configuration:

  • ROS noetic
  • Ubuntu 20.04LTS
  • Velodyne VLP-16

(In order to compile on Ubuntu 20.04LTS I had to change the compiler from c++11 to c++14 in CMakeLists.txt, but then it appeared to compile correctly)

because coverage of your cloud is too large, you can increase leaf size of the filter

downer_.setLeafSize(0.1, 0.1, 0.1);

as follows:

downer_.setLeafSize(0.2, 0.2, 0.2);

Thanks for the quick response, that appears to have made the warnings go away.

I have another question, does the calibration run until all LiDAR msgs are added or until the solution converges?

this method give Least square solution, so if you give more lidar msgs, you can get better result. for my experience, lidar msgs are enough collected during one minutes.

Ok, thank you for your help

@chennuo0125-HIT Hi, thanks for sharing the solution. I have one question though, how do we know appropriate leaf size ? I'm still getting the same error with the leaf size of 0.3, as it's shown below.

total lidar buffer size 810, imu buffer size 40479
constraints size 808
[pcl::VoxelGrid::applyFilter] Leaf size is too small for the input dataset. Integer indices would overflow.