在采集velodyne雷达数据的时候,本来想要采集的是/velodyne_points topic,却不小心复制成了/velodyne_packets topic。
采完数据才发现不对,一脸懵逼。
赶紧查一下/velodyne_packets velodyne_msgs/VelodyneScan数据类型。
而不是我们经常使用的/velodyne_points sensor_msgs/PointCloud2。
冥冥之中感觉数据有救了,应该有进行两种数据类型转换的方法。
一顿google之后,果然找到了行之有效的方法,开森 : )
现将转换方法记录如下:
1.一个终端打开roscore
2.一个终端键入: rosrun nodelet nodelet standalone velodyne_pointcloud/CloudNodelet
3.一个终端播放rosbag: rosbag play camlidar_calib_exp0_frontcam_right_3_lidar.bag /lidar_right_3/velodyne_packets:=velodyne_packets
4. 一个终端记录数据: rosbag record /fpdlink_cam/fpdlink_cam/image/front_cam/compressed /velodyne_points -O new.bag
/velodyne_points和/velodyne_packets的区别
velodyne_msgs/VelodyneScan为压缩格式,数据量得到大大减小。
velodyne_msgs/VelodyneScan为pcl格式的点云数据。
相互转换的代码参考: https://answers.ros.org/question/261061/converting-velodyne-packets-to-pointcloud/