Laser radar multichannel echo data online processing system and method

By designing a lidar multi-channel echo data online processing system based on FPGA, using pipeline processing architecture and nonlinear least squares curve fitting, the data processing timeline of the hyperspectral lidar system is solved, real-time processing of multi-channel echo data and target information generation are realized.

CN120541367APending Publication Date: 2025-08-26INNOVATION ACAD FOR PRECISION MEASUREMENT SCI & TECH CAS
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510591325.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-08
Publication Date
2025-08-26

AI Technical Summary

Technical Problem

Traditional single-wavelength lidar technology cannot meet the needs of hyperspectral information and high-resolution spatial information in modern applications, and the timeliness of massive data processing generated by hyperspectral lidar systems are difficult to meet.

Method used

A lidar multi-channel echo data online processing system based on FPGA is designed, and a pipeline processing architecture is adopted, including data distribution layer, data cache layer, and data processing layer. The real-time processing of multi-channel echo data is realized through modular design, and the nonlinear least squares curve fitting function is used to perform nonlinear least squares curve fitting to generate multi-channel point cloud data.

Benefits of technology

It realizes efficient real-time processing of multi-channel echo data, reduces data transmission and storage pressure, improves the timeliness of data processing, and can generate target spectral information and spatial position information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120541367A_ABST
    Figure CN120541367A_ABST
Patent Text Reader

Abstract

The invention discloses a laser radar multi-channel echo data online processing system, which sequentially comprises a data distribution layer, a data processing layer and a data processing layer, the data distribution layer divides the echo data and then sends the echo data to the data cache layer to extract a local maximum value, a filtered sampling point sub-sequence corresponding to the local maximum value and a serial number of the local maximum value in the corresponding filtered sampling point sub-sequence; and inputting the data to be pre-fitted into a data processing layer for pre-fitting and fitting based on a polarization normal waveform fitting function in sequence to obtain the optimized signal intensity and the optimized waveform center position, thereby further obtaining the channel calculation distance of the target. The invention further discloses a laser radar multichannel echo data on-line processing method. The on-line processing system is used for obtaining the spatial position information, the corrected spectral information and the spectral reflectivity of a target. According to the invention, by adopting an FPGA pipeline processing architecture, efficient online processing of multi-channel echo data of the hyperspectral laser radar is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of remote sensing mapping technology, and in particular to an online processing system for multi-channel echo data of a laser radar based on an FPGA (Field Programmable Gate Array), and also to an online processing method for multi-channel echo data of a laser radar, which is suitable for real-time processing of massive multi-channel data of a hyperspectral laser radar. Background Art

[0002] With the increasing demand for spectral information and high-resolution three-dimensional spatial information of ground objects, traditional single-wavelength lidar technology can no longer meet the requirements of modern applications. In contrast, hyperspectral lidar systems, with their increased detection channels, higher spatial resolution, and more precise spectral resolution, have gradually replaced traditional single-wavelength lidar. However, the massive amounts of data generated by these systems pose significant challenges in data transmission, storage, and processing. Traditional post-processing methods are unable to meet the timeliness requirements of hyperspectral lidar data processing. To this end, this paper proposes a method for online processing of multi-channel lidar echo data and constructs a corresponding online processing system for multi-channel lidar echo data. Based on this, an FPGA processing architecture is designed that can efficiently process multi-channel hyperspectral lidar echo data, acquiring multi-channel target spectral information and spatial position information in real time, significantly improving the timeliness of data processing while reducing the pressure of massive data transmission and storage. Summary of the Invention

[0003] The present invention addresses the aforementioned issues with the existing technology by proposing a system and method for online processing of multi-channel echo data from a LiDAR. By employing an FPGA pipeline processing architecture, this system achieves efficient online processing of multi-channel echo signals from a hyperspectral LiDAR, significantly improving the timeliness of data processing and resolving the inability of traditional methods to meet the timeliness requirements for processing massive amounts of data. Furthermore, a multi-channel point cloud online generation module is designed to enable online generation of LiDAR target point cloud data.

[0004] The above-mentioned purpose of the present invention is achieved through the following technical solutions:

[0005] A laser radar multi-channel echo data online processing system includes a data distribution layer, which receives echo data output by the laser radar acquisition system, segments the echo data according to spectral acquisition channels to obtain segmented data, and sends the segmented data to a data cache layer. The segmented data includes the channel number corresponding to the spectral acquisition channel and the corresponding channel original sampling point sequence;

[0006] The data cache layer performs denoising and filtering on the original sampling point sequence corresponding to each spectral acquisition channel in time order, extracts the local maximum, the filtered sampling point subsequence corresponding to the local maximum, and the sequence number of the local maximum in the corresponding filtered sampling point subsequence, and inputs them into the data processing layer as a set of data to be pre-fitted;

[0007] The data processing layer includes the data pre-fitting layer, the data fitting layer and the distance calculation layer in sequence:

[0008] The data pre-fitting layer performs pre-fitting based on the full width at half maximum interval (FWHM) of the filtered sampling point subsequence in each group of data to be pre-fitted to obtain the corresponding pre-fitted waveform standard deviation, and classifies it into a group of data to be fitted together with the corresponding group of data to be pre-fitted;

[0009] The data fitting layer performs nonlinear least squares curve LM (Levenberg-Marquardt) fitting on the data stream of the fitting data based on the skew normal waveform fitting function, obtains the optimized signal strength and the optimized waveform center position and sends them to the distance solution layer.

[0010] The distance calculation layer calculates the distance of the target channel by the optimized waveform center position.

[0011] As described above, the echo data is segmented according to the spectral acquisition channel, which specifically includes the following steps:

[0012] The data distribution layer strips off the total packet header and target angle information of the echo data and saves them to the register. Then, it identifies the channel flag corresponding to the original sampling point sequence of the channel in each echo data, strips off the channel flag and assigns a channel number to the corresponding original sampling point sequence of the channel. The channel number and the corresponding original sampling point sequence of the channel are sent as segmented data to the data cache layer.

[0013] As mentioned above, the data cache layer includes the preprocessing layer and the data layer in sequence:

[0014] For each spectral acquisition channel, the preprocessing layer uses the first P original sampling points in the channel's original sampling point sequence to calculate the standard deviation and intensity mean, and uses them as the noise standard deviation and noise intensity mean, respectively. The corresponding segmented data, noise standard deviation, and noise intensity mean are cached in the data buffer FIFO; among them, the first P original sampling points are all noise sampling points;

[0015] The data layer performs threshold processing, filtering processing, and extracts the data stream of the original sampling point sequence of each channel in turn according to the noise standard deviation and noise intensity mean of each spectral acquisition channel. The data stream of the original sampling point sequence of each channel is processed in turn, and the data to be pre-fitted is extracted. The data to be pre-fitted includes the local maximum, the filtered sampling point subsequence corresponding to the local maximum, and the serial number of the local maximum in the corresponding filtered sampling point subsequence, and the angle information is extracted from the register.

[0016] The data layer specifically includes the following processing steps:

[0017] Step A1: For each spectrum acquisition channel, calculate the corresponding threshold value according to the following formula, and perform threshold processing on the corresponding channel original sampling point sequence:

[0018] threshold j =mean j +3×σ j,noise

[0019] Among them, threshold j Indicates the threshold value of the jth spectrum acquisition channel, mean j is the noise intensity mean of the jth spectrum acquisition channel, σ j,noise is the noise standard deviation of the jth spectral acquisition channel, denoted as the noise standard deviation σ j,noise , j represents the serial number of the spectrum acquisition channel;

[0020] Step A2: For each channel original sampling point sequence, the value is higher than the threshold value. j The sequence of original sampling points is composed of the noise standard deviation σ j,noise , select the filter for smoothing filtering to obtain the sampling point sequence after channel filtering;

[0021] Step A3: extract the local maximum from the channel filtered sampling point sequence, and capture the filtered sampling point subsequence corresponding to the local maximum as the sampling point sequence to be fitted; use the local maximum, the filtered sampling point subsequence corresponding to the local maximum, and the sequence number of the local maximum in the corresponding filtered sampling point subsequence as a set of data to be pre-fitted, and extract the angle information from the register and input them together to the data processing layer to the data buffer FIFO.

[0022] Extracting the local maximum from the channel filtered sampling point sequence as described above, and grabbing the filtered sampling point subsequence corresponding to the local maximum, specifically includes the following steps:

[0023] A31, grouping the filtered sampling points in the channel filtered sampling point sequence to obtain a sequence of sampling point groups, sequentially detecting the maximum intensity of the filtered sampling points in each sampling point group as the group maximum value of the sampling point group and storing the maximum value, and each time a group maximum value is saved, checking the number of saved group maximum values, and when n group maximum values ​​are stored, executing A32; wherein the filtered sampling points corresponding to the n sampling point groups can cover the waveform of one laser pulse;

[0024] A32. If the maximum value of the group in the middle is not the largest among the n stored maximum values ​​of the groups, delete the earliest stored maximum value of the group and return to step A31 to continue detecting the maximum value of the group for the next sampling point group.

[0025] If the maximum value of the group in the middle is the largest among the n saved maximum values ​​of the group, then the maximum value of the current middle group is regarded as a local maximum, and the filtered sampling points in the current n sampling point group are regarded as the filtered sampling point subsequence corresponding to the local maximum;

[0026] Assign a signal number to the current filtered sampling point subsequence. The first digit of the signal number is equal to the corresponding channel number, and the second digit of the signal number is the count number. The count number is set as follows: each time a local maximum value is obtained, the count number is incremented according to the preset step size.

[0027] The local maximum corresponding to the same signal number, the filtered sampling point subsequence corresponding to the local maximum, and the sequence number of the local maximum in the corresponding filtered sampling point subsequence are taken as a group of data to be pre-fitted, and the filtered sampling points in the data to be pre-fitted are the sampling points to be fitted;

[0028] For each spectrum acquisition channel, a group of pre-fitted data corresponding to the first signal number is used as the transmission signal data, and the pre-fitted data corresponding to other signal numbers except the first signal number are used as the echo signal data;

[0029] The earliest saved group maximum value is deleted, and the process returns to step A31 to continue detecting the group maximum value for the next sampling point group until all filtered sampling points in the channel filtered sampling point sequence are traversed.

[0030] As described above, the data pre-fitting layer performs pre-fitting based on the full width at half maximum interval (FWHM) of the filtered sampling point subsequence in each set of pre-fitted data to obtain the corresponding pre-fitted waveform standard deviation, specifically including the following process:

[0031] Step B1, taking the number of sampling points to be fitted corresponding to the intensity of the sampling points to be fitted in the data to be pre-fitted being greater than half the maximum intensity of the sampling points to be fitted in the data to be pre-fitted as the full width at half maximum interval FWHM of the data to be pre-fitted, taking the starting point of the full width at half maximum interval FWHM as the preset starting point a, and taking the end point of the full width at half maximum interval FWHM as the preset end point b;

[0032] Step B2: performing a secondary differentiation on the subsequence of filtered sampling points in the pre-fitted data, taking the sampling points to be fitted whose corresponding differentiation results are close to 0 as inflection points, taking the inflection point closest to the preset starting point a as the starting point x1 of the pre-fitting interval, and taking the inflection point closest to the preset starting point b as the end point x2 of the pre-fitting interval;

[0033] Step B3: Based on the waveform of the sampling points to be fitted of the data to be pre-fitted being a skewed normal distribution, determine the standard deviation of the pre-fitted waveform of the target signal data according to the starting point x1 of the pre-fitting interval, the end point x2 of the pre-fitting interval, the full width at half maximum interval FWHM, and the local maximum value.

[0034] As mentioned above, the distance calculation layer calculates the distance of the target channel based on the optimized waveform center position based on the following formula:

[0035]

[0036] Where x′ centre,j,i represents the optimized waveform center position of the jth spectrum acquisition channel for the ith echo signal data, x′ centre_emission represents the center position of the optimized waveform of the jth spectrum acquisition channel for the emission signal data, c represents the speed of light, f is the current ADC sampling rate, and dis j,i Indicates the channel calculation distance of the j-th spectrum acquisition channel to the i-th target.

[0037] As mentioned above, the data processing layer also includes a correction layer, which specifically includes the following operations:

[0038] Step C1: Calculate the corrected distance corresponding to each spectral acquisition channel based on the following formula:

[0039] dis_real j,i =dis j,i +offset

[0040] Where dis_real j,i Indicates the corrected distance of the jth spectrum acquisition channel to the ith target; offset indicates the correction coefficient with reference to the standard white plate, j is the sequence number of the spectrum acquisition channel, and i is the sequence number of the target;

[0041] Step C2: Calculate the corrected spectrum information of the target according to the following formula:

[0042]

[0043] A 矫正,j,i A′ represents the corrected spectral information of the jth spectral acquisition channel for the i-th target, P,j,i represents the optimized signal intensity of the echo signal data of the i-th target from the j-th spectrum acquisition channel, represents the optimized signal intensity of the echo signal data recorded by the standard white plate in the jth spectrum acquisition channel,

[0044] The spectral reflectance of the target in different spectral acquisition channels is calculated based on the following formula:

[0045]

[0046] Where, ρ j,i A represents the spectral reflectance of the jth spectral acquisition channel for the i-th target, 0,j Indicates the intensity of the echo signal of the target under the D65 light source stored in the FPGA;

[0047] Step C3: performing multi-channel joint calculation based on the corrected distance and corrected spectrum information corresponding to each spectral acquisition channel and calculating the spatial position information of the target based on the recorded angle information;

[0048] Step C4: Package and output the target's spatial position information, corrected spectral information, and spectral reflectance.

[0049] A method for online processing of laser radar multi-channel echo signals, using the above-mentioned laser radar multi-channel echo data online processing system, comprises the following steps:

[0050] Step 1: The online processing system starts the data distribution layer, the data cache layer, the data pre-fitting layer of the data processing layer, the data fitting layer of the data processing layer, and the distance calculation layer of the data processing layer;

[0051] Use the total station to measure the standard whiteboard multiple times, and the lidar to continuously measure the same standard whiteboard.

[0052] Among them, the actual distance of the standard whiteboard is obtained by single-point measurement of the total station;

[0053] The echo data obtained by the laser radar fixed-point scanning of the standard whiteboard is input into the online processing system in real time, and the online processing system calculates the channel calculation distance of the standard whiteboard in real time;

[0054] Step 2: Calculate the correction coefficient offset based on the standard whiteboard according to the following formula, and save the correction coefficient offset based on the standard whiteboard to the correction layer of the data processing layer:

[0055]

[0056] Where, dis k,real is the actual distance of the standard white board measured by the total station for the kth time, dis k,chj is the channel calculation distance of the jth spectrum acquisition channel corresponding to the lidar to the standard white plate during the kth measurement, J is the total number of actual effective spectrum acquisition channels, and m is the number of measurements;

[0057] Step 3: The online processing system starts the data distribution layer, the data cache layer and the data processing layer;

[0058] The laser radar is used to scan the test object at a fixed point, and the echo data of the laser radar fixed-point scanning test object is input into the online processing system in real time. The online processing system outputs the spatial position information, corrected spectral information and spectral reflectivity of the target.

[0059] Compared with the prior art, the present invention has the following beneficial effects:

[0060] 1. A modular pipeline design is implemented at the data layer, data pre-fitting layer, and data fitting layer, and fitting parameters (such as local maximum, pre-fitting waveform standard deviation, optimized signal strength, and optimized waveform center position) are calculated synchronously. This ensures real-time segmentation and online calculation of multi-channel echo data, solving the storage and processing issues of large amounts of multi-channel data streams, and is highly scalable and systematic.

[0061] 2. Realize online target ranging correction and spectral correction, reducing the difficulty of data correction; realize online nonlinear least squares curve LM fitting for multi-channel data, and output the target's spectral information, spatial position information and spectral reflectance in the current spectral band in real time. Compared with traditional offline data processing, it greatly improves the timeliness of large-bandwidth data stream processing.

[0062] Traditional FPGA-based real-time echo processing is limited to single or dual channels. The present invention can use echo data including multiple spectral acquisition channels to realize multi-channel point cloud generation, directly generate multi-channel point cloud data, and adopt a modular design to allow arbitrary addition of channels. It is applicable to four channels, eight channels, sixteen channels, thirty-two channels, etc.; at the same time, it can also generate the spectral reflectance of the current target. BRIEF DESCRIPTION OF THE DRAWINGS

[0063] Figure 1 , is a system structure diagram of the online processing system of the present invention. DETAILED DESCRIPTION

[0064] To facilitate understanding and implementation of the present invention by those skilled in the art, the present invention will be further described in detail below with reference to the following examples. It should be understood that the embodiments described herein are intended only to illustrate and explain the present invention and are not intended to limit the present invention. The present invention may be applied in various other specific embodiments and various modifications may be made without departing from the spirit of the present invention.

[0065] A laser radar multi-channel echo data online processing system, such as Figure 1 As shown, it includes the data distribution layer, data cache layer and data processing layer in sequence. The specific settings are as follows:

[0066] 1. Data distribution layer

[0067] The data distribution layer receives the echo data output by the lidar acquisition system, segments the echo data according to the spectral acquisition channel to obtain segmented data, and sends the segmented data to the data cache layer.

[0068] The laser emitted by the hyperspectral lidar is reflected by the target and the echo obtained includes a series of laser pulses, and the echo corresponds to multiple spectral channels. The lidar acquisition system receives the echo, collects each laser pulse in the echo, and performs analog-to-digital conversion (ADC) to obtain echo data. The lidar acquisition system includes multiple spectral acquisition channels. The echo data includes a total packet header, the angle information of the target, and the channel raw data corresponding to each spectral acquisition channel in sequence. Each channel raw data includes a channel flag and a corresponding channel original sampling point sequence in sequence. The channel original sampling point sequence is the data to be processed, and the channel flag is used to identify the spectral acquisition channel corresponding to the channel original sampling point sequence; the target angle information includes the horizontal angle of the target and the vertical angle of the target.

[0069] The data distribution layer performs segmentation processing specifically including the following steps:

[0070] After receiving the echo data, the data distribution layer strips off the total packet header and target angle information of the echo data and saves them to the register. Then, it identifies the channel flag bit of each channel original data in the echo data (that is, the channel flag bit corresponding to the channel original sampling point sequence), strips off the channel flag bit and assigns a channel number to the corresponding channel original sampling point sequence. The channel number and the corresponding channel original sampling point sequence are sent as segmented data to the data cache layer.

[0071] In the data distribution layer, data is processed in a first-in, first-out manner, with appropriate output intervals set to ensure that subsequent data processing is not congested. Each time the data distribution layer receives an echo, it strips the packet header and target angle information, identifies and removes the aforementioned channel flag, and assigns a channel number. The register remains unchanged until the next echo arrives. During this period (i.e., before the next echo arrives), it is directly and clearly understood which spectral acquisition channel the data being processed corresponds to.

[0072] 2. Data caching layer

[0073] The data cache layer is used to receive the segmented data obtained by the data distribution layer. The data cache layer denoises and filters the original sampling point sequence corresponding to each spectral acquisition channel in time sequence, extracts the local maximum, the filtered sampling point subsequence corresponding to the local maximum, and the sequence number of the local maximum in the corresponding filtered sampling point subsequence, and inputs them into the data processing layer as a set of data to be pre-fitted.

[0074] The data cache layer includes the preprocessing layer and the data layer in sequence:

[0075] 2.1 Preprocessing Layer

[0076] The preprocessing layer is connected to the data distribution layer. For each spectral acquisition channel, the preprocessing layer uses the first P original sampling points in the channel's original sampling point sequence to calculate the standard deviation and intensity mean, and uses these as the noise standard deviation and noise intensity mean, respectively. The corresponding segmented data (including the channel number and the channel's original sampling point sequence), noise standard deviation, and noise intensity mean are cached in a data buffer (FIFO) (First In, First Out). The data buffer FIFO can, on the one hand, reduce the subsequent data stream processing timing pressure and delay the channel original sampling point sequence of each spectral acquisition channel. The channel original sampling point sequence includes noise sampling points and target signal sampling points. The target signal sampling points are the objects to be processed later. Generally, the original sampling points at the front of the channel original sampling point sequence are continuous noise sampling points. The standard for selecting the first P original sampling points is: the first P original sampling points are all noise sampling points. P is an empirical preset value. In this embodiment, P = 32.

[0077] 2.2 Data Layer

[0078] The data layer uses a pipeline architecture to perform threshold processing, filtering, and extraction of pre-fitted data on the data stream of the original sampling point sequence of each channel based on the noise standard deviation and noise intensity mean of the first P original sampling points of each spectral acquisition channel cached in the data buffer FIFO by the pre-processing layer. The pre-fitted data includes the local maximum, the filtered sampling point subsequence corresponding to the local maximum, and the sequence number of the local maximum in the corresponding filtered sampling point subsequence, and the angle information is extracted from the register. The specific operations are as follows:

[0079] Step A1: Threshold processing

[0080] For each spectral acquisition channel, the corresponding threshold value is calculated according to the following formula, and the corresponding channel original sampling point sequence is subjected to threshold processing:

[0081] threshold j =mean j +3×σ j,noise

[0082] Among them, threshold j Indicates the threshold value of the jth spectrum acquisition channel, mean j is the noise intensity mean of the jth spectrum acquisition channel, σ j,noise is the noise standard deviation of the jth spectral acquisition channel, denoted as the noise standard deviation σ j,noise, j represents the serial number of the spectrum acquisition channel;

[0083] Threshold processing treats the original sampling points below the threshold as noise.

[0084] Step A2: For each channel original sampling point sequence, the value is higher than the threshold value. j The sequence of original sampling points is composed of the noise standard deviation σ j,noise , automatically selects a suitable filter to perform smoothing filtering to obtain a channel filtered sampling point sequence. In this embodiment, the smoothing filtering performed is specifically a Gaussian smoothing filter.

[0085] Step A3: extract the local maximum from the channel filtered sampling point sequence, and capture the filtered sampling point subsequence corresponding to the local maximum as the sampling point sequence to be fitted; use the local maximum, the filtered sampling point subsequence corresponding to the local maximum, and the sequence number of the local maximum in the corresponding filtered sampling point subsequence as a set of data to be pre-fitted, and extract the angle information from the register and input them into the data buffer FIFO.

[0086] Extract the local maximum from the channel filtered sampling point sequence and grab the filtered sampling point subsequence corresponding to the local maximum. Specifically, the steps include:

[0087] A31. Using a pipeline architecture, group the filtered sampling points in the channel filtered sampling point sequence to obtain a sequence of sampling point groups. Detect the maximum intensity of the filtered sampling points in each sampling point group in turn as the group maximum value and store it. Each time a group maximum value is saved, check the number of saved group maximum values. When n group maximum values ​​are stored, execute A32. The filtered sampling points corresponding to the n sampling point groups can cover the waveform of one laser pulse.

[0088] This process storage module uses a shift register; the product of the number k of filtered sampling points in a sampling point group and the integer n is equal to the local interval L. The selection of the local interval L can be selected based on the pulse width of the laser pulse emitted by the pulse laser in the laser radar and the acquisition speed of the analog-to-digital converter ADC in the laser radar acquisition system, so that the selected local interval L can cover the waveform of the laser pulse as much as possible, ensuring that the filtered sampling points corresponding to the laser pulse can enter the subsequent fitting model (such as the skew-normal waveform fitting function) intact, but an excessively large local interval L will affect the fitting model speed and fitting efficiency, so the relationship between the two should be balanced. In this embodiment, the number k of filtered sampling points included in the sampling point group is 8, the integer n is 3, and the local interval L is 24;

[0089] A32. Determine the data to be pre-fitted:

[0090] If the maximum value of the group in the middle is not the largest among the n stored maximum values ​​of the groups, then return to step A31 to continue detecting the maximum value of the group for the next sampling point group (correspondingly, the shift register deletes the earliest stored maximum value of the group);

[0091] If the maximum value of the group in the middle is the largest among the n saved maximum values ​​of the group, then the maximum value of the current middle group is regarded as a local maximum, and the filtered sampling points in the current n sampling point group are regarded as the filtered sampling point subsequence corresponding to the local maximum;

[0092] A signal number is assigned to the current filtered sampling point subsequence. The first digit of the signal number is equal to the corresponding channel number, and the second digit of the signal number is a counting number. The counting number is set as follows: each time a local maximum value is obtained, the counting number is incremented by a preset step size. In this embodiment, the preset step size is 1.

[0093] The local maximum corresponding to the same signal number, the filtered sampling point subsequence corresponding to the local maximum, and the sequence number of the local maximum in the corresponding filtered sampling point subsequence are taken as a group of data to be pre-fitted, and the filtered sampling points in the data to be pre-fitted are the sampling points to be fitted;

[0094] For each spectrum acquisition channel, a group of pre-fitted data corresponding to the first signal number is used as emission signal data, and the pre-fitted data corresponding to other signal numbers except the first signal number are used as echo signal data; the echo signal data is one or more.

[0095] The earliest saved group maximum value is deleted, and the process returns to step A31 to continue detecting the group maximum value for the next sampling point group until all filtered sampling points in the channel filtered sampling point sequence are traversed.

[0096] The full-waveform lidar's transmit and return signals are collected by an FPGA-based high-speed lidar acquisition system, and the waveform intensity is digitally quantified. The massive amount of data places stringent demands on the data fitting structure. Using local maximum detection and a pipelined architecture to segment and package the data stream significantly reduces the data processing burden.

[0097] 3. Data processing layer

[0098] The data processing layer is connected to the data layer in the data cache layer. The data processing layer includes a data pre-fitting layer, a data fitting layer, a distance calculation layer, and a correction layer in sequence.

[0099] 3.1 Data Pre-fitting Layer

[0100] The data pre-fitting layer is based on a pipeline architecture. It uses the full width at half maximum (FWHM) of the filtered sampling point subsequence in the pre-fitted data output by the data cache layer to perform pre-fitting, determines the standard deviation of the pre-fitted waveform, and classifies it together with the corresponding set of pre-fitted data into a set of pre-fitted data. This provides initial fitting parameters for the subsequent nonlinear least squares curve LM (Levenberg-Marquardt) fitting in the data fitting layer. It specifically includes the following steps:

[0101] Step B1: confirm the full width at half maximum (FWHM) of the filtered sampling point subsequence in the pre-fitted data:

[0102] The number of sampling points to be fitted corresponding to the intensity of the sampling points to be fitted in the data to be pre-fitted is greater than half of the maximum intensity of the sampling points to be fitted in the data to be pre-fitted, as the full width at half maximum interval FWHM of the data to be pre-fitted, the starting point of the full width at half maximum interval FWHM is used as the preset starting point a, and the end point of the full width at half maximum interval FWHM is used as the preset end point b;

[0103] Step B2: Determine the starting and ending points of the pre-fitting interval:

[0104] Perform secondary differentiation on the subsequence of filtered sampling points in the pre-fitting data, take the sampling points to be fitted whose corresponding differentiation results are close to 0 as inflection points, take the inflection point closest to the preset starting point a as the starting point x1 of the pre-fitting interval, and take the inflection point closest to the preset starting point b as the end point x2 of the pre-fitting interval;

[0105] Step B3: Confirm the standard deviation of the pre-fitted waveform:

[0106] Based on the waveform of the sampling points to be fitted of the data to be pre-fitted being a skewed normal distribution, the standard deviation of the pre-fitted waveform of the target signal data is determined according to the starting point x1 of the pre-fitting interval, the end point x2 of the pre-fitting interval, the full width at half maximum interval FWHM, and the local maximum value (obtained in step A3);

[0107] Step B4: The local maximum corresponding to the same signal number, the filtered sampling point subsequence corresponding to the local maximum, the sequence number of the local maximum in the corresponding filtered sampling point subsequence, and the standard deviation of the pre-fitted waveform are taken as a set of data to be fitted, and stored in the data buffer FIFO, waiting for the data fitting layer to respond; if the data fitting layer responds that it can be output, then a set of data to be fitted is output; otherwise, it is temporarily stored in the data buffer FIFO.

[0108] 3.2 Data Fitting Layer

[0109] The data fitting layer uses a pipeline architecture to analyze and calculate the data to be fitted stored in the data buffer FIFO, and uses a state machine to control the fitting process. The data fitting layer performs a nonlinear least squares curve LM fit on the data stream of the data to be fitted based on the skew normal waveform fitting function, and sends the optimized signal strength and optimized waveform center position in the fitting results to the distance solution layer. The specific fitting process is as follows:

[0110] Since the laser radar pulse signal is approximately normally distributed, a skewed normal waveform fitting function suitable for FPGA is established for each spectrum acquisition channel:

[0111]

[0112] Wherein, x represents the sampling point sequence number of the sampling point to be fitted in the sampling point sequence to be fitted (since the captured sampling points to be fitted are acquired by the ADC, the waveform acquisition is in chronological order, and the acquisition frequency is known, that is, the time difference between two sampling points to be fitted can be calculated based on the number of interval sampling points to be fitted. However, for ease of understanding, it has been changed to the sampling point sequence number. In this embodiment, 24 sampling points to be fitted are traversed, and x increases from 1 to 24 to simulate the horizontal axis independent variable of the nonlinear least squares curve LM fitting). p Indicates the signal intensity (when fitting, the signal intensity A p The initial value of x is the local maximum value in the data to be fitted). centre Indicates the center position of the waveform (when fitting, the center position of the waveform x centre The initial value of is the sampling point number corresponding to the local maximum value in the data to be fitted), σ represents the waveform standard deviation (during fitting, the initial value of the waveform standard deviation σ is the standard deviation of the pre-fitted waveform corresponding to the data to be fitted); α represents the waveform inclination, α is a fixed value and can be manually adjusted according to the waveform.

[0113] Based on the skew normal waveform fitting function f chj (x,A p ,x centre ,σ), using a full pipeline architecture, the data to be fitted in each spectral acquisition channel is sequentially input into the skew normal waveform fitting function f chj (x,A p ,x centre ,σ), the fitting process is controlled by the state machine, and the optimized vector n=(A′ p ,x′ centre ,σ′),A′ p represents the signal strength after optimization, x′ centre represents the center position of the optimized waveform, and σ′ represents the standard deviation of the optimized waveform.

[0114] 3.3 Distance Calculation Layer

[0115] The distance calculation layer and the correction layer are used to calculate the fitting results of the data fitting layer.

[0116] Among them, the distance calculation layer determines the fitting results corresponding to the transmission signal data and the echo signal data according to the signal number, and calculates the channel calculation distance of the target corresponding to each spectral acquisition channel:

[0117]

[0118] Where x′ centre,j,i represents the optimized waveform center position of the jth spectrum acquisition channel for the ith echo signal data, x′ centre_emission represents the center position of the optimized waveform of the jth spectrum acquisition channel for the emission signal data, c represents the speed of light, f is the current ADC sampling rate, and dis j,i Indicates the channel calculation distance of the j-th spectrum acquisition channel to the i-th target.

[0119] 3.4 Correction Layer

[0120] The correction layer is used to calculate the corrected distance, corrected spectral information, and spectral reflectance corresponding to each spectral acquisition channel. It then combines the corrected distance and corrected spectral information of each spectral acquisition channel to perform multi-channel joint calculations and calculate the target's spatial position information based on the recorded angle information. This specifically includes the following steps:

[0121] Step C1: Calculate the corrected distance corresponding to each spectral acquisition channel based on the following formula:

[0122] dis_real j,i =dis j,i +offset

[0123] Where dis_real j,i Indicates the corrected distance of the jth spectrum acquisition channel to the ith target; offset indicates the correction coefficient with reference to the standard white plate, j is the sequence number of the spectrum acquisition channel, and i is the sequence number of the target;

[0124] Step C2: Calculate the corrected spectral information and spectral reflectance of the target

[0125] In the field of lidar, it is generally believed that the color of the detected target is linearly correlated with the intensity of the lidar echo signal data in each channel.

[0126] The corrected spectral information of the target is calculated according to the following formula:

[0127]

[0128] A 矫正,j,iA′ represents the corrected spectral information of the jth spectral acquisition channel for the i-th target, P,j,i represents the optimized signal intensity of the echo signal data of the i-th target from the j-th spectrum acquisition channel, represents the optimized signal intensity of the echo signal data recorded by the standard white plate in the jth spectrum acquisition channel,

[0129] The spectral reflectance of the target in different spectral acquisition channels is calculated based on the following formula:

[0130]

[0131] Where, ρ j,i A represents the spectral reflectance of the jth spectral acquisition channel for the i-th target, 0,j Indicates the intensity of the echo signal of the target under the D65 light source stored in the FPGA;

[0132] Step C3: performing multi-channel joint calculation based on the corrected distance and corrected spectrum information corresponding to each spectral acquisition channel and calculating the spatial position information of the target based on the recorded angle information;

[0133] Step C4: Package and output the target's spatial position information, corrected spectral information, and spectral reflectance.

[0134] 4. Data communication layer

[0135] The system also includes a data communication layer for data exchange between a host computer and the FPGA. Users can use a visualization window to select and control FPGA functions or input custom parameters. In this embodiment, the data communication layer uses the Advanced eXtensible Interface (AXI) protocol to control FPGA functions and receive user parameters.

[0136] Example 2

[0137] A method for online processing of multi-channel laser radar echo data, using the system for online processing of multi-channel laser radar echo data described in Example 1, specifically includes the following steps:

[0138] Step 1: The online processing system starts the correction preset function (i.e., starts the data distribution layer, the data cache layer, the data pre-fitting layer of the data processing layer, the data fitting layer of the data processing layer, and the distance solution layer of the data processing layer);

[0139] Taking the standard white board as the target, the total station is used to measure the standard white board multiple times, while the lidar is used to continuously measure the same standard white board.

[0140] Among them, the actual distance of the standard whiteboard is obtained by single-point measurement of the total station;

[0141] The echo data obtained by the laser radar fixed-point scanning of the standard whiteboard is input into the online processing system before operation, and the online processing system calculates the channel calculation distance of the standard whiteboard in real time;

[0142] Step 2: Calculate the correction coefficient offset with the standard white board as the reference based on the actual distance of the standard white board obtained by the total station single-point measurement, the channel calculation distance of the standard white board, and the following formula. Save the correction coefficient offset with the standard white board as the reference to the correction layer of the data processing layer:

[0143]

[0144] Where, dis k,real is the actual distance of the standard white board measured by the total station for the kth time, dis k,chj is the channel calculation distance of the jth spectrum acquisition channel corresponding to the lidar to the standard white plate during the kth measurement, J is the total number of actual effective spectrum acquisition channels, and m is the number of measurements;

[0145] In this embodiment, step 2 is automatically completed in the FPGA host computer;

[0146] Step 3: The online processing system starts the solution function (i.e., starts the data distribution layer, data cache layer and data processing layer);

[0147] The test object is taken as the target and the laser radar is used to scan the test object at a fixed point. The echo data obtained by the laser radar scanning the test object is input into the online processing system in real time. The online processing system outputs the spatial position information, corrected spectral information and spectral reflectivity of the test object.

[0148] The specific embodiments described herein are merely illustrative of the spirit of the present invention. Persons skilled in the art may make various modifications, additions, or substitutions to the described specific embodiments without departing from the spirit of the present invention or exceeding the scope of the appended claims.

Claims

1. A laser radar multi-channel echo data online processing system, characterized in that: It includes a data distribution layer, which receives the echo data output by the lidar acquisition system, segments the echo data according to the spectral acquisition channel to obtain segmented data, and sends the segmented data to the data cache layer. The segmented data includes the channel number corresponding to the spectral acquisition channel and the corresponding channel original sampling point sequence; The data cache layer performs denoising and filtering on the original sampling point sequence corresponding to each spectral acquisition channel in time order, extracts the local maximum, the filtered sampling point subsequence corresponding to the local maximum, and the sequence number of the local maximum in the corresponding filtered sampling point subsequence, and inputs them into the data processing layer as a set of data to be pre-fitted; The data processing layer includes the data pre-fitting layer, the data fitting layer and the distance calculation layer in sequence: The data pre-fitting layer performs pre-fitting based on the full width at half maximum interval (FWHM) of the filtered sampling point subsequence in each group of data to be pre-fitted to obtain the corresponding pre-fitted waveform standard deviation, and classifies it into a group of data to be fitted together with the corresponding group of data to be pre-fitted; The data fitting layer performs nonlinear least squares curve LM fitting on the data stream of the fitted data based on the skew normal waveform fitting function, obtains the optimized signal strength and the optimized waveform center position and sends them to the distance solution layer. The distance calculation layer calculates the distance of the target channel by the optimized waveform center position.

2. The laser radar multi-channel echo data online processing system according to claim 1, characterized in that: The echo data is segmented and processed according to the spectrum acquisition channel, specifically including the following steps: The data distribution layer strips off the total packet header and target angle information of the echo data and saves them to the register. Then, it identifies the channel flag corresponding to the original sampling point sequence of the channel in each echo data, strips off the channel flag and assigns a channel number to the corresponding original sampling point sequence of the channel. The channel number and the corresponding original sampling point sequence of the channel are sent as segmented data to the data cache layer.

3. The laser radar multi-channel echo data online processing system according to claim 2, characterized in that: The data cache layer includes a pre-processing layer and a data layer in sequence: For each spectral acquisition channel, the preprocessing layer uses the first P original sampling points in the channel's original sampling point sequence to calculate the standard deviation and intensity mean, and uses them as the noise standard deviation and noise intensity mean, respectively. The corresponding segmented data, noise standard deviation, and noise intensity mean are cached in the data buffer FIFO; among them, the first P original sampling points are all noise sampling points; The data layer performs threshold processing, filtering processing, and extracts the data stream of the original sampling point sequence of each channel in turn according to the noise standard deviation and noise intensity mean of each spectral acquisition channel. The data stream of the original sampling point sequence of each channel is processed in turn, and the data to be pre-fitted is extracted. The data to be pre-fitted includes the local maximum, the filtered sampling point subsequence corresponding to the local maximum, and the serial number of the local maximum in the corresponding filtered sampling point subsequence, and the angle information is extracted from the register.

4. The laser radar multi-channel echo data online processing system according to claim 3, characterized in that: The data layer specifically includes the following processing steps: Step A1: For each spectrum acquisition channel, calculate the corresponding threshold value according to the following formula, and perform threshold processing on the corresponding channel original sampling point sequence: threshold j =mean j +3×σ j,noise Among them, threshold j Indicates the threshold value of the jth spectrum acquisition channel, mean j is the noise intensity mean of the jth spectrum acquisition channel, σ j,noise is the noise standard deviation of the jth spectral acquisition channel, denoted as the noise standard deviation σ j,noise , j represents the serial number of the spectrum acquisition channel; Step A2: For each channel original sampling point sequence, the value is higher than the threshold value. j The sequence of original sampling points is composed of the noise standard deviation σ j,noise , select the filter for smoothing filtering to obtain the sampling point sequence after channel filtering; Step A3: extract the local maximum from the channel filtered sampling point sequence, and capture the filtered sampling point subsequence corresponding to the local maximum as the sampling point sequence to be fitted; use the local maximum, the filtered sampling point subsequence corresponding to the local maximum, and the sequence number of the local maximum in the corresponding filtered sampling point subsequence as a set of data to be pre-fitted, and extract the angle information from the register and input them together to the data processing layer to the data buffer FIFO.

5. The laser radar multi-channel echo data online processing system according to claim 4, characterized in that: Extracting a local maximum from the channel filtered sampling point sequence and capturing a filtered sampling point subsequence corresponding to the local maximum specifically comprises the following steps: A31, grouping the filtered sampling points in the channel filtered sampling point sequence to obtain a sequence of sampling point groups, sequentially detecting the maximum intensity of the filtered sampling points in each sampling point group as the group maximum value of the sampling point group and storing the maximum value, and each time a group maximum value is saved, checking the number of saved group maximum values, and when n group maximum values ​​are stored, executing A32; wherein the filtered sampling points corresponding to the n sampling point groups can cover the waveform of one laser pulse; A32. If the maximum value of the group in the middle is not the largest among the n stored maximum values ​​of the groups, delete the earliest stored maximum value of the group and return to step A31 to continue detecting the maximum value of the group for the next sampling point group. If the maximum value of the group in the middle is the largest among the n saved maximum values ​​of the group, then the maximum value of the current middle group is regarded as a local maximum, and the filtered sampling points in the current n sampling point group are regarded as the filtered sampling point subsequence corresponding to the local maximum; Assign a signal number to the current filtered sampling point subsequence. The first digit of the signal number is equal to the corresponding channel number, and the second digit of the signal number is the count number. The count number is set as follows: each time a local maximum value is obtained, the count number is incremented according to the preset step size. The local maximum corresponding to the same signal number, the filtered sampling point subsequence corresponding to the local maximum, and the sequence number of the local maximum in the corresponding filtered sampling point subsequence are taken as a group of data to be pre-fitted, and the filtered sampling points in the data to be pre-fitted are the sampling points to be fitted; For each spectrum acquisition channel, a group of pre-fitted data corresponding to the first signal number is used as the transmission signal data, and the pre-fitted data corresponding to other signal numbers except the first signal number are used as the echo signal data; The earliest saved group maximum value is deleted, and the process returns to step A31 to continue detecting the group maximum value for the next sampling point group until all filtered sampling points in the channel filtered sampling point sequence are traversed.

6. The laser radar multi-channel echo data online processing system according to claim 5, characterized in that: The data pre-fitting layer performs pre-fitting based on the full width at half maximum interval (FWHM) of the filtered sampling point subsequence in each set of pre-fitted data to obtain the corresponding pre-fitted waveform standard deviation, specifically including the following process: Step B1, taking the number of sampling points to be fitted corresponding to the intensity of the sampling points to be fitted in the data to be pre-fitted being greater than half the maximum intensity of the sampling points to be fitted in the data to be pre-fitted as the full width at half maximum interval FWHM of the data to be pre-fitted, taking the starting point of the full width at half maximum interval FWHM as the preset starting point a, and taking the end point of the full width at half maximum interval FWHM as the preset end point b; Step B2: performing a secondary differentiation on the subsequence of filtered sampling points in the pre-fitted data, taking the sampling points to be fitted whose corresponding differentiation results are close to 0 as inflection points, taking the inflection point closest to the preset starting point a as the starting point x1 of the pre-fitting interval, and taking the inflection point closest to the preset starting point b as the end point x2 of the pre-fitting interval; Step B3: Based on the waveform of the sampling points to be fitted of the data to be pre-fitted being a skewed normal distribution, determine the standard deviation of the pre-fitted waveform of the target signal data according to the starting point x1 of the pre-fitting interval, the end point x2 of the pre-fitting interval, the full width at half maximum interval FWHM, and the local maximum value.

7. The laser radar multi-channel echo data online processing system according to claim 6, characterized in that: The distance calculation layer calculates the distance of the target channel from the optimized waveform center position based on the following formula: Where x′ centre,j,i represents the optimized waveform center position of the jth spectrum acquisition channel for the ith echo signal data, x′ centre_emission represents the center position of the optimized waveform of the jth spectrum acquisition channel for the emission signal data, c represents the speed of light, f is the current ADC sampling rate, and dis j,i Indicates the channel calculation distance of the j-th spectrum acquisition channel to the i-th target.

8. The laser radar multi-channel echo data online processing system according to claim 7, characterized in that: The data processing layer also includes a correction layer, which specifically includes the following operations: Step C1: Calculate the corrected distance corresponding to each spectral acquisition channel based on the following formula: dis_real j,i =dis j,i +offset Where dis_real j,i Indicates the corrected distance of the jth spectrum acquisition channel to the ith target; offset indicates the correction coefficient with reference to the standard white plate, j is the sequence number of the spectrum acquisition channel, and i is the sequence number of the target; Step C2: Calculate the corrected spectrum information of the target according to the following formula: A 矫正,j,i A′ represents the corrected spectral information of the jth spectral acquisition channel for the i-th target, P,j,i A′ represents the optimized signal intensity of the echo signal data of the jth spectral acquisition channel for the i-th target, P0,j represents the optimized signal intensity of the echo signal data recorded by the standard white plate in the jth spectrum acquisition channel, The spectral reflectance of the target in different spectral acquisition channels is calculated based on the following formula: Where, ρ j,i A represents the spectral reflectance of the jth spectral acquisition channel for the i-th target, 0,j Indicates the intensity of the echo signal of the target under the D65 light source stored in the FPGA; Step C3: performing multi-channel joint calculation based on the corrected distance and corrected spectrum information corresponding to each spectral acquisition channel and calculating the spatial position information of the target based on the recorded angle information; Step C4: Package and output the target's spatial position information, corrected spectral information, and spectral reflectance.

9. A method for online processing of laser radar multi-channel echo signals, utilizing the laser radar multi-channel echo data online processing system according to claim 8, characterized in that: The steps include: Step 1: The online processing system starts the data distribution layer, the data cache layer, the data pre-fitting layer of the data processing layer, the data fitting layer of the data processing layer, and the distance calculation layer of the data processing layer; Use the total station to measure the standard whiteboard multiple times, and the lidar to continuously measure the same standard whiteboard. Among them, the actual distance of the standard whiteboard is obtained by single-point measurement of the total station; The echo data obtained by the laser radar fixed-point scanning of the standard whiteboard is input into the online processing system in real time, and the online processing system calculates the channel calculation distance of the standard whiteboard in real time; Step 2: Calculate the correction coefficient offset based on the standard whiteboard according to the following formula, and save the correction coefficient offset based on the standard whiteboard to the correction layer of the data processing layer: Where, dis k,real is the actual distance of the standard white board measured by the total station for the kth time, dis k,chj is the channel calculation distance of the jth spectrum acquisition channel corresponding to the lidar to the standard white plate during the kth measurement, J is the total number of actual effective spectrum acquisition channels, and m is the number of measurements; Step 3: The online processing system starts the data distribution layer, the data cache layer and the data processing layer; The laser radar is used to scan the test object at a fixed point, and the echo data of the laser radar fixed-point scanning test object is input into the online processing system in real time. The online processing system outputs the spatial position information, corrected spectral information and spectral reflectivity of the target.

Citation Information

Cited By

  • High-precision calibration method of hyperspectral laser radar for photon counting

    CN122063570A

  • A high-precision calibration method for a hyperspectral lidar for photon counting

    CN122063570B