Moving target speed correction method and system of laser radar point cloud and electronic equipment
By extracting radial velocity scalars and vectors from lidar point clouds and combining them with error factors and adaptive Kalman filters, the problems of error accumulation and tangential velocity loss in lidar point cloud data processing are solved, achieving high-precision full velocity calculation.
Patent Information
- Application Number
- CN202511816634.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-04
- Publication Date
- 2026-03-06
AI Technical Summary
Existing lidar point cloud data processing suffers from error accumulation and loss of tangential velocity information, making it impossible to independently and quickly provide high-precision full velocity data for moving targets.
By extracting radial velocity scalar and radial velocity vector from lidar point cloud, calculating error factor and weight, and using adaptive Kalman filter and physical boundary constraints, the radial velocity scalar and radial velocity vector are fused to calculate the full velocity vector.
It achieves fast and accurate output of the full velocity vector of the moving target, eliminates the accumulated error of the multi-frame point cloud displacement method, and improves the accuracy of velocity estimation.
Smart Images

Figure CN121613433A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of moving target perception technology, and in particular to a method, system and electronic device for correcting the velocity of moving targets in lidar point clouds. Background Technology
[0002] LiDAR point clouds record information such as the spatial coordinates and reflection intensity of target objects by acquiring three-dimensional spatial data. They are used for real-time environmental perception, high-precision map positioning, and autonomous driving decision-making in autonomous driving and robot navigation.
[0003] In related technologies, if continuous frame point cloud registration is used to calculate the displacement vector of a moving object and the velocity is estimated by combining the time difference, the calculation result has high latency and cumulative error. If the radial velocity component of the point cloud is directly obtained through the Doppler effect by the FMCW 4D (Frequency-Modulated Continuous Wave 4-Dimensional) lidar, the tangential velocity component cannot be obtained, resulting in the inability to directly output the full velocity vector of the object. Summary of the Invention
[0004] This application provides a method, system, and electronic device for correcting the velocity of moving targets in lidar point clouds, in order to solve the problems of error accumulation and loss of tangential velocity information in current lidar point cloud data processing, which result in the inability to independently and quickly provide high-precision full velocity of moving targets.
[0005] The first aspect of this application provides a method for correcting the velocity of a moving target in a lidar point cloud, comprising the following steps: extracting a radial velocity scalar and a radial velocity vector of the moving target from the lidar point cloud; calculating an error factor based on the radial velocity scalar and the radial velocity vector; calculating the respective weights of the radial velocity scalar and the radial velocity vector based on the error factor, wherein the error factor is the absolute value of the difference between the radial velocity scalar and the radial velocity vector; and calculating the velocity of the moving target based on the radial velocity scalar, the radial velocity vector, and their respective weights.
[0006] Optionally, in one embodiment of this application, extracting the radial velocity scalar and radial velocity vector of a moving target from a lidar point cloud includes: inputting the lidar point cloud into a dual-channel extraction module, and the dual-channel extraction module outputting the radial velocity scalar and radial velocity vector of the moving target, wherein the dual-channel extraction module includes a first data channel and a second data channel, the first data channel outputting the radial velocity scalar and the second data channel outputting the radial velocity vector.
[0007] Optionally, in one embodiment of this application, the first data channel extracts a radial velocity scalar from the lidar point cloud; the second data channel uses a target tracking algorithm to associate continuous frame point clouds, calculates a displacement velocity vector, and projects the displacement velocity vector onto the radar line of sight to obtain a radial velocity vector.
[0008] Optionally, in one embodiment of this application, calculating the respective weights of the radial velocity scalar and the radial velocity vector based on the error factor includes: if the error factor is greater than the error threshold, then the respective weights of the radial velocity scalar and the radial velocity vector are preset weights; if the error factor is less than or equal to the error threshold, then activating the adaptive Kalman filter and using the adaptive Kalman filter to calculate the respective weights of the radial velocity scalar and the radial velocity vector.
[0009] Optionally, in one embodiment of this application, the adaptive Kalman filter is provided with a dynamic weight calculation formula, wherein the dynamic weight calculation formula is: a=
[0010] in, For the radial velocity measurement uncertainty of lidar, This represents the radial component error of the displacement velocity across multiple frames.
[0011] Optionally, in one embodiment of this application, the formula for calculating the error threshold is: k=
[0012] Among them, among them, Chi-square distribution threshold, For the radial velocity measurement uncertainty of lidar, This represents the radial component error of the displacement velocity across multiple frames.
[0013] Optionally, in one embodiment of this application, before calculating the velocity of the moving target based on the radial velocity scalar, the radial velocity vector and their respective weights, the method further includes: obtaining the physical boundary constraints of the weights and correcting the respective weights using the physical boundary constraints.
[0014] A second aspect of this application provides a moving target velocity correction system for a lidar point cloud, comprising: a dual-channel extraction module for extracting a radial velocity scalar and a radial velocity vector of a moving target from the lidar point cloud; a verification module for calculating an error factor based on the radial velocity scalar and the radial velocity vector, and calculating the respective weights of the radial velocity scalar and the radial velocity vector based on the error factor, wherein the error factor is the absolute value of the difference between the radial velocity scalar and the radial velocity vector; and a synthesis module for calculating the velocity of the moving target based on the radial velocity scalar, the radial velocity vector, and their respective weights.
[0015] Optionally, the dual-channel extraction module is further used to: input the lidar point cloud into the dual-channel extraction module, and output the radial velocity scalar and radial velocity vector of the moving target, wherein the dual-channel extraction module includes a first data channel and a second data channel, the first data channel outputs the radial velocity scalar, and the second data channel outputs the radial velocity vector.
[0016] Optionally, in one embodiment of this application, the method further includes: a first data channel extracting a radial velocity scalar from the lidar point cloud; and a second data channel using a target tracking algorithm to correlate continuous frame point clouds, calculate a displacement velocity vector, and project the displacement velocity vector onto the radar line-of-sight direction to obtain a radial velocity vector.
[0017] Optionally, the verification module is further configured to: if the error factor is greater than the error threshold, then the respective weights of the radial velocity scalar and the radial velocity vector are preset weights; if the error factor is less than or equal to the error threshold, then activate the adaptive Kalman filter and use the adaptive Kalman filter to calculate the respective weights of the radial velocity scalar and the radial velocity vector.
[0018] Optionally, in one embodiment of this application, the adaptive Kalman filter is provided with a dynamic weight calculation formula, wherein the dynamic weight calculation formula is: a=
[0019] in, For the radial velocity measurement uncertainty of lidar, This represents the radial component error of the displacement velocity across multiple frames.
[0020] Optionally, in one embodiment of this application, the formula for calculating the error threshold is: k=
[0021] in, Chi-square distribution threshold, For the radial velocity measurement uncertainty of lidar, This represents the radial component error of the displacement velocity across multiple frames.
[0022] Optionally, the system further includes: a correction module, used to obtain the physical boundary constraints of the weights before calculating the velocity of the moving target based on the radial velocity scalar, the radial velocity vector and their respective weights, and to correct the respective weights using the physical boundary constraints.
[0023] A third aspect of this application provides an electronic device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the moving target velocity correction method for lidar point clouds as described in the above embodiments.
[0024] A fourth aspect of this application provides a computer-readable storage medium having a computer program stored thereon, which is executed by a processor to implement the method for correcting the velocity of moving targets in a lidar point cloud as described in the above embodiments.
[0025] Therefore, this application has the following beneficial effects: This application proposes a verification mechanism that integrates radial velocity scalar and radial velocity vector from LiDAR point clouds. It extracts the radial velocity scalar and radial velocity vector of a moving target from the LiDAR point cloud, calculates an error factor by subtracting the radial velocity scalar and radial velocity vector, and calculates the accurate weights of the radial velocity scalar and radial velocity vector based on the error factor and physical boundary constraints. This allows for the rapid calculation of the accurate full velocity vector of the moving target, eliminating the accumulated error of multi-frame point cloud displacement methods, expanding the radial velocity to a full velocity vector, improving the estimated velocity and accuracy, and accurately and directly outputting the full velocity vector of the moving target. Therefore, it solves the problems of the inability to independently and quickly provide high-precision full velocity of moving targets due to the accumulation of errors and loss of tangential velocity information in current LiDAR point cloud data processing.
[0026] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description
[0027] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein: Figure 1 This is a flowchart of a method for correcting the velocity of a moving target in a lidar point cloud according to an embodiment of this application; Figure 2 This is a full-scale speed verification and synthesis architecture diagram provided according to an embodiment of this application; Figure 3 This is an algorithm architecture diagram of a verification module provided according to an embodiment of this application; Figure 4 This is a diagram of a dynamic weighting architecture provided according to an embodiment of this application; Figure 5 This is an example diagram of a moving target velocity correction system for lidar point clouds according to an embodiment of this application; Figure 6 This is a schematic diagram of the structure of an electronic device according to an embodiment of this application. Detailed Implementation
[0028] The embodiments of this application are described in detail below. Examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.
[0029] In related technologies, if the displacement vector of a moving object is calculated by continuous frame point cloud registration using algorithms such as ICP (Iterative Closest Point), and the velocity is inferred by combining the time difference, cumulative errors will occur in dynamic scenes due to occlusion, noise, etc., making it impossible to distinguish between stationary and moving objects. This relies on the accuracy of point cloud matching and additional target tracking algorithms, resulting in high latency in the output of the calculation results. If the radial velocity component of the point cloud is directly obtained by the FMCW 4D LiDAR through the Doppler effect, only the velocity in the radar line of sight direction can be measured, and the tangential velocity component cannot be obtained. Furthermore, since the Doppler effect is proportional to the velocity, the FMCW 4D LiDAR has low sensitivity to low-speed targets, and therefore cannot directly output the full velocity vector of the object.
[0030] The following describes a method, system, and electronic device for correcting the velocity of a moving target in a LiDAR point cloud, based on embodiments of the present application, with reference to the accompanying drawings. Addressing the problems mentioned in the background art, such as error accumulation and loss of tangential velocity information in current LiDAR point cloud data processing, which prevent the independent provision of high-precision full velocity data, this application provides a method for correcting the velocity of a moving target in a LiDAR point cloud. In this method, a radial velocity scalar and a radial velocity vector of the moving target are extracted from the LiDAR point cloud. An error factor is calculated by subtracting the radial velocity scalar and the radial velocity vector and taking their absolute values. Based on the error factor and physical boundary constraints, the accurate weights of the radial velocity scalar and the radial velocity vector are calculated, thereby quickly calculating the accurate full velocity vector of the moving target. This solves the problems of error accumulation and loss of tangential velocity information in current LiDAR point cloud data processing, which prevent the independent and rapid provision of high-precision full velocity data for moving targets.
[0031] Specifically, Figure 1 This is a flowchart illustrating a method for correcting the velocity of a moving target in a lidar point cloud, as provided in an embodiment of this application.
[0032] like Figure 1 As shown, the method for correcting the velocity of moving targets in the lidar point cloud includes the following steps: In step S101, the radial velocity scalar and radial velocity vector of the moving target are extracted from the lidar point cloud.
[0033] Among them, the lidar point cloud is a set of three-dimensional spatial data obtained by lidar sensor scanning, which records information such as the spatial coordinates and reflection characteristics of the target object's surface; radial velocity is the velocity component of the moving target along the line of sight; radial velocity scalar is the scalar value of the velocity component of the moving target along the line of sight, which only represents the magnitude of the velocity and does not include direction information; radial velocity vector is the vector value of the velocity component of the moving target along the line of sight, which includes the magnitude of the velocity and the direction of the line connecting the sensor and the target.
[0034] Understandably, by extracting the radial velocity scalar and radial velocity vector of the moving target from the lidar point cloud, we can obtain the motion velocity information of the moving target and its direction information relative to the lidar sensor's line of sight.
[0035] Specifically, information about moving targets is extracted from lidar point clouds, including a radial velocity scalar that represents only the magnitude of the target object's velocity along the lidar sensor's line of sight, and a radial velocity vector that represents the magnitude of the velocity and the line of sight between the sensor and the moving target.
[0036] In the embodiments of this application, extracting the radial velocity scalar and radial velocity vector of a moving target from a lidar point cloud includes: inputting the lidar point cloud into a dual-channel extraction module, and the dual-channel extraction module outputting the radial velocity scalar and radial velocity vector of the moving target. The dual-channel extraction module includes a first data channel and a second data channel, the first data channel outputting the radial velocity scalar and the second data channel outputting the radial velocity vector.
[0037] Understandably, the lidar point cloud is input into the dual-channel extraction module. The lidar point cloud is output as a radial velocity scalar of the moving target through the first data channel of the dual-channel extraction module; and as a radial velocity vector of the moving target through the second data channel of the dual-channel extraction module, thereby obtaining the radial velocity scalar and radial velocity vector of the moving target in the lidar point cloud.
[0038] In the embodiments of this application, the first data channel extracts the radial velocity scalar from the lidar point cloud; the second data channel uses a target tracking algorithm to associate continuous frame point clouds, calculates the displacement velocity vector, and projects the displacement velocity vector onto the line of sight of the lidar sensor to obtain the radial velocity vector.
[0039] Among them, the target tracking algorithm is used to continuously locate the target's motion state in the lidar point cloud sequence; continuous frame point cloud refers to a time sequence composed of multiple frames of point cloud data collected by lidar in continuous time; displacement velocity vector is a physical quantity that describes the motion state of an object, containing information on displacement direction and velocity magnitude, and the projection of displacement velocity onto the lidar sensor's line of sight is radial velocity.
[0040] Understandably, the first data channel in the dual-channel extraction module can directly extract the radial velocity scalar from the lidar point cloud; the second data channel in the dual-channel extraction module calculates the displacement velocity vector of the moving target from the time sequence of multiple frames of point cloud data continuously acquired by the lidar, projects the displacement velocity vector onto the radar line of sight, calculates the radial velocity vector of the moving target, and thus obtains the tangential velocity component of the moving target.
[0041] Specifically, such as Figure 2 As shown, the first data channel in the dual-channel extraction module is the radial velocity extraction module, which can directly extract the radial velocity scalar from the lidar point cloud; the second data channel in the dual-channel extraction module is the multi-frame point cloud displacement calculation module, which can use algorithms such as SORT (Simple Online and Realtime Tracking) to associate the time sequence of multi-frame point cloud data acquired in continuous time, calculate the displacement velocity vector of the moving target, project the displacement velocity vector onto the radar line of sight, and obtain the tangential velocity component of the moving target, i.e., the radial velocity vector.
[0042] Therefore, in this embodiment of the application, by inputting the lidar point cloud into the dual-channel extraction module, directly extracting the radial velocity scalar in the first data channel of the dual-channel extraction module, and calculating the tangential velocity component in the second data channel of the dual-channel extraction module, the radial velocity vector of the target is extracted, thereby expanding the radial velocity into a full velocity vector.
[0043] In step S102, an error factor is calculated based on the radial velocity scalar and the radial velocity vector, and the respective weights of the radial velocity scalar and the radial velocity vector are calculated based on the error factor. The error factor is the absolute value of the difference between the radial velocity scalar and the radial velocity vector.
[0044] Among them, the error factor is a quantitative indicator describing the impact of the moving target error on the result; the weight is a reliability coefficient used to quantify the radial velocity scalar and radial velocity vector data.
[0045] It is understandable that the motion target error factor is obtained by taking the absolute value of the difference between the radial velocity scalar and the radial velocity vector. The method of selecting the weights of the velocity scalar and the radial velocity vector according to the error factor, and dynamically allocating the weights based on the reliability of the measurement, can suppress abnormal errors and enhance the robustness of the results.
[0046] In the embodiments of this application, the calculation of the respective weights of the radial velocity scalar and the radial velocity vector based on the error factor includes: if the error factor is greater than the error threshold, the respective weights of the radial velocity scalar and the radial velocity vector are preset weights; if the error factor is less than or equal to the error threshold, the adaptive Kalman filter is activated, and the respective weights of the radial velocity scalar and the radial velocity vector are calculated using the adaptive Kalman filter.
[0047] Among them, the error threshold is a pre-set error critical value; the preset weight is a weight value determined before calculation and analysis; the adaptive Kalman filter can calculate the dynamic weight under uncertain or noise statistical characteristic changes by dynamically adjusting the model parameters.
[0048] Understandably, before calculating the respective weights of the radial velocity scalar and the radial velocity vector, it is necessary to compare the error factor with the error threshold. If the error factor is greater than the preset error threshold, the respective weights of the radial velocity scalar and the radial velocity vector are the preset weights. If the error factor is less than or equal to the preset error threshold, the adaptive Kalman filter needs to be activated, and the adaptive Kalman filter is used to calculate the respective dynamic weights of the radial velocity scalar and the radial velocity vector.
[0049] Specifically, such as Figure 3 As shown, the preset weights are set to 0 or 1. If the error factor is greater than the error threshold, it means that the absolute value of the difference between the radial velocity scalar and the radial velocity vector is greater than the preset error threshold. At this time, the moving target may have a large error due to scene occlusion, noise interference, etc., which makes the inconsistency between the radial velocity scalar and the radial velocity vector exceed the acceptable range. Then, the weights of the radial velocity scalar and the radial velocity vector are set to the preset weights of 1 or 0. If the error factor is less than or equal to the error threshold, it means that the absolute value of the difference between the radial velocity scalar and the radial velocity vector is within the preset error threshold. At this time, the velocity error of the moving target is small, and the error between the radial velocity scalar and the radial velocity vector is within the acceptable range. Then, the adaptive Kalman filter needs to be activated, and the dynamic weights of the radial velocity scalar and the radial velocity vector are calculated using the adaptive Kalman filter.
[0050] For example, if the target object is moving away from the lidar (with the direction of movement being positive), the true radial velocity vector is +7 m / s, and the radial velocity scalar is 7 m / s. Assuming an error threshold of 3 m / s, if the lidar is interfered with, the measured radial velocity vector will be +3 m / s, and the radial velocity scalar will be 8 m / s. In this case, the error factor is 5 m / s, which is greater than the preset threshold, making the data unreliable. Therefore, the weights of the radial velocity scalar and the radial velocity vector will be the preset weights of 0 or 1. If the lidar measures a radial velocity vector of +6 m / s and a radial velocity scalar of 8 m / s, the error factor is 2 m / s, which is less than the preset threshold, making the data reliable. In this case, the adaptive Kalman filter will be activated, and the weights of the radial velocity scalar and the radial velocity vector will be calculated using the adaptive Kalman filter.
[0051] In the embodiments of this application, the adaptive Kalman filter is provided with a dynamic weight calculation formula, wherein the dynamic weight calculation formula is: a=
[0052] in, For the radial velocity measurement uncertainty of lidar, This represents the radial component error of the displacement velocity across multiple frames.
[0053] Understandably, the adaptive Kalman filter can calculate the dynamic weights of the radial velocity scalar and the radial velocity vector. The dynamic weights are the difference between the square of the radial velocity measurement uncertainty of the lidar and the sum of the square of the radial velocity measurement uncertainty of the lidar and the square of the radial component errors of the displacement velocity in multiple frames. The filter can increase the weight of data with high reliability and decrease the weight of data with low reliability.
[0054] Specifically, the radial velocity measurement uncertainty of a lidar refers to the potential deviation between the measured result and the true velocity due to various errors. It is negatively correlated with the signal-to-noise ratio (SNR); the weaker the signal, the stronger the noise, and the lower the SNR, the greater the uncertainty in the lidar's radial velocity measurement. The radial component error of multi-frame displacement velocity refers to the deviation between the radial velocity vector along the lidar sensor's line-of-sight direction, calculated from multiple sets of data continuously collected by the lidar sensor, combined with the displacement of the moving target and the time interval between adjacent frames, and the true radial velocity of the target. This error cannot be directly measured and is determined by the point cloud matching accuracy. If the point cloud matching accuracy is high, the calculated displacement will be close to the true displacement, resulting in a small radial component error in the multi-frame displacement velocity. Conversely, if the point cloud matching accuracy is low, noise / occlusion will cause large deviations in the corresponding points, leading to a significant deviation of the calculated displacement from the true value and a larger radial component error in the multi-frame displacement velocity.
[0055] In the embodiments of this application, the formula for calculating the error threshold is: k=
[0056] in, Chi-square distribution threshold, For the radial velocity measurement uncertainty of lidar, This represents the radial component error of the displacement velocity across multiple frames.
[0057] It is understandable that the error threshold is calculated using the chi-square distribution threshold, the radial velocity measurement uncertainty of the lidar, and the radial component error of the multi-frame displacement velocity. The error threshold is the product of the chi-square distribution threshold, the square of the radial velocity measurement uncertainty of the lidar, and the square of the radial component error of the multi-frame displacement velocity.
[0058] Specifically, the chi-square distribution threshold represents the maximum deviation between the data that the algorithm can accept in practice and the theoretical expectation. The specific value needs to be defined in combination with the limitations of equipment hardware, environmental interference, and experience accumulation.
[0059] This application embodiment calculates the weights of the radial velocity scalar and radial velocity vector by calculating error factors, thereby determining their respective weights. The weight ratio of the radial velocity scalar and radial velocity vector in the velocity of the moving target is calculated, and the velocity parameters less affected by noise / occlusion are given higher weights, while the velocity parameters more affected by noise / occlusion are given lower weights. This suppresses abnormal errors and achieves the effect of eliminating the cumulative error of the multi-frame point cloud displacement method.
[0060] In step S103, the velocity of the moving target is calculated based on the radial velocity scalar, the radial velocity vector, and their respective weights.
[0061] The velocity of the moving target is a total velocity vector, which includes the magnitude of the moving target's velocity and the direction of the moving target relative to the line of sight of the lidar sensor.
[0062] Understandably, by using the obtained radial velocity scalar, radial velocity vector, and calculated radial velocity scalar weight and radial velocity vector weight, the total velocity of the moving target can be calculated, thereby improving the calculation accuracy.
[0063] In the embodiments of this application, before calculating the velocity of the moving target based on the radial velocity scalar, the radial velocity vector and their respective weights, the method further includes: obtaining the physical boundary constraints of the weights and correcting the respective weights using the physical boundary constraints.
[0064] Among them, physical boundary constraints are the theoretical maximum and minimum values of the weights, as well as the physical boundary constraints of spatially adjacent points.
[0065] Understandably, before calculating the velocity of the moving target based on the radial velocity scalar, radial velocity vector and their respective weights, it is necessary to check and correct the physical range of the radial velocity scalar weights and radial velocity vector weights to ensure that the weight values are within the constraints and can correctly reflect the velocity of the moving target.
[0066] Specifically, such as Figure 4 As shown, in this embodiment of the application, the dynamic weights of the radial velocity scalar and radial velocity vector calculated in the adaptive Kalman filter can be input into the correction module. By constraining the theoretical maximum and minimum values of the weights and physical boundary constraints of spatially adjacent points, the corrected radial velocity scalar and radial velocity vector weights can be obtained.
[0067] The embodiments of this application can accurately calculate the full velocity of a moving target in its true state by modifying the weights of the radial velocity scalar and the radial velocity vector. This can eliminate accumulated errors, eliminate the need for additional algorithms due to error interference, and make the calculation results more accurate and faster, thereby improving the speed and accuracy of velocity estimation for moving targets.
[0068] The following is a specific embodiment describing the moving target velocity correction method or execution flow of the lidar point cloud of this application: (1) Dual-channel data acquisition: 1) Channel A: Directly extract the radial velocity scalar V_radial from the FMCW point cloud.
[0069] 2) Channel B: By associating continuous frame point clouds with a target tracking algorithm (such as SORT), the displacement velocity vector V_dis is calculated, and V_dis is projected onto the radar line of sight to obtain the radial component V_dis_radial of the displacement method.
[0070] (2) Verification and compensation: Calculate the error factor: f = |V_radial - V_dis_radial|; If f > threshold k, then a = 1 or a = 0, depending on the overall confidence strategy. If f <= threshold k, then activate the adaptive Kalman filter and calculate the dynamic weight a. a= ; Threshold k= ; in, Set a custom value for the chi-square distribution threshold (the maximum physically tolerable inconsistency); The radial velocity measurement uncertainty of the FMCW radar (negatively correlated with the signal-to-noise ratio SNR). The radial component error of the multi-frame displacement velocity (determined by the point cloud matching accuracy).
[0071] (3) Verify the dynamic weight a: Physical boundary constraints are adopted, namely the theoretical maximum and minimum values min and max constraints of a, as well as the physical boundary constraints of spatially adjacent points (e.g., the nearest point on the x, y, and z axes, or 3 points).
[0072] In summary, the embodiments of this application provide a verification mechanism that integrates the radial velocity scalar and radial velocity vector of a lidar point cloud. By extracting the radial velocity scalar and radial velocity vector of the moving target from the lidar point cloud, and calculating the participation of the radial velocity scalar and radial velocity vector in the velocity of the moving target in a weighted manner, it can expand the radial velocity into a full velocity vector, eliminate the cumulative error of the multi-frame point cloud displacement method, improve the estimated velocity and accuracy, and achieve the function of accurately and directly outputting the full velocity vector of the moving target.
[0073] Next, referring to the accompanying drawings, a moving target velocity correction system for lidar point clouds according to an embodiment of this application is described.
[0074] Figure 5 This is a block diagram of a moving target velocity correction system for lidar point clouds provided in an embodiment of this application.
[0075] like Figure 5 As shown, the moving target velocity correction system 50 of the lidar point cloud includes: a dual-channel extraction module 501, a verification module 502, and a synthesis module 503.
[0076] The dual-channel extraction module 501 is used to extract the radial velocity scalar and radial velocity vector of the moving target from the lidar point cloud; the verification module 502 is used to calculate the error factor based on the radial velocity scalar and radial velocity vector, and calculate the respective weights of the radial velocity scalar and radial velocity vector based on the error factor, wherein the error factor is the absolute value of the difference between the radial velocity scalar and the radial velocity vector; the synthesis module 503 is used to calculate the velocity of the moving target based on the radial velocity scalar, radial velocity vector and their respective weights.
[0077] In this embodiment of the application, the dual-channel extraction module 501 is further used to: input the lidar point cloud into the dual-channel extraction module 501, and output the radial velocity scalar and radial velocity vector of the moving target. The dual-channel extraction module 501 includes a first data channel and a second data channel. The first data channel outputs the radial velocity scalar and the second data channel outputs the radial velocity vector.
[0078] In this embodiment, the first data channel extracts the radial velocity scalar from the lidar point cloud; the second data channel uses a target tracking algorithm to associate continuous frame point clouds, calculates the displacement velocity vector, projects the displacement velocity vector onto the radar line of sight, and obtains the radial velocity vector.
[0079] In this embodiment of the application, the verification module 502 is further configured to: if the error factor is greater than the error threshold, then the respective weights of the radial velocity scalar and the radial velocity vector are preset weights; if the error factor is less than or equal to the error threshold, then the adaptive Kalman filter is activated, and the respective weights of the radial velocity scalar and the radial velocity vector are calculated using the adaptive Kalman filter.
[0080] In this embodiment, the adaptive Kalman filter is provided with a dynamic weight calculation formula, wherein the dynamic weight calculation formula is: a=
[0081] in, For the radial velocity measurement uncertainty of lidar, This represents the radial component error of the displacement velocity across multiple frames.
[0082] In this embodiment, the formula for calculating the error threshold is: k=
[0083] Among them, among them, Chi-square distribution threshold, For the radial velocity measurement uncertainty of lidar, This represents the radial component error of the displacement velocity across multiple frames.
[0084] In this embodiment of the application, the moving target velocity correction system 50 of the lidar point cloud further includes: a correction module.
[0085] The correction module is used to obtain the physical boundary constraints of the weights before calculating the velocity of the moving target based on the radial velocity scalar, radial velocity vector and their respective weights, and to correct the respective weights using the physical boundary constraints.
[0086] It should be noted that the foregoing explanation of the embodiment of the moving target velocity correction method for lidar point clouds also applies to the moving target velocity correction system of lidar point clouds in this embodiment, and will not be repeated here.
[0087] In summary, the embodiments of this application provide a verification mechanism that integrates the radial velocity scalar and radial velocity vector of a lidar point cloud. By extracting the radial velocity scalar and radial velocity vector of the moving target from the lidar point cloud, and calculating the participation of the radial velocity scalar and radial velocity vector in the velocity of the moving target in a weighted manner, it can expand the radial velocity into a full velocity vector, eliminate the cumulative error of the multi-frame point cloud displacement method, improve the estimated velocity and accuracy, and achieve the function of accurately and directly outputting the full velocity vector of the moving target.
[0088] Figure 6 A schematic diagram of the structure of an electronic device provided in an embodiment of this application. The electronic device may include: The memory 601, the processor 602, and the computer program stored on the memory 601 and capable of running on the processor 602.
[0089] When the processor 602 executes the program, it implements the method for correcting the velocity of moving targets in the lidar point cloud provided in the above embodiments.
[0090] Furthermore, electronic devices also include: Communication interface 603 is used for communication between memory 601 and processor 602.
[0091] The memory 601 is used to store computer programs that can run on the processor 602.
[0092] The memory 601 may include high-speed RAM (Random Access Memory) memory, and may also include non-volatile memory, such as at least one disk storage.
[0093] If the memory 601, processor 602, and communication interface 603 are implemented independently, then the communication interface 603, memory 601, and processor 602 can be interconnected via a bus to complete communication between them. The bus can be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus, or an EISA (Extended Industry Standard Architecture) bus, etc. The bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 6 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.
[0094] Optionally, in a specific implementation, if the memory 601, processor 602, and communication interface 603 are integrated on a single chip, then the memory 601, processor 602, and communication interface 603 can communicate with each other through an internal interface.
[0095] The processor 602 may be a CPU (Central Processing Unit), an ASIC (Application Specific Integrated Circuit), or one or more integrated circuits configured to implement the embodiments of this application.
[0096] This application also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the above-described method for correcting the velocity of moving targets in a lidar point cloud.
[0097] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.
[0098] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "N" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0099] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or N executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.
[0100] It should be understood that various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any of the following techniques known in the art, or a combination thereof: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (FPGAs), field-programmable gate arrays (FPGAs), etc.
[0101] Those skilled in the art will understand that all or part of the steps of the methods implementing the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.
[0102] Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of this application.
Claims
1. A method for correcting the velocity of a moving target in a lidar point cloud, characterized in that, The method comprises the following steps: radial velocity scalar and radial velocity vector of a moving target are extracted from a laser radar point cloud; an error factor is calculated according to the radial velocity scalar and the radial velocity vector, and respective weights of the radial velocity scalar and the radial velocity vector are calculated according to the error factor, wherein the error factor is an absolute value of a difference between the radial velocity scalar and the radial velocity vector; the moving target speed is calculated according to the radial velocity scalar, the radial velocity vector and the respective weights.
2. The method of claim 1, wherein, The radial velocity scalar and the radial velocity vector of the moving target are extracted from the laser radar point cloud, comprising: the laser radar point cloud is input into a double-channel extraction module, and the double-channel extraction module outputs the radial velocity scalar and the radial velocity vector of the moving target, wherein the double-channel extraction module comprises a first data channel and a second data channel, the first data channel outputs the radial velocity scalar, and the second data channel outputs the radial velocity vector.
3. The method of claim 2, wherein, The first data channel extracts the radial velocity scalar from the laser radar point cloud; the second data channel correlates continuous frame point clouds by using a target tracking algorithm, calculates a displacement velocity vector, projects the displacement velocity vector to a radar line-of-sight direction, and obtains the radial velocity vector.
4. The method of claim 1, wherein, The respective weights of the radial velocity scalar and the radial velocity vector are calculated according to the error factor, comprising: if the error factor is greater than an error threshold value, the respective weights of the radial velocity scalar and the radial velocity vector are preset preset weights; if the error factor is less than or equal to the error threshold value, an adaptive Kalman filter is activated, and the respective weights of the radial velocity scalar and the radial velocity vector are calculated by using the adaptive Kalman filter.
5. The method of claim 4, wherein, The adaptive Kalman filter is provided with a dynamic weight calculation formula, wherein the dynamic weight calculation formula is: a= wherein, is the radial velocity measurement uncertainty of the lidar, is the radial component error of the multi-frame displacement velocity.
6. The method of claim 5, wherein, a calculation formula of the error threshold value is: k= wherein, is a chi-squared distribution threshold, is a radial velocity measurement uncertainty of the lidar, is a radial component error of the multi-frame displacement velocity.
7. The method of claim 4, wherein, Before the moving target speed is calculated according to the radial velocity scalar, the radial velocity vector and the respective weights, the following step is further included: a physical boundary constraint of the weight is obtained, and the respective weights are corrected by using the physical boundary constraint.
8. A system for velocity correction of moving targets in a lidar point cloud, the system comprising: It comprises: a double-channel extraction module, which extracts the radial velocity scalar and the radial velocity vector of a moving target from a laser radar point cloud; a checking module, which is used for calculating an error factor according to the radial velocity scalar and the radial velocity vector, and calculating respective weights of the radial velocity scalar and the radial velocity vector according to the error factor, wherein the error factor is an absolute value of a difference between the radial velocity scalar and the radial velocity vector; a synthesizing module, which is used for calculating the moving target speed according to the radial velocity scalar, the radial velocity vector and the respective weights.
9. An electronic device, comprising: It comprises: a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor executes the program to implement the laser radar point cloud moving target speed correction method according to any one of claims 1-7.
10. A computer readable storage medium having stored thereon a computer program or instructions, characterized in that, The computer program or instructions are executed to implement the laser radar point cloud moving target speed correction method according to any one of claims 1-7.