tomas789 / kitti2bag

Convert KITTI dataset to ROS bag file the easy way!
MIT License
728 stars 261 forks source link

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

Open DamonMIN opened 5 years ago

DamonMIN commented 5 years ago

@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'?

ulterzlw commented 5 years ago

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.

hmellor commented 3 years ago

@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)

mr-abramenko commented 1 year ago