A multi-view three-dimensional laser point cloud stitching method and system

Through feature extraction and matching, combined with closed-loop detection and dynamic pose adjustment, the error problem caused by viewing angle differences in multi-view three-dimensional laser point cloud splicing is solved, and high-precision and efficient point cloud splicing is achieved.

CN119169204BActive Publication Date: 2025-02-11SHENZHEN BODA CONSTR GRP CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411659468.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-20
Publication Date
2025-02-11
Estimated Expiration
2044-11-20

AI Technical Summary

Technical Problem

Due to the different angles and distances of shooting at each viewing angle, errors are prone to occur during the splicing of multi-view three-dimensional laser point clouds, which affects the accuracy after splicing.

Method used

A feature extraction algorithm is used to identify key feature points in point cloud data, generate feature descriptors, and perform preliminary alignment through feature matching. If error accumulation is detected, split the point cloud data into a multi-view point cloud, detect the overlapping area of ​​view angles, build the point cloud registration edge, apply closed-loop detection to dynamically adjust the pose parameters, and minimize the error metric value of three-dimensional modeling.

Benefits of technology

Through feature matching and dynamic pose adjustment, the registration error caused by viewing angle differences is reduced, the accuracy and efficiency of point cloud splicing are improved, and the seamless alignment of multi-view point cloud data is ensured.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119169204B_ABST
    Figure CN119169204B_ABST
Patent Text Reader

Abstract

The present invention provides a multi-view three-dimensional laser point cloud stitching method and system, which are applied to the field of point cloud data processing; the present invention adopts a feature extraction algorithm to identify key feature points in point cloud data and generate feature descriptors, which can efficiently match point cloud data of different viewpoints, and perform preliminary alignment after feature matching, so that the point cloud data can reach a more accurate relative position in the preliminary stage, reducing the registration error caused by the difference in viewpoints, and after detecting the accumulated errors, it can trigger subsequent optimization steps to avoid the gradual expansion of errors, and these errors can be gradually reduced by dynamically adjusting the posture parameters of each point cloud. The adjustment of the posture can make the point cloud data more accurately aligned, which helps to eliminate the registration deviation caused by different shooting angles and distances.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of point cloud data processing, and in particular to a multi-view three-dimensional laser point cloud splicing method and system. Background Art

[0002] In 3D laser scanning technology, LiDAR and other 3D scanning devices can capture point cloud data of objects or scenes from different angles. These point cloud data constitute the 3D surface information of the object. In order to achieve complete 3D reconstruction of complex scenes or large areas, point cloud data from multiple perspectives need to be registered and spliced. When splicing point clouds from different perspectives, accurate registration is required to ensure the spatial consistency of the point clouds.

[0003] However, due to the different shooting angles and distances of each viewpoint, the density and quality of the generated point cloud data vary, which makes it easy for errors to occur during the registration process, affecting the accuracy after stitching is completed. Summary of the invention

[0004] The present invention aims to solve the problem that errors are prone to occur in the registration process due to the different shooting angles and distances of each viewing angle, and provides a multi-view three-dimensional laser point cloud stitching method and system.

[0005] The present invention adopts the following technical means to solve the technical problem:

[0006] The present invention provides a multi-view three-dimensional laser point cloud stitching method, comprising:

[0007] Based on the preset shooting angles, point cloud data corresponding to 3D modeling is collected from each shooting perspective;

[0008] Determining whether the point cloud data can be spliced ​​to obtain the three-dimensional model;

[0009] If not, a preset feature extraction algorithm is applied to identify key feature points in the point cloud data, corresponding feature descriptors are generated according to the key feature points, feature matching is performed at each shooting angle according to the feature descriptors, and after the feature matching is completed, the point cloud data is preliminarily aligned;

[0010] Determining whether a preset error accumulation is detected in the point cloud data;

[0011] If detected, the point cloud data is split into multi-view point cloud data, the perspective overlapping area is detected in the point cloud sequence corresponding to the multi-view point cloud data, a point cloud registration edge is constructed based on the perspective overlapping area, a preset closed-loop detection is applied, the error accumulation is gradually reduced through the point cloud registration edge identification, the pose parameters of each point cloud are dynamically adjusted, and the error measurement values ​​of all edges of three-dimensional modeling are minimized, wherein the pose parameters specifically include translation and rotation.

[0012] Furthermore, before the step of preliminarily aligning the point cloud data, the step further includes:

[0013] Based on the preset geometric matching features of the point cloud data, collecting the preliminary alignment position of the point cloud data, wherein the geometric matching features specifically include surface normals, curvatures and edge features;

[0014] Determining whether the preliminary alignment position matches the initial posture data of the preset sensor;

[0015] If not, extract each normal parameter in the point cloud data, identify the stable feature points of the preliminary alignment position according to the normal parameters, and perform preliminary alignment on the point cloud data based on the stable feature points, wherein the normal parameters specifically include normal direction and normal curvature.

[0016] Furthermore, the step of generating corresponding feature descriptors according to the key feature points and performing feature matching at each shooting angle according to the feature descriptors further includes:

[0017] Applying a preset nearest neighbor search algorithm to obtain a correspondence between feature points in the point cloud data, and collecting the closest feature descriptor for a preset query point on the target point cloud;

[0018] Determining whether the Euclidean distance between the feature descriptors reaches a preset distance value;

[0019] If so, select the point with the smallest distance from the feature descriptor as the matching pair for the feature matching, calculate the distance ratio between the query point and the nearest neighbor point and the second nearest neighbor point, screen the matching pairs based on the calculation result of the distance ratio, eliminate incorrect matches and retain the best matching pairs.

[0020] Furthermore, before the step of dynamically adjusting the pose parameters of each point cloud to minimize the error metric values ​​of all edges of the three-dimensional modeling, the step further includes:

[0021] Acquire the overlap between each group of point clouds in the point cloud data, and identify the common feature area between each group of point clouds based on the overlap;

[0022] Determining whether the overlap of the common feature areas reaches a preset value;

[0023] If not, apply the preset ICP variant algorithm to perform local optimization on the matching points in the common feature area, assign different weight information to the matching points, and reduce the influence of noise points on the local optimization according to the weight information, wherein the ICP variant algorithm specifically includes point-to-point ICP and point-to-plane ICP.

[0024] Furthermore, the step of splitting the point cloud data into multi-view point cloud data further includes:

[0025] Based on a point cloud data set continuously collected by a preset sensor, dividing the view information from the point cloud data set according to a preset spatial position, and calculating normal vector distribution data and density change data of the point cloud data set, wherein the spatial position is specifically an angle range of the distance sensor;

[0026] Determining whether the normal vector distribution data and the density change data match a preset viewing angle switching point;

[0027] If possible, uniform sampling is performed on the split point cloud data of each viewing angle, and the data sets of the point cloud data of each viewing angle are balanced according to the uniform sampling, and the breaking points at the boundaries of the data sets are detected.

[0028] Furthermore, the step of determining whether the point cloud data can be spliced ​​to obtain the three-dimensional modeling further includes:

[0029] Based on a preset simulation process, the point cloud data is simulated and spliced ​​to generate a preliminary three-dimensional model;

[0030] Determining whether a preset error seam is detected in the preliminary three-dimensional model;

[0031] If so, the point cloud data is divided into a preset graph structure, the nodes in the graph structure are used to represent each group of point cloud data, and the edges in the graph structure are used to represent the alignment relationship between the point cloud data under different perspectives, the loop closure information of the preliminary three-dimensional model is detected according to the graph structure, and preset additional perspective data is added based on the loop closure information, wherein the loop closure information specifically includes open areas and unclosed areas.

[0032] Furthermore, the step of collecting point cloud data corresponding to the three-dimensional modeling from each shooting angle based on a preset shooting angle also includes:

[0033] Identifying abnormal isolated points in the three-dimensional modeling within a preset range;

[0034] Determine whether the abnormal isolated points exceed the preset abnormal number of the point cloud surface;

[0035] If so, a preset fitting local surface is applied to smooth the point cloud data to eliminate noise and retain edge detail information of the point cloud data.

[0036] The present invention also provides a multi-view three-dimensional laser point cloud stitching system, comprising:

[0037] The acquisition module is used to acquire point cloud data corresponding to the 3D modeling from various shooting angles based on a preset shooting angle;

[0038] A judgment module, used for judging whether the point cloud data can be spliced ​​to obtain the three-dimensional model;

[0039] an execution module, for, if not, applying a preset feature extraction algorithm to identify key feature points in the point cloud data, generating corresponding feature descriptors according to the key feature points, performing feature matching at each shooting angle according to the feature descriptors, and preliminarily aligning the point cloud data after completing the feature matching;

[0040] A second judgment module is used to judge whether a preset error accumulation is detected in the point cloud data;

[0041] The second execution module is used to split the point cloud data into multi-view point cloud data if detected, detect the perspective overlapping area in the point cloud sequence corresponding to the multi-view point cloud data, construct a point cloud registration edge based on the perspective overlapping area, apply a preset closed-loop detection, identify and gradually reduce the error accumulation through the point cloud registration edge, dynamically adjust the posture parameters of each point cloud, and minimize the error measurement value of all edges of three-dimensional modeling, wherein the posture parameters specifically include translation and rotation.

[0042] Furthermore, it also includes:

[0043] A second acquisition module is used to acquire a preliminary alignment position of the point cloud data based on a preset geometric matching feature of the point cloud data, wherein the geometric matching feature specifically includes a surface normal, a curvature and an edge feature;

[0044] A third judgment module is used to judge whether the preliminary alignment position matches the initial posture data of the preset sensor;

[0045] The third execution module is used to extract each normal parameter in the point cloud data, identify the stable feature points of the preliminary alignment position according to the normal parameters, and perform preliminary alignment on the point cloud data according to the stable feature points, wherein the normal parameters specifically include the normal direction and the normal curvature.

[0046] Furthermore, the execution module also includes:

[0047] An acquisition unit, configured to apply a preset nearest neighbor search algorithm to acquire a correspondence relationship between feature points between the point cloud data, and collect a feature descriptor with the closest distance on the target point cloud for a preset query point;

[0048] A judging unit, used to judge whether the Euclidean distance between the feature descriptors reaches a preset distance value;

[0049] an execution unit, for, if so, selecting the point with the smallest distance from the feature descriptor as a matching pair for the feature matching, calculating the distance ratio between the query point and the nearest neighbor point and the next nearest neighbor point, screening the matching pairs based on the calculation result of the distance ratio, eliminating incorrect matches and retaining the best matching pairs.

[0050] The present invention provides a multi-view 3D laser point cloud stitching method and system, which has the following beneficial effects:

[0051] The present invention uses a feature extraction algorithm to identify key feature points in point cloud data and generate feature descriptors, which can efficiently match point cloud data from different perspectives. After feature matching, preliminary alignment is performed so that the point cloud data reaches a relatively accurate relative position in the preliminary stage, reducing the registration error caused by the difference in perspective. After detecting the accumulated error, the subsequent optimization steps can be triggered to avoid the gradual expansion of the error. By dynamically adjusting the posture parameters of each point cloud, these errors can be gradually reduced. The adjustment of the posture can make the point cloud data more accurately aligned, which helps to eliminate the registration deviation caused by different shooting angles and distances, and ultimately reduce the global error. By splitting the point cloud data and detecting the overlapping area, the shared area between each perspective can be identified. These overlapping areas are the key to multi-perspective point cloud registration, and can provide more common features, making the registration of the point cloud more accurate. By performing registration in the overlapping area, the system can effectively reduce the error caused by different perspectives. BRIEF DESCRIPTION OF THE DRAWINGS

[0052] Figure 1 A schematic diagram of a flow chart of an embodiment of a multi-view 3D laser point cloud stitching method of the present invention;

[0053] Figure 2 This is a structural block diagram of an embodiment of a multi-view three-dimensional laser point cloud stitching system of the present invention. DETAILED DESCRIPTION

[0054] 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. The implementation of the objectives, functional features and advantages of the present invention will be further described in conjunction with the embodiments and with reference to the accompanying drawings.

[0055] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0056] Reference Figure 1, is a multi-view 3D laser point cloud stitching method in an embodiment of the present invention, comprising:

[0057] S1: Based on the preset shooting angle, the point cloud data corresponding to the 3D modeling is collected from each shooting perspective;

[0058] S2: Determine whether the point cloud data can be spliced ​​to obtain the three-dimensional model;

[0059] S3: If not, applying a preset feature extraction algorithm to identify key feature points in the point cloud data, generating corresponding feature descriptors according to the key feature points, performing feature matching at each shooting angle according to the feature descriptors, and preliminarily aligning the point cloud data after completing the feature matching;

[0060] S4: Determine whether a preset error accumulation is detected in the point cloud data;

[0061] S5: If detected, split the point cloud data into multi-view point cloud data, detect the perspective overlapping area in the point cloud sequence corresponding to the multi-view point cloud data, construct a point cloud registration edge based on the perspective overlapping area, apply a preset closed-loop detection, identify and gradually reduce the error accumulation through the point cloud registration edge, dynamically adjust the posture parameters of each point cloud, and minimize the error measurement value of all edges of three-dimensional modeling, wherein the posture parameters specifically include translation and rotation.

[0062] In this embodiment, the system collects point cloud data corresponding to the three-dimensional modeling from each shooting angle based on the shooting angle preset by the laser scanner, and then the system determines whether these point cloud data can be spliced ​​to obtain the three-dimensional modeling to execute the corresponding steps; for example, when the system determines that the point cloud data corresponding to the three-dimensional modeling can be spliced ​​to obtain the three-dimensional modeling, the system will believe that there are sufficient overlapping areas between the shooting angles, so that there are more common feature points between the point cloud data, and the system will further adjust the posture through closed-loop detection to eliminate the global error, further optimize the splicing error between all point cloud fragments, and ensure the accuracy of the entire three-dimensional model in the global range. At the same time, the spliced ​​point cloud data is gridded to generate a three-dimensional model with a continuous surface, making the model more realistic, and the spliced ​​point cloud model is denoised to remove isolated points and redundant points to improve the visual effect and model quality; for example, when the system determines that the point cloud data corresponding to the three-dimensional modeling cannot be spliced ​​to obtain the three-dimensional modeling, the system will believe that there are gaps between the shooting angles, resulting in the inability to splice the point cloud data, and the system will apply a pre-set feature extraction algorithm to identify key feature points in the point cloud data. Generate corresponding feature descriptors based on these key feature points, perform feature matching at each shooting perspective based on different feature descriptors, and preliminarily align point cloud data after feature matching is completed; the feature descriptors generated by the system based on key feature points can be used to establish a corresponding relationship between point cloud data at different perspectives. Matching is performed through feature descriptors. Even if there are gaps between point cloud data due to different perspectives, the system can still identify corresponding feature point pairs, thereby bridging the gaps and improving the accuracy of stitching. At the same time, during the preliminary alignment, the system will adjust the position and angle of the point cloud data to make the overlapping area of ​​each perspective data more accurate. In this way, even if there are blind spots or data missing between perspectives during the initial shooting, feature point alignment can minimize the impact of these gaps and improve the integrity of the overall stitching. In addition, feature matching and preliminary alignment can reduce the error accumulation problem caused by different perspectives and distance changes, thereby improving the accuracy of point cloud stitching. This will further reduce the adjustment range in the subsequent fine registration and global optimization steps, improve the stitching efficiency and the quality of the final model; then the system determines whether these point cloud data detect the preset error accumulation to execute the corresponding steps;For example, when the system determines that the point cloud data does not detect the preset error accumulation, the system will consider that the point cloud data of each perspective has achieved a good match in the preliminary registration and alignment stage, and the error between each data block is kept within an acceptable range. The system will convert the point cloud data into a continuous surface model through mesh reconstruction to provide a better basis for subsequent texture mapping and rendering. While ensuring the accuracy of the model structure, the original captured image data can be mapped to the model surface to enhance the realism and visual effect of the model. At the same time, the final three-dimensional model is subjected to necessary denoising and smoothing to ensure the quality of the model and reduce visual defects. The generated three-dimensional model is exported to a specified format, which is suitable for various application scenarios such as 3D printing, virtual reality, and engineering simulation. For example, when the system determines that the point cloud data can detect the preset error accumulation, the system will consider that the point cloud data of each perspective cannot achieve a good matching effect. The system will split these point cloud data into multi-perspective point cloud data, detect the perspective overlapping area in the point cloud sequence corresponding to the multi-perspective point cloud data, build the point cloud registration edge based on the perspective overlapping area, apply the preset closed-loop detection, and use the point cloud registration edge recognition to obtain the point cloud data. The system can detect the overlapping areas in the multi-view point cloud data, effectively identify the registration deviations between the perspectives, and help ensure the seamless alignment of the data when the multi-view point cloud is spliced, thereby reducing the errors caused by different shooting angles and distance differences. At the same time, by dynamically adjusting the pose parameters of each point cloud, the system can gradually optimize the alignment position of the point cloud data in space, making the overall splicing more accurate. This dynamic adjustment mechanism can adaptively correct the deviations of the data from each perspective, especially in complex scenes, reduce the model dislocation phenomenon, and ensure the coherence of the final 3D modeling. By splitting the point cloud data into multi-view point clouds and constructing a point cloud registration map based on the overlapping areas and registration edges, the data from multiple perspectives can be more efficiently integrated, information redundancy can be reduced, and the overall quality and modeling effect of the point cloud can be improved. By continuously adjusting the registration edges of the point cloud data through closed-loop detection, the system can reduce the error accumulation while also improving the detail accuracy of the model, ensuring that the model surface is smooth and seamless, and enhancing the visual effect and realism of the 3D model. ;

[0063] It should be noted that a preset feature extraction algorithm is applied to identify key feature points in the point cloud data, corresponding feature descriptors are generated according to the key feature points, feature matching is performed at each shooting angle according to the feature descriptors, and after the feature matching is completed, the point cloud data is preliminarily aligned. The specific examples are as follows:

[0064] Suppose a complex historical building (such as a church) needs to be 3D modeled to create a digital model for cultural relic protection. Due to the complex structure and diverse viewing angles of the building, its 3D point cloud data needs to be collected from multiple angles and stitched together to form a complete 3D model.

[0065] First, point cloud data is collected. A laser scanner is used to scan the building from four different perspectives (front, back, left, and right). As a result, four independent sets of point cloud data are obtained. Each set of point cloud contains millions of discrete points, representing the spatial coordinates (x, y, z) of the building surface.

[0066] Then feature extraction and key feature point detection are performed. In each set of point cloud data, the system automatically extracts some "unique" points on the building surface. These points usually include:

[0067] The edges of buildings (e.g. window edges, door frames);

[0068] Corner points (such as wall corners, roof edges);

[0069] protrusions or depressions (such as sculptures, decorative columns);

[0070] Assume that in the point cloud of the left view, the system recognizes the edge of the arch of the main door of the church as a feature point, while in the point cloud of the front view, the system recognizes the top and bottom edges of the same arch as feature points; the "intrinsic shape signature" (ISS) algorithm of the feature detection algorithm is applied to detect feature points to ensure that these feature points can still be recognized even at different resolutions;

[0071] Assume that the number of feature points detected is: 500 feature points are extracted from the left view point cloud, and 600 feature points are extracted from the front view point cloud; feature descriptors are generated for each extracted feature point (such as window corners, door frame edges); these descriptors record the local geometric information around the feature point;

[0072] For example, the "Fast Point Feature Histogram" (FPFH) algorithm is used to generate a descriptor vector for each feature point, describing the curvature distribution and normal vector of the point cloud around it; among the 500 feature points in the left-view point cloud, each feature point generates a 33-dimensional feature vector; the 600 feature points in the front view also generate a 33-dimensional feature vector;

[0073] Then feature matching is performed to match feature points. The point cloud data from different perspectives is matched using the "nearest neighbor search" algorithm. The system compares the feature descriptors of the left and front perspectives one by one and finds a pair of points with the most similar descriptors as the "matching point pair".

[0074] Suppose the system finds that the feature point at the top of the arch in the left-view point cloud matches the corresponding feature point in the front-view point cloud; in addition, it also matches multiple feature point pairs at the edge of the window and the corner of the wall; in the initial matching, the system may make mismatches due to noise or perspective differences; for example, the feature point at the corner of the left view may be mistakenly matched to the wall point at the front view;

[0075] The “Random Sampling Consensus” (RANSAC) algorithm was used to remove outlier matching points that did not conform to the transformation model, and only feature point pairs that truly reflected the actual structure of the building were retained; ultimately, the system retained 50 pairs of reliable matching points;

[0076] Then, a preliminary alignment is performed, and the transformation matrix of the preliminary alignment is calculated. Using the matched feature point pairs, the system calculates the rotation matrix and translation vector of the point cloud through the "singular value decomposition" (SVD) algorithm; assuming that the calculated rotation matrix is ​​R and the translation vector is T, the system transforms the left-side view point cloud to a position aligned with the front-side view point cloud; after the preliminary alignment, the system splices the left and front point cloud data together; at this point, the front of the church and the left arch should be accurately aligned, and the feature points of the windows and door frames should not be obviously misaligned in the overlapping area; if the alignment effect is good, the system will use the result as input for further refined alignment;

[0077] In summary, through feature extraction and feature matching, the system can significantly reduce the alignment error caused by perspective and distance differences in the preliminary alignment stage, ensuring that the overlapping areas can be accurately matched when stitching point cloud data from multiple perspectives; at the same time, feature matching and denoising of point cloud data are performed in the preliminary alignment stage, which can significantly reduce the amount of calculation for subsequent global alignment (such as alignment based on iterative nearest points) and speed up stitching efficiency; and by using feature descriptors and closed-loop detection, error accumulation can be effectively reduced, especially in large-scale complex scenes (such as the internal structure of a church), ensuring that the final three-dimensional model is more accurate.

[0078] It should be added that, based on the view overlap area, a point cloud registration edge is constructed, and a preset closed loop detection is applied to identify and gradually reduce the error accumulation through the point cloud registration edge. The specific examples are as follows:

[0079] Assume that a 3D model of an ancient city wall is being built, and point cloud data is collected from multiple directions using laser scanning technology. To ensure the accuracy of stitching, the above method steps are used, including view overlap area detection, point cloud registration edge construction, loop closure detection, and error adjustment.

[0080] First, the point cloud data was collected. The system performed laser scanning on the city wall from four different directions (east, south, west, and north). The collected point cloud data contained the external contours and detailed features of the building. Among them, the point cloud data on the east and west sides had a large overlap area, while the south and north sides only partially overlapped.

[0081] Then the system automatically detected the overlapping area of ​​the east and west scan data, which is located at the corner of the city wall. This area contains wall details, such as stone textures, which can be used as feature points for matching. At the same time, the point clouds on the north and south sides also partially overlap at both ends of the city wall.

[0082] Then, the point cloud registration edge and the east-west overlapping area registration edge are constructed. After the system detects the overlapping area of ​​the east and west sides, it extracts the feature points in this area and constructs the registration edge. The registration edge describes the geometric relationship between the point clouds on both sides (such as rotation angle and translation amount). Assuming that the number of point clouds on the east side in the corner area of ​​the city wall is 500, and the number of point clouds on the west side is 480, the system performs feature matching in these overlapping point cloud areas, calculates the best alignment method of the point clouds on both sides, and obtains an accurate registration edge. For the registration edge of the north-south overlapping area, the overlapping area of ​​the point clouds between the south and north sides is small, which may be just the two end points of the wall. The system accurately aligns these end points through feature matching and constructs the corresponding registration edge.

[0083] Then, closed-loop detection was applied. During the stitching process, as the point cloud was gradually spliced ​​from the east side to the south side, and then to the west and north sides, the system detected that a small amount of error occurred during the stitching process. In particular, the point cloud data at both ends of the city wall were not completely aligned, resulting in deviations in the overall structure. The system automatically recognized these accumulated errors and started closed-loop detection. When the system was stitching the point clouds on the south and north sides, it was found that in the final stitching result, there was a 10-centimeter misalignment between the two ends of the city wall (i.e., the connection between the south and north ends). The closed-loop detection traced back the entire stitching process and identified that there were slight errors in the registration edges on the east and west sides during the initial stitching, which led to the final accumulated errors.

[0084] Finally, the pose parameters and registration edges are adjusted dynamically. After the accumulated error is found, the system starts to adjust the parameters of the registration edges, such as adjusting the translation and rotation matrices between the east and west registration edges. The system minimizes the error measurement of each edge by globally optimizing the registration edges between each pair of point clouds. For example, the rotation angle is reduced by 2 degrees and the translation distance is reduced by 3 centimeters after adjustment, thereby reducing the error accumulation. For local adjustment and error minimization, for the connection between the north and south ends, the system adjusts the point cloud alignment of the south and north ends, reducing the misalignment of the two ends from the initial 10 centimeters to within 2 centimeters. Finally, the point cloud data of the entire city wall is perfectly spliced, the error accumulation is effectively controlled, the overall model of the city wall is smoother, and there is no obvious misalignment at the connection.

[0085] In summary, the above example shows how to reduce the error accumulation in the point cloud stitching process by constructing point cloud registration edges and applying closed-loop detection technology. The system generates registration edges by feature matching in overlapping areas, and then dynamically adjusts the pose parameters of each point cloud after the closed-loop detection is triggered, thereby minimizing the error.

[0086] In this embodiment, before the step S3 of preliminarily aligning the point cloud data, the following steps are also included:

[0087] S301: Based on the preset geometric matching features of the point cloud data, collecting the preliminary alignment position of the point cloud data, wherein the geometric matching features specifically include surface normals, curvatures and edge features;

[0088] S302: Determine whether the preliminary alignment position matches the initial posture data of the preset sensor;

[0089] S303: If not, extract each normal parameter in the point cloud data, identify the stable feature points of the preliminary alignment position according to the normal parameters, and perform preliminary alignment on the point cloud data according to the stable feature points, wherein the normal parameters specifically include the normal direction and the normal curvature.

[0090] In this embodiment, the system collects the preliminary alignment position of the point cloud data based on the geometric matching features pre-set in the point cloud data, which specifically include surface normals, curvatures and edge features, and then the system determines whether the preliminary alignment position matches the initial posture data of the pre-set sensor to execute the corresponding steps; for example, when the system determines that the preliminary alignment position of the point cloud data can match the initial posture data of the pre-set sensor, the system will believe that the point cloud data has been aligned with the expected coordinate system or scene through preliminary geometric matching, which greatly reduces subsequent alignment errors, and the system will perform a more refined alignment process, such as through small-scale posture optimization or error correction. The point cloud is fine-tuned in one step to obtain more accurate results. At this time, the feature matching of the point cloud will focus more on small-range adjustments without the need for large-scale rotation or translation adjustments. At the same time, the current registration position is temporarily locked as a reference to reduce the error accumulation in subsequent processing, which helps to maintain stability during subsequent point cloud stitching and reduce the need for large displacement or rotation adjustments. After the initial alignment of the point cloud, the system can directly enter the stitching and error accumulation detection stage, focusing on detecting the overlapping area errors of multi-view point cloud data, and performing global optimization by dynamically adjusting the pose parameters. At this time, due to the high initial alignment accuracy, the subsequent error correction calculation amount is relatively small, and the stitching result is smoother; for example, when the system The system determines that the preliminary alignment position of the point cloud data cannot match the initial posture data of the pre-set sensor. At this time, the system will think that the preliminary geometric matching has not aligned the point cloud data with the expected coordinate system, and there is still a registration error. The system will extract the normal parameters in the point cloud data. The normal parameters specifically include the normal direction and normal curvature. According to these normal parameters, the stable feature points of the preliminary alignment position are identified, and the point cloud data are preliminarily registered based on different stable feature points; the system analyzes the local geometric features of each point by extracting the normal direction and normal curvature in the point cloud data, and can more accurately identify stable feature points. These stable feature points (for example, edges, corners, etc.) usually have unique The unique normal direction and curvature features make it easier to maintain consistency under different viewing angles. At the same time, the initial geometric matching may be disturbed by local repeated structures or lack of obvious features. By introducing the analysis of normal direction and curvature parameters, different surface areas can be better distinguished, and reliable feature points for alignment can be identified. The feature point extraction and alignment based on normal parameters can help the system dynamically adjust the alignment position of point cloud data to ensure matching with the expected coordinate system. This method readjusts the alignment by extracting more stable feature points, avoiding the alignment deviation problem that may be encountered in traditional matching methods, thereby effectively reducing the cumulative error in subsequent multi-view stitching and improving the overall accuracy of 3D modeling.

[0091] In this embodiment, the step S3 of generating corresponding feature descriptors according to the key feature points and performing feature matching at each shooting angle according to the feature descriptors further includes:

[0092] S31: applying a preset nearest neighbor search algorithm to obtain a corresponding relationship between feature points between the point cloud data, and collecting the closest feature descriptor for a preset query point on the target point cloud;

[0093] S32: Determine whether the Euclidean distance between the feature descriptors reaches a preset distance value;

[0094] S33: If yes, then select the point with the shortest distance from the feature descriptor as the matching pair of the feature matching, calculate the distance ratio between the query point and the nearest neighbor point and the next nearest neighbor point, and screen the matching pairs based on the calculation result of the distance ratio, eliminate incorrect matches and retain the best matching pair.

[0095] In this embodiment, the system applies a preset nearest neighbor search algorithm to obtain the correspondence between feature points between point cloud data, collects the closest feature descriptors for the preset query points on the target point cloud, and then the system determines whether the Euclidean distance between these feature descriptors reaches the preset distance value to execute the corresponding steps; for example, when the system determines that the Euclidean distance between the feature descriptors does not reach the preset distance value, the system will consider that the similarity between the currently matched feature points is low, and may belong to different object surfaces or incorrect matches. The system will readjust the parameters of the feature extraction algorithm, such as increasing the detection density of feature points or adjusting the calculation scale of feature descriptors to capture more details. Features help to generate more stable feature descriptors and improve matching accuracy. At the same time, geometric features such as normal direction and curvature are further extracted. Multiple features are combined for multiple verifications to improve the accuracy of feature matching. This method can ensure that valid feature point pairs can be found even in the case of large angle changes. If the system detects a large number of matching failures in specific scenarios (such as complex textures or low-contrast areas), the Euclidean distance threshold can be appropriately relaxed, and other geometric information (such as surface normal direction) can be combined to assist in judgment and reduce the impact of false matching. For example, when the system determines that the Euclidean distance between feature descriptors has reached a preset distance value, the system will consider the current match to be a false match. If the similarity between the matched feature points is high and they can be matched, the system will select the point with the smallest distance from the feature descriptor as the matching pair for feature matching, calculate the distance ratio between the query point and the nearest neighbor point and the second nearest neighbor point, and screen the matching pairs based on the calculation result of the distance ratio, eliminate the wrong matches and retain the best matching pairs; by calculating the distance ratio between the query point and the nearest neighbor point and the second nearest neighbor point, the system can more effectively screen out truly reliable matching pairs. The distance ratio screening method can eliminate matching pairs with insufficient feature similarity, thereby reducing the situation of wrong matching. At the same time, retaining the best matching pairs and eliminating the wrong matching pairs can greatly reduce the cumulative error in the process of point cloud registration, which is very useful in the field of multi-view point cloud stitching. In the scene, the accumulated errors may cause deformation and inconsistency of the final model. By ensuring the high-quality input of the matching pairs, the subsequent registration and alignment steps (such as the ICP algorithm) will be more accurate, and a smoother and more coherent 3D reconstruction result will be obtained. If the similarity between the nearest neighbor and the second nearest neighbor of the query point in the target point cloud is very different (that is, the ratio is small), it means that the matching of the nearest neighbor is unique and reliable; conversely, if the distance between the nearest neighbor and the second nearest neighbor is close (that is, the ratio is close to 1), it means that the matching is not unique enough, which may lead to wrong matching. Through this screening process, the wrong matching pairs can be effectively eliminated to ensure that only the optimal feature point pairs are used during registration, thereby improving the accuracy of the entire point cloud stitching.

[0096] It should be noted that a preset nearest neighbor search algorithm is applied to obtain the corresponding relationship between the feature points between the point cloud data, and the feature descriptor with the closest distance is collected on the target point cloud for the preset query point. The specific examples are as follows:

[0097] Example scenario: To reconstruct a complex conference room in 3D, suppose multiple laser scanners are used to shoot the conference room from different angles (such as left and right angles) to obtain its 3D point cloud data; the scanned point cloud data includes details such as the conference table, chairs, walls, and projector screen; in order to accurately stitch together the point cloud data shot from different angles to obtain a complete 3D model, the system needs to apply the nearest neighbor search algorithm to match feature points;

[0098] First, feature point extraction is performed. In this step, the system will first extract significant feature points from the point cloud data obtained from each perspective. Usually, the system will select surface corners, edges, and mutation areas as feature points, because these places have richer geometric information and are easier to match with data from other perspectives. For example, in the point cloud from the left perspective, the system may identify the edge of the conference table, the corner of the wall, the door frame, etc. as feature points; in the point cloud from the right perspective, the system will extract similar feature points, such as the edge of the chair, the outline of the projector screen, the window frame, etc.

[0099] Then, feature descriptors are generated. For each feature point, the system generates a feature descriptor based on the geometric information around it. A feature descriptor is a vector used to describe the environment around a point, including normal direction, surface curvature, neighborhood structure of the point, and other information. These descriptors can help the system distinguish different feature points and be used in subsequent matching steps. Suppose the system extracts a feature point A from the left perspective, and its feature descriptor is [0.6, -0.3, 0.9]. This descriptor reflects the normal direction and curvature of the surface around point A. At the same time, another feature point B is extracted from the right perspective, and its descriptor is [0.62, -0.29, 0.88]. The descriptors of these two points are very close, so the system will try to match them together.

[0100] Then, the nearest neighbor search is applied. The system uses the nearest neighbor search algorithm to find the closest matching point to the current feature point in another set of point cloud data. The system calculates the Euclidean distance between each feature point and other points one by one, and selects the point with the smallest distance as its matching point. Suppose now the system wants to find a matching point for the query point A in the left view in the point cloud of the right view. The system compares the feature descriptor of point A [0.6, -0.3, 0.9] and calculates it with the descriptors of all points in the right view. Find a point whose descriptor is closest to A, such as the descriptor of point B [0.62, -0.29, 0.88]. The system finds that the Euclidean distance between the two points is very small, so it regards point A and point B as a matching pair.

[0101] Then, the matching pairs are screened. Even if the matching points are obtained through the nearest neighbor search, the system still needs further screening to ensure the accuracy of the matching. The system verifies the reliability of the matching by calculating the distance ratio between the query point and the nearest neighbor point and the next nearest neighbor point. For example, for feature point A, in addition to point B, the system also finds another next nearest neighbor point C, whose descriptor is [0.55, -0.35, 0.85]. The system calculates the distance between A and B as 0.05, and the distance between A and C as 0.1. The system calculates the ratio of these two distances and obtains 0.05 / 0.1=0.5. If the ratio is lower than a preset threshold (for example, 0.6), point A and point B are considered to be a valid match. Otherwise, it is considered to be a mismatch and the system will eliminate these matching pairs.

[0102] Finally, preliminary alignment is performed. Once the system confirms the matching pairs, the relative positions of the point clouds can be adjusted based on these matching points. Based on these feature point pairs, the system will perform rigid body transformations (including translation and rotation) to make the point clouds on the left and right sides overlap as much as possible. For example, the system found a set of valid matching pairs, which come from the edge of the conference table, the position of the chair, and the corner of the wall. Using these matching pairs, the system can adjust the point cloud of the right perspective to align it with the point cloud of the left perspective. After alignment, the 3D point cloud of the entire conference room will be more accurately stitched together to generate a more complete 3D model.

[0103] In summary, the above example ensures a high similarity between feature points through nearest neighbor search and matching pair screening, thereby reducing the occurrence of mismatches. At the same time, the precise matching of feature points helps to better align point cloud data from different perspectives and improve the accuracy of 3D reconstruction. The automated feature matching process reduces the reliance on manual adjustments and speeds up the efficiency of point cloud stitching.

[0104] It should be supplemented that the point with the smallest distance is selected from the feature descriptor as the matching pair of the feature matching, and the distance ratio between the query point and the nearest neighbor point and the second nearest neighbor point is calculated. The matching pairs are screened based on the calculation result of the distance ratio, and the wrong matches are eliminated and the best matching pairs are retained. The specific examples are as follows:

[0105] Suppose that a 3D reconstruction of a room inside a building is being performed, and point cloud data needs to be collected from multiple viewpoints (such as different corners of the room). Since these point cloud data are taken at different locations, they need to be aligned through feature matching when stitching. During the 3D reconstruction process, the system will use feature matching algorithms to align point cloud data from different viewpoints. In this process, in order to ensure accurate alignment of point cloud data, the system will determine the similarity between each point based on feature descriptors and screen them to ensure that the retained matching pairs are reliable.

[0106] First, obtain feature points and generate feature descriptors. The system first extracts feature points from the point cloud data of each view and generates feature descriptors for these feature points. For example, suppose in the point cloud of view A, we extract a feature point P1, and its feature descriptor is [0.7, -0.2, 0.9]. Similarly, in the point cloud of view B, we extract several feature points, namely Q1, Q2 and Q3, and their feature descriptors are [0.68, -0.21, 0.91], [0.5, -0.4, 0.8] and [0.72, -0.18, 0.88] respectively.

[0107] Then, the nearest neighbor search is applied for preliminary matching. The system uses the nearest neighbor search algorithm to find the point that is most similar to the feature point P1 in view B; calculate the Euclidean distance between P1 and points Q1, Q2, and Q3:

[0108] The distance between P1 and Q1 = sqrt((0.7-0.68)²+(-0.2+0.21)²+(0.9-0.91)²)≈0.024;

[0109] The distance between P1 and Q2 = sqrt((0.7-0.5)²+(-0.2+0.4)²+(0.9-0.8)²)≈0.244;

[0110] The distance between P1 and Q3 = sqrt((0.7-0.72)²+(-0.2+0.18)²+(0.9-0.88)²)≈0.029;

[0111] After calculation, the system finds that the distance of point Q1 is the smallest (0.024), so P1 and Q1 are preliminarily matched as a matching pair;

[0112] The distance ratio is then calculated to screen the matching pairs. To ensure the reliability of the match, the system not only relies on the nearest neighbor distance, but also considers the next nearest neighbor point and screens the best match based on the distance ratio between the two.

[0113] Find the next nearest neighbor: In the above example, the next nearest neighbor of P1 is point Q3, whose distance is 0.029;

[0114] The ratio calculation formula is: distance ratio = nearest neighbor distance / next nearest neighbor distance;

[0115] Substitute the data: distance ratio = 0.024 / 0.029≈0.83;

[0116] Set the threshold: Assume that the preset distance ratio threshold of the system is 0.8. If the ratio is less than the threshold, the match is considered reliable; if the ratio is greater than the threshold, it may be a false match. In this example, 0.83>0.8, so there may be uncertainty in the match between P1 and Q1. The system will remove this pair of matches and will not use them for subsequent point cloud registration.

[0117] Then the best matching pairs are retained. Through the above screening, the system will only retain the matching pairs with low distance ratio and reliability; these matching pairs will be used to adjust the position and direction of the point cloud data to ensure a more accurate stitching effect in 3D reconstruction;

[0118] In summary, by calculating the distance ratio, the system can eliminate mismatched point pairs and reduce registration errors, thereby improving the accuracy of point cloud stitching. At the same time, since incorrect matching will lead to deviations in subsequent stitching results, screening out the optimal matching pairs can reduce cumulative errors and ensure the accuracy of the 3D reconstructed model. Even in complex scenarios (such as point cloud data containing noise or missing parts of the area), the screening mechanism can still help the system identify stable matching pairs and improve the overall modeling effect.

[0119] In this embodiment, before the step S5 of dynamically adjusting the pose parameters of each point cloud to minimize the error metric values ​​of all edges of the three-dimensional modeling, the method further includes:

[0120] S501: Obtaining the degree of overlap between each group of point clouds in the point cloud data, and identifying a common feature area between each group of point clouds based on the degree of overlap;

[0121] S502: Determine whether the overlap of the common feature regions reaches a preset value;

[0122] S503: If not, apply a preset ICP variant algorithm to perform local optimization on the matching points in the common feature area, assign different weight information to the matching points, and reduce the influence of noise points on the local optimization according to the weight information, wherein the ICP variant algorithm specifically includes point-to-point ICP and point-to-plane ICP.

[0123] In this embodiment, the system obtains the overlap between each group of point clouds in the point cloud data, identifies the common feature areas between each group of point clouds based on these overlaps, and then the system determines whether the overlap of these common feature areas reaches a preset value to execute the corresponding steps; for example, when the system determines that the overlap of the common feature areas between each group of point clouds can reach a preset value, the system will consider that the matching degree of the point cloud data is high, and the point cloud data of each perspective are aligned more accurately in the common area. The system will further verify the accuracy of the alignment to ensure that there are no obvious errors or misalignments. Based on the overlap that has been achieved, a sophisticated registration algorithm (such as an ICP algorithm) can be applied to reduce minor alignment errors and improve accuracy. At the same time, after ensuring that the overlap reaches the preset standard, the system can merge the point cloud data in the overlapping area into a unified three-dimensional model, remove redundant data, ensure the quality and fluency of the model, and the merged point cloud data needs to be analyzed for errors. The system will detect whether there is error accumulation in the model, especially in the overlapping area, and eliminate the error by adjusting the posture, etc.; for example, when the system determines that the overlap of the common feature areas between each group of point clouds cannot reach a preset value, at this time The system will think that the matching degree of the point cloud data is insufficient, and the system will apply the pre-set ICP variant algorithm. The ICP variant algorithm specifically includes point-to-point ICP and point-to-plane ICP, and locally optimizes the matching points in these common feature areas, assigns different weight information to these matching points, and reduces the impact of noise points on local optimization according to different weight information; the system can effectively optimize the registration accuracy of the point cloud data by minimizing the geometric error between the matching points, because the point-to-plane ICP calculates the distance from the point to the plane, which is usually more suitable for processing scenes containing plane surfaces or large flat areas than the point-to-point ICP, thereby improving the registration quality. At the same time, by assigning different weights to the matching points, important or highly credible points play a greater role in the registration process, while reducing the impact of noise points on the optimization results. This can prevent mismatching or misregistration caused by noise points, enhance the stability and accuracy of the model, and local optimization of matching points can fine-tune the registration of local areas without having to globally optimize the entire point cloud, thereby improving efficiency and avoiding the propagation of global errors. Local optimization helps to achieve more accurate alignment in overlapping areas, especially in complex geometric shapes or detailed parts.

[0124] It should be noted that the preset ICP variant algorithm is applied to locally optimize the matching points in the common feature area, and different weight information is assigned to the matching points. The influence of noise points on the local optimization is reduced according to the weight information. The specific examples are as follows:

[0125] Suppose that a city street is scanned using LiDAR for 3D reconstruction. The point cloud data of this street comes from multiple viewpoints, and each scanner has a different angle and height, so there will be overlapping areas in the data. In order to stitch these point cloud data and eliminate registration errors, an ICP variant algorithm (point-to-point ICP or point-to-plane ICP) is used for optimization.

[0126] The characteristics of point cloud data are:

[0127] Building exterior wall: The wall surface is relatively flat, with almost no curvature change and a relatively smooth surface;

[0128] Road: Flat in some areas, but with some curved lanes and a relatively smooth surface;

[0129] Trees and street lights: These objects usually have more complex geometric shapes and higher density of point cloud data;

[0130] Measurement noise: Due to sensor reflection issues and environmental noise, some point cloud data contain noisy points (e.g., false tree branch points or other interfering objects);

[0131] First, weighted matching points are selected. The system first performs preliminary alignment of the point cloud data and selects matching points using the nearest neighbor search algorithm. At this time, the system selects matching points in common feature areas, such as relatively flat areas of building walls or roads. Then, the system assigns different weights to each matching point:

[0132] Flat areas (such as building exterior walls and roads): The point clouds in these areas are relatively stable and the curvature changes little, so the system will give these points a higher weight; these points are more reliable for the registration process and can provide a more accurate reference for ICP optimization;

[0133] Complex shape areas (such as trees and street lights): The point clouds in these areas usually have large curvature changes, so the system will give these points lower weights; the unstable geometry of these points may interfere with point cloud registration, and the system reduces the impact of these points on the optimization process by reducing their weights;

[0134] Noise points: For example, points due to poor sensor reflection or erroneous measurements, which do not match the point cloud data in other areas; the system will identify and give these points a very low weight, or even exclude them completely to prevent them from affecting the registration results;

[0135] Then, the ICP variant algorithm is optimized. The system uses the point-to-point ICP or point-to-plane ICP algorithm to optimize the registration of the point cloud data. The point-to-plane ICP algorithm is selected here because roads and building walls are relatively flat areas, and point-to-plane ICP can better optimize these areas. In each round of optimization, the system adjusts the contribution of the matching points according to the preset weight information:

[0136] For high-weight points (such as building wall points), the system will accurately calculate their registration errors and try to minimize the Euclidean distance between these points;

[0137] For low-weight points (such as trees or street lights), the system will reduce the contribution of these points to the overall optimization, so that even if the matching error of these points is large, it will not affect the overall registration accuracy;

[0138] Then, weight adjustment and noise point suppression are performed. During the optimization process, the system will continue to adjust the weights and remove some matching points that do not meet the preset requirements. For example, the system further adjusts the weight of each matching point by calculating the normal direction, curvature and density of neighboring points of the matching point.

[0139] Noise points (such as erroneous branch points or irrelevant objects) are usually gradually eliminated in multiple rounds of iterations because they cause large errors in the registration process, and the system will give them lower weights, and eventually the impact of these points will be minimized;

[0140] Finally, after several rounds of optimization, the system was able to successfully stitch point cloud data from different perspectives into a complete 3D street model. By reducing the impact of noise points, the system was able to more accurately match the edges of roads and buildings, optimize road curves and building facades, and ultimately generate a high-quality 3D model. For example, after optimization, the walls of buildings and the edges of roads had very small registration errors, and the point cloud data in overlapping areas merged perfectly. Complex areas such as trees and street lights, although not completely perfectly aligned, were given lower weights and therefore did not affect the quality of the overall model.

[0141] In summary, by assigning different weights to matching points in point cloud data, the system can effectively reduce the impact of noise points on local optimization. High-weight points (such as points in flat areas) play a decisive role in the final registration results, while low-weight points (such as points with large curvature or complex shapes) are properly excluded to reduce their interference. This optimization method makes the final 3D modeling results more accurate and stable, especially in the point cloud data processing of complex environments such as urban streets and buildings. It has significant advantages.

[0142] In this embodiment, the step S5 of splitting the point cloud data into multi-view point cloud data further includes:

[0143] S51: Based on a point cloud data set continuously collected by a preset sensor, dividing the view information from the point cloud data set according to a preset spatial position, and calculating normal vector distribution data and density change data of the point cloud data set, wherein the spatial position is specifically an angle range of the distance sensor;

[0144] S52: Determine whether the normal vector distribution data and the density change data match a preset viewing angle switching point;

[0145] S53: If yes, uniform sampling is performed on the split point cloud data of each viewing angle, the data sets of the point cloud data of each viewing angle are balanced according to the uniform sampling, and the breakpoints at the boundaries of the data sets are detected.

[0146] In this embodiment, the system divides the perspective information from the point cloud data set according to a preset spatial position based on a point cloud data set continuously collected by a preset sensor, the spatial position is specifically the angle range of the distance sensor, and calculates the normal vector distribution data and density change data of the point cloud data set. Then the system determines whether these normal vector distribution data and density change data can match the preset perspective switching point to execute the corresponding steps; for example, when the system determines that these normal vector distribution data and density change data cannot match the preset perspective switching point, the system will consider that the current point cloud data may have a registration problem or the data is sparse and the noise is large in some areas, resulting in a failure of the perspective switching. The system will adjust the setting parameters of the perspective switching point, such as changing the angle range, spacing, etc., or adaptively adjust the position and range of the perspective switching point according to the actual situation, and optimize the sampling of the point cloud through a density adjustment algorithm (such as adaptive sampling or regional encryption) to make the data density more uniform between each perspective, thereby improving the matching degree of the normal vector distribution and the density change, and apply a more sophisticated registration algorithm (such as feature point-based registration, optimization algorithm, etc.) for local optimization to reduce the registration error and ensure that the data between different perspectives can be smoothly Switching; for example, when the system determines that these normal vector distribution data and density change data can match the pre-set perspective switching point, the system will consider that there is no registration problem or data sparseness in the current point cloud data, and the perspective switching is normal. The system will uniformly sample the split point cloud data of each perspective, balance the data sets of each perspective point cloud data based on uniform sampling, and detect the breakpoints at the boundaries of these data sets; through uniform sampling, the system can avoid the situation where the data in some perspective areas are too dense and the data in other areas are too sparse, thereby improving the quality and accuracy of the overall point cloud data and ensuring the spatial consistency of the point cloud data. Uniform distribution improves the accuracy of point cloud registration and reduces registration errors caused by uneven data. At the same time, it ensures that the data in the point cloud dataset is balanced between various perspectives to avoid too much or too little data in certain areas, which leads to inaccurate subsequent processing. For example, in the process of point cloud stitching and registration, data imbalance may lead to loss of information in certain areas or inaccurate local registration. By detecting and repairing boundary breakpoints, discontinuity or missing problems in the stitching process can be effectively avoided, and the integrity and accuracy of the stitching can be improved, which is crucial for the final 3D modeling, especially in applications that require accurate reconstruction of surface details.

[0147] In this embodiment, the step S2 of determining whether the point cloud data can be spliced ​​to obtain the three-dimensional modeling further includes:

[0148] S21: Based on a preset simulation process, the point cloud data is simulated and spliced ​​to generate a preliminary three-dimensional model;

[0149] S22: Determine whether a preset error seam is detected in the preliminary three-dimensional model;

[0150] S23: If yes, the point cloud data is divided into a preset graph structure, the nodes in the graph structure are used to represent each group of point cloud data, and the edges in the graph structure are used to represent the registration relationship between the point cloud data under different perspectives, the loop closure information of the preliminary three-dimensional model is detected according to the graph structure, and preset additional perspective data is added according to the loop closure information, wherein the loop closure information specifically includes an open area and an unclosed area.

[0151] In this embodiment, the system simulates and stitches the point cloud data based on a preset simulation process to generate a preliminary 3D model, and then the system determines whether the preliminary 3D model detects a preset error seam to execute the corresponding steps; for example, when the system determines that the preliminary 3D model does not detect a preset error seam, the system will consider that the current point cloud data stitching quality is good, the registration and alignment between the point cloud data have reached the expected accuracy, and no obvious stitching errors or seams have been generated. The system will continue to perform more detailed verification, such as using local registration or different algorithms (such as ICP algorithm) to further optimize the stitching results. If there is no obvious seam, it means that the preliminary stitching is good, and the preliminary model is applied to In a wider range of simulations or analyses, data from different perspectives are further integrated, and subsequent processing steps such as detail restoration, texture mapping, or multi-perspective data fusion are performed to improve the accuracy and usability of the 3D model. After confirming that the preliminary model has no error seams, a complete 3D reconstruction model is generated for final visualization and output. For example, when the system determines that the preliminary 3D model has detected a pre-set error seam, the system will consider that the current point cloud data is not perfectly spliced ​​and cannot achieve the expected accuracy. The system will divide the point cloud data into a pre-set graph structure, and the nodes of the graph structure represent each group of point cloud data. The edges of the graph structure represent the registration relationship between point cloud data at different perspectives. The preliminary 3D model is detected based on the graph structure. The loop closure information of the model, which specifically includes open areas and unclosed areas, is used to add pre-set additional perspective data based on these loop closure information. The system can promptly detect error seams or unclosed areas in the point cloud data by analyzing the loop closure information of the preliminary 3D model. The open areas and unclosed areas in the loop closure information can help the system clearly identify which parts of the splicing have not met expectations, which provides a specific reference for subsequent adjustments and avoids further error expansion. At the same time, the point cloud data is divided into a graph structure, with each group of point cloud data represented by a graph node, and the graph edges represent the data registration relationship under different perspectives, making the organization of the entire point cloud data clearer and more structured, helping the system to clearly Clearly knowing the data relationship of each viewpoint point cloud can enable a more detailed analysis of the mutual registration accuracy, thereby improving the overall quality of stitching, and the recognition of loop closure information can specifically point out the problem areas in the stitching process, such as unclosed areas. After analyzing the loop closure information, the system can selectively add additional viewpoint data based on the specific locations of the open areas and unclosed areas. By adding additional viewpoint data to problematic areas, the system can improve the coverage and alignment accuracy of the point cloud data. The introduction of additional viewpoint data helps to reduce errors in the stitching process, especially in areas with sparse data or insufficient viewpoints, preventing errors from propagating during the stitching process, thereby ensuring that the accuracy of the final 3D model is improved.

[0152] In this embodiment, based on the preset shooting angle, the step S1 of collecting point cloud data corresponding to the three-dimensional modeling from each shooting angle also includes:

[0153] S11: Identify abnormal isolated points in the three-dimensional modeling within a preset range;

[0154] S12: Determine whether the abnormal isolated points exceed the preset abnormal number of the point cloud surface;

[0155] S13: If yes, apply a preset fitting local surface to smooth the point cloud data to eliminate noise and retain edge detail information of the point cloud data.

[0156] In this embodiment, the system identifies abnormal isolated points in the three-dimensional modeling within a preset range, and then determines whether these abnormal isolated points exceed the preset abnormal number of the point cloud surface to execute the corresponding steps; for example, when the system determines that the abnormal isolated points in the three-dimensional modeling within the preset range do not exceed the preset abnormal number of the point cloud surface, the system will consider that the number of abnormal isolated points is within an acceptable range, that is, the existence of these points will not significantly affect the overall quality and accuracy of the three-dimensional model, and the system will maintain the current three-dimensional modeling state without additional corrections or adjustments, avoiding excessive processing of these points, saving computing resources and time, and at the same time, a noise filtering algorithm can be applied to further reduce redundant or low-quality points in the point cloud, improve the clarity of the point cloud data, further improve the modeling accuracy, and mark these isolated points for subsequent processing or monitoring to avoid potential subsequent problems; for example, when the system determines that the abnormal isolated points in the three-dimensional modeling within the preset range exceed the preset abnormal number of the point cloud surface, the system will consider that the number of abnormal isolated points is too large, affecting In order to improve the overall quality and accuracy of the 3D model, the system will apply the pre-set fitting local surface, smooth the point cloud data to eliminate noise, and retain the edge detail information of the point cloud data; by smoothing the point cloud data, the system can effectively remove noise points and abnormal isolated points, avoid the interference of these irregular data on 3D modeling, and thus improve the overall accuracy of the model. In the process of fitting the local surface, the system can smooth out unnecessary noise and use surface fitting technology to retain the edge detail information of the model, which is crucial for accurately restoring the shape structure of the target object, especially when dealing with models with complex shapes or rich details. At the same time, by removing abnormal isolated points, the point cloud data becomes more uniform and smooth, thereby improving the availability of the data, because abnormal isolated points are often caused by external interference or sensor errors. The system can eliminate these interferences through smoothing, reduce the propagation of errors, and ensure the accuracy of the data. The smoothed point cloud data avoids the rough surface or irregular shape caused by abnormal isolated points, making the generated 3D model surface smoother and more natural, which is helpful for subsequent rendering and display.

[0157] It should be noted that the preset fitting local surface is applied to smooth the point cloud data to eliminate noise and retain edge detail information of the point cloud data. The specific examples are as follows:

[0158] 1. Building facade modeling,

[0159] Suppose you are doing 3D modeling of a building's facade, using a laser scanner or other 3D sensor to obtain point cloud data. The noise in the point cloud data may come from sensor errors, weather factors (such as rain or haze), or reflections from the surrounding environment. These noise points may cause the surface of the building facade model to be uneven, affecting subsequent modeling and analysis.

[0160] process:

[0161] The system first smoothes the point cloud data by fitting local surfaces. Specifically, the system fits the wall area of ​​the building to fit all the data points of the wall area into a smooth surface. This process removes noise points on the wall (such as irrelevant points caused by reflection) and smoothes out irregular areas on the surface.

[0162] When removing noise, the system pays special attention to preserving the edge features of buildings; for example, the edge information of windows and doors of buildings will be preserved because these edge details are crucial to the geometry of the building;

[0163] Effect:

[0164] After smoothing, the 3D model of the building's facade will become more refined and smooth, removing unnecessary noise points; key details such as the building's windows and door frames are completely preserved, which is very important for subsequent architectural analysis or virtual reality display; because the surface fitting of the wall becomes smoother, the subsequent texture mapping and rendering also become more accurate, enhancing the realism of the 3D model;

[0165] 2. Car model reconstruction,

[0166] Suppose you are reconstructing a 3D model of a car and using a LiDAR or depth camera to collect point cloud data. There may be many noise points on the surface of the car, especially near parts such as wheels and lights, such as unreal points caused by sensor errors or environmental interference.

[0167] process:

[0168] The system handles these noise points by fitting local surfaces; for example, the smooth surface of the car body will be smoothed using a suitable fitting surface, while the point cloud data around the wheel may apply local surface fitting to ensure the shape of the wheel is accurate; the edge areas of the lights, windows and doors will also be specially preserved; in these areas, the system will maintain details based on the geometric changes of the edges without losing important features due to smoothing;

[0169] Effect:

[0170] After processing, the car body surface no longer shows the abrupt bumps and depressions caused by noise points, and the appearance of the car becomes smoother and more realistic; the details of the lights and windows are retained to ensure the high accuracy of the model, which can meet the needs of high-precision applications such as automotive design and simulation; in subsequent steps (such as 3D printing or virtual reality applications), the smoothed model can better adapt to these applications;

[0171] 3. Reverse engineering of industrial parts,

[0172] Suppose a reverse engineering task of a mechanical part is being performed, and the point cloud data of the part is obtained through a 3D scanner; the scanned data may contain some isolated noise points or errors caused by surface irregularities; these errors will cause the generated 3D model to be inaccurate, affecting subsequent analysis, manufacturing and assembly;

[0173] process:

[0174] The system smoothes the surface of parts by fitting local surfaces, especially processing plane or curved areas on parts. For flat surfaces, the system uses fitting algorithms to generate a smooth surface to eliminate local noise. For parts with complex shapes, the system applies different fitting strategies based on different local geometric structures to ensure that the details of the parts (such as holes, threads, etc.) are accurately preserved while removing abnormal points in the surrounding areas.

[0175] Effect:

[0176] The surface of the 3D model of the part becomes smoother, and the noise points are effectively eliminated; the details of the part, such as the aperture, thread and other special shapes, are retained, which is crucial for precise manufacturing in reverse engineering; the digital model in subsequent processing or CNC machine tools can be used directly, avoiding processing errors caused by data noise;

[0177] 4. Terrain data modeling,

[0178] In terrain modeling, especially in terrain point cloud data obtained using unmanned aerial vehicles (UAVs) or satellite images, there are often some isolated noise points, such as data deviations caused by sensor errors during flight, weather effects, or cloud cover. These noise points will affect the accurate modeling of terrain, especially in fine terrain analysis.

[0179] process:

[0180] The system will apply the method of fitting local surfaces, especially in the modeling process of natural landscapes such as mountains, rivers or lakes, to smooth these noise points and retain the true characteristics of the terrain; for the boundaries of the terrain, especially the edges of water bodies, ridges and other details, the system will specially preserve these edges to avoid edge blurring or loss of details due to smoothing;

[0181] Effect:

[0182] The surface of the terrain model is smoother, noise points are removed, and the model is more accurate, suitable for subsequent analysis or visualization; key terrain details (such as the boundaries of water areas and the contours of mountains) are retained, which helps to accurately depict the complexity of natural landscapes;

[0183] In summary, the system applies fitting of local surfaces to smooth point cloud data, which can remove noise while retaining the geometric details of the model, especially the edge features of the object; this process is very important for various 3D modeling applications, such as building reconstruction, automobile modeling, industrial parts reverse engineering and terrain modeling; it can improve the accuracy and quality of the model, making subsequent analysis, simulation, printing and other steps more accurate and reliable.

[0184] Reference Figure 2 , is a multi-view 3D laser point cloud stitching system in one embodiment of the present invention, comprising:

[0185] The acquisition module 10 is used to acquire point cloud data corresponding to the three-dimensional modeling from each shooting angle based on a preset shooting angle;

[0186] A judgment module 20, used to judge whether the point cloud data can be spliced ​​to obtain the three-dimensional model;

[0187] The execution module 30 is used for, if not, applying a preset feature extraction algorithm to identify key feature points in the point cloud data, generating corresponding feature descriptors according to the key feature points, performing feature matching at each shooting angle according to the feature descriptors, and preliminarily aligning the point cloud data after completing the feature matching;

[0188] A second judgment module 40 is used to judge whether a preset error accumulation is detected in the point cloud data;

[0189] The second execution module 50 is used to split the point cloud data into multi-view point cloud data if detected, detect the view overlapping area in the point cloud sequence corresponding to the multi-view point cloud data, construct a point cloud registration edge based on the view overlapping area, apply a preset closed-loop detection, identify and gradually reduce the error accumulation through the point cloud registration edge, dynamically adjust the posture parameters of each point cloud, and minimize the error measurement value of all edges of three-dimensional modeling, wherein the posture parameters specifically include translation and rotation.

[0190] In this embodiment, the acquisition module 10 acquires point cloud data corresponding to the three-dimensional modeling from each shooting angle based on the shooting angle preset by the laser scanner, and then the judgment module 20 judges whether these point cloud data can be spliced ​​to obtain the three-dimensional modeling to execute the corresponding steps; for example, when the system determines that the point cloud data corresponding to the three-dimensional modeling can be spliced ​​to obtain the three-dimensional modeling, the system will believe that there is enough overlapping area between the various shooting angles, so that there are more common feature points between the point cloud data, and the system will further adjust the posture through closed-loop detection to eliminate global errors and further optimize the splicing between all point cloud fragments. Error, to ensure the accuracy of the entire 3D model in the global scope, and at the same time, the spliced ​​point cloud data is gridded to generate a 3D model with a continuous surface, making the model more realistic, and the spliced ​​point cloud model is denoised to remove isolated points and redundant points, so as to improve the visual effect and model quality; for example, when the system determines that the point cloud data corresponding to the 3D modeling cannot be spliced ​​to obtain the 3D modeling, the execution module 30 will think that there are gaps between the perspectives, resulting in the inability to splice the point cloud data, and the system will apply a pre-set feature extraction algorithm to identify the key features in the point cloud data The system generates feature points based on these key feature points, generates corresponding feature descriptors based on these key feature points, performs feature matching at each shooting angle based on different feature descriptors, and preliminarily aligns the point cloud data after completing feature matching; the feature descriptors generated by the system based on key feature points can be used to establish a corresponding relationship between point cloud data at different angles, and match through feature descriptors. Even if there are gaps between point cloud data due to different angles, the system can still identify the corresponding feature point pairs, thereby bridging the gaps and improving the accuracy of stitching. At the same time, during the preliminary alignment, the system will adjust the position and angle of the point cloud data to make the weight of the data at each angle consistent. The overlapped area is more accurate, so even if there are blind spots or data missing between viewing angles during the initial shooting, the influence of these gaps can be minimized through feature point alignment, and the integrity of the overall stitching can be improved. Moreover, through feature matching and preliminary alignment, the error accumulation problem caused by different viewing angles and distance changes can be reduced, thereby improving the accuracy of point cloud stitching. This will further reduce the adjustment range in the subsequent fine registration and global optimization steps, improve the stitching efficiency and the quality of the final model; then the second judgment module 40 judges whether the point cloud data detects the preset error accumulation, so as to execute the corresponding steps;For example, when the system determines that the point cloud data does not detect a preset error accumulation, the system will consider that the point cloud data of each perspective has achieved a good match in the preliminary registration and alignment stage, and the errors between each data block are kept within an acceptable range. The system will convert the point cloud data into a continuous surface model through mesh reconstruction to provide a better basis for subsequent texture mapping and rendering. While ensuring the accuracy of the model structure, the original captured image data can be mapped to the model surface to enhance the realism and visual effect of the model. At the same time, the final three-dimensional model is subjected to necessary denoising and smoothing to ensure the quality of the model and reduce visual defects. The generated three-dimensional model is exported to a specified format, which is suitable for various application scenarios such as 3D printing, virtual reality, and engineering simulation. For example, when the system determines that the point cloud data can detect a preset error accumulation, the second execution module 50 will consider that the point cloud data of each perspective cannot achieve a good matching effect. The system will split these point cloud data into multi-perspective point cloud data, detect the perspective overlapping area in the point cloud sequence corresponding to the multi-perspective point cloud data, construct the point cloud registration edge based on the perspective overlapping area, apply the preset closed-loop detection, and pass the point cloud registration. The system can identify the edges and gradually reduce the error accumulation, dynamically adjust the pose parameters of each point cloud, which specifically include translation and rotation, to minimize the error measurement values ​​of all edges of 3D modeling; by detecting the overlapping areas in the multi-view point cloud data, the system can effectively identify the registration deviations between the perspectives, which helps to ensure the seamless alignment of the data when the multi-view point cloud is stitched, thereby reducing the errors caused by different shooting angles and distance differences. At the same time, by dynamically adjusting the pose parameters of each point cloud, the system can gradually optimize the alignment position of the point cloud data in space, making the overall stitching more accurate. This dynamic adjustment The mechanism can adaptively correct the deviation of each viewpoint data, especially in complex scenes, reduce model dislocation, ensure the coherence of the final 3D modeling, and by splitting the point cloud data into multi-viewpoint point clouds and building a point cloud registration map based on overlapping areas and registration edges, it can more efficiently integrate data from multiple viewpoints, reduce information redundancy, and improve the overall quality and modeling effect of the point cloud. By continuously adjusting the registration edges of the point cloud data through closed-loop detection, the system can reduce error accumulation while improving the detail accuracy of the model, ensuring that the model surface is smooth and seamless, and enhancing the visual effect and realism of the 3D model. ;

[0191] In this embodiment, it also includes:

[0192] A second acquisition module is used to acquire a preliminary alignment position of the point cloud data based on a preset geometric matching feature of the point cloud data, wherein the geometric matching feature specifically includes a surface normal, a curvature and an edge feature;

[0193] A third judgment module is used to judge whether the preliminary alignment position matches the initial posture data of the preset sensor;

[0194] The third execution module is used to extract each normal parameter in the point cloud data, identify the stable feature points of the preliminary alignment position according to the normal parameters, and perform preliminary alignment on the point cloud data according to the stable feature points, wherein the normal parameters specifically include the normal direction and the normal curvature.

[0195] In this embodiment, the system collects the preliminary alignment position of the point cloud data based on the geometric matching features pre-set in the point cloud data, which specifically include surface normals, curvatures and edge features, and then the system determines whether the preliminary alignment position matches the initial posture data of the pre-set sensor to execute the corresponding steps; for example, when the system determines that the preliminary alignment position of the point cloud data can match the initial posture data of the pre-set sensor, the system will believe that the point cloud data has been aligned with the expected coordinate system or scene through preliminary geometric matching, which greatly reduces subsequent alignment errors, and the system will perform a more refined alignment process, such as through small-scale posture optimization or error correction. The point cloud is fine-tuned in one step to obtain more accurate results. At this time, the feature matching of the point cloud will focus more on small-range adjustments without the need for large-scale rotation or translation adjustments. At the same time, the current registration position is temporarily locked as a reference to reduce the error accumulation in subsequent processing, which helps to maintain stability during subsequent point cloud stitching and reduce the need for large displacement or rotation adjustments. After the initial alignment of the point cloud, the system can directly enter the stitching and error accumulation detection stage, focusing on detecting the overlapping area errors of multi-view point cloud data, and performing global optimization by dynamically adjusting the pose parameters. At this time, due to the high initial alignment accuracy, the subsequent error correction calculation amount is relatively small, and the stitching result is smoother; for example, when the system The system determines that the preliminary alignment position of the point cloud data cannot match the initial posture data of the pre-set sensor. At this time, the system will think that the preliminary geometric matching has not aligned the point cloud data with the expected coordinate system, and there is still a registration error. The system will extract the normal parameters in the point cloud data. The normal parameters specifically include the normal direction and normal curvature. According to these normal parameters, the stable feature points of the preliminary alignment position are identified, and the point cloud data are preliminarily registered based on different stable feature points; the system analyzes the local geometric features of each point by extracting the normal direction and normal curvature in the point cloud data, and can more accurately identify stable feature points. These stable feature points (for example, edges, corners, etc.) usually have unique The unique normal direction and curvature features make it easier to maintain consistency under different viewing angles. At the same time, the initial geometric matching may be disturbed by local repeated structures or lack of obvious features. By introducing the analysis of normal direction and curvature parameters, different surface areas can be better distinguished, and reliable feature points for alignment can be identified. The feature point extraction and alignment based on normal parameters can help the system dynamically adjust the alignment position of point cloud data to ensure matching with the expected coordinate system. This method readjusts the alignment by extracting more stable feature points, avoiding the alignment deviation problem that may be encountered in traditional matching methods, thereby effectively reducing the cumulative error in subsequent multi-view stitching and improving the overall accuracy of 3D modeling.

[0196] In this embodiment, the execution module further includes:

[0197] An acquisition unit, configured to apply a preset nearest neighbor search algorithm to acquire a correspondence relationship between feature points between the point cloud data, and collect a feature descriptor with the closest distance on the target point cloud for a preset query point;

[0198] A judging unit, used to judge whether the Euclidean distance between the feature descriptors reaches a preset distance value;

[0199] an execution unit, for, if so, selecting the point with the smallest distance from the feature descriptor as a matching pair for the feature matching, calculating the distance ratio between the query point and the nearest neighbor point and the next nearest neighbor point, screening the matching pairs based on the calculation result of the distance ratio, eliminating incorrect matches and retaining the best matching pairs.

[0200] In this embodiment, the system applies a preset nearest neighbor search algorithm to obtain the correspondence between feature points between point cloud data, collects the closest feature descriptors for the preset query points on the target point cloud, and then the system determines whether the Euclidean distance between these feature descriptors reaches the preset distance value to execute the corresponding steps; for example, when the system determines that the Euclidean distance between the feature descriptors does not reach the preset distance value, the system will consider that the similarity between the currently matched feature points is low, and may belong to different object surfaces or incorrect matches. The system will readjust the parameters of the feature extraction algorithm, such as increasing the detection density of feature points or adjusting the calculation scale of feature descriptors to capture more details. Features help to generate more stable feature descriptors and improve matching accuracy. At the same time, geometric features such as normal direction and curvature are further extracted. Multiple features are combined for multiple verifications to improve the accuracy of feature matching. This method can ensure that valid feature point pairs can be found even in the case of large angle changes. If the system detects a large number of matching failures in specific scenarios (such as complex textures or low-contrast areas), the Euclidean distance threshold can be appropriately relaxed, and other geometric information (such as surface normal direction) can be combined to assist in judgment and reduce the impact of false matching. For example, when the system determines that the Euclidean distance between feature descriptors has reached a preset distance value, the system will consider the current match to be a false match. If the similarity between the matched feature points is high and they can be matched, the system will select the point with the smallest distance from the feature descriptor as the matching pair for feature matching, calculate the distance ratio between the query point and the nearest neighbor point and the second nearest neighbor point, and screen the matching pairs based on the calculation result of the distance ratio, eliminate the wrong matches and retain the best matching pairs; by calculating the distance ratio between the query point and the nearest neighbor point and the second nearest neighbor point, the system can more effectively screen out truly reliable matching pairs. The distance ratio screening method can eliminate matching pairs with insufficient feature similarity, thereby reducing the situation of wrong matching. At the same time, retaining the best matching pairs and eliminating the wrong matching pairs can greatly reduce the cumulative error in the process of point cloud registration, which is very useful in the field of multi-view point cloud stitching. In the scene, the accumulated errors may cause deformation and inconsistency of the final model. By ensuring the high-quality input of the matching pairs, the subsequent registration and alignment steps (such as the ICP algorithm) will be more accurate, and a smoother and more coherent 3D reconstruction result will be obtained. If the similarity between the nearest neighbor and the second nearest neighbor of the query point in the target point cloud is very different (that is, the ratio is small), it means that the matching of the nearest neighbor is unique and reliable; conversely, if the distance between the nearest neighbor and the second nearest neighbor is close (that is, the ratio is close to 1), it means that the matching is not unique enough, which may lead to wrong matching. Through this screening process, the wrong matching pairs can be effectively eliminated to ensure that only the optimal feature point pairs are used during registration, thereby improving the accuracy of the entire point cloud stitching.

[0201] In this embodiment, it also includes:

[0202] An acquisition module, used for acquiring the overlap between each group of point clouds in the point cloud data, and identifying the common feature area between each group of point clouds based on the overlap;

[0203] A fourth judgment module, used to judge whether the overlap of the common feature areas reaches a preset value;

[0204] The fourth execution module is used to apply a preset ICP variant algorithm to locally optimize the matching points in the common feature area if not, assign different weight information to the matching points, and reduce the impact of noise points on the local optimization according to the weight information, wherein the ICP variant algorithm specifically includes point-to-point ICP and point-to-plane ICP.

[0205] In this embodiment, the system obtains the overlap between each group of point clouds in the point cloud data, identifies the common feature areas between each group of point clouds based on these overlaps, and then the system determines whether the overlap of these common feature areas reaches a preset value to execute the corresponding steps; for example, when the system determines that the overlap of the common feature areas between each group of point clouds can reach a preset value, the system will consider that the matching degree of the point cloud data is high, and the point cloud data of each perspective are aligned more accurately in the common area. The system will further verify the accuracy of the alignment to ensure that there are no obvious errors or misalignments. Based on the overlap that has been achieved, a sophisticated registration algorithm (such as an ICP algorithm) can be applied to reduce minor alignment errors and improve accuracy. At the same time, after ensuring that the overlap reaches the preset standard, the system can merge the point cloud data in the overlapping area into a unified three-dimensional model, remove redundant data, ensure the quality and fluency of the model, and the merged point cloud data needs to be analyzed for errors. The system will detect whether there is error accumulation in the model, especially in the overlapping area, and eliminate the error by adjusting the posture, etc.; for example, when the system determines that the overlap of the common feature areas between each group of point clouds cannot reach a preset value, at this time The system will think that the matching degree of the point cloud data is insufficient, and the system will apply the pre-set ICP variant algorithm. The ICP variant algorithm specifically includes point-to-point ICP and point-to-plane ICP, and locally optimizes the matching points in these common feature areas, assigns different weight information to these matching points, and reduces the impact of noise points on local optimization according to different weight information; the system can effectively optimize the registration accuracy of the point cloud data by minimizing the geometric error between the matching points, because the point-to-plane ICP calculates the distance from the point to the plane, which is usually more suitable for processing scenes containing plane surfaces or large flat areas than the point-to-point ICP, thereby improving the registration quality. At the same time, by assigning different weights to the matching points, important or highly credible points play a greater role in the registration process, while reducing the impact of noise points on the optimization results. This can prevent mismatching or misregistration caused by noise points, enhance the stability and accuracy of the model, and local optimization of matching points can fine-tune the registration of local areas without having to globally optimize the entire point cloud, thereby improving efficiency and avoiding the propagation of global errors. Local optimization helps to achieve more accurate alignment in overlapping areas, especially in complex geometric shapes or detailed parts.

[0206] In this embodiment, the second execution module further includes:

[0207] a calculation unit, configured to divide the view information from the point cloud data set according to a preset spatial position based on a point cloud data set continuously collected by a preset sensor, and calculate normal vector distribution data and density change data of the point cloud data set, wherein the spatial position is specifically an angular range of the distance sensor;

[0208] A second judgment unit, used to judge whether the normal vector distribution data and the density change data match a preset viewing angle switching point;

[0209] The second execution unit is used for uniformly sampling the split point cloud data of each viewpoint if possible, balancing the data sets of the point cloud data of each viewpoint according to the uniform sampling, and detecting the breakpoints at the boundaries of the data sets.

[0210] In this embodiment, the system divides the perspective information from the point cloud data set according to a preset spatial position based on a point cloud data set continuously collected by a preset sensor, the spatial position is specifically the angle range of the distance sensor, and calculates the normal vector distribution data and density change data of the point cloud data set. Then the system determines whether these normal vector distribution data and density change data can match the preset perspective switching point to execute the corresponding steps; for example, when the system determines that these normal vector distribution data and density change data cannot match the preset perspective switching point, the system will consider that the current point cloud data may have a registration problem or the data is sparse and the noise is large in some areas, resulting in a failure of the perspective switching. The system will adjust the setting parameters of the perspective switching point, such as changing the angle range, spacing, etc., or adaptively adjust the position and range of the perspective switching point according to the actual situation, and optimize the sampling of the point cloud through a density adjustment algorithm (such as adaptive sampling or regional encryption) to make the data density more uniform between each perspective, thereby improving the matching degree of the normal vector distribution and the density change, and apply a more sophisticated registration algorithm (such as feature point-based registration, optimization algorithm, etc.) for local optimization to reduce the registration error and ensure that the data between different perspectives can be smoothly Switching; for example, when the system determines that these normal vector distribution data and density change data can match the pre-set perspective switching point, the system will consider that there is no registration problem or data sparseness in the current point cloud data, and the perspective switching is normal. The system will uniformly sample the split point cloud data of each perspective, balance the data sets of each perspective point cloud data based on uniform sampling, and detect the breakpoints at the boundaries of these data sets; through uniform sampling, the system can avoid the situation where the data in some perspective areas are too dense and the data in other areas are too sparse, thereby improving the quality and accuracy of the overall point cloud data and ensuring the spatial consistency of the point cloud data. Uniform distribution improves the accuracy of point cloud registration and reduces registration errors caused by uneven data. At the same time, it ensures that the data in the point cloud dataset is balanced between various perspectives to avoid too much or too little data in certain areas, which leads to inaccurate subsequent processing. For example, in the process of point cloud stitching and registration, data imbalance may lead to loss of information in certain areas or inaccurate local registration. By detecting and repairing boundary breakpoints, discontinuity or missing problems in the stitching process can be effectively avoided, and the integrity and accuracy of the stitching can be improved, which is crucial for the final 3D modeling, especially in applications that require accurate reconstruction of surface details.

[0211] In this embodiment, the judgment module further includes:

[0212] A generating unit, configured to simulate and splice the point cloud data based on a preset simulation process to generate a preliminary three-dimensional model;

[0213] A third judgment unit, used to judge whether a preset error seam is detected in the preliminary three-dimensional model;

[0214] A third execution unit is configured to divide the point cloud data into a preset graph structure, apply the nodes in the graph structure to represent each group of point cloud data, and apply the edges in the graph structure to represent the registration relationship between the point cloud data under different perspectives, detect the loop closure information of the preliminary three-dimensional model according to the graph structure, and add preset additional perspective data based on the loop closure information, wherein the loop closure information specifically includes an open area and an unclosed area.

[0215] In this embodiment, the system simulates and stitches the point cloud data based on a preset simulation process to generate a preliminary 3D model, and then the system determines whether the preliminary 3D model detects a preset error seam to execute the corresponding steps; for example, when the system determines that the preliminary 3D model does not detect a preset error seam, the system will consider that the current point cloud data stitching quality is good, the registration and alignment between the point cloud data have reached the expected accuracy, and no obvious stitching errors or seams have been generated. The system will continue to perform more detailed verification, such as using local registration or different algorithms (such as ICP algorithm) to further optimize the stitching results. If there is no obvious seam, it means that the preliminary stitching is good, and the preliminary model is applied to In a wider range of simulations or analyses, data from different perspectives are further integrated, and subsequent processing steps such as detail restoration, texture mapping, or multi-perspective data fusion are performed to improve the accuracy and usability of the 3D model. After confirming that the preliminary model has no error seams, a complete 3D reconstruction model is generated for final visualization and output. For example, when the system determines that the preliminary 3D model has detected a pre-set error seam, the system will consider that the current point cloud data is not perfectly spliced ​​and cannot achieve the expected accuracy. The system will divide the point cloud data into a pre-set graph structure, and the nodes of the graph structure represent each group of point cloud data. The edges of the graph structure represent the registration relationship between point cloud data at different perspectives. The preliminary 3D model is detected based on the graph structure. The loop closure information of the model, which specifically includes open areas and unclosed areas, is used to add pre-set additional perspective data based on these loop closure information. The system can promptly detect error seams or unclosed areas in the point cloud data by analyzing the loop closure information of the preliminary 3D model. The open areas and unclosed areas in the loop closure information can help the system clearly identify which parts of the splicing have not met expectations, which provides a specific reference for subsequent adjustments and avoids further error expansion. At the same time, the point cloud data is divided into a graph structure, with each group of point cloud data represented by a graph node, and the graph edges represent the data registration relationship under different perspectives, making the organization of the entire point cloud data clearer and more structured, helping the system to clearly Clearly knowing the data relationship of each viewpoint point cloud can enable a more detailed analysis of the mutual registration accuracy, thereby improving the overall quality of stitching, and the recognition of loop closure information can specifically point out the problem areas in the stitching process, such as unclosed areas. After analyzing the loop closure information, the system can selectively add additional viewpoint data based on the specific locations of the open areas and unclosed areas. By adding additional viewpoint data to problematic areas, the system can improve the coverage and alignment accuracy of the point cloud data. The introduction of additional viewpoint data helps to reduce errors in the stitching process, especially in areas with sparse data or insufficient viewpoints, preventing errors from propagating during the stitching process, thereby ensuring that the accuracy of the final 3D model is improved.

[0216] In this embodiment, the acquisition module further includes:

[0217] An identification unit, used to identify abnormal isolated points in the three-dimensional modeling within a preset range;

[0218] A fourth judgment unit is used to judge whether the abnormal isolated points exceed the preset abnormal number of the point cloud surface;

[0219] The fourth execution unit is configured to apply a preset fitting local surface to smooth the point cloud data to eliminate noise and retain edge detail information of the point cloud data.

[0220] In this embodiment, the system identifies abnormal isolated points in the three-dimensional modeling within a preset range, and then determines whether these abnormal isolated points exceed the preset abnormal number of the point cloud surface to execute the corresponding steps; for example, when the system determines that the abnormal isolated points in the three-dimensional modeling within the preset range do not exceed the preset abnormal number of the point cloud surface, the system will consider that the number of abnormal isolated points is within an acceptable range, that is, the existence of these points will not significantly affect the overall quality and accuracy of the three-dimensional model, and the system will maintain the current three-dimensional modeling state without additional corrections or adjustments, avoiding excessive processing of these points, saving computing resources and time, and at the same time, a noise filtering algorithm can be applied to further reduce redundant or low-quality points in the point cloud, improve the clarity of the point cloud data, further improve the modeling accuracy, and mark these isolated points for subsequent processing or monitoring to avoid potential subsequent problems; for example, when the system determines that the abnormal isolated points in the three-dimensional modeling within the preset range exceed the preset abnormal number of the point cloud surface, the system will consider that the number of abnormal isolated points is too large, affecting In order to improve the overall quality and accuracy of the 3D model, the system will apply the pre-set fitting local surface, smooth the point cloud data to eliminate noise, and retain the edge detail information of the point cloud data; by smoothing the point cloud data, the system can effectively remove noise points and abnormal isolated points, avoid the interference of these irregular data on 3D modeling, and thus improve the overall accuracy of the model. In the process of fitting the local surface, the system can smooth out unnecessary noise and use surface fitting technology to retain the edge detail information of the model, which is crucial for accurately restoring the shape structure of the target object, especially when dealing with models with complex shapes or rich details. At the same time, by removing abnormal isolated points, the point cloud data becomes more uniform and smooth, thereby improving the availability of the data, because abnormal isolated points are often caused by external interference or sensor errors. The system can eliminate these interferences through smoothing, reduce the propagation of errors, and ensure the accuracy of the data. The smoothed point cloud data avoids the rough surface or irregular shape caused by abnormal isolated points, making the generated 3D model surface smoother and more natural, which is helpful for subsequent rendering and display.

[0221] Although embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that various changes, modifications, substitutions and variations may be made to the embodiments without departing from the principles and spirit of the present invention, and that the scope of the present invention is defined by the appended claims and their equivalents.

Claims

1. A multi-view three-dimensional laser point cloud stitching method, characterized in that: The following steps are involved: Based on the preset shooting angles, point cloud data corresponding to 3D modeling is collected from each shooting perspective; Determining whether the point cloud data can be spliced ​​to obtain the three-dimensional model; If not, a preset feature extraction algorithm is applied to identify key feature points in the point cloud data, corresponding feature descriptors are generated according to the key feature points, feature matching is performed at each shooting angle according to the feature descriptors, and after the feature matching is completed, the point cloud data is preliminarily aligned; Determining whether a preset error accumulation is detected in the point cloud data; If detected, split the point cloud data into multi-view point cloud data, detect the view overlap area in the point cloud sequence corresponding to the multi-view point cloud data, construct a point cloud registration edge based on the view overlap area, apply a preset closed-loop detection, identify and gradually reduce the error accumulation through the point cloud registration edge, dynamically adjust the pose parameters of each point cloud, and minimize the error metric values ​​of all edges of the three-dimensional modeling, wherein the pose parameters specifically include translation and rotation; Wherein, before the step of preliminarily aligning the point cloud data, the method further comprises: Based on the preset geometric matching features of the point cloud data, collecting the preliminary alignment position of the point cloud data, wherein the geometric matching features specifically include surface normals, curvatures and edge features; Determining whether the preliminary alignment position matches the initial posture data of the preset sensor; If not, extracting each normal parameter in the point cloud data, identifying the stable feature point of the preliminary alignment position according to the normal parameter, and performing preliminary registration on the point cloud data according to the stable feature point, wherein the normal parameter specifically includes the normal direction and the normal curvature; The step of determining whether the point cloud data can be spliced ​​to obtain the three-dimensional modeling further includes: Based on a preset simulation process, the point cloud data is simulated and spliced ​​to generate a preliminary three-dimensional model; Determining whether a preset error seam is detected in the preliminary three-dimensional model; If so, the point cloud data is divided into a preset graph structure, the nodes in the graph structure are used to represent each group of point cloud data, and the edges in the graph structure are used to represent the alignment relationship between the point cloud data under different perspectives, the loop closure information of the preliminary three-dimensional model is detected according to the graph structure, and preset additional perspective data is added based on the loop closure information, wherein the loop closure information specifically includes open areas and unclosed areas.

2. The multi-view 3D laser point cloud stitching method according to claim 1, characterized in that: The step of generating corresponding feature descriptors according to the key feature points and performing feature matching at each shooting angle according to the feature descriptors further includes: Applying a preset nearest neighbor search algorithm to obtain a correspondence between feature points in the point cloud data, and collecting the closest feature descriptor for a preset query point on the target point cloud; Determining whether the Euclidean distance between the feature descriptors reaches a preset distance value; If so, select the point with the smallest distance from the feature descriptor as the matching pair for the feature matching, calculate the distance ratio between the query point and the nearest neighbor point and the second nearest neighbor point, screen the matching pairs based on the calculation result of the distance ratio, eliminate incorrect matches and retain the best matching pairs.

3. The multi-view 3D laser point cloud stitching method according to claim 1, characterized in that: Before the step of dynamically adjusting the pose parameters of each point cloud to minimize the error metric values ​​of all edges of the three-dimensional modeling, the step further includes: Acquire the overlap between each group of point clouds in the point cloud data, and identify the common feature area between each group of point clouds based on the overlap; Determining whether the overlap of the common feature areas reaches a preset value; If not, apply the preset ICP variant algorithm to perform local optimization on the matching points in the common feature area, assign different weight information to the matching points, and reduce the influence of noise points on the local optimization according to the weight information, wherein the ICP variant algorithm specifically includes point-to-point ICP and point-to-plane ICP.

4. The multi-view 3D laser point cloud stitching method according to claim 1, characterized in that: The step of splitting the point cloud data into multi-view point cloud data also includes: Based on a point cloud data set continuously collected by a preset sensor, dividing the view information from the point cloud data set according to a preset spatial position, and calculating normal vector distribution data and density change data of the point cloud data set, wherein the spatial position is specifically an angle range of the distance sensor; Determining whether the normal vector distribution data and the density change data match a preset viewing angle switching point; If possible, uniform sampling is performed on the split point cloud data of each viewing angle, and the data sets of the point cloud data of each viewing angle are balanced according to the uniform sampling, and the breaking points at the boundaries of the data sets are detected.

5. The multi-view 3D laser point cloud stitching method according to claim 1, characterized in that: The step of collecting point cloud data corresponding to the three-dimensional modeling from each shooting angle based on a preset shooting angle also includes: Identifying abnormal isolated points in the three-dimensional modeling within a preset range; Determining whether the abnormal isolated points exceed the preset abnormal number of the point cloud surface; If so, a preset fitting local surface is applied to smooth the point cloud data to eliminate noise and retain edge detail information of the point cloud data.

6. A multi-view 3D laser point cloud stitching system, characterized in that: include: The acquisition module is used to acquire point cloud data corresponding to the 3D modeling from various shooting angles based on a preset shooting angle; A judgment module, used for judging whether the point cloud data can be spliced ​​to obtain the three-dimensional model; an execution module, for, if not, applying a preset feature extraction algorithm to identify key feature points in the point cloud data, generating corresponding feature descriptors according to the key feature points, performing feature matching at each shooting angle according to the feature descriptors, and preliminarily aligning the point cloud data after completing the feature matching; A second judgment module is used to judge whether a preset error accumulation is detected in the point cloud data; A second execution module is used for, if detected, splitting the point cloud data into multi-view point cloud data, detecting a view overlap area in a point cloud sequence corresponding to the multi-view point cloud data, constructing a point cloud registration edge based on the view overlap area, applying a preset closed-loop detection, identifying and gradually reducing the error accumulation through the point cloud registration edge, dynamically adjusting the pose parameters of each point cloud, and minimizing the error metric values ​​of all edges of the three-dimensional modeling, wherein the pose parameters specifically include translation and rotation; Among them, it also includes: A second acquisition module is used to acquire a preliminary alignment position of the point cloud data based on a preset geometric matching feature of the point cloud data, wherein the geometric matching feature specifically includes a surface normal, a curvature and an edge feature; A third judgment module is used to judge whether the preliminary alignment position matches the initial posture data of the preset sensor; a third execution module, configured to extract each normal parameter in the point cloud data, identify the stable feature points of the preliminary alignment position according to the normal parameters, and perform preliminary registration on the point cloud data according to the stable feature points, wherein the normal parameters specifically include a normal direction and a normal curvature; The judgment module further includes: A generating unit, configured to simulate and splice the point cloud data based on a preset simulation process to generate a preliminary three-dimensional model; A third judgment unit, used to judge whether a preset error seam is detected in the preliminary three-dimensional model; A third execution unit is configured to divide the point cloud data into a preset graph structure, apply the nodes in the graph structure to represent each group of point cloud data, and apply the edges in the graph structure to represent the registration relationship between the point cloud data under different perspectives, detect the loop closure information of the preliminary three-dimensional model according to the graph structure, and add preset additional perspective data based on the loop closure information, wherein the loop closure information specifically includes an open area and an unclosed area.

7. The multi-view 3D laser point cloud stitching system according to claim 6, characterized in that: The execution module also includes: An acquisition unit, configured to apply a preset nearest neighbor search algorithm to acquire a correspondence relationship between feature points between the point cloud data, and collect a feature descriptor with the closest distance on the target point cloud for a preset query point; A judging unit, used to judge whether the Euclidean distance between the feature descriptors reaches a preset distance value; an execution unit, for, if so, selecting the point with the smallest distance from the feature descriptor as a matching pair for the feature matching, calculating the distance ratio between the query point and the nearest neighbor point and the next nearest neighbor point, screening the matching pairs based on the calculation result of the distance ratio, eliminating incorrect matches and retaining the best matching pairs.

Citation Information

Patent Citations

  • Overall registering method for global optimization of multi-view three-dimensional laser point clouds

    CN104463894A

  • Multi-view high-resolution point cloud splicing method based on feature point extraction and fine registration optimization

    CN114648445A