kitti2bag icon indicating copy to clipboard operation
kitti2bag copied to clipboard

failed to find match for field 'intensity' 'ring'

Open DamonMIN opened this issue 5 years ago • 3 comments

@toams789. I obtained one bag file with the 'kitti2bag'. When this bag file was employed to LOAM_velodyne(https://github.com/laboshinl/loam_velodyne), the program failed with an error "failed to find match for field 'intensity' 'failed to find match for field 'ring'". Is there the intensity and ring field in the sensor_msgs::PointCloud2 in the bag file generated by 'kitti2bag'?

DamonMIN avatar May 03 '19 07:05 DamonMIN

Hi, the field 'intensity' is treated as the field 'i'. You could replace PointField('i', 12, PointField.FLOAT32, 1) with PointField('intensity', 12, PointField.FLOAT32, 1) by yourself to fix the problem. As for the field 'ring', there is no 'ring' info in the origin KITTI bin file. So the bag file doesn't contain the field 'ring' as velodyne driver does.

ulterzlw avatar Jul 26 '19 08:07 ulterzlw

@DamonMIN, A ring channel has been added in a custom version of kitti2bag in the LIO-SAM repository. Here is a link to the relevant chunk of code.

Although there is a casting issue in the current code which I have fixed in my pull request (which may be implemented by the time you read this)

hmellor avatar Nov 23 '20 18:11 hmellor

  • Check https://github.com/Taeyoung96/kitti2bag/commit/a77c6dffe28fc110dca8f7be6167b5b43cfedbff for finding the ring in a angle based approach
  • Check https://github.com/VincentCheungM/Run_based_segmentation/issues/3#issuecomment-452686184 for finding the ring in a non-angle based approach

mr-abramenko avatar Apr 12 '23 12:04 mr-abramenko