A ground point cloud processing method

By using concentric circle radius difference and height difference threshold filtering based on mechanical lidar, combined with progressive morphological filtering, the problem of registration time and error caused by the small number of feature points in ground point clouds is solved, achieving efficient ground point cloud filtering and improved accuracy of point cloud maps.

CN116486361BActive Publication Date: 2025-12-23JILIN UNIVERSITY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310521342.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-05-10
Publication Date
2025-12-23
Estimated Expiration
2043-05-10

AI Technical Summary

Technical Problem

In existing point cloud map construction methods, there are few ground point cloud feature points and a large number of point clouds, which leads to a lot of time being spent on registration, and the generated map is prone to misalignment and blurring.

Method used

A point cloud data filtering method based on mechanical lidar is adopted. By calculating the difference in radius and height of concentric circles and setting a threshold, combined with a progressive morphological filtering method, ground point clouds and non-ground point clouds are segmented.

Benefits of technology

It effectively filters out ground point clouds, reduces registration time, and improves the accuracy and stability of point cloud maps, making it suitable for high-precision map construction for autonomous driving.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116486361B_ABST
    Figure CN116486361B_ABST
Patent Text Reader

Abstract

The application discloses a ground point cloud processing method, comprising the following steps: scanning the surrounding environment based on a mechanical laser radar to obtain point cloud data; filtering the ground point cloud data from the point cloud data; storing the filtered point cloud data into a two-dimensional matrix, processing the point cloud data in the two-dimensional matrix according to the column order, obtaining a non-ground point set and a ground point set; and segmenting the ground point cloud and the non-ground point cloud based on a progressive morphological filtering method. The application firstly uses a ground point cloud filtering algorithm based on concentric circles, sets a maximum slope threshold, and thus obtains most of the non-ground point cloud and a set of most ground point clouds; finally, a ground segmentation method based on the progressive morphological filtering method is used to further filter the ground point cloud, so that the non-ground point cloud data suitable for registration positioning is obtained, and the point cloud of the non-flat road surface is better filtered.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application belongs to the technical field of intelligent vehicle perception, and particularly relates to a ground point cloud processing method. BACKGROUND

[0002] Perfect and reliable automatic driving technology cannot be separated from the assistance of high-precision maps, so the research on high-precision maps has gradually become one of the main research works of unmanned driving. For some traditional two-dimensional grid maps, the content they can express is limited, while three-dimensional maps can make up for the shortcomings brought by the former in actual engineering applications, and contain more and richer information content. Nowadays, some methods for constructing point cloud maps generally use a single laser odometer, which will gradually accumulate errors in calculation, resulting in problems such as misplacement and virtualization of the generated maps.

[0003] When constructing a point cloud map by using a laser radar, in order to achieve real-time positioning, the current frame point cloud data needs to be registered with the previously constructed local map. However, a large amount of point cloud data needs to be calculated during registration, and since feature points of point clouds usually exist on buildings or ground objects, there are fewer feature points of ground point clouds and more point clouds, so a lot of time will be spent on ground point clouds during registration, and therefore the ground point clouds need to be filtered out. SUMMARY

[0004] The purpose of the present application is to provide a ground point cloud processing method to solve the problems existing in the prior art.

[0005] To achieve the above purpose, the present application provides a ground point cloud processing method, which acquires point cloud data based on mechanical laser radar scanning of the surrounding environment;

[0006] The point cloud data is filtered for ground point cloud data;

[0007] The filtered point cloud data is stored in a two-dimensional matrix, and the point cloud data is processed in the two-dimensional matrix according to the order of columns to obtain a non-ground point set and a ground point set;

[0008] The ground point cloud and the non-ground point cloud are segmented based on a progressive morphological filtering method.

[0009] Optionally, the process of filtering the point cloud data for ground point cloud data includes:

[0010] The radius of the concentric circle formed by a single frame of laser beams and the ground is calculated based on the installation height of the laser radar and the angle of the laser transmitter from the ground;

[0011] The radius difference and the height difference between adjacent concentric circles are calculated, and the radius difference and the height difference are set with a threshold value;

[0012] The radius difference and height difference of the concentric circles formed by each adjacent laser beam are compared with a set threshold value, and when the radius difference is greater than the threshold value and the height difference is less than the threshold value, it is determined that the corresponding point cloud is a ground point cloud.

[0013] Optionally, in the process of calculating the radius difference and height difference between adjacent concentric circles, a maximum ground slope value is set, and the radius difference and height difference between the concentric circles formed by adjacent lasers are calculated based on the maximum ground slope value.

[0014] Optionally, in the two-dimensional matrix, each data represents a laser point obtained by scanning, and the row number and column number where the data is located respectively represent the group number and time of the actual laser point in a frame of point cloud data; the row data in the matrix correspond to all the point cloud data measured by the radar transmitter in a frame; and the column data represent all the point cloud data obtained by the laser radar at the same time.

[0015] Optionally, the process of processing the point cloud data in the two-dimensional matrix in the order of columns comprises:

[0016] The ground point cloud set, the non-ground point cloud set and the intermediate set are constructed, and starting from the point cloud at the top, each point cloud is processed downwards, and the first row of data is uniformly divided into the intermediate set.

[0017] The points in other rows are calculated and compared with the set radius difference threshold value and height difference threshold value.

[0018] Optionally, the process of calculating the points in other rows and comparing them with the set radius difference threshold value and height difference threshold value comprises:

[0019] A point in a row is selected as a reference point, and a point in the next row is selected as a target point; the radius difference and height difference of the concentric circles of the reference point and the target point are calculated, and the radius difference and height difference are compared with the set threshold value; if the radius difference is less than the radius difference threshold value, it is considered that the target point is on the same object as the original point, and the target point is added to the intermediate set; if the radius difference is greater than the radius difference threshold value, the height difference is compared with the height difference threshold value; if the height difference is greater than the height difference threshold value, and the intermediate set already has at least two points, the point with the radius difference greater than the radius difference threshold value and the height difference greater than the height difference threshold value is added to the intermediate set, and all the points in the intermediate set are added to the non-ground point cloud set, and the intermediate set is emptied; if the height difference is less than the height difference threshold value, it is considered that the point with the height difference less than the height difference threshold value and the point in the intermediate set are both ground points and are put into the ground point cloud set, and the intermediate set is emptied; the calculation is continuously performed until all the point clouds in the matrix are processed.

[0020] Optionally, the process of segmenting the ground point cloud and the non-ground point cloud based on the progressive morphological filter method comprises:

[0021] The point cloud coordinates measured by the vehicle-mounted laser radar are divided into two-dimensional grids, and the minimum elevation point cloud on each grid is selected, and a surface grid is constructed based on the minimum elevation point cloud;

[0022] An opening operation filter of progressive morphological is used for the surface grid, in the first iteration, the minimum elevation surface and the initial filter window size are taken as the input of the filter, in the next iteration, the filtered surface obtained from the previous iteration and the initial filter window size are taken as the input of the filter, and the further smoothed surface obtained from the morphological filter and the non-ground point cloud detected according to the elevation difference threshold are outputted;

[0023] The size of the filter window is increased, the elevation difference threshold is calculated and set, and iteration is re-performed, if the size of the filter window is greater than a predetermined maximum value, the iteration is ended;

[0024] The non-ground object point cloud is filtered to generate a digital ground model.

[0025] Optionally, in the process of constructing the surface grid based on the minimum elevation point cloud, all point coordinates in the grid are stored in each grid unit, if there is no measured point cloud in the unit cell, a closest point cloud is specified.

[0026] Optionally, the elevation difference threshold is calculated based on a ground slope parameter, a grid size and a window size.

[0027] The technical effect of the present application is:

[0028] The present application discloses a two-step ground point cloud filtering algorithm, first, a ground point cloud filtering algorithm based on concentric circles is used, by setting a maximum slope threshold, most of the non-ground point clouds and a set of most ground point clouds are obtained, finally, a ground segmentation method based on a progressive morphological filtering method is used to further filter the ground point clouds, so that the non-ground point cloud data suitable for registration positioning is obtained, and the point clouds of the non-flat road surface are better filtered. BRIEF DESCRIPTION OF DRAWINGS

[0029] The accompanying drawings, which form a part of this application, are included to provide a further understanding of the application and are incorporated in and constitute a part of this application. The embodiments of this application and its description together with the drawings make an application and do not limit the application. In the drawings:

[0030] Figure 1 It is a concentric circle diagram formed on the ground of the scanned object in the embodiment of the present application;

[0031] Figure 2 It is a concentric circle diagram on the maximum slope ground plane in the embodiment of the present application;

[0032] Figure 3 It is a morphological filtering flowchart in the embodiment of the present application;

[0033] Figure 4 The point cloud diagram after filtering the ground in the embodiment of the application. DETAILED DESCRIPTION

[0034] It should be noted that the embodiments in the present application and the features in the embodiments can be combined with each other without conflict. The present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0035] It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a group of computer executable instructions, and although the logical order is shown in the flowchart, in some cases, the steps shown or described herein can be executed in a different order.

[0036] Embodiment one

[0037] As Figures 1-4 shown, the embodiment provides a ground point cloud processing method.

[0038] First, the embodiment uses a mechanical laser radar to scan the surrounding environment, and the point cloud data of each frame scan is distributed in a concentric circle with the laser radar as the center. Each concentric circle represents a group of point cloud data collected by the receiver and transmitter of the laser radar. The transmitters in the laser radar are arranged from top to bottom, and the horizontal angles of the adjacent transmitters and receivers are the same, while the vertical angles of each group in the vertical direction are different, which is also the reason why the radii of the concentric circles are different. The difference in the radii of the concentric circles is not only affected by the difference in the vertical angles of the receiver and the transmitter, but also related to the profile shape of the scanned object. This is because, for the same angle and the same height transmitter, the farther the scanned object, the larger the angle between the scanned object profile and the ground, and thus the larger the radius of the formed concentric circle. Secondly, when the angle between the scanned object profile and the ground is larger, the radius difference between the two concentric circles formed by the adjacent transmitters is smaller. When the scanned object profile and the ground are close to vertical, the radius difference between the two concentric circles is almost non-existent. Therefore, when performing ground segmentation processing, a threshold is set for the radius difference between adjacent concentric circles, and when the radius difference is greater than the threshold, the ground point cloud is segmented and processed.

[0039] As Figure 1 shown, h is the height of the laser radar installation, a i represents the angle of the i-th laser transmitter and the ground, and r i represents the radius of the concentric circle formed by the laser beam and the ground in this frame, which can be represented by the following formula:

[0040]

[0041] Suppose the serial number of the laser emitter starts from 1 and increases from top to bottom. Then in the same frame point cloud, the radius difference Δr between the concentric circles formed by the laser beams emitted by the i-th emitter and the i+1-th emitter on the ground i,i+1 The height difference Δh between the corresponding two concentric circles on the ground can be obtained by the following formula i,i+1 = 0.

[0042]

[0043] Δh i,i+1 = 0

[0044] The radius difference Δr between the concentric circles formed by each adjacent laser beam i,i+1 and the height difference Δh i,i+1 A threshold is set, and then the radius difference Δr i,i+1 and the height difference Δh i,i+1 between the concentric circles formed by each adjacent laser beam are compared with the threshold. When the radius difference is greater than the threshold and the height difference is less than the threshold, it is considered that the point is a ground point cloud, which can be filtered out. However, the above threshold is only a value assuming the ground to be a flat plane, and only the radius difference and the height difference between the concentric circles fitting the horizontal plane are used as the threshold for judging whether it is a ground point, which is not comprehensive. Since the actual ground is not a completely flat plane, but has a certain slope value at each place, in order to make the filtering effect of the ground point cloud data better, a maximum ground slope value β needs to be set according to the actual situation.

[0045] Since the above ground has a slope value, the concentric circles formed by the laser beams and the ground have a certain inclination, and the radius of the i-th laser beam is r i '. Similarly, the radius difference and the height difference between the concentric circles formed by the i-th laser beam and the i+1-th laser beam are Δr i,i+1 ' and Δh i,i+1 '. Compared with the horizontal plane, the radius of the concentric circle and the radius difference between the concentric circles on the inclined plane are relatively smaller, and on the contrary, the height difference on the inclined plane is relatively larger. This situation is consistent with the actual situation, so that the ground point cloud will not be mistakenly retained as a non-ground object, which can filter out most of the ground point cloud data to the greatest extent. Therefore, this ground slope value is set as the threshold for segmenting the ground point cloud and the non-ground point cloud. The above-mentioned concentric circle radius r i ', radius difference Δr i,i+1 ', and height difference Δh i,i+1 ' can be expressed by the following formula.

[0046]

[0047]

[0048]

[0049] hi represents the height between the intersection point of the i-th laser beam and the sloped ground with slope value β and the horizontal ground with slope value 0.

[0050] By adding the limit of the maximum slope value of the ground, after determining the judgment threshold of the segmented ground points and non-ground points, a detection module is added to process all point cloud data in a frame.

[0051] First, all laser point clouds obtained by a frame of laser radar scanning are stored in a two-dimensional matrix, and each data in the matrix represents each laser point obtained by scanning. The row number and column number where the data is located respectively represent the group number and time of the actual laser point in a frame of point cloud data; the i-th row data in the matrix represents all point cloud data measured by the i-th group of transmitters in the radar in a frame, that is, all point clouds on the same circle; the j-th column data represents all point cloud data obtained by the laser radar at the same time.

[0052] Subsequently, the point cloud data in the matrix is processed in column order, and all laser point clouds collected by each transmitter at the same time are processed. Starting from i = 1, that is, starting from the uppermost point cloud, each point cloud is processed downward. Since an open space is selected for the experiment, to eliminate the possibility that the laser radar may scan a moving experimental personnel at the beginning, all points on the first row, that is, all points on the first circle, are uniformly divided into the non-ground point cloud set N, and then the points of other rows are calculated and compared with the radius difference threshold and the height difference threshold. For the points in the j-th column, the point p i,j in the i-th row is selected as the reference point p r , the point p i+1,j in the next row is selected as the target point p t , and then the radius difference Δr i,i+1 and the height difference Δh i,i+1 of the concentric circles of the two rows of points are calculated and compared with the threshold. If the radius difference Δr i,i+1 is less than the radius difference threshold Δr i,i+1 ', it is considered that the target point is on the same object as the original point, and it is added to the set N; if the actual radius difference Δr i,i+1 is greater than the threshold Δr i,i+1 ', the calculated height difference is compared with the threshold, if the actual height difference Δh i,i+1 is greater than the threshold Δh i,i+1 ', and the set N has at least two points, the point is considered to be a point on the object to which the points in the set N belong, so it is added to the set N, and then all points in the set N are added to the non-ground point cloud set U, and the set N is emptied; if the height difference Δh i,i+1 is less than the threshold Δh i,i+1If the point is in the set N, then it is considered as a ground point and put into the ground point cloud set G, and the set N is emptied. The above calculation is continuously carried out until all point clouds in the matrix are processed, and finally the non-ground point set U and the ground point set G are obtained.

[0053] In the second step, the non-ground objects such as plants, buildings and vehicles in the laser radar point cloud model are further segmented by using the progressive morphological filter method. By using this method, the window size and the height difference threshold of the filter are set, the ground point cloud data is retained, and the non-ground objects such as plants, buildings and vehicles are removed, and finally the segmentation of the ground and the non-ground is completed.

[0054] According to the flowchart Figure 3 , the working steps of the progressive morphological filter are as follows:

[0055] (1) According to the point cloud coordinates measured by the vehicle-mounted laser radar, the point cloud coordinates are divided into two-dimensional grids, and the minimum height point cloud on each grid is selected, and the minimum surface grid is constructed by using the point cloud. All point coordinates in the grid are stored in each grid unit. In the case that there is no measured point cloud in the unit cell, the closest point cloud is specified for it;

[0056] (2) The opening operation filter of the progressive morphological filter is used on the grid surface. In the first iteration, the minimum height surface and the size of the initial filter window are used as the input of the filter (morphological filter has 2 inputs). In the next iteration, the filtered surface obtained from the previous iteration and the window size added in step three are used as the input of the filter. The output of this step includes: a) the further smoothed surface obtained from the morphological filter; b) the non-ground point detected according to the height difference threshold;

[0057] (3) The size of the filter window is increased, and the calculated height difference threshold is set. Return to step 2, if the size of the filter window is greater than the predetermined maximum value, the loop is ended, and this value is usually set to be slightly larger than the maximum building size;

[0058] (4) The last step is to generate the digital ground model after filtering out the non-ground object point cloud.

[0059] On the basis of the above, the progressive morphological filter is proposed, that is, the non-ground point can be filtered by the iterative operation process of continuously increasing the window, but this will also cause some ground top with large relief to be mis-filtered, and finally the filter filters a surface lower than the actual ground. In order to avoid the error segmentation of part of the ground top, a height difference threshold is added as a boundary point, and the points lower than the height difference threshold are considered as ground points. The height difference threshold is represented as follows:

[0060]

[0061] In the above formula, s represents the ground slope parameter; c represents the grid size; w k The window size for the k-th filtering iteration is represented by h; h0 represents the initial value of the height difference threshold; h max h represents the maximum value of the elevation difference threshold. k This represents the elevation difference threshold for the current k-th filtering window. It includes the ground slope parameter s, the initial elevation difference threshold h0, and the maximum elevation difference threshold h. max It needs to be set up in advance by the experimenter.

[0062] Considering the relatively flat terrain of urban roads, this experiment discards 3D spatial points in the opening operation and uses grid values ​​for iterative calculations. First, the preprocessed point cloud is divided into regular grids, and grid indices are established. The minimum elevation value of each point in the grid is obtained and assigned to the corresponding grid as its elevation. For grids without data points, the elevation is obtained by interpolation from points in surrounding grids. The expression for the slope value of each grid is thus derived as follows:

[0063]

[0064] In the above formula, i,j represent the row and column numbers of the corresponding grid; s ij This indicates the ground slope of the corresponding row and column grid; z i,j+1 , z i,j-1 , z i+1,j , z i-1,j , where represents the elevation value of each grid cell. To remove the influence of vegetation, buildings, and vehicles on the terrain slope, a window is first set at the center of each grid cell, and then an erosion operation is performed. Since the minimum elevation in each grid cell is used as the elevation value, the slope obtained from the erosion operation is usually too small. Next, a dilation operation is performed to correct the slope value, and this solution is used as the final result. Finally, a ground mathematical model is established using the slope and elevation values ​​of each grid cell obtained above, thus obtaining non-ground point cloud data suitable for registration and positioning. Figure 4 As shown.

[0065] The above description is merely a preferred embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method of ground point cloud processing, the method comprising: The method comprises the following steps: Scanning the surrounding environment based on a mechanical laser radar to obtain point cloud data; Filtering ground point cloud data from the point cloud data; Storing the filtered point cloud data in a two-dimensional matrix, and processing the point cloud data in the two-dimensional matrix according to the column order to obtain a non-ground point set and a ground point set; Segmenting the ground point cloud and the non-ground point cloud based on a progressive morphological filtering method; The process of processing the point cloud data in the two-dimensional matrix according to the column order comprises: Constructing a ground point cloud set, a non-ground point cloud set and an intermediate set, starting from the uppermost point cloud and processing each point cloud downward, and uniformly dividing the first row of data into the intermediate set; Calculating the points of other rows and comparing them with the set radius difference threshold and height difference threshold; The process of calculating the points of other rows and comparing them with the set radius difference threshold and height difference threshold comprises: Selecting a point in a row as a reference point and a point in the next row as a target point, calculating the radius difference and height difference of the concentric circles of the reference point and the target point, comparing the radius difference and the height difference with the set threshold, if the radius difference is less than the radius difference threshold, regarding the target point as being on the same object as the original point, adding the target point to the intermediate set, if the radius difference is greater than the radius difference threshold, comparing the height difference with the height difference threshold, if the height difference is greater than the height difference threshold and the intermediate set already has at least two points, adding the point with the radius difference greater than the radius difference threshold and the height difference greater than the height difference threshold to the intermediate set, adding all the points in the intermediate set to the non-ground point cloud set, and emptying the intermediate set, if the height difference is less than the height difference threshold, regarding the point with the height difference less than the height difference threshold and the point in the intermediate set as ground points and putting them into the ground point cloud set, and emptying the intermediate set, and continuously calculating until all the point clouds in the matrix are processed; The process of segmenting the ground point cloud and the non-ground point cloud based on the progressive morphological filtering method comprises: Dividing the point cloud coordinates measured by the vehicle-mounted laser radar into a two-dimensional grid and selecting the minimum elevation point cloud on each grid, and constructing a surface grid based on the minimum elevation point cloud; Applying an opening operation filter of the progressive morphological to the surface grid; in the first iteration, taking the minimum elevation surface and the initial filter window size as the input of the filter; in the next iteration, taking the filtered surface obtained from the previous iteration and the initial filter window size as the input of the filter, and outputting the further smoothed surface obtained from the morphological filter and the non-ground point cloud detected according to the elevation difference threshold; Increasing the size of the filter window, calculating and setting the elevation difference threshold, and re-iterating, if the size of the filter window is greater than the predetermined maximum value, the iteration is ended; Filtering the non-ground object point cloud to generate a digital ground model.

2. The method of claim 1, wherein, The process of filtering ground point cloud data from the point cloud data comprises: Calculating the radius of the concentric circle formed by a single laser beam and the ground based on the installation height of the laser radar and the angle between the laser transmitter and the ground; Calculating the radius difference and the height difference between adjacent concentric circles, and setting a threshold for the radius difference and the height difference; The radius difference and height difference of the concentric circles formed by each adjacent laser beam are compared with a set threshold value, and when the radius difference is greater than the threshold value and the height difference is less than the threshold value, it is determined that the corresponding point cloud is a ground point cloud.

3. The method of processing a ground point cloud according to claim 2, wherein, In the process of calculating the radius difference and height difference between adjacent concentric circles, a maximum ground slope value is set, and the radius difference and height difference between the concentric circles formed by adjacent lasers are calculated based on the maximum ground slope value.

4. The method of claim 1, wherein, In the two-dimensional matrix, each data represents a laser point obtained by scanning, and the row number and column number where the data is located respectively represent the group number and time of the actual laser point in a frame of point cloud data; the row data in the matrix corresponds to all the point cloud data measured by the radar transmitter in a frame; and the column data represents all the point cloud data obtained by the laser radar at the same time.

5. The method of claim 1, wherein, In the process of constructing the surface grid based on the minimum elevation point cloud, all point coordinates in the grid are stored in each grid cell, and if there is no measured point cloud in the cell, a closest point cloud is specified.

6. The method of processing a ground point cloud of claim 1, wherein, The elevation difference threshold value is calculated based on a ground slope parameter, a grid size, and a window size.