Lidar-based three-dimensional modeling system and method

By using a LiDAR-based 3D modeling system, combined with the Sobel operator, Canny algorithm, least squares plane fitting, and dynamic programming algorithm, the problems of point cloud boundary identification and error region repair were solved, improving the boundary coherence and spatial representation ability of the 3D model.

CN120823329BActive Publication Date: 2025-12-09HANGZHOU TONGTAI SURVEYING & MAPPING CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511331917.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-18
Publication Date
2025-12-09
Estimated Expiration
2045-09-18

AI Technical Summary

Technical Problem

Existing 3D modeling technologies are insufficient in point cloud boundary recognition and error region repair under high noise and complex structural environments, resulting in discontinuous 3D model boundaries, geometric deformation, and reduced spatial representation capabilities.

Method used

A LiDAR-based 3D modeling system is used, which includes a point cloud boundary extraction module, a boundary error analysis module, an adaptive cutting and repair module, and a stitching structure optimization module. Combined with the Sobel operator, Canny algorithm, least squares plane fitting, and dynamic programming algorithm, the point cloud boundaries are identified and repaired.

Benefits of technology

It significantly improves the integrity of point cloud boundaries and the coherence of stitching transitions in complex scenes, thereby enhancing the rationality of spatial geometric representation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120823329B_ABST
    Figure CN120823329B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of three-dimensional modeling, in particular to a three-dimensional modeling system and method based on a laser radar, which comprises a point cloud boundary extraction module, a boundary error analysis module, a self-adaptive cutting repair module and a suture structure optimization module.In the application, the three-dimensional coordinates, normal vectors, reflection intensities, distances and indexes of boundary points are called layer by layer, and the boundary and error area are cooperatively identified in combination with a Sobel operator and a Canny algorithm, then local area repair is completed based on least square plane fitting and space residual analysis, dynamic programming is used to analyze tension vectors to perform suture path adjustment, and on the basis of the cooperation of multi-type point cloud features, space topology structure and boundary continuity dynamic modeling, the problems of local damage of point cloud boundaries, connection errors and unstable suture paths in complex scenes are solved, and the integrity of boundary structures, the coherence of suture transitions and the rationality of space geometric expression are significantly improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of three-dimensional modeling, in particular to a three-dimensional modeling system and method based on a laser radar. BACKGROUND

[0002] The technical field of three-dimensional modeling involves representing the real world or design targets in a digital manner as three-dimensional models with spatial attributes, and is widely used in computer graphics, virtual reality, industrial design, building information modeling, medical image processing and digital twinning, etc. The core matters include three-dimensional data acquisition, geometric shape construction, texture mapping, spatial relationship expression and conversion relationship with two-dimensional images, etc. At present, the complete technical system from point cloud acquisition, mesh generation to three-dimensional model optimization has been formed in this technical field. The traditional three-dimensional modeling system refers to a tool platform for constructing digital three-dimensional geometric structure. The technical matter targeted by the present application is how to generate a three-dimensional model with spatial geometric structure based on input data. In the traditional way, the spatial point cloud data obtained by means of structured light measurement, multi-view stereo reconstruction or laser scanning is usually used to complete the construction of three-dimensional entities through specific modeling processes such as triangular mesh reconstruction and surface fitting, according to image sequences or depth information.

[0003] The existing technology usually focuses on the acquisition and geometric reconstruction of the overall point cloud in the three-dimensional modeling process, and there is a weakening trend in the identification and repair of local anomalies and error regions of the point cloud boundary. The edge details are processed by relying on fixed thresholds or general algorithms, which leads to limitations in the continuity of the boundary region in the environment of high noise, complex structure and dense point cloud, and the stitching path is prone to jumping. The geometric details are missing, which is common in building surface detail scanning, road edge or multi-obstacle region in urban environment. Due to the fact that error points cannot be effectively identified and repaired, the three-dimensional model boundary is not coherent, the geometry is deformed, and the spatial expression capability is reduced in subsequent applications. SUMMARY

[0004] The purpose of the present application is to solve the shortcomings in the prior art, and a three-dimensional modeling system and method based on a laser radar are proposed.

[0005] In order to achieve the above-mentioned purpose, the present application adopts the following technical scheme: a three-dimensional modeling system based on a laser radar comprises:

[0006] A point cloud boundary extraction module is used to obtain coordinates, reflection intensity, distance and index through laser radar point cloud data, to arrange the laser radar point cloud data in a raster manner to establish a point cloud attribute matrix, to call eight-neighbor points for the point cloud attribute matrix, to detect edges by convolution operation on the distance using a Sobel operator, to calculate the normal vector of each point based on the neighbor point set, to analyze and output a preliminary boundary point set, and to pass the preliminary boundary point set to a boundary error analysis module.

[0007] The boundary error analysis module is used to extract distance gradient, intensity change rate, angle difference, and density change from the preliminary boundary point set, call the Canny algorithm to filter, output the error point set, and pass the error point set to the adaptive cutting and repair module.

[0008] The adaptive cutting and repair module is used to expand the point set based on the error point set according to the neighborhood expansion rule, call the least squares plane fitting model, construct the spatial residual function, perform plane fitting, linear interpolation to generate the interpolation point set, and pass the interpolation point set to the suture structure optimization module.

[0009] The stitching structure optimization module is used to obtain the tangent direction, angle change, distance and intensity change between adjacent points and segments through the interpolation point set, call the dynamic programming algorithm to perform tension vector analysis, determine the number of edges connected by the interpolation points, and output the three-dimensional boundary connectivity structure through linear interpolation adjustment.

[0010] As a further aspect of the present invention, the preliminary boundary point set includes the three-dimensional coordinates of the boundary points, the normal vectors of the boundary points, the reflection intensity of the boundary points, and the index of the boundary points; the error point set specifically includes the coordinates of the error points, the normal vectors of the error points, and the distribution attributes of the error points; the interpolation point set includes the coordinates of the interpolation points and the normal vectors of the interpolation points; and the boundary connectivity structure specifically refers to the boundary connectivity path, the boundary segment index, and the set of connected edges.

[0011] As a further aspect of the present invention, the point cloud boundary extraction module includes:

[0012] The point cloud data acquisition submodule acquires LiDAR point cloud data, extracts the coordinates, reflection intensity, distance and index information of each point, and calls up the coordinates, reflection intensity, distance and index information, combines and arranges them to establish a point cloud attribute matrix;

[0013] The neighborhood gradient calculation submodule calls the point cloud attribute matrix, indexes the position information of eight neighboring points for each point in the matrix, and uses the Sobel operator to perform horizontal and vertical convolution operations on the distance values ​​of the multi-neighbor point set. The operation values ​​in the two directions are combined to generate the edge response intensity value.

[0014] The boundary point set generation submodule calls the point cloud attribute matrix and the edge response intensity value, sets a gradient magnitude threshold, compares the edge response intensity value of each point with the gradient magnitude threshold one by one, filters out points whose intensity value exceeds the gradient magnitude threshold, and extracts the index of the point in the point cloud attribute matrix to obtain a preliminary boundary point set.

[0015] As a further aspect of the present invention, the boundary error analysis module includes:

[0016] The multidimensional feature extraction submodule extracts the distance and intensity information of each point and its neighboring points based on the preliminary boundary point set, calculates the distance gradient and intensity change rate of multiple points, detects the angle difference between the line connecting the point and its neighboring points and the density change of the local area, and integrates the four values ​​of distance gradient, intensity change rate, angle difference and density change to obtain the point set feature comprehensive index.

[0017] The edge point non-maximum suppression submodule calls the point set feature comprehensive index, compares the point with the point set feature comprehensive index value of the point along the gradient direction of each point, and if the index value of the current point is less than that of any adjacent point, it is marked as a non-edge point and removed from the sequence to establish a candidate edge point sequence.

[0018] The dual-threshold connection filtering submodule sets a high gradient threshold and a low gradient threshold based on the candidate edge point sequence. Points in the sequence with indices higher than the high threshold are identified as strong edge points, and points between the two thresholds are identified as weak edge points. Weak edge points that are directly connected to strong edge points or indirectly connected through other weak edge points are filtered. All strong edge points are combined with the filtered weak edge points to obtain the error point set.

[0019] As a further aspect of the present invention, the adaptive cutting and repair module includes:

[0020] The neighborhood point set expansion submodule obtains the error point set, defines the range based on the set neighborhood search radius with each error point as the center, counts and judges whether the number of point clouds within the radius exceeds the lower limit of the number of points, merges the point cloud sets that meet the conditions, and generates an expanded neighborhood point set.

[0021] The fitting plane construction submodule calls the extended neighborhood point set, uses the least squares criterion to construct the fitting space plane, and calculates the orthogonal distance from each point in the point set to the plane and the distance to the geometric center of the error point set, using the formula:

[0022] ;

[0023] The deviation metric of the set point cloud is obtained through calculation, and the spatial fitting residual value is established;

[0024] in, Represents the spatial fitting residual value. Represents the number of points in the extended neighborhood set. Represents the current point number in the point set. Representative point The orthogonal distance to the fitted plane. This represents a factor used to modulate the degree of influence of center distance. Representative point Distance to the geometric center of the original error point set Represents the baseline point cloud density. Representative point Local point cloud density;

[0025] The linear interpolation repair submodule sets a residual evaluation threshold based on the spatial fitting residual value and identifies points exceeding the threshold as points to be repaired. It obtains the projection coordinates of the points on the least square fitting plane and uses them as a reference to perform linear interpolation operations to generate an interpolation point set.

[0026] As a further aspect of the present invention, the suture structure optimization module includes:

[0027] The point set geometric feature extraction submodule obtains the interpolated point set, calculates the changes in tangent direction of multiple points, distance between adjacent points and segments, and correlation strength, counts the changes in the included angle of connected nodes, defines the tangent direction and the distance between segments as the basic unit of the path, and establishes a set of geometric constraint parameters based on the correlation strength and included angle data.

[0028] The tension path planning submodule, based on the geometric constraint parameter set, calls a dynamic programming algorithm, takes the intensity change and the angle change as cost factors for tension vector analysis, and performs multi-stage decision-making between interpolation points with tension equilibrium as the optimization objective, judges and determines the number of connected edges of multiple interpolation points, and obtains the number of node connections.

[0029] The connection structure generation submodule identifies the interpolation point pairs that need to be connected based on the number of node connections, calls the coordinate information in the geometric constraint parameter set, performs linear interpolation between the point pairs to generate connection edges, and combines all connection edges to establish a three-dimensional boundary connectivity structure.

[0030] The lidar-based 3D modeling method, executed based on the aforementioned lidar-based 3D modeling system, includes the following steps:

[0031] S1: Collect point cloud data using lidar, obtain coordinates, reflection intensity, distance, and index parameters, call the eight-neighbor point set, and use the Sobel operator to perform edge detection on the distance parameters. The detected edge data forms a preliminary boundary point set.

[0032] S2: Based on the preliminary boundary point set, obtain the distance gradient, reflection intensity change rate, angle difference, and point set density change parameters, call the Canny algorithm, perform edge filtering operation on the preliminary boundary point set, and filter out edge anomalies to form an error point set;

[0033] S3: By the error point set, the point set range is expanded according to the neighborhood expansion rule, the least square plane fitting model is called, the spatial residual function is established based on the expanded point set, the plane parameter fitting is carried out, and the fitting result is generated by using the linear interpolation method to generate an interpolation point set;

[0034] S4: Through the interpolation point set, the tangent direction, the angle change, the distance between segments and the intensity change parameter are detected, the dynamic programming algorithm is called to perform tension vector analysis, the number of connection edges of the interpolation point is judged, the parameter adjustment is performed on the boundary connected structure by using the linear interpolation, and the three-dimensional boundary connected structure is output.

[0035] Compared with the prior art, the advantages and positive effects of the present application are that:

[0036] In the present application, in the overall process of point cloud boundary recognition, error area extraction, cutting repair and boundary stitching, the three-dimensional coordinates, normal vectors, reflection intensities, distances and indexes of boundary points are called layer by layer, and the boundary and error area are recognized in cooperation with the Sobel operator and Canny algorithm, and then the local area repair is completed based on the least square plane fitting and spatial residual analysis, the stitching path adjustment is performed by using the dynamic programming analysis tension vector, and on the basis of the cooperation of multi-type point cloud features, spatial topological structure and boundary continuity dynamic modeling, the problems of point cloud boundary local damage, connection error and unstable stitching path in complex scenes are solved, and the integrity of the boundary structure, the coherence of the stitching transition and the rationality of the spatial geometric expression are significantly improved. BRIEF DESCRIPTION OF DRAWINGS

[0037] Figure 1 It is a three-dimensional modeling system flowchart based on laser radar of the present application;

[0038] Figure 2 It is a point cloud boundary extraction module flowchart of the present application;

[0039] Figure 3 It is a boundary error analysis module flowchart of the present application;

[0040] Figure 4 It is a self-adaptive cutting repair module flowchart of the present application;

[0041] Figure 5 It is a stitching structure optimization module flowchart of the present application. DETAILED DESCRIPTION

[0042] In order to make the purpose, technical scheme and advantages of the present application clearer, the technical scheme realized by software is described in detail below in combination with the system architecture diagram and the embodiment. It should be understood that the specific embodiments described herein are only used to explain the technical scheme of the present application, and do not constitute a limitation on the protection scope.

[0043] In the description of the present application, the system architecture relationship or data processing flow indicated by the terms "hierarchy", "module", "interface", "data flow", "client", "server" and the like are defined based on the corresponding architecture diagram or flowchart of the embodiment. This way of expression is only used to clearly explain the logical relationship of each element in the technical solution, and is not limited to the physical deployment form. The "multiple" includes two or more technical units, including but not limited to multiple data nodes, processing threads, service instances or functional components, and other scalable elements. The specific number is determined according to the actual business scenario.

[0044] Please refer to Figure 1 and Figure 2 The present application provides a technical solution: a three-dimensional modeling system based on laser radar includes:

[0045] A point cloud boundary extraction module is configured to obtain coordinates, reflection intensity, distance, and index from laser radar point cloud data, perform raster arrangement on the laser radar point cloud data to establish a point cloud attribute matrix, call eight-neighbor points for the point cloud attribute matrix, perform convolution operation on the distance using a Sobel operator to detect edges, calculate a normal vector of each point based on a neighbor point set, analyze and output a preliminary boundary point set, and pass the preliminary boundary point set to a boundary error analysis module.

[0046] The preliminary boundary point set includes boundary point three-dimensional coordinates, boundary point normal vectors, boundary point reflection intensity, and boundary point index.

[0047] The point cloud boundary extraction module includes:

[0048] A point cloud data acquisition submodule is configured to obtain laser radar point cloud data, extract coordinates, reflection intensity, distance, and index information of each point, and call the coordinates, reflection intensity, distance, and index information, combine and arrange them to establish a point cloud attribute matrix.

[0049] This submodule is responsible for obtaining raw data from a laser radar device. In a specific scanning operation, a handheld high-precision laser scanner with a precision of 0.02 mm is used to scan the surface of a stone lion comprehensively, obtaining high-density point cloud data covering the complete surface. For each laser point in the point cloud, the system automatically extracts its three-dimensional spatial coordinates (X, Y, Z, unit: millimeter), reflection intensity (an integer without unit between 0 and 255), straight-line distance to the scanner (unit: millimeter), and its row index number in the original data file.

[0050] In a scanning operation, the data records of five consecutive points collected near the cracks of the stone lion base are as follows: (100.1, 205.3, 50.7, 188, 1500.2, 101), (100.3,205.4,50.8,190,1500.4,102), (100.5,205.5,50.9,10,1505.1,103), (100.7,205.6,51.0,192,1500.8,104), (100.9,205.7,51.1,193,1501.0,105). In this data sequence, the reflection intensity value (10) of point is much lower than that of its adjacent points (188, 190, 192, 193), while its distance value (1505.1 mm) has a jump of more than 4 mm compared with the average distance of adjacent points (about 1500.5 mm), which indicates that it is located at the edge of a physically discontinuous region, such as a crack. The sub-module structurally combines the five attribute information (coordinates, reflection intensity, distance, index) of all collected points and arranges them in ascending order of index number to construct a "point cloud attribute matrix" containing 2,500,000 points for subsequent calling.

[0051] The neighborhood gradient calculation sub-module calls the point cloud attribute matrix, indexes the position information of eight neighborhood points for each point in the matrix, and uses the Sobel operator to perform convolution operation on the distance values of the multi-neighborhood point set in the horizontal and vertical directions, and generates the edge response intensity value by synthesizing the operation values of the two directions.

[0052] This sub-module calls the point cloud attribute matrix established in the previous step. The system arranges the point cloud data in a grid on the two-dimensional U-V coordinate system based on its projection relationship on the internal sensor of the scanner. For the point with index 103 in the matrix, the system indexes its eight directly adjacent points, i.e., eight neighborhood points. The distance values (unit: mm) of and its eight neighborhood points are extracted to form a 3x3 distance value matrix. Taking as the center, its neighborhood distance matrix is:

[0053] ;

[0054] The system uses the horizontal Sobel operator kernel and the vertical operator kernel to perform convolution operation on the 3x3 distance value matrix, respectively. The convolution operation value in the horizontal direction is: . The convolution operation value in the vertical direction is: . combining the two directional operand values, generating the edge response intensity value of the point, i.e. the gradient magnitude . This process is repeated for each point in the point cloud attribute matrix, and finally a set containing the edge response intensity value of all points in the point cloud is generated.

[0055] The boundary point set generation submodule calls the point cloud attribute matrix and the edge response intensity value, sets the gradient magnitude threshold, compares the edge response intensity value of each point with the gradient magnitude threshold one by one, filters the points whose intensity value exceeds the gradient magnitude threshold, and extracts the index of the point in the point cloud attribute matrix to obtain the preliminary boundary point set.

[0056] This submodule calls the point cloud attribute matrix and the edge response intensity value set of all points, and filters the preliminary boundary points by setting the gradient magnitude threshold The setting of the gradient magnitude threshold is based on an independent experimental verification process. A titanium alloy test block with standard geometric features (such as a 90-degree right angle, a 10mm diameter hole, and a bevel) is selected and scanned using the same laser radar equipment. The edge response intensity value of all points is calculated and compared with the known accurate CAD model of the test block to obtain the true boundary points. Then, the effect of different threshold settings on boundary detection performance is tested. The threshold is divided into 80th to 99th percentile of the intensity value distribution, with an interval of 1 percentile.

[0057] Table 1 Gradient magnitude threshold selection experiment data table

[0058]

[0059] As shown in Table 1, the F1 score is an index that comprehensively considers the accuracy and false detection rate, which reaches a peak of 0.96 when the threshold is set to the 90th percentile of the overall intensity value distribution. This indicates that under this setting, the system can maximize the identification of true boundaries while controlling the number of non-boundary points misjudged as boundary points to a low level. Therefore, this setting is applied to the stone lion point cloud data. The edge response intensity value of all 2,500,000 points of the stone lion point cloud is calculated and sorted, and the intensity value at the 2,250,000th position (i.e. the 90th position) is 2.1, so the gradient magnitude threshold is set to 2.1.

[0060] The system compares the edge response intensity value of each point with the threshold one by one. Taking point as an example, its intensity value is 2.596, since , point Points with an intensity value below 2.1 are selected as initial boundary points. Points with an intensity value below 2.1 are considered non-boundary points and discarded. The system filters out all points with an intensity value exceeding 2.1. After identifying the points, their indices in the point cloud attribute matrix are extracted, and their complete attribute information is obtained based on these indices, including 3D coordinates, normal vectors calculated by performing principal component analysis (PCA) on the neighborhood point set, reflection intensity, and original index. These points together constitute the initial boundary point set and are then passed to the next module.

[0061] Please see Figure 1 and Figure 3 The boundary error analysis module is used to extract distance gradient, intensity change rate, angle difference, and density change from the initial boundary point set, call the Canny algorithm to filter, output the error point set, and pass the error point set to the adaptive cutting and repair module.

[0062] The error point set specifically includes the error point coordinates, error point normal vectors, and error point distribution attributes.

[0063] The boundary error analysis module includes:

[0064] The multidimensional feature extraction submodule extracts the distance and intensity information of each point and its neighboring points based on the initial boundary point set. It calculates the distance gradient and intensity change rate of multiple points, detects the angle difference between the line connecting the point and its neighboring points and the density change of the local area, and integrates the four values ​​of distance gradient, intensity change rate, angle difference and density change to obtain the point set feature comprehensive index.

[0065] This submodule quantizes the multi-dimensional features of each point in the received preliminary boundary point set. It then selects a point from the preliminary boundary point set. (120.5, 301.8, 88.2), its nearest neighbors on the boundary sequence are (120.3,301.7,88.1) and (120.8, 301.9, 88.4). The system is... Calculate four features: 1. Distance gradient: This is for a point The edge response intensity value calculated in the previous module is 2.8. 2. Intensity change rate: Using the same Sobel operator as used to calculate the distance gradient, but applied to the reflection intensity matrix of neighboring points. The calculation yields... The rate of change of intensity is 35.4. 3. Angle difference: Calculate the vector. with vector The angle between The calculated result is 175 degrees, and the difference in angle is defined as follows: That is, 5 degrees. 4. Density change: Calculation The number of points in a 2mm radius sphere around a point is 50 points / mm3. Its neighbor points and have local densities of 49 and 47 points / mm3, respectively, with an average of 48 points / mm3. The density variation is defined as the ratio of the density to the average density of neighbors, i.e., 50 / 48 ≈ 1.04.

[0066] To ensure that these feature values with different physical meanings and numerical ranges can be uniformly involved in subsequent calculations, the system normalizes each feature value before weighted summation, mapping it to a unified scale space of [0, 100]. The conversion rules here are as follows: the distance gradient and the intensity variation rate are linearly scaled according to their actual maximum values in the current preliminary boundary point set; the angle difference (range 0-180 degrees) is converted by dividing by 180 and multiplying by 100; the density variation (a ratio close to 1) is converted by a nonlinear mapping function with a center point at 1.0 and mapping the typical variation range of [0.5, 2.0] to the interval [0, 100]. According to this rule, the feature values of are converted (the maximum value of the distance gradient in the current data set is 10, the maximum value of the intensity variation rate is 100, and the density variation value after function mapping is 55):

[0067] Normalized distance gradient = (2.8 / 10) x 100 = 28.0

[0068] Normalized intensity variation rate = (35.4 / 100) x 100 = 35.4

[0069] Normalized angle difference = (5 / 180) x 100 ≈ 2.78

[0070] Normalized density variation = 55.0

[0071] Subsequently, by integrating these four normalized values, the point set feature comprehensive index of is obtained. Its calculation formula is: The weight coefficient is determined by performing a logistic regression analysis on a training set containing 10,000 samples (5,000 expert-labeled real crack boundary points and 5,000 edge noise points). The analysis results show that when the weight is set to , the model has the highest accuracy in distinguishing real boundaries from noise. Therefore, the point set feature comprehensive index of is .

[0072] The edge point non-maximum suppression submodule calls the point set feature comprehensive index. Along the gradient direction of each point, it compares the point with the point set feature comprehensive index value of the two adjacent points. If the index value of the current point is less than that of any adjacent point, it is marked as a non-edge point and removed from the sequence to establish a candidate edge point sequence.

[0073] This submodule calls the comprehensive index of the point set features of all preliminary boundary points. Sequence. For each point in the sequence (e.g. The system determines its gradient direction, which is determined by the vector sum of the distance gradient and the intensity gradient. Along this gradient direction, the system finds... (The sentence is incomplete and requires further context to translate accurately.) Two virtually adjacent points. Let... The previous point The value is 26.5, the next point The value is 29.2. The system compares these three points. Values: 26.5, 27.876, 29.2. Because... index value , Points that do not possess the local maximum property are therefore marked as non-edge points and removed from the sequence. Only when a point... A point is retained only if its value is strictly greater than the values ​​of its two adjacent points before and after its gradient direction. This process iterates through all initial boundary points, ultimately establishing a more concise sequence of candidate edge points with finer lines.

[0074] The dual-threshold connection filtering submodule sets a high-threshold and a low-threshold gradient based on the candidate edge point sequence. Points in the sequence with indices higher than the high threshold are identified as strong edge points, and points between the two thresholds are identified as weak edge points. It filters weak edge points that are directly connected to strong edge points or indirectly connected through other weak edge points, and combines all strong edge points with the filtered weak edge points to obtain the error point set.

[0075] This submodule processes the candidate edge point sequence generated in the previous step and requires setting a gradient high threshold. With gradient low threshold The setting of these two thresholds is also based on rigorous experiments.

[0076] Threshold setting and experimental verification: Scanned cultural relics data containing various complex boundaries (clear, blurred, discontinuous) were selected as the test set. All candidate edge points in the test set were calculated. value. The candidate range is set as The 60th to 90th percentiles of the value distribution, The candidate range is set to the 20th to 50th percentile, and Always less than For each type ( , The results of the combined tests are shown in Table 2.

[0077] Table 2 Experimental Data for Dual Threshold Combination Selection

[0078]

[0079] As shown in Table 2, the highest comprehensive evaluation score was achieved when the high threshold was set at the 80th percentile and the low threshold at the 40th percentile, indicating that the boundary connection effect was most ideal at this point. Applied to the stone lion data in this study, the calculated score... The 80th percentile of the value distribution is 70.0, and the 40th percentile is 25.0. Therefore, we set... , .

[0080] The system traverses the candidate edge point sequence:

[0081] If a certain point If the value is higher than 70.0, it is judged as a strong edge point and directly added to the final error point set.

[0082] If a certain point The value is between 25.0 and 70.0, that is... If it is, then it is determined to be a weak edge point.

[0083] If a certain point Values ​​below 25.0 are directly discarded. Finally, the system checks all weak edge points. A weak edge point is retained if it is directly connected to any strong edge point in its eight neighborhoods, or indirectly connected to a strong edge point through a path composed of other weak edge points. All strong edge points are combined with the filtered weak edge points to obtain the final error point set. This set accurately outlines the cracks and defects on the stone lion's surface and records the coordinates, normal vector, and distribution properties of each point.

[0084] Please see Figure 1 and Figure 4 The adaptive cutting and repair module is used to expand the point set based on the error point set according to the neighborhood expansion rule, call the least squares plane fitting model, construct the spatial residual function, perform plane fitting, linear interpolation to generate the interpolation point set, and pass the interpolation point set to the suture structure optimization module.

[0085] The interpolation point set includes the interpolation point coordinates and the interpolation point normal vectors;

[0086] The adaptive cutting and repair module includes:

[0087] The neighborhood point set expansion submodule acquires the error point set, and according to a set neighborhood search radius, the range is defined with each error point as the center. The number of point clouds within the radius is counted and judged whether it exceeds the lower limit of the number of points. The point cloud sets that meet the conditions are combined to generate an expanded neighborhood point set;

[0088] The submodule acquires the error point set. A continuous point cloud (a total of 15 points, indexes from E-201 to E-215) in the error point set that identifies the front paw crack of the stone lion is taken as the processing object. The system takes each point in it as the center and sets a neighborhood search radius The value of the radius is related to the average density of the point cloud, and is set to 4 times the average point spacing. After calculation, the average point spacing of the stone lion point cloud is 0.5 mm, so it is set to mm. At the same time, the lower limit of the number of points is set to 10, which is determined by experiment. The result of plane fitting with less than 10 points is statistically unstable. The system searches all points in the original point cloud data within a sphere of 2.0 mm radius with each error point as the center. If the number of points in the neighborhood is not less than 10, the point and its neighborhood points constitute an effective local point cloud set. All local point cloud sets generated by the 15 error points that meet the conditions are combined and duplicate points are removed, and finally an expanded neighborhood point set containing 150 points covering the entire crack area is generated.

[0089] The fitting plane construction submodule calls the expanded neighborhood point set, constructs a fitting spatial plane using the least squares criterion, and calculates the orthogonal distance of each point in the point set to the plane and the distance to the geometric center of the error point set. The formula is:

[0090]

[0091] The operation obtains the deviation metric of the set point cloud, and establishes a spatial fitting residual value;

[0092] Wherein, represents the spatial fitting residual value, represents the number of expanded neighborhood point sets, represents the current point number in the point set, represents the orthogonal distance of the point to the fitting plane, represents a factor for adjusting the degree of influence of the center distance, represents the distance of the point to the geometric center of the original error point set, represents the reference point cloud density, represents the local point cloud density of the point ;

[0093] ​The sub-module calls the extended neighborhood point set, and uses the following formula to calculate the spatial fitting residual value:

[0094] ;

[0095] First, each parameter in the formula is explained and assigned a value:

[0096] : Spatial fitting residual value, which is an indicator of the degree of deviation of the entire extended neighborhood point set from an ideal plane, with units of millimeters.

[0097] : Total number of points in the extended neighborhood point set, determined to be 150 in the previous step.

[0098] : Current point number in the point set, iterating from 1 to 150.

[0099] : Orthogonal distance (in millimeters) from point to the fitting plane. By applying the least squares criterion to the 150 points, the best fitting spatial plane equation is constructed. For each point , its orthogonal distance to the plane is calculated as .

[0100] : Center distance influence factor, a weight coefficient without units. The setting of this factor is done through experiments: create artificial gaps on test samples with different curvatures (plane, convex surface with radius 500mm, concave surface with radius 500mm), use different values (0.0, 0.1, 0.2, 0.5, 1.0) for repair, and measure the smoothness of the repaired surface. The results show that when , the repair result can maintain the best geometric continuity on different surfaces.

[0101] : Distance (in millimeters) from point to the geometric center of the original error point set. Calculate the arithmetic mean of the coordinates of the original 15 error points to get the geometric center . Then calculate the Euclidean distance from point to .

[0102] : Reference point cloud density, calculated by calculating the volume of the bounding box occupied by the entire stone lion point set of 2,500,000 points, and then dividing the total number of points by the volume to get , representing the global average density. The calculation gives points / mm³.

[0103] : point Local point cloud density, estimated by counting the number of points within a sphere of radius 1 mm centered on the point

[0104] The operational logic of the formula is that for each point in the extended neighborhood point set, a combined deviation term is computed. This term is composed of two parts: the orthogonal distance of the point to the fitted plane , and the distance of the point to the center of the error region (weighted by ). Both distances are in units of millimeters and can be directly added. This sum is then multiplied by a density adjustment coefficient , which is unitless and serves to penalize the deviation of points located in sparse regions , as these points are less reliable. The combined deviation terms of all points are summed and averaged to obtain the final residual value .

[0105] Example: Take three points in the extended neighborhood point set as an example for illustration:

[0106] Point 1: close to the center of the crack. Measurement and calculation give: mm, mm, points / mm³.

[0107] Point 2: far from the center of the crack, located on a flat surface. Measurement and calculation give: mm, mm, points / mm³.

[0108] Point 3: located at the edge of the crack, locally sparse. Measurement and calculation give: mm, mm, points / mm³. Substitute into and :

[0109] Residual term of point 1 =

[0110] Residual term of point 2 =

[0111] Residual term of point 3 = Add up the residual terms of all 150 points and divide by 150 to obtain the final spatial fitting residual value. Calculation gives for the crack region. This result shows that the combined distance of the extended neighborhood point set from the fitted plane is 0.55 mm.

[0112] ​The linear interpolation repair submodule sets a residual error threshold value according to the spatial fitting residual error value, identifies points exceeding the threshold value as points to be repaired, obtains the projection coordinates of the points on the least square fitting plane, and performs linear interpolation operation as a reference to generate an interpolation point set.

[0113] The submodule obtains the spatial fitting residual error value and performs subsequent operations. The system sets a residual error threshold value . The threshold value is set according to the accuracy requirement of the repair object, and the value is 2 times the average point distance, that is, . The system compares with . In this example, , which indicates that the point cloud distribution in this area is relatively flat and is suitable for interpolation repair based on a single plane. Subsequently, the system identifies the original 15 error points as a hollow area, and obtains the projection coordinates of these points on the constructed least square fitting plane. Based on these projection points, and within the area defined by the healthy boundary points on both sides of the crack, linear interpolation is performed to generate a new point set containing 50 points that smoothly fill the crack area. These newly generated points constitute the interpolation point set, and each interpolation point contains three-dimensional coordinates and a normal vector inherited from the fitting plane.

[0114] Please refer to Figure 1 and Figure 5 , the suture structure optimization module is used to obtain the tangent direction, angle change, segment distance between adjacent points, and intensity change through the interpolation point set, call the dynamic programming algorithm to perform tension vector analysis, judge the number of connection edges of the interpolation points, adjust through linear interpolation, and output the three-dimensional boundary connected structure;

[0115] The boundary connected structure specifically refers to the boundary connected path, boundary segment index, and connected edge set.

[0116] The suture structure optimization module includes:

[0117] The point set geometry feature extraction submodule obtains the interpolation point set, calculates the tangent direction of multiple points, the distance between adjacent points, and the associated intensity change, and counts the angle change of the connection nodes. The tangent direction and the distance between segments are defined as the path basic unit, and the intensity and angle data are associated to establish a set of geometric constraint parameters.

[0118] This submodule obtains the interpolation point set and performs geometric feature analysis on the 50 points. For each interpolation point , the system calculates: 1. Tangent direction: through the two adjacent points and in the ordered sequence, the direction of the vector is taken as the tangent direction of the point 1. Tangent direction. 2. Intersegment distance: Calculate the Euclidean distance between adjacent interpolation points, such as... 3. Correlation Intensity Variation: The reflection intensity at each interpolation point is obtained by inverse distance-weighted interpolation of the intensity values ​​of its surrounding original boundary points. Then, the intensity difference between adjacent interpolation points is calculated. 4. Angle Variation: Calculated from three consecutive points... The included angle between two consecutive line segments. A specific interpolation point. The extracted set of geometric constraint parameters is: {tangent direction: (0.707, 0.707, 0), and...} Distance: 0.48mm, Interpolation Intensity: 155, Resulting - - Angle: 178 degrees. This process is performed on all 50 interpolation points to establish a complete set of geometric constraint parameters.

[0119] The tension path planning submodule is based on the set of geometric constraint parameters. It calls the dynamic programming algorithm, takes the intensity change and the angle change as the cost factors of tension vector analysis, and performs multi-stage decision-making between interpolation points with tension equilibrium as the optimization objective. It judges and determines the number of connected edges of multiple interpolation points and obtains the number of node connections.

[0120] This submodule constructs a path planning problem with tension equilibrium as the optimization objective, based on a set of geometric constraint parameters. Interpolation points are considered as nodes in a graph, and potential connections between nodes are considered as edges. The "cost" or "tension" of an edge is defined as the geometric non-smoothness introduced by connecting two nodes. Connection points... and Cost Defined by a function that transforms geometric discontinuities into numerical values:

[0121] ;

[0122] To uniformly handle factors of different natures, each factor is processed through a function before calculating the total cost. Convert to a unitless penalty score. The conversion rules are as follows:

[0123] Angle factor : Quantify the angular change introduced after the connection (the deviation from 180 degrees). .

[0124] Distance factor : This distance Average distance between all interpolation point segments Normalize the differences. .

[0125] Intensity factor : the difference between the reflection intensity of two points is divided by the maximum possible range of intensity 255 for normalization, . .

[0126] weight coefficient The determination of the weight coefficient is that 20 experienced 3D modelers are recruited to conduct double-blind scoring (1-5 points, 5 points representing the most natural smoothing) on 100 groups of repair results generated by different weight combinations, and the weight combination with the highest average score is selected as .

[0127] The system uses a dynamic programming algorithm to perform multi-stage decision-making. The state is defined as the cumulative cost of the optimal (minimum tension) path from the starting point to the interpolation point . The state transition equation is . By solving this problem, the system finds a path that passes through all interpolation points with the lowest total cost. This process not only determines the connection order of the points, but also determines the number of connection edges each node should have at possible branches or intersections of the path (applicable to complex fractures). For the current linear fracture repair, the result is that all 48 points except the first and last points have 2 connection edges. This process finally outputs the connection number of each interpolation node.

[0128] The connection structure generation submodule identifies the interpolation point pairs that need to be connected according to the node connection number, calls the coordinate information in the geometric constraint parameter set, performs linear interpolation between the point pairs to generate connection edges, and combines all connection edges to establish a three-dimensional boundary connected structure.

[0129] This submodule generates the final connection structure according to the node connection number determined in the previous step. The system identifies all interpolation point pairs that need to be connected. According to the results of dynamic programming, point should be connected with and . The system calls the coordinate information of , performs linear interpolation between point pairs and to generate two connection edges. Repeat this operation for all point pairs that need to be connected, and combine all generated connection edges. The set of these edges constitutes the final three-dimensional boundary connected structure, which is stored and output in the form of boundary connected path, boundary paragraph index, and connected edge set, completely and smoothly stitching the cracks on the stone lion model, providing a high-quality geometric basis for subsequent meshing and texture mapping.

[0130] The three-dimensional modeling method based on laser radar is executed based on the above-mentioned three-dimensional modeling system based on laser radar, including the following steps:

[0131] S1: acquire point cloud data by laser radar, obtain coordinate, reflection intensity, distance, index parameter, call eight neighborhood point set, adopt Sobel operator for edge detection on distance parameter, form preliminary boundary point set by detected edge data;

[0132] S2: based on preliminary boundary point set, obtain distance gradient, reflection intensity change rate, angle difference value, point set density change parameter, call Canny algorithm, execute edge screening operation on preliminary boundary point set, form error point set by screened edge abnormal point;

[0133] S3: through error point set, expand point set range according to neighborhood expansion rule, call least square plane fitting model, establish spatial residual function based on expanded point set, perform plane parameter fitting, generate interpolation point set by fitting result in linear interpolation mode;

[0134] S4: through interpolation point set, detect tangent direction, angle change, segment distance and intensity change parameter, call dynamic programming algorithm to execute tension vector analysis, judge interpolation point connection edge number, adjust boundary connected structure parameter by linear interpolation, output three-dimensional boundary connected structure.

[0135] The above embodiments show the preferred embodiments of the present application, any equivalent adjustment of the technical scheme based on software engineering method belongs to the protection scope, including but not limited to: realizing algorithm logic by using different programming languages, service reconstruction on function module, adjusting data interaction protocol, optimizing resource scheduling strategy and other technical improvements. Any implementation scheme derived by reasonable modification on data processing flow, service calling link or system architecture level without departing from the technical core of the present application should be regarded as within the protection scope defined by the claims of the present application.

Claims

1. A laser radar based three-dimensional modeling system, characterized by, The system comprises: A point cloud boundary extraction module is configured to obtain coordinates, reflection intensity, distance, and index from laser radar point cloud data, arrange the laser radar point cloud data in a raster manner to establish a point cloud attribute matrix, call eight-neighbor points for the point cloud attribute matrix, perform convolution operation on the distance by using a Sobel operator to detect edges, calculate a normal vector of each detected edge point based on a detected edge neighborhood point set, analyze and output a preliminary boundary point set, and pass the preliminary boundary point set to a boundary error analysis module; The boundary error analysis module is configured to extract distance gradient, intensity change rate, angle difference value, and density change from the preliminary boundary point set, call a Canny algorithm for screening, output an error point set, and pass the error point set to an adaptive cutting repair module; The adaptive cutting repair module is configured to expand the error point set according to a neighborhood expansion rule, call a least square plane fitting model, construct a spatial residual function, perform plane fitting, and linearly interpolate to generate an interpolation point set, and pass the interpolation point set to a stitching structure optimization module; The stitching structure optimization module is configured to obtain tangent direction, angle change, inter-segment distance, and intensity change from the interpolation point set, call a dynamic programming algorithm to perform tension vector analysis, judge the number of interpolation point connection edges, and output a three-dimensional boundary connected structure through linear interpolation adjustment. The inter-segment distance refers to the Euclidean distance between adjacent interpolation points.

2. The lidar-based three-dimensional modeling system of claim 1, wherein, The preliminary boundary point set includes boundary point three-dimensional coordinates, boundary point normal vectors, boundary point reflection intensity, and boundary point index, the error point set specifically includes error point coordinates, error point normal vectors, and error point distribution attributes, the interpolation point set includes interpolation point coordinates and interpolation point normal vectors, and the boundary connected structure specifically refers to a boundary connected path, a boundary segment index, and a connected edge set.

3. The lidar-based three-dimensional modeling system of claim 2, wherein, The point cloud boundary extraction module comprises: A point cloud data acquisition submodule is configured to acquire laser radar point cloud data, extract coordinates, reflection intensity, distance, and index information of each point, and call the coordinates, reflection intensity, distance, and index information to combine and arrange to establish a point cloud attribute matrix; A neighborhood gradient calculation submodule is configured to call the point cloud attribute matrix, acquire position information of eight-neighbor points for each point index in the matrix, perform convolution operation on distance values of a multi-neighborhood point set in a horizontal direction and a vertical direction by using a Sobel operator, and generate an edge response intensity value by synthesizing operation values in the two directions; A boundary point set generation submodule is configured to call the point cloud attribute matrix and the edge response intensity value, set a gradient amplitude threshold, compare the edge response intensity value of each point with the gradient amplitude threshold one by one, screen points with an intensity value exceeding the gradient amplitude threshold, extract the index of the points in the point cloud attribute matrix, and obtain a preliminary boundary point set.

4. The lidar-based three-dimensional modeling system of claim 3, wherein, The boundary error analysis module comprises: The multi-dimensional feature extraction submodule extracts distance information and intensity information of each point and adjacent points based on the preliminary boundary point set, calculates distance gradient and intensity change rate of multiple points, detects angle difference of a line connecting a point and an adjacent point and density change of a local region, and obtains a point set feature comprehensive index by comprehensively combining the distance gradient, the intensity change rate, the angle difference and the density change; The edge point non-maximum suppression submodule calls the point set feature comprehensive index, compares point set feature comprehensive index values of a point and two adjacent points in front and back of the point along a gradient direction of the point, marks the point as a non-edge point and removes the point from a sequence if an index value of the current point is smaller than an index value of any adjacent point, and establishes a candidate edge point sequence; The double-threshold connection screening submodule sets a high gradient threshold and a low gradient threshold according to the candidate edge point sequence, determines a strong edge point if an index value of the strong edge point is higher than the high threshold, determines a weak edge point if an index value of the weak edge point is between the two thresholds, screens the weak edge points which are directly connected with the strong edge point or indirectly connected with the strong edge point through other weak edge points, combines all the strong edge points and the screened weak edge points, and obtains an error point set.

5. The lidar-based three-dimensional modeling system of claim 4, wherein, The adaptive cutting repair module comprises: The neighborhood point set expansion submodule obtains the error point set, defines a range according to a set neighborhood search radius with each error point as a center, and determines whether a point cloud quantity within the radius exceeds a lower limit of the point quantity. The point cloud sets that meet the condition are combined to generate an expanded neighborhood point set. The fitting plane construction submodule calls the expanded neighborhood point set, constructs a fitting space plane by using a least square criterion, calculates an orthogonal distance of each point in the point set to the plane and a distance of the point to a geometric center of the error point set, and obtains a deviation measure of the set point cloud by using a formula: ; The linear interpolation repair submodule sets a residual error judgment threshold according to the space fitting residual error value, identifies a point as a point to be repaired if the point exceeds the threshold, obtains a projection coordinate of the point on a least square fitting plane, and executes a linear interpolation operation to generate an interpolation point set. wherein, represents a spatial fitting residual value, represents a number of extended neighborhood point sets, represents a current point sequence number in a point set, represents a point orthogonal distance to a fitting plane, represents a factor for adjusting the degree of influence of the center distance, represents a point distance to the geometric center of the original error point set, represents a reference point cloud density, represents a point local point cloud density; The suture structure optimization module comprises:

6. The lidar-based three-dimensional modeling system of claim 5, wherein, The point set geometric feature extraction submodule obtains the interpolation point set, calculates a tangent direction of multiple points, a distance between adjacent points and an associated intensity change, and a change amount of an included angle of a connecting node, defines the tangent direction and the distance between the segments as a path basic unit, and associates intensity and angle data to establish a geometric constraint parameter set; The tension path planning submodule calls a dynamic programming algorithm based on the geometric constraint parameter set, takes the intensity change and the angle change as cost factors of tension vector analysis, executes a multi-stage decision between the interpolation points with tension balance as an optimization target, judges and determines a connection edge number of multiple interpolation points, and obtains a node connection number; The connection structure generation submodule identifies a pair of interpolation points that need to be connected according to the node connection number, calls coordinate information in the geometric constraint parameter set, executes a linear interpolation between the point pair to generate a connection edge, combines all the connection edges, and establishes a three-dimensional boundary connected structure. ​ 7. A method for three-dimensional modeling based on laser radar, characterized in that, The method is used for realizing the laser radar-based three-dimensional modeling system of any one of claims 1-6, comprising the following steps: S1: acquiring point cloud data by a laser radar, obtaining coordinate, reflection intensity, distance, index parameters, calling an eight-neighbor point set, performing edge detection on the distance parameters by a Sobel operator, and forming a preliminary boundary point set from the detected edge data; S2: based on the preliminary boundary point set, obtaining a distance gradient, a reflection intensity change rate, an angle difference value, and a point set density change parameter, calling a Canny algorithm, performing an edge screening operation on the preliminary boundary point set, and forming an error point set from the screened edge abnormal points; S3: expanding the point set range according to a neighborhood expansion rule through the error point set, calling a least square plane fitting model, establishing a spatial residual function based on the expanded point set, performing plane parameter fitting, and generating an interpolation point set from the fitting result by using a linear interpolation method; S4: detecting a tangent direction, an angle change, a segment distance, and an intensity change parameter through the interpolation point set, calling a dynamic programming algorithm to perform tension vector analysis, judging an interpolation point connection edge number, adjusting a boundary connected structure by using a linear interpolation method, and outputting a three-dimensional boundary connected structure.

Citation Information

Patent Citations

  • Method and system for repairing airborne laser radar point cloud missing area by referring to existing DEM

    CN115660973A

  • Point cloud edge segmentation method and system suitable for complex industrial parts

    CN119904474A