Point cloud cylinder segmentation processing method and apparatus, and electronic device

By obtaining the neighbor points and normal vectors of sample points in the point cloud, combined with the improved DBSCAN algorithm and normal weighting function, the problems of plane under-segmentation and over-segmentation in point cloud cylindrical segmentation are solved, achieving higher segmentation precision and accuracy.

WO2025200521A1PCT designated stage Publication Date: 2025-10-02CHINA TELECOM BESTPAY CO LTD

Patent Information

Application Number
PCT/CN2024/135551
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-29
Filing Date
2024-11-29
Publication Date
2025-10-02

AI Technical Summary

Technical Problem

Existing point cloud cylindrical segmentation methods are prone to problems such as plane under-segmentation, over-segmentation, and inaccurate segmentation accuracy.

Method used

By obtaining the neighbor points of multiple sample points in the point cloud of the target object, calculating the normal vectors of the sample points, and performing clustering based on the normal vectors, the improved DBSCAN algorithm and the normal weighting function are combined to perform cylinder segmentation.

Benefits of technology

The precision and accuracy of point cloud cylindrical segmentation are improved, the under-segmentation and over-segmentation of planes are reduced, and the segmentation effect is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024135551_02102025_PF_FP_ABST
    Figure CN2024135551_02102025_PF_FP_ABST
Patent Text Reader

Abstract

A point cloud cylinder segmentation processing method and apparatus, and an electronic device. The present invention relates to the technical field of computers, and in particular, to the technical field of three-dimensional point cloud segmentation. The method comprises: acquiring a plurality of sample points comprised in a point cloud corresponding to a target object; determining neighbor points of the plurality of sample points within respective preset neighborhood ranges; on the basis of the neighbor points of the plurality of sample points within respective preset neighborhood ranges, obtaining normal vectors respectively corresponding to the plurality of sample points; performing clustering processing on the plurality of sample points on the basis of the normal vectors respectively corresponding to the plurality of sample points to obtain a clustering result; and performing cylinder segmentation on the target object on the basis of the clustering result to obtain a cylinder segmentation result of the target object.
Need to check novelty before this filing date? Find Prior Art

Description

Point cloud cylindrical segmentation processing method, device and electronic equipment

[0001] Related applications

[0002] This application claims priority to Chinese patent application number 2024103798958, filed on March 29, 2024, entitled “Point cloud cylindrical segmentation processing method, device and electronic device”, the entire text of which is hereby incorporated by reference. Technical Field

[0003] The present disclosure relates to the field of computer technology, in particular to the field of three-dimensional point cloud segmentation technology, and specifically to a point cloud cylindrical segmentation processing method, device and electronic equipment. Background Art

[0004] Point cloud segmentation technology is to divide point cloud data. Usually, point cloud data in the same divided area have similar characteristic attributes (such as geometric features, texture features, etc.), and are often used in fields such as three-dimensional model reconstruction, autonomous driving, and virtual reality. In realizing the reconstruction of smart city three-dimensional models, buildings are the basic components of the city. Studying their structural characteristics and effectively segmenting them is an important basis for subsequent three-dimensional model reconstruction. Among them, the columns and beams in the buildings are the basic cylindrical units, and it is necessary to improve their segmentation efficiency and accuracy. Some point cloud cylindrical segmentation methods in related technologies, such as clustering-based point cloud cylindrical segmentation methods, mainly perform cylindrical segmentation by directly clustering all sample points included in the point cloud corresponding to the building. However, the above methods are prone to problems such as plane under-segmentation, over-segmentation, and inaccurate segmentation accuracy. Summary of the Invention

[0005] The embodiments of the present disclosure provide a method, device and electronic device for processing point cloud cylindrical segmentation, so as to at least solve the technical problem that the point cloud cylindrical segmentation method in the related art does not take comprehensive factors into consideration, which easily leads to plane under-segmentation, over-segmentation and inaccurate segmentation accuracy.

[0006] According to one aspect of an embodiment of the present disclosure, a method for cylindrical segmentation of a point cloud is provided, comprising: obtaining a plurality of sample points included in a point cloud corresponding to a target object; determining neighbor points of the plurality of sample points within a corresponding preset neighborhood range; obtaining normal vectors corresponding to the plurality of sample points based on the neighbor points of the plurality of sample points within the corresponding preset neighborhood range; clustering the plurality of sample points based on the normal vectors corresponding to the plurality of sample points to obtain a clustering result; and performing cylindrical segmentation on the target object based on the clustering result to obtain a cylindrical segmentation result of the target object.

[0007] According to another aspect of an embodiment of the present disclosure, a point cloud cylindrical segmentation processing device is further provided, including: a sample point acquisition module, used to acquire multiple sample points included in a point cloud corresponding to a target object; a neighbor point determination module, used to determine the neighbor points of the multiple sample points within the corresponding preset neighborhood range; a normal vector determination module, used to obtain the normal vectors corresponding to the multiple sample points based on the neighbor points of the multiple sample points within the corresponding preset neighborhood range; a clustering module, used to cluster the multiple sample points according to the normal vectors corresponding to the multiple sample points to obtain a clustering result; and a cylindrical segmentation module, used to perform cylindrical segmentation on the target object based on the clustering result to obtain a cylindrical segmentation result of the target object.

[0008] According to another aspect of an embodiment of the present disclosure, an electronic device is also provided, comprising one or more processors and a memory, wherein the memory is used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement any one of the point cloud cylindrical segmentation processing methods.

[0009] In an embodiment of the present disclosure, a plurality of sample points included in a point cloud corresponding to a target object are obtained; neighbor points of the plurality of sample points within a corresponding preset neighborhood are determined; normal vectors corresponding to the plurality of sample points are obtained based on the neighbor points of the plurality of sample points within the corresponding preset neighborhood; the plurality of sample points are clustered according to the normal vectors corresponding to the plurality of sample points to obtain a clustering result; and the target object is cylindrically segmented based on the clustering result to obtain a cylindrical segmentation result of the target object. This achieves the purpose of clustering the sample points based on the neighbor point information of each sample point in the point cloud corresponding to the target object in combination with the normal vector, and performing point cloud segmentation according to the clustering result, thereby achieving the technical effect of improving the precision and accuracy of cylindrical segmentation of three-dimensional point clouds, and further solving the technical problem that the cylindrical segmentation method of point clouds in the related art does not fully consider factors, which easily leads to under-segmentation, over-segmentation and inaccurate segmentation accuracy of the plane. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The drawings described herein are used to provide a further understanding of the present disclosure and constitute a part of this application. The illustrative embodiments of the present disclosure and their descriptions are used to explain the present disclosure and do not constitute an improper limitation of the present disclosure. In the drawings:

[0011] FIG1 is a flow chart of a method for processing a point cloud cylindrical surface segmentation according to an embodiment of the present disclosure;

[0012] FIG2 is a flow chart of an optional point cloud cylindrical segmentation processing method according to an embodiment of the present disclosure;

[0013] FIG3 is a schematic diagram of a point cloud cylindrical segmentation processing device according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0014] In order to enable those skilled in the art to better understand the solutions of the present disclosure, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the embodiments described are only part of the embodiments of the present disclosure, not all of the embodiments. Based on the embodiments of the present disclosure, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of the present disclosure.

[0015] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchanged where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0016] First, to facilitate understanding of the embodiments of the present disclosure, some of the terms or nouns involved in the present disclosure are explained below:

[0017] The normal weight function is a function used to adjust data weights, commonly used in statistics and machine learning. It is based on the shape of the normal distribution, giving higher weights to values ​​near the center of the data distribution and lower weights to values ​​far from the center.

[0018] DBSCAN (Density-Based Spatial Clustering of Applications with Noise) is a density-based spatial clustering algorithm. It can discover clusters of arbitrary shapes by finding high-density areas and connecting them into clusters. The basic idea of ​​the DBSCAN algorithm is that for each data point, the number of data points (density) in its neighborhood is calculated to determine whether it is a core point, a boundary point, or a noise point. A core point refers to a point that contains a sufficient number of data points in its neighborhood to guide the formation of a cluster; a boundary point refers to a point that is in the neighborhood of other core points but is not large enough to form its own cluster, but can be classified into a certain cluster; and a noise point refers to a point that does not belong to any cluster.

[0019] Jacobian is a determinant with n partial derivatives of n-variable functions as elements. It is mainly used for solving problems in linear algebra. It is a scalar value representing the partial derivatives of a multivariate function, and can also be said to be a polynomial function.

[0020] According to an embodiment of the present disclosure, an embodiment of a method for point cloud cylindrical segmentation processing is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0021] FIG1 is a flow chart of a method for processing a point cloud cylindrical surface segmentation according to an embodiment of the present disclosure. As shown in FIG1 , the method includes the following steps:

[0022] Step S102: Acquire a plurality of sample points included in the point cloud corresponding to the target object.

[0023] Optionally, the target object may be a building, and a laser scanner may be used to scan the target object to obtain a point cloud corresponding to the target object. Furthermore, a clustering method based on point cloud density may be used to extract points related to the target object from the point cloud data corresponding to the target object to obtain multiple sample points.

[0024] Step S104: determining neighboring points of the plurality of sample points within corresponding preset neighborhood ranges.

[0025] Optionally, the preset neighborhood range can be a k-neighborhood range of the corresponding sample point. The k-neighborhood range is the area surrounding the corresponding sample point, which includes the k nearest neighboring points to the corresponding sample point. By setting the preset neighborhood range to the k-neighborhood range, it is possible to ensure that each sample point has the same number of corresponding neighboring points, facilitating subsequent fitting of the corresponding normal vector of the sample point and avoiding deviations in the normal vector calculation results due to different numbers of neighboring points.

[0026] Step S106 : obtaining normal vectors corresponding to the plurality of sample points based on the neighboring points of the plurality of sample points within the corresponding preset neighborhood ranges.

[0027] Optionally, the normal vectors corresponding to the multiple sample points are normal vectors of the corresponding sample points in the three-dimensional point cloud coordinate system, which are used to indicate the orientation information of the corresponding sample points in the point cloud plane corresponding to the target object. The normal vector is obtained by fitting based on the information of the neighboring points within the corresponding preset neighborhood range. When the normal vector of the corresponding sample point is obtained by fitting the neighboring points within the preset neighborhood range, the detailed information of the surrounding environment of the corresponding sample point is taken into account. By fitting the distribution of these neighboring points, the geometric structure of the local area of ​​the corresponding sample point can be more accurately reflected. The normal vector of the sample point obtained in the above manner represents the local normal information of the sample point, and also provides key geometric features for the subsequent point cloud cylindrical segmentation task.

[0028] In an optional embodiment, based on the neighbor points of the multiple sample points within the corresponding preset neighborhood range, normal vectors corresponding to the multiple sample points are obtained, including: based on the neighbor points of the multiple sample points within the corresponding preset neighborhood range, fitting functions corresponding to the multiple sample points are constructed, wherein the fitting function is used to indicate the correlation between the normal vector of the corresponding sample point and the neighbor points within the corresponding preset neighborhood range; based on the fitting function, fitting function values ​​corresponding to the multiple sample points are determined; based on the fitting function values ​​corresponding to the multiple sample points, target functions corresponding to the multiple sample points are constructed, wherein the target function is used to indicate the minimum weighted average sum between the fitting function value of the corresponding sample point and the corresponding neighbor points; and the target functions corresponding to the multiple sample points are solved to obtain the normal vectors corresponding to the multiple sample points.

[0029] Optionally, the fitting function is used to indicate the normal vector of the corresponding sample point and the correlation relationship between it and the neighbor points within the corresponding preset neighborhood range, and can also reflect the point cloud distribution characteristics within the neighborhood range of the corresponding sample point. By setting the objective function to the fitting function value of the corresponding sample point and the weighted average and minimum between the corresponding neighbor points, the local fitting plane within the preset neighborhood range of the corresponding sample point can be made more accurate. On this basis, the objective function is solved, and the normal vector of the corresponding sample point obtained can also better reflect the local normal information of each sample point, and thus better reflect the orientation information of each sample point in the point cloud plane corresponding to the target object.

[0030] Optionally, multiple sample points can be used as current sample points, and the fitting functions f corresponding to the multiple sample points can be constructed in the following way: x :

[0031] In the formula, x represents the current sample point, is the neighbor point in the k neighborhood of the current sample point, a(x)=[a1(x),a2(x),…,a m (x)] Trepresents the matrix of unknown coefficients, Represents the basis function, j = 1, 2, ..., m is the number of preset basis function items. Since the point cloud data belongs to the three-dimensional space, the first-order form of the basis function is p(x) = [1, x i ,y i ,z i ] T , then f x Can be rewritten as: f x =a1(x)+x i a2(x)+y i a3(x)+z i a4(x)

[0032] Where x i Represents the neighbor point at position i in the k-neighborhood of the current sample point, y i Indicates that the neighbor point is The horizontal axis value at z i Indicates that the neighbor point is The vertical axis value at .

[0033] In an optional embodiment, based on the fitting function values ​​corresponding to the multiple sample points, objective functions corresponding to the multiple sample points are constructed, including: taking the multiple sample points as current sample points, and obtaining the objective functions corresponding to the multiple sample points in the following manner: determining multiple neighbor points of the current sample point within a corresponding preset neighborhood range; calculating the relative distances between the multiple neighbor points and the current sample point; determining the weight values ​​corresponding to the multiple neighbor points based on the relative distances between the multiple neighbor points and the current sample point; and constructing the objective function of the current sample point based on the fitting function value corresponding to the current sample point and the weight values ​​corresponding to the multiple neighbor points.

[0034] Optionally, the objective function is used to indicate the minimum weighted average sum of the fitting function value of the corresponding sample point and the corresponding neighboring points. When constructing the objective function, the relative distances between the fitting function value of the corresponding sample point and each neighboring point are calculated, and the objective function is constructed by weighted summation of the relative distances. The weight values ​​corresponding to each neighboring point can be determined based on, but are not limited to, a normal weighting function to improve the local plane fitting performance and smoothness. The normal vector of the sample point obtained on this basis is also more accurate and reliable.

[0035] Optionally, to obtain the precise local plane of the current sample point, it is necessary to minimize the weighted average sum of the values ​​of the neighboring points in the local area of ​​the current sample point and the fitting function value, that is, to minimize the Jacobian determinant of the functional. Set the objective function as follows:

[0036] In the formula, w(||xx i ||) represents the neighbor point x i The weight function, ||xx i || represents the current sample point x and the neighbor point x i where n represents the number of neighboring points in the neighborhood (i.e., k neighborhood) affected by the current sample point x, and J represents the function value corresponding to the objective function.

[0037] When solving the objective function, first take the derivative of J and let J can obtain the minimum value, and the undetermined coefficient matrix a(x) can be obtained as: a(x)=(BWB T ) -1 BW

[0038] Where B is the quadratic basis function matrix, W represents the n×n diagonal matrix of the weight function, y=[y1,y1,…,y n ] T .

[0039] In an optional embodiment, based on the relative distances between the multiple neighboring points and the current sample point, respectively, determining the weight values ​​corresponding to the multiple neighboring points includes: using the multiple neighboring points as target neighboring points, and obtaining the weight values ​​corresponding to the multiple neighboring points by the following method:

[0040] Among them, x represents the current sample point, x i represents the target neighbor point, i represents the identifier of the target neighbor point, w(||xx i ||) represents the weight value corresponding to the target neighbor point, ||xx i || represents the relative distance between the target neighbor point and the current sample point, and σ represents the preset shape parameter of the current sample point in the corresponding preset neighborhood range.

[0041] Optionally, the relative distances from multiple neighboring points to the current sample point can reflect the relative positional information between each neighboring point and the sample point. A larger relative distance indicates that the neighboring point is farther from the corresponding sample point; a smaller relative distance indicates that the neighboring point is closer to the corresponding sample point. Therefore, when determining the weights corresponding to multiple neighboring points, it is necessary to consider the relative distances from the current sample point. By using the above method, the normal weighting function is set to 0 for relative distances greater than 1, thereby reducing the impact of noise points on the local plane fitting.

[0042] Step S108 : performing clustering processing on the multiple sample points according to the normal vectors corresponding to the multiple sample points to obtain a clustering result.

[0043] Optionally, the normal vector can reflect the orientation information of the corresponding sample point in the point cloud plane corresponding to the target object. According to the normal vectors corresponding to multiple sample points, the clustering radius can be corrected. The clustering radius obtained based on the correction of the normal vector of the sample point is used to cluster multiple sample points. The obtained clustering result can not only reflect the distribution of each sample point, but also be more accurate and reliable in combination with the orientation information of the sample points.

[0044] In an optional embodiment, clustering is performed on the multiple sample points according to the normal vectors corresponding to the multiple sample points to obtain clustering results, including: calculating the Euclidean distances between the multiple sample points and the core point; calculating the cosine values ​​between the normal vectors corresponding to the multiple sample points and the normal vector of the core point to obtain the cosine values ​​corresponding to the multiple sample points, wherein the core point is the cluster center obtained by performing clustering; based on the Euclidean distances between the multiple sample points and the core point, and the cosine values ​​corresponding to the multiple sample points, a preset initial clustering radius is corrected to obtain target clustering radii corresponding to the multiple sample points, wherein the target clustering radius is used to determine the neighborhood range of the corresponding sample point; based on the target clustering radii corresponding to the multiple sample points, a density-based spatial clustering algorithm is used to cluster the multiple sample points to obtain clustering results.

[0045] Optionally, the core point is the cluster center obtained by performing clustering processing. By calculating the Euclidean distance between each sample point and the core point, the distance information between each sample point and the cluster center can be obtained; by calculating the cosine value between the normal vector corresponding to each sample point and the normal vector of the core point, the orientation deviation between each sample point and the cluster center can be obtained. Since the cylinder obtained by fitting the point cloud cylinder is arc-shaped, the points on the corresponding cylinder also have a certain orientation. Therefore, when correcting the cluster radius, the distance factor and the orientation factor between each sample point and the core point are taken into account at the same time. The consideration of factors is more comprehensive. On this basis, the cluster radius is corrected, and the target cluster radius obtained is more accurate and reliable. On this basis, the clustering result obtained based on the target cluster radius also has higher clustering accuracy.

[0046] Optionally, we can improve the radius parameter selection in the density-based spatial clustering DBSCAN algorithm and use the hyperbolic tangent function to combine normal vector information and spatial domain information to construct an adaptive radius threshold. This can achieve accurate segmentation for local neighborhood sample points that become sparser with distance and for invalid feature points at long distances. We can construct the following model to modify the cluster radius:

[0047] Among them, r eps is the initial cluster radius, r′ epsis the corrected cluster radius (i.e., target cluster radius), r i is the spherical radius of the seed point for searching the same cluster point, r0 is the model parameter value, ε is the cosine value of the normal vector of the current sample and the core point, d i is the Euclidean distance (relative distance) between the current sample point and the core point. The farther away from the core point, the more likely it is a noise point, and the smaller the corrected cluster radius. The more the normal vector deviates from the core point, the more likely it is a noise point, and the smaller the corrected cluster radius. Use the adaptive parameter r′ eps And the number of sample points in the neighborhood Minpts executes the original DBSCAN algorithm program, randomly selects a sample point p from the center of the sample point, and finds the r′ of the sample point eps The number of neighbor points in the neighborhood, and their distance r′ eps The set of neighbor points in the p Indicates that |N p | represents r′ of p eps The number of neighbor points in the neighborhood. If |N p |>Minpts, then p is a core point, and its neighboring points and p all belong to a cluster C; if a point is included in a cluster but is not a core point, it is called a boundary point; data points that do not belong to any cluster are called noise points. Then, unclassified points are added to C through continuous iteration. The newly added points are directly density-reachable with at least one point in C. When all points that are density-reachable with p are added to C, the expansion of C ends. Finally, the core point subset and clustering results are obtained, where the clustering results include at least one cluster, each cluster includes a core point (i.e., cluster center), and the neighboring points within the target cluster radius of the core point. The core point subset includes the core points in each cluster.

[0048] Step S110 , performing cylindrical segmentation on the target object based on the clustering result to obtain a cylindrical segmentation result of the target object.

[0049] Optionally, since the clustering result obtained by the above method has higher clustering accuracy, cylinder segmentation is performed based on the clustering result, and the obtained cylinder segmentation result is also more accurate and reliable.

[0050] In an optional embodiment, the clustering result includes multiple clusters, each of which includes a core point. The target object is cylindrically segmented based on the clustering result to obtain a cylindrical segmentation result of the target object, including: determining a target core point from the core points corresponding to the multiple clusters, and determining the neighbor point farthest from the target core point among the neighbor points within a preset neighborhood range corresponding to the target core point as the first neighbor point; obtaining a direction vector of the cylinder axis based on the normal vector of the target core point and the normal vector of the first neighbor point; constructing a first parameter line based on the target core point and the normal vector of the target core point; constructing a second parameter line based on the first neighbor point and the normal vector of the first neighbor point; constructing a projection plane based on the direction vector; determining the intersection of the first parameter line and the second parameter line on the projection plane, and taking the distance between the intersection and the target core point as the cylinder radius; performing cylinder fitting based on the target core point, the first neighbor point and the cylinder radius to obtain a target cylinder; performing cylinder segmentation on the target object based on the target cylinder to obtain a cylindrical segmentation result.

[0051] Optionally, a core point (hereinafter referred to as the target core point) is randomly selected from the central part of the point cloud data, and then a first neighbor point farthest from the target core point is selected from the k-neighborhood of the target core point, and the cosine similarity between the first neighbor point and the target core point is made lower than a certain threshold. First, the normal vectors n1 and n2 corresponding to the target core point and the first neighbor point are obtained, and the direction vector of the cylinder axis is established using n=n1×n2. Then, two parameter lines L1=P are constructed based on the target core point and the normal vectors n1 and n2. i +t·n1 and L2=P i +t·n2, project the two parameter lines onto the plane of n·x=0, and use the intersection of the two parameter lines on the projection plane as a point I on the cylinder axis. Finally, set the radius R as the target core point P i The distance between θ and θ is obtained by performing cylinder fitting based on the first neighbor point, the target core point, and the radius R to obtain the target cylinder.

[0052] It should be noted that when fitting a cylinder, two points on the cylinder and the cylinder radius are known to determine the cylinder radius. By selecting the core point and its farthest neighbor point to determine the cylinder radius and fitting the cylinder, we can ensure that the fitted cylinder covers as many neighbor points as possible within the neighborhood of the core point. This results in a more accurate and reliable fitted cylinder (i.e., the target cylinder).

[0053] In an optional embodiment, cylindrical segmentation is performed on the target object based on the target cylinder to obtain a cylindrical segmentation result, including: calculating the distances of multiple sample points to the target cylinder respectively; and when, among the multiple sample points, the number of sample points whose distances are within a preset distance range is greater than or equal to a predetermined number, performing cylindrical segmentation on the target object based on the target cylinder to obtain a cylindrical segmentation result.

[0054] Optionally, the preset distance range may be a range smaller than a predetermined distance value, and the predetermined distance value may be determined based on the average and standard deviation of the distances from multiple sample points to the target cylinder, and the sum of the average and standard deviation is used as the predetermined distance value.

[0055] Optionally, to ensure the best cylinder fitting effect, after fitting the target cylinder, it is necessary to further perform a validity test on the target cylinder. Specifically, the validity test is performed using the mean and standard deviation of the distance. Once the mathematical equation of the fitted target cylinder is determined, the distances from all sample points to the target cylinder can be calculated. Assume that the distance set composed of the distances from all sample points to the target cylinder is D = {d1, d2, ..., d n-2}, when the distance from the sample point to the target cylinder is greater than , it is considered an outlier, where is the mean value of D, and σ is the standard deviation of D. When more than 25% of the sample points are outliers, the fitted target cylinder is invalid. The above method ensures that the deviation between the fitted target cylinder and the actual point cloud of the target object is small, achieving high fitting accuracy.

[0056] In an optional embodiment, the method further includes: when, among multiple sample points, the number of sample points whose distances are within a preset distance range is less than a predetermined number, taking a core point other than the target core point among the core points corresponding to the multiple clusters as a first core point, and repeatedly performing the same operation as the target core point based on the first core point until the distances of the multiple sample points to the new target cylinder are all within the preset distance range; and performing cylinder segmentation on the target object based on the new target cylinder to obtain a cylinder segmentation result.

[0057] Optionally, if the target cylinder fails the validity check (i.e., if the number of sample points within a preset distance range is less than a predetermined number among multiple sample points), this indicates that the fitting effect of the target cylinder is poor. In this case, it is necessary to select a core point from the other core points to continue fitting the cylinder and determining the fitting plane. The specific operation is the same as for the target core point and will not be repeated here. By performing cylinder fitting for each core point in turn, the optimal cylinder fitting result can be obtained, thereby improving the cylinder fitting accuracy.

[0058] Optionally, when performing cylinder fitting, cylinder fitting can be performed separately based on the core points corresponding to each of the multiple clusters to obtain multiple fitted cylinders. Validation can then be performed on each of the multiple fitted cylinders by calculating the distances from multiple sample points to each cylinder. The cylinder with the largest number of sample points within a preset distance range among the multiple fitted cylinders is selected as the cylinder segmentation result. The fitting and validity verification methods for the multiple fitted cylinders are the same as those for the target cylinder described above and are not further described here.

[0059] Through the above steps S102 to S110, the purpose of clustering the sample points based on the neighbor point information of each sample point in the point cloud corresponding to the target object combined with the normal vector can be achieved, and the point cloud can be segmented according to the clustering results, thereby achieving the technical effect of improving the three-dimensional point cloud cylindrical segmentation precision and segmentation accuracy, and thus solving the technical problem that the point cloud cylindrical segmentation method in the related technology does not take into account comprehensive factors, which easily leads to plane under-segmentation, over-segmentation and inaccurate segmentation accuracy.

[0060] Based on the above embodiments and optional embodiments, the present disclosure proposes an optional implementation manner. FIG2 is a flowchart of an optional point cloud cylindrical segmentation processing method according to an embodiment of the present disclosure. As shown in FIG2 , the method includes:

[0061] S1. To solve the problem of discontinuity and non-smoothness in fitting the local plane using the least squares method, the embodiment of the present disclosure uses an improved moving least squares method to fit the local plane of the sample points, thereby calculating the normal vectors corresponding to the multiple sample points included in the point cloud corresponding to the building. The Gaussian function is discarded and the normal weighted function is selected to improve its fitting performance and smoothness. The normal weighted function with a relative distance greater than 1 is set to 0 to reduce the impact of noise points on the local plane fitting. The specific calculation method is: first, for each of the multiple sample points, the fitting function f is used. x , f x In a local area of ​​the current sample point, it can be approximately expressed as:

[0062] In the formula, x represents the current sample point, is the neighbor point in the k neighborhood of the current sample point, a(x)=[a1(x),a2(x),…,a m (x)] T represents the matrix of unknown coefficients, Represents the basis function, j = 1, 2, ..., m is the number of preset basis function items. Since the point cloud data belongs to the three-dimensional space, the first-order form of the basis function is p(x) = [1, x i ,y i ,z i ] T , then f xCan be rewritten as: f x =a1(x)+x i a2(x)+y i a3(x)+z i a4(x)

[0063] Where x i Represents the neighbor point at position i in the k-neighborhood of the current sample point, y i Indicates that the neighbor point is The horizontal axis value at z i Indicates that the neighbor point is To obtain the precise local plane of the current sample point, it is necessary to minimize the weighted average sum of the values ​​of the neighboring points in the local area of ​​the current sample point and the value of the fitting function, that is, to minimize the functional Jacobian. The objective function is set as follows:

[0064] In the formula, w(||xx i ||) represents the neighbor point x i The weight function, ||xx i || represents the current sample point x and the neighbor point x i where n represents the number of neighboring points in the neighborhood (i.e., k neighborhood) affected by the current sample point x, and J represents the function value corresponding to the objective function.

[0065] When solving the objective function, first take the derivative of J and let J can obtain the minimum value, and the undetermined coefficient matrix a(x) can be obtained as: a(x)=(BWB T ) -1 BW

[0066] Where B is the matrix of quadratic basis functions, W is the diagonal matrix of n×n weight functions, and y=[y1,y1,…,y n ] T .

[0067] The embodiment of the present disclosure uses a normal weighting function to enhance the smoothness and continuity of the local fitting plane, and its function expression is:

[0068] Where r = || xx i || / d m is the relative distance, d m is the preset radius of the influence domain, and σ is the shape parameter of the influence zone. Substituting the normal weighting function into the functional Jacobian formula, we can obtain the undetermined coefficient matrix a(x). The normal vector of the current sample point is a(x).

[0069] S2. Improve the selection of the radius parameter in the density-based spatial clustering DBSCAN algorithm. The disclosed embodiment uses the hyperbolic tangent function combined with normal vector information and spatial domain information to construct an adaptive radius threshold. This can achieve accurate segmentation for local neighborhood sample points that become sparser with increasing distance and for invalid feature points at long distances. The following form of clustering radius correction is constructed:

[0070] Among them, r eps is the initial cluster radius, r′ eps is the corrected cluster radius (i.e., target cluster radius), r i is the spherical radius of the seed point for searching the same cluster point, r0 is the model parameter value, ε is the cosine value of the normal vector of the current sample and the core point, d i is the Euclidean distance between the current sample point and the core point. The farther away from the core point, the more likely it is a noise point, and the smaller the corrected cluster radius. The more the normal vector points away from the core point, the more likely it is a noise point, and the smaller the corrected cluster radius. Use the adaptive parameter r′ eps And the number of sample points in the neighborhood Minpts executes the original DBSCAN algorithm program, randomly selects a sample point p from the center of the sample point, and finds the r′ of the sample point eps The number of neighbor points in the neighborhood, and their distance r′ eps The set of neighbor points in the p Indicates that |N p | represents r′ of p eps The number of neighbor points in the neighborhood. If |N p |>Minpts, then p is a core point, and its neighboring points and p all belong to a cluster C. If a point is included in a cluster but not a core point, it is called a boundary point. Data points that do not belong to any cluster are called noise points. Unclassified points are then added to C through continuous iteration. Newly added points must be directly density-reachable to at least one point in C. When all points density-reachable to p are added to C, the expansion of C is complete. Ultimately, a subset of core points and clustering results are obtained.

[0071] S3, select two sample points with normal vectors to fit the cylindrical model. The disclosed embodiment KNCN selects candidate points based on Euclidean distance and cosine threshold. Randomly select a core point (hereinafter referred to as the target core point) from the data center of the point cloud, and then select a first neighbor point farthest from the target core point from the k-neighborhood of the target core point, and make the cosine similarity between the first neighbor point and the target core point lower than a certain threshold. First, obtain the normal vectors n1 and n2 corresponding to the target core point and the first neighbor point respectively, and use n=n1×n2 to establish the direction vector of the cylinder axis, and then construct two parameter lines L1=P based on the target core point and the normal vectors n1 and n2. i +t·n1 and L2=P i +t·n2, project the two parameter lines onto the plane of n·x=0, and use the intersection of the two parameter lines on the projection plane as a point I on the cylinder axis. Finally, set the radius R as the target core point P i The distance between θ and θ is calculated. A cylinder is fitted based on the first neighbor point, the target core point, and the radius R to obtain a target cylinder. A validity check is performed on the fitted target cylinder. If the target cylinder obtained based on the target core point has no candidate points or fails the validity check, the next core point is determined.

[0072] S4, use the mean and standard deviation of the distance to perform validity detection. Once the mathematical equation of the fitted target cylinder is determined, the distances from all sample points to the target cylinder can be calculated. Assume that the distance set composed of the distances from all sample points to the target cylinder is D = {d1, d2, ..., d n-2}, when the distance from the sample point to the target cylinder is greater than , it is considered an outlier, where is the mean value of D, and σ is the standard deviation of D. When more than 25% of the sample points are outliers, it means that the target cylinder of this fitting is invalid.

[0073] S5: Obtain a valid fitting cylinder through the above process, and cluster the sample points in the entire dataset that are density-reachable with the seed point into a cluster, completing the clustering process. The requirements for sample points and seed points to form a cluster are: the sample points and seed points are density-reachable, and the distance from the sample points to the cylinder is less than δ.

[0074] In the disclosed embodiment, an improved moving least squares method is used to calculate the point cloud normal vector. A normal weighting function is added to the calculation process to increase the smoothness and continuity of the local fitted plane. Normal weights with relative distances greater than 1 are set to 0 to reduce the impact of noise points on the local plane fitting. A hyperbolic tangent function is used to combine normal vector information and spatial domain information to construct an adaptive radius threshold. This allows for precise segmentation of local neighborhood sample points that become increasingly sparse with distance, as well as invalid feature points at long distances. After preliminary clustering using DBSCAN, a cylinder is fitted using the two-point method, and the mean and variance of the distances from all sample points to the fitted cylinder are calculated to test the cylinder's validity. Unclassified point cloud data is then clustered according to the DBSCAN algorithm's clustering rules. This achieves the technical effect of improving the precision and accuracy of 3D point cloud cylinder segmentation, thereby resolving the technical problem that related point cloud cylinder segmentation methods, which fail to fully consider factors, can easily lead to under-segmentation, over-segmentation, and inaccurate segmentation accuracy.

[0075] In this embodiment, a point cloud cylindrical segmentation processing device is also provided. The device is used to implement the above-mentioned embodiments and preferred implementation methods. The details that have been described will not be repeated here. As used below, the terms "module" and "device" can be a combination of software and / or hardware that implements the predetermined functions. Although the devices described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and conceivable.

[0076] According to an embodiment of the present disclosure, an embodiment of a device for implementing the above-mentioned point cloud cylindrical segmentation processing method is also provided. FIG3 is a structural schematic diagram of a point cloud cylindrical segmentation processing device according to an embodiment of the present disclosure. As shown in FIG3 , the above-mentioned point cloud cylindrical segmentation processing device includes: a sample point acquisition module 300, a neighbor point determination module 302, a normal vector determination module 304, a clustering module 306, and a cylindrical segmentation module 308, wherein:

[0077] The sample point acquisition module 300 is used to acquire a plurality of sample points included in the point cloud corresponding to the target object;

[0078] The neighbor point determination module 302 is connected to the cylinder segmentation module 308 and is used to determine neighbor points of the plurality of sample points within the corresponding preset neighborhood ranges;

[0079] The normal vector determination module 304 is connected to the neighbor point determination module 302 and is used to obtain normal vectors corresponding to the plurality of sample points based on the neighbor points of the plurality of sample points within the corresponding preset neighborhood range;

[0080] The clustering module 306 is connected to the normal vector determination module 304 and is used to perform clustering processing on the multiple sample points according to the normal vectors corresponding to the multiple sample points to obtain a clustering result;

[0081] The cylinder segmentation module 308 is connected to the clustering module 306 and is used to perform cylinder segmentation on the target object based on the clustering result to obtain the cylinder segmentation result of the target object.

[0082] In the embodiment of the present disclosure, a sample point acquisition module 300 is provided for acquiring a plurality of sample points included in a point cloud corresponding to a target object; a neighbor point determination module 302 is connected to the cylinder segmentation module 308 for determining neighbor points of the plurality of sample points within a corresponding preset neighborhood range; a normal vector determination module 304 is connected to the neighbor point determination module 302 for obtaining normal vectors corresponding to the plurality of sample points based on the neighbor points of the plurality of sample points within the corresponding preset neighborhood range; a clustering module 306 is connected to the normal vector determination module 304 for clustering the plurality of sample points based on the normal vectors corresponding to the plurality of sample points. Classification processing is performed to obtain clustering results; a cylindrical segmentation module 308 is connected to the clustering module 306, and is used to perform cylindrical segmentation on the target object based on the clustering results to obtain the cylindrical segmentation results of the target object, thereby achieving the purpose of clustering the sample points based on the neighbor point information of each sample point in the point cloud corresponding to the target object combined with the normal vector, and performing point cloud segmentation according to the clustering results, thereby achieving the technical effect of improving the three-dimensional point cloud cylindrical segmentation precision and segmentation accuracy, and further solving the technical problem that the point cloud cylindrical segmentation method in the related technology does not fully consider the factors, which easily leads to plane under-segmentation, over-segmentation and inaccurate segmentation accuracy.

[0083] It should be noted that the above modules can be implemented by software or hardware. For example, for the latter, it can be implemented in the following ways: the above modules can be located in the same processor; or the above modules can be located in different processors in any combination.

[0084] It should be noted that the sample point acquisition module 300, neighbor point determination module 302, normal vector determination module 304, clustering module 306, and cylinder segmentation module 308 correspond to steps S102 to S110 in the embodiment. The examples and application scenarios implemented by these modules and the corresponding steps are the same, but are not limited to the contents disclosed in the above embodiment. It should be noted that these modules, as part of the device, can be run on a computer terminal.

[0085] It should be noted that the optional or preferred implementation of this embodiment can be found in the relevant description in the embodiment, which will not be repeated here.

[0086] The above-mentioned point cloud cylindrical segmentation processing device can also include a processor and a memory. The above-mentioned sample point acquisition module 300, neighbor point determination module 302, normal vector determination module 304, clustering module 306, cylindrical segmentation module 308, etc. are all stored in the memory as program modules, and the processor executes the above-mentioned program modules stored in the memory to realize the corresponding functions.

[0087] The processor includes a core, which retrieves corresponding program modules from memory. There can be one or more cores. Memory may include non-permanent memory in a computer-readable medium, random access memory (RAM), and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory includes at least one memory chip.

[0088] According to an embodiment of the present application, an embodiment of a non-volatile storage medium is also provided. Optionally, in this embodiment, the non-volatile storage medium includes a stored program, wherein when the program is executed, the device containing the non-volatile storage medium is controlled to execute any of the above-mentioned point cloud cylindrical segmentation processing methods.

[0089] Optionally, in this embodiment, the non-volatile storage medium may be located in any computer terminal in a computer terminal group in a computer network, or in any mobile terminal in a mobile terminal group, and the non-volatile storage medium includes a stored program.

[0090] Optionally, when the program is running, the device where the non-volatile storage medium is located is controlled to perform the following functions: obtain multiple sample points included in the point cloud corresponding to the target object; determine the neighbor points of the multiple sample points within the corresponding preset neighborhood range; based on the neighbor points of the multiple sample points within the corresponding preset neighborhood range, obtain the normal vectors corresponding to the multiple sample points; cluster the multiple sample points according to the normal vectors corresponding to the multiple sample points to obtain a clustering result; perform cylindrical segmentation on the target object based on the clustering result to obtain a cylindrical segmentation result of the target object.

[0091] According to an embodiment of the present application, an embodiment of a processor is further provided. Optionally, in this embodiment, the processor is used to run a program, wherein the program executes any of the above-mentioned point cloud cylindrical segmentation processing methods when running.

[0092] According to an embodiment of the present application, an embodiment of a computer program product is also provided. Optionally, in this embodiment, the computer program product includes a computer program that, when executed by a processor, implements any of the steps of the above-mentioned point cloud cylindrical segmentation processing method.

[0093] Optionally, the above-mentioned computer program product, when executed on a data processing device, is suitable for executing a program initialized with the following method steps: obtaining multiple sample points included in a point cloud corresponding to a target object; determining neighbor points of the multiple sample points within a corresponding preset neighborhood range; obtaining normal vectors corresponding to the multiple sample points based on the neighbor points of the multiple sample points within the corresponding preset neighborhood range; clustering the multiple sample points according to the normal vectors corresponding to the multiple sample points to obtain a clustering result; and performing cylindrical segmentation on the target object based on the clustering result to obtain a cylindrical segmentation result of the target object.

[0094] An embodiment of the present disclosure provides an electronic device, which includes a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, the following steps are implemented: obtaining multiple sample points included in a point cloud corresponding to a target object; determining neighbor points of the multiple sample points within corresponding preset neighborhoods; obtaining normal vectors corresponding to the multiple sample points based on the neighbor points of the multiple sample points within corresponding preset neighborhoods; clustering the multiple sample points based on the normal vectors corresponding to the multiple sample points to obtain a clustering result; and performing cylindrical segmentation on the target object based on the clustering result to obtain a cylindrical segmentation result of the target object.

[0095] The above order of the embodiments of the present disclosure is for description only and does not represent the superiority or inferiority of the embodiments.

[0096] In the above embodiments of the present disclosure, the description of each embodiment has its own focus. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0097] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only exemplary. For example, the division of the above modules can be a logical function division. In actual implementation, there may be other division methods, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, modules or indirect coupling or communication connection of modules, which can be electrical or other forms.

[0098] The modules described above as separate components may or may not be physically separate, and the components shown as modules may or may not be physical modules, that is, they may be located in one place or distributed across multiple modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the present embodiment.

[0099] In addition, the functional modules in the various embodiments of the present disclosure may be integrated into a single processing module, or each module may exist physically separately, or two or more modules may be integrated into a single module. The integrated modules may be implemented in the form of hardware or software functional modules.

[0100] If the above-mentioned integrated module is implemented in the form of a software functional module and sold or used as an independent product, it can be stored in a computer-readable non-volatile storage medium. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a non-volatile storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, a server or a network device, etc.) to execute all or part of the steps of the various embodiments of the present invention. The aforementioned non-volatile storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, magnetic disk or optical disk and other media that can store program code.

[0101] The above is only a preferred embodiment of the present disclosure. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present disclosure. These improvements and modifications should also be regarded as within the scope of protection of the present disclosure.

Claims

1. A method for processing cylindrical surface segmentation of a point cloud, comprising: Acquire multiple sample points included in the point cloud corresponding to the target object; Determining neighboring points of the plurality of sample points within corresponding preset neighborhood ranges; Obtaining normal vectors corresponding to the plurality of sample points based on neighboring points of the plurality of sample points within corresponding preset neighborhoods; performing clustering processing on the plurality of sample points according to the normal vectors respectively corresponding to the plurality of sample points to obtain a clustering result; The target object is subjected to cylindrical segmentation based on the clustering result to obtain a cylindrical segmentation result of the target object.

2. The method according to claim 1, wherein Obtaining normal vectors corresponding to the plurality of sample points based on neighboring points of the plurality of sample points within corresponding preset neighborhoods, including: Constructing fitting functions corresponding to the plurality of sample points based on the neighboring points of the plurality of sample points within the corresponding preset neighborhood range, wherein the fitting functions are used to indicate the correlation relationship between the normal vector of the corresponding sample point and the neighboring points within the corresponding preset neighborhood range; Based on the fitting function, determining fitting function values ​​corresponding to the plurality of sample points respectively; Based on the fitting function values ​​corresponding to the plurality of sample points, respectively, constructing objective functions corresponding to the plurality of sample points, wherein the objective function is used to indicate the minimum weighted average sum of the fitting function value of the corresponding sample point and the corresponding neighboring points; The objective functions corresponding to the plurality of sample points are solved to obtain normal vectors corresponding to the plurality of sample points.

3. The method according to claim 2, wherein: The constructing the objective functions corresponding to the plurality of sample points respectively based on the fitting function values ​​corresponding to the plurality of sample points respectively includes: The multiple sample points are respectively used as current sample points, and the objective functions corresponding to the multiple sample points are obtained in the following manner: Determine a plurality of neighboring points of the current sample point within a corresponding preset neighborhood range; Calculating relative distances between the plurality of neighbor points and the current sample point; Determining weight values ​​corresponding to the plurality of neighboring points based on relative distances between the plurality of neighboring points and the current sample point; An objective function of the current sample point is constructed based on the fitting function value corresponding to the current sample point and the weight values ​​corresponding to the plurality of neighboring points.

4. The method according to claim 3, wherein: The determining, based on the relative distances between the multiple neighboring points and the current sample point, weight values ​​corresponding to the multiple neighboring points respectively includes: The plurality of neighboring points are respectively used as target neighboring points, and the weight values ​​corresponding to the plurality of neighboring points are obtained in the following manner: Wherein, x represents the current sample point, x i represents the target neighbor point, i represents the identifier of the target neighbor point, w(||xx i ||) represents the weight value corresponding to the target neighbor point, ||xx i || represents the relative distance between the target neighbor point and the current sample point, and σ represents a preset shape parameter of the current sample point in a corresponding preset neighborhood range.

5. The method according to claim 1, wherein The clustering process is performed on the plurality of sample points according to the normal vectors respectively corresponding to the plurality of sample points to obtain a clustering result, including: Calculating the Euclidean distances between each of the plurality of sample points and the core point; Calculating cosine values ​​between normal vectors corresponding to the plurality of sample points and the normal vector of the core point to obtain cosine values ​​corresponding to the plurality of sample points, wherein the core point is a cluster center obtained by performing the clustering process; Based on the Euclidean distances between the multiple sample points and the core point, and the cosine values ​​corresponding to the multiple sample points, a preset initial clustering radius is corrected to obtain target clustering radii corresponding to the multiple sample points, wherein the target clustering radius is used to determine the neighborhood range of the corresponding sample point; Based on the target clustering radii respectively corresponding to the multiple sample points, a density-based spatial clustering algorithm is used to perform the clustering process on the multiple sample points to obtain the clustering result.

6. The method according to claim 1, wherein The clustering result includes a plurality of clusters, each of the plurality of clusters includes a core point, and the cylindrical segmentation of the target object based on the clustering result to obtain the cylindrical segmentation result of the target object includes: Determine a target core point from the core points corresponding to the multiple clusters, and determine the neighbor point farthest from the target core point among the neighbor points within a preset neighborhood range corresponding to the target core point as a first neighbor point; Obtaining a direction vector of the cylinder axis based on the normal vector of the target core point and the normal vector of the first neighbor point; Constructing a first parameter line based on the target core point and the normal vector of the target core point; constructing a second parameter line based on the first neighbor point and the normal vector of the first neighbor point; constructing a projection plane based on the direction vector; Determine an intersection point of the first parameter line and the second parameter line on the projection plane, and use the distance between the intersection point and the target core point as the cylinder radius; Performing cylinder fitting based on the target core point, the first neighbor point, and the cylinder radius to obtain a target cylinder; Cylinder segmentation is performed on the target object based on the target cylinder to obtain the cylinder segmentation result.

7. The method according to claim 6, wherein: The performing cylinder segmentation on the target object based on the target cylinder to obtain the cylinder segmentation result includes: Calculating the distances from each of the plurality of sample points to the target cylinder; When, among the plurality of sample points, the number of sample points whose distances are within the preset distance range is greater than or equal to a predetermined number, cylinder segmentation is performed on the target object based on the target cylinder to obtain the cylinder segmentation result.

8. The method according to claim 7, further comprising: If, among the multiple sample points, the number of sample points whose distances are within the preset distance range is less than the predetermined number, one core point other than the target core point among the core points corresponding to the multiple clusters is used as a first core point, and the same operation as that for the target core point is repeatedly performed based on the first core point until the distances from the multiple sample points to the new target cylinder are all within the preset distance range; Cylinder segmentation is performed on the target object based on the new target cylinder to obtain the cylinder segmentation result.

9. A point cloud cylindrical segmentation processing device, comprising: A sample point acquisition module is used to acquire multiple sample points included in the point cloud corresponding to the target object; A neighbor point determination module is used to determine neighbor points of the plurality of sample points within the corresponding preset neighborhood ranges; A normal vector determination module, configured to obtain normal vectors corresponding to the plurality of sample points based on neighboring points of the plurality of sample points within a corresponding preset neighborhood range; A clustering module, configured to perform clustering processing on the plurality of sample points according to the normal vectors respectively corresponding to the plurality of sample points to obtain a clustering result; The cylinder segmentation module is used to perform cylinder segmentation on the target object based on the clustering result to obtain a cylinder segmentation result of the target object.

10. An electronic device comprising one or more processors and a memory, wherein the memory is used to store one or more programs, wherein: When the one or more programs are executed by the one or more processors, the one or more processors implement the point cloud cylindrical segmentation processing method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Point cloud cylindrical surface segmentation method based on prior information sampling consistency

    CN116542985A

  • Point cloud segmentation method and device, equipment and medium

    CN117291936A

  • Point cloud segmentation method and device, storage medium and electronic equipment

    CN118247507A

  • Point cloud cylindrical surface segmentation processing method and device and electronic equipment

    CN118365653A

Cited By

  • Component stability analysis method and system based on BIM (Building Information Modeling) technology

    CN121072260A

  • A Component Stability Analysis Method and System Based on BIM Technology

    CN121072260B

  • Abnormal land area graph generation method and device based on LiDAR point cloud

    CN121788739A

  • Relay protection misoperation mode identification method based on clustering analysis

    CN122173960A