Point cloud filtering method, device and storage medium

By using a method of combining local and global point clouds in three-dimensional mapping, using Gaussian distribution to judge the region type and filtering out point clouds in dynamic areas, the problems of low 3-dimensional mapping accuracy and low resource utilization in the existing technology are solved, and more efficient point cloud filtering and more accurate mapping effects are achieved.

CN119229037BActive Publication Date: 2025-03-07ZHONGKE YUNGU TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411760308.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-03
Publication Date
2025-03-07
Estimated Expiration
2044-12-03

AI Technical Summary

Technical Problem

The prior art has problems with low accuracy and low resource utilization in three-dimensional mapping construction, especially in indoor roof scenarios. Traditional methods are difficult to effectively distinguish between static and dynamic areas, resulting in low accuracy in mapping construction and positioning, and large scene filtering produces a large number of intermediate files, and low resource utilization.

Method used

The local and global point cloud combination method is used to judge the region type by calculating the Gaussian distribution of the point cloud in a specific region, and filter out the point clouds in the dynamic region. The specific steps include obtaining the current frame point cloud collected by the robot, determining the current position, projecting it to an incremental global map, extracting the area map, dividing the molecular area, calculating the Gaussian distribution, judging the area type, and performing point cloud filtering on the dynamic area.

Benefits of technology

It realizes effective distinction between dynamic and static areas of indoor and outdoor scenes, improves the accuracy of three-dimensional mapping, and reduces resource waste through real-time filtering and improves resource utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119229037B_ABST
    Figure CN119229037B_ABST
Patent Text Reader

Abstract

The present application discloses a point cloud filtering method, device and storage medium, which relates to the technical field of three-dimensional mapping. The method includes: obtaining the current frame collected by the robot, and determining the current posture of the robot when collecting the current frame; determining the incremental global map corresponding to the current frame; projecting the first point cloud included in the current frame to the incremental global map based on the current posture to obtain the target global map; extracting the regional map with the current posture as the center point in the target global map, and dividing it into multiple sub-regions; respectively determining the point cloud Gaussian distribution corresponding to each sub-region of the target global map and the incremental global map to determine the regional type of the sub-region; filtering the second point cloud corresponding to the sub-region with the regional type of the dynamic region to update the incremental global map. In this way, the dynamic and static areas in the map can be effectively distinguished in different scenes, and the point cloud of the dynamic area can be filtered in real time to improve the mapping accuracy and resource utilization.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of three-dimensional mapping technology, and specifically to a point cloud filtering method, device and storage medium. Background Art

[0002] Point cloud maps have become an indispensable form in current robotics technology, and are very important in robot path planning, positioning and other technologies. In actual map building scenes, there are often many dynamic objects, such as pedestrians and vehicles, which will cause interference problems such as "ghosting" in environmental mapping, thereby affecting the accuracy of mapping and positioning. In the prior art, the common practice is to divide the grid map into small grids based on the occupation grid map, calculate the height difference in the grid, determine the static and dynamic areas by the ratio of the height difference, and delete the dynamic points in the dynamic area. However, this method, which uses the height feature, is not applicable to indoor scenes with roofs. In addition, an already established global map and intermediate process map are also required, but large scene filtering will generate a large number of intermediate files, and the resource utilization rate is very low. Summary of the invention

[0003] The purpose of the embodiments of the present application is to provide a point cloud filtering method, device and storage medium to solve the technical problems of low three-dimensional mapping accuracy and low resource utilization in the prior art.

[0004] In order to achieve the above-mentioned object, the first aspect of the present application provides a point cloud filtering method, the method comprising:

[0005] Get the current frame collected by the robot, and determine the current position and posture of the robot when collecting the current frame;

[0006] Determine the incremental global map corresponding to the current frame;

[0007] Projecting the first point cloud included in the current frame to the incremental global map based on the current pose to obtain a target global map;

[0008] Extracting a regional map with the current posture as the center point from the target global map, and dividing the regional map into multiple sub-regions according to a preset segmentation rule;

[0009] Determine a Gaussian distribution of a point cloud corresponding to each sub-region, wherein the Gaussian distribution of the point cloud includes a first Gaussian distribution of a second point cloud corresponding to the target global map in each sub-region, and a second Gaussian distribution of a third point cloud corresponding to the incremental global map in each sub-region;

[0010] For each sub-region, the region type of the sub-region is determined according to the Gaussian distribution of the point cloud;

[0011] A sub-region whose region type is a dynamic region among all the sub-regions is determined as a target sub-region, and a second point cloud corresponding to each target sub-region is filtered out to update the incremental global map.

[0012] In an embodiment of the present application, the first Gaussian distribution includes a first mean and a first variance, the second Gaussian distribution includes a second mean and a second variance, and for each sub-region, determining the region type of the sub-region according to the point cloud Gaussian distribution includes: for each sub-region, determining the mean ratio between the first mean and the second mean corresponding to the sub-region; for each sub-region, determining the variance ratio between the first variance and the second variance corresponding to the sub-region; for each sub-region, when the mean ratio corresponding to the sub-region is not within the first preset range and the variance ratio corresponding to the sub-region is not within the second preset range, determining that the region type of the sub-region is a dynamic region.

[0013] In an embodiment of the present application, for each sub-region, determining the region type of the sub-region based on the Gaussian distribution of the point cloud also includes: for each sub-region, when the mean ratio corresponding to the sub-region is within a first preset range or the variance ratio corresponding to the sub-region is within a second preset range, determining that the region type of the sub-region is a static region.

[0014] In an embodiment of the present application, the first Gaussian distribution includes a first mean and a first variance, the second Gaussian distribution includes a second mean and a second variance, and the first Gaussian distribution of the second point cloud corresponding to each sub-region of the target global map is calculated according to the following formulas (1) and (2):

[0015] (1)

[0016] (2)

[0017] in, It refers to the first mean of the second point cloud corresponding to each sub-region of the target global map, It refers to the first variance of the second point cloud corresponding to each sub-region of the target global map, n refers to the number of first coordinate points included in the second point cloud corresponding to each sub-region of the target global map, It refers to the spatial coordinates of the coordinate point pk in the second point cloud corresponding to each sub-area of ​​the target global map;

[0018] The second Gaussian distribution of the third point cloud corresponding to each sub-region of the incremental global map is calculated according to the following formulas (3) and (4):

[0019] (3)

[0020] (4)

[0021] in, It refers to the second mean of the third point cloud corresponding to each sub-region of the incremental global map, refers to the second variance of the third point cloud corresponding to each sub-region of the incremental global map, and m refers to the number of second coordinate points included in the third point cloud corresponding to each sub-region of the incremental global map. It refers to the spatial coordinates of the coordinate point sk in the third point cloud corresponding to each sub-area of ​​the target global map.

[0022] In an embodiment of the present application, the area map is a circular area map, and the radius of the circular area map is a first preset radius, the preset segmentation rule includes a preset segmentation angle and a preset segmentation interval distance, and dividing the area map into multiple sub-areas according to the preset segmentation rule includes: taking the center point of the circular area map as the starting point, dividing the circular area map according to the preset segmentation angle to divide the circular area map into multiple sector-shaped areas; dividing each sector-shaped area according to the preset segmentation interval distance to divide the circular area map into multiple sub-areas.

[0023] In an embodiment of the present application, the second point cloud corresponding to each target sub-region is filtered out to update the incremental global map, including: for each target sub-region, each first coordinate point of the second point cloud corresponding to the target sub-region is matched based on a preset point cloud matching algorithm; for each target sub-region, the first coordinate point that fails to match in the second point cloud corresponding to the target sub-region is deleted, and the first coordinate point that successfully matches in the second point cloud corresponding to the target sub-region is retained in the incremental global map to update the incremental global map.

[0024] In an embodiment of the present application, for each target sub-region, matching each coordinate point of the second point cloud corresponding to the target sub-region based on a preset point cloud matching algorithm includes: for each target sub-region, dividing the third point cloud corresponding to the target sub-region into a plurality of voxels according to a preset resolution; for each target sub-region, determining a target voxel corresponding to each first coordinate point of the second point cloud corresponding to the target sub-region in the plurality of voxels; determining a third Gaussian distribution corresponding to the fourth point cloud in each voxel; for each first coordinate point, determining a residual between each first coordinate point and the target voxel according to the third Gaussian distribution corresponding to the target voxel corresponding to the first coordinate point according to a preset transformation matrix; for the target sub-region, based on all first coordinate point pairs of the target sub-region, The preset transformation matrix is ​​iteratively calculated based on the corresponding residual to update the preset transformation matrix; when the convergence condition of the iterative calculation is met, for any first coordinate point of each target sub-region, whether there is any second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point is determined according to the updated transformation matrix; for any first coordinate point of each target sub-region, if there is a second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point, it is determined that the first coordinate point is successfully matched; for any first coordinate point of each target sub-region, if there is any second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point, it is determined that the first coordinate point fails to match.

[0025] In an embodiment of the present application, for each first coordinate point, determining the residual between each first coordinate point and the target voxel according to the third Gaussian distribution corresponding to the target voxel corresponding to the first coordinate point according to the preset transformation matrix includes calculating the residual according to the following formula (5):

[0026] (5)

[0027] in, It refers to the residual between the i-th first coordinate point and the corresponding target voxel, refers to the i-th first coordinate point, refers to the third mean of the target voxel corresponding to the i-th first coordinate point, refers to the rotation matrix of the preset transformation matrix, and t refers to the translation vector of the preset transformation matrix.

[0028] In an embodiment of the present application, for the target sub-region, iteratively calculating the preset transformation matrix based on the residuals corresponding to all the first coordinate points of the target sub-region to update the preset transformation matrix includes updating the preset transformation matrix according to the following function expression (6):

[0029] (6)

[0030] in, refers to the updated transformation matrix, It refers to the transposed matrix of the residual corresponding to the first coordinate point of the i-th target sub-region, It refers to the residual corresponding to each first coordinate point of the target sub-region. It refers to the third difference corresponding to the i-th first coordinate point of the target sub-region.

[0031] A second aspect of the present application provides a point cloud filtering device, comprising:

[0032] a memory configured to store instructions;

[0033] The processor is configured to call instructions from the memory and implement the point cloud filtering method described above when executing the instructions.

[0034] A third aspect of the present application provides a machine-readable storage medium having instructions stored thereon, the instructions being used to enable a machine to execute the above-mentioned point cloud filtering method.

[0035] Through the above technical solution, a combination of local and global point clouds is adopted, and the Gaussian distribution of the calculated point cloud is used in a specific area to judge the dynamic area, so as to filter out the point cloud in the dynamic area, and effectively distinguish between dynamic and static areas for both indoor and outdoor scenes. Compared with the existing technology, the incremental global map and the point cloud frame at the current moment can be obtained in real time, and can be filtered online in real time, which is more suitable for dynamic point cloud filtering in large scenes with long-term mapping, and improves resource utilization.

[0036] Other features and advantages of the embodiments of the present application will be described in detail in the subsequent specific implementation section. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] The accompanying drawings are used to provide a further understanding of the embodiments of the present application and constitute a part of the specification. Together with the following specific implementations, they are used to explain the embodiments of the present application, but do not constitute a limitation on the embodiments of the present application. In the accompanying drawings:

[0038] Figure 1 A schematic diagram of a process of a point cloud filtering method according to an embodiment of the present application is schematically shown;

[0039] Figure 2 A schematic diagram of a circular area map according to an embodiment of the present application is schematically shown;

[0040] Figure 3 A structural block diagram of a point cloud filtering device according to an embodiment of the present application is schematically shown;

[0041] Figure 4A schematic diagram of the structure of a computer device according to an embodiment of the present application is shown schematically. DETAILED DESCRIPTION

[0042] In order to make the purpose, technical scheme and advantages of the embodiments of the present application clearer, the technical scheme in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. It should be understood that the specific implementation methods described herein are only used to illustrate and explain the embodiments of the present application, and are not used to limit the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.

[0043] In addition, if there are descriptions involving "first", "second", etc. in the embodiments of the present application, the descriptions of "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or suggesting their relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. In addition, the technical solutions between the various embodiments can be combined with each other, but they must be based on the ability of ordinary technicians in the field to implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such combination of technical solutions does not exist and is not within the scope of protection required by this application.

[0044] Figure 1 The following schematically shows a flow chart of a point cloud filtering method according to an embodiment of the present application. Figure 1 As shown, an embodiment of the present application provides a point cloud filtering method, which may include the following steps.

[0045] S102, obtaining a current frame captured by the robot, and determining a current posture of the robot when capturing the current frame.

[0046] It can be understood that a robot refers to a robot that is movable and can capture images. The current frame refers to the current image corresponding to the local space area captured by the robot when it is capturing images of the target scene at the current moment. The target site refers to the three-dimensional space site designated by the technician for three-dimensional mapping. The current pose refers to the position of the robot when it captures the current frame. Specifically, the robot can use a laser radar for image capture, and the current frame is a point cloud image, which contains the three-dimensional point cloud data of the current frame. Among them, the current pose can be the world coordinates of the robot.

[0047] S104, determining an incremental global map corresponding to the current frame.

[0048] It can be understood that the core of the incremental map lies in its update mechanism. It compares the differences between the new and old data and only updates the changed parts, such as added, deleted or modified data. The incremental global map refers to the global map of the target scene corresponding to the current moment corresponding to the current frame.

[0049] S106, projecting the first point cloud included in the current frame to the incremental global map based on the current posture to obtain a target global map.

[0050] It can be understood that the current frame includes a first point cloud, and the first point cloud includes multiple coordinate points. Specifically, the current posture can refer to the posture of a camera installed on the robot. Each frame of point cloud image can locate the three-dimensional point cloud data corresponding to the point cloud image through the current posture of the robot combined with the mapping algorithm, so as to project it into the incremental global map. After the first point cloud included in the current frame is projected to the incremental global map, the incremental global map adds the image information of the first point cloud of the current frame to obtain the target global map. The target global map refers to the incremental global map after the first point cloud of the current frame is added. It can be understood that the target global map is a new map for the incremental global map, and the incremental global map is an old map.

[0051] S108, extracting a region map with the current position as the center point from the target global map, and dividing the region map into a plurality of sub-regions according to a preset segmentation rule.

[0052] It can be understood that the center point of the area map is the current position of the robot, and the shape and size of the area map can be set by the technician according to experience. Further, the area map can be divided into multiple sub-areas according to the preset segmentation rule. The preset segmentation rule can be a rule pre-set by the technician for segmenting the area map. The sub-area refers to the local area obtained after the area map is segmented according to the preset segmentation rule.

[0053] In an embodiment of the present application, the area map is a circular area map, and the radius of the circular area map is a first preset radius, the preset segmentation rule includes a preset segmentation angle and a preset segmentation interval distance, and dividing the area map into multiple sub-areas according to the preset segmentation rule includes: taking the center point of the circular area map as the starting point, dividing the circular area map according to the preset segmentation angle to divide the circular area map into multiple sector-shaped areas; dividing each sector-shaped area according to the preset segmentation interval distance to divide the circular area map into multiple sub-areas.

[0054] It can be understood that the first preset radius is a radius preset by the technician for the circular area map, which can specify the area of ​​the area map to be extracted from the target global map. The preset segmentation angle and the preset segmentation interval distance are respectively the angle and interval distance preset by the technician for segmenting the circular area map. Figure 2 The point cloud filtering algorithm receives the second point cloud p corresponding to the current frame, the world coordinate pose of the robot's camera, and the incremental global map map as input, projects the second point cloud p onto the incremental global map map according to the coordinates, and takes the effective range submap of the first preset radius R on the incremental global map map with the world coordinate pose as the origin, which is recorded as the circular area map sub_map. Furthermore, the circular area map divides sub_map and the first point cloud p into a number of small-range sub-areas bins with a preset segmentation angle θ and a preset segmentation distance γ.

[0055] S110, determining the point cloud Gaussian distribution corresponding to each sub-region, wherein the point cloud Gaussian distribution includes a first Gaussian distribution of a second point cloud corresponding to the target global map in each sub-region, and a second Gaussian distribution of a third point cloud corresponding to the incremental global map in each sub-region.

[0056] It can be understood that the point cloud Gaussian distribution is a point cloud representation method based on Gaussian distribution. The point cloud Gaussian distribution corresponding to the sub-region is used to describe the probability distribution of the point cloud within the sub-region. Among them, the point cloud Gaussian distribution includes a first Gaussian distribution of the second point cloud corresponding to each sub-region of the target global map, and a second Gaussian distribution of the third point cloud corresponding to each sub-region of the incremental global map. It can be understood that the multiple coordinate points in the coordinate points included in the target global map that fall in each sub-region are the second point cloud, and the first Gaussian distribution represents the probability distribution of the second point cloud in each sub-region. Similarly, the multiple coordinate points in the coordinate points included in the incremental global map that fall in each sub-region are the third point cloud, and the second Gaussian distribution represents the probability distribution of the third point cloud in each sub-region.

[0057] S112: For each sub-region, determine the region type of the sub-region according to the Gaussian distribution of the point cloud.

[0058] Specifically, the area type includes a dynamic type and a static type. If the sub-area is a dynamic type, it can be considered that there are dynamic objects in the sub-area, such as pedestrians, vehicles, animals, etc. These dynamic objects will cause interference problems such as "ghosting" in the actual map environment mapping, thereby affecting the accuracy of mapping and positioning. Since the environmental buildings are usually fixed, while dynamic objects such as pedestrians, vehicles, and animals are non-fixed. Then, by analyzing the distribution of the new and old map point clouds, it is possible to determine which points are fixed (that is, the point represents a static object in the environment) and which points are non-fixed (that is, the point represents a dynamic object in the environment). Comparing the coordinate points in the point cloud one by one is a very complex and cumbersome processing process. Therefore, the map can be divided into multiple sub-areas, and the area types of the sub-areas can be distinguished, thereby improving processing efficiency. Specifically, the first Gaussian distribution can reflect the probability distribution of the second point cloud of the coordinate points included in the target global map falling in each sub-area, and the second Gaussian distribution can reflect the probability distribution of the third point cloud of the coordinate points included in the incremental global map falling in each sub-area. Then, based on the Gaussian distribution of the point clouds of the new and old maps falling in each sub-area, we can determine which sub-areas are static and which sub-areas are dynamic.

[0059] In an embodiment of the present application, the first Gaussian distribution includes a first mean and a first variance, the second Gaussian distribution includes a second mean and a second variance, and for each sub-region, determining the region type of the sub-region according to the point cloud Gaussian distribution includes: for each sub-region, determining the mean ratio between the first mean and the second mean corresponding to the sub-region; for each sub-region, determining the variance ratio between the first variance and the second variance corresponding to the sub-region; for each sub-region, when the mean ratio corresponding to the sub-region is not within the first preset range and the variance ratio corresponding to the sub-region is within the second preset range, determining that the region type of the sub-region is a dynamic region.

[0060] In an embodiment of the present application, for each sub-region, determining the region type of the sub-region based on the Gaussian distribution of the point cloud also includes: for each sub-region, when the mean ratio corresponding to the sub-region is not within a first preset range or the variance ratio corresponding to the sub-region is within a second preset range, determining that the region type of the sub-region is a static region.

[0061] It can be understood that the first mean can reflect the concentrated position of the second point cloud in each sub-area of ​​the coordinate points included in the target global map. The second mean can reflect the concentrated position of the third point cloud in each sub-area of ​​the coordinate points included in the incremental global map. The first variance can reflect the discrete degree of the second point cloud in each sub-area of ​​the coordinate points included in the target global map. The second variance can reflect the discrete degree of the third point cloud in each sub-area of ​​the coordinate points included in the incremental global map. The mean ratio can reflect the difference between the first mean and the second mean, and the variance ratio can reflect the difference between the first variance and the second variance. The first preset range is the range of the mean ratio set by the technician according to technical experience, and the second preset range is the range of the variance ratio set by the technician according to technical experience. Therefore, by setting the first preset range and the second preset range, the difference of the point cloud in each sub-area of ​​the target global map compared to the incremental global map can be judged. The greater the difference, the greater the change of the point cloud in the sub-area can be considered to be a dynamic area, and vice versa, the smaller the difference is, the static area. Then, for each sub-region, when the mean ratio corresponding to the sub-region is not within the first preset range and the variance ratio corresponding to the sub-region is within the second preset range, the region type of the sub-region is determined to be a dynamic region. When the mean ratio corresponding to the sub-region is not within the first preset range or the variance ratio corresponding to the sub-region is within the second preset range, the region type of the sub-region is determined to be a static region.

[0062] In another specific embodiment, the difference of the point cloud of the target global map in each sub-region compared to the incremental global map can also be judged by the difference between the means and the difference between the variances. For each sub-region, when the mean difference corresponding to the sub-region is not within the third preset range and the variance difference corresponding to the sub-region is within the fourth preset range, the region type of the sub-region is determined to be a dynamic region. When the mean difference corresponding to the sub-region is within the third preset range or the variance difference corresponding to the sub-region is within the fourth preset range, the region type of the sub-region is determined to be a static region.

[0063] In an embodiment of the present application, the first Gaussian distribution includes a first mean and a first variance, the second Gaussian distribution includes a second mean and a second variance, and the first Gaussian distribution of the second point cloud corresponding to each sub-region of the target global map is calculated according to the following formulas (1) and (2):

[0064] (1)

[0065] (2)

[0066] in, It refers to the first mean of the second point cloud corresponding to each sub-region of the target global map, It refers to the first variance of the second point cloud corresponding to each sub-region of the target global map, n refers to the number of first coordinate points included in the second point cloud corresponding to each sub-region of the target global map, It refers to the spatial coordinates of the coordinate point pk in the second point cloud corresponding to each sub-area of ​​the target global map;

[0067] The second Gaussian distribution of the third point cloud corresponding to each sub-region of the incremental global map is calculated according to the following formulas (3) and (4):

[0068] (3)

[0069] (4)

[0070] in, It refers to the second mean of the third point cloud corresponding to each sub-region of the incremental global map, refers to the second variance of the third point cloud corresponding to each sub-region of the incremental global map, and m refers to the number of second coordinate points included in the third point cloud corresponding to each sub-region of the incremental global map. It refers to the spatial coordinates of the coordinate point sk in the third point cloud corresponding to each sub-area of ​​the target global map.

[0071] S114: Determine a sub-region whose region type is a dynamic region among all the sub-regions as a target sub-region, and perform filtering processing on the second point cloud corresponding to each target sub-region to update the incremental global map.

[0072] It can be understood that in the process of point cloud filtering, it is necessary to filter out the point clouds that are considered to be dynamic and retain the static point clouds. Then, the sub-regions with the region type of dynamic region in all sub-regions are determined as target sub-regions. Furthermore, after filtering the second point cloud corresponding to each target sub-region, an updated target global map can be obtained, and the updated target global map is used as a new incremental global map. Then, the image collected by the robot in the next frame can update this new incremental global map.

[0073] Through the above scheme, a combination of local and global point clouds is adopted, and the Gaussian distribution of the calculated point cloud is used in a specific area to judge the dynamic area, so as to filter the point cloud in the dynamic area, and effectively distinguish the dynamic and static areas for both indoor and outdoor scenes. In addition, most of the existing technologies are offline filtering, that is, it is necessary to complete the mapping first, and then use the output point cloud frame file at each moment and the final global map file for filtering. This method is inefficient, and a large amount of intermediate point cloud data needs to be saved for large-scale long-term mapping scenes, and the resource utilization rate is not high. Compared with the existing technology, both the incremental global map and the point cloud frame at the current moment can be obtained in real time, and can be filtered online in real time, which is more suitable for dynamic point cloud filtering in large-scale long-term mapping scenes, thereby improving resource utilization.

[0074] In an embodiment of the present application, the second point cloud corresponding to each target sub-region is filtered out to update the incremental global map, including: for each target sub-region, each first coordinate point of the second point cloud corresponding to the target sub-region is matched based on a preset point cloud matching algorithm; for each target sub-region, the first coordinate point that fails to match in the second point cloud corresponding to the target sub-region is deleted, and the first coordinate point that successfully matches in the second point cloud corresponding to the target sub-region is retained in the incremental global map to update the incremental global map.

[0075] It can be understood that the preset point cloud matching algorithm refers to the point cloud matching algorithm pre-set by the technician. The core purpose of the point cloud matching algorithm is to make the two point cloud three-dimensional models overlap by translation and rotation. The target sub-region is a dynamic type, and the second point cloud in the entire target sub-region can be directly deleted, and the sub-region of the static type can be retained. However, the coordinate points in the dynamic target sub-region are not all dynamic coordinate points, and there are also static coordinate points. If the second point cloud in the entire target sub-region is deleted, the updated incremental global map will lack a lot of image information, resulting in distortion, affecting the accuracy of mapping and positioning. In the prior art, the ground is usually fitted in a dynamic grid, and the points above the ground are regarded as dynamic points for deletion. However, in this way, when fitting the ground, all the points above the ground are deleted, and many non-dynamic points will be mistakenly deleted when dynamic and static objects are adhered indoors. Therefore, in an embodiment of the present application, for each target sub-region, each first coordinate point of the second point cloud corresponding to the target sub-region is matched based on the preset point cloud matching algorithm. Among them, the preset point cloud matching algorithm matches each first coordinate point of the second point cloud corresponding to the target sub-region with the second coordinate point in the corresponding third point cloud. The first coordinate point that successfully matches is a static coordinate point, and the first coordinate point that fails to match is a dynamic coordinate point. Then, the first coordinate point that fails to match in the second point cloud corresponding to the target sub-region can be deleted, and the first coordinate point that successfully matches in the second point cloud corresponding to the target sub-region can be retained in the incremental global map to update the incremental global map. In this way, the static points in the dynamic area are retained, more image information is retained, and the accidental deletion of coordinate points is reduced, which can improve the accuracy of mapping and positioning.

[0076] Specifically, common point cloud matching algorithms include ICP (Iterative Closest Point), PL-ICP (Point-to-line ICP), NICP (Normal ICP), IMLS-ICP (Implicit Maximum Likelihood Surface-based ICP), NDT (Normal Distribution Transformation), etc. For example, the NDT algorithm converts the reference point cloud into a multi-dimensional normal distribution and optimizes the transformation parameters so that the normal distribution parameters of the matched second point cloud and the third point cloud match best.

[0077] In an embodiment of the present application, for each target sub-region, matching each coordinate point of the second point cloud corresponding to the target sub-region based on a preset point cloud matching algorithm includes: for each target sub-region, dividing the third point cloud corresponding to the target sub-region into a plurality of voxels according to a preset resolution; for each target sub-region, determining a target voxel corresponding to each first coordinate point of the second point cloud corresponding to the target sub-region in the plurality of voxels; determining a third Gaussian distribution corresponding to the fourth point cloud in each voxel; for each first coordinate point, determining a residual between each first coordinate point and the target voxel according to the third Gaussian distribution corresponding to the target voxel corresponding to the first coordinate point according to a preset transformation matrix; for the target sub-region, based on all first coordinate point pairs of the target sub-region, The preset transformation matrix is ​​iteratively calculated based on the corresponding residual to update the preset transformation matrix; when the convergence condition of the iterative calculation is met, for any first coordinate point of each target sub-region, whether there is any second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point is determined according to the updated transformation matrix; for any first coordinate point of each target sub-region, if there is a second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point, it is determined that the first coordinate point is successfully matched; for any first coordinate point of each target sub-region, if there is any second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point, it is determined that the first coordinate point fails to match.

[0078] It can be understood that the preset resolution is the resolution pre-set by the technician. Voxel is the abbreviation of volume element (VolumePixel), which is the smallest unit in three-dimensional space segmentation. Voxel is similar to the smallest unit of two-dimensional space-pixel, which is used in three-dimensional imaging, scientific data and medical imaging. In the embodiment of the present application, voxel is a voxel generated by dividing the third point cloud. Moreover, the multiple coordinate points contained in each voxel are the fourth point cloud. The third Gaussian distribution refers to the probability distribution of the fourth point cloud. The target voxel refers to the voxel that matches each first coordinate point of the second point cloud corresponding to the target sub-area in the multiple voxels. The preset transformation matrix refers to the matrix preset by the technician for translation, rotation, scaling and other transformation operations on the image, which can describe the transformation relationship of the image from one coordinate system to another coordinate system. The above scheme matches the coordinate points through the Gaussian distribution of voxels and iteratively updates the preset transformation matrix, which can effectively improve the accuracy of point cloud matching.

[0079] In an embodiment of the present application, for each first coordinate point, determining the residual between each first coordinate point and the target voxel according to the third Gaussian distribution corresponding to the target voxel corresponding to the first coordinate point according to the preset transformation matrix includes calculating the residual according to the following formula (5):

[0080] (5)

[0081] in, It refers to the residual between the i-th first coordinate point and the corresponding target voxel, refers to the i-th first coordinate point, refers to the third mean of the target voxel corresponding to the i-th first coordinate point, refers to the rotation matrix of the preset transformation matrix, and t refers to the translation vector of the preset transformation matrix.

[0082] In an embodiment of the present application, for the target sub-region, iteratively calculating the preset transformation matrix based on the residuals corresponding to all the first coordinate points of the target sub-region to update the preset transformation matrix includes updating the preset transformation matrix according to the following function expression (6):

[0083] (6)

[0084] in, refers to the updated transformation matrix, It refers to the transposed matrix of the residual corresponding to the first coordinate point of the i-th target sub-region, It refers to the residual corresponding to each first coordinate point of the target sub-region. It refers to the third difference corresponding to the i-th first coordinate point of the target sub-region.

[0085] Specifically, the algorithm idea of ​​matching each first coordinate point of the second point cloud corresponding to the target sub-region based on the preset point cloud matching algorithm is shown in the following steps:

[0086] 1. Divide the third point cloud of the target sub-area into several voxels according to the preset resolution.

[0087] 2. Calculate the Gaussian distribution of the point cloud in each voxel. Let the mean value of the k-th voxel be , with a variance of Σk.

[0088] 3. During registration, first calculate which voxel each first coordinate point falls in, and then establish the first coordinate point and the voxel , The residual error.

[0089] 4. Use the GN method or LM method to iterate the estimated pose, and then update the pose estimate.

[0090] The most critical step here is step 3. We assume that the first coordinate point in the second point cloud to be registered is , after Rt transformation, it falls on a certain statistical index , In the voxels of , the residual in this grid can be recorded as:

[0091] (5)

[0092] in, It refers to the residual between the i-th first coordinate point and the corresponding target voxel, refers to the i-th first coordinate point, refers to the third mean of the target voxel corresponding to the i-th first coordinate point, refers to the rotation matrix of the preset transformation matrix, and t refers to the translation vector of the preset transformation matrix.

[0093] The final R and t can be determined by a weighted least squares problem. For the target sub-region, the preset transformation matrix is ​​iteratively calculated based on the residuals corresponding to all the first coordinate points of the target sub-region to update the preset transformation matrix, including updating the preset transformation matrix according to the following function expression (6):

[0094] (6)

[0095] in, refers to the updated transformation matrix, It refers to the transposed matrix of the residual corresponding to the first coordinate point of the i-th target sub-region, It refers to the residual corresponding to each first coordinate point of the target sub-region. It refers to the third difference corresponding to the i-th first coordinate point of the target sub-region.

[0096] It can be seen from the above least squares method that the above problem is equivalent to maximizing the probability distribution of each point falling on the corresponding voxel, which can be considered as a maximum likelihood estimation (MLE), as shown in the following formula (7):

[0097] (7)

[0098] in, refers to the updated transformation matrix, refers to the rotation matrix of the preset transformation matrix, t refers to the translation vector of the preset transformation matrix, refers to the i-th first coordinate point, and P refers to the parameter of maximum likelihood estimation.

[0099] That is to say, since the fourth point cloud of the target voxel conforms to a certain statistical distribution, then under the correct pose estimation, the first coordinate point falling in it should also conform to this distribution. This is equivalent to providing the weight distribution of this least squares problem. If the point cloud within the voxel is more concentrated, then the estimated point should be closer to the mean. On the contrary, if the point cloud within the voxel is more dispersed, then even some deviation from the mean is acceptable.

[0100] The Gauss-Newton solution to the above weighted least squares problem is shown in the following formula (8):

[0101] (8)

[0102] in, is the increment of each iteration, It refers to the Jacobian of the residual term with respect to the independent variable.

[0103] According to the above steps, the preset transformation matrix is ​​iteratively calculated to update the preset transformation matrix R and t.

[0104] The above scheme converts the reference point cloud into a multi-dimensional normal distribution and optimizes the transformation parameters so that the normal distribution parameters of the matched second point cloud and the third point cloud match best. The current frame and the regional map are matched first and then deleted to fully retain the matched static points and delete the dynamic points. In this way, there is no need to fit the ground, and the ground does not need to be smooth. The application scenarios are wider and can be used in any terrain, and the accidental deletion of static points can be reduced.

[0105] Figure 1 FIG. 1 is a flow chart of a point cloud filtering method in one embodiment. It should be understood that although Figure 1 The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, Figure 1 At least part of the steps may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least part of the sub-steps or stages of other steps.

[0106] Figure 3 The structure block diagram of a point cloud filtering device according to an embodiment of the present application is schematically shown. Figure 3 As shown, the embodiment of the present application provides a point cloud filtering device, which may include:

[0107] a memory configured to store instructions;

[0108] The processor is configured to call instructions from the memory and implement the above-mentioned point cloud filtering method when executing the instructions.

[0109] Specifically, in the embodiment of the present application, the processor may be configured to:

[0110] Get the current frame collected by the robot, and determine the current position and posture of the robot when collecting the current frame;

[0111] Determine the incremental global map corresponding to the current frame;

[0112] Projecting the first point cloud included in the current frame to the incremental global map based on the current pose to obtain a target global map;

[0113] Extracting a regional map with the current posture as the center point from the target global map, and dividing the regional map into multiple sub-regions according to a preset segmentation rule;

[0114] Determine a Gaussian distribution of a point cloud corresponding to each sub-region, wherein the Gaussian distribution of the point cloud includes a first Gaussian distribution of a second point cloud corresponding to the target global map in each sub-region, and a second Gaussian distribution of a third point cloud corresponding to the incremental global map in each sub-region;

[0115] For each sub-region, the region type of the sub-region is determined according to the Gaussian distribution of the point cloud;

[0116] A sub-region whose region type is a dynamic region among all the sub-regions is determined as a target sub-region, and a second point cloud corresponding to each target sub-region is filtered out to update the incremental global map.

[0117] In an embodiment of the present application, the first Gaussian distribution includes a first mean and a first variance, the second Gaussian distribution includes a second mean and a second variance, and for each sub-region, determining the region type of the sub-region according to the point cloud Gaussian distribution includes: for each sub-region, determining the mean ratio between the first mean and the second mean corresponding to the sub-region; for each sub-region, determining the variance ratio between the first variance and the second variance corresponding to the sub-region; for each sub-region, when the mean ratio corresponding to the sub-region is not within the first preset range and the variance ratio corresponding to the sub-region is not within the second preset range, determining that the region type of the sub-region is a dynamic region.

[0118] In an embodiment of the present application, for each sub-region, determining the region type of the sub-region based on the Gaussian distribution of the point cloud also includes: for each sub-region, when the mean ratio corresponding to the sub-region is within a first preset range or the variance ratio corresponding to the sub-region is within a second preset range, determining that the region type of the sub-region is a static region.

[0119] In an embodiment of the present application, the first Gaussian distribution includes a first mean and a first variance, the second Gaussian distribution includes a second mean and a second variance, and the first Gaussian distribution of the second point cloud corresponding to each sub-region of the target global map is calculated according to the following formulas (1) and (2):

[0120] (1)

[0121] (2)

[0122] in, It refers to the first mean of the second point cloud corresponding to each sub-region of the target global map, It refers to the first variance of the second point cloud corresponding to each sub-region of the target global map, n refers to the number of first coordinate points included in the second point cloud corresponding to each sub-region of the target global map, It refers to the spatial coordinates of the coordinate point pk in the second point cloud corresponding to each sub-area of ​​the target global map;

[0123] The second Gaussian distribution of the third point cloud corresponding to each sub-region of the incremental global map is calculated according to the following formulas (3) and (4):

[0124] (3)

[0125] (4)

[0126] in, It refers to the second mean of the third point cloud corresponding to each sub-region of the incremental global map, refers to the second variance of the third point cloud corresponding to each sub-region of the incremental global map, and m refers to the number of second coordinate points included in the third point cloud corresponding to each sub-region of the incremental global map. It refers to the spatial coordinates of the coordinate point sk in the third point cloud corresponding to each sub-area of ​​the target global map.

[0127] In an embodiment of the present application, the area map is a circular area map, and the radius of the circular area map is a first preset radius, the preset segmentation rule includes a preset segmentation angle and a preset segmentation interval distance, and dividing the area map into multiple sub-areas according to the preset segmentation rule includes: taking the center point of the circular area map as the starting point, dividing the circular area map according to the preset segmentation angle to divide the circular area map into multiple sector-shaped areas; dividing each sector-shaped area according to the preset segmentation interval distance to divide the circular area map into multiple sub-areas.

[0128] In an embodiment of the present application, the second point cloud corresponding to each target sub-region is filtered out to update the incremental global map, including: for each target sub-region, each first coordinate point of the second point cloud corresponding to the target sub-region is matched based on a preset point cloud matching algorithm; for each target sub-region, the first coordinate point that fails to match in the second point cloud corresponding to the target sub-region is deleted, and the first coordinate point that successfully matches in the second point cloud corresponding to the target sub-region is retained in the incremental global map to update the incremental global map.

[0129] In an embodiment of the present application, for each target sub-region, matching each coordinate point of the second point cloud corresponding to the target sub-region based on a preset point cloud matching algorithm includes: for each target sub-region, dividing the third point cloud corresponding to the target sub-region into a plurality of voxels according to a preset resolution; for each target sub-region, determining a target voxel corresponding to each first coordinate point of the second point cloud corresponding to the target sub-region in the plurality of voxels; determining a third Gaussian distribution corresponding to the fourth point cloud in each voxel; for each first coordinate point, determining a residual between each first coordinate point and the target voxel according to the third Gaussian distribution corresponding to the target voxel corresponding to the first coordinate point according to a preset transformation matrix; for the target sub-region, based on all first coordinate point pairs of the target sub-region, The preset transformation matrix is ​​iteratively calculated based on the corresponding residual to update the preset transformation matrix; when the convergence condition of the iterative calculation is met, for any first coordinate point of each target sub-region, whether there is any second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point is determined according to the updated transformation matrix; for any first coordinate point of each target sub-region, if there is a second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point, it is determined that the first coordinate point is successfully matched; for any first coordinate point of each target sub-region, if there is any second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point, it is determined that the first coordinate point fails to match.

[0130] In an embodiment of the present application, for each first coordinate point, determining the residual between each first coordinate point and the target voxel according to the third Gaussian distribution corresponding to the target voxel corresponding to the first coordinate point according to the preset transformation matrix includes calculating the residual according to the following formula (5):

[0131] (5)

[0132] in, It refers to the residual between the i-th first coordinate point and the corresponding target voxel, refers to the i-th first coordinate point, refers to the third mean of the target voxel corresponding to the i-th first coordinate point, refers to the rotation matrix of the preset transformation matrix, and t refers to the translation vector of the preset transformation matrix.

[0133] In an embodiment of the present application, for the target sub-region, iteratively calculating the preset transformation matrix based on the residuals corresponding to all the first coordinate points of the target sub-region to update the preset transformation matrix includes updating the preset transformation matrix according to the following function expression (6):

[0134] (6)

[0135] in, refers to the updated transformation matrix, It refers to the transposed matrix of the residual corresponding to the first coordinate point of the i-th target sub-region, It refers to the residual corresponding to each first coordinate point of the target sub-region. It refers to the third difference corresponding to the i-th first coordinate point of the target sub-region.

[0136] Through the above technical solution, a combination of local and global point clouds is adopted, and the Gaussian distribution of the calculated point cloud is used in a specific area to judge the dynamic area, so as to filter the point cloud of the dynamic area, and effectively distinguish the dynamic and static areas for both indoor and outdoor scenes. In addition, most of the existing technologies are offline filtering, that is, it is necessary to complete the mapping first, and then use the output point cloud frame file at each moment and the final global map file for filtering. This method is inefficient, and a large amount of intermediate point cloud data needs to be saved for large scenes and long-term mapping scenes, and the resource utilization rate is not high. Compared with the existing technology, the incremental global map and the point cloud frame at the current moment can be obtained in real time, and can be filtered online in real time, which is more suitable for dynamic point cloud filtering in large scenes and long-term mapping scenes, and improves resource utilization. By converting the reference point cloud into a multi-dimensional normal distribution and optimizing the transformation parameters, the normal distribution parameters of the matched second point cloud and the third point cloud are matched best. The current frame and the regional map are matched first and then deleted, so that the static points on the match are fully retained and the dynamic points are deleted. In this way, there is no need to fit the ground, nor does it require the ground to be smooth. It can be used in a wider range of scenarios and in any terrain, and it can reduce the accidental deletion of static points.

[0137] An embodiment of the present application also provides a machine-readable storage medium, on which instructions are stored, and the instructions are used to enable a machine to execute the above-mentioned point cloud filtering method.

[0138] In one embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as follows: Figure 4As shown. The computer device includes a processor A01, a network interface A02, a memory (not shown in the figure) and a database (not shown in the figure) connected through a system bus. Among them, the processor A01 of the computer device is used to provide computing and control capabilities. The memory of the computer device includes an internal memory A03 and a non-volatile storage medium A04. The non-volatile storage medium A04 stores an operating system B01, a computer program B02 and a database (not shown in the figure). The internal memory A03 provides an environment for the operation of the operating system B01 and the computer program B02 in the non-volatile storage medium A04. The database of the computer device is used to store point cloud filtering data. The network interface A02 of the computer device is used to communicate with an external terminal through a network connection. When the computer program B02 is executed by the processor A01, a point cloud filtering method is implemented.

[0139] Those skilled in the art will understand that Figure 4 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0140] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems or computer program products. Therefore, the present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

[0141] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0142] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0143] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0144] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0145] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0146] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0147] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0148] The above are only embodiments of the present application and are not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included within the scope of the claims of the present application.

Claims

1. A point cloud filtering method, characterized in that: The method comprises: Acquire a current frame captured by the robot, and determine a current posture of the robot when capturing the current frame; Determine an incremental global map corresponding to the current frame; Projecting a first point cloud included in the current frame to the incremental global map based on the current pose to obtain a target global map; Extracting a region map with the current position as the center point from the target global map, and dividing the region map into a plurality of sub-regions according to a preset segmentation rule; Determine a point cloud Gaussian distribution corresponding to each sub-region, wherein the point cloud Gaussian distribution includes a first Gaussian distribution of a second point cloud corresponding to each sub-region of the target global map, and a second Gaussian distribution of a third point cloud corresponding to each sub-region of the incremental global map, the first Gaussian distribution includes a first mean and a first variance, and the second Gaussian distribution includes a second mean and a second variance; For each sub-region, determining a mean ratio between a first mean and a second mean corresponding to the sub-region; For each sub-region, determining a variance ratio between a first variance and a second variance corresponding to the sub-region; For each sub-region, when the mean ratio corresponding to the sub-region is not within a first preset range and the variance ratio corresponding to the sub-region is not within a second preset range, determining that the region type of the sub-region is a dynamic region; A sub-region whose region type is a dynamic region among all the sub-regions is determined as a target sub-region, and a second point cloud corresponding to each target sub-region is filtered out to update the incremental global map.

2. The point cloud filtering method according to claim 1, characterized in that: The step of determining the region type of each sub-region according to the point cloud Gaussian distribution further comprises: For each sub-region, when the mean ratio corresponding to the sub-region is within the first preset range or the variance ratio corresponding to the sub-region is within the second preset range, it is determined that the region type of the sub-region is a static region.

3. The point cloud filtering method according to claim 1, characterized in that: The first Gaussian distribution includes a first mean and a first variance, the second Gaussian distribution includes a second mean and a second variance, and the first Gaussian distribution of the second point cloud corresponding to each sub-region of the target global map is calculated according to the following formulas (1) and (2): (1) (2) in, It refers to the first mean of the second point cloud corresponding to each sub-region of the target global map, refers to the first variance of the second point cloud corresponding to each sub-region of the target global map, n refers to the number of first coordinate points included in the second point cloud corresponding to each sub-region of the target global map, refers to the spatial coordinates of the coordinate point pk in the second point cloud corresponding to each sub-area of ​​the target global map; The second Gaussian distribution of the third point cloud corresponding to each sub-region of the incremental global map is calculated according to the following formulas (3) and (4): (3) (4) in, It refers to the second mean of the third point cloud corresponding to each sub-region of the incremental global map, refers to the second variance of the third point cloud corresponding to each sub-region of the incremental global map, m refers to the number of second coordinate points included in the third point cloud corresponding to each sub-region of the incremental global map, It refers to the spatial coordinates of the coordinate point pk in the third point cloud corresponding to each sub-area of ​​the target global map.

4. The point cloud filtering method according to claim 1, characterized in that: The area map is a circular area map, and the radius of the circular area map is a first preset radius. The preset segmentation rule includes a preset segmentation angle and a preset segmentation interval distance. The dividing the area map into a plurality of sub-areas according to the preset segmentation rule includes: Taking the center point of the circular area map as a starting point, dividing the circular area map according to the preset segmentation angle, so as to divide the circular area map into a plurality of sector-shaped areas; Each sector area is divided according to the preset segmentation interval distance, so as to divide the circular area map into a plurality of sub-areas.

5. The point cloud filtering method according to claim 1, characterized in that: The filtering out the second point cloud corresponding to each target sub-region to update the incremental global map includes: For each target sub-region, matching each first coordinate point of the second point cloud corresponding to the target sub-region based on a preset point cloud matching algorithm; For each target sub-region, the first coordinate point in the second point cloud corresponding to the target sub-region that fails to match is deleted, and the first coordinate point in the second point cloud corresponding to the target sub-region that successfully matches is retained in the incremental global map to update the incremental global map.

6. The point cloud filtering method according to claim 5, characterized in that: The matching of each coordinate point of the second point cloud corresponding to each target sub-region based on a preset point cloud matching algorithm comprises: For each target sub-region, dividing the third point cloud corresponding to the target sub-region into a plurality of voxels according to a preset resolution; For each target sub-region, determining a target voxel corresponding to each first coordinate point of the second point cloud corresponding to the target sub-region among the plurality of voxels; determining a third Gaussian distribution corresponding to a fourth point cloud in each voxel; For each first coordinate point, determine the residual between each first coordinate point and the target voxel according to a third Gaussian distribution corresponding to the target voxel corresponding to the first coordinate point according to a preset transformation matrix; For the target sub-region, iteratively calculating the preset transformation matrix based on the residuals corresponding to all the first coordinate points of the target sub-region, so as to update the preset transformation matrix; When the convergence condition of the iterative calculation is met, for any first coordinate point of each target sub-region, determining, according to the updated transformation matrix, whether there is any second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point; For any first coordinate point of each target sub-region, if there is a second coordinate point matching the first coordinate point in the third point cloud corresponding to the target sub-region, determining that the first coordinate point is matched successfully; For any first coordinate point of each target sub-region, if there is any second coordinate point in the third point cloud corresponding to the target sub-region that matches the first coordinate point, it is determined that the first coordinate point fails to match.

7. The point cloud filtering method according to claim 6, characterized in that: The step of determining, for each first coordinate point, the residual between each first coordinate point and the target voxel according to the third Gaussian distribution corresponding to the target voxel corresponding to the first coordinate point according to the preset transformation matrix includes calculating the residual according to the following formula (5): (5) in, It refers to the residual between the i-th first coordinate point and the corresponding target voxel, refers to the i-th first coordinate point, refers to the third mean of the target voxel corresponding to the i-th first coordinate point, refers to the rotation matrix of the preset transformation matrix, and t refers to the translation vector of the preset transformation matrix.

8. The point cloud filtering method according to claim 6, characterized in that: The iterative calculation of the preset transformation matrix based on the residuals corresponding to all the first coordinate points of the target sub-region to update the preset transformation matrix includes updating the preset transformation matrix according to the following function expression (6): (6) in, refers to the updated transformation matrix, refers to the transposed matrix of the residual corresponding to the i-th first coordinate point of the target sub-region, refers to the residual corresponding to each first coordinate point of the target sub-region, It refers to the third difference corresponding to the i-th first coordinate point of the target sub-region.

9. A point cloud filtering device, characterized in that: include: a memory configured to store instructions; A processor is configured to call the instructions from the memory and implement the point cloud filtering method according to any one of claims 1 to 8 when executing the instructions.

10. A machine-readable storage medium, characterized in that: The machine-readable storage medium stores instructions, which are used to enable a machine to execute the point cloud filtering method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Point cloud map construction method and device and computer readable storage medium

    CN113628335A

  • Three-dimensional point cloud map dynamic object filtering method based on Livox laser radar

    CN117409166A