Method, apparatus and device for removing dynamic point clouds from a noise map

By using the principles of depth map conversion and background difference in laser SLAM, combined with adaptive nearest neighbor search, the dynamic point cloud in the noise map was successfully eliminated, which solved the problem that dynamic point clouds could not be effectively removed in the existing technology, and improved the accuracy and quality of point cloud maps.

CN118982480BActive Publication Date: 2025-06-20WUHAN UNIV OF SCI & TECH
View PDF 2 Cites 0 Cited by

Patent Information

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

AI Technical Summary

Technical Problem

The prior art laser SLAM method cannot effectively remove dynamic point clouds, such as pedestrians and vehicles, in the map construction scenario, resulting in point clouds containing dynamic objects in the noise map.

Method used

By obtaining the point cloud data frame, noise map and pose information at the current moment, the first depth map and the second depth map are determined using the preset depth conversion rules, the dynamic point cloud in the current frame is determined based on the background difference principle, and the dynamic point cloud collection is determined in the noise map through adaptive nearest neighbor search, and finally delete it from the noise map to obtain an optimized point cloud map.

Benefits of technology

Effectively eliminate dynamic objects in the noise map, improve the accuracy and quality of the point cloud map, and provide better support for subsequent positioning and navigation tasks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118982480B_ABST
    Figure CN118982480B_ABST
Patent Text Reader

Abstract

The present invention provides a method, device and equipment for removing dynamic point clouds in a noise map. The method includes: obtaining a point cloud data frame, a noise map and pose information at the current moment; based on the current frame, the noise map and the pose information, using a preset depth conversion rule to determine a first depth map and a second depth map; the first depth map corresponds to the current frame, and the second depth map corresponds to the noise map; the sizes and the number of pixels included in the first depth map and the second depth map are the same; based on the first depth map and the second depth map, using the background difference principle to determine at least one first dynamic point cloud in the current frame; based on at least one first dynamic point cloud, using an adaptive nearest neighbor search rule to determine a second dynamic point cloud set in the noise map; deleting the second dynamic point cloud set from the noise map to obtain an optimized point cloud map. By using the method of the present invention, dynamic objects in the noise map can be effectively removed to obtain an optimized point cloud map.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of robot platform mapping, positioning and navigation, and in particular to a method, device, electronic device, non-transitory computer-readable storage medium, and computer program product for removing dynamic point clouds from a noisy map. Background Art

[0002] With the development of autonomous driving technology and robot technology, the Simultaneous Localization and Mapping (SLAM) technology has received more and more extensive attention. Among them, according to the difference in the types of sensors used, SLAM can be divided into two categories: visual SLAM and lidar SLAM. The visual SLAM has high requirements for light and texture and lacks robustness in complex environments; the lidar SLAM has higher robustness and accuracy.

[0003] In the prior art, SLAM mapping algorithms based on 3D lidar (such as Lego-LOAM, LIO-SAM, and FAST-LIO2, etc.) usually build a point cloud map with high accuracy in a static scene.

[0004] However, the existing lidar SLAM methods are all based on the assumption of a static scene or a low-dynamic scene, while there are a large number of dynamic objects in the actual mapping scene, such as pedestrians and vehicles, etc.; therefore, the existing lidar SLAM methods cannot effectively remove the dynamic point clouds (i.e., the point clouds of dynamic objects) in the built point cloud map. Summary of the Invention

[0005] The present invention provides a method, device, electronic device, non-transitory computer-readable storage medium, and computer program product for removing dynamic point clouds from a noisy map to solve the defects in the prior art.

[0006] The present invention provides a method for removing dynamic point clouds from a noisy map, including:

[0007] Obtaining a point cloud data frame, a noisy map, and pose information at the current moment;

[0008] Wherein, the point cloud data frame is composed of point cloud data in the global coordinate system at the current moment, denoted as the current frame; the noisy map is a three-dimensional point cloud map containing dynamic point clouds, which is formed by splicing point cloud data frames before the current moment in the noisy map coordinate system;

[0009] Based on the current frame, the noise map, and the pose information, use a preset depth conversion rule to determine a first depth map and a second depth map; wherein, the first depth map corresponds to the current frame, and the second depth map corresponds to the noise map; the sizes and the number of pixels included in the first depth map and the second depth map are the same;

[0010] Based on the first depth map and the second depth map, use the background difference principle to determine at least one first dynamic point cloud in the current frame;

[0011] Based on the at least one first dynamic point cloud, use an adaptive nearest neighbor search rule to determine a second dynamic point cloud set in the noise map;

[0012] Delete the second dynamic point cloud set from the noise map to obtain an optimized point cloud map.

[0013] The present invention also provides a device for removing dynamic point clouds in a noise map, including:

[0014] A data acquisition module, configured to: acquire a point cloud data frame, a noise map, and pose information at the current moment; wherein, the point cloud data frame is composed of point cloud data in the global coordinate system at the current moment, denoted as the current frame; the noise map is a three-dimensional point cloud map containing dynamic point clouds, formed by splicing point cloud data frames before the current moment in the noise map coordinate system;

[0015] A depth map conversion module, configured to: based on the current frame, the noise map, and the pose information, use a preset depth conversion rule to determine a first depth map and a second depth map; wherein, the first depth map corresponds to the current frame, and the second depth map corresponds to the noise map; the sizes and the number of pixels included in the first depth map and the second depth map are the same;

[0016] A difference and dynamic calculation module, configured to: based on the first depth map and the second depth map, use the background difference principle to determine at least one first dynamic point cloud in the current frame;

[0017] An adaptive search module, configured to: based on the at least one first dynamic point cloud, use an adaptive nearest neighbor search rule to determine a second dynamic point cloud set in the noise map;

[0018] A noise deletion module, configured to: delete the second dynamic point cloud set from the noise map to obtain an optimized point cloud map.

[0019] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the program, the method for removing dynamic point clouds in a noise map as described in any one of the above is implemented.

[0020] The present invention also provides a non-transitory computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the method for removing dynamic point clouds in a noise map as described in any one of the above is implemented.

[0021] The present invention also provides a computer program product, including a computer program. When the computer program is executed by a processor, the method for removing dynamic point clouds in a noise map as described in any one of the above is implemented.

[0022] As described above, the method for removing dynamic point clouds in a noise map according to the present invention performs ground segmentation and height segmentation of point clouds on the current frame and the noise map containing dynamic point clouds; converts the depth information of the point clouds into visually available image information, and uses the background difference method in visual theory to compare the depth images of the current frame and the noise map, filters out the initial dynamic point clouds and calculates the dynamic scores; performs adaptive nearest neighbor search on the noise map according to the dynamic scores to remove the dynamic point clouds therein, so as to finally effectively remove the dynamic objects in the noise map and obtain an optimized point cloud map; and further can provide effective support for subsequent downstream positioning and navigation tasks. Description of the Drawings

[0023] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the drawings in the following description are some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0024] Figure 1 is one of the flowcharts of the method for removing dynamic point clouds in a noise map provided by an embodiment of the present invention;

[0025] Figure 2 is a schematic diagram of a device for performing laser SLAM provided by an embodiment of the present invention;

[0026] Figure 3 is another flowchart of the method for removing dynamic point clouds in a noise map provided by an embodiment of the present invention;

[0027] Figure 4 is yet another flowchart of the method for removing dynamic point clouds in a noise map provided by an embodiment of the present invention;

[0028] Figure 5 It is a schematic diagram of the conversion between a rectangular coordinate system and a spherical coordinate system provided by an embodiment of the present invention;

[0029] Figure 6a It is the first depth map provided by an embodiment of the present invention;

[0030] Figure 6b It is the second depth map provided by an embodiment of the present invention;

[0031] Figure 7a It is a schematic diagram of the point cloud of the current frame provided by an embodiment of the present invention;

[0032] Figure 7b It is a schematic diagram of the ground point cloud provided by an embodiment of the present invention;

[0033] Figure 8a It is a schematic diagram of the noise map provided by an embodiment of the present invention;

[0034] Figure 8b It is a schematic diagram of the height point cloud provided by an embodiment of the present invention;

[0035] Figure 9 It is the fourth schematic diagram of the process of the method for removing dynamic point clouds in the noise map provided by an embodiment of the present invention;

[0036] Figure 10 It is a schematic diagram of the background difference principle provided by an embodiment of the present invention;

[0037] Figure 11 It is a schematic diagram of the structure of the device for removing dynamic point clouds in the noise map provided by an embodiment of the present invention;

[0038] Figure 12 It is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed implementation manners

[0039] To make the objectives, technical solutions, and advantages of the present invention clearer, the technical solutions in the present invention will be clearly and completely described below with reference to the accompanying drawings in the present invention. Obviously, the described embodiments are some, but not all, of the embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments in the present invention without creative efforts shall fall within the protection scope of the present invention.

[0040] To solve the problems of the above-mentioned prior art, the inventors of the present invention have conducted research and proposed the following solution for removing dynamic point clouds in the noise map as described in the embodiments.

[0041] Embodiment:

[0042] The following describes the implementation details of the solution for removing dynamic point clouds from a noise map in conjunction with the accompanying drawings.

[0043] Figure 1 FIG. 4 is a schematic flowchart of a method for removing dynamic point clouds from a noise map provided by an exemplary embodiment of the present invention. This embodiment can be applied to an electronic device (e.g., a processor or a main controller mounted on a mobile robot platform). As Figure 1 shown, the method for removing dynamic point clouds from a noise map includes the following steps:

[0044] S110. Obtain a point cloud data frame, a noise map, and pose information at the current moment;

[0045] Among them, the point cloud data frame is composed of point cloud data in the global coordinate system at the current moment, denoted as the current frame; the noise map is a three-dimensional point cloud map containing dynamic point clouds, which is formed by splicing point cloud data frames before the current moment in the noise map coordinate system.

[0046] S120. Based on the current frame, the noise map, and the pose information, use a preset depth conversion rule to determine a first depth map and a second depth map.

[0047] Among them, the first depth map corresponds to the current frame, and the second depth map corresponds to the noise map; the first depth map and the second depth map have the same size and the same number of pixels included.

[0048] S130. Based on the first depth map and the second depth map, use the background difference principle to determine at least one first dynamic point cloud in the current frame.

[0049] S140. Based on the at least one first dynamic point cloud, use an adaptive nearest neighbor search rule to determine a second dynamic point cloud set in the noise map.

[0050] S150. Delete the second dynamic point cloud set from the noise map to obtain an optimized point cloud map.

[0051] Among them, the pose information is pose data or parameters generated by a device or apparatus performing laser SLAM at the current moment.

[0052] Among them, the present invention does not limit the acquisition method. For example, as an execution entity, an electronic device (e.g., a processor or a main controller mounted on a mobile robot platform) can directly communicate with a device performing laser SLAM to obtain the point cloud data frame, the noise map, and the pose information at the current moment.

[0053] As an optional example, referring to Figure 2, a device or apparatus for performing laser SLAM, which can be a mobile robot platform. The mobile robot platform may include a robot platform chassis, a main controller, a lidar sensor, and an IMU sensor. Among them, the robot platform chassis loads the main controller, the lidar sensor, and the IMU sensor; the main controller is sequentially connected to the robot platform chassis, the lidar sensor, and the IMU sensor in a wired manner.

[0054] It should be noted that the present invention does not limit the models of the main controller, the lidar sensor, and the IMU sensor, which can be determined according to actual needs. For example, the main controller can select Intel NUC8i7 HVK; the lidar sensor can select Velodyne-16 line lidar; the IMU sensor can select MTi-300 IMU.

[0055] The specific implementation manners of the above steps will be described below and will not be elaborated here first.

[0056] As described above, the method for removing dynamic point clouds in the noise map of the present invention performs ground segmentation and height segmentation of the point clouds on the current frame and the noise map containing dynamic point clouds; converts the depth information of the point clouds into image information available for vision, and uses the background difference method in vision theory to compare the depth images of the current frame and the noise map, filters out the initial dynamic point clouds and calculates the dynamic scores; performs adaptive nearest neighbor search on the noise map according to the dynamic scores to remove the dynamic point clouds therein, so as to finally effectively remove the dynamic objects in the noise map and obtain an optimized point cloud map; and further can provide effective support for subsequent downstream positioning and navigation tasks.

[0057] On the basis of the above embodiments, as an alternative embodiment, refer to Figure 3 and Figure 4 , step S120 "Based on the current frame, the noise map, and the pose information, use a preset depth conversion rule to determine the first depth map and the second depth map" includes the following embodiments:

[0058] S1210. Based on the pose information, convert the current frame to the noise map coordinate system to obtain a converted current frame.

[0059] As an alternative example, the following calculation formula can be used to determine the converted current frame;

[0060]

[0061] Among them, represents the converted current frame; represents the pose information; represents the current frame; represents the rotation matrix; Represents a translation vector.

[0062] S1220. Process the current transformed frame based on the Random Sample Consensus algorithm to obtain the ground point cloud.

[0063] Refer to Figure 3 , through step S1220, perform ground segmentation on the current frame scan in the global coordinate system to obtain the ground point cloud.

[0064] As an optional example, the plane model fitting method in the Random Sample Consensus (RANSAC) algorithm can be used to accurately extract the ground point cloud. RANSAC is an iterative method for fitting a model and identifying outliers in data. It randomly samples a subset from the point cloud dataset of the current frame to fit a model, and based on this model, finds the inliers that conform to the model and the outliers that do not conform to the model in the entire dataset. By iterating this process, a model suitable for the dataset is finally obtained.

[0065] Specifically, three points can determine a plane, and the plane formula is as follows:

[0066]

[0067] The distance from each point (x, y, z) in the point cloud dataset of the current frame to the plane can be obtained ;

[0068]

[0069] Among them, (A, B, C) represents the normal vector of the plane, and D represents the constant term.

[0070] If ( represents the distance threshold), then it is considered that the point is on the plane. The threshold is set according to the standard deviation of the distances from all points to the plane during each iteration.

[0071] If at this time, the point is determined to be a non-ground point. Specifically,

[0072]

[0073]

[0074] Among them, represents the total number of point clouds in the point cloud dataset of the current frame; represents the average distance from all point clouds in the point cloud dataset of the current frame to the plane; represents the distance from the i-th point cloud to the plane.

[0075] Iterations The value of will affect the speed and effect of ground fitting, which is a more important indicator. The appropriate value can be selected through the following formula :

[0076]

[0077] in, The number of points chosen for each iteration; is the ratio of abnormal points in the point cloud; is the probability of selecting at least one normal point.

[0078] The above method can be used to extract ground point cloud more accurately. Optionally, the point cloud of the current frame is as follows: Figure 7a As shown, the ground point cloud is Figure 7b shown.

[0079] S1230 : Process the noise map based on a straight-through filtering algorithm to obtain a height point cloud.

[0080] Reference Figure 3 , perform height segmentation on the noisy map containing the dynamic target to obtain the height point cloud.

[0081] Specifically, the basic formula of the direct-pass filter can be expressed as:

[0082]

[0083] in, A point representing the filtered point cloud data of the noise map; Represents the i-th point in the point cloud data of the noise map; Indicates the axis of filtering (here is the z-axis, i.e., height); Indicates the lower limit of the filtering range; Indicates the upper limit of the filtering range.

[0084] The filter axis and height range are set, and a filtering operation is performed on the point cloud within a specific range of the z-axis, so as to screen out the height point cloud.

[0085] Wherein, optionally, the noise map is as follows Figure 8a As shown, the height point cloud is Figure 8b shown.

[0086] S1240: Process the ground point cloud using the preset depth conversion rule to obtain the first depth map. S1250: Process the height point cloud using the preset depth conversion rule to obtain the second depth map.

[0087] With reference to Figure 3 , the three-dimensional point cloud is converted into a depth map, that is, the ground point cloud is respectively converted into a first depth map, and the height point cloud is converted into a second depth map.

[0088] Specifically, the following calculation formula can be used to convert the coordinates of each point cloud in the ground point cloud and the height point cloud from the rectangular coordinate system to the spherical coordinate system; the ground point cloud in the spherical coordinate system is obtained , and the height point cloud in the spherical coordinate system .

[0089]

[0090] Among them, with reference to Figure 5 , is the straight-line distance from the point cloud to the lidar, is the elevation angle, is the azimuth angle.

[0091] Based on the ground point cloud in the spherical coordinate system , and the height point cloud in the spherical coordinate system , the following calculation formula is used to determine the first depth map (as shown in Figure 6a ) and the second depth map (as shown in Figure 6b ).

[0092]

[0093] Among them, represents the distance set included in the pixel point in the first depth map; represents the distance set included in the pixel point in the second depth map; represents the pixel point located at the coordinate (i, j) in the first depth map; represents the pixel point located at the coordinate (i, j) in the second depth map.

[0094] Based on the above embodiments, as an alternative embodiment, with reference to Figure 9 , step S130 "Based on the first depth map and the second depth map, using the background difference principle, determine at least one first dynamic point cloud in the current frame" may include the following embodiments:

[0095] S1310. Use the first depth map and the second depth map to calculate the pixel difference between each pair of position-matched pixels.

[0096] As an alternative example, with reference to Figure 10, based on the principle of background difference method (that is, comparing each pixel of the current frame image with the background frame image to obtain the pixel difference to get the target), compare each pixel of the first depth map and the second depth image at each moment and perform matrix subtraction to obtain the pixel difference between the first depth map and the second depth map , the calculation formula is as follows:

[0097]

[0098] Wherein, represents the pixel point at the coordinate (i, j) in the first depth map; represents the pixel point at the coordinate (i, j) in the second depth map.

[0099] S1320. Based on the pixel difference of each group of pixel pairs, determine the corresponding primary dynamic point cloud in the current frame.

[0100] Optionally, refer to Figure 3 , judge whether the background difference value is greater than the threshold. Specifically, if the pixel difference is greater than the preset pixel difference threshold, it is considered that the point cloud at the corresponding pixel position in the current frame belongs to the dynamic point cloud; thus, it can be determined as the primary dynamic point cloud.

[0101] S1330. Based on the pixel difference corresponding to each primary dynamic point cloud, calculate the dynamic score corresponding to each primary dynamic point cloud.

[0102] As an optional example, refer to Figure 3 , perform dynamic score calculation. Specifically, for each dynamic point cloud detected by the background difference method, use the mean square error (MSE) to calculate the dynamic score for its pixel difference in the depth image:

[0103]

[0104] Wherein, represents the depth value difference of the th pixel of the first depth map and the second depth map; represents the total number of pixels; represents the dynamic score. Wherein, The larger it is, the greater the difference between the first depth map and the second depth map, and the higher the corresponding dynamic point cloud score. Assign the obtained dynamic score to each dynamic point cloud to represent its dynamic degree.

[0105] S1340. Select at least one primary dynamic point cloud with a dynamic score greater than the preset score threshold as the at least one first dynamic point cloud.

[0106] Based on the above embodiments, as an alternative embodiment, step S140, "Based on the at least one first dynamic point cloud, using an adaptive nearest neighbor search rule, determine a second dynamic point cloud set in the noise map", may include the following implementation:

[0107] Referring to Figure 3 , use adaptive nearest neighbor search to determine dynamic targets in the noise map.

[0108] Specifically, 1) Based on the adaptive nearest neighbor search rule and the dynamic scores corresponding to the at least one first dynamic point cloud, determine the search root nodes, leaf nodes, and each node between the root nodes and leaf nodes in the noise map that match each of the first dynamic point clouds.

[0109] Here, determining the search root nodes, leaf nodes, and each node between the root nodes and leaf nodes that match each of the first dynamic point clouds can be understood as determining the search range and depth according to the dynamic scores.

[0110] 2) Based on the search root nodes, leaf nodes, and each node between the root nodes and leaf nodes that match each of the first dynamic point clouds, in the direction of backtracking from the leaf nodes to the root nodes, starting from the leaf nodes, calculate the Euclidean distance between each node and each of the first dynamic point clouds (denoted as target points) in turn.

[0111] Among them, as an alternative example, the following calculation formula can be used to calculate the Euclidean distance between each node and each of the first dynamic point clouds in turn;

[0112]

[0113] Among them, represents the X-axis coordinate of the current node (denoted as the current point) participating in the calculation among the nodes in the noise map coordinate system; represents the X-axis coordinate of the first dynamic point cloud in the noise map coordinate system; represents the Y-axis coordinate of the current node participating in the calculation among the nodes in the noise map coordinate system; represents the Y-axis coordinate of the first dynamic point cloud in the noise map coordinate system; represents the Z-axis coordinate of the current node participating in the calculation among the nodes in the noise map coordinate system; represents the Z-axis coordinate of the first dynamic point cloud in the noise map coordinate system.

[0114] 3) Use the Euclidean distance between each node and each of the first dynamic point clouds to determine the nearest neighbor points that match each of the first dynamic point clouds as the second dynamic point cloud.

[0115] 4) Put the second dynamic point clouds that match each of the first dynamic point clouds into an ordered set to obtain the second dynamic point cloud set.

[0116] It should be noted that during the backtracking process, if the distance between the target point and the current point is less than the current nearest distance, then update the nearest neighbor point and the nearest distance; use the updated nearest neighbor point and the nearest distance for judgment in the next judgment, and iterate continuously until the search ends.

[0117] As described above, the method for removing dynamic point clouds in a noise map according to the present invention performs ground segmentation and height segmentation of point clouds on the current frame and the noise map containing dynamic point clouds; converts the depth information of the point clouds into image information available for vision, and uses the background difference method in vision theory to compare the depth images of the current frame and the noise map, filters out the initial dynamic point clouds and calculates the dynamic scores; performs adaptive nearest neighbor search on the noise map according to the dynamic scores to remove the dynamic point clouds therein, so as to finally effectively remove the dynamic objects in the noise map and obtain an optimized point cloud map; and further can provide effective support for subsequent downstream positioning and navigation tasks.

[0118] Next, a device for removing dynamic point clouds in a noise map provided by the present invention will be described. The device for removing dynamic point clouds in a noise map described below can be mutually corresponding and referred to with the method for removing dynamic point clouds in a noise map described above.

[0119] Figure 11 It is a schematic structural diagram of a device for removing dynamic point clouds in a noise map provided by an exemplary embodiment of the present invention. As Figure 11 shown, the device for removing dynamic point clouds in a noise map includes:

[0120] The data acquisition module 101 is configured to: acquire a point cloud data frame, a noise map, and pose information at the current moment; wherein, the point cloud data frame is composed of point cloud data in the global coordinate system at the current moment, denoted as the current frame; the noise map is a three-dimensional point cloud map containing dynamic point clouds, formed by splicing point cloud data frames before the current moment in the noise map coordinate system; the depth map conversion module 102 is configured to: based on the current frame, the noise map, and the pose information, use a preset depth conversion rule to determine a first depth map and a second depth map; wherein, the first depth map corresponds to the current frame, and the second depth map corresponds to the noise map; the sizes and the number of pixels included in the first depth map and the second depth map are the same; the difference and dynamic calculation module 103 is configured to: based on the first depth map and the second depth map, use the background difference principle to determine at least one first dynamic point cloud in the current frame; the adaptive search module 104 is configured to: based on the at least one first dynamic point cloud, use the adaptive nearest neighbor search rule to determine a second dynamic point cloud set in the noise map; the noise deletion module 105 is configured to: delete the second dynamic point cloud set from the noise map to obtain an optimized point cloud map.

[0121] Figure 12 An example of the physical structure diagram of an electronic device is shown in Figure 12As shown in the figure, the electronic device may include: a processor 1210, a communications interface 1220, a memory 1230, and a communication bus 1240. Among them, the processor 1210, the communications interface 1220, and the memory 1230 complete communication with each other through the communication bus 1240. The processor 1210 may call the logical instructions in the memory 1230 to execute a method for removing dynamic point clouds in a noise map. The method includes: obtaining a point cloud data frame, a noise map, and pose information at the current moment; wherein, the point cloud data frame is composed of point cloud data in the global coordinate system at the current moment, denoted as the current frame; the noise map is a three-dimensional point cloud map containing dynamic point clouds, formed by splicing the point cloud data frames before the current moment in the noise map coordinate system; based on the current frame, the noise map, and the pose information, using a preset depth conversion rule, determining a first depth map and a second depth map; wherein, the first depth map corresponds to the current frame, and the second depth map corresponds to the noise map; the sizes and the number of pixels included in the first depth map and the second depth map are the same; based on the first depth map and the second depth map, using the background difference principle, determining at least one first dynamic point cloud in the current frame; based on the at least one first dynamic point cloud, using an adaptive nearest neighbor search rule, determining a second dynamic point cloud set in the noise map; deleting the second dynamic point cloud set from the noise map to obtain an optimized point cloud map.

[0122] In addition, when the logical instructions in the above-mentioned memory 1230 are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or a part of this technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in various embodiments of the present invention. The foregoing storage medium includes: various media such as USB flash drives, mobile hard disks, read-only memories (ROM, Read-Only Memory), random access memories (RAM, Random Access Memory), magnetic disks, or optical discs that can store program codes.

[0123] On the other hand, the present invention also provides a computer program product, which includes a computer program. The computer program can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the method for removing dynamic point clouds in the noise map provided by the above-mentioned various methods. The method includes: obtaining a point cloud data frame, a noise map, and pose information at the current moment; wherein, the point cloud data frame is composed of point cloud data in the global coordinate system at the current moment, denoted as the current frame; the noise map is a three-dimensional point cloud map containing dynamic point clouds, which is formed by stitching point cloud data frames before the current moment in the noise map coordinate system; based on the current frame, the noise map, and the pose information, using a preset depth conversion rule, determining a first depth map and a second depth map; wherein, the first depth map corresponds to the current frame, and the second depth map corresponds to the noise map; the first depth map and the second depth map have the same size and the same number of pixels included; based on the first depth map and the second depth map, using the background difference principle, determining at least one first dynamic point cloud in the current frame; based on the at least one first dynamic point cloud, using an adaptive nearest neighbor search rule, determining a second dynamic point cloud set in the noise map; deleting the second dynamic point cloud set from the noise map to obtain an optimized point cloud map.

[0124] On another aspect, the present invention also provides a non-transitory computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, it realizes the method for removing dynamic point clouds in the noise map provided by the above-mentioned various methods. The method includes: obtaining a point cloud data frame, a noise map, and pose information at the current moment; wherein, the point cloud data frame is composed of point cloud data in the global coordinate system at the current moment, denoted as the current frame; the noise map is a three-dimensional point cloud map containing dynamic point clouds, which is formed by stitching point cloud data frames before the current moment in the noise map coordinate system; based on the current frame, the noise map, and the pose information, using a preset depth conversion rule, determining a first depth map and a second depth map; wherein, the first depth map corresponds to the current frame, and the second depth map corresponds to the noise map; the first depth map and the second depth map have the same size and the same number of pixels included; based on the first depth map and the second depth map, using the background difference principle, determining at least one first dynamic point cloud in the current frame; based on the at least one first dynamic point cloud, using an adaptive nearest neighbor search rule, determining a second dynamic point cloud set in the noise map; deleting the second dynamic point cloud set from the noise map to obtain an optimized point cloud map.

[0125] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. Those of ordinary skill in the art can understand and implement it without creative efforts.

[0126] Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, it can also be implemented by hardware. Based on such an understanding, the essence of the above technical solution, or the part that contributes to the prior art, can be embodied in the form of a software product. The computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.

[0127] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit them. Although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments or equivalently replace some of the technical features. These modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for removing dynamic point clouds from a noisy map, characterized in that: include: Get the point cloud data frame, noise map and pose information at the current moment; The point cloud data frame is composed of point cloud data in the global coordinate system at the current moment, which is recorded as the current frame; the noise map is a three-dimensional point cloud map containing dynamic point clouds, which is formed by splicing point cloud data frames before the current moment in the noise map coordinate system; Based on the current frame, the noise map and the pose information, a first depth map and a second depth map are determined using a preset depth conversion rule; comprising: Based on the posture information, the current frame is converted into a noise map coordinate system to obtain a converted current frame; Based on a random sampling consensus algorithm, the converted current frame is processed to obtain a ground point cloud; Based on a straight-through filtering algorithm, the noise map is processed to obtain a height point cloud; Processing the ground point cloud using the preset depth conversion rule to obtain the first depth map; Processing the height point cloud using the preset depth conversion rule to obtain the second depth map; The first depth map corresponds to the current frame, and the second depth map corresponds to the noise map; the first depth map and the second depth map have the same size and the same number of pixels; Based on the first depth map and the second depth map, determining at least one first dynamic point cloud in the current frame by using a background difference principle; Based on the at least one first dynamic point cloud, determining a second set of dynamic point clouds in the noise map using an adaptive nearest neighbor search rule; The second dynamic point cloud set is deleted from the noise map to obtain an optimized point cloud map.

2. The method according to claim 1, characterized in that Based on the first depth map and the second depth map, at least one first dynamic point cloud in the current frame is determined by using a background difference principle, including: Calculate the pixel difference between each group of pixel pairs with matching positions using the first depth map and the second depth map; Based on the pixel difference of each group of pixel pairs, determining a corresponding preliminary selected dynamic point cloud in the current frame; Calculate a dynamic score corresponding to each preliminary selected dynamic point cloud based on the pixel difference corresponding to each preliminary selected dynamic point cloud; At least one preliminarily selected dynamic point cloud having a dynamic score greater than a preset score threshold is selected as the at least one first dynamic point cloud.

3. The method according to claim 1, characterized in that: Based on the at least one first dynamic point cloud, determining a second dynamic point cloud set in the noise map using an adaptive nearest neighbor search rule comprises: Determine, in the noise map, a search root node, a leaf node, and nodes between the root node and the leaf node that match each of the first dynamic point clouds based on the adaptive nearest neighbor search rule and the dynamic score corresponding to the at least one first dynamic point cloud; Based on the search root node, leaf node and nodes between the root node and the leaf node that match each of the first dynamic point clouds, in the direction of backtracking from the leaf node to the root node, starting from the leaf node, sequentially calculate the Euclidean distance between each node and each of the first dynamic point clouds; Using the Euclidean distance between each node and each of the first dynamic point clouds, determine the nearest neighbor point matching each of the first dynamic point clouds as the second dynamic point cloud; The second dynamic point clouds matching each of the first dynamic point clouds are put into an ordered set to obtain a second dynamic point cloud set.

4. A device for removing dynamic point clouds from a noise map, characterized in that: include: The data acquisition module is configured to: acquire a point cloud data frame, a noise map, and position information at the current moment; wherein the point cloud data frame is composed of point cloud data in the global coordinate system at the current moment, recorded as the current frame; the noise map is a three-dimensional point cloud map containing a dynamic point cloud, which is formed by splicing the point cloud data frames before the current moment in the noise map coordinate system; A depth map conversion module is configured to: determine a first depth map and a second depth map based on the current frame, the noise map and the pose information using a preset depth conversion rule; wherein the first depth map corresponds to the current frame, and the second depth map corresponds to the noise map; and the first depth map and the second depth map have the same size and the same number of pixels; The difference and dynamic calculation module is configured to: determine at least one first dynamic point cloud in the current frame based on the first depth map and the second depth map by using a background difference principle; An adaptive search module is configured to: determine a second set of dynamic point clouds in the noise map using an adaptive nearest neighbor search rule based on the at least one first dynamic point cloud; A noise removal module, configured to: delete the second dynamic point cloud set from the noise map to obtain an optimized point cloud map; The device for removing dynamic point clouds in a noise map executes the method for removing dynamic point clouds in a noise map as claimed in any one of claims 1 to 3.

5. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the method for removing dynamic point clouds in a noise map as described in any one of claims 1 to 3 is implemented.

6. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method for removing dynamic point clouds from a noise map as claimed in any one of claims 1 to 3 is implemented.

7. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the method for removing dynamic point clouds from a noise map as claimed in any one of claims 1 to 3 is implemented.

Citation Information

Patent Citations

  • Dynamic point removing method for autonomous mobile platform and system and equipment thereof

    CN115272730A

  • Semantic dynamic modeling method based on point cloud data processing

    CN117115263A