A method for processing point cloud data to improve the authenticity of simulated lidar data

By establishing a multivariate error model in the lidar data acquisition process, the simulated lidar data is processed, and the problem of large differences between simulated data and real data is solved, and the authenticity of data and the migration of application are improved.

CN115081240BActive Publication Date: 2025-05-27ZHEJIANG UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210834052.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-14
Publication Date
2025-05-27
Estimated Expiration
2042-07-14

AI Technical Summary

Technical Problem

In the prior art, there is a big difference between simulated lidar data and real data, resulting in algorithms trained in the simulation environment being unable to effectively migrate to the real environment.

Method used

By analyzing the error sources of lidar during data acquisition, a multivariate error model of ranging error, angle error, point loss probability and motion distortion is established, and these models are used to process simulated lidar data, adding ranging error, angle error, point loss and motion distortion, thereby improving the authenticity of the data.

Benefits of technology

The gap between simulation data and real data is narrowed, so that the processed simulation data is closer to real data in point cloud algorithm applications, and improves the authenticity of data and the migibility of the application.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115081240B_ABST
    Figure CN115081240B_ABST
Patent Text Reader

Abstract

The present invention discloses a point cloud data processing method for improving the authenticity of simulated lidar data. The present invention analyzes the error sources during the data acquisition process of the lidar, and through the calculation and analysis of experimental measurement data and lidar data collected in the real vehicle driving scenario, obtains the error characteristics of the real lidar data, establishes a multi-variable error model, and applies the error model to the idealized, error-free, and noise-free simulated lidar data, thereby narrowing the gap between the simulated data and the real data, and enabling the processed simulated data to have a performance closer to the real data in various point cloud algorithm applications.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of autonomous vehicle testing. In particular, it relates to a point cloud data processing method for improving the authenticity of simulated lidar data. Background Art

[0002] As a commonly used sensor in autonomous driving, lidar can obtain three-dimensional information of the scene and plays a crucial role in driverless driving.

[0003] In autonomous driving testing, simulation testing is widely used due to its advantages such as convenient environment construction, good test repeatability, and high efficiency. In simulation software, there are rich sensor models. However, since the sensor data output by the simulation software is too idealized and there is a large difference from real data, there will be a problem that various algorithms trained in the simulation environment cannot be migrated to the real environment for application.

[0004] In previous methods, in order to narrow the gap between simulated lidar data and real lidar data and improve the authenticity of simulation data, the main methods are as follows:

[0005] Method 1: Add Gaussian noise with a specified mean and variance to the point cloud to improve robustness;

[0006] Method 2: Construct a more realistic simulation scene so that the shapes and reflection characteristics of various elements in the scene are more realistic;

[0007] Method 3: Train a conversion network model from the simulated point cloud domain to the real point cloud domain through a generative adversarial network.

[0008] In Method 1, for unknown real noise, when there are multiple noise sources in the real environment, Gaussian noise can be used as an approximation. However, the various noises and errors existing in actual lidar are relatively complex, and using only Gaussian noise cannot well simulate the real effect. Method 2 requires extracting information such as the shapes, colors, and surface characteristics of various types of objects from a large amount of real sensor data collected, reconstructing a virtual environment, and the construction period is long and the workload is large. In Method 3, a large amount of real data and simulation data are required for training, and it requires developers to have professional knowledge in the field of deep learning, and the usage threshold is relatively high. Summary of the Invention

[0009] Aiming at the deficiencies of the prior art, the present invention proposes a point cloud data processing method for improving the authenticity of simulated lidar data.

[0010] To achieve the above technical objectives, the technical solution of the present invention is: A point cloud data processing method for improving the authenticity of simulated lidar data, the method comprising the following steps:

[0011] S101: Directly obtain the xyz coordinates and reflection intensity information in the simulated point cloud data, and calculate the pitch angle, azimuth angle, distance, incident angle, and motion speed information of each point in the simulated point cloud data;

[0012] S102: Set up a ranging error experiment scenario, and collect lidar data at different distances and incident angles;

[0013] S103: Analyze the measurement data obtained in step S102 to obtain the ranging error at different distances and incident angles, and establish a ranging error model;

[0014] S104: According to the distance and incident angle information in the point cloud data, apply the ranging error model obtained in step S103 to add ranging error to the point cloud data;

[0015] S105: Calculate the angular error distribution of the azimuth angle and pitch angle, and establish an angular distribution model;

[0016] S106: Interpolate the point cloud with added ranging error obtained in step S104 according to the angular distribution model in step S105 to obtain the distance at the specified position;

[0017] S107: Statistically analyze the point loss probability of the point cloud data under different reflection intensities, and establish a point loss model;

[0018] S108: According to the point loss model in step S107, calculate the point loss probability of each point in the point cloud data obtained after interpolation in step S106 and discard it with the probability;

[0019] S109: Calculate the position offset of points at different positions according to the lidar motion speed, and establish a motion distortion model;

[0020] S110: According to the motion distortion model in step S109, transform the position of the point cloud obtained after point loss processing in step S108 to obtain the final point cloud data.

[0021] Further, in step S101, for the xyz coordinates, reflection intensity, and category information included in each point in the lidar point cloud data output by the autonomous driving simulation software, calculate the corresponding azimuth angle, pitch angle, distance, incident angle, and motion speed information.

[0022] Further, in step S102, align the lidar, total station, and reflector in a straight line, and measure the horizontal distances from the total station to the lidar and the reflector as d 1 , d 2 , and calculate the horizontal distance d between the lidar and the reflector through calculation. The formula is as follows:

[0023] d = d1 +d 2

[0024] Continuously change the distance between the reflector and the lidar and the angle of the reflector to obtain multiple sets of point cloud data.

[0025] Further, in the step S103, calculate the average value and variance of the distance from the lidar to the reflector at different test distances and different laser incident angles. According to the distance measured by the total station, calculate the ranging error under different test conditions to obtain a ranging error model for distance and incident angle.

[0026] Further, in the step S104, according to the incident angle and distance information, apply the distance error function fitted in the step S103 to the point cloud data, calculate the distance error Δd, and add the distance error Δd to the original point cloud distance to obtain the point cloud distance d + Δd after adding the ranging error.

[0027] Further, in the step S105, statistically obtain the azimuth angle φ of each point in the point cloud data i and the elevation angle θ i , and the calculation formulas are as follows:

[0028]

[0029] where x i , y i , z i are the coordinates of the point cloud in three-dimensional space, n represents the number of points in a frame of point cloud data, and are the position offsets of the laser emitter of the emitted laser ray from the coordinate center in the horizontal direction and the z-axis direction.

[0030] Statistically analyze the elevation angles of the laser rays emitted by each laser, obtain the distribution of the elevation angles of each laser, and calculate the distribution characteristics of the azimuth angles to obtain an angle distribution model.

[0031] Further, in the step S106, according to the elevation angle distribution and azimuth angle periodic distribution and deviation obtained in the step S105, generate a series of elevation angle and azimuth angle sampling combinations as interpolation nodes, and interpolate the point cloud data obtained in the step S104 to obtain the corresponding position distance, and obtain new point cloud data.

[0032] Further, in the step S107, locate the position of the lost point cloud, calculate the reflection intensity of the lost position point according to the distance, reflectivity and other information of the point cloud data around the lost position, and statistically analyze the loss point probability of the point cloud data with different reflection intensities. The calculation formulas for the loss point probabilities of each reflection intensity are as follows:

[0033]

[0034] In the formula, represents the number of point clouds with a reflection intensity of k in the lost point cloud, represents the number of point clouds with a reflection intensity of k in all the point cloud data obtained by lidar scanning.

[0035] Furthermore, in the step S108, according to the lost point model in the step S107, calculate the lost point probability of each point in the point cloud data obtained in the step S106 and discard it with probability.

[0036] Furthermore, in the step S109, for the motion distortion caused by rotation, its expression formula is different according to different rotation directions. If the vehicle rotation direction is the same as the lidar scanning direction, the change of the point cloud data caused by the motion distortion can be expressed by the following formula:

[0037]

[0038] where, θ i_rot is the azimuth angle after distortion processing, θ i is the azimuth angle before distortion processing, and α is the angle of the vehicle rotating around the z-axis between two adjacent frames of point clouds.

[0039] If the vehicle rotation direction is opposite to the lidar scanning direction, the change of the point cloud data caused by the motion distortion can be expressed by the following formula:

[0040]

[0041] The change of the point cloud position caused by the motion distortion due to translation in the x and y directions is expressed by the following formula:

[0042]

[0043] where x im and y im are the transformed coordinates, x i0 and y i0 are the coordinates before transformation, θ i is the azimuth angle, v x and v y are the speeds in the x and y directions respectively.

[0044] Furthermore, in the step S110, according to the vehicle motion speed, apply the motion distortion transformation formula in the step S109 to the point cloud data obtained in the step S108, calculate the position change of the point cloud, and obtain the final point cloud data.

[0045] The beneficial effects of the present invention are as follows: The present invention analyzes the error sources during the data acquisition process of lidar. Through the calculation and analysis of experimental measurement data and lidar data collected in the real vehicle driving scenario, the error characteristics of real lidar data are obtained. A multi-variable error model is established, and the error model is applied to the idealized, error-free, and noise-free simulated lidar data, thereby narrowing the gap between the simulated data and the real data, and making the processed simulated data perform more closely to the real data in various point cloud algorithm applications. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] Figure 1 It is a flowchart of the point cloud data processing method for improving the authenticity of simulated lidar data proposed by the present invention;

[0047] Figure 2 It is a schematic diagram of the ranging error experiment scenario of the present invention;

[0048] Figure 3 It is a schematic diagram for testing distance correction of the present invention. DETAILED DESCRIPTION OF THE INVENTION

[0049] In order to describe the present invention more specifically, the technical solutions of the present invention will be further described in detail below with reference to the drawings and specific embodiments.

[0050] The lidar emits laser to the surface of an object and receives the returned laser. The distance d to the object to be measured is obtained by measuring the time-of-flight (TOF) of the laser. The azimuth angle θ and elevation angle φ of the laser are determined according to the installation angles of the internal rotary encoder and the laser emitter, and the position [d, φ, θ] in the polar coordinate system is obtained. Usually, it is converted into coordinate points in three-dimensional space and stored in the form of point cloud data. For each point p in the point cloud data P i of the spatial position coordinates (x i , y i , z i ), the calculation formula is as follows:

[0051]

[0052] where d is the distance to the object, φ is the elevation angle, and θ is the azimuth angle.

[0053] Generally speaking, there are two ways to obtain lidar data: real vehicle collection in the real environment and generation by simulation software. Real environment collection means placing the lidar on a vehicle and collecting lidar data while the vehicle is driving in the real environment. Generation by simulation software means controlling a vehicle equipped with a simulated lidar model to drive in a constructed simulation scenario to obtain lidar data. The simulation idea of the lidar is based on the real lidar scanning method, simulating the emission of each laser ray, calculating the intersection points with objects in the scenario according to the emission position and emission angle of the ray. If the intersection points exist, the intersection points are used as scanning data points, obtaining the distance from this position to the lidar, and calculating the reflection intensity according to the physical material and attributes of the intersection points.

[0054] The cost of real vehicle collection of lidar data is relatively high, the data collection scenarios are limited, the road conditions of the scenarios cannot be reproduced, and subsequent data processing such as point cloud annotation is time-consuming. While the simulation software has flexible scene configuration, the parameters of the lidar simulation model can be adjusted, a large amount of data can be generated in a short time, and information such as class labels can be output simultaneously, reducing the time cost of data collection and processing, and being able to make up for the deficiencies of real vehicle collection in the real environment. For simulation data, the authenticity of the data is the basis of the simulation. If the simulation data has a large gap with the real data, various algorithm models trained using the simulation data will have problems when migrated to the real scenario. Therefore, it is very necessary to improve the authenticity of the simulated lidar data.

[0055] In current simulation software, most of the generated lidar point cloud data is idealized without noise or only Gaussian noise is added, such as the CARLA autonomous driving simulator developed by Intel Corporation and the LGSVL autonomous driving simulator developed by LG Corporation, which has an obvious difference from the point cloud data collected by real lidars.

[0056] To improve the authenticity of the simulated lidar data, the present invention proposes a method for processing point cloud data based on an error model. Figure 1 The method flow chart of the present invention is given. The method proposed by the present invention analyzes the ranging error, angle error, point loss probability, and motion distortion existing in the real lidar to obtain various error models, and applies them to the simulated lidar data, narrowing the gap between the simulated lidar data and the real lidar data, making the processed simulation data more authentic. In the description of the present invention, the Velodyne HDL-64E S2 lidar is taken as an example for expansion, but the method is also applicable to other models of lidars.

[0057] For the Velodyne HDL-64E S2 lidar, please refer to its user manual: USER’S MANUAL AND PROGRAMMING GUIDE HDL-64E S2 and S2.1, for details, see https: / / usermanual.wiki / Velodyne-Acoustics / VelodyneAcousticsHdl64ES2UsersManual452678.843688654.pdf.

[0058] The following describes the specific steps of the point cloud data processing method proposed by the present invention to improve the authenticity of simulated lidar data:

[0059] As Figure 1 shown, in step S101, the pitch angle φ, azimuth angle θ, distance d, incident angle α, and movement speed v are calculated based on the acquired simulated point cloud data for subsequent processing steps.

[0060] The lidar point cloud data output by the autonomous driving simulation software includes the xyz coordinates and reflection intensity i of the point cloud. For a certain point p in the point cloud data i the azimuth angle θ i , pitch angle φ i and distance d i can be directly calculated from its three-dimensional space coordinates (x i , y i , z i ), and the formula is as follows:

[0061]

[0062] For a certain point p in the point cloud data i the incident angle α i can be expressed as the angle between the laser ray direction vector m and the normal vector n of the incident plane, and the calculation formula is as follows:

[0063]

[0064] For the calculation of the normal vector n of the incident plane, please refer to Hoppe, H., T. DeRose, T. Duchamp, J. McDonald, and W. Stuetzle. "Surface Reconstruction from Unorganized Points". Computer Graphics (SIGGRAPH1992 Proceedings). 1992, pp. 71–78.

[0065] Some simulation software can synchronously output the velocity information of the point cloud. For cases where the motion information cannot be directly obtained, it can be acquired by performing ICP registration on two consecutive frames of point cloud data. Through the ICP algorithm, the rotation matrix R and translation vector t between two consecutive frames of point cloud P and Q can be calculated. Since the time interval between the acquisition of two frames of point cloud is small, the vehicle can be regarded as moving at a constant speed during this time interval. According to the rotation matrix R, translation vector t, and the data acquisition frequency of the lidar, the motion velocities v x 、v y 、v z in the x, y, and z directions, as well as the angle β of rotation around the z-axis can be calculated.

[0066] For the ICP algorithm, see Besl P J, McKay N D. Method for registration of 3-D shapes[C] / / Sensor fusion IV: control paradigms and data structures. Spie, 1992, 1611: 586-606.

[0067] In step S102, a ranging error experiment scenario is set up, and lidar data is collected at different distances and incident angles. The experimental device consists of three parts: a lidar, a total station, and supporting prisms, reflectors, and a reflector panel. Since the total station has high measurement accuracy and small ranging error, the distance measured by the total station is used as the true value to analyze the ranging error of the lidar. Prisms and reflectors supporting the total station can be placed on the object to obtain the distance between the total station and the target object.

[0068] The total station used in the experiments of the present invention is the Sokkia SRX series. Specific product information and product user manuals can be found at https: / / eu.sokkia.com / sokkia-care-products / srx-robotic-total-station.

[0069] To obtain lidar data under different distances and incident angles, the total station, lidar, and reflector panel are arranged as shown in Figure 2 , and the position of the lidar is adjusted so that the line connecting the total station and the lidar is perpendicular to the plane of the reflector panel. A 360° prism of the total station is placed at the center of the top of the lidar, and a reflector of the total station is pasted on the plane of the reflector panel to respectively obtain the accurate horizontal distances between the total station and the two. According to the measurement results, the horizontal distances from the total station to the lidar and the reflector are calculated as d 1 、d 2 , and the horizontal distance d between the lidar and the reflector is calculated through the following formula:

[0070] d = d1 +d 2

[0071] Adjust the position of the reflector so that the distance d between it and the lidar is 1 m, 3 m, 5 m, 10 m, 15 m, 25 m, 35 m, 50 m, 65 m, and 80 m respectively. At each specified distance position, adjust the angle γ between the reflector and the vertical line to 0°, 15°, 30°, 45°, 60°, and 75° respectively to change the size of the incident angle α of the lidar ray. Under each test condition, use the lidar to collect more than 100 frames of point cloud data for statistical analysis to reduce random errors.

[0072] In step S103, analyze and calculate the measurement data to establish an error model. To reduce the error of the actual laser incident angle, select the laser ray data whose vertical plane where the direction angle is located is perpendicular to the reflector and the pitch angle is closest to 0° for data analysis. Under this condition, the size of the angle between the reflector and the vertical line can be directly regarded as the size of the laser ray incident angle, that is, α = γ.

[0073] Since the reflector has a thickness and the center height of the lidar is not at the same height as the rotation axis of the reflector, as Figure 3 shown, when the reflector rotates, the actual distance between the intersection position of the laser ray and the reflector and the lidar needs to be corrected. The formula is as follows:

[0074]

[0075] where d t and d s are the corrected distance and the distance measured by the total station under the specified test conditions, h l and h r are the heights of the lidar center and the center of the reflector rotation axis respectively, θ is the reflector rotation angle, and t is the reflector thickness.

[0076] Calculate the mean and variance of the lidar ranging data at different distances and different laser incident angles. According to the corrected true distance, the ranging error of the lidar at different distances and incident angles can be obtained, and a ranging error expression can be fitted. The distance error Δd is a function of the distance d v and the incident angle α, and the expression is as follows:

[0077] Δd = f(d v , a)

[0078] In step S104, for the point cloud data with known incident angle and distance information, apply the distance error model fitted in step S103 to calculate the ranging error, and add the error to the simulation data. According to the distance and incident angle information at each position and the distance error function f(dv , a) Calculate the distance error Δd under this condition. The final distance calculation formula is as follows:

[0079] d = d v + Δd

[0080] where d is the distance after adding the ranging error, d v is the distance in the simulation data, and Δd is the ranging error.

[0081] According to the changed distance information, as well as the azimuth and elevation angle information, recalculate the xyz coordinates of each point to obtain new point cloud data.

[0082] In step S105, calculate the azimuth and elevation angles of each point in the point cloud data to obtain the true distribution of the azimuth and elevation angles in the real lidar data, and establish an angle distribution model. In the simulation lidar model, the azimuth and elevation angles are mostly set to change uniformly, which is different from the distribution of the azimuth and elevation angles of the real lidar. To obtain the true distribution of the lidar azimuth and elevation angles, the real collected lidar data can be analyzed and processed. In the present invention, the analysis is carried out taking Velodyne HDL-64E S2 as an example.

[0083] Velodyne HDL-64E S2 has a total of 64 laser emitters, and each laser beam emitted by the laser has a fixed elevation angle. When transmitting and storing the data collected by the lidar, it is arranged in an orderly manner according to the laser emitter number. Therefore, the point cloud data can be easily divided into 64 groups according to the laser emitter number. If the number of lidar lines is not 64, the grouping calculation is carried out according to the actual number of lines. Calculate the elevation angle φ of each laser emitter using the point cloud data obtained respectively i , and the calculation formula is as follows:

[0084]

[0085] where n represents the number of points in a frame of point cloud data, x i , y i , z i are the coordinates of the point cloud in three-dimensional space, is the position offset of the laser emitter in the z-axis direction from the coordinate center, and the specific value can be obtained through the calibration file. The reason for the existence of the laser emitter position offset is that the installation position of the lidar laser emitter is not at the coordinate center.

[0086] According to the calculation results of the elevation angle, it is obtained that the elevation angle of each laser emitter fluctuates within a very small range around a certain fixed value. Therefore, the mean value of the elevation angles of multiple point data can be calculated as its elevation angle size.

[0087] To analyze the actual distribution of the azimuth angle of the lidar, calculate its azimuth angle θ i and perform a differential calculation on the azimuth angles of a frame of point cloud data grouped by the laser emitter number. The calculation formula is as follows:

[0088]

[0089]

[0090] In the formula is the position offset of the laser that emits the laser ray from the coordinate center in the horizontal direction. The specific value can be obtained through the calibration file. represents the difference in azimuth angles between two adjacent position point clouds obtained by the laser emitter numbered l, and represent the azimuth angles of the (i + 1)-th and i-th position data points obtained by the laser emitter numbered l.

[0091] According to the azimuth angle calculation results, the minimum azimuth angle resolution of the Velodyne HDL-64E S2 is 0.09°. Its azimuth angle increment changes periodically at two angles of 0.09° and 0.18°, and there is a certain rotational angle offset for each laser emitter. According to the law that there is a fixed angle offset for the azimuth angle of each laser and the periodic change of the azimuth angle increment, a distribution model of the true azimuth angle can be established. The expression is as follows:

[0092]

[0093]

[0094] In the formula is the magnitude of the azimuth angle of the i-th data point position of the laser emitter numbered l, is an array that changes periodically at two angles of 0.09° and 0.18°, is the azimuth angle rotational angle offset of the laser emitter numbered l.

[0095] In step S106, interpolate the point cloud data according to the angle distribution model obtained in step S105 to obtain the distance value in the direction. The working principle of the lidar is to obtain the distance information of the specified azimuth angle and elevation angle by emitting and receiving lasers. Therefore, a series of angle combinations can be generated as interpolation nodes according to the elevation angle and azimuth angle distributions of each laser emitter. The interpolation result is the distance value, and the expression is as follows:

[0096] D = griddata(φ, θ, d, φ′, θ′)

[0097] Where φ, θ, and d are the pitch angle, azimuth angle, and distance of the point cloud obtained in step S104, φ′ and θ′ are arrays of pitch angles and azimuth angles as interpolation nodes, D is the interpolated distance value, and griddata is the interpolation function. For specific descriptions of the interpolation function, see Amidror, Isaac. “Scattered data interpolation methods for electronic imaging systems: a survey.” Journal of Electronic Imaging. Vol. 11, No. 2, April 2002, pp. 157–176.

[0098] According to the changed azimuth angle, pitch angle, and distance information, recalculate the xyz coordinates of each point to obtain new point cloud data.

[0099] In step S107, locate the position of the lost point cloud, calculate the reflection intensity of the point cloud at the lost position according to the distance, reflectivity, etc. of the point cloud data around the lost position, and count the loss probabilities of point cloud data with different reflection intensities. In the point cloud data collected by the lidar, there are no point clouds at some positions. When there is no laser echo in this direction or the laser echo power is lower than the detection threshold of the lidar receiver, the point cloud data here will be lost. In the simulation platform, the detectable distance range can be set. Therefore, the data loss caused by being outside the detection distance is not considered, and only the data loss caused by the echo power being lower than the detection threshold is considered.

[0100] The echo power expression of the lidar is as follows:

[0101]

[0102] Where P r is the received target echo power, P t is the laser emission power, η l is the optical efficiency of the transmitting optical system, η r is the optical efficiency of the receiving optical system, D is the aperture of the receiving detector, α is the one-way atmospheric extinction coefficient, R is the distance from the lidar center to the target point, ρ represents the reflectivity of the target, and θ is the incident angle of the target point relative to the radar.

[0103] The attribute of the reflection intensity of the lidar is directly related to the echo power. As can be seen from the above formula, the reflection intensity of the lidar is affected by the target distance, target reflectivity, and laser incident angle. Therefore, the reflection intensity at the point cloud loss position can be estimated according to its distance, incident angle, and object reflectivity.

[0104] Regarding the location of the lost point cloud, cylindrical projection is performed on the point cloud data to obtain a two-dimensional image. The three channels of the image are the point cloud distance, the incident angle, and the calibrated reflection intensity. The projection formula is as follows:

[0105]

[0106] In the formula, col represents the column number of the image, row represents the row number of the image, l is the serial number of the lidar transmitter at this position, θ is the azimuth angle of the point cloud, Δ is the direction angle resolution, represents the floor operation.

[0107] For the reflection intensity calibration, the formula is as follows:

[0108] i l ′ = c(r l , a l , l)·i l

[0109] In the formula, i l ′ is the calibrated reflection intensity, i l is the reflection intensity before calibration, c(r l , a l , l) represents the calibration coefficient, and the calibration coefficient is a calculation model related to the distance r l , the incident angle α l and the laser number l.

[0110] For the calibration method of the point cloud reflection intensity, please refer to Steder B, Ruhnke M, Kümmerle R, et al. Maximumlikelihood remission calibration for groups of heterogeneous laser scanners[C] / / 2015 IEEE International Conference on Robotics and Automation(ICRA). IEEE, 2015:2078 - 2083.

[0111] If there is no data and surrounding points at a certain position, it is determined that this is the position where the point cloud is lost. After determining the position of the lost point cloud, its azimuth angle and pitch angle can be known from the position of the point in the projection image, the distance r and the calibrated reflection intensity i calib can be obtained by calculating the mean value of the data at adjacent positions, and the incident angle α can be obtained by the method in step S101. While performing the reflection intensity calibration, the calibration coefficient model c(r, α, l) is obtained. The actual reflection intensity of the final lost point can be deduced by the following formula:

[0112]

[0113] Then the calculation formula for the missing point probability of each reflection intensity is as follows:

[0114]

[0115] In the formula represents the number of point clouds with a reflection intensity of k in the missing point cloud, represents the number of point clouds with a reflection intensity of k in all the point cloud data obtained by lidar scanning.

[0116] In step S108, the missing point probability at this position is obtained based on the point cloud reflection intensity, and the data at this position is discarded with a specified probability. For the point cloud data with known reflection intensity information, the probability p that the data at this position is discarded is obtained according to the missing point model obtained in step S107. Use the random function to randomly generate a value q between 0 and 1. If p > q, then discard the data at this position; otherwise, keep it.

[0117] In step S109, according to the movement speed of the lidar, the position offsets of points at different positions are calculated to establish a motion distortion model. Motion distortion is caused by the relative motion between the lidar and the objects in the scene. As the vehicle moves in the environment, the position of the corresponding lidar is constantly changing, resulting in that the laser points in each frame of lidar point cloud data are not collected at the same time, that is, the reference coordinate system positions of the laser points are inconsistent, and the change of its coordinate system position is directly related to the radar movement speed. During the process of collecting a frame of lidar point cloud data on the simulation platform, the entire environment is regarded as static and unchanged, so there is no motion distortion phenomenon in the simulation point cloud data. According to the movement speed and rotation speed of the vehicle, the position transformation caused by motion distortion of the point cloud position can be deduced.

[0118] The vehicle generally turns around the z-axis, which can be specifically expanded according to whether the vehicle rotation direction is the same as the lidar scanning rotation direction. If the vehicle rotation direction is the same as the lidar scanning direction, then the actual horizontal viewing angle of the lidar is less than 360°, and the change of the motion distortion on the point cloud data can be expressed by the following formula:

[0119]

[0120] where θ i_rot is the azimuth angle after distortion processing, and θ i is the azimuth angle before distortion processing, and β is the angle of the vehicle rotating around the z-axis between two adjacent frames of point clouds.

[0121] If the vehicle rotation direction is opposite to the lidar scanning direction, then the actual horizontal viewing angle of the lidar is greater than 360°, and the change of the motion distortion on the point cloud data can be expressed by the following formula:

[0122]

[0123] The motion distortion caused by translation. The changes in the point cloud data due to motion distortion in the x and y directions can be expressed by the following formula:

[0124]

[0125] where x im and y im are the coordinates after transformation, x i0 and y i0 are the original coordinates, θ i is the azimuth angle, v x and v y are the velocities in the x and y directions respectively, and f is the rotation frequency of the lidar. Thus, the motion distortion model is obtained.

[0126] In step S110, for the point cloud data with known motion velocity, apply the motion distortion transformation formula in step S109. First, process the motion distortion caused by rotation of the point cloud data according to the angular velocity of rotation around the z-axis, calculate the change in the rotation angle of the point cloud by applying the rotation distortion formula in S109, and recalculate the (x, y, z) coordinate positions of each point according to the transformed pitch angle, azimuth angle, and distance information. Then, process the motion distortion caused by translation according to the velocities in the x and y directions, calculate the change in the position of the point cloud by applying the translation distortion formula in S109, and obtain the final point cloud data.

[0127] The above is only the specific implementation manner of the present invention, and the scope of the present invention cannot be limited thereby. Equivalent changes made by those of ordinary skill in the art based on this creation, as well as changes well-known to those skilled in the art, should still fall within the scope covered by the present invention.

Claims

1. A point cloud data processing method for enhancing the authenticity of simulated lidar data, characterized in that, the method comprises the following steps: S101: Directly obtain the xyz coordinates and reflection intensity information in the simulated point cloud data, and calculate the pitch angle, azimuth angle, distance, incident angle, and motion speed information of each point in the simulated point cloud data; S102: Build a ranging error experiment scenario, and collect lidar data at different distances and incident angles; S103: Analyze the lidar data obtained in step S102 to obtain the ranging errors at different distances and different incident angles, and establish a ranging error model; S104: According to the distance and incident angle information in the point cloud data, apply the ranging error model obtained in step S103 to add ranging errors to the point cloud data; S105: Calculate the angular error distribution of the azimuth angle and pitch angle, and establish an angular distribution model; S106: Interpolate the point cloud with added ranging errors obtained in step S104 according to the angular distribution model in step S105 to obtain the distance at a specified position; S107: Statistically calculate the point loss probability of the point cloud data under different reflection intensities, and establish a point loss model; S108: According to the point loss model in step S107, calculate the point loss probability of each point in the point cloud data obtained after interpolation in step S106 and discard it with a probability; S109: Calculate the position offset of points at different positions according to the lidar motion speed, and establish a motion distortion model; S110: According to the motion distortion model in step S109, transform the position of the point cloud obtained after point loss processing in step S108 to obtain the final point cloud data.

2. The point cloud data processing method for enhancing the authenticity of simulated lidar data according to claim 1, characterized in that, in step S101, for the xyz coordinates and reflection intensity included in each point of the lidar point cloud data output by the autonomous driving simulation software, the corresponding azimuth angle, pitch angle, distance, incident angle, and motion speed information are calculated.

3. The point cloud data processing method for enhancing the authenticity of simulated lidar data according to claim 1, characterized in that, In the step S102, the lidar, the total station, and the reflector are aligned along a straight line, and the horizontal distances from the total station to the lidar and the reflector are measured as d 1 , d 2 , and the horizontal distance d between the lidar and the reflector is obtained through the formula d = d 1 + d 2 . The distance between the reflector and the lidar and the angle of the reflector are continuously changed to obtain multiple groups of point cloud data.

4. The point cloud data processing method for enhancing the authenticity of simulated lidar data according to claim 1, characterized in that, in step S103, calculate the average value and variance of the distance from the lidar to the reflector at different test distances and different laser incident angles, calculate the ranging error under different test conditions according to the distance measured by the total station, and obtain a ranging error model regarding distance and incident angle.

5. The point cloud data processing method for enhancing the authenticity of simulated lidar data according to claim 1, characterized in that, in step S104, according to the incident angle and distance information, apply the distance error function fitted in step S103 to the point cloud data, calculate the distance error Δd, and add the distance error Δd to the original point cloud distance to obtain the point cloud distance d + Δd with added ranging error.

6. The point cloud data processing method for enhancing the authenticity of simulated lidar data according to claim 1, characterized in that, In the step S105, the azimuth angle φ of each point in the point cloud data is statistically obtained i and the pitch angle θ i , and the calculation formula is as follows: where x i , y i , z i are the coordinates of the point cloud in three-dimensional space, n represents the number of points in a frame of point cloud data, and are the position offsets of the laser that emits the laser ray from the coordinate center in the horizontal direction and the z-axis direction, Statistically analyze the elevation angles of the laser rays emitted by each laser, obtain the distribution of the elevation angles of each laser, calculate the distribution characteristics of the azimuth angles, and obtain the angle distribution model.

7. The point cloud data processing method for improving the authenticity of simulated lidar data according to claim 1, characterized in that, in step S106, a series of elevation angle and azimuth angle sampling combinations are generated as interpolation nodes according to the elevation angle distribution, azimuth angle period distribution and deviation obtained in step S105, and the point cloud data obtained in step S104 is interpolated to obtain the corresponding position distance, thereby obtaining new point cloud data.

8. The point cloud data processing method for improving the authenticity of simulated lidar data according to claim 1, characterized in that, in step S107, locate the position of the missing point cloud, calculate the reflection intensity of the points at the missing position according to the distance, reflectivity and other information of the point cloud data around the missing position, and statistically analyze the missing point probability of the point cloud data with different reflection intensities. The calculation formula for the missing point probability of each reflection intensity is as follows: where represents the number of points in the missing point cloud with a reflection intensity of k, represents the number of points in the point cloud data obtained from all lidar scans with a reflection intensity of k.

9. The point cloud data processing method for improving the authenticity of simulated lidar data according to claim 1, characterized in that, in step S109, the expression formula for the motion distortion caused by rotation is different according to different rotation directions. If the vehicle rotation direction is the same as the lidar scanning direction, the change of the point cloud data caused by the motion distortion can be expressed by the following formula: where θ i_rot is the azimuth angle after distortion processing, θ i is the azimuth angle before distortion processing, and is the angle of rotation of the vehicle in adjacent two-frame point clouds around the z-axis If the vehicle rotation direction is opposite to the lidar scanning direction, the change of the point cloud data caused by the motion distortion can be expressed by the following formula: The change of the point cloud position caused by the motion distortion due to translation in the x and y directions is expressed by the following formula: where x im and y im are the transformed coordinates, x i0 and y i0 are the coordinates before transformation, θ i is the azimuth angle, v x and v y are the velocities in the x and y directions respectively.

10. The point cloud data processing method for improving the authenticity of simulated lidar data according to claim 1, characterized in that, in step S110, according to the vehicle motion speed, apply the motion distortion transformation formula in step S109 to the point cloud data obtained in step S108, and calculate the position change of the point cloud to obtain the final point cloud data.

Citation Information

Patent Citations

  • Point cloud error correction method based on self-made ground-based laser radar perpendicularity error

    CN107290734A

  • Homemade foundation laser radar alignment error-based point cloud error correction method

    CN107703499A