A method, device, electronic device and medium for processing lidar point cloud
By performing position transformation and screening of the lidar point cloud, the target water plane is constructed and surface echo filtering is performed, the problem of surface echo interference with lidar detection and identification is solved, and the filtration accuracy and efficiency are improved.
Patent Information
- Application Number
- CN202210851573.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-19
- Publication Date
- 2025-06-10
- Estimated Expiration
- 2042-07-19
AI Technical Summary
The reflection of surface echo on lidar is affected by a variety of factors, which leads to interference in lidar in surface detection and identification, making it difficult to effectively filter surface echoes.
By acquiring multi-frame pending lidar point clouds, performing position transformation and screening, a candidate water plane is constructed, and cycling is performed based on the preset distance threshold and quantity threshold until the target water plane is determined. Then, the water surface echo filtering treatment is performed based on the target water plane facing the point cloud to be treated.
It improves the accuracy and efficiency of surface echo filtering and reduces interference to lidar target detection and identification.
Smart Images

Figure CN115166754B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular, to a method, apparatus, electronic device, and medium for processing lidar point clouds. Background Art
[0002] With the development of unmanned driving technology, lidar has been widely used. Unmanned surface vessels also begin to use lidar for environmental perception, such as surface obstacle detection, surface obstacle recognition, bridge anti-collision warning, etc. However, due to the complexity of the water surface, especially inland rivers and lakes, the reflection of lidar by water bodies is affected by many factors such as the sediment content in the water body, the size of bubbles in the water body, the shape of the water body, and the sunlight irradiation, resulting in complex and variable water surface echoes of lidar, and the rules are difficult to grasp. Furthermore, it will interfere with the detection and recognition of targets by lidar. Therefore, it is necessary to filter the water surface echoes. Summary of the Invention
[0003] In order to solve the problem that water surface echoes in the prior art interfere with the detection and recognition of targets by lidar, the present application provides a method, apparatus, electronic device, and medium for processing lidar point clouds:
[0004] According to a first aspect of the present application, there is provided a method for processing lidar point clouds, including:
[0005] Obtain multiple frames of lidar point clouds to be processed, perform position transformation processing and screening processing on each frame of lidar point cloud to be processed in the multiple frames of lidar point clouds to be processed, and obtain multiple frames of candidate lidar point clouds;
[0006] For any one frame of candidate lidar point clouds among the multiple frames of candidate lidar point clouds, construct a candidate water body plane based on the position data of any three candidate lidar points in any one frame of candidate lidar point clouds, and determine the distance between each candidate lidar point in any one frame of candidate lidar point clouds and the candidate water body plane;
[0007] When the number of candidate lidar points with a distance less than a preset distance threshold from the candidate water body plane in any one frame of candidate lidar point clouds is less than a preset number threshold, execute the step of constructing the candidate water body plane until the number of candidate lidar points with a distance less than the preset distance threshold from the candidate water body plane in any one frame of candidate lidar point clouds is greater than the preset number threshold within a preset number of loops, and obtain the target water body plane corresponding to any one frame of candidate lidar point clouds;
[0008] Determine the vertical offset distance interval corresponding to any one frame of candidate lidar point clouds according to the position data of each candidate lidar point in any one frame of candidate lidar point clouds;
[0009] When there are a preset number of consecutive reference frame candidate lidar point clouds in multiple frames of candidate lidar point clouds, perform water surface echo filtering processing on each frame of lidar point cloud to be processed based on the target water plane to obtain the target lidar point cloud; the ratio of the number of reference candidate lidar points in the reference frame candidate lidar point cloud to the total number of candidate lidar points in the reference frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval.
[0010] According to a second aspect of the present application, there is provided a processing device for lidar point clouds, including:
[0011] An acquisition module, configured to acquire multiple frames of lidar point clouds to be processed, perform position transformation processing and screening processing on each frame of lidar point cloud to be processed in the multiple frames of lidar point clouds to be processed, and obtain multiple frames of candidate lidar point clouds;
[0012] A first determination module, configured to, for any one frame of candidate lidar point clouds in the multiple frames of candidate lidar point clouds, construct a candidate water plane based on the position data of any three candidate lidar points in any one frame of candidate lidar point clouds, and determine the distance between each candidate lidar point in any one frame of candidate lidar point clouds and the candidate water plane;
[0013] A loop module, configured to, when the number of candidate lidar points in any one frame of candidate lidar point clouds whose distance from the candidate water plane is less than a preset distance threshold is less than a preset number threshold, execute the step of constructing the candidate water plane until the number of candidate lidar points in any one frame of candidate lidar point clouds whose distance from the candidate water plane is less than the preset distance threshold is greater than the preset number threshold within a preset number of loops, and obtain the target water plane corresponding to any one frame of candidate lidar point clouds;
[0014] A second determination module, configured to determine the vertical offset distance interval corresponding to any one frame of candidate lidar point clouds according to the position data of each candidate lidar point in any one frame of candidate lidar point clouds;
[0015] A filtering module, configured to, when there are a preset number of consecutive reference frame candidate lidar point clouds in the multiple frames of candidate lidar point clouds, perform water surface echo filtering processing on each frame of lidar point cloud to be processed based on the target water plane to obtain the target lidar point cloud; the ratio of the number of reference candidate lidar points in the reference frame candidate lidar point cloud to the total number of candidate lidar points in the reference frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval.
[0016] On the other hand, an acquisition module, configured to acquire multiple frames of lidar point clouds to be processed;
[0017] For each frame of lidar point cloud to be processed, the transformed lidar point cloud after position transformation processing of the lidar point cloud to be processed is obtained according to the product of the position data of the lidar point cloud to be processed in each frame and the preset transformation data;
[0018] For each transformed lidar point in each frame of the transformed lidar point cloud, the transformed lidar points with vertical distance data within the vertical reference distance interval and horizontal distance data less than the horizontal reference distance are determined as the candidate lidar point clouds after screening processing of the transformed lidar point cloud, and multiple frames of candidate lidar point clouds are obtained.
[0019] On the other hand, the steps of the vertical reference distance interval and the horizontal reference distance include:
[0020] The vertical reference distance is determined according to the difference between the preset installation height of the lidar and the average draft depth of the ship; the average draft depth of the ship is the average of the sum of the light draft depth and the full load draft depth of the ship;
[0021] The vertical reference distance interval is determined according to the sum of the vertical reference distance and the preset offset threshold;
[0022] The horizontal reference distance is determined according to the ratio of the vertical reference distance to the preset incident angle.
[0023] On the other hand, the first determination module is used to sort the normal vectors corresponding to each candidate lidar point in any one frame of the candidate lidar point clouds among multiple frames of candidate lidar point clouds to obtain a first reference normal vector and a second reference normal vector; the first reference normal vector is the maximum value among the normal vectors corresponding to the candidate lidar points in any one frame of the candidate lidar point cloud, and the second reference normal vector is the minimum value among the normal vectors corresponding to the candidate lidar points in any one frame of the candidate lidar point cloud;
[0024] The reference normal vector interval is determined according to the sum of the first reference normal vector and the second reference normal vector;
[0025] Based on the position data of any three candidate lidar points with normal vectors within the reference normal vector interval in any one frame of the candidate lidar point cloud, a candidate water body plane is constructed.
[0026] On the other hand, the second determination module is used to determine the vertical distance mean value and the vertical distance standard deviation value corresponding to any one frame of the candidate lidar point cloud according to the position data of each candidate lidar point in any one frame of the candidate lidar point cloud;
[0027] The vertical offset distance interval corresponding to any one frame of the candidate lidar point cloud is determined according to the difference between the vertical distance mean value and the vertical distance standard deviation value corresponding to any one frame of the candidate lidar point cloud.
[0028] On the other hand, the above-mentioned lidar point cloud processing device further includes: a repetition module, which is used to, after determining the vertical offset distance interval corresponding to any frame of candidate lidar point cloud according to the position data of each candidate lidar point in any frame of candidate lidar point cloud, further include:
[0029] When there is a target frame candidate lidar point cloud among multiple frames of candidate lidar point clouds, perform the step of constructing a candidate water body plane on the next frame of candidate lidar point cloud of the target frame lidar candidate point cloud until the number of candidate lidar points in the next frame of candidate lidar point cloud whose distance from the candidate water body plane is less than a preset distance threshold is greater than a preset number threshold, so as to obtain the target water body plane corresponding to the next frame of candidate lidar point cloud;
[0030] Determine the vertical offset distance interval corresponding to the next frame of candidate lidar point cloud according to the position data of each candidate lidar point in the next frame of candidate lidar point cloud;
[0031] When there are a preset number of consecutive reference frame candidate lidar point clouds among multiple frames of candidate lidar point clouds, perform surface echo filtering processing on each frame of lidar point cloud to be processed based on the target water body plane to obtain the target lidar point cloud; the ratio of the number of reference lidar candidate points in the reference frame candidate lidar point cloud to the total number of candidate lidar points in the reference frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval.
[0032] According to the third aspect of the present application, there is provided an electronic device, which includes a processor and a memory. At least one instruction or at least one program segment is stored in the memory, and at least one instruction or at least one program segment is loaded and executed by the processor to implement the lidar point cloud processing method of the first aspect of the present application.
[0033] According to the fourth aspect of the present application, there is provided a computer storage medium, in which at least one instruction or at least one program segment is stored, and at least one instruction or at least one program segment is loaded and executed by the processor to implement the lidar point cloud processing method of the first aspect of the present application.
[0034] According to the fifth aspect of the present application, there is provided a computer program product, which includes at least one instruction or at least one program segment, and at least one instruction or at least one program segment is loaded and executed by the processor to implement the lidar point cloud processing method of the first aspect of the present application.
[0035] A lidar point cloud processing method, device, electronic device and medium provided by the embodiments of the present application have the following technical effects:
[0036] By acquiring multiple frames of lidar point clouds to be processed, performing position transformation processing and screening processing on each frame of lidar point cloud to be processed in the multiple frames of lidar point clouds to be processed, multiple frames of candidate lidar point clouds are obtained; for any one frame of candidate lidar point cloud in the multiple frames of candidate lidar point clouds, a candidate water body plane is constructed based on the position data of any three candidate lidar points in any one frame of candidate lidar point cloud, and the distance between each candidate lidar point in any one frame of candidate lidar point cloud and the candidate water body plane is determined; when the number of candidate lidar points with a distance less than a preset distance threshold from the candidate water body plane in any one frame of candidate lidar point cloud is less than a preset number threshold, the step of constructing the candidate water body plane is executed until the number of candidate lidar points with a distance less than the preset distance threshold from the candidate water body plane in any one frame of candidate lidar point cloud is greater than the preset number threshold within a preset number of loops, and the target water body plane corresponding to any one frame of candidate lidar point cloud is obtained; according to the position data of each candidate lidar point in any one frame of candidate lidar point cloud, a vertical offset distance interval corresponding to any one frame of candidate lidar point cloud is determined; when there are a preset number of consecutive reference frame candidate lidar point clouds in the multiple frames of candidate lidar point clouds, surface echo filtering processing is performed on each frame of lidar point cloud to be processed based on the target water body plane to obtain the target lidar point cloud; the ratio of the number of reference candidate lidar points in the reference frame candidate lidar point cloud to the total number of candidate lidar points in the reference frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval. In the embodiments of the present application, by combining the random sample consensus algorithm and the linear model of wind-generated waves, the filtering accuracy of surface echoes can be improved. Description of the Drawings
[0037] To more clearly illustrate the technical solutions and advantages in the embodiments of the present application or the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the following-described drawings are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.
[0038] Figure 1 It is a schematic diagram of an application environment provided by an embodiment of the present application;
[0039] Figure 2 It is a schematic flowchart of a method for processing lidar point clouds provided by an embodiment of the present application;
[0040] Figure 3 It is a schematic diagram of a horizontal reference distance provided by an embodiment of the present application;
[0041] Figure 4It is a schematic structural diagram of a processing device for lidar point cloud provided by an embodiment of the present application;
[0042] Figure 5 It is a schematic hardware structure diagram of an electronic device for implementing the lidar point cloud processing method provided by an embodiment of the present application. Detailed implementation manners
[0043] To make the objectives, technical solutions, and advantages of the present application clearer, the embodiments of the present application will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only one embodiment of the present application, rather than all embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments in the present application without creative efforts belong to the scope of protection of the present application.
[0044] As used herein, an "embodiment" refers to a specific feature, structure, or characteristic that may be included in at least one implementation of the present application. In the description of the embodiments of the present application, it should be understood that the terms "first", "second", etc. are only used for descriptive purposes and cannot be construed as indicating or implying relative importance or implicitly indicating the number of indicated technical features. Thus, features defined with "first", "second", etc. may explicitly or implicitly include one or more of such features. Moreover, the terms "first", "second", etc. are used to distinguish similar objects and do not necessarily describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "include", "have", and "be" and any variations thereof are intended to cover non-exclusive inclusion.
[0045] It can be understood that in the specific implementation of the present application, when it comes to relevant data such as point cloud data, when the above embodiments of the present application are applied to specific products or technologies, user permission or consent is required, and the collection, use, and processing of relevant data need to comply with relevant laws, regulations, and standards of relevant countries and regions.
[0046] Please refer to Figure 1 , Figure 1 It is a schematic diagram of an application environment provided by an embodiment of the present application. The application environment may include a client 10 and a server 20. The client 10 and the server 20 may be directly or indirectly connected through a wired or wireless communication method.
[0047] In some possible embodiments, the client 10 may send lidar point cloud data to be processed to the server 20. The server may provide lidar point cloud processing services and filter water surface echoes by constructing a target water body plane.
[0048] The client 10 can be an entity device of types such as a smart phone, a computer (such as a desktop computer, a tablet computer, a laptop computer), an augmented reality (AR) / virtual reality (VR) device, a digital assistant, a smart voice interaction device (such as a smart speaker), a smart wearable device, a smart home appliance, a vehicle-mounted terminal, etc., or can be software running on the entity device, such as a computer program. The operating system corresponding to the client can be an Android system, an iOS system (a mobile operating system developed by Apple Inc.), a Linux system (an operating system), a Microsoft Windows system (Microsoft Windows operating system), etc.
[0049] The server 20 can be an independent physical server, or can be a service cluster or a distributed system composed of multiple physical servers, or can be a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, Content Delivery Network (CDN), and big data and artificial intelligence platforms. Among them, the server can include a network communication unit, a processor, a memory, and so on. The server can provide an image backhaul service.
[0050] In some possible implementation manners, both the client 10 and the server 20 can be node devices in a blockchain system, and can share the acquired and generated information with other node devices in the blockchain system, so as to realize information sharing among multiple node devices. Multiple node devices in the blockchain system can be configured with the same blockchain. The blockchain is composed of multiple blocks, and the adjacent blocks before and after have an association relationship, so that when the data in any block is tampered with, it can be detected by the next block, thereby being able to avoid the data in the blockchain from being tampered with and ensuring the security and reliability of the data in the blockchain.
[0051] At present, there are mainly three ways to process water surface echoes. The first is to directly input the lidar point cloud data into a neural network for target recognition, enabling the neural network to learn to filter water surface echoes. The second is to use a conventional clustering algorithm to cluster water surface targets, and then filter water surface echoes based on the size of candidate targets. The third is to establish a polynomial linear regression model of water surface echoes to simulate the echoes. However, learning to filter water surface echoes through a neural network requires collecting a large number of samples for analysis, and due to the complex water body conditions, data collection is difficult. The method of filtering echoes by combining a clustering algorithm with target size cannot effectively filter water surface echoes close to objects and is prone to regarding water surface echoes as part of the object. By establishing a polynomial linear regression model of water surface echoes to simulate the echoes, since water surface echoes are affected not only by the movement law of the water body but also by the impurities contained in the water body, it is difficult to accurately establish a polynomial linear regression model of water surface echoes.
[0052] The following introduces a specific embodiment of a method for processing lidar point clouds of the present application. Figure 2 FIG. is a schematic flowchart of a method for processing lidar point clouds provided by an embodiment of the present application. This specification provides method operation steps as shown in the embodiment or flowchart, but based on routine or non-creative labor, there may be more or fewer operation steps. The step order listed in the embodiment is only one of many execution orders and does not represent the only execution order. In actual execution, it can be executed in the order shown in the embodiment or the drawings or in parallel (for example, in an environment with parallel processors or multi-threaded processing).
[0053] Specifically, as Figure 2 shown, the method for processing lidar point clouds may include:
[0054] S201: Obtain multiple frames of lidar point clouds to be processed, perform position transformation processing and screening processing on each frame of lidar point cloud to be processed in the multiple frames of lidar point clouds to be processed, and obtain multiple frames of candidate lidar point clouds.
[0055] In an embodiment of the present application, the lidar can be installed at the middle position of the ship, and a coordinate system can be established with the forward direction of the ship as the positive x-axis direction, the horizontal right direction of the ship as the positive y-axis direction, and the vertical upward direction of the ship as the positive z-axis direction. Since the shipborne lidar is in an operating state on the water surface, motion compensation processing needs to be performed on the obtained lidar point clouds.
[0056] In some possible embodiments, multiple frames of lidar point clouds to be processed can be obtained, and the transformed lidar point clouds after position transformation processing of each frame of lidar point cloud to be processed can be obtained according to the product of the position data of each frame of lidar point cloud to be processed and the preset transformation data. The specific manner of position transformation processing is as follows:
[0057]
[0058] Among them, [x 0 , y 0 , z 0 , 1] T can represent the position data of the lidar point before position transformation processing, [x 1 , y 1 , z 1 , 1] T can represent the position data of the lidar point after position transformation processing, and R slerp can represent the preset transformation data. R slerp can be obtained by processing the data measured by an Inertial Measurement Unit (IMU).
[0059] Generally, the reflectivity of the water surface to lidar is about 2% - 6%, but when the incident angle exceeds 40°, the reflectivity will decrease rapidly. Also, due to the influence of the impact of the unmanned boat on the water body in the near-boat area, the height has great instability. Therefore, it is not necessary to analyze the water body in the near-boat area. At the same time, considering that there may be large water waves, other boats, reefs, etc. in the distance, not all the transformed lidar point clouds can be used for fitting the water plane. It is necessary to set a vertical reference distance interval and a horizontal reference distance to screen the transformed lidar point clouds after position transformation processing of each frame of lidar point cloud to be processed.
[0060] Figure 3 is a schematic diagram of a horizontal reference distance provided by an embodiment of the present application. After obtaining the transformed lidar point clouds after position transformation processing of each frame of lidar point cloud to be processed, the vertical reference distance can be determined according to the difference between the preset installation height of the lidar and the average draft depth of the boat. Among them, the average draft depth of the boat is the average value of the sum of the light draft depth and the full load draft depth of the boat. Then, the vertical reference distance interval can be determined according to the sum value of the vertical reference distance and the preset offset threshold, and the horizontal reference distance can be determined according to the ratio of the vertical reference distance to the preset incident angle. The specific calculation formulas for the vertical reference distance and the horizontal reference distance are as follows:
[0061]
[0062]
[0063] Among them, l min It can represent the horizontal reference distance, that is, the minimum horizontal distance between the water body and the lidar. h can represent the vertical reference distance. installation It can represent the preset installation height of the laser radar, that is, the height of the laser radar from the bottom of the ship, h empty It can be used to indicate the unladen draft of a ship, h full It can indicate the draft of a ship when fully loaded.
[0064] In some possible implementations, for the transformed laser radar points in each frame of the transformed laser radar point cloud, the transformed laser radar points whose vertical distance data are within the vertical reference distance interval and whose horizontal distance data are less than the horizontal reference distance can be determined as candidate laser radar point clouds after the transformed laser radar point cloud screening process, and multiple frames of candidate laser radar point clouds are obtained. That is, the transformed laser radar points need to meet the following conditions:
[0065] p m ={p i m |hh offset ≤z i m ≤h+h offset &&l i m > min ,i=1,2,...,N}
[0066] Among them, m can represent the frame number corresponding to the transformed lidar point cloud, i can represent the number of the transformed lidar point, and p m It can represent the candidate LiDAR point cloud after the LiDAR point cloud screening process of the mth frame transformation, p i m can represent the i-th transformed lidar point in the m-th transformed lidar point cloud, h can represent the vertical reference distance, h offset It can represent the preset offset threshold, that is, the upper and lower offset values centered on h, which can be set according to actual conditions. i m It can represent the z coordinate value corresponding to the i-th transformed lidar point in the m-th frame transformed lidar point cloud, l i m It can represent the horizontal distance between the candidate lidar point cloud after screening and processing of the transformed lidar point cloud of the mth frame and the water body, and N can represent the number of transformed lidar points in the transformed lidar point cloud of the mth frame.
[0067] S203: For any one of the multi-frame candidate lidar point clouds, construct a candidate water plane based on the position data of any three candidate lidar points in any one of the candidate lidar point clouds, and determine the distance between each candidate lidar point in any one of the candidate lidar point clouds and the candidate water plane.
[0068] In some possible implementation manners, for any one of the multi-frame candidate lidar point clouds, a candidate water plane can be constructed based on the position data of any three candidate lidar points in any one of the candidate lidar point clouds.
[0069] Considering the shape of the wave, the normal vector direction of the lidar points at the position where the water plane is located should be in the middle region after sorting. In some possible implementation manners, for any one of the multi-frame candidate lidar point clouds, the normal vectors corresponding to each candidate lidar point in any one of the candidate lidar point clouds can be sorted to obtain a set of normal vectors θ m ={θ i m │i = 1, 2,... N}, a first reference normal vector, and a second reference normal vector. Among them, the first reference normal vector can be the maximum value of the normal vectors corresponding to the candidate lidar points in any one of the candidate lidar point clouds, and the second reference normal vector can be the minimum value of the normal vectors corresponding to the candidate lidar points in any one of the candidate lidar point clouds. Then, the reference normal vector interval can be determined according to the sum value of the first reference normal vector and the second reference normal vector, and a candidate water plane can be constructed based on the position data of any three candidate lidar points in any one of the candidate lidar point clouds whose normal vectors are within the reference normal vector interval. Among them, each of the any three candidate lidar points needs to meet the following conditions:
[0070]
[0071] Among them, p plane m can represent the set of lidar points used to fit the water plane, p i m can represent the i-th transformed lidar point in the m-th frame of transformed lidar point cloud, θ max can represent the first reference normal vector, θ min can represent the second reference normal vector, θ i m can represent the normal vector corresponding to the i-th transformed lidar point in the m-th frame of transformed lidar point cloud.
[0072] By sorting the normal vectors corresponding to each candidate lidar point according to the shape of the wave and selecting any three lidar points located in the middle positions therefrom to construct a candidate water plane, the number of lidar points participating in the operation can be reduced, the convergence speed can be increased, and the efficiency of filtering water surface echoes can be improved.
[0073] In an embodiment of the present application, after arbitrarily selecting three candidate lidar points, a candidate water plane can be constructed according to the following formula:
[0074] A m x + B m y + C m z + D m = 0
[0075] S205: When the number of candidate lidar points in any frame of candidate lidar point cloud whose distance from the candidate water plane is less than a preset distance threshold is less than a preset number threshold, execute the step of constructing the candidate water plane until, within a preset number of loops, the number of candidate lidar points in any frame of candidate lidar point cloud whose distance from the candidate water plane is less than the preset distance threshold is greater than the preset number threshold, so as to obtain the target water plane corresponding to any frame of candidate lidar point cloud.
[0076] In an embodiment of the present application, after constructing a candidate water plane based on the position data of any three candidate lidar points in any frame of candidate lidar point cloud whose normal vectors are within the reference normal vector interval, the distance between each candidate lidar point in any frame of candidate lidar point cloud and the candidate water plane can be calculated. The distance between each candidate lidar point in any frame of candidate lidar point cloud and the candidate water plane can be calculated using the following formula:
[0077]
[0078] If the distance between the candidate lidar point and the candidate water plane is less than the preset distance threshold, the candidate lidar point can be considered as a sample point within the candidate water plane, otherwise, the candidate lidar point can be considered as a sample point outside the candidate water plane. For example, the preset distance threshold can be represented by d threshold When d i m ≤ d threshold the candidate lidar point can be denoted as the sample point P inner m within the candidate water plane. When d i m > d thresholdWhen it is possible, the candidate lidar points can be marked as candidate off-water-plane sample points. Within the preset number of loop iterations, when the number of candidate in-water-plane sample points in any frame of candidate lidar point cloud is greater than the preset quantity threshold, the candidate water plane corresponding to any frame of candidate lidar point cloud can be determined as the target water plane. That is, within the preset number of loop iterations, when P inner m > T, the corresponding candidate water plane can be used as the target water plane. Otherwise, start running from S203 again, and reselect a frame of candidate lidar point cloud for processing.
[0079] Among them, the preset number of loop iterations can be the number of loop iterations specified by the Random Sample Consensus (RANSAC) algorithm. The preset quantity threshold can be a fixed value or a variable value. For example, the preset quantity threshold can be the maximum value of the number of sample points in the candidate water plane within the preset number of loop iterations.
[0080] S207: Determine the vertical offset distance interval corresponding to any frame of candidate lidar point cloud according to the position data of each candidate lidar point in any frame of candidate lidar point cloud.
[0081] Based on the linear theory of wind-generated waves, the statistical distribution of wave elevation values conforms to a normal distribution. For a normal distribution, the probabilities of falling within 1, 2, and 3 times the standard deviation on both sides of its mean are 68%, 95%, and 99.7% respectively. Therefore, the vertical offset distance interval can be determined according to 3 times the standard deviation on both sides of the mean. In some possible implementation manners, according to the position data of each candidate lidar point in any frame of candidate lidar point cloud, the vertical distance mean value and the vertical distance standard deviation value corresponding to any frame of candidate lidar point cloud can be determined, and then, according to the difference between the vertical distance mean value and the vertical distance standard deviation value corresponding to any frame of candidate lidar point cloud, the vertical offset distance interval corresponding to any frame of candidate lidar point cloud can be determined. Specifically, the mean value of the z coordinate and the standard deviation of the z coordinate corresponding to any frame of candidate lidar point cloud can be calculated, and then the vertical offset distance interval shown below can be determined:
[0082] ε m -3δ m ≤z i m ≤ε m +3δ m
[0083] Among them, can represent the mean value of the z coordinate corresponding to the m-th frame of candidate lidar point cloud, can represent the standard deviation value of the z coordinate corresponding to the m-th frame of candidate lidar point cloud, z im may represent the z - coordinate value corresponding to the i - th candidate lidar point in the m - th frame of candidate lidar point cloud.
[0084] S209: When there are a preset number of consecutive reference - frame candidate lidar point clouds in multiple frames of candidate lidar point clouds, perform water - surface echo filtering processing on each frame of lidar point cloud to be processed based on the target water body plane to obtain the target lidar point cloud; the ratio of the number of reference candidate lidar points in the reference - frame candidate lidar point cloud to the total number of candidate lidar points in the reference - frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval.
[0085] In the embodiments of the present application, when there is a target - frame candidate lidar point cloud in multiple frames of candidate lidar point clouds, the step of constructing a candidate water body plane can be performed on the next - frame candidate lidar point cloud of the target - frame lidar candidate point cloud until the number of candidate lidar points with a distance less than a preset distance threshold from the candidate water body plane in the next - frame candidate lidar point cloud is greater than a preset number threshold within a preset number of loops, to obtain the target water body plane corresponding to the next - frame candidate lidar point cloud. Then, according to the position data of each candidate lidar point in the next - frame candidate lidar point cloud, the vertical offset distance interval corresponding to the next - frame candidate lidar point cloud can be determined. When there are a preset number of consecutive reference - frame candidate lidar point clouds in multiple frames of candidate lidar point clouds, perform water - surface echo filtering processing on each frame of lidar point cloud to be processed based on the target water body plane to obtain the target lidar point cloud; the ratio of the number of reference lidar candidate points in the reference - frame candidate lidar point cloud to the total number of candidate lidar points in the reference - frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval.
[0086] In the embodiments of the present application, for each frame of lidar point cloud to be processed, the corresponding parameters can be recorded in the following manner:
[0087] F m ={A m , B m , C m , D m , ε m , δ m , p m , p plane m , Con m}
[0088] Among them, Am, Bm, Cm, Dm may represent the target water body plane corresponding to the m - th frame of lidar point cloud to be processed, ε mcan represent the mean value of the z coordinates corresponding to the lidar point cloud to be processed in the m-th frame, δ m can represent the standard deviation of the z coordinates corresponding to the lidar point cloud to be processed in the m-th frame, p m can represent the candidate lidar point cloud after screening and processing the lidar point cloud transformed in the m-th frame, p plane m can represent the lidar point set used to fit the water plane, Con m can represent the lidar point to be processed in the m-th frame, and the initial value of Com can be 1.
[0089] In the embodiments of the present application, after determining the target water plane and the vertical offset distance interval corresponding to any frame of candidate lidar point cloud, it is possible to determine whether the ratio of the number of candidate lidar points with vertical distance data within the vertical offset distance interval in the next frame of candidate lidar point cloud of this frame of candidate lidar point cloud to the total number of candidate lidar points in the next frame of candidate lidar point cloud is greater than a preset ratio threshold. The specific calculation formula of the ratio is as follows:
[0090]
[0091] where, MUN ε m+1 -3 δ m+1 ≤zi m+1 ≤ε m+1 +3δ m+1 can represent the number of candidate lidar points with vertical distance data within the vertical offset distance interval in the (m + 1)-th frame of candidate lidar point cloud, MUN all can represent the total number of candidate lidar points in the (m + 1)-th frame of candidate lidar point cloud.
[0092] If the ratio of the number of candidate lidar points with vertical distance data within the vertical offset distance range in the next-frame candidate lidar point cloud of the current-frame candidate lidar point cloud to the total number of candidate lidar points in the next-frame candidate lidar point cloud is greater than a preset ratio threshold, then take the next-frame candidate lidar point cloud of the current-frame candidate lidar point cloud as the reference-frame candidate lidar point cloud, and continue to determine whether the ratio of the number of candidate lidar points with vertical distance data within the vertical offset distance range in the next-frame candidate lidar point cloud to the total number of candidate lidar points in the next-frame candidate lidar point cloud is greater than the preset ratio threshold. When there are a preset number of consecutive next-frame candidate lidar point clouds where the ratio of the total number of candidate lidar points is greater than the preset ratio threshold, that is, when there are a preset number of consecutive reference-frame candidate lidar point clouds, then perform water surface echo filtering processing on each frame of the lidar point cloud to be processed based on the target water plane to obtain the target lidar point cloud.
[0093] In a possible implementation manner, it is possible to delete the transformed lidar points with vertical distance data within the vertical offset distance range in the transformed lidar point cloud after position transformation processing of each frame of the lidar point cloud to be processed based on the target water plane, that is, perform water surface echo filtering processing to obtain the target lidar point cloud. The specific deletion formula is as follows:
[0094] p clear_small n = p n \p wave_small n
[0095] p wave_small n = {p i n | ε final - 3δ final ≤ z i n ≤ ε final + 3δ final}
[0096] Wherein, p clear_small n can represent the target lidar point cloud corresponding to the nth-frame transformed lidar point cloud, P wave_small n can represent the water surface echo in the nth-frame transformed lidar point cloud, z i n can represent the z coordinate value corresponding to the ith candidate lidar point in the nth-frame candidate lidar point cloud, p i n can represent the ith transformed lidar point in the nth-frame transformed lidar point cloud, ε finalcan represent the average value of the z coordinates of the lidar point cloud to be processed corresponding to the target water plane, δ m can represent the standard deviation value of the z coordinates corresponding to the lidar point cloud to be processed corresponding to the target water plane for each frame.
[0097] If, in the process of determining whether the ratio of the number of candidate lidar points with vertical distance data within the vertical offset distance interval in the next frame of candidate lidar point cloud to the total number of candidate lidar points in the next frame of candidate lidar point cloud is greater than the preset ratio threshold, there is a frame in which the ratio of the number of candidate lidar points with vertical distance data within the vertical offset distance interval to the total number of candidate lidar points in the next frame of candidate lidar point cloud is less than the preset ratio threshold, the next frame of candidate lidar point cloud of this frame can be determined as any frame of candidate lidar point cloud, and S203 - S209 are repeated to perform water surface echo filtering processing on each frame of lidar point cloud to be processed based on the target water plane, and the target lidar point cloud is obtained.
[0098] By using the lidar point cloud processing method provided in the embodiments of the present application, by sorting the normal vectors corresponding to each candidate lidar point according to the shape of the wave and selecting any three lidar points located in the middle position therefrom to construct a candidate water plane, the number of lidar points participating in the operation can be reduced, the convergence speed can be increased, and the efficiency of filtering water surface echoes can be improved. Determining the target water plane according to the sample points in the water plane determined by the distance between each candidate lidar point and the candidate water plane in any frame of candidate lidar point cloud and the vertical offset distance interval determined based on the linear theory of wind-generated waves can improve the filtering accuracy of water surface echoes.
[0099] The embodiments of the present application also provide a lidar point cloud processing device Figure 4 is a schematic structural diagram of a lidar point cloud processing device provided in the embodiments of the present application, as Figure 4 shown, the lidar point cloud processing device may include:
[0100] An acquisition module 401, configured to acquire multiple frames of lidar point cloud to be processed, perform position transformation processing and screening processing on each frame of lidar point cloud to be processed in the multiple frames of lidar point cloud to be processed, and obtain multiple frames of candidate lidar point cloud;
[0101] A first determination module 403, configured to, for any frame of candidate lidar point cloud in the multiple frames of candidate lidar point cloud, construct a candidate water plane based on the position data of any three candidate lidar points in any frame of candidate lidar point cloud, and determine the distance between each candidate lidar point in any frame of candidate lidar point cloud and the candidate water plane;
[0102] A loop module 405, configured to execute the step of constructing a candidate water plane when the number of candidate lidar points with a distance less than a preset distance threshold from the candidate water plane in any frame of candidate lidar point cloud is less than a preset number threshold, until the number of candidate lidar points with a distance less than the preset distance threshold from the candidate water plane in any frame of candidate lidar point cloud is greater than the preset number threshold within a preset number of loops, so as to obtain a target water plane corresponding to any frame of candidate lidar point cloud;
[0103] A second determination module 407, configured to determine a vertical offset distance interval corresponding to any frame of candidate lidar point cloud according to the position data of each candidate lidar point in any frame of candidate lidar point cloud;
[0104] A filtering module 409, configured to perform surface echo filtering processing on each frame of lidar point cloud to be processed based on the target water plane when there are a preset number of consecutive reference frame candidate lidar point clouds in multiple frames of candidate lidar point clouds, so as to obtain a target lidar point cloud; the ratio of the number of reference candidate lidar points to the total number of candidate lidar points in the reference frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval.
[0105] In some possible implementation manners, an acquisition module is configured to acquire multiple frames of lidar point clouds to be processed;
[0106] According to the product of the position data of each frame of lidar point cloud to be processed and preset transformation data, obtain a transformed lidar point cloud after position transformation processing for each frame of lidar point cloud to be processed;
[0107] For each transformed lidar point in each frame of transformed lidar point cloud, determine a candidate lidar point cloud after screening processing of the transformed lidar point cloud for the transformed lidar points with vertical distance data within a vertical reference distance interval and horizontal distance data less than a horizontal reference distance, so as to obtain multiple frames of candidate lidar point clouds.
[0108] In some possible implementation manners, the steps of the vertical reference distance interval and the horizontal reference distance include:
[0109] Determine a vertical reference distance according to the difference between the preset installation height of the lidar and the average draft depth of the ship; the average draft depth of the ship is the average value of the sum of the light draft depth and the full load draft depth of the ship;
[0110] Determine a vertical reference distance interval according to the sum value of the vertical reference distance and a preset offset threshold;
[0111] Determine a horizontal reference distance according to the ratio of the vertical reference distance to a preset incident angle.
[0112] In some possible embodiments, a first determination module is configured to perform a sorting process on the normal vectors corresponding to each candidate lidar point in any one of a plurality of frames of candidate lidar point clouds, to obtain a first reference normal vector and a second reference normal vector; the first reference normal vector is the maximum value among the normal vectors corresponding to the candidate lidar points in any one of the candidate lidar point clouds, and the second reference normal vector is the minimum value among the normal vectors corresponding to the candidate lidar points in any one of the candidate lidar point clouds;
[0113] Determine a reference normal vector interval according to the sum value of the first reference normal vector and the second reference normal vector;
[0114] Construct a candidate water body plane based on the position data of any three candidate lidar points in any one of the candidate lidar point clouds whose normal vectors are within the reference normal vector interval.
[0115] In some possible embodiments, a second determination module is configured to determine the average vertical distance and the standard deviation of the vertical distance corresponding to any one of the candidate lidar point clouds according to the position data of each candidate lidar point in any one of the candidate lidar point clouds;
[0116] Determine the vertical offset distance interval corresponding to any one of the candidate lidar point clouds according to the difference between the average vertical distance and the standard deviation of the vertical distance corresponding to any one of the candidate lidar point clouds.
[0117] In some possible embodiments, the above-mentioned lidar point cloud processing device further includes: a repetition module, which after determining the vertical offset distance interval corresponding to any one of the candidate lidar point clouds according to the position data of each candidate lidar point in any one of the candidate lidar point clouds, further includes:
[0118] When there is a target frame of candidate lidar point cloud among the multiple frames of candidate lidar point clouds, perform the step of constructing a candidate water body plane on the next frame of candidate lidar point cloud of the target frame of lidar candidate point cloud, until the number of candidate lidar points in the next frame of candidate lidar point cloud whose distance from the candidate water body plane is less than a preset distance threshold is greater than a preset number threshold, to obtain the target water body plane corresponding to the next frame of candidate lidar point cloud;
[0119] Determine the vertical offset distance interval corresponding to the next frame of candidate lidar point cloud according to the position data of each candidate lidar point in the next frame of candidate lidar point cloud;
[0120] When there are a preset number of consecutive reference frame candidate lidar point clouds in multiple frames of candidate lidar point clouds, water surface echo filtering processing is performed on each frame of lidar point cloud to be processed based on the target water plane to obtain the target lidar point cloud; the ratio of the number of reference lidar candidate points in the reference frame candidate lidar point cloud to the total number of candidate lidar points in the reference frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval.
[0121] The device and method embodiments in this application are based on the same application concept.
[0122] An embodiment of this application provides an electronic device, which includes a processor and a memory. At least one instruction or at least one program segment is stored in the memory, and the at least one instruction or the at least one program segment is loaded and executed by the processor to implement the method for processing lidar point clouds provided in the above method embodiment.
[0123] Figure 5 It is a schematic diagram of the hardware structure of an electronic device for implementing the method for processing lidar point clouds provided in the embodiments of this application. The electronic device can participate in forming or include the device for processing lidar point clouds provided in the embodiments of this application. As Figure 5 shown, the electronic device can include one or more processors 501 (501a and 501b are shown in the figure) (the processor 501 can include, but is not limited to, a microprocessor 501MCU or a programmable logic device FPGA, etc.), a memory 503 for storing data, and a transmission device 505 for communication functions. In addition, it can also include: a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which can be included as one of the ports of the I / O interface), a network interface, and / or a power supply. Those of ordinary skill in the art can understand that Figure 5 the structure shown is only schematic and does not limit the structure of the above electronic device. For example, the electronic device can also include more or fewer components than Figure 5 shown, or have a different configuration from Figure 5 shown.
[0124] It should be noted that one or more of the above-mentioned processors 501 and / or other data processing circuits can generally be referred to as "data processing circuits" in this application. The data processing circuit can be embodied in software, hardware, firmware, or any combination thereof, in whole or in part. In addition, the data processing circuit can be a single independent processing module, or be incorporated in whole or in part into any one of other components in an electronic device (or a mobile device). As involved in the embodiments of this application, the data processing circuit, as a processor 501, controls (such as the selection of a variable resistance terminal path connected to an interface).
[0125] The memory 503 can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the method for processing lidar point clouds in the embodiments of this application. The processor 501 runs the software programs and modules stored in the memory 503 to execute various functional applications and data processing, that is, to implement the above-mentioned method for processing lidar point clouds. The memory 503 can include a high-speed random access memory, and can also include a non-volatile random access memory 503, such as one or more magnetic storage devices, flash memories, or other non-volatile solid-state memories 503. In some possible embodiments, the memory 503 can further include a memory 503 that is remotely located relative to the processing unit, and these remote memories 503 can be connected to the electronic device through a network. Examples of the above-mentioned network include but are not limited to the Internet, an enterprise intranet, a local area network, a mobile communication network, and combinations thereof.
[0126] The transmission device 505 is used to receive or send data via a network. Specific examples of the above-mentioned network can include a wireless network provided by a communication provider of the electronic device. In one example, the transmission device 505 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices through a base station and thus communicate with the Internet. In one example, the transmission device 505 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0127] The display can be, for example, a touch-screen liquid crystal display (LED), which enables a user to interact with the user interface of the electronic device (or mobile device).
[0128] The embodiments of this application provide a computer-readable storage medium, which can be disposed in an electronic device to store at least one instruction or at least one segment of a program related to implementing the method for processing lidar point clouds in the method embodiments. The at least one instruction or the at least one segment of the program is loaded and executed by the processor to implement the method for processing lidar point clouds provided in the above method embodiments.
[0129] Optionally, in this embodiment, the above storage medium may be located in at least one of multiple network servers of a computer network. Optionally, in this embodiment, the above storage medium may include, but is not limited to: various media that can store program codes such as USB flash drives, read-only memories (ROMs), random access memories (RAMs), mobile hard disks, magnetic disks, or optical discs.
[0130] It should be noted that: the above sequence of the embodiments of the present application is only for description and does not represent the superiority or inferiority of the embodiments. Moreover, the above description of specific embodiments in this specification is provided, and other embodiments are also within the scope of the appended claims. In some cases, the actions or steps recited in the claims can be executed in the order of different embodiments and can achieve the expected results. Additionally, the processes depicted in the drawings do not necessarily require a specific order or connection order to achieve the desired results. In certain embodiments, multi-task parallel processing is also possible or may be advantageous.
[0131] Each embodiment in this specification is described in a progressive manner. For the same or similar parts among the embodiments, reference can be made to each other. Each embodiment focuses on the differences from other embodiments. In particular, for the embodiments of the device and the electronic device, since they are based on the method embodiments and are similar, the description is relatively simple. For the relevant parts, reference can be made to the partial description of the method embodiments.
[0132] The above is the preferred embodiment of the present invention. It should be noted that for those of ordinary skill in the art, without departing from the principle of the present invention, several improvements and refinements can be made, and these improvements and refinements are also regarded as the protection scope of the present invention.
Claims
1. A method for processing lidar point clouds, characterized in that, it includes: Obtain multiple frames of lidar point clouds to be processed, perform position transformation processing and screening processing on each frame of lidar point cloud to be processed in the multiple frames of lidar point clouds to be processed, and obtain multiple frames of candidate lidar point clouds; For any one frame of candidate lidar point cloud in the multiple frames of candidate lidar point clouds, construct a candidate water body plane based on the position data of any three candidate lidar points in the any one frame of candidate lidar point cloud, and determine the distance between each candidate lidar point in the any one frame of candidate lidar point cloud and the candidate water body plane; When the number of candidate lidar points with a distance less than a preset distance threshold from the candidate water body plane in the any one frame of candidate lidar point cloud is less than a preset number threshold, execute the step of constructing the candidate water body plane until the number of candidate lidar points with a distance less than the preset distance threshold from the candidate water body plane in the any one frame of candidate lidar point cloud is greater than the preset number threshold within a preset number of loops, and obtain the target water body plane corresponding to the any one frame of candidate lidar point cloud; Determine the vertical offset distance interval corresponding to the any one frame of candidate lidar point cloud according to the position data of each candidate lidar point in the any one frame of candidate lidar point cloud; When there are a preset number of consecutive reference frame candidate lidar point clouds in the multiple frames of candidate lidar point clouds, perform surface echo filtering processing on each frame of lidar point cloud to be processed based on the target water body plane to obtain target lidar point clouds; the ratio of the number of reference candidate lidar points to the total number of candidate lidar points in the reference frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval.
2. The method according to claim 1, characterized in that, the step of obtaining multiple frames of lidar point clouds to be processed, performing position transformation processing and screening processing on each frame of lidar point cloud to be processed in the multiple frames of lidar point clouds to be processed, and obtaining multiple frames of candidate lidar point clouds includes: Obtain multiple frames of lidar point clouds to be processed; Obtain the transformed lidar point cloud after position transformation processing of each frame of lidar point cloud to be processed according to the product of the position data of each frame of lidar point cloud to be processed and preset transformation data; For each transformed lidar point in each frame of the transformed lidar point cloud, determine the transformed lidar point with vertical distance data within the vertical reference distance interval and horizontal distance data less than the horizontal reference distance as the candidate lidar point cloud after screening processing of the transformed lidar point cloud, and obtain multiple frames of candidate lidar point clouds.
3. The method according to claim 2, characterized in that, the steps of the vertical reference distance interval and the horizontal reference distance include: Determine the vertical reference distance according to the difference between the preset installation height of the lidar and the average draft depth of the vessel; the average draft depth of the vessel is the mean value of the sum of the light draft depth and the full load draft depth of the vessel; Determine the vertical reference distance interval according to the sum value of the vertical reference distance and the preset offset threshold; Determine the horizontal reference distance according to the ratio of the vertical reference distance to the preset incident angle.
4. The method according to claim 1, wherein, For any one of the multiple frames of candidate lidar point clouds, constructing a candidate water body plane based on the position data of any three candidate lidar points in the any one of the candidate lidar point clouds includes: For any one of the multiple frames of candidate lidar point clouds, perform sorting processing on the normal vectors corresponding to each candidate lidar point in the any one of the candidate lidar point clouds to obtain a first reference normal vector and a second reference normal vector; the first reference normal vector is the maximum value among the normal vectors corresponding to the candidate lidar points in the any one of the candidate lidar point clouds, and the second reference normal vector is the minimum value among the normal vectors corresponding to the candidate lidar points in the any one of the candidate lidar point clouds; Determine a reference normal vector interval according to the sum value of the first reference normal vector and the second reference normal vector; Construct a candidate water body plane based on the position data of any three candidate lidar points in the any one of the candidate lidar point clouds whose normal vectors are within the reference normal vector interval.
5. The method according to claim 1, wherein, After determining the vertical offset distance interval corresponding to the any one of the candidate lidar point clouds according to the position data of each candidate lidar point in the any one of the candidate lidar point clouds, it further includes: Determine the vertical distance mean value and the vertical distance standard deviation value corresponding to the any one of the candidate lidar point clouds according to the position data of each candidate lidar point in the any one of the candidate lidar point clouds; Determine the vertical offset distance interval corresponding to the any one of the candidate lidar point clouds according to the difference between the vertical distance mean value corresponding to the any one of the candidate lidar point clouds and the vertical distance standard deviation value.
6. The method according to claim 1, wherein, After determining the vertical offset distance interval corresponding to the any one of the candidate lidar point clouds according to the position data of each candidate lidar point in the any one of the candidate lidar point clouds, it further includes: When there is a target frame of candidate lidar point cloud among the multiple frames of candidate lidar point clouds, perform the step of constructing a candidate water body plane on the next frame of candidate lidar point cloud of the target frame of lidar candidate point cloud until the number of candidate lidar points whose distance from the candidate water body plane in the next frame of candidate lidar point cloud is less than the preset distance threshold is greater than the preset number threshold within the preset number of loops, and obtain the target water body plane corresponding to the next frame of candidate lidar point cloud; Determine a vertical offset distance interval corresponding to the next-frame candidate lidar point cloud according to the position data of each candidate lidar point in the next-frame candidate lidar point cloud; When there are a preset number of consecutive reference-frame candidate lidar point clouds in the multi-frame candidate lidar point clouds, perform water surface echo filtering processing on each frame of lidar point cloud to be processed based on the target water plane to obtain a target lidar point cloud; the ratio of the number of reference lidar candidate points in the reference-frame candidate lidar point cloud to the total number of candidate lidar points in the reference-frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval.
7. A processing device for lidar point clouds Characterized in that It includes: An acquisition module, configured to acquire multi-frame lidar point clouds to be processed, perform position transformation processing and screening processing on each frame of lidar point cloud to be processed in the multi-frame lidar point clouds to be processed, and obtain multi-frame candidate lidar point clouds; A first determination module, configured to, for any one frame of candidate lidar point cloud in the multi-frame candidate lidar point clouds, construct a candidate water plane based on the position data of any three candidate lidar points in the any one frame of candidate lidar point cloud, and determine the distance between each candidate lidar point in the any one frame of candidate lidar point cloud and the candidate water plane; A loop module, configured to, when the number of candidate lidar points with a distance less than a preset distance threshold from the candidate water plane in any one frame of candidate lidar point cloud is less than a preset number threshold, execute the step of constructing the candidate water plane until the number of candidate lidar points with a distance less than the preset distance threshold from the candidate water plane in any one frame of candidate lidar point cloud is greater than the preset number threshold within a preset number of loops, and obtain the target water plane corresponding to the any one frame of candidate lidar point cloud; A second determination module, configured to determine a vertical offset distance interval corresponding to any one frame of candidate lidar point cloud according to the position data of each candidate lidar point in the any one frame of candidate lidar point cloud; A filtering module, configured to, when there are a preset number of consecutive reference-frame candidate lidar point clouds in the multi-frame candidate lidar point clouds, perform water surface echo filtering processing on each frame of lidar point cloud to be processed based on the target water plane to obtain a target lidar point cloud; the ratio of the number of reference candidate lidar points in the reference-frame candidate lidar point cloud to the total number of candidate lidar points in the reference-frame candidate lidar point cloud is greater than a preset ratio threshold, and the vertical distance data of the reference candidate lidar points is within the vertical offset distance interval.
8. An electronic device Characterized in that The electronic device includes a processor and a memory, and at least one instruction or at least one program segment is stored in the memory, and the at least one instruction or the at least one program segment is loaded and executed by the processor to implement the lidar point cloud processing method according to any one of claims 1-6.
9. A computer storage medium, characterized in that, at least one instruction or at least one program segment is stored in the storage medium, and the at least one instruction or at least one program segment is loaded and executed by a processor to implement the method for processing lidar point cloud according to any one of claims 1-6.
10. A computer program product, characterized in that, the computer program product includes at least one instruction or at least one program segment, and the at least one instruction or the at least one program segment is loaded and executed by a processor to implement the method for processing lidar point cloud according to any one of claims 1-6.
Citation Information
Patent Citations
Method for extracting contour line of water body via point cloud data of LiDAR
CN105825506A
Laboratory two-dimensional wave surface measuring device and system based on laser radar and monitoring method
CN113391325A