I have only limited experience with doing SLAM using a Velodyne (or other point cloud sensor), but I have some observations and suggestions that may help:
- The PCAP data will probably not be sufficient for good SLAM performance. You want to at least save Odomentry data, along with the sensor output.
The easiest way to do that is with rosbag record. Save the raw /velodyne_packets
topic published by the velodyne_driver, along with the robot's odomentry (usually published in the /odom
topic), the robot's coordinate transforms in /tf
, and perhaps some IMU data.
- You need to massage the data into the format accepted by your chosen SLAM implementation.
The familiar ROS gmapping package requires your point cloud to be converted into a 2D laser scan message. That's not as silly as it may sound, if you are making a 2D map anyway. The ROS point cloud to laser scan package will handle that conversion for you, squashing points from a selected 3D region into a 2D sensor_msgs/LaserScan.
You could take a horizontal slice out of the data and format like a planar laser scan message and use the slam packages meant for those kinds of lidars. Another option is to get the data into the right format to put into a RGBD slam package (kinfu?)- not sure if those would like 360 degree data.
Hello, I'm a new user of the velodyne VLP16, and I search the same application. Are you find more information about the 3d reconstruction from pcap file?
Thank you for sharing any relevant information Pascal
Bruna, have you found a solution?
No, never found an answer.
how is this going? I have the same problem. 1.-Start a vlp16 with ROS 2.-Configure GPS and Velodyne 3.-Construct a 3D map