Point cloud denoising method and device suitable for closed environment
By performing sector division and clustering on the front and back frames of point cloud data collected by the radar, noise point cloud clusters are identified and deleted, solving the problem of noise influence on point cloud data in closed environments and achieving high-precision and fast denoising effects.
Patent Information
- Application Number
- CN202411814702.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-10
- Publication Date
- 2025-10-10
- Estimated Expiration
- 2044-12-10
AI Technical Summary
In a closed environment, radar point cloud data is affected by noise from subtle objects such as dust and smoke, and existing denoising methods have low detection accuracy or take a long time.
By performing sector division and clustering processing on the front and back two frames of point cloud data collected by the radar, the properties of the point cloud clusters are calculated, and the noise point cloud clusters are identified and deleted using features such as the number of points, distance, area and volume.
The accuracy of point cloud denoising is improved, the denoising time is reduced, and the validity of the data is improved. It is suitable for radar point cloud noise detection in closed environments.
Smart Images

Figure CN119809969B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of data processing, and in particular to a point cloud denoising method and device suitable for a closed environment, an electronic device, and a storage medium. BACKGROUND
[0002] In a closed environment, such as a mine environment, there are fine objects such as dust and smoke. When collecting data by radar, the noise caused by these fine objects such as dust and smoke affects the quality and effectiveness of the collected data.
[0003] In the prior art, there are mainly two methods for removing noise data caused by noise in radar point cloud. One method is to project the point cloud into a depth map, and then determine whether there is a noise point according to the centroid position, so as to remove the point cloud noise. The other method is to upsample and downsample the point cloud to obtain shape features, and then remove the point cloud noise. The first method has the problem of low detection accuracy, and the second method has the problem of long time consumption. SUMMARY
[0004] The present application aims to at least partially solve one of the technical problems in the related art.
[0005] To this end, a first object of the present application is to provide a point cloud denoising method suitable for a closed environment, so as to improve the accuracy of point cloud denoising and reduce the time length of point cloud denoising.
[0006] A second object of the present application is to provide a point cloud denoising device suitable for a closed environment.
[0007] A third object of the present application is to provide an electronic device.
[0008] A fourth object of the present application is to provide a computer-readable storage medium.
[0009] A fifth object of the present application is to provide a computer program product.
[0010] To achieve the above objects, a first aspect of the present application provides a point cloud denoising method suitable for a closed environment, comprising:
[0011] acquiring first frame point cloud data and second frame point cloud data collected by a radar successively;
[0012] dividing a point cloud center into a plurality of sectors according to a preset degree for the first frame point cloud data and the second frame point cloud data; and performing clustering processing on point cloud data in each sector of the plurality of sectors to obtain a plurality of point cloud clusters of the first frame point cloud data and a plurality of point cloud clusters of the second frame point cloud data;
[0013] Calculating the point cloud attributes of each point cloud cluster based on the number of points in each point cloud cluster;
[0014] Based on the point cloud clusters and point cloud attributes corresponding to the spatial positions in the second frame of point cloud data and the first frame of point cloud data, it is determined whether each of the point cloud clusters is noise, and the point cloud clusters determined to be noise are processed.
[0015] In some implementations, the step of dividing the point cloud center of the first frame of point cloud data and the second frame of point cloud data into a plurality of sectors according to a preset degree includes:
[0016] For the first frame of point cloud data, the center of the point cloud is divided into multiple sectors with an angle of 10 degrees horizontally and 5 degrees vertically;
[0017] For the second frame of point cloud data, the center of the point cloud is divided into multiple sectors with an angle of 10 degrees horizontally and 5 degrees vertically.
[0018] In some implementations, calculating the point cloud attributes of each point cloud cluster based on the number of points in each point cloud cluster includes:
[0019] When the number of points in the point cloud cluster is 2, the distance between two points in the point cloud cluster and the average distance of all points are calculated;
[0020] When the number of points in the point cloud cluster is 3, the area of the triangle formed by the three points of the point cloud cluster and the average distance of all points are calculated;
[0021] When the number of points in the point cloud cluster is greater than 3, the unit volume of the three-dimensional region composed of all points in the point cloud cluster and the average distance of all points are calculated.
[0022] In some implementations, calculating the unit volume of a three-dimensional region composed of all points of the point cloud cluster includes:
[0023] The volume of the three-dimensional convex hull composed of all points in the point cloud cluster is obtained by the Quickhull algorithm;
[0024] The volume of the three-dimensional convex hull is divided by the number of points in the point cloud cluster to obtain the unit volume of the point cloud cluster.
[0025] In some implementations, determining whether each point cloud cluster is noise based on the point cloud clusters and point cloud attributes corresponding to the spatial positions in the second frame of point cloud data and the first frame of point cloud data, and processing the point cloud clusters determined to be noise, includes:
[0026] Performing the following discrimination processing on each of the point cloud clusters in the second frame of point cloud data until all point cloud clusters in the second frame of point cloud data are processed;
[0027] Obtaining the number of points of the current point cloud cluster in the second frame of point cloud data, and referring the point cloud cluster in the first frame of point cloud data corresponding to the spatial position of the current point cloud cluster to be the first point cloud cluster;
[0028] If the number of points in the first point cloud cluster is 0, the current point cloud cluster is determined to be noise and a point cloud cluster deletion operation is performed;
[0029] If the number of points in the current point cloud cluster is 1 and the number of points in the first point cloud cluster is greater than 3, both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed;
[0030] If the number of points in the current point cloud cluster is 2 and the number of points in the first point cloud cluster is greater than 3, both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed;
[0031] If the number of points in the current point cloud cluster is 2, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed;
[0032] If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is greater than 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed;
[0033] If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is 3, the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, and the absolute value of the difference between the area of a triangle of the first point cloud cluster and the area of a triangle of the current point cloud cluster is greater than a second threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed;
[0034] If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is less than 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed;
[0035] If the number of points in the current point cloud cluster is greater than 3, the number of points in the first point cloud cluster is greater than 3, and the absolute value of the difference between the unit volume of the first point cloud cluster and the unit volume of the current point cloud cluster is greater than a third threshold, the current point cloud cluster is determined to be noise and a point cloud cluster deletion operation is performed;
[0036] If the number of points in the current point cloud cluster is greater than 3, the number of points in the first point cloud cluster is less than or equal to 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, the current point cloud cluster is determined to be noise and a point cloud cluster deletion operation is performed.
[0037] In some implementations, before dividing the point cloud center into a plurality of sectors according to a preset degree, the method includes:
[0038] Points outside the radar operating range in the first frame of point cloud data and the second frame of point cloud data are removed.
[0039] To achieve the above objectives, the second embodiment of the present application proposes a point cloud denoising device suitable for a closed environment, comprising:
[0040] A data acquisition module is used to acquire the first frame of point cloud data and the second frame of point cloud data collected by the radar;
[0041] a data processing module, configured to divide the point cloud centers of the first frame of point cloud data and the second frame of point cloud data into a plurality of sectors according to a preset degree; and perform clustering processing on the point cloud data within each of the plurality of sectors to obtain a plurality of point cloud clusters of the first frame of point cloud data and a plurality of point cloud clusters of the second frame of point cloud data;
[0042] A feature acquisition module, configured to calculate the point cloud attributes of each point cloud cluster based on the number of points in each point cloud cluster;
[0043] The noise discrimination module is used to determine whether each point cloud cluster is noise based on the point cloud clusters and point cloud attributes corresponding to the spatial positions in the second frame point cloud data and the first frame point cloud data, and to process the point cloud clusters determined to be noise.
[0044] In some implementations, the data processing module, when dividing the point cloud center of the first frame point cloud data and the second frame point cloud data into a plurality of sectors according to a preset degree, is configured to:
[0045] For the first frame of point cloud data, the center of the point cloud is divided into multiple sectors with an angle of 10 degrees horizontally and 5 degrees vertically;
[0046] For the second frame of point cloud data, the center of the point cloud is divided into multiple sectors with an angle of 10 degrees horizontally and 5 degrees vertically.
[0047] In some implementations, when calculating the point cloud attributes of each point cloud cluster based on the number of points in each point cloud cluster, the feature acquisition module is configured to:
[0048] When the point number of the point cloud cluster is 2, calculate the distance between the two points of the point cloud cluster and the average distance of all points;
[0049] When the point number of the point cloud cluster is 3, calculate the area of the triangle formed by the three points of the point cloud cluster and the average distance of all points;
[0050] When the point number of the point cloud cluster is greater than 3, calculate the unit volume of the solid region formed by all points of the point cloud cluster and the average distance of all points.
[0051] In some implementations, when calculating the unit volume of the solid region formed by all points of the point cloud cluster, the feature acquisition module is configured to:
[0052] acquire the volume of the three-dimensional convex hull formed by all points of the point cloud cluster through a Quickhull algorithm;
[0053] divide the volume of the three-dimensional convex hull by the point number of the point cloud cluster to obtain the unit volume of the point cloud cluster.
[0054] In some implementations, the noise discrimination module is specifically configured to:
[0055] perform the following discrimination processing on the point cloud clusters in the second frame of point cloud data one by one until all point cloud clusters in the second frame of point cloud data are processed;
[0056] acquire the point number of the current point cloud cluster in the second frame of point cloud data, and refer to the point cloud cluster in the first frame of point cloud data corresponding to the spatial position of the current point cloud cluster as a first point cloud cluster;
[0057] if the point number of the first point cloud cluster is 0, determine the current point cloud cluster as noise and perform a point cloud cluster deletion operation;
[0058] if the point number of the current point cloud cluster is 1 and the point number of the first point cloud cluster is greater than 3, determine the current point cloud cluster and the first point cloud cluster as noise and perform a point cloud cluster deletion operation;
[0059] if the point number of the current point cloud cluster is 2 and the point number of the first point cloud cluster is greater than 3, determine the current point cloud cluster and the first point cloud cluster as noise and perform a point cloud cluster deletion operation;
[0060] if the point number of the current point cloud cluster is 2 and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold value, determine the current point cloud cluster and the first point cloud cluster as noise and perform a point cloud cluster deletion operation;
[0061] If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is greater than 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed;
[0062] If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is 3, the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, and the absolute value of the difference between the area of a triangle of the first point cloud cluster and the area of a triangle of the current point cloud cluster is greater than a second threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed;
[0063] If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is less than 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed;
[0064] If the number of points in the current point cloud cluster is greater than 3, the number of points in the first point cloud cluster is greater than 3, and the absolute value of the difference between the unit volume of the first point cloud cluster and the unit volume of the current point cloud cluster is greater than a third threshold, the current point cloud cluster is determined to be noise and a point cloud cluster deletion operation is performed;
[0065] If the number of points in the current point cloud cluster is greater than 3, the number of points in the first point cloud cluster is less than or equal to 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, the current point cloud cluster is determined to be noise and a point cloud cluster deletion operation is performed.
[0066] In some implementations, before dividing the point cloud center into a plurality of sectors according to a preset degree, the data processing module is further configured to:
[0067] Points outside the radar operating range in the first frame of point cloud data and the second frame of point cloud data are removed.
[0068] To achieve the above-mentioned purpose, the third aspect embodiment of the present application proposes an electronic device, comprising: a processor, and a memory communicatively connected to the processor; the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory to implement the method described in the first aspect.
[0069] To achieve the above-mentioned purpose, the fourth embodiment of the present application proposes a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, they are used to implement the method described in the first aspect.
[0070] To achieve the above-mentioned purpose, the fifth embodiment of the present application proposes a computer program product, including a computer program, which implements the method described in the first aspect when executed by a processor.
[0071] The point cloud denoising method, device, electronic device and storage medium provided in this application are suitable for closed environments. By determining the relative position of the point cloud cluster points and the point cloud attributes of the two frames of point cloud data collected by the radar, the noise points in the point cloud data are identified and deleted. Compared with the existing technology, the accuracy of point cloud denoising is improved and the time of point cloud denoising is reduced. It can be used for noise detection of radar point clouds in closed environments, such as noise caused by fine objects such as dust and smoke, to effectively improve the validity of the data.
[0072] Additional aspects and advantages of the present application will be given in part in the description below, and in part will become apparent from the description below, or will be learned through practice of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0073] The above and / or additional aspects and advantages of the present application will become apparent and easily understood from the following description of the embodiments in conjunction with the accompanying drawings, in which:
[0074] Figure 1 A flowchart of a point cloud denoising method applicable to a closed environment provided in an embodiment of the present application;
[0075] Figure 2 A block diagram of a point cloud denoising device suitable for a closed environment provided in an embodiment of the present application;
[0076] Figure 3 A block diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0077] The following describes in detail embodiments of the present application, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to be used to explain the present application, and should not be construed as limiting the present application.
[0078] The following describes a point cloud denoising method, apparatus, and device applicable to a closed environment according to an embodiment of the present application with reference to the accompanying drawings.
[0079] Figure 1A flowchart of a point cloud denoising method suitable for closed environments provided in an embodiment of the present application.
[0080] It should be noted that the executor of the point cloud denoising method for closed environments of the embodiment of the present application is the point cloud denoising device for closed environments of the embodiment of the present application. The point cloud denoising device for closed environments can be configured in an electronic device so that the electronic device can perform the point cloud denoising function for closed environments.
[0081] like Figure 1 As shown, the point cloud denoising method applicable to closed environments includes the following steps:
[0082] Step S101: Acquire a first frame of point cloud data and a second frame of point cloud data collected successively by a radar.
[0083] It can be understood that the point cloud denoising method of the present application identifies noise points in the point cloud data based on the changes in the collected point cloud data of different frames. Therefore, it is necessary to obtain two frames of point cloud data collected before and after the radar.
[0084] In step S102, for the first frame point cloud data and the second frame point cloud data, the point cloud center is divided into multiple sectors according to a preset degree; and the point cloud data in each of the multiple sectors is clustered to obtain multiple point cloud clusters of the first frame point cloud data and multiple point cloud clusters of the second frame point cloud data.
[0085] In some embodiments, before dividing the point cloud center into a plurality of sectors according to a preset degree, the method includes removing points outside the radar working range in the first frame of point cloud data and the second frame of point cloud data.
[0086] For example, the radar is installed on the equipment, and the distance between the radar and the target to be detected is greater than 0.5. All data points collected within 0.5m from the radar in the collected point cloud data are deleted because these points are outside the working range of the radar and are definitely noise.
[0087] As an implementation method, for the first frame point cloud data and the second frame point cloud data, the point cloud center is divided into multiple sectors according to a preset degree; including: for the first frame point cloud data, the point cloud center is divided into multiple sectors according to a size of 10 degrees horizontally and 5 degrees vertically; for the second frame point cloud data, the point cloud center is divided into multiple sectors according to a size of 10 degrees horizontally and 5 degrees vertically.
[0088] It should be noted that in order to ensure that the number of point cloud clusters is within an appropriate range, the resolution of sector segmentation can be adjusted according to the specific radar.
[0089] Exemplarily, the Kmeans clustering algorithm is selected for clustering processing.
[0090] It can be understood that the first frame point cloud data and the second frame point cloud data are processed in the same way, each frame point cloud data is divided into several sectors, and then the point cloud data falling in the sectors are clustered into several point cloud clusters.
[0091] Step S103 : calculating the point cloud attributes of each point cloud cluster based on the number of points in each point cloud cluster.
[0092] As an implementation method, the point cloud attributes of each point cloud cluster are calculated based on the number of points in each point cloud cluster, including: when the number of points in the point cloud cluster is 2, the distance between two points in the point cloud cluster and the average distance of all points are calculated; when the number of points in the point cloud cluster is 3, the area of the triangle formed by the three points of the point cloud cluster and the average distance of all points are calculated; when the number of points in the point cloud cluster is greater than 3, the unit volume of the three-dimensional area formed by all points in the point cloud cluster and the average distance of all points are calculated.
[0093] As an implementation method, a method for calculating the unit volume of a three-dimensional area composed of all points of the point cloud cluster includes: obtaining the volume of the three-dimensional convex hull composed of all points of the point cloud cluster through the Quickhull algorithm; dividing the volume of the three-dimensional convex hull by the number of points in the point cloud cluster to obtain the unit volume of the point cloud cluster.
[0094] For example, when calculating point cloud attributes, each point cloud cluster is processed as follows:
[0095] (1) If the point cloud cluster has only one point, no processing is performed;
[0096] (2) If the point cloud cluster has only two points, calculate the distance between the two points and the average distance.
[0097] (3) If the point cloud cluster has only three points, calculate the area and average distance of the triangle formed by these three points.
[0098] (4) If the point cloud cluster has more than three points, first calculate the volume of the three-dimensional region composed of these points. You can use the points in the point cloud to construct a three-dimensional convex hull, and then divide it by the number of points in the point cloud in the region, and record it as the unit volume of the point cloud cluster.
[0099] Step S104 : Based on the point cloud clusters and point cloud attributes corresponding to the spatial positions in the second frame point cloud data and the first frame point cloud data, it is determined whether each point cloud cluster is noise, and the point cloud cluster determined to be noise is processed.
[0100] As an implementation, a method for determining whether each point cloud cluster is noise based on point cloud clusters and point cloud attributes corresponding to spatial positions in the second frame of point cloud data and the first frame of point cloud data, and processing the point cloud clusters determined to be noise, includes:
[0101] The point cloud clusters in the second frame of point cloud data are subjected to the following discrimination processing one by one until all the point cloud clusters in the second frame of point cloud data are processed;
[0102] Obtain the number of points of the current point cloud cluster in the second frame of point cloud data, and refer to the point cloud cluster corresponding to the spatial position of the current point cloud cluster in the first frame of point cloud data as the first point cloud cluster;
[0103] If the number of points in the first point cloud cluster is 0, the current point cloud cluster is determined to be noise and the point cloud cluster is deleted;
[0104] If the number of points in the current point cloud cluster is 1 and the number of points in the first point cloud cluster is greater than 3, both the current point cloud cluster and the first point cloud cluster are determined to be noise and the point cloud cluster is deleted;
[0105] If the number of points in the current point cloud cluster is 2, and the number of points in the first point cloud cluster is greater than 3, both the current point cloud cluster and the first point cloud cluster are determined to be noise and the point cloud cluster is deleted;
[0106] If the number of points in the current point cloud cluster is 2, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than the first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and the point cloud cluster is deleted;
[0107] If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is greater than 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than the first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and the point cloud cluster is deleted;
[0108] If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is 3, the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, and the absolute value of the difference between the area of the triangle of the first point cloud cluster and the area of the triangle of the current point cloud cluster is greater than a second threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and the point cloud cluster deletion operation is performed;
[0109] If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is less than 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than the first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and the point cloud cluster is deleted;
[0110] If the number of points in the current point cloud cluster is greater than 3, the number of points in the first point cloud cluster is greater than 3, and the absolute value of the difference between the unit volume of the first point cloud cluster and the unit volume of the current point cloud cluster is greater than a third threshold, the current point cloud cluster is determined to be noise and the point cloud cluster is deleted;
[0111] If the number of points in the current point cloud cluster is greater than 3, the number of points in the first point cloud cluster is less than or equal to 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than the first threshold, the current point cloud cluster is determined to be noise and the point cloud cluster is deleted.
[0112] Exemplarily, noise discrimination is performed on each point cloud cluster in the second frame of point cloud data one by one, and processing is performed, and the discrimination is as follows:
[0113] For the current point cloud cluster currently being identified, find the point cloud cluster at the corresponding position in the first frame of point cloud data (hereinafter referred to as the first frame) based on the spatial position relationship. If the corresponding point cloud cluster cannot be found, the current point cloud cluster is considered to be noise, and the current point cloud cluster is removed, and the identification of the next point cloud cluster is started directly. Otherwise, continue to the next step;
[0114] If the number of points in the current point cloud cluster is 1 and the number of points in the corresponding point cloud cluster of the first frame exceeds 3, it means that the current point cloud cluster and the point cloud cluster corresponding to the first frame are both noise and should be deleted; if the number of points in the point cloud cluster corresponding to the first frame does not exceed two, it will be retained.
[0115] If the number of points in the current point cloud cluster is 2 and the number of points in the corresponding point cloud cluster in the first frame exceeds three, both are deleted; otherwise, if the average distance between the two is significantly different, both are deleted.
[0116] If the number of points in the current point cloud cluster is 3, and the number of points in the corresponding first frame's point cloud cluster is greater than three, the change in average distance is calculated. If the change is large, all are deleted. If the number of points in the corresponding point cloud cluster is also three, the difference between the triangle area and the average distance is calculated. If the difference is large, all are deleted. If the number of points in the corresponding first frame's point cloud cluster is less than three, the change in average distance is calculated. If the change is large, all are deleted.
[0117] If the number of points in the current point cloud cluster is greater than 3 and the number of points in the point cloud cluster corresponding to the first frame is greater than 3, the difference in unit volume is compared. If the unit volume changes significantly, the current point cloud cluster is deleted. If the number of points in the point cloud cluster corresponding to the first frame is less than or equal to three, the average distance is compared. If the average distance changes significantly, the current point cloud cluster is deleted.
[0118] The point cloud denoising method suitable for closed environments in the embodiment of the present application identifies and deletes noise points in the point cloud data by determining the relative position point cloud cluster points and point cloud attributes of the two frames of point cloud data collected by the radar. Compared with the existing technology, the accuracy of point cloud denoising is improved and the time of point cloud denoising is reduced. It can be used for noise detection of radar point clouds in closed environments, such as noise caused by fine objects such as dust and smoke, to effectively improve the validity of the data.
[0119] In order to implement the above embodiment, the present application also proposes a point cloud denoising device suitable for closed environments. Figure 2 This is a block diagram of a point cloud denoising device suitable for a closed environment provided in an embodiment of the present application. Figure 2 As shown, the point cloud denoising device suitable for a closed environment may include: a data acquisition module 201 , a data processing module 202 , a feature acquisition module 203 and a noise discrimination module 204 .
[0120] The data acquisition module 201 is used to acquire the first frame of point cloud data and the second frame of point cloud data collected by the radar;
[0121] The data processing module 202 is configured to divide the center of the point cloud into a plurality of sectors according to a preset degree for the first frame of point cloud data and the second frame of point cloud data; and perform clustering processing on the point cloud data within each of the plurality of sectors to obtain a plurality of point cloud clusters of the first frame of point cloud data and a plurality of point cloud clusters of the second frame of point cloud data;
[0122] The feature acquisition module 203 is used to calculate the point cloud attributes of each point cloud cluster based on the number of points in each point cloud cluster;
[0123] The noise discrimination module 204 is used to determine whether each point cloud cluster is noise based on the point cloud clusters and point cloud attributes corresponding to the spatial positions in the second frame point cloud data and the first frame point cloud data, and process the point cloud clusters determined to be noise.
[0124] Furthermore, in a possible implementation of the embodiment of the present application, the data processing module 202 divides the point cloud center into a plurality of sectors according to a preset degree for the first frame of point cloud data and the second frame of point cloud data;
[0125] For the first frame of point cloud data, the center of the point cloud is divided into multiple sectors with an angle of 10 degrees horizontally and 5 degrees vertically;
[0126] For the second frame of point cloud data, the point cloud center is divided into multiple sectors with a size of 10 degrees horizontally and 5 degrees vertically.
[0127] Furthermore, in a possible implementation of the embodiment of the present application, the feature acquisition module 203 is configured to:
[0128] When the number of points in a point cloud cluster is 2, calculate the distance between two points in the point cloud cluster and the average distance of all points;
[0129] When the number of points in the point cloud cluster is 3, calculate the area of the triangle formed by the three points of the point cloud cluster and the average distance of all points;
[0130] When the number of points in a point cloud cluster is greater than 3, the unit volume of the three-dimensional area composed of all points in the point cloud cluster and the average distance of all points are calculated.
[0131] Furthermore, in a possible implementation of the embodiment of the present application, the feature acquisition module 203 is configured to:
[0132] The volume of the three-dimensional convex hull composed of all points in the point cloud cluster is obtained by the Quickhull algorithm;
[0133] The volume of the three-dimensional convex hull is divided by the number of points in the point cloud cluster to obtain the unit volume of the point cloud cluster.
[0134] Furthermore, in a possible implementation of the embodiment of the present application, the noise determination module 204 is specifically configured to:
[0135] The point cloud clusters in the second frame of point cloud data are subjected to the following discrimination processing one by one until all the point cloud clusters in the second frame of point cloud data are processed;
[0136] Obtain the number of points of the current point cloud cluster in the second frame of point cloud data, and refer to the point cloud cluster corresponding to the spatial position of the current point cloud cluster in the first frame of point cloud data as the first point cloud cluster;
[0137] If the number of points in the first point cloud cluster is 0, the current point cloud cluster is determined to be noise and the point cloud cluster is deleted;
[0138] If the number of points in the current point cloud cluster is 1 and the number of points in the first point cloud cluster is greater than 3, both the current point cloud cluster and the first point cloud cluster are determined to be noise and the point cloud cluster is deleted;
[0139] If the number of points in the current point cloud cluster is 2, and the number of points in the first point cloud cluster is greater than 3, both the current point cloud cluster and the first point cloud cluster are determined to be noise and the point cloud cluster is deleted;
[0140] If the number of points in the current point cloud cluster is 2, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than the first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and the point cloud cluster is deleted;
[0141] If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is greater than 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than the first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and the point cloud cluster is deleted;
[0142] If the number of points of the current point cloud cluster is 3, the number of points of the first point cloud cluster is 3, the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than the first threshold, and the absolute value of the difference between the area of the triangle of the first point cloud cluster and the area of the triangle of the current point cloud cluster is greater than the second threshold, the current point cloud cluster and the first point cloud cluster are both determined as noise and a point cloud cluster deletion operation is performed.
[0143] If the number of points of the current point cloud cluster is 3, the number of points of the first point cloud cluster is less than 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than the first threshold, the current point cloud cluster and the first point cloud cluster are both determined as noise and a point cloud cluster deletion operation is performed.
[0144] If the number of points of the current point cloud cluster is greater than 3, the number of points of the first point cloud cluster is greater than 3, and the absolute value of the difference between the unit volume of the first point cloud cluster and the unit volume of the current point cloud cluster is greater than the third threshold, the current point cloud cluster is determined as noise and a point cloud cluster deletion operation is performed.
[0145] If the number of points of the current point cloud cluster is greater than 3, the number of points of the first point cloud cluster is less than or equal to 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than the first threshold, the current point cloud cluster is determined as noise and a point cloud cluster deletion operation is performed.
[0146] Further, in a possible implementation manner of the embodiment of the present application, before the data processing module 202 divides the point cloud center into a plurality of sectors according to the preset degree, the data processing module 202 is further used for:
[0147] Removing the points in the first frame of point cloud data and the second frame of point cloud data corresponding to the range outside the radar working range.
[0148] It should be noted that the foregoing explanation and description of the point cloud denoising method for a closed environment also apply to the point cloud denoising device for a closed environment, which will not be described here.
[0149] In order to realize the above-mentioned embodiments, the present application further provides an electronic device. Please refer to Figure 3 , Figure 3 is a block diagram of the electronic device provided by the embodiment of the present application. As shown in Figure 3 , the electronic device 300 comprises a processor 301 and a memory 302 connected with the processor 301; the memory 302 stores computer execution instructions; the processor 301 executes the computer execution instructions stored in the memory to realize the method provided by the foregoing embodiments.
[0150] In order to implement the above embodiments, the present application also proposes a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, they are used to implement the methods provided by the above embodiments.
[0151] In order to implement the above embodiments, the present application also proposes a computer program product, including a computer program, which implements the methods provided by the above embodiments when executed by a processor.
[0152] The collection, storage, use, processing, transmission, provision and disclosure of user personal information involved in this application are in compliance with relevant laws and regulations and do not violate public order and good morals.
[0153] In the descriptions of the foregoing embodiments, the reference terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" mean that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. In this specification, the schematic expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, unless they are mutually inconsistent.
[0154] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of the technical features being referred to. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of such features. Throughout the description of this application, "plurality" means at least two, for example, two, three, etc., unless otherwise specifically defined.
[0155] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code comprising one or more executable instructions for implementing the steps of a custom logical function or process, and the scope of the preferred embodiments of the present application includes alternative implementations in which functions may be performed out of the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present application belong.
[0156] The logic and / or steps represented in the flowcharts or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing the logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (e.g., a computer-based system, a system including a processor, or other system that can fetch and execute instructions from an instruction execution system, apparatus, or device). For purposes of this specification, a "computer-readable medium" can be any device that can contain, store, communicate, propagate, or transport a program for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include the following: an electrical connection with one or more wires (electronic devices), a portable computer disk cartridge (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and programmable read-only memory (EPROM or flash memory), fiber optic devices, and a portable compact disc read-only memory (CDROM). Furthermore, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program may be obtained electronically, for example, by optically scanning the paper or other medium and then editing, interpreting or processing it in another suitable manner if necessary, and then storing it in a computer memory.
[0157] It should be understood that various parts of the present application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented using hardware, as in another embodiment, any one of the following technologies known in the art or a combination thereof can be used to implement: a discrete logic circuit having a logic gate circuit for implementing a logic function on a data signal, an application-specific integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.
[0158] Those skilled in the art will understand that all or part of the steps in the method of the above embodiment can be completed by instructing related hardware through a program, and the program can be stored in a computer-readable storage medium. When the program is executed, it includes one or a combination of the steps of the method embodiment.
[0159] In addition, the functional units in the various embodiments of the present application may be integrated into a processing module, or each unit may exist physically separately, or two or more units may be integrated into a module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium.
[0160] The storage medium mentioned above may be a read-only memory, a magnetic disk, or an optical disk, etc. Although the embodiments of the present application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present application. Persons skilled in the art may make changes, modifications, substitutions, and variations to the above embodiments within the scope of the present application.
Claims
1. A point cloud denoising method suitable for closed environments, characterized in that: The following steps are involved: Obtain the first frame of point cloud data and the second frame of point cloud data collected by the radar; For the first frame of point cloud data and the second frame of point cloud data, dividing the point cloud center into a plurality of sectors according to a preset degree; and performing clustering processing on the point cloud data in each of the plurality of sectors to obtain a plurality of point cloud clusters of the first frame of point cloud data and a plurality of point cloud clusters of the second frame of point cloud data; For each point cloud cluster, the point cloud attributes of each point cloud cluster are calculated; including: when the number of points in the point cloud cluster is 2, the distance between two points in the point cloud cluster and the average distance of all points are calculated; when the number of points in the point cloud cluster is 3, the area of a triangle formed by the three points in the point cloud cluster and the average distance of all points are calculated; when the number of points in the point cloud cluster is greater than 3, the unit volume of a three-dimensional area formed by all points in the point cloud cluster and the average distance of all points are calculated; Based on the point cloud clusters and point cloud attributes corresponding to the spatial positions in the second frame of point cloud data and the first frame of point cloud data, it is determined whether each of the point cloud clusters is noise, and the point cloud clusters determined to be noise are processed.
2. The method according to claim 1, characterized in that The method of dividing the point cloud center into a plurality of sectors according to a preset degree for the first frame point cloud data and the second frame point cloud data includes: For the first frame of point cloud data, the center of the point cloud is divided into multiple sectors with an angle of 10 degrees horizontally and 5 degrees vertically; For the second frame of point cloud data, the center of the point cloud is divided into multiple sectors with an angle of 10 degrees horizontally and 5 degrees vertically.
3. The method according to claim 1, characterized in that Calculating the unit volume of the three-dimensional region composed of all points of the point cloud cluster includes: The volume of the three-dimensional convex hull composed of all points in the point cloud cluster is obtained by the Quickhull algorithm; The volume of the three-dimensional convex hull is divided by the number of points in the point cloud cluster to obtain the unit volume of the point cloud cluster.
4. The method according to claim 1, wherein The method further comprises: determining whether each point cloud cluster is noise based on the point cloud clusters and point cloud attributes corresponding to the spatial positions in the second frame point cloud data and the first frame point cloud data, and processing the point cloud clusters determined to be noise; Performing the following discrimination processing on each of the point cloud clusters in the second frame of point cloud data until all point cloud clusters in the second frame of point cloud data are processed; Obtaining the number of points of the current point cloud cluster in the second frame of point cloud data, and referring the point cloud cluster in the first frame of point cloud data corresponding to the spatial position of the current point cloud cluster to be the first point cloud cluster; If the number of points in the first point cloud cluster is 0, the current point cloud cluster is determined to be noise and a point cloud cluster deletion operation is performed; If the number of points in the current point cloud cluster is 1 and the number of points in the first point cloud cluster is greater than 3, both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed; If the number of points in the current point cloud cluster is 2 and the number of points in the first point cloud cluster is greater than 3, both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed; If the number of points in the current point cloud cluster is 2, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed; If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is greater than 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed; If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is 3, the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, and the absolute value of the difference between the area of a triangle of the first point cloud cluster and the area of a triangle of the current point cloud cluster is greater than a second threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed; If the number of points in the current point cloud cluster is 3, the number of points in the first point cloud cluster is less than 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, then both the current point cloud cluster and the first point cloud cluster are determined to be noise and a point cloud cluster deletion operation is performed; If the number of points in the current point cloud cluster is greater than 3, the number of points in the first point cloud cluster is greater than 3, and the absolute value of the difference between the unit volume of the first point cloud cluster and the unit volume of the current point cloud cluster is greater than a third threshold, the current point cloud cluster is determined to be noise and a point cloud cluster deletion operation is performed; If the number of points in the current point cloud cluster is greater than 3, the number of points in the first point cloud cluster is less than or equal to 3, and the absolute value of the difference between the average distance of the first point cloud cluster and the average distance of the current point cloud cluster is greater than a first threshold, the current point cloud cluster is determined to be noise and a point cloud cluster deletion operation is performed.
5. The method according to claim 1, wherein Before dividing the point cloud center into a plurality of sectors according to a preset degree, the method includes: Points outside the radar operating range in the first frame of point cloud data and the second frame of point cloud data are removed.
6. A point cloud denoising device suitable for closed environments, characterized in that: include: A data acquisition module is used to acquire the first frame of point cloud data and the second frame of point cloud data collected by the radar; a data processing module, configured to divide the point cloud centers of the first frame of point cloud data and the second frame of point cloud data into a plurality of sectors according to a preset degree; and perform clustering processing on the point cloud data within each of the plurality of sectors to obtain a plurality of point cloud clusters of the first frame of point cloud data and a plurality of point cloud clusters of the second frame of point cloud data; A feature acquisition module is configured to calculate the point cloud attributes of each point cloud cluster based on the number of points in each point cloud cluster, including: when the number of points in the point cloud cluster is 2, calculating the distance between two points in the point cloud cluster and the average distance of all points; when the number of points in the point cloud cluster is 3, calculating the area of a triangle formed by the three points in the point cloud cluster and the average distance of all points; when the number of points in the point cloud cluster is greater than 3, calculating the unit volume of a three-dimensional region formed by all points in the point cloud cluster and the average distance of all points; The noise discrimination module is used to determine whether each point cloud cluster is noise based on the point cloud clusters and point cloud attributes corresponding to the spatial positions in the second frame point cloud data and the first frame point cloud data, and to process the point cloud clusters determined to be noise.
7. An electronic device, characterized in that: include: a processor, and a memory communicatively connected to the processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory to implement the method according to any one of claims 1 to 5.
8. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer-executable instructions, which are used to implement the method according to any one of claims 1 to 5 when executed by a processor.
9. A computer program product, characterized in that The invention comprises a computer program, which implements the method according to any one of claims 1 to 5 when executed by a processor.
Citation Information
Patent Citations
Denoising method and device for point cloud data and readable storage medium
CN112819700A