A method for eliminating overlapping areas in multi-view massive point clouds

Through homogenization and slice processing of massive point cloud data in multi-view, the three-dimensional bounding box and undirected graph technology eliminate overlapping areas, solving the problems of complex and poor quality of point cloud data processing of large parts, and achieving efficient point cloud fusion and smooth light The result.

CN115880467BActive Publication Date: 2024-12-10HUAZHONG UNIV OF SCI & TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202211484092.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-24
Publication Date
2024-12-10
Estimated Expiration
2042-11-24

Smart Images

  • Figure CN115880467B_ABST
    Figure CN115880467B_ABST
Patent Text Reader

Abstract

The present invention belongs to the technical field related to the design of optical three-dimensional measurement, and discloses a method for eliminating overlapping areas for multi-view massive point clouds. The method includes the following steps: S1, for the collected point cloud data of multiple views, calculate the main direction of the point cloud distribution of all point cloud data; slice all point cloud data along the main direction of the point cloud distribution according to the preset slice thickness to obtain multiple slice layers S2, for the point cloud data in a single slice layer, construct a three-dimensional bounding box for the point cloud data of different views, determine whether different three-dimensional bounding boxes overlap, and find corresponding point pairs between different perspective point cloud data in the overlapping part; S3, connect the corresponding point pairs to form an undirected graph, thereby forming multiple undirected graphs, search and determine all undirected graphs, and merge all points in the undirected graphs into one point, thereby eliminating overlapping areas. Through the present invention, the efficiency of eliminating overlapping areas of multi-view massive point clouds is improved, and the point clouds after elimination are smooth.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field related to designing optical three-dimensional measurement, and more specifically, relates to a method for eliminating overlapping areas of multi-view massive point clouds. Background Art

[0002] In industry, large parts such as automobile frames and aircraft wings are large in size, ranging from several meters to more than ten meters in length. Limited by the measurement range of 3D sensors, the size calculation and shape detection of large parts mostly rely on robots equipped with 3D sensors to obtain point cloud data from multiple perspectives (tens to hundreds of pictures). The amount of point cloud data obtained by the sensors is as high as hundreds of millions to billions. Point cloud data from multiple views will produce a large number of overlapping areas. Due to the deviation of the collected posture, the overlapping areas will be layered, which will cause great interference to the later generation of meshes. Therefore, it is necessary to simplify the overlapping point clouds in the overlapping areas into a single layer of point clouds, which also reduces the data redundancy of the points and improves the processing efficiency of mesh generation.

[0003] At present, the point cloud fusion methods mainly adopt voxel-based, clustering-based, and grid-based fusion methods. The voxel-based method is to divide the space into cubes of a certain size, retain the center of gravity of each small cube, and obtain a uniform point cloud after fusion. However, for large-sized parts, the number of small cubes divided will be very large, which greatly consumes memory resources, so it is not suitable for the fusion of larger parts. The clustering-based method is sensitive to the selection of cluster centers, and the algorithm complexity is relatively high, so it is not suitable for the fusion of hundreds of millions of points. The grid-based method requires local patch reconstruction of the point cloud first. Due to the existence of stratification, the patch quality is poor, and it is difficult to obtain a smooth point cloud after fusion. Summary of the invention

[0004] In view of the above defects or improvement needs of the prior art, the present invention provides a method for eliminating overlapping areas of massive point clouds from multiple views, which solves the problems of complex point cloud fusion processing and poor processing quality of larger parts.

[0005] To achieve the above object, according to the present invention, a method for eliminating overlapping areas of multi-view massive point clouds is provided, and the method comprises the following steps:

[0006] S1: for the collected point cloud data of multiple views, each point cloud data in all views is homogenized, and the main direction of point cloud distribution of all point cloud data is calculated using the homogenized point cloud data; all point cloud data are sliced ​​along the main direction of point cloud distribution according to a preset slice thickness, so as to obtain multiple slice layers;

[0007] S2 constructs a 3D bounding box for the point cloud data in a single slice layer, determines whether different 3D bounding boxes overlap, and finds corresponding point pairs between point cloud data of different viewpoints in the overlapping part;

[0008] S3 connects the corresponding point pairs to form an undirected graph, thereby forming multiple undirected graphs, searches and determines all the undirected graphs, and merges all the points in the undirected graphs into one point, thereby eliminating overlapping areas.

[0009] Further preferably, in step S1, the homogenization is performed in the following manner:

[0010] For any point p i (x i ,y i ,z i ), update its coordinates as follows:

[0011]

[0012] Among them, 0<i≤n, n is the total number of points, x i For the i-th point p i The x-axis coordinate, y i For the i-th point p i The y-axis coordinate, z i For the i-th point p i The z-axis coordinate of .

[0013] Further preferably, in step S1, the main direction of the point cloud distribution is calculated according to the following steps:

[0014] S11 calculates the covariance of all point cloud data;

[0015] S12 calculates the eigenvalues ​​of the covariance matrix;

[0016] The direction of the eigenvector corresponding to the maximum eigenvalue among the eigenvalues ​​in S13 is the main direction of the point cloud distribution.

[0017] Further preferably, in step S11, the covariance is calculated according to the following formula:

[0018]

[0019] Where n is the total number of points, P is the set of all normalized points, p 1 , p 2 ,…,p n is a point in P.

[0020] In step S12, the characteristic value is calculated as follows:

[0021] |λI-W|=0

[0022] Among them, λ is the covariance matrix W The characteristic value of .

[0023] Further preferably, in step S1, the preset slice thickness satisfies the following relationship:

[0024] B>αb

[0025] Among them, α is a coefficient, b is the average point spacing of the point cloud, and B is the preset slice thickness.

[0026] Further preferably, the average point spacing b satisfies the following relationship:

[0027]

[0028] Among them, 0<i≤n, n is the total number of points, p i For any point, is the distance p among all points i The most recent one, is the Euclidean distance between two points.

[0029] Further preferably, in step S2, the three-dimensional bounding box is constructed in the following manner:

[0030] The center of the bounding box of the point cloud is O(o x ,o y ,o z ),have:

[0031]

[0032] Where p = [p x ,p y ,p z ] is any point in a point cloud, X min is the minimum value of the x coordinates of all points, X max is the maximum value of the x coordinates of all points, Y min is the minimum value of the y coordinates of all points, Y max is the maximum value of the y coordinates of all points, Z min is the minimum value of the z coordinates of all points, Z max is the maximum value of the z coordinates of all points, o x ,o y ,o z are the three coordinates of the center of the bounding box, L, W and H are the length, width and height of the bounding box respectively.

[0033] Further preferably, in step S2, determining whether the bounding boxes overlap is performed in the following manner:

[0034]

[0035] Among them, O i and O j Represent the i-th and j-th bounding boxes respectively, Yes i The x, y, z axis coordinates of the center point, Yes j The center point x, y, z axis coordinates, L i , W i , H i O i Length, width, height, L j , W j , H j O j The length, width and height of the .

[0036] Further preferably, in step S2, the corresponding point pairs are searched in the following manner: the nearest point from a point in one point cloud to all points in another point cloud is searched; if the distance between the two points is less than a preset threshold, the two points constitute a corresponding point pair.

[0037] Further preferably, in step S3, merging all the points in the undirected graph into one point comprises: replacing all the points in the undirected graph with the centroid of the undirected graph.

[0038] In general, the above technical solutions conceived by the present invention have the following beneficial effects compared with the prior art:

[0039] 1. The method for processing multi-view point cloud data provided in the present invention slices the point cloud data along the main direction of the point cloud, and then processes and compresses the overlapping point pairs of point cloud data from different viewpoints within the slice, which greatly improves the efficiency of eliminating the overlapping areas of multi-view massive point clouds, and makes the point cloud smoother after the overlapping areas are eliminated;

[0040] 2. The present invention uses principal component analysis to calculate the thickness of the original point cloud, finds the direction perpendicular to the thickness direction as the main direction of the point cloud for slicing, and eliminates the overlapping area of ​​each slice separately, thereby reducing the time complexity of the method;

[0041] 3. The present invention uses the position of the three-dimensional bounding box of the point cloud to preliminarily determine the coincidence relationship between the point clouds, which can avoid searching for the nearest point on a large number of point clouds with no coincidence area, thus avoiding a large amount of useless calculations and greatly improving the efficiency of searching for the coincidence area of ​​multi-view point clouds;

[0042] 4. In the present invention, the overlapping area of ​​the point cloud is established as an undirected graph, and the goal of eliminating the overlapping area of ​​the point cloud is converted into the problem of compressing the connected subgraph of the point cloud. By retaining the center of gravity of the connected subgraph of the point cloud, local features can be retained as much as possible, reducing the interference of local abnormal points on the elimination of the overlapping area of ​​the point cloud, so that the point cloud after the overlapping area of ​​the point cloud is eliminated is smoother. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] Figure 1 It is a flow chart of a method for eliminating overlapping areas of multi-view massive point clouds constructed according to a preferred embodiment of the present invention;

[0044] Figure 2 It is a schematic diagram of main direction calculation of multi-view massive point cloud distribution constructed according to a preferred embodiment of the present invention;

[0045] Figure 3 It is a schematic diagram of slicing a multi-view massive point cloud along a main direction constructed according to a preferred embodiment of the present invention;

[0046] Figure 4 is a schematic diagram of a three-dimensional bounding box of a point cloud constructed according to a preferred embodiment of the present invention;

[0047] Figure 5 It is a schematic diagram of preliminarily judging the coincidence relationship between point clouds according to the positions of bounding boxes constructed according to the preferred embodiment of the present invention, wherein (a) is the bounding boxes intersecting, and (b) is the bounding boxes not intersecting;

[0048] Figure 6 is a schematic diagram of coincident point pairs between calculated point clouds constructed according to a preferred embodiment of the present invention;

[0049] Figure 7 is a schematic diagram of connected subgraph compression constructed according to a preferred embodiment of the present invention;

[0050] Figure 8 It is a schematic diagram of the effect of eliminating point cloud overlap areas constructed according to the preferred embodiment of the present invention. DETAILED DESCRIPTION

[0051] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention. In addition, the technical features involved in the various embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other.

[0052] like Figure 1 As shown, a method for eliminating overlapping areas of multi-view massive point clouds includes the following steps:

[0053] S1 Multi-view Massive Point Cloud Distribution Main Direction Calculation

[0054] First, all points in the multi-view point cloud are centralized:

[0055]

[0056] Where 0<i≤n, n is the total number of points, x i For the i-th point p i The x-axis coordinate, y i For the i-th point p i The y-axis coordinate, z i For the i-th point p i The z-axis coordinate, p i (x i ,y i ,z i ) is any point.

[0057] Then, calculate the covariance matrix Where n is the total number of points, P is the set of all normalized points, p 1 , p 2 ,…,p n is a point in P.

[0058] Finally, calculate the eigenvalues ​​of the matrix W:

[0059] Let |λI-W|=0, and calculate the three eigenvalues ​​λ that meet the requirements of the equation 1 ,λ 2 ,λ 3 And satisfy λ 1 >λ 2 >λ 3 . Where I is the unit matrix. Here we take the eigenvector ξ corresponding to the maximum eigenvalue 1 The direction is the main direction of the point cloud distribution, such as Figure 2 As shown, where ξ 1 Satisfy Wξ 1 =λ 1 ξ 1 .

[0060] S2 slices the multi-view massive point cloud along the main direction

[0061] like Figure 3 As shown, along the main direction ξ of the point cloud 1 Slice the multi-view massive point cloud, and the slice width B satisfies the relationship B>αb, where α is a coefficient and b is the average point spacing of the point cloud. The calculation method is:

[0062]

[0063] Where 0<i≤n, n is the total number of points, p i For any point, Represents the distance p among all points i The most recent one, is the Euclidean distance between two points. Here α is taken as 50.

[0064] S3 calculates the 3D bounding box of the point cloud

[0065] Define the center of the bounding box of the point cloud as O(o x ,o y ,o z ),have:

[0066]

[0067] Where p = [p x ,p y ,p z ] is any point in a point cloud, X min is the minimum value of the x coordinates of all points, X max is the maximum value of the x coordinates of all points, Y min is the minimum value of the y coordinates of all points, Y max is the maximum value of the y coordinates of all points, Z min is the minimum value of the z coordinates of all points, Z max is the maximum value of the z coordinates of all points, o x ,o y ,o z are the three coordinates of the center of the bounding box, L, W and H are the length, width and height of the bounding box respectively. The three-dimensional bounding box of the point cloud is as follows: Figure 4 shown.

[0068] S4 Judgment of coincidence relationship between point clouds

[0069] like Figure 5 As shown in the figure, if the bounding boxes of two point clouds intersect in space, then it is considered that the two point clouds may overlap, otherwise there must be no overlap. and The formula for determining overlap is as follows:

[0070]

[0071] Among them, O i and O j Represent the i-th and j-th bounding boxes respectively, Yes i The x, y, z axis coordinates of the center point, Yes j The center point x, y, z axis coordinates, L i , Wi , H i O i Length, width, height, L j , W j , H j O j The length, width and height of the .

[0072] S5 Calculation of corresponding point pairs between overlapping point clouds

[0073] The corresponding point pairs between the point clouds that are judged to be overlapping are calculated by finding the nearest point in KD-Tree. The nearest point from a point in one point cloud to all the points in another point cloud is found. If the distance between the two points is less than a certain threshold, the two points are considered to constitute a corresponding point pair, such as Figure 6 shown.

[0074] Undirected graph construction of S6 overlapping regions

[0075] For each corresponding point pair, an undirected edge is used to connect the two points. In this way, the corresponding point pairs of the multi-view massive point cloud will form an undirected graph, which includes a connected subgraph connected by undirected edges and some isolated points. Isolated points are points in the non-overlapping area of ​​the point cloud, and the connected subgraph is composed of point pairs in the overlapping area.

[0076] Connected subgraph query in S7 undirected graph

[0077] Through the breadth-first search method, all connected subgraphs in the undirected graph are found, and it is ensured that the number of points in the connected subgraph does not exceed the number of slices in the multi-view point cloud.

[0078] S8 connected subgraph compression

[0079] The points in each connected subgraph are multiple acquisitions of the same point by multiple point clouds, so only one point needs to be left in each connected subgraph. Therefore, the centroid of the connected subgraph is retained as the fused point, such as Figure 7 As shown in the figure, the overlapping areas of the point cloud are finally eliminated, and the point cloud is made smoother. The effect is as follows Figure 8 shown.

[0080] It will be easily understood by those skilled in the art that the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the present invention.

Claims

1. A method for eliminating overlapping areas of multi-view massive point clouds, characterized in that: The method comprises the following steps: S1: for the collected point cloud data of multiple views, each point cloud data in all views is homogenized, and the main direction of point cloud distribution of all point cloud data is calculated using the homogenized point cloud data; all point cloud data are sliced ​​along the main direction of point cloud distribution according to a preset slice thickness, so as to obtain multiple slice layers; S2 constructs a 3D bounding box for the point cloud data in a single slice layer, determines whether different 3D bounding boxes overlap, and finds corresponding point pairs between point cloud data of different viewpoints in the overlapping part; S3 connects the corresponding point pairs to form an undirected graph, thereby forming a plurality of undirected graphs, wherein the undirected graph includes a connected subgraph connected by undirected edges and some isolated points, wherein the isolated points are points in non-overlapping areas of the point cloud, and the connected subgraph is composed of corresponding point pairs in overlapping areas; Find and determine all undirected graphs, and merge all points in connected subgraphs in the undirected graphs into one point, thereby eliminating overlapping areas.

2. A method for eliminating overlapping areas of multi-view massive point clouds as claimed in claim 1, characterized in that: In step S1, the homogenization is performed in the following manner: For any point p i (x i ,y i ,z i ), update its coordinates in the following way: Where 0<i≤n, n is the total number of points, x i For the i-th point p i The x-axis coordinate, y i For the i-th point p i The y-axis coordinate, z i For the i-th point p i The z-axis coordinate of .

3. The method for eliminating overlapping areas of multi-view massive point clouds as claimed in claim 2, characterized in that: In step S1, the main direction of the point cloud distribution is calculated according to the following steps: S11 calculates the covariance of all point cloud data; S12 calculates the eigenvalues ​​of the covariance matrix; The eigenvector direction corresponding to the maximum eigenvalue among the eigenvalues ​​described in S13 is the main direction of the point cloud distribution.

4. The method for eliminating overlapping areas of multi-view massive point clouds as claimed in claim 3, characterized in that: In step S11, the covariance is calculated according to the following formula: Where n is the total number of points, P is the set of all normalized points, p1, p2, ..., p n is a point in P; In step S12, the characteristic value is calculated as follows: |λI-W|=0 Among them, λ is the eigenvalue of the covariance matrix W, and I is the identity matrix.

5. The method for eliminating overlapping areas of multi-view massive point clouds according to claim 1, characterized in that: In step S1, the preset slice thickness satisfies the following relationship: B>αb Among them, α is a coefficient, b is the average point spacing of the point cloud, and B is the preset slice thickness.

6. A method for eliminating overlapping areas of multi-view massive point clouds as claimed in claim 5, characterized in that: The average point spacing b satisfies the following relationship: Among them, 0<i≤n, n is the total number of points, p i For any point, is the distance p among all points i The most recent one, is the Euclidean distance between two points.

7. The method for eliminating overlapping areas of multi-view massive point clouds according to claim 1, characterized in that: In step S2, the three-dimensional bounding box is constructed in the following manner: The center of the bounding box of the point cloud is O(o x ,o y ,o z ),have: Where p = [p x ,p y ,p z ] is any point in a point cloud, X min is the minimum value of the x coordinates of all points, X max is the maximum value of the x coordinates of all points, Y min is the minimum value of the y coordinates of all points, Y max is the maximum value of the y coordinates of all points, Z min is the minimum value of the z coordinates of all points, Z max is the maximum value of the z coordinates of all points, o x ,o y ,o z are the three coordinates of the center of the bounding box, L, W and H are the length, width and height of the bounding box respectively.

8. The method for eliminating overlapping areas of multi-view massive point clouds according to claim 7, characterized in that: In step S2, whether the bounding boxes overlap is determined in the following manner: Among them, O i and O j Represent the i-th and j-th bounding boxes respectively, Yes i The x, y, z axis coordinates of the center point, Yes j The center point x, y, z axis coordinates, L i , W i , H i O i Length, width, height, L j , W j , H j O j The length, width and height of the .

9. A method for eliminating overlapping areas of multi-view massive point clouds as claimed in claim 1 or 2, characterized in that: In step S2, the corresponding point pairs are searched in the following manner: the closest point from a point in one point cloud to all points in another point cloud is searched; if the distance between the two points is less than a preset threshold, the two points constitute a corresponding point pair.

10. A method for eliminating overlapping areas of multi-view massive point clouds as claimed in claim 1 or 2, characterized in that: In step S3, merging all points in the connected subgraph in the undirected graph into one point comprises: using the centroid of the connected subgraph as the merged point.