A steel pipe main arch rib point cloud scanning splicing method and device

Through the multi-station scanning and precise splicing method of the ground-based 3D laser scanner, the problems of large errors and low efficiency in the splicing of point cloud data of the steel pipe main arch ribs were solved, and efficient and accurate splicing of component point cloud data was achieved, supporting the digital and scientific process of subsequent bridge construction.

CN119693226BActive Publication Date: 2025-10-17GUANGXI JIAOKE ENG CONSULTING CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411732368.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-29
Publication Date
2025-10-17
Estimated Expiration
2044-11-29

AI Technical Summary

Technical Problem

In the existing technology, the point cloud data splicing of steel tube main arch ribs has problems such as large errors and low efficiency. Especially when using 3D laser scanning technology, the existing data splicing method is not applicable due to the scanning blind spots caused by the complex shape of the components.

Method used

Using a terrestrial 3D laser scanner with multiple scanning stations, the precise splicing of the component point cloud is achieved through steps such as cropping, filtering, plane fitting, normal vector calculation, clustering, projection, slicing and cylindrical surface fitting, and the cylindrical surface is spliced ​​into one using rotation and translation parameters.

Benefits of technology

It improves the accuracy and completeness of point cloud data, solves the problem of efficient splicing of cloud data from different measuring stations, ensures the accuracy of component point cloud data, and provides a solid foundation for subsequent operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119693226B_ABST
    Figure CN119693226B_ABST
Patent Text Reader

Abstract

The application provides a steel pipe main arch rib point cloud scanning splicing method and device, and relates to the technical field of steel pipe concrete arch bridge construction; the method comprises the following steps: acquiring key area point clouds accurately by means of multi-station scanning and cutting of a ground three-dimensional laser scanner, reducing data redundancy, distinguishing point clouds by filtering and plane fitting and determining the attitude of a component, making the relative position relationship with the ground clear, improving the splicing accuracy, calculating a normal vector and removing irrelevant point clouds by clustering, obtaining cylinder node cloud which is beneficial to subsequent processing, converting the complex three-dimensional cylinder node cloud into two-dimensional plane data by two-dimensional projection and slice processing and subdividing, creating favorable conditions for cylindrical surface fitting, and finally realizing accurate splicing through cylindrical surface fitting and rotation and translation parameter calculation; the application effectively solves the problem that the component point cloud data collected by different stations cannot be spliced efficiently, and makes the component point cloud data more complete and more accurate.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application mainly relates to the technical field of steel pipe concrete arch bridge construction, and particularly relates to a steel pipe main arch rib point cloud scanning splicing method and device. BACKGROUND

[0002] In bridge construction, the manufacture and installation of the steel pipe main arch rib of the steel pipe concrete arch bridge faces many challenges. The steel pipe main arch rib is often manufactured and installed in sections and parts. In order to ensure the accuracy of component manufacturing, pre-assembly in the factory is particularly important. The traditional pre-assembly measurement technology is to project the section to the ground using a plumb line, and then use a high-precision total station to measure the projection coordinates and linear shape of the component. Although this method is effective, it is tedious and inefficient.

[0003] With the development of technology, three-dimensional laser scanning technology has been introduced into the pre-assembly process. By obtaining point cloud data of the surface of the steel component and using computer technology for virtual pre-assembly, the digitization and scientization of pre-assembly are realized. This method not only improves the accuracy and efficiency of measurement, but also reduces the occupation of the site. However, when using three-dimensional laser scanning technology, there is a problem of scanning blind area due to the complex shape of the component (such as the cylinder section), which needs to be solved by supplementing and data splicing of different stations.

[0004] Currently, there are precedents for using handheld or ground station three-dimensional laser scanners for data collection. These methods still need to set up targets for data splicing in actual operation. The existing data splicing method is not suitable for this scenario and has a large error.

[0005] In summary, there is an urgent need for a method that can efficiently and accurately splice the point clouds of the surface of the steel pipe main arch rib of different stations in this scenario, and a method that can evaluate the corresponding splicing accuracy. SUMMARY

[0006] The technical problem to be solved by the present application is to overcome the shortcomings of the prior art and provide a steel pipe main arch rib point cloud scanning splicing method and device.

[0007] The technical solution of the present application to solve the above technical problem is as follows: a steel pipe main arch rib point cloud scanning splicing method, comprising the following steps:

[0008] S1, using a plurality of stations of a pre-set ground three-dimensional laser scanner to scan the bridge steel component, obtaining a main arch rib steel component point cloud, and cutting out a steel component point cloud region from the main arch rib steel component point cloud;

[0009] S2, filter processing is performed on the steel member point cloud area to obtain non-member point cloud and member point cloud, and plane fitting processing is performed on the non-member point cloud to determine the fitting plane corresponding to the member point cloud through the fitting plane;

[0010] S3, normal vector calculation is performed on the fitting plane corresponding to the member point cloud, and clustering processing is performed on the calculated normal vector to obtain the cylinder node cloud;

[0011] S4, two-dimensional plane projection processing is performed on the cylinder node cloud to obtain the cylinder node cloud projection plane;

[0012] S5, boundary point calculation is performed on the cylinder node cloud projection plane, the calculated boundary points are connected into a boundary line, the boundary line perpendicular is determined according to the boundary line, the coordinate axis is established according to the boundary line and the boundary line perpendicular, and the cylinder section in the cylinder node cloud projection plane is equidistantly sliced according to the coordinate axis to obtain a plurality of cylinder section point clouds;

[0013] S6, cylindrical surface fitting processing is performed on a plurality of cylinder section point clouds to obtain the cylindrical surface corresponding to each cylinder section point cloud;

[0014] S7, based on the fact that the cylindrical surface fitted based on each corresponding cylinder section point cloud is the side surface of the same cylinder, the rotation parameter and the translation parameter for splicing all cylindrical surfaces into one are calculated, and all cylindrical surfaces are spliced into a final member point cloud according to the translation parameter and the rotation parameter.

[0015] Another technical solution for solving the above technical problems is as follows: a steel pipe main arch rib point cloud scanning and splicing device, comprising:

[0016] A preprocessing module is configured to scan a bridge steel member by using a plurality of stations of a preset ground three-dimensional laser scanner to obtain a main arch rib steel member point cloud, and to crop a steel member point cloud area from the main arch rib steel member point cloud;

[0017] A plane fitting module is configured to perform filter processing on the steel member point cloud area to obtain non-member point cloud and member point cloud, and to perform plane fitting processing on the non-member point cloud to determine the fitting plane corresponding to the member point cloud through the fitting plane;

[0018] A clustering processing module is configured to perform normal vector calculation on the fitting plane corresponding to the member point cloud, and to perform clustering processing on the calculated normal vector to obtain the cylinder node cloud;

[0019] A projection module is configured to perform two-dimensional plane projection processing on the cylinder node cloud to obtain the cylinder node cloud projection plane;

[0020] The slice module is used for boundary point calculation on the cylinder node cloud projection plane, connecting the calculated boundary points into a boundary line, determining a boundary line perpendicular line according to the boundary line, establishing a coordinate axis according to the boundary line and the boundary line perpendicular line, and carrying out equidistant slicing on the cylinder section in the cylinder node cloud projection plane according to the coordinate axis to obtain a plurality of cylinder section point clouds;

[0021] The curved surface fitting module is used for cylindrical curved surface fitting processing on the plurality of cylinder section point clouds to obtain a cylindrical curved surface corresponding to each cylinder section point cloud.

[0022] The point cloud splicing module is used for calculating rotation parameters and translation parameters for splicing all cylindrical curved surfaces into one body based on the cylindrical curved surface fitted according to each corresponding cylinder section point cloud as a side surface of the same cylinder, and splicing all cylindrical curved surfaces according to the translation parameters and the rotation parameters to obtain a final component point cloud.

[0023] The beneficial effects of the present application are as follows: through multi-station scanning and cutting of the ground three-dimensional laser scanner, key area point clouds are accurately obtained, data redundancy is reduced, point clouds are distinguished through filtering and plane fitting, and the attitude of the component is determined, the relative position relationship with the ground is clear, the splicing accuracy is improved, the normal vector is calculated and irrelevant point clouds are removed through clustering, the cylinder node cloud is obtained for subsequent processing, two-dimensional projection and slicing processing convert the complex three-dimensional cylinder node cloud into two-dimensional plane data and subdivide, which creates favorable conditions for cylindrical curved surface fitting, and finally, through cylindrical curved surface fitting and rotation and translation parameter calculation, accurate splicing is realized, effectively solving the problem that the component point cloud data collected by different stations cannot be efficiently spliced, and the point cloud data of the component is more complete and more accurate. BRIEF DESCRIPTION OF DRAWINGS

[0024] Figure 1 The steel pipe main arch rib point cloud scanning and splicing method provided by the embodiment of the present application is shown in the schematic flowchart.

[0025] Figure 2 The schematic connection diagram of each module of the steel pipe main arch rib point cloud scanning and splicing module provided by the embodiment of the present application is shown.

[0026] Figure 3 The schematic diagram for determining the equidistant cutting direction of the component point cloud provided by the embodiment of the present application is shown.

[0027] Figure 4 The component accessory point cloud diagram provided by the embodiment of the present application is shown.

[0028] Figure 5 The precision evaluation diagram provided by the embodiment of the present application is shown. DETAILED DESCRIPTION

[0029] The principles and features of the present application are described below in conjunction with the accompanying drawings, in which the examples are used to explain the present application and are not intended to limit the scope of the present application.

[0030] In order to solve the problem of large error existing in the existing data splicing method, the present application aims to provide a method capable of accurately splicing and evaluating the component point clouds of different stations when scanning the steel component point clouds using a ground three-dimensional laser scanner during the pre-splicing process of the main arch rib of the steel pipe, so as to solve the problem that the component point cloud data of different stations cannot be perfectly spliced during the pre-splicing process of the main arch rib of the steel pipe by scanning the point cloud data of the main arch rib of the steel pipe using a ground three-dimensional laser scanner. The following will be described in detail through specific embodiments.

[0031] Embodiment 1: As shown in the present application, the present application provides a steel pipe main arch rib point cloud scanning and splicing method, comprising the following steps: Figure 1

[0032] S1, a plurality of stations of a pre-set ground three-dimensional laser scanner are used to scan the bridge steel component to obtain a main arch rib steel component point cloud, and a steel component point cloud region is cut out from the main arch rib steel component point cloud;

[0033] S2, the steel component point cloud region is subjected to filtering processing to obtain non-component point clouds and component point clouds, and the non-component point clouds are subjected to plane fitting processing to determine the fitting plane corresponding to the component point clouds;

[0034] S3, normal vector calculation is performed on the fitting plane corresponding to the component point clouds, and the calculated normal vectors are subjected to clustering processing to obtain a cylinder node cloud;

[0035] S4, two-dimensional plane projection processing is performed on the cylinder node cloud to obtain a cylinder node cloud projection plane;

[0036] S5, boundary point calculation is performed on the cylinder node cloud projection plane, the calculated boundary points are connected into a boundary line, a boundary line perpendicular is determined according to the boundary line, a coordinate axis is established according to the boundary line and the boundary line perpendicular, and the cylinder sections in the cylinder node cloud projection plane are subjected to equidistant slicing according to the coordinate axis to obtain a plurality of cylinder section point clouds;

[0037] S6, cylindrical surface fitting processing is performed on the plurality of cylinder section point clouds to obtain a cylindrical surface corresponding to each cylinder section point cloud;

[0038] S7, based on the fact that the cylindrical surfaces fitted based on each corresponding cylinder section point cloud are the side surfaces of the same cylinder, the rotation parameters and translation parameters for splicing all the cylindrical surfaces of the cylinders into one are calculated, and all the cylindrical surfaces are subjected to point cloud splicing according to the translation parameters and rotation parameters to obtain a final component point cloud.

[0039] ​In this embodiment, the point cloud data is preprocessed. The data is imported using the software Cloudcompare, the scene data collected by the ground three-dimensional laser scanner is processed using the clipping function, and the component point cloud is retained. The retained point cloud is subjected to denoising and other point cloud basic processing methods. The above operations are performed on all collected data.

[0040] In this step, since there is actually some contact area under the component and in the non-component area, the contact area cannot be accurately retained using the clipping function, and this part of the data needs to be processed in step S2.

[0041] In this embodiment, the multi-station scanning and clipping of the ground three-dimensional laser scanner can accurately obtain the key area of the main arch rib steel component point cloud, provide accurate data basis for subsequent processing, and effectively reduce data redundancy. Secondly, the filtering and plane fitting operation not only distinguishes the component and non-component point clouds, but also determines the component attitude through the non-component point cloud fitting plane, especially the relative position relationship between the component and the ground. This common feature provides an important reference for subsequent splicing, greatly improving the accuracy and reliability of splicing. Furthermore, the normal vector calculation and clustering processing remove irrelevant point clouds to obtain pure cylinder point clouds, highlighting the cylindrical characteristics of the cylinder, which is beneficial for subsequent targeted processing. Then, the two-dimensional projection and slice processing convert the complex three-dimensional cylinder point cloud into two-dimensional plane data and subdivide it, reducing the difficulty of data processing and creating favorable conditions for cylindrical surface fitting. Finally, the cylindrical surface fitting and point cloud splicing based on rotation and translation parameters successfully realize the accurate splicing of component point cloud data of different stations, solve the problems of low data splicing efficiency and poor accuracy in the prior art, make the spliced component point cloud data complete and accurate, provide a solid guarantee for subsequent linear extraction, reverse modeling and other operations, promote the digitization and scientific process of bridge steel component related work, and improve work efficiency and quality.

[0042] Preferably, in S2, the steel component point cloud region is subjected to filtering processing to obtain non-component point clouds and component point clouds, and the non-component point clouds are subjected to plane fitting processing to determine the fitting plane corresponding to the component point cloud through the fitting plane. Specifically,

[0043] The steel component point cloud region is subjected to filtering processing through a cloth simulation filtering algorithm to obtain non-component point clouds and component point clouds.

[0044] Suppose the fitting plane corresponding to the non-component point cloud passes through point p(x0, y0, z0), the non-component point cloud is subjected to fitting processing based on the least square method to obtain the fitting plane:

[0045] a(x 10 -x0)+b(y 10 -y0)+c(z 10 -z0)=0,

[0046] wherein a, b and c are normal vector components of the fitting plane;

[0047] The fitting plane corresponding to the component point cloud is transformed based on the relative positional relationship between the component position in the component point cloud and the fitting plane, to obtain the fitting plane corresponding to the component point cloud.

[0048] In this embodiment, the component point cloud processed in step S1 is subjected to filtering processing, and the purpose is to obtain relatively complete component point cloud data. Cloth simulation filtering algorithm is used to screen out component point clouds and non-component point clouds. The non-component point cloud data is subjected to least square fitting plane, and the fitting plane is used to determine part of the posture information of the component.

[0049] In this step, the posture information of the component refers to the overall position information of the component point cloud. The overall position information of the component point cloud includes the relative position information of two component point clouds and the ground, wherein the relative position information of the two component point clouds and the ground is a key point, which can be used as a common feature in subsequent splicing. The part of the posture information of the component obtained in this step is the relative position information of the point cloud and the ground.

[0050] It should be understood that the fitting plane of the non-component point cloud is used to determine the posture of the component because the non-component point cloud is the ground point cloud. In this area, the ground is theoretically the same ground, so the fitting plane should be the same. The position of the component and the ground is relative, so the part of the posture of the component can be determined by using this plane.

[0051] In this embodiment, cloth simulation filtering algorithm is used to screen out component point clouds and non-component point clouds, and relatively complete component point cloud data can be obtained. The non-component point cloud data is subjected to least square fitting plane, and the fitting plane is used to determine part of the posture information of the component (the overall position information of the component point cloud, especially the relative position information with the ground), thereby providing a common feature for subsequent splicing.

[0052] Preferably, as shown in Figure 4 In S3, the normal vector of the fitting plane corresponding to the component point cloud is calculated, and the calculated normal vector is subjected to clustering processing to obtain the cylinder node cloud, specifically:

[0053] The minimum feature vector in the fitting plane corresponding to the component point cloud is taken as the normal vector;

[0054] A plurality of parameters in the Euclidean clustering algorithm are set, the plurality of parameters include the minimum number of points, the maximum number of points of each cluster, and the minimum Euclidean distance between two different clusters. The calculated normal vector is subjected to clustering processing by the Euclidean clustering algorithm and the plurality of set parameters, to obtain a plurality of accessory point clouds on the component. The plurality of accessory point clouds are removed to obtain the cylinder node cloud.

[0055] In this example, the component point cloud normal vectors are calculated and clustered using normal vectors to remove the point cloud of the component box girder region. Other component attachments are removed using methods such as Euclidean clustering and density clustering. Ultimately, point cloud data containing only the cylindrical section is obtained.

[0056] In this step, the theoretical method for calculating the normal vector of the component point cloud is the same as the method for obtaining the normal vector of the plane to be fitted by principal component analysis of the point cloud described in step S2. Both methods use the least squares method to fit all points in the neighborhood of a point in the component point cloud to form a plane, and use the simultaneous equations of the fitted plane parameters to solve the minimum eigenvector of the equations, which is the normal vector.

[0057] In this step, it is important to explain that the steel tube main arch rib structure of the concrete-filled steel tube arch bridge involved in the present invention is welded together, consisting of cylinder segments, box girders, and other accessories. These accessories include arch rib bases and connecting members between ribs. In this step, normal vector clustering is used to remove the point cloud of the component box girder area, and density clustering and other methods are used to remove the point cloud of the accessories.

[0058] In this step, Euclidean clustering methods include, but are not limited to, using a KD-Tree-based nearest neighbor query algorithm, with the following parameters: a minimum number of points in each cluster of 30, a maximum number of points of 10,000, and a minimum Euclidean distance between two different clusters of 0.2 m. Density clustering methods include, but are not limited to, using the DBSCAN algorithm to partition the observations in the n×p data matrix X into clusters, with the following parameters: an epsilon value of 2 and a minimum number of cluster points of 50.

[0059] In this embodiment, the normal vector of the component point cloud is calculated and the point cloud of the component box girder area is removed through normal vector clustering. Then, the remaining accessories on the component (such as the arch rib base, the connecting components between the arch ribs, etc.) are removed in combination with methods such as Euclidean clustering or density clustering. Finally, point cloud data with cylindrical characteristics containing only the cylinder section is obtained, which is convenient for subsequent processing operations on the cylinder section.

[0060] The theoretical method for calculating the normal vector of the component point cloud is clarified (the same as the method for obtaining the normal vector of the plane to be fitted through principal component analysis of the point cloud), and the specific parameter settings of the Euclidean clustering algorithm and the density clustering algorithm are given, which enhances the operability and repeatability of the method.

[0061] Preferably, in S4, a two-dimensional plane projection process is performed on the cylinder node cloud to obtain a cylinder node cloud projection plane, specifically:

[0062] The projection plane fitting calculation is performed on the cylinder node cloud using the RANSAC algorithm to obtain the projection plane:

[0063] Ax 20 +By20 +Cz 20 +D=0,

[0064] wherein A, B and C are normal vector components corresponding to the projection plane, and D is a position parameter of the projection plane relative to the coordinate origin;

[0065] A new coordinate of the cylinder node cloud orthogonally projected onto the projection plane is calculated by using a coordinate calculation formula, and the coordinate calculation formula is:

[0066] xp=x 20 ×(B 2 +C 2 )-A×(y 20 ×B+z 20 ×C+D) / norm(|A,B,C|),

[0067] yp=y 20 ×(A 2 +C 2 )-B×(x 20 ×A+z 20 ×C+D) / norm(|A,B,C|),

[0068] zp=z 20 ×(A 2 +B 2 )-C×(x 20 ×A+y 20 ×B+D) / norm(|A,B,C|),

[0069] wherein xp, yp and zp are new coordinates, and norm(|A, B, C|) is the Euclidean length of the normal vector of the projection plane,

[0070] Each new coordinate of the cylinder node cloud is projected onto the projection plane to obtain a cylinder node cloud projection plane.

[0071] It should be understood that the RANSAC (Random Sample Consensus) algorithm is an iterative model parameter estimation method. The basic idea is to estimate the model parameters by repeatedly selecting random subsets of data, and then evaluate the entire data set according to these parameters to determine which data points are "inliers" that conform to the model and which are "outliers" that do not conform to the model.

[0072] In this embodiment, it is used to perform projection plane fitting calculations on the cylinder node cloud. The specific process is to randomly select some points from the cylinder node cloud to fit a projection plane, and then calculate the distance of other points to the plane. Points with a distance within a certain threshold are considered to be inliers, otherwise they are outliers. By repeating this process, the plane containing the most inliers is found as the final projection plane. This can effectively remove the influence of noise and outliers and obtain a more accurate and reliable projection plane, thereby converting the three-dimensional cylinder node cloud into a two-dimensional plane, laying the foundation for subsequent operations such as determining boundary points and slicing, reducing the difficulty of data processing, and improving the accuracy and stability of the entire point cloud processing process.

[0073] In this embodiment, the projection plane fitting calculation of the cylinder node cloud is performed through the RANSAC algorithm, and the coordinate calculation formula is used to obtain the projection plane of the cylinder node cloud, so that the three-dimensional cylinder node cloud is converted into a two-dimensional plane, which reduces the complexity of subsequent processing and provides a basis for accurately determining the boundary points of the cylinder node cloud on the two-dimensional plane and performing slicing and other operations.

[0074] Preferably, if Figure 3 As shown, in S5, boundary points of the cylinder node cloud projection plane are calculated, the calculated boundary points are connected into edge lines, the edge line perpendicular is determined according to the edge lines, a coordinate axis is established according to the edge lines and the edge line perpendicular, and the cylinder segments in the cylinder node cloud projection plane are sliced ​​equidistantly according to the coordinate axes to obtain multiple cylinder segment point clouds, specifically:

[0075] Assume that the reference point P0 (x0, y0) and the target point P1 (x1, y1) are two points on the projection plane of the cylinder node cloud. The polar angle θ of the target point P1 relative to the reference point P0 is calculated using the polar angle calculation formula. The polar angle θ corresponding to the target point P1 is:

[0076] θ=arctan2(y1-y0,x1-x0);

[0077] Let the vector on the projection plane of the tube node cloud be For the two vectors on the tube node cloud projection plane, the vector is calculated by the cross product calculation formula and vector The two-dimensional vector cross product between , the two-dimensional vector cross product is:

[0078]

[0079] In this way, the polar angle θ and the two-dimensional vector cross product corresponding to all point clouds on the projection plane of the cylinder node cloud are calculated;

[0080] The convex hull vertex is identified by the polar angle θ and the two-dimensional vector cross product corresponding to all point clouds through the convex hull algorithm, and each identified convex hull vertex is connected as a boundary point to obtain the edge line L;

[0081] A boundary vertical line L' is determined according to the boundary line L, the boundary line L and the boundary vertical line L' are taken as an X axis and a Y axis of a coordinate axis respectively, the cylinder node cloud in the cylinder node cloud projection plane is equidistantly sliced in a Y axis direction, and a plurality of cylinder node segment point clouds are obtained.

[0082] The process of determining the boundary points of the cylinder node cloud based on the convex hull vertexes is as follows:

[0083] 1) Calculate the polar angle and determine the convex hull vertexes:

[0084] First, the polar angle of each point on the plane relative to a reference point (usually the point with the smallest horizontal coordinate and the smallest vertical coordinate in the point set) is calculated. The polar angle calculation formula is θ = arctan2 (y1-y0, x1-x0), where (x1, y1) is the point for which the polar angle is to be calculated, and (x0, y0) is the reference point. By calculating the polar angle, the angle information of each point relative to the reference point can be obtained, thereby determining the relative direction of the point on the plane.

[0085] Next, the convex hull vertexes are determined by calculating the cross product of two-dimensional vectors. Suppose there are two vectors on the plane and The cross product calculation formula is In calculating the convex hull, the points are sequentially connected to form vectors according to the order of the polar angle of the points, and the convex hull vertexes are determined by judging the positive and negative of the cross product of adjacent vectors. If the cross product is greater than 0, it indicates that the vector rotates in a counterclockwise direction, and the point is likely to be a convex hull vertex; if the cross product is less than 0, it indicates that the vector rotates in a clockwise direction, and the point is unlikely to be a convex hull vertex.

[0086] 2) Connect the convex hull vertexes to form the boundary:

[0087] After determining the convex hull vertexes through the above calculation, these convex hull vertexes are sequentially connected, and the connecting line formed is the boundary of the cylinder node cloud. These boundary points enclose the main part of the cylinder node cloud and can accurately outline the general shape of the cylinder node cloud on the two-dimensional plane, providing important boundary information for subsequent operations such as equidistant slicing of the cylinder node cloud along the coordinate axis.

[0088] In this embodiment, the boundary points on the cylinder node cloud projection plane are calculated based on the convex hull algorithm, the convex hull vertexes are determined by calculating the polar angle and the cross product of two-dimensional vectors, and the general shape of the cylinder node cloud on the two-dimensional plane can be accurately outlined, providing important boundary information for subsequent equidistant slicing of the cylinder node cloud along the coordinate axis.

[0089] The process of determining the boundary points of the cylinder node cloud based on the convex hull vertexes is described in detail, including the specific methods of calculating the polar angle and determining the convex hull vertexes, and connecting the convex hull vertexes to form the boundary, making the operation of this step more clear and understandable.

[0090] Preferably, in S6, cylindrical surface fitting processing is performed on the plurality of barrel segment point clouds to obtain a cylindrical surface corresponding to each barrel segment point cloud, specifically:

[0091] Let Q1(x1, y1, z1), Q2(x2, y2, z2) and Q(x3, y3, z3) be three points on the cylindrical surface, and the vector and the vector are calculated. The cross product of the vector and the vector is calculated to obtain a normal plane vector, and the axis direction of the cylinder is determined according to the normal plane vector.

[0092] Let the center coordinates of the cylinder be (x0, y0), and the radius be r. The circle equation (x 20 -x0)+(y 20 -y0) 2 =r is fitted using the least squares method. The partial derivatives of the center coordinates and the radius are taken based on the error function E and set to 0, and the error function E equation set is solved to obtain the values of the center coordinates and the radius.

[0093]

[0094] It should be understood that for multiple points on the cylindrical surface, the above calculation process can be repeated to obtain multiple vectors Since the axis direction of the cylinder is perpendicular to these normal vectors, the direction vector of the cylinder axis is determined by analyzing a plurality of such vector combinations.

[0095] According to the normal plane vector, a common method for determining the axis direction of the cylinder is to perform some averaging or fitting operation on these vectors. For example, a plurality of vectors can be added (or weighted addition, different weights are given according to the distribution of points), and then the added vector is normalized to obtain the unit vector as the cylinder axis direction vector Normalization is to divide the vector by its length. The length of the vector is calculated as Then the normalized cylinder axis direction vector In this way, by considering the information of multiple points, the direction vector of the cylinder axis can be more accurately determined to adapt to various poses and shape changes of the cylinder.

[0096] In this embodiment, the normal plane vector is obtained by calculating the vector cross product of three points on the cylindrical surface, and then the axis direction of the cylinder is determined, and the least square method is used to fit the circle according to the circle equation to solve the values of the center coordinates and the radius of the circle. The cylinder surface fitting of the cylinder segment point cloud can be accurately performed, various postures and shape changes of the cylinder can be adapted, and an accurate cylindrical surface model is provided for subsequent point cloud splicing.

[0097] Preferably, in S7, based on the fitted cylindrical surface of each corresponding cylinder segment point cloud being the side surface of the same cylinder, the rotation parameters and the translation parameters for splicing all the cylindrical surfaces of the cylinder segments into one are calculated, and the rotation parameters and the translation parameters are specifically as follows:

[0098] Based on the fitted cylindrical surface of each corresponding cylinder segment point cloud being the side surface of the same cylinder, the direction vectors corresponding to the two cylindrical surfaces to be spliced are calculated and the direction vector

[0099] According to the direction vector and the direction vector , the rotation angle is calculated.

[0100] According to the direction vector and the direction vector , the rotation axis is calculated.

[0101] According to the rotation angle and the rotation axis, the rotation matrix K is constructed, the rotation matrix K is constructed into an anti-symmetric matrix through the Rodrigues rotation formula, and the rotation matrix R is obtained, that is, the rotation parameter.

[0102] According to the center coordinates of the bottom surfaces of the two adjacent cylinders, the translation vector required for moving the center of the bottom surface of one cylinder to the center of the bottom surface of the other cylinder is calculated , that is, the translation parameter, and the translation vector corresponding to the cylinder to be translated is as follows:

[0103]

[0104] , wherein the center coordinates of the bottom surface of the reference cylinder are O0(X0, Y0, Z0), and the center coordinates of the bottom surface of the cylinder to be translated are O1(X1, Y1, Z1).

[0105] In this embodiment, based on the fitted cylindrical surface of each corresponding cylinder segment point cloud being the side surface of the same cylinder, the rotation parameters (including the rotation angle and the rotation axis, and then the rotation matrix is constructed) and the translation parameters for splicing all the cylindrical surfaces of the cylinder segments into one are accurately calculated, key parameter basis is provided for accurate point cloud splicing, and perfect splicing of the component point cloud data of different stations is facilitated.

[0106] Preferably, in S7, all cylindrical surfaces are spliced according to the rotation parameters and the translation parameters, and the final component point cloud is obtained, specifically:

[0107] The coordinates of each point cloud in the cylindrical surface are converted into corresponding homogeneous coordinates Each homogeneous coordinate is multiplied by the rotation matrix R respectively, to obtain the point cloud after rotation of each point cloud coordinate

[0108] Let The translation matrix T is constructed, and the point cloud after rotation of each point cloud coordinate is multiplied by the translation matrix T, to obtain the point cloud after rotation and translation, and the final component point cloud is obtained according to the point cloud after rotation and translation.

[0109] In this embodiment, after the coordinates of each point cloud in the cylindrical surface are converted into homogeneous coordinates, the homogeneous coordinates are multiplied by the rotation matrix and the translation matrix respectively, to obtain the point cloud after rotation and translation, so that all cylindrical surfaces are spliced according to the rotation parameters and the translation parameters, and the final component point cloud is obtained, and the process of point cloud scanning and splicing of the entire steel pipe main arch rib is completed, so that the splicing result can be presented in the form of the final component graph, and the splicing effect can be observed and evaluated intuitively.

[0110] Preferably, the rotation angle is calculated according to the direction vector and the direction vector , specifically:

[0111] The rotation angle of the direction vector and the direction vector is calculated by a vector dot product formula and a vector length formula, and the vector dot product formula is:

[0112]

[0113] The vector length formula is:

[0114]

[0115] wherein, The included angle θ is obtained by an inverse trigonometric function, and the rotation angle is

[0116] In this embodiment, the rotation angle of the two direction vectors is accurately calculated by the vector dot product formula and the vector length formula, which provides necessary angle information for determining the rotation parameters for splicing all cylindrical surfaces of the cylinder segments into one, and helps to realize accurate point cloud splicing.

[0117] Preferably, the rotation angle is calculated according to the direction vector and the direction vector The rotation axis is calculated, specifically:

[0118] The direction vector and the direction vector The cross product of The cross product vector is the rotation axis, wherein xn=y1z2-z1y2, yn=z1x2-x1z2, zn=x1y2-y1x2.

[0119] In this embodiment, the rotation axis is obtained by calculating the cross product of two direction vectors, which provides key axis information for determining the rotation parameters for splicing all cylindrical surfaces of the tube segments into one body, and together with the rotation angle, a rotation matrix is constructed, so that accurate point cloud splicing operation is realized.

[0120] As Figure 5 shown, the following describes the component splicing using the steel pipe main arch rib point cloud scanning splicing method of the present application, and the splicing accuracy is evaluated, specifically including the following steps:

[0121] Step T1, the spliced data is again divided according to the above cutting surface starting line, and each divided section is visualized.

[0122] Step T2, the splicing accuracy is judged according to the visualized graph, and should not be visible to the naked eye.

[0123] Compared with the existing point cloud splicing method, the point cloud splicing method of the present application can accurately splice the component point cloud data of different stations and evaluate the splicing accuracy according to the steps, effectively solving the problem that the component point cloud data collected by different stations cannot be efficiently spliced. The solution of this problem can make the component point cloud data more complete and more accurate, and then the spliced accurate point cloud can be used for linear extraction, reverse modeling and other operations.

[0124] Embodiment 2: as Figure 2 shown, the present application also provides a steel pipe main arch rib point cloud scanning splicing device, which comprises:

[0125] A preprocessing module is configured to scan the bridge steel component by using a plurality of stations of a preset ground three-dimensional laser scanner, obtain a main arch rib steel component point cloud, and cut out a steel component point cloud region from the main arch rib steel component point cloud.

[0126] A plane fitting module is configured to filter the steel member point cloud region to obtain a non-member point cloud and a member point cloud, and perform plane fitting processing on the non-member point cloud to determine a fitting plane corresponding to the member point cloud through the fitting plane.

[0127] A clustering processing module is configured to calculate normal vectors of the fitting plane corresponding to the member point cloud, and perform clustering processing on the calculated normal vectors to obtain a cylinder node point cloud.

[0128] A projection module is configured to perform two-dimensional plane projection processing on the cylinder node point cloud to obtain a cylinder node point cloud projection plane.

[0129] A slicing module is configured to calculate boundary points of the cylinder node point cloud projection plane, connect the calculated boundary points into a boundary line, determine a boundary line perpendicular line according to the boundary line, establish a coordinate axis according to the boundary line and the boundary line perpendicular line, and perform equidistant slicing on cylinder nodes in the cylinder node point cloud projection plane according to the coordinate axis to obtain a plurality of cylinder node segment point clouds.

[0130] A curved surface fitting module is configured to perform cylindrical curved surface fitting processing on the plurality of cylinder node segment point clouds to obtain a cylindrical curved surface corresponding to each cylinder node segment point cloud.

[0131] A point cloud splicing module is configured to calculate rotation parameters and translation parameters for splicing all cylindrical curved surfaces of the cylinder nodes into one body based on the cylindrical curved surfaces fitted according to each corresponding cylinder node segment point cloud as a side surface of the same cylinder, and perform point cloud splicing on all the cylindrical curved surfaces according to the translation parameters and the rotation parameters to obtain a final member point cloud.

[0132] It should be noted that, in this document, the relationship terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or sequence between the entities or operations. Moreover, the terms "include", "contain" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or device.

[0133] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described devices and units can refer to the corresponding processes in the foregoing method embodiments, which will not be described here.

[0134] In several embodiments provided in the present application, it should be understood that the disclosed apparatus and method can be implemented in other manners. For example, the embodiments of the apparatus described above are merely schematic, and the division of units is merely logical function division, and there can be other division manners in actual implementation. For example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In this way, the actual implementation can be divided into other forms.

[0135] The units described as separated components can or can not be physically separated, and the components displayed as units can or can not be physical units, i.e., can be located in one place, or can be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purposes of the embodiments of the present application.

[0136] In addition, each functional unit in the various embodiments of the present application can be integrated in a processing unit, or each unit can exist physically as a separate unit, or two or more units can be integrated in one unit. The integrated unit can be implemented in the form of hardware, or in the form of a software functional unit.

[0137] The above description is merely preferred embodiments of the present application, and is not intended to limit the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims

1. A method for scanning and splicing point clouds of steel pipe main arch ribs, characterized in that: The steps include: S1. Scanning the bridge steel components using multiple measuring stations of a preset ground-based three-dimensional laser scanner to obtain a point cloud of the main arch rib steel components, and cropping a steel component point cloud region from the main arch rib steel component point cloud; S2. Filtering the steel component point cloud region to obtain a non-component point cloud and a component point cloud, performing plane fitting on the non-component point cloud, and determining a fitting plane corresponding to the component point cloud by fitting the plane; S3. Calculate the normal vector of the fitting plane corresponding to the component point cloud, and perform clustering processing on the calculated normal vector to obtain the cylinder node cloud; S4, performing two-dimensional plane projection processing on the cylinder node cloud to obtain a cylinder node cloud projection plane; S5. Calculate boundary points on the cylinder node cloud projection plane, connect the calculated boundary points into a sideline, determine a sideline perpendicular based on the sideline, establish a coordinate axis based on the sideline and the sideline perpendicular, and slice the cylinder segment in the cylinder node cloud projection plane at equal intervals based on the coordinate axis to obtain multiple cylinder segment point clouds; S6. Perform cylindrical surface fitting processing on the plurality of cylinder segment point clouds to obtain a cylindrical surface corresponding to each cylinder segment point cloud; S7, based on the cylindrical surface fitted after the point cloud of each corresponding cylinder segment being the side surface of the same cylinder, calculating the rotation parameters and translation parameters for splicing the cylindrical surfaces of all cylinder segments into one, and splicing the point clouds of all cylindrical surfaces according to the translation parameters and rotation parameters to obtain the final component point cloud; In the above S4, a two-dimensional plane projection process is performed on the cylinder node cloud to obtain a cylinder node cloud projection plane, specifically: The projection plane fitting calculation is performed on the cylinder node cloud using the RANSAC algorithm to obtain the projection plane: Ax 20 +By 20 +Cz 20 +D=0, Among them, A, B and C are the normal vector components corresponding to the projection plane, and D is the position parameter of the projection plane relative to the coordinate origin; The new coordinates of the cylinder node cloud orthogonally projected onto the projection plane are calculated using a coordinate calculation formula, and the coordinate calculation formula is: xp=x 20 ×(B 2 +C 2 )-A×(y 20 ×B+z 20 ×C+D) / norm(|A,B,C|), yp=y 20 ×(A 2 +C 2 )-B×(x 20 ×A+z 20 ×C+D) / norm(|A,B,C|), zp=z 20 ×(A 2 +B 2 )-C×(x 20 ×A+y 20 ×B+D) / norm(|A,B,C|), Where xp, yp, and zp are the new coordinates, and norm(|A,B,C|) is the Euclidean length of the normal vector of the projection plane; Each new coordinate of the cylinder node cloud is projected onto the projection plane to obtain a cylinder node cloud projection plane.

2. The method for scanning and splicing point clouds of steel pipe main arch ribs according to claim 1, characterized in that: In S2, filtering is performed on the steel component point cloud region to obtain a non-component point cloud and a component point cloud, and plane fitting is performed on the non-component point cloud. The fitting plane corresponding to the component point cloud is determined by the fitting plane, specifically: Filtering the steel component point cloud region using a cloth simulation filtering algorithm to obtain a non-component point cloud and a component point cloud; Assume that the fitting plane corresponding to the non-component point cloud passes through the point p(x0, y0, z0), and perform fitting processing on the non-component point cloud based on the least squares method to obtain the fitting plane: a(x 10 -x0)+b(y 10 -y0)+c(z 10 -z0)=0, Among them, a, b and c are the normal vector components of the fitting plane; The fitting plane is transformed based on the relative position relationship between the component position in the component point cloud and the fitting plane to obtain the fitting plane corresponding to the component point cloud.

3. The method for scanning and splicing point clouds of steel pipe main arch ribs according to claim 1, characterized in that: In S3, the normal vector of the fitting plane corresponding to the component point cloud is calculated, and the calculated normal vector is clustered to obtain the cylinder node cloud, which is specifically: Obtain the minimum eigenvector in the fitting plane corresponding to the component point cloud as the normal vector; Multiple parameters in the Euclidean clustering algorithm are set, including the minimum number of points in each cluster, the maximum number of points, and the minimum Euclidean distance between two different clusters. The calculated normal vector is clustered using the Euclidean clustering algorithm and the set multiple parameters to obtain multiple accessory point clouds on the component. The multiple accessory point clouds are removed to obtain the cylinder node cloud.

4. The method for scanning and splicing point clouds of steel pipe main arch ribs according to claim 1, characterized in that: In S5, boundary points of the cylinder node cloud projection plane are calculated, the calculated boundary points are connected into edge lines, a vertical line to the edge line is determined based on the edge line, a coordinate axis is established based on the edge line and the vertical line to the edge line, and the cylinder segment in the cylinder node cloud projection plane is sliced ​​equidistantly based on the coordinate axis to obtain multiple cylinder segment point clouds, specifically: Assume that the reference point P0 (x0, y0) and the target point P1 (x1, y1) are two points on the projection plane of the cylinder node cloud. The polar angle θ of the target point P1 relative to the reference point P0 is calculated using the polar angle calculation formula. The polar angle θ corresponding to the target point P1 is: θ=arctan2(y1-y0,x1-x0); set up The vector of the cylinder node cloud projection plane For the two vectors on the tube node cloud projection plane, the vector is calculated by the cross product calculation formula and vector The two-dimensional vector cross product between , the two-dimensional vector cross product is: In this way, the polar angle θ and the two-dimensional vector cross product corresponding to all point clouds on the projection plane of the cylinder node cloud are calculated; The convex hull vertex is identified by the polar angle θ and the two-dimensional vector cross product corresponding to all point clouds through the convex hull algorithm, and each identified convex hull vertex is connected as a boundary point to obtain the edge line L; The edge line perpendicular L' is determined according to the edge line L, and the edge line L and the edge line perpendicular L' are used as the X axis and Y axis of the coordinate axis respectively. The cylinder node cloud in the cylinder node cloud projection plane is sliced ​​equidistantly in the Y axis direction to obtain multiple cylinder segment point clouds.

5. The method for scanning and splicing point clouds of steel pipe main arch ribs according to claim 1, characterized in that: In S6, cylindrical surface fitting is performed on the plurality of cylinder segment point clouds to obtain a cylindrical surface corresponding to each cylinder segment point cloud, specifically: Let Q1(x1,y1,z1), Q2(x2,y2,z2) and Q3(x3,y3,z3) be three points on the cylindrical surface, and calculate the vector and vector For the vector and the vector Perform cross product calculation to obtain the vertical plane vector, and determine the axis direction of the cylinder based on the vertical plane vector; Assume that the center coordinates of the cylinder are (x0, y0) and the radius is r. According to the circle equation (x 20 -x0)+(y 20 -y0) 2 =r The least squares method is used to fit the circle. The partial derivatives of the error function E with respect to the center coordinates and radius are calculated and the error function E is set to 0. The error function E equations are solved to obtain the values ​​of the center coordinates and radius. The error function E equations are:

6. The method for scanning and splicing point clouds of steel pipe main arch ribs according to claim 1, characterized in that: In S7, based on the fact that the cylindrical surfaces after fitting the point clouds of each corresponding cylinder segment are the side surfaces of the same cylinder, the rotation parameters and translation parameters for combining the cylindrical surfaces of all cylinder segments into one are calculated, specifically: Based on the cylindrical surface fitted by the point cloud of each corresponding cylinder segment as the side of the same cylinder, calculate the direction vector corresponding to the two cylindrical surfaces to be spliced and direction vector According to the direction vector and direction vector Calculate the rotation angle; According to the direction vector and direction vector Calculate the axis of rotation; Construct a rotation matrix K according to the rotation angle and the rotation axis, and construct an antisymmetric matrix of the rotation matrix K using the Rodriguez rotation formula to obtain a rotation matrix R, which is the rotation parameter; Calculate the translation vector required to move the center of the bottom of one cylinder to the center of the bottom of another cylinder based on the coordinates of the center of the bottom of two adjacent cylinders Is the translation parameter, the translation vector corresponding to the cylinder to be translated for: The coordinates of the center of the base of the reference cylinder are O0 (X0, Y0, Z0), and the coordinates of the center of the base of the cylinder to be translated are O1 (X1, Y1, Z1).

7. The method for scanning and splicing point clouds of steel pipe main arch ribs according to claim 6, characterized in that: In S7, all cylindrical surfaces are spliced ​​into point clouds according to the translation parameters and rotation parameters to obtain the final component point cloud, specifically: Convert the coordinates of each point cloud on the cylindrical surface into corresponding homogeneous coordinates Each homogeneous coordinate Multiply them by the rotation matrix R respectively to get the point cloud after the coordinates of each point cloud are rotated set up Construct the translation matrix T, construct the translation matrix, and rotate the point cloud coordinates of each point cloud Multiplying it with the translation matrix T, we get the point cloud after rotation and translation, and then get the final component point cloud based on the point cloud after rotation and translation.

8. The method for scanning and splicing point clouds of steel pipe main arch ribs according to claim 6, characterized in that: The direction vector and direction vector Calculate the rotation angle as follows: The direction vector is calculated by the vector dot product formula and the vector modulus formula and direction vector The rotation angle of , the vector dot product formula is: The vector modulus formula is: in, Obtaining the angle using inverse trigonometric functions θ is the rotation angle.

9. A point cloud scanning and splicing device for steel pipe main arch ribs, characterized in that: include: a pre-processing module for scanning the bridge steel components using multiple measuring stations of a preset ground-based three-dimensional laser scanner to obtain a point cloud of the main arch rib steel components, and cropping a steel component point cloud area from the main arch rib steel component point cloud; A plane fitting module is used to perform filtering processing on the steel component point cloud area to obtain a non-component point cloud and a component point cloud, and perform plane fitting processing on the non-component point cloud to determine the fitting plane corresponding to the component point cloud through the fitting plane; The clustering processing module is used to calculate the normal vector of the fitting plane corresponding to the component point cloud, and cluster the calculated normal vector to obtain the cylinder node cloud; A projection module, configured to perform two-dimensional plane projection processing on the cylinder node cloud to obtain a cylinder node cloud projection plane; a slicing module, configured to calculate boundary points of the cylinder node cloud projection plane, connect the calculated boundary points into edge lines, determine edge line perpendiculars based on the edge lines, establish coordinate axes based on the edge lines and the edge line perpendiculars, and perform equidistant slicing of the cylinder segments in the cylinder node cloud projection plane based on the coordinate axes to obtain a plurality of cylinder segment point clouds; A surface fitting module is used to perform cylindrical surface fitting processing on the plurality of cylinder segment point clouds to obtain a cylindrical surface corresponding to each cylinder segment point cloud; The point cloud splicing module is used to calculate the rotation parameters and translation parameters for splicing the cylindrical surfaces of all cylinder segments into one, based on the cylindrical surfaces fitted after the point cloud of each corresponding cylinder segment are the side surfaces of the same cylinder. The point cloud of all cylindrical surfaces is spliced ​​according to the translation parameters and rotation parameters to obtain the final component point cloud; Perform two-dimensional plane projection processing on the cylinder node cloud to obtain the cylinder node cloud projection plane, specifically: The projection plane fitting calculation is performed on the cylinder node cloud using the RANSAC algorithm to obtain the projection plane: Ax 20 +By 20 +Cz 20 +D=0, Among them, A, B and C are the normal vector components corresponding to the projection plane, and D is the position parameter of the projection plane relative to the coordinate origin; The new coordinates of the cylinder node cloud orthogonally projected onto the projection plane are calculated using a coordinate calculation formula, and the coordinate calculation formula is: xp=x 20 ×(B 2 +C 2 )-A×(y 20 ×B+z 20 ×C+D) / norm(|A,B,C|), yp=y 20 ×(A 2 +C 2 )-B×(x 20 ×A+z 20 ×C+D) / norm(|A,B,C|), zp=z 20 ×(A 2 +B 2 )-C×(x 20 ×A+y 20 ×B+D) / norm(|A,B,C|), Where xp, yp, and zp are the new coordinates, and norm(|A,B,C|) is the Euclidean length of the normal vector of the projection plane; Each new coordinate of the cylinder node cloud is projected onto the projection plane to obtain a cylinder node cloud projection plane.

Citation Information

Patent Citations

  • Method for identifying cylindrical surface from multi-line laser radar point cloud data

    CN110097593A

  • Alignment of captured images by fusing colour and geometrical information

    US20190188871A1