A Denoising Method, Device, Electronic Device and Storage Medium for Ordered Point Clouds
By calculating the angle values formed by adjacent points and zero points in the ordered point cloud data collected by the laser scanning device, and judging tail noise based on the characteristic threshold range, efficient denoising of point cloud data is achieved, and the problem of poor denoising effect in the prior art is solved.
Patent Information
- Application Number
- CN202210449234.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-24
- Publication Date
- 2025-06-27
- Estimated Expiration
- 2042-04-24
AI Technical Summary
Existing point cloud denoising methods cannot effectively eliminate tail noise, resulting in poor denoising effect and may lose important details in complex scanning scenarios.
By reading adjacent points in the ordered point cloud data collected by the laser scanning device, calculate the angle value corresponding to the zero point in the triangle formed by the point and the zero point as the characteristic value, and judge whether it is a tail noise based on the characteristic threshold range, and perform denoising processing.
Accurately eliminates tailing noise, improves the denoising effect of point cloud data, and avoids the loss of important details.
Smart Images

Figure CN114820367B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of scanning data processing, and particularly to a method, apparatus, electronic device, and storage medium for denoising ordered point clouds. Background Art
[0002] Laser scanning devices can obtain high-precision physical space environment information and have inherent advantages in environmental perception. Therefore, they are widely used in fields such as automotive autonomous driving, positioning and navigation, spatial mapping, and security and anti-theft. Usually, laser scanning devices form point cloud data by collecting reflected light beams when scanning target obstacles. However, in real-world scanning, it is inevitable that there will be trailing noise points in the obtained point cloud data. Currently, general point cloud denoising methods use statistical filtering methods. The principle is to perform statistical analysis on the neighborhood of each point. Based on the distance distribution characteristics of a point to all neighboring points, some outlier points that do not meet the requirements are filtered out. In this way, not only can trailing noise points not be removed, but also because trailing noise points are included in the statistics during filtering, the accuracy of filtering is poor. For point cloud data in complex scanning scenarios, important detail information may also be lost. In summary, it can be seen that existing point cloud denoising methods have the problem that trailing noise points cannot be eliminated, resulting in poor denoising effects. Summary of the Invention
[0003] This application provides a method, apparatus, electronic device, and storage medium for denoising ordered point clouds, which can improve the denoising effect of point cloud data by accurately eliminating trailing noise points.
[0004] In a first aspect, an embodiment of this application provides a method for denoising ordered point clouds, which is applied to a laser scanning device. The ordered point cloud data collected by the laser scanning device includes multiple rows and multiple columns of points arranged in scanning order. The method includes:
[0005] Read adjacent first and second points from the ordered point cloud data. The first and second points are in the same row and the column number of the second point is greater than that of the first point, or the first and second points are in the same column and the row number of the second point is greater than that of the first point. At least one of the first and second points is an unread point;
[0006] Obtain the eigenvalue corresponding to the second point. The eigenvalue is the angular value of the angle corresponding to the zero point in the triangle formed by the first point, the second point, and the zero point of the ordered point cloud data. The zero point is the viewing point of the laser scanning device;
[0007] Obtain the corresponding eigenvalue threshold range. The eigenvalue threshold range is determined according to the column numbers of the first point and the second point, or the row numbers of the first point and the second point;
[0008] Determine whether the eigenvalue corresponding to the second point is within the eigenvalue threshold range; if not, delete the second point from the ordered point cloud data and go to the step of reading adjacent first and second points from the ordered point cloud data; if so, directly go to the step of reading adjacent first and second points from the ordered point cloud data;
[0009] Loop through the above steps until there are no unread points in the ordered point cloud data, obtaining the first ordered point cloud data.
[0010] In one embodiment, obtaining the eigenvalue threshold range corresponding to the eigenvalue includes:
[0011] Obtain a preset basic experience threshold, the column number of the first point, and the column number of the second point, and calculate the eigenvalue threshold range according to the basic experience threshold, the column number of the first point, and the column number of the second point;
[0012] The calculation formula for the eigenvalue threshold range is:
[0013] Eigenvalue threshold range =
[0014] [(Column number of the second point - Column number of the first point) × Basic experience threshold, π - (Column number of the second point - Column number of the first point) × Basic experience threshold].
[0015] In one embodiment, obtaining the eigenvalue threshold range corresponding to the eigenvalue includes:
[0016] Obtain a preset basic experience threshold, the row number of the first point, and the row number of the second point, and calculate the eigenvalue threshold range according to the basic experience threshold, the row number of the first point, and the row number of the second point;
[0017] The calculation formula for the eigenvalue threshold range is:
[0018] Eigenvalue threshold range =
[0019] [(Row number of the second point - Row number of the first point) × Basic experience threshold, π - (Row number of the second point - Row number of the first point) × Basic experience threshold].
[0020] In one embodiment, obtaining the eigenvalue corresponding to the second point includes:
[0021] Obtain the coordinate values of the first point and the second point;
[0022] According to the coordinate values of the first point and the second point, obtain the first vector and the second vector formed by the zero point of the ordered point cloud data and the first point and the second point respectively;
[0023] According to the first vector and the second vector, calculate the angle value of the angle corresponding to the zero point in the triangle formed by the first point, the second point, and the zero point of the ordered point cloud data.
[0024] In one embodiment, obtaining a preset basic experience threshold includes:
[0025] Obtaining device information of a laser scanning device;
[0026] Selecting the experience threshold corresponding to the device information from a preset set of experience thresholds, and setting the experience threshold corresponding to the device information as the basic experience threshold.
[0027] In one embodiment, the method further includes:
[0028] Performing denoising processing on the first ordered point cloud data to obtain second ordered point cloud data.
[0029] In one embodiment, performing denoising processing on the first ordered point cloud data includes:
[0030] Performing denoising processing on the first ordered point cloud data through statistical filtering.
[0031] In a second aspect, an embodiment of the present application provides an apparatus for denoising ordered point clouds, which is applied to a laser scanning device. The ordered point cloud data collected by the laser scanning device includes points arranged in multiple rows and columns in a scanning order. The apparatus includes:
[0032] A data reading module, configured to read adjacent first and second points from the ordered point cloud data, where the first and second points are in the same row and the column number of the second point is greater than that of the first point, or the first and second points are in the same column and the row number of the second point is greater than that of the first point, and at least one of the first and second points is an unread point;
[0033] An eigenvalue obtaining module, configured to obtain an eigenvalue corresponding to the second point, where the eigenvalue is the angle value of the angle corresponding to the zero point in the triangle formed by the first point, the second point, and the zero point of the ordered point cloud data, and the zero point is the viewing point of the laser scanning device;
[0034] A characteristic threshold range obtaining module, configured to obtain a characteristic threshold range corresponding to the eigenvalue, where the characteristic threshold range is determined according to the column numbers of the first point and the second point, or the row numbers of the first point and the second point;
[0035] A judgment module, configured to judge whether the eigenvalue corresponding to the second point is within the characteristic threshold range; if not, delete the second point from the ordered point cloud data, and go to the step of reading adjacent first and second points from the ordered point cloud data; if so, directly go to the step of reading adjacent first and second points from the ordered point cloud data;
[0036] A first denoising module, configured to repeatedly execute the above steps until there are no unread points in the ordered point cloud data, to obtain first ordered point cloud data.
[0037] In a third aspect, an embodiment of the present application provides an electronic device, including a memory and a processor. A computer program is stored in the memory. When the computer program is executed by the processor, the processor is caused to execute the steps of the denoising method for the ordered point cloud according to any one of the above embodiments.
[0038] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the denoising method for the ordered point cloud according to any one of the above embodiments are implemented.
[0039] In summary, compared with the prior art, the beneficial effects brought by the technical solution provided by the present application at least include:
[0040] A denoising method for an ordered point cloud provided by the present application is applied to a laser scanning device. The ordered point cloud data collected by the laser scanning device includes points arranged in multiple rows and multiple columns in the scanning order. The method includes: reading adjacent first and second points from the ordered point cloud data, where the first and second points are in the same row and the column number of the second point is greater than that of the first point, or the first and second points are in the same column and the row number of the second point is greater than that of the first point, and at least one of the first and second points is an unread point; obtaining a feature value corresponding to the second point, where the feature value is the angular value of the angle corresponding to the zero point in the triangle formed by the first point, the second point, and the zero point of the ordered point cloud data, and the zero point is the viewing point of the laser scanning device; obtaining a feature threshold range corresponding to the feature value, where the feature threshold range is determined according to the column numbers of the first point and the second point, or the row numbers of the first point and the second point; determining whether the feature value corresponding to the second point is within the feature threshold range; if not, deleting the second point from the ordered point cloud data and turning to the step of reading adjacent first and second points from the ordered point cloud data; if so, directly turning to the step of reading adjacent first and second points from the ordered point cloud data; and repeatedly executing the above steps until there are no unread points in the ordered point cloud data, obtaining first ordered point cloud data, where the first ordered point cloud data is the ordered point cloud data with trailing noise points eliminated. The above method uses the included angle formed by two adjacent points read and the zero point of the ordered point cloud data as the feature value used when judging trailing noise points, and the feature threshold range is determined according to the column numbers or row numbers of the two adjacent points respectively. Since in the actual scanning process, there are inevitably empty points in the ordered point cloud data collected by the laser scanning device, and there may be an indefinite number of empty points between the adjacent points read. If judged according to a fixed feature threshold range, an accurate judgment result cannot be obtained. By determining the feature threshold range according to the column numbers or row numbers of the two adjacent points respectively and judging whether the angle value is within the feature threshold range to determine whether the second point among the two adjacent points is a trailing noise point, the influence of empty points can be excluded, so as to more accurately determine and eliminate the trailing noise points in the ordered point cloud data. Description of the Drawings
[0041] Figure 1 It is a flowchart of a denoising method for ordered point clouds provided by an exemplary embodiment of the present application.
[0042] Figure 2 It is a flowchart of a feature threshold range acquisition step provided by an exemplary embodiment of the present application.
[0043] Figure 3 It is a flowchart of an angle value acquisition step provided by an exemplary embodiment of the present application.
[0044] Figure 4 It is a flowchart of a denoising method for ordered point clouds provided by another exemplary embodiment of the present application.
[0045] Figure 5 It is a structural diagram of a denoising device for ordered point clouds provided by an exemplary embodiment of the present application.
[0046] Figure 6 It is a structural diagram of a denoising device for ordered point clouds provided by another exemplary embodiment of the present application. Detailed Description of the Embodiments
[0047] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
[0048] Please refer to Figure 1 , an exemplary embodiment of the present application provides a denoising method for ordered point clouds. This method is applied to a laser scanning device. Taking the laser scanning device as the execution subject for illustration, the method specifically includes the following steps:
[0049] Step S1, read adjacent first and second points from the ordered point cloud data, where at least one of the first and second points is an unread point.
[0050] Among them, the ordered point cloud data collected by the laser scanning device includes points arranged in multiple rows and columns in the scanning order, such as points arranged in m rows × n columns in the scanning order, where both m and n are integers greater than one; the first and second points are in the same row and the column number of the second point is greater than the column number of the first point, or the first and second points are in the same column and the row number of the second point is greater than the row number of the first point.
[0051] In the specific implementation process, the two adjacent points read include the first point and the second point located in the same row or the same column, and the empty points in the ordered point cloud data cannot be read. The device can scan the ordered point cloud data row by row or column by column to read two adjacent points from the ordered point cloud data. For example, the (i - 1)-th point and the i-th point are read from the a-th column of the ordered point cloud data, where i is an integer greater than 1 and less than or equal to m, and a is an integer greater than 0 and less than or equal to n. Specifically, when reading two adjacent points from the ordered point cloud data row by row, the two adjacent points read are in the same row, and the column number of the first point among the two adjacent points is less than that of the second point; when reading two adjacent points from the ordered point cloud data column by column, the two adjacent points read are in the same column, and the row number of the first point among the two adjacent points is less than that of the second point; where the row number and column number of a certain point refer to the serial number of the row and the serial number of the column where the point is located.
[0052] Step S2: Obtain the eigenvalue corresponding to the second point. The eigenvalue is the angular value of the angle corresponding to the zero point in the triangle formed by the first point, the second point, and the zero point of the ordered point cloud data.
[0053] Among them, the zero point is the view point of the laser scanning device, and the eigenvalue can be the angular value of the angle corresponding to the zero point in the triangle formed by the zero point of the ordered point cloud data, the i-th point, and the (i - 1)-th point.
[0054] Specifically, the device can obtain the above angular value by calculating the coordinate values of two adjacent points.
[0055] Step S3: Obtain the characteristic threshold range corresponding to the eigenvalue. The characteristic threshold range is determined according to the column numbers of the first point and the second point, or the row numbers of the first point and the second point.
[0056] Among them, the characteristic threshold range is the value range of the angular value corresponding to non-tail noise points; since in the actual scanning process, there are inevitably empty points in the ordered point cloud data collected by the laser scanning device, and there may be an indefinite number of empty points between the adjacent points read. If judged according to a fixed threshold range, it is impossible to accurately judge. And the above characteristic threshold range is determined according to the column numbers or row numbers of two adjacent points respectively, taking into account the possibility that two adjacent points may be separated by several rows or columns. Therefore, the influence of empty points can be excluded to form a more accurate judgment standard.
[0057] Step S4: Judge whether the eigenvalue corresponding to the second point is within the characteristic threshold range; if not, delete the second point from the ordered point cloud data and go back to the step of reading the adjacent first point and second point from the ordered point cloud data; if so, directly go back to the step of reading the adjacent first point and second point from the ordered point cloud data.
[0058] Specifically, it is determined whether the angle value is within the characteristic threshold range. If not, the second point with a larger column number or row number among the two adjacent points is determined as a trailing noise point, and this trailing noise point is deleted, then go to step S1; if so, it is determined that the second point is not a trailing noise point, and this second point is retained, and directly go to step S1. However, in actual implementation, there may also be a situation where the angle value is zero. This situation indicates that the first point coincides with the second point, or the second point coincides with the zero point. At this time, the second point is a valid point with a value recorded by the scanning device, and it also needs to be deleted. Although the second point is not a trailing noise point at this time, and zero is not within the characteristic threshold range either, so in addition to screening out trailing noise points, this method can also eliminate valid points with a value.
[0059] For example: it is determined whether the above-mentioned angle value corresponding to the i-th point is within the characteristic threshold range; if not, the i-th point is deleted; if so, the i-th point is retained in the ordered point cloud data.
[0060] In step S4, after performing the deletion or retention operation on the second point, go to step S1, and read two adjacent points from each row or each column in the ordered point cloud data again. The two adjacent points read again may include one or two unread points. For example: when the second point is not a trailing noise point, one way is to read the second point and its next point as adjacent points. At this time, the two adjacent points read again only include one unread point; another way is to skip the already read second point and read the two adjacent points (the third point and the fourth point) behind the second point. At this time, both of the two adjacent points read again are unread points.
[0061] Step S5, loop and execute the above steps until there are no unread points in the ordered point cloud data, and the first ordered point cloud data is obtained.
[0062] Specifically, during the process of removing trailing noise from the ordered point cloud data, loop and execute the above steps S1 to S4 until all the points in the ordered point cloud data have been read, so as to screen out all the trailing noise points in the ordered point cloud data and obtain the first ordered point cloud data. For example: for the (i - 1)-th point and the i-th point read from the a-th column of the ordered point cloud data, a can be looped from 1 to n, and i can be looped from 2 to m according to steps S1 to S4, and the first ordered point cloud data is obtained. The first ordered point cloud data is the ordered point cloud data from which all trailing noise points have been screened out.
[0063] A denoising method for ordered point clouds provided in the above embodiments is applied to a laser scanning device. The ordered point cloud data collected by the laser scanning device includes points arranged in multiple rows and columns in the scanning order. The method includes: reading adjacent first and second points from the ordered point cloud data, where at least one of the first and second points is an unread point; obtaining a characteristic value corresponding to the second point, where the characteristic value is the angular value of the angle corresponding to the zero point in the triangle formed by the first point, the second point, and the zero point of the ordered point cloud data; obtaining a characteristic threshold range corresponding to the characteristic value, where the characteristic threshold range is determined according to the column numbers of the first point and the second point, or the row numbers of the first point and the second point; determining whether the characteristic value corresponding to the second point is within the characteristic threshold range; if not, deleting the second point from the ordered point cloud data and returning to the step of reading adjacent first and second points from the ordered point cloud data; if so, directly returning to the step of reading adjacent first and second points from the ordered point cloud data; repeating the above steps until there are no unread points in the ordered point cloud data, obtaining the first ordered point cloud data. Among them, the first ordered point cloud data is the ordered point cloud data with trailing noise points eliminated. The above method uses the included angle formed by two adjacent read points and the zero point of the ordered point cloud data as the characteristic value used when judging trailing noise points, and the characteristic threshold range is determined according to the column numbers or row numbers of the two adjacent points respectively. Since in the actual scanning process, there are inevitably empty points in the ordered point cloud data collected by the laser scanning device, and there may be an indefinite number of empty points between the adjacent read points. If judged according to a fixed characteristic threshold range, an accurate judgment result cannot be obtained. However, by determining the characteristic threshold range according to the column numbers or row numbers of the two adjacent points respectively, and judging whether the angular value is within the characteristic threshold range to determine whether the second point among the two adjacent points is a trailing noise point, the influence of empty points can be excluded, so as to more accurately determine and eliminate the trailing noise points in the ordered point cloud data.
[0064] In some embodiments, please refer to Figure 2 , step S3 specifically includes the following steps:
[0065] Step S31, obtain a preset basic experience threshold, the column number of the first point, and the column number of the second point.
[0066] Among them, the basic experience threshold is a fixed experience threshold corresponding to the laser scanning device, which can usually be determined based on experience.
[0067] Specifically, obtain the column numbers of the first point and the second point among two adjacent points. For example, obtain the threshold range corresponding to the i-th point, where the threshold range is set based on the column number of the i-th point and the column number of the (i - 1)-th point; obtain a preset basic experience threshold, and obtain the column number of the i-th point and the column number of the (i - 1)-th point; calculate the threshold range corresponding to the i-th point according to the basic experience threshold, the column number of the i-th point, and the column number of the (i - 1)-th point.
[0068] In some embodiments, obtaining the preset basic experience threshold in step S31 includes:
[0069] Obtain the device information of the laser scanning device.
[0070] Select the experience threshold corresponding to the device information from a preset set of experience thresholds, and set the experience threshold corresponding to the device information as the basic experience threshold.
[0071] Among them, the device information may include one or more of device identification, device model, device scanning accuracy, etc.; the preset set of experience thresholds may include experience thresholds corresponding to various device information respectively. Technical personnel can set experience thresholds based on experience. For laser scanning devices with different precisions, the experience thresholds they adopt are different. Generally, the higher the device scanning accuracy of a device, the higher the value of the experience threshold it adopts.
[0072] The above embodiments can select corresponding basic experience thresholds according to different laser scanning devices, which is convenient for quickly obtaining the basic experience threshold, thereby improving the denoising efficiency.
[0073] Step S32, calculate the characteristic threshold range according to the basic experience threshold, the column number of the first point, and the column number of the second point.
[0074] Among them, the calculation formula for the characteristic threshold range is:
[0075] Characteristic threshold range =
[0076] [(Column number of the second point - Column number of the first point) × Basic experience threshold, π - Column number of the second point - Column number of the first point) × Basic experience threshold.
[0077] In some other embodiments, step S3 specifically includes the following steps: Obtain the preset basic experience threshold, the row number of the first point, and the row number of the second point, and calculate the characteristic threshold range according to the basic experience threshold, the row number of the first point, and the row number of the second point.
[0078] Among them, the calculation formula for the characteristic threshold range is:
[0079] Characteristic threshold range =
[0080] [(Row number of the second point - Row number of the first point) × Basic experience threshold, π - (Row number of the second point - Row number of the first point) × Basic experience threshold.
[0081] The above embodiments can calculate the characteristic threshold range according to the column numbers or row numbers of two adjacent points respectively. When there are empty points in the ordered point cloud data, by increasing the span between two adjacent points, the influence of the empty points can be excluded, so as to provide a more accurate characteristic threshold range for judging trailing noise points.
[0082] In some embodiments, please refer to Figure 3 , step S2 specifically includes the following steps:
[0083] Step S21, obtain the coordinate values of the first point and the second point.
[0084] Among them, each point in the point cloud obtained by laser scanning can include three-dimensional coordinates.
[0085] Specifically, obtain the coordinate values (X1, Y1, Z1) of the first point and the coordinate values (X2, Y2, Z2) of the second point.
[0086] Step S22, according to the coordinate values of the first point and the second point, obtain the first vector and the second vector formed by the zero point of the ordered point cloud data and the first point and the second point respectively.
[0087] Among them, the first vector is the vector formed by the zero point (0, 0, 0) of the ordered point cloud data and the first point (X1, Y1, Z1), and the second vector is the vector formed by the zero point (0, 0, 0) of the ordered point cloud data and the second point (X2, Y2, Z2).
[0088] Specifically, according to the coordinate values (X1, Y1, Z1) of the first point and the coordinate values (X2, Y2, Z2) of the second point, the first vector from the zero point to the first point and the second vector from the zero point to the second point can be obtained.
[0089] Step S23, according to the first vector and the second vector, calculate the angle value of the angle corresponding to the zero point in the triangle formed by the first point, the second point and the zero point of the ordered point cloud data.
[0090] Among them, the included angle between the first vector and the second vector is the angle corresponding to the zero point in the triangle formed by two adjacent points and the zero point of the ordered point cloud data; specifically, by calculating the angle value of the included angle between the first vector and the second vector, the angle value of the angle corresponding to the zero point in the triangle formed by two adjacent points and the zero point of the ordered point cloud data can be obtained.
[0091] For example: obtain the coordinate values of the \(i\)-th point and the \((i - 1)\)-th point in the \(a\)-th column; based on the coordinate values of the \(i\)-th point and the \((i - 1)\)-th point, obtain the first vector formed by the zero point of the ordered point cloud data and the \((i - 1)\)-th point and the second vector formed by the zero point and the \(i\)-th point; based on the first vector and the second vector, calculate the angle value of the angle corresponding to the zero point in the triangle formed by the zero point, the \(i\)-th point, and the \((i - 1)\)-th point of the ordered point cloud data. Among them, the angle value of the included angle between the first vector and the second vector is the angle value of the angle corresponding to the zero point in the triangle formed by the zero point, the \(i\)-th point in the \(a\)-th column, and the \((i - 1)\)-th point. Based on the first vector and the second vector, the angle value corresponding to the \(i\)-th point can be calculated, that is, the angle value of the angle corresponding to the zero point in the triangle formed by the zero point, the \(i\)-th point, and the \((i - 1)\)-th point.
[0092] In the above embodiment, the method can obtain the required angle value by calculating the angle value of the included angle between the first vector and the second vector formed by the zero point of the ordered point cloud data and two adjacent points respectively. Since vectors corresponding to two adjacent points can be conveniently and quickly constructed based on the point coordinates without introducing other data calculations, the denoising efficiency can be further improved.
[0093] In the actual implementation process, if the point cloud data is filtered without removing the trailing noise points, affected by the trailing noise points, the accuracy of the filtering will be very poor. Especially when filtering the point cloud data in a complex scanning scene, important detail information is often lost, resulting in data distortion.
[0094] Please refer to Figure 4 , to solve the problem of data distortion, in some embodiments, in addition to steps S1 to S5, the method specifically includes the following steps:
[0095] Step S6, perform denoising processing on the first ordered point cloud data to obtain the second ordered point cloud data.
[0096] Among them, the first ordered point cloud data is the ordered point cloud data from which the trailing noise points have been removed. Further denoising processing on it can obtain a better denoising effect.
[0097] Specifically, the first ordered point cloud data can be denoised by statistical filtering and / or outlier detection denoising.
[0098] In the above embodiment, the method can further denoise the point cloud data from which the trailing noise points have been screened out. Since there are no trailing noise points in the first ordered point cloud data, when denoising again by statistical filtering and / or outlier detection, the denoising accuracy can be improved, and the information required for scanning can be retained to the greatest extent. Especially for the point cloud data collected in a complex scanning scene, important detail information can be avoided from being lost.
[0099] Please refer to Figure 5 , another embodiment of the present application provides a denoising device for ordered point clouds. The device is applied to a laser scanning device. The ordered point cloud data collected by the laser scanning device includes multiple rows and multiple columns of points arranged in the scanning order. The device includes:
[0100] A data reading module 101, configured to read adjacent first and second points from the ordered point cloud data. The first and second points are in the same row and the column number of the second point is greater than that of the first point, or the first and second points are in the same column and the row number of the second point is greater than that of the first point. At least one of the first and second points is an unread point;
[0101] An eigenvalue obtaining module 102, configured to obtain the eigenvalue corresponding to the second point. The eigenvalue is the angular value of the angle corresponding to the zero point in the triangle formed by the first point, the second point and the zero point of the ordered point cloud data. The zero point is the viewing point of the laser scanning device;
[0102] A feature threshold range obtaining module 103, configured to obtain the feature threshold range corresponding to the eigenvalue. The feature threshold range is determined according to the column numbers of the first point and the second point, or the row numbers of the first point and the second point;
[0103] A judgment module 104, configured to judge whether the eigenvalue corresponding to the second point is within the feature threshold range; if not, delete the second point from the ordered point cloud data and go to the step of reading adjacent first and second points from the ordered point cloud data; if so, directly go to the step of reading adjacent first and second points from the ordered point cloud data;
[0104] A first denoising module 105, configured to loop through the above steps until there are no unread points in the ordered point cloud data, and obtain the first ordered point cloud data.
[0105] In some embodiments, the feature threshold range obtaining module 103 may be specifically configured to obtain a preset basic experience threshold, the column number of the first point, and the column number of the second point, and calculate the feature threshold range according to the basic experience threshold, the column number of the first point, and the column number of the second point.
[0106] The calculation formula for the feature threshold range is:
[0107] Feature threshold range =
[0108] [(Column number of the second point - Column number of the first point) × Basic experience threshold, π - (Column number of the second point - Column number of the first point) × Basic experience threshold.
[0109] In some other embodiments, the feature threshold range acquisition module 103 may be specifically configured to obtain a preset basic experience threshold, the line number of the first point, and the line number of the second point, and calculate a feature threshold range according to the basic experience threshold, the line number of the first point, and the line number of the second point.
[0110] The calculation formula for the feature threshold range is:
[0111] Feature threshold range =
[0112] [(Line number of the second point - Line number of the first point) × Basic experience threshold, π - (Line number of the second point - Line number of the first point) × Basic experience threshold.
[0113] In some embodiments, the feature threshold range acquisition module 103 may be specifically configured to obtain device information of a laser scanning device; select an experience threshold corresponding to the device information from a preset set of experience thresholds, and set the experience threshold corresponding to the device information as the basic experience threshold.
[0114] In some embodiments, the feature value acquisition module 102 may be specifically configured to obtain the coordinate values of the first point and the second point; obtain first and second vectors formed by the zero point of the ordered point cloud data and the first and second points respectively according to the coordinate values of the first point and the second point; calculate the angle value of the angle corresponding to the zero point in the triangle formed by the first point, the second point, and the zero point of the ordered point cloud data according to the first vector and the second vector.
[0115] In some embodiments, please refer to Figure 6 , the device further includes:
[0116] A second denoising module 106, configured to perform denoising processing on the first ordered point cloud data to obtain second ordered point cloud data.
[0117] Specifically, the second denoising module 106 is configured to perform denoising processing on the first ordered point cloud data through statistical filtering and / or outlier detection denoising.
[0118] The specific limitations of the denoising device for ordered point clouds provided in this embodiment may refer to the embodiments of the denoising method for ordered point clouds in the foregoing text, and will not be elaborated here. Each module in the above-mentioned denoising device for ordered point clouds may be implemented in whole or in part by software, hardware, and their combination. The above-mentioned modules may be embedded in or independent of a processor in a computer device in a hardware form, or may be stored in a memory in the computer device in a software form, so that the processor can call and execute the operations corresponding to the above-mentioned modules.
[0119] An embodiment of the present application provides an electronic device, which may include a processor, a memory, a network interface, and a database connected through a system bus. Among them, the processor of the electronic device is used to provide computing and control capabilities. The memory of the electronic device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface of the electronic device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, the processor executes the steps of the denoising method for the ordered point cloud as described in any of the above embodiments.
[0120] For the working process, working details, and technical effects of the electronic device provided in this embodiment, reference may be made to the embodiments of the denoising method for the ordered point cloud in the foregoing text, and details are not described herein again.
[0121] An embodiment of the present application provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, it implements the steps of the denoising method for the ordered point cloud as described in any of the above embodiments. Among them, the computer-readable storage medium refers to a carrier for storing data, and may include, but is not limited to, a floppy disk, an optical disc, a hard disk, a flash memory, a USB flash drive, and / or a Memory Stick, etc. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
[0122] For the working process, working details, and technical effects of the computer-readable storage medium provided in this embodiment, reference may be made to the embodiments of the denoising method for the ordered point cloud in the foregoing text, and details are not described herein again.
[0123] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, storage, database, or other medium used in the various embodiments provided in the present application can include non-volatile and / or volatile memories. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and Rambus dynamic RAM (RDRAM), etc.
[0124] The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity of description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope described in this specification.
[0125] The above-described embodiments merely represent several implementation manners of the present application. The description is relatively specific and detailed, but it should not be construed as a limitation on the scope of the invention patent. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application shall be subject to the appended claims.
Claims
1. A denoising method for ordered point clouds, characterized in that, Applied to a laser scanning device, the ordered point cloud data collected by the laser scanning device includes points arranged in multiple rows and columns in the scanning order. The method includes: Read adjacent first and second points from the ordered point cloud data, where the first and second points are in the same row and the column number of the second point is greater than that of the first point, or the first and second points are in the same column and the row number of the second point is greater than that of the first point, and at least one of the first and second points is an unread point; Obtain the eigenvalue corresponding to the second point, where the eigenvalue is the angular value of the angle corresponding to the zero point in the triangle formed by the first point, the second point, and the zero point of the ordered point cloud data, and the zero point is the viewing point of the laser scanning device; Obtain the characteristic threshold range corresponding to the eigenvalue, where the characteristic threshold range is determined according to the column numbers of the first point and the second point, or the row numbers of the first point and the second point; Determine whether the eigenvalue corresponding to the second point is within the characteristic threshold range; if not, delete the second point from the ordered point cloud data and go back to the step of reading adjacent first and second points from the ordered point cloud data; if so, directly go back to the step of reading adjacent first and second points from the ordered point cloud data; Loop through the above steps until there are no unread points in the ordered point cloud data, and obtain the first ordered point cloud data.
2. The method according to claim 1, wherein The obtaining of the characteristic threshold range corresponding to the eigenvalue includes: Obtain a preset basic experience threshold, the column number of the first point, and the column number of the second point, and calculate the characteristic threshold range according to the basic experience threshold, the column number of the first point, and the column number of the second point; The calculation formula for the characteristic threshold range is: Characteristic threshold range = [(Column number of the second point - Column number of the first point) × Basic experience threshold, π - (Column number of the second point - Column number of the first point) × Basic experience threshold].
3. The method according to claim 1, wherein The obtaining of the characteristic threshold range corresponding to the eigenvalue includes: Obtain a preset basic experience threshold, the row number of the first point, and the row number of the second point, and calculate the characteristic threshold range according to the basic experience threshold, the row number of the first point, and the row number of the second point; The calculation formula for the characteristic threshold range is: Characteristic threshold range = [(Row number of the second point - Row number of the first point) × Basic experience threshold, π - (Row number of the second point - Row number of the first point) × Basic experience threshold].
4. The method according to claim 1, wherein The obtaining of the eigenvalue corresponding to the second point includes: Obtain the coordinate values of the first point and the second point; According to the coordinate values of the first point and the second point, obtain the first vector and the second vector formed by the zero point of the ordered point cloud data and the first point and the second point respectively; According to the first vector and the second vector, calculate the angular value of the angle corresponding to the zero point in the triangle formed by the first point, the second point, and the zero point of the ordered point cloud data.
5. The method according to any one of claims 1 to 4, characterized in that, The obtaining of the preset basic experience threshold includes: Obtain the device information of the laser scanning device; Select the empirical threshold corresponding to the device information from the preset set of empirical thresholds, and set the empirical threshold corresponding to the device information as the basic empirical threshold.
6. The method according to claim 5, characterized in that, The method further includes: Perform denoising processing on the first ordered point cloud data to obtain second ordered point cloud data.
7. The method according to claim 6, characterized in that, The performing denoising processing on the first ordered point cloud data includes: Perform denoising processing on the first ordered point cloud data through statistical filtering.
8. A denoising device for ordered point clouds, characterized in that, Applied to a laser scanning device, the ordered point cloud data collected by the laser scanning device includes points arranged in multiple rows and columns in the scanning order. The device includes: A data reading module, configured to read adjacent first and second points from the ordered point cloud data, where the first and second points are in the same row and the column number of the second point is greater than the column number of the first point, or the first and second points are in the same column and the row number of the second point is greater than the row number of the first point, and at least one of the first and second points is an unread point; An eigenvalue obtaining module, configured to obtain the eigenvalue corresponding to the second point, where the eigenvalue is the angle value of the angle corresponding to the zero point in the triangle formed by the first point, the second point, and the zero point of the ordered point cloud data, and the zero point is the viewing point of the laser scanning device; A characteristic threshold range obtaining module, configured to obtain the characteristic threshold range corresponding to the eigenvalue, where the characteristic threshold range is determined according to the column numbers of the first point and the second point, or the row numbers of the first point and the second point; A judgment module, configured to judge whether the eigenvalue corresponding to the second point is within the characteristic threshold range; if not, delete the second point from the ordered point cloud data, and go to the step of reading adjacent first and second points from the ordered point cloud data; if so, directly go to the step of reading adjacent first and second points from the ordered point cloud data; A first denoising module, configured to repeatedly execute the above steps until there are no unread points in the ordered point cloud data, to obtain first ordered point cloud data.
9. An electronic device, characterized in that, Including a memory and a processor, where a computer program is stored in the memory, and when the computer program is executed by the processor, the processor executes the steps of the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, Stored with a computer program thereon, characterized in that when the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Filtering method and device, electronic equipment and computer storage medium
CN110515054A
Filtering method for laser radar point cloud trailing point
CN113345093A