simondlevy / BreezySLAM

Simple, efficient, open-source package for Simultaneous Localization and Mapping
GNU Lesser General Public License v3.0
758 stars 251 forks source link

Can I run BreezySLAM from pcap Lidar data. #8

Open nickponline opened 8 years ago

nickponline commented 8 years ago

I have a .pcap file of LIDAR data captured from VLP-16. Can I run BreezySLAM on it?

simondlevy commented 8 years ago

Not as its stands. But if you're interested, I can try to write some Python code that'll parse the pcap and run it through BreezySLAM.

nickponline commented 8 years ago

That would be really useful. I can provide you with a pcap file if that helps .. What would be required to do this - what format does BreezySLAM expect.

simondlevy commented 8 years ago

BreezySLAM only requires a list of millimeter scan distances. It knows how to interpret these because you first instantiate a class representing the parameters of your Lidar (scans per second, readings per scan, scan angle, etc.) If you want, you can also pass odometry values (forward and rotational speed), but it's best to avoid those at first. This example shows how it works with a Hokuyo URG04LX:

https://github.com/simondlevy/BreezySLAM/blob/master/examples/urgslam.py

The Velodyne VLP-16 may be providing more data per scan that BreezySLAM knows how to handle. I'll fool around a little with the PCAP file you posted, to see whether this is the case.

simondlevy commented 8 years ago

So this PCAP stuff turns out to be nontrivial. This guy's post looks promising, but I was unable to follow it through to an actual usable Python code sample: http://binarymillennium.blogspot.com/2008/08/more-python-pcap-with-pcapy.html

There's also an ROS driver that will read PCAP files containing Velodyne output: http://wiki.ros.org/velodyne_driver

If you can get the PCAP data into a format where there is a sequence of distance values for each successive scan, we can try and write a new BreezySLAM class for the VLP-16. Otherwise I suggest you look into ROS.

ali-robot commented 8 years ago

Hello nickponline, I would like to know what results you get using a velodyne lidar, if you please. I have been using low cost lidars (rplidar and another home-made-one), and it seems that when the number of points per scan increases, it becomes harder for the algorithm to converge. For example how many points you have per scan, and if it is possible to send an image of the generated map it would be great.

nickponline commented 8 years ago

@ALHarake going to work on this over the next few days and then can respond with some data.

ali-robot commented 8 years ago

@nickponline great, I'm eagerly waiting the results as buying a velodyne lidar isn't possible.

Sanatramesh commented 6 years ago

@simondlevy I am also working with VLP-16 LiDAR. Could you let me know how to write a Laser class for VLP-16, i.e, how do I specify the no of beams and their verticle angle?

@nickponline were you able to get breezySLAM working with VLP-16?