ryan-brazeal-ufl / OpenPyLivox

Python3 driver for Livox lidar sensors
GNU General Public License v3.0
87 stars 44 forks source link

How do I process the point cloud data in real time? #7

Open crea397 opened 4 years ago

crea397 commented 4 years ago

Hi, I want to perform real time object detection by processing the point cloud data that the Livox Mid-40 is sensing in real time.

The sample program of OpenPyLivox captures the streamed point cloud data by using saveDataToFile() and saveDataToCSV(), and then writes it to a binary file or CSV, and saves it at the end.

I want to convert the point cloud data (e.g. 100,000 point cloud data sensed in 1 second) that is being sensed in real time in Mid-40 to the format of numpy.ndarray (xyz→shape: (N, 3) or xyzi→shape(N, 4)) and process it using a point cloud processing library such as Open3D to detect objects in real time.

I think I probably need something like batch processing.

In case of batch processing, it is necessary to save 1 second of point cloud data from the Mid-40 in real time to a CSV file, read the point cloud data from the CSV file, and perform the point cloud processing.

Do you have any good and efficient ideas for using OpenPyLivox?

Thanks!

ryan-brazeal-ufl commented 4 years ago

Hello, Thanks for the inquiry. In an upcoming release (I promise very soon) the ability to capture and store in memory a block for point observations for a small time period will be implemented. The block will be overwritten at the start of the next time period, so memory usage will remain small. The idea is similar to the Livox Viewer's real-time display options for 100ms, 250ms, 500ms, etc. I will be sure to add a 1s time interval as well. A new object property will be available that provides access to the block of point observations, and probably some block ID property so a user can determine when a new block is available. This ability will work as a standalone feature as well as when recording the point observations to a file. Thanks again, Ryan

crea397 commented 4 years ago

Hi Ryan.

Thank you for your polite reply! I'm looking forward to the implementation of the new feature.

roya-correct-ai commented 4 years ago

Hi Ryan.

Thank you for your polite reply! I'm looking forward to the implementation of the new feature.

Hello Could you please let me know whether you find a solution to have real-time processing on the lidar data? I appreciate it if you share your experience and progress on this issue. Many thanks in advance

Shibaditya99 commented 2 years ago

so is it available? The realtime processing of the livox data? @ryan-brazeal-ufl

tensorturtle commented 2 years ago

Hi @ryan-brazeal-ufl , I'm really looking forward to real-time processing feature!

zapplelove commented 2 years ago

@ryan-brazeal-ufl @roya-correct-ai @crea397 @tensorturtle @Shibaditya99 I'm really looking forward to real-time processing feature too! I want to convert the stream to numpy array, and to deal with it in real time to realize the obstacle avoidance.