Note: This program finally needs to be compiled into a module of python and then imported into python for use.
The underlying principle is that python calls a c++ program to connect to the lidar, and then converts the acquired data into numpy format, because using python is too slow.
C++ function that takes a frame's data and converts it to a NumPy array in Python (`py::array_t<float>`). Here is a detailed explanation:
1. Create an empty NumPy array `dst` to store frame data.
2. Create a `cv::Mat` object `oneFrameImg` to store frame laser point cloud data.
3. Check if the device is running (`isRun()` function returns a Boolean value), if so, get the laser data.
4. If the device is not running, perform some actions such as opening a connection to the device.
5. Return the NumPy array `dst`, which contains the frame data.
The function of this code is to take a frame of laser data and convert it into a NumPy array for processing and use in Python.
c++ driver to connect to velodyne radar
// VelodyneCapture
//
// VelodyneCapture is the capture class to retrieve the laser data from Velodyne sensors using Boost.Asio and PCAP.
// Ve