A fast reconstruction algorithm of AST spline surface based on local refinement solution
Through the use of local refined AST -sized bar surface to rapid reconstruction algorithms in the curved reconstruction, it solves the problem that the curved surface reconstruction is difficult to achieve local refinement in existing technology, and achieves efficient curved reconstruction and improvement efficiency.
Patent Information
- Application Number
- CN202010699886.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-07-20
- Publication Date
- 2025-01-28
- Estimated Expiration
- 2040-07-20
AI Technical Summary
The prior art is difficult to achieve local refinement during surface reconstruction, resulting in the B-spline and NURBS surfaces that produce redundant nodes when expressing complex surfaces, affecting design and computing efficiency.
Proposed a fast reconstruction algorithm based on local refined solution, using curvature feature information to build an initial T grid, and replacing the global fit through local solution alternatives to significantly improve the calculation efficiency.
Effectively reduce the number of iterations of local refinement, improve the efficiency of reconstruction and calculation, retain the linear independence and unit decomposition of the mixed function, and improve the accuracy and stability of curved reconstruction.
Smart Images

Figure CN111914450B_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the field of three-dimensional surface topography measurement, and more specifically, relates to an AST spline surface fast reconstruction algorithm based on local refinement solution. Background Art
[0002] Surface reconstruction refers to the reverse derivation of the mathematical expression model of the object from a set of discrete scanning data points, which is very important in many fields, such as the manufacture and design of aviation parts and molds, 3D printing, and cultural relic restoration. Spline models are commonly used to express surfaces, such as B-splines and NURBS, which only require a control grid and corresponding control vertices to represent any complex surface, and are therefore widely used in CAD and other fields. In addition, NURBS is also a standard format for surface expression.
[0003] Previous surface reconstruction algorithms fit point cloud data into B-spline surfaces or NURBS surfaces. However, B-spline and NURBS spline require the control grid to be a regular topological rectangle, and the node vectors are globally shared, which makes it difficult to achieve local refinement. Each time a node is introduced, new nodes need to be added in rows and columns to meet the topological requirements, but these nodes are completely meaningless for the control of the surface. Therefore, B-spline and NURBS surfaces will generate many redundant nodes when expressing complex surfaces with rich feature information, which greatly affects the calculation and storage of surface design and surface reconstruction. To solve this problem, Sederberg proposed T-spline in 2003 and perfected the theory in 2004. Unlike B-spline curves and NURBS, T-spline curves allow T-shaped nodes in the control grid, which allows T-spline curve surfaces to be refined locally. Each time a control point is inserted, only a few control points need to be introduced without propagating the entire row or column of control points, which greatly simplifies the representation of the surface and saves storage space.
[0004] T-spline curves break the topological requirements of B-spline curves and NURBS and achieve local refinement, but they also bring some problems. The linear independence and unit decomposition of T-spline mixing functions cannot be guaranteed, which makes the optimization equation unsolvable and increases the computational cost of T-spline surfaces. In addition, in some cases, the local refinement effect of T-spline curves is poor and not robust enough. In order to solve these problems, T-spline (AST) suitable for analysis is proposed. AST spline is a subclass of T-spline with certain topological constraints. The mixing function of AST spline is linearly independent, and if the boundary condition constraints are met, a unified partition is formed. Later, some scholars gave a local refinement algorithm for AST spline, which is more stable than the local refinement algorithm of general T-spline. After AST spline was proposed, it was applied to the field of geometric analysis. Although AST spline has the advantages of high flexibility, high precision and high numerical stability, as a new technology, there is currently a lack of data reconstruction algorithms for AST spline. AST spline has a more complex topological structure than T spline, so its reconstruction calculation efficiency is lower than that of T spline. Summary of the invention
[0005] In response to the above-mentioned shortcomings and / or improvement needs of the prior art, the present invention provides an AST spline surface fast reconstruction algorithm based on local refinement solution, wherein the algorithm utilizes curvature feature information to construct an initial T-grid, which can effectively reduce the number of iterations of subsequent local refinement and improve reconstruction efficiency; at the same time, local solution fitting is used instead of conventional global fitting, which significantly improves computational efficiency.
[0006] To achieve the above object, the present invention proposes an AST spline surface fast reconstruction algorithm based on local refinement solution, which includes the following steps:
[0007] S1 performs characteristic distribution analysis on the surface sampling point cloud in the parameter domain or sampling domain to construct an initial T grid;
[0008] S2 converts the initial T grid into an AST grid;
[0009] S3 solves the control vertex to obtain an AST spline surface and calculates the error of each data point in the AST spline surface;
[0010] S4 performs local refinement and local fitting solution on the AST mesh patch where the data point whose error does not meet the preset accuracy threshold is located, so as to update the control vertex and the AST spline surface;
[0011] S5 determines whether the error of each data point in the updated AST spline surface meets the requirements of the preset accuracy threshold. If so, complete the rapid reorganization of the AST spline surface based on local refinement solution; if not, repeat step S4 until the requirements of the preset accuracy threshold are met.
[0012] As further preferred, step S1 includes the following sub-steps:
[0013] S11 calculates the Gaussian curvature of the surface sampling point cloud, and takes points whose absolute values are greater than a preset threshold as feature points;
[0014] S12 iteratively subdivides the parameter domain or the sampling domain until the number of data points and the number of feature points in each patch are both less than their respective preset thresholds, thereby constructing the initial T grid.
[0015] As a further preferred embodiment, in step S12, a binary method or a quartering method is used for iterative segmentation.
[0016] As a further preferred embodiment, in step S2, a greedy algorithm is used to perform an approximate minimum search, so as to convert the initial T grid into an AST grid.
[0017] As further preferred, step S3 includes the following sub-steps:
[0018] S31 sets the weight of all nodes to 1 and uses the least square method to solve the control vertex;
[0019] S32 calculates the error of each data point in the AST spline surface according to the control vertices.
[0020] As further preferred, step S4 includes the following sub-steps:
[0021] S41 performs reconstruction error analysis on the AST spline surface. If the error of a data point exceeds a preset accuracy threshold, the local AST mesh patch where it is located is subdivided;
[0022] S42 converts the subdivided non-AST grid into an AST grid;
[0023] S43 performs local fitting solution on the new control vertices introduced by the local refinement of the AST mesh and the affected control vertices, so as to update the control vertices and the AST spline surface.
[0024] As a further preferred embodiment, in step S41, binary division or quartering is used for segmentation.
[0025] In general, the above technical solution conceived by the present invention has the following technical advantages compared with the prior art:
[0026] 1. The present invention uses curvature feature information to construct the initial T grid, which can effectively reduce the number of iterations of local refinement in the later stage and improve the reconstruction efficiency; at the same time, local solution fitting is used instead of conventional global fitting, which significantly improves the calculation efficiency;
[0027] 2. At the same time, the present invention effectively retains the linear independence and unit decomposition of the hybrid function, so that the spline expression is changed from a rational polynomial to a simple polynomial, which improves the computational efficiency and numerical stability, and facilitates the surface differential calculation;
[0028] 3. In addition, compared with general B-spline or NURBS surface reconstruction technology, for the same set of data, when the number of control vertices is roughly the same, the present invention can achieve true local refinement based on its topological properties, thereby effectively reducing redundant control points, saving data storage space and reconstruction complexity;
[0029] 4. In terms of accuracy, the present invention iteratively performs adaptive local subdivision and local fitting solutions based on surface feature distribution and reconstruction error analysis. When processing complex surfaces with rich feature information, AST reconstruction can better express the surface geometric features and has higher reconstruction accuracy than B-spline and NURBS. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Figure 1 It is a flowchart of an AST spline surface fast reconstruction algorithm based on local refinement solution constructed according to a preferred embodiment of the present invention;
[0031] Figure 2 is an example of a T-node and its node interval in a T-grid;
[0032] Figure 3 is an example of an AST grid, with dotted lines used to mark T-node expansions;
[0033] Figure 4 are the data sets and their corresponding parameters, where (A) is the data set and (B) is the corresponding parameters;
[0034] Figure 5 A comparison between the initial T-grid constructed by the existing algorithm and the present invention, wherein (A) is the m×n initial T-grid used in the existing algorithm, and (B) is the initial T-grid adaptively constructed by the present invention;
[0035] Figure 6 It is a schematic diagram of the conversion of T grid to AST grid, where (A) is T grid, (B) is the intermediate conversion T grid, and (C) is AST grid. DETAILED DESCRIPTION
[0036] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention. In addition, the technical features involved in the various embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other.
[0037] like Figure 1 As shown, an embodiment of the present invention provides an AST spline surface fast reconstruction algorithm based on local refinement solution. The algorithm constructs an initial T grid according to the curvature information of the input point cloud and ASTs it to obtain the initial AST grid, uses the least squares method to solve the control vertices to obtain the AST spline surface, and continuously refines the AST grid according to the error until the error requirements are met, and finally generates the optimal reconstructed AST spline surface.
[0038] For example, given a set of surface sampling point clouds V and an error threshold ε, AST spline surface reconstruction can be described as: finding an AST spline surface S(u,v) such that the following inequality holds:
[0039] dist(S(u,v)-V i )≤ε,V i ∈V (1)
[0040] For example, the AST spline surface fast reconstruction algorithm based on local refinement solution provided by the present invention can be applied to facial data collection, and the surface sampling point cloud V and its parameter domain or sampling domain U (such as Figure 4 The initial T grid is calculated and converted into an AST grid. The control vertices are then solved using the least square method to obtain the AST spline surface and calculate the error. The AST grid is locally refined where the error does not meet the threshold ε requirement until the error requirement is met. The specific steps include:
[0041] (a) Constructing the initial T-grid based on feature points
[0042] Similar to B-splines and NURBS, T-splines are also defined on a control grid and its corresponding control vertices, and this control grid is called a T-grid. Unlike the control grids of B-splines and NURBS splines, T-grids allow T nodes (such as Figure 2 As shown in Figure 2, the control vertices in the three-dimensional space correspond one-to-one to the nodes in the T-grid. Given the T-grid and the corresponding control vertices, the specific expression of the T-spline S(u,v) can be written as:
[0043]
[0044] Among them, w i is the weight, P i is the control vertex, and B i (u,v) is the mixing function of each node, the specific form is:
[0045] B i (u,v)=N[u i ](u)N[v i](v) (3)
[0046] Among them, N[u i ](u) and N[v i ](v) is defined in the following two node intervals u i and v i The cubic B-spline basis function on :
[0047] u i =[u i0 ,u i1 ,u i2 ,u i3 ,u i4 ] (4)
[0048] v i =[v i0 ,v i1 ,v i2 ,v i3 ,v i4 ] (5)
[0049] Among them, u i and v i is the node interval, u i0 ~u i4 and v i0 ~v i4 They are the node elements in the u direction and the v direction respectively.
[0050] Given a T grid, the node interval u of each node i and v i Determine as follows: In the T grid, let the coordinates of node P be (u i2 ,v i2 ), take this point as the origin, and emit a ray to the right (in the direction of increasing u). The coordinates of the two edges that intersect with the ray first are u i3 and u i4 , the remaining coordinates can be obtained in a similar way.
[0051] By normalizing the parameter domain or sampling domain U, all data points are mapped in the interval [0,1]. A [0,1]×[0,1] square plane grid is selected as the initial grid for refinement. The mesh is refined by performing curvature analysis based on the number of parameter points and the number of feature points in the area. For points on a smooth surface, the maximum curvature is denoted as k1 and the minimum curvature is denoted as k2. These two curvatures are called principal curvatures, and the Gaussian curvature k=k1k2. Points whose absolute value of Gaussian curvature is greater than a preset threshold are selected as feature points. For example, data points whose absolute Gaussian curvature is in the top 10% can be selected as feature points.
[0052] Given a preset threshold N of the number of data points d and the preset threshold N of the number of feature points f , when the number of data points in a region patch exceeds N d Or the number of feature points exceeds N f When the area is subdivided, the surface patch is subdivided until the threshold requirement is met. The initial T-grid obtained through curvature analysis and feature segmentation is closer to the final T-grid in topological structure, which can reduce the number of iterative refinements based on reconstruction errors in the later stage, shorten the calculation time, and achieve the purpose of fast fitting.
[0053] There are two main ways to subdivide a region: binary or quartering. The binary method is to divide a region into two; the quartering method is to divide it into four. For example, the binary method divides the long side of the region. That is, let the coordinates of the lower left corner node of the region be (u min ,v min ), the coordinates of the upper right corner node are (u max ,v max ), if u max -u min <v max -v min , that is, the vertical side is the long side, so in Otherwise, This makes the divided areas more symmetrical, rather than flat rectangles (see Figure 5 ). The quartering rule uses "cross lines" to evenly divide a region into four smaller patches of the same shape and area.
[0054] (b) AST grid transformation
[0055] AST spline is a subclass of T-spline, which needs to add some topological restrictions, and these restrictions are based on the concept of T-node extension. For each T-node, T-node extension refers to such a line segment, let the node interval u, v of this T-node be:
[0056] u=[u0,u1,u2,u3,u4] (6)
[0057] v=[v0,v1,v2,v3,v4] (7)
[0058] If the node is missing on the right side, the T node at that point is expanded to a line segment
[0059] If the node is missing on the left, the T node at that point is expanded to a line segment
[0060] If the node is missing an upper edge, the T node at that point is expanded to a line segment
[0061] If the node is missing the bottom edge, the T node at that point is expanded to a line segment
[0062] For a given T-grid, if its horizontal T-node extensions and vertical T-node extensions do not intersect each other, then the T-grid is an AST grid; accordingly, the T-spline surface defined on this AST grid is called an AST spline surface (see Figure 3 ).
[0063] Generally, a T grid can be transformed into many AST grids, but we need to find the simplest grid, or the AST grid that is closest to the original grid, that is, the one with the least number of nodes inserted in the transformation. Here we use a greedy strategy to find the local optimal solution. The specific method is:
[0064] (b1) Find all intersecting T-node extensions and their corresponding T-nodes in the original T-grid;
[0065] (b2) For each T-node in the previous step, extend it along the direction where it is missing to obtain a new T-grid, and calculate the number of intersecting T-node extensions in the new T-grid. Do this for each T-node, and find the T-grid with the smallest number of intersecting T-node extensions to replace the previous T-grid;
[0066] (b3) Repeat step (b2) until there are no intersecting T nodes expanded, and obtain the final AST grid (see Figure 6 ).
[0067] (c) Least squares control point fitting optimization
[0068] After obtaining the AST mesh, let the weight w of all nodes be 1, let P be the corresponding control vertex, and use the unit decomposition of the AST mesh. An AST spline surface can be written as the following simple polynomial form:
[0069]
[0070] This concise expression simplifies the surface fitting calculation and improves the numerical stability; in addition, this simple polynomial has a concise differential expression, which brings convenience to the surface differential analysis.
[0071] Given a set of m data points of the surface sampling point cloud V and its parameterized result parameter domain U, we hope to find a set of control vertices P so that the distance between the AST spline surface and the surface sampling point cloud V is the smallest in the least squares sense, that is:
[0072]
[0073] In the formula, S(uj ,v j ) is the AST spline surface at the parameter position (u j ,v j ), V j is the measured coordinate value at the corresponding parameter position. If the control vertex P and the surface sampling point cloud V are written as column vectors, the optimization problem can be transformed into the least square solution to the following overdetermined equations:
[0074] AP=V (10)
[0075] Where, is the AST spline surface model matrix determined by formula (8), and A i,j =B i (u j ,v j ), B i (u j ,v j ) is the mixing function determined by equation (3); according to the linear independence of AST spline mixing function, the least squares solution of this equation is P * is unique and can be obtained by calculating the MP generalized inverse matrix A of A + Obtain, that is:
[0076] P * =A + V (11)
[0077] After the control vertex P is determined, the entire AST spline surface is completely determined, and the error E of all data points can also be calculated by the following formula:
[0078] E=AP * -V (12)
[0079] (d) Local refinement and local solution
[0080] Assume that there are m input data, and the refined AST grid contains n nodes, of which r are newly introduced nodes and nodes whose node intervals are changed, and the mixing functions of these r nodes are non-zero at s data points. After refinement, only these s data points are needed as fitting data, and the control vertices of the r nodes in the refined area are taken as unknown quantities, while the control vertices in the remaining non-refined areas are taken as known quantities. Take the s rows corresponding to the mixing function matrix A, and write it into a block matrix according to the corresponding r columns, then the system of equations to be solved can be expressed as:
[0081]
[0082] Among them, V s A is a vector or matrix of s rows of measured data. s×rThe AST spline model matrix of the newly added control vertices and the control vertices whose nearby node intervals have changed in the refinement area, A s×(n-r) is the model matrix of the control vertices in the remaining node intervals that are not affected, P n-r is the control vertex of known quantity, P r is the control vertex to be found. By shifting the terms in the equation, the least squares solution of the equation is for:
[0083]
[0084] To solve the above formula, we only need to calculate the local unknowns to achieve the effect of accelerated fitting. After obtaining the control vertices, we recalculate the error and repeat the above steps until the error meets the requirements, and then we can get the reconstructed AST spline surface.
[0085] Since local refinement will generate a general T-grid, the AST mesh conversion also needs to be repeated in each local refinement. For the new control points introduced by the local refinement of the AST mesh and the control points in the vicinity of the affected hybrid function, a local fitting solution is implemented. That is, the control points that are far from the newly added control points and are not affected by the hybrid function are taken as known quantities, and only the surface sampling data in the affected area is used to perform local solution fitting on the control points to be updated. This process realizes local subdivision and local solution, avoids global solution, greatly speeds up the calculation efficiency, and shortens the reconstruction time.
[0086] It will be easily understood by those skilled in the art that the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the present invention.
Claims
1. A fast reconstruction method of AST spline surface based on local refinement solution, characterized in that: The method comprises the following steps: S1 performs feature distribution analysis on the surface sampling point cloud in the parameter domain to construct the initial T grid; S2 converts the initial T grid into an AST grid; S3 uses the least square method to solve the control vertex, thereby obtaining an AST spline surface and calculating the error of each data point in the AST spline surface; S4, for the AST mesh patch where the error of the data point does not meet the preset accuracy threshold, local refinement and local fitting solution are performed, so as to update the control vertex and AST spline surface; S5 determines whether the error of each data point in the updated AST spline surface meets the requirement of the preset accuracy threshold. If so, complete the rapid reconstruction of the AST spline surface based on the local refinement solution; if not, repeat step S4 until the requirement of the preset accuracy threshold is met; Step S1 includes the following sub-steps: S11 calculates the Gaussian curvature of the surface sampling point cloud, and takes points whose absolute values are greater than a preset threshold as feature points; S12 iteratively subdividing the parameter domain until the number of data points and the number of feature points in each patch are both less than their respective preset thresholds, thereby constructing the initial T grid; Step S4 includes the following sub-steps: S41 performs reconstruction error analysis on the AST spline surface. If the error of a data point exceeds a preset accuracy threshold, the local AST mesh patch where it is located is subdivided; S42 converts the subdivided non-AST grid into an AST grid; S43 performs local fitting solution on the new control vertices introduced by the local refinement of the AST mesh and the affected control vertices, so as to update the control vertices and the AST spline surface.
2. The AST spline surface rapid reconstruction method based on local refinement solution as claimed in claim 1, characterized in that: In step S12, iterative segmentation is performed using a binary or quadrisection method.
3. The AST spline surface rapid reconstruction method based on local refinement solution as claimed in claim 1, characterized in that: In step S2, a greedy algorithm is used to perform an approximate minimum search, thereby converting the initial T grid into an AST grid.
4. The AST spline surface rapid reconstruction method based on local refinement solution as claimed in claim 1, characterized in that: Step S3 includes the following sub-steps: S31 sets the weight of all nodes to 1 and uses the least square method to solve the control vertex; S32 calculates the error of each data point in the AST spline surface according to the control vertices.
5. The AST spline surface rapid reconstruction method based on local refinement solution as claimed in claim 1, characterized in that: In step S41, the binary method or the quartering method is used for segmentation.
Citation Information
Patent Citations
Geometric iteration image fitting method based on T spline
CN103325130A
Partition local fairing weight factor-based T-spline curved-surface fitting method
CN106981097A