CN112529803B - Feature-preserving three-dimensional Mesh model denoising method - Google Patents
Feature-preserving three-dimensional Mesh model denoising method Download PDFInfo
- Publication number
- CN112529803B CN112529803B CN202011452296.2A CN202011452296A CN112529803B CN 112529803 B CN112529803 B CN 112529803B CN 202011452296 A CN202011452296 A CN 202011452296A CN 112529803 B CN112529803 B CN 112529803B
- Authority
- CN
- China
- Prior art keywords
- feature
- normal vector
- triangular
- triangular surface
- vertex
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 239000013598 vector Substances 0.000 claims abstract description 221
- 239000011159 matrix material Substances 0.000 claims abstract description 40
- 238000001914 filtration Methods 0.000 claims abstract description 37
- 230000002146 bilateral effect Effects 0.000 claims abstract description 12
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000009825 accumulation Methods 0.000 claims description 3
- 230000001186 cumulative effect Effects 0.000 claims description 3
- 230000009977 dual effect Effects 0.000 claims description 3
- 230000003014 reinforcing effect Effects 0.000 claims description 3
- 239000004576 sand Substances 0.000 claims description 3
- 230000002708 enhancing effect Effects 0.000 abstract description 2
- 230000014759 maintenance of location Effects 0.000 abstract 1
- 230000000717 retained effect Effects 0.000 abstract 1
- 230000006870 function Effects 0.000 description 10
- 230000000694 effects Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 2
- 239000002390 adhesive tape Substances 0.000 description 1
- 238000013019 agitation Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
Images
Classifications
-
- G06T5/70—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20024—Filtering details
- G06T2207/20028—Bilateral filtering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
The invention relates to a three-dimensional Mesh model denoising method with characteristic retention. Firstly, calculating guide normal vectors of all triangular surfaces, and filtering the normal vectors of all triangular surfaces by using the guide normal vectors based on a joint bilateral filtering algorithm; secondly, classifying feature points by using the filtered triangular surface normal vector based on a normal voting tensor method, enhancing weak features and eliminating pseudo features; then, updating a non-feature vertex based on a normal vector constraint term filtered by a neighbor triangular surface, denoising a non-feature region and obtaining an optimized normal vector of a non-feature point; clustering a support neighborhood point set of the feature points according to the similarity of the feature vectors of the tensor matrix and the vertex normal vector, and fitting a support plane of the feature points; and finally, updating the feature points based on the normal vector constraint term of the neighbor triangular surface and the constraint term of the support plane, and denoising the feature region. The method can solve the problems of over-smooth characteristics and loss of characteristics in the denoising process of the three-dimensional Mesh model, so that the three-dimensional Mesh model with the characteristics retained after noise removal is obtained.
Description
Technical Field
The invention belongs to the field of three-dimensional model optimization processing, and particularly relates to a three-dimensional Mesh model denoising method with characteristics reserved.
Background
Common three-dimensional model denoising methods are generally classified into isotropic methods and anisotropic methods, wherein the isotropic methods include early Laplacian methods, Taubin, mean curvature flow-based methods, and the like, and the anisotropic methods include bilateral filtering methods based on a filter normal vector, optimization-based methods, regularization-based methods, learning-based methods, and feature recognition and feature classification-based methods.
The above method has the following problems:
when the vertex position is updated, the problems that the edge characteristic is not true enough and the corner characteristic is lost exist; on the other hand, after the above classical feature-based denoising method passes through the initial denoising or feature re-screening steps, more accurate feature points than the initial classification can be obtained, but the anti-noise capability is weak, and the commonly used feature identification and classification method is sensitive to the noise of the model, which will cause: when the three-dimensional Mesh model is denoised, the denoising method is difficult to identify detail characteristics from noise, and the reliability of the denoising method is reduced along with the increase of the noise intensity of the model.
Disclosure of Invention
In order to solve the problems, the invention provides a feature-preserved three-dimensional Mesh model denoising method. By the method, two problems in the three-dimensional Mesh model denoising process can be solved: (1) the method is mainly used for obtaining an accurate and real three-dimensional low-noise or noiseless model, so that the accuracy and integrity of the three-dimensional model after denoising are remarkably improved, and the problems of fuzzy or lost structural features and the like are avoided.
In order to achieve the purpose, the method is based on a classic combined bilateral filtering algorithm and a normal voting tensor method, firstly, guiding normal vectors of all triangular surfaces are calculated, and normal vectors of all triangular surfaces are filtered by using the combined bilateral filtering algorithm; secondly, classifying feature points by using the filtered triangular surface normal vector based on a normal voting tensor method, enhancing weak features and eliminating pseudo features; then, updating a non-feature vertex based on a normal vector constraint term filtered by a neighbor triangular surface, denoising a non-feature region and obtaining an optimized normal vector of a non-feature point; clustering a support neighborhood point set of the feature points according to the similarity of the feature vectors of the tensor matrix and the vertex normal vector, and fitting a support plane of the feature points; and finally, updating the feature points based on the normal vector constraint term of the neighbor triangular surface and the constraint term of the support plane, and denoising the feature region.
The invention provides a feature-preserving three-dimensional Mesh model denoising method, which specifically comprises the following steps:
step 2, filtering normal vectors of all interested triangular surfaces by using a combined bilateral filtering method;
step 3, classifying all vertexes to obtain non-feature points, feature side points and feature angular points;
step 4, reinforcing weak feature points and eliminating false feature points;
step 5, updating the non-characteristic vertex, denoising the non-characteristic region, and obtaining an optimized normal vector of the vertex;
step 6, clustering a support neighborhood point set of the interest feature points, and fitting a support plane corresponding to the clustering point set;
and 7, updating the feature points based on the constraint term of the normal vector of the neighbor triangular surface and the constraint term of the support plane, and denoising the feature region.
Furthermore, when the guide patch is selected for the interest triangular surface in the step 1, the similarity function values of all to-be-selected patches are calculated to have a formula (1), so that the patch with the most consistent internal triangular surface normal vectors and the smallest difference accumulation between all internal triangular surface normal vectors and the interest triangular surface normal vector is selected as far as possible;
whereinTriangular face f of interestiThe set of triangular faces of the mth patch,is the maximum difference between any two triangular normal vectors in the patch numbered m, which has the form (2):
nj、nkis a normal vector of any two triangular surfaces,Is a relative measure of the difference between the normal vectors of the triangular surfaces on both sides of the middle edge of the mth patch, and has the form of (3):
Emrepresenting the set of edges in the patch numbered m,represents an edge ejTwo sides of the triangular surface fj1,fj2The smaller the difference of the normal vectors, the closer the normals of the two adjacent triangular surfaces are; epsilon is a very small term that prevents the denominator from being 0,represents the cumulative difference between the patch internal triangle surface normal numbered m and the triangle surface normal of interest, which has the form (4):
wherein n isiNormal vector of triangular face of interest, njIs a triangular surface f in the current patchjThe normal vector of (a) is,distance weight, σ, representing the centroid of two triangular facescThe weight is constant, and the closer the triangular surface is to the interested triangular surface, the larger the weight is; use ofWhen selecting patch, the accumulated difference between the normal vector of the whole patch and the normal vector of the interest triangular surface is considered, and the patch with the smallest difference and local structure closer to the interest triangular surface is selected.
Further, in step 1, after a certain patch is selected, using a double-weight function to reduce the weight of a normal vector in the patch, which has a larger difference with the normal vector of the interest triangular surface, and calculating a guidance normal vector of the interest triangular surface by taking the area as a weighted average of the weights, wherein the purpose of using the double-weight function is to avoid that the guidance normal vector of the triangular surface at the angular position is estimated by mistake when estimating the normal vector of the angular position triangular surface, and to retain the angular features as much as possible; the calculation of the guide normal vector has the form of equation (5)
Wherein A isjIs composed ofMiddle triangle surface fjArea of (d), TijIs a dual weight function having the form (6):
wherein rho is a normal vector included angle threshold value, and when the normal vector of the current triangular surface and the normal vector included angle of the interested triangular surface are within the angle threshold value rho, T isijTake 1, otherwise take 0.1.
Further, when the normal vector after triangular surface filtering is calculated in step 2, a joint bilateral filtering method is used, which has the form of formula (7):
whereinIs a triangular plane of interest fiFiltering normal vector of t +1 th time, t is 0,1,2 … n, n is filtering time of normal vector, gjIs a triangular surface fjA guide normal vector of cjIs a triangular surface fjCenter of mass coordinates of AjIs a triangular surface fjThe area of (a) is,is a triangular surface fiSet of neighbor triangular faces, nj (t)The t-th filtered normal vector of the neighbor triangular surface is obtained, and when t is 0, the t is the original normal vector;kernel function KsAnd KsHaving the form of formula (8):
further, in step 3, firstly, a tensor matrix of the interest vertex is calculated, and the vertex is classified by using a normal voting tensor-based method; the method specifically comprises the following steps:
when the normal voting tensor is calculated, the tensor matrix of the vertex is calculated by using the normal vector filtered by the vertex neighbor triangular surface, and the vertex viNormal voting tensor matrix ofHaving the form of formula (9):
whereinRepresenting a vertex viThe set of the neighboring triangular faces of (a),is a triangular surface fjThe normal vector after the filtering is carried out,is a weight coefficient having the form of equation (10):
wherein A (f)j) Is a triangular surface fjThe area of (a) is,is a vertex viMaximum triangle surface area in neighbor triangle surface, cjIs a triangular surface fjThe centroid of k is the number of rings where the neighbor triangle surface is located,is a triangle fjA normal voting component of (a);
the vertices are then classified: classifying according to the magnitude of the eigenvalue of the vertex normal voting tensor matrix to obtain non-feature points, feature edge points and feature angular points; due to tensor matrixIs a semi-symmetrical positive matrix of 3 x 3, the eigenvalues λ of whichi1≥λi2≥λi3The feature vector corresponding to not less than 0 isVertices are classified using the following:
non-feature point set Face (V)f) The conditions are satisfied as follows: lambda [ alpha ]i1≥τ,λi3≤λi2τ, the unit vector representing the principal direction of the vertex is
Feature edge point set Sharp edge (V)e) The conditions are satisfied as follows: lambda [ alpha ]i1≥λi2≥τ,λi3τ, the unit vector representing the principal direction of the vertex is
Characteristic Corner set Corner (V)c) The conditions are satisfied as follows:λi1≥λi2≥λi3τ, the unit vector representing the principal direction of the vertex is not determined by a feature vector;
wherein tau is a characteristic threshold value for distinguishing a non-characteristic point, a characteristic edge point and a characteristic corner point, and the value is tau belongs to (0, 1).
Furthermore, when weak features are enhanced in step 4, the feature vectors of the feature edge point tensor matrix are usedCan be regarded as the distribution direction of the side line of the characteristic edge, when two vectors formed by a certain non-characteristic point and two adjacent characteristic edge points of the non-characteristic point are respectively corresponding to the characteristic edge pointsWhen the angle is within a certain angle, the non-characteristic point can be regarded as a weak characteristic edge point;
when the pseudo features are eliminated, if no other feature points exist in a ring neighborhood vertex of a certain feature point, the feature vertex can be regarded as a pseudo feature vertex, and the pseudo feature vertex is eliminated; in addition, in two adjacent characteristic corner points, tensor matrix eigenvalue lambdai3And (5) regarding the smaller characteristic angular points as pseudo characteristic angular points, and removing the pseudo characteristic angular points.
Further, when the non-feature point is updated in the step 5, based on the normal vector constraint term filtered by the neighbor triangular surface, the updated vertex coordinate is calculated by using a method in the form of the formula (11), and the non-feature area is denoised:
whereinFor the vertex coordinates updated at the t-th time,for the t +1 th updated vertex coordinates,is the vertex viThe set of the neighboring triangular faces of (a),is a vertex viThe total number of the neighboring triangular faces of (c),is a triangular surface fjThe normal vector of (1) is filtered,for the t-th updated triangular surface, the weight coefficient Is the vertex viIs/are as followsThe medium triangular surface filtering normal vector is an average normal vector calculated according to area weighting, the vector is obtained by calculating the normal vector of the neighbor triangular surface according to area weighted average;
calculating an optimized normal vector of the vertex:i.e. the original normal vector n of the neighbor triangular surfacejCalculated according to area weighted average.
Further, when clustering the support neighborhood of the feature edge points in step 6, two larger eigenvalues λ of the feature edge point tensor matrix eigenvector of the feature edge point tensor matrixi1、λi2Corresponding feature vectorCan be regarded as the normal vector direction of the surface of the support area at two sides of the characteristic edge, so that the characteristic vector of the tensor matrix according to the interested characteristic edge pointCarrying out support neighbor point clustering to enable the normal vector of a neighbor vertex and the feature vector with smaller angle difference to be clustered into a class, thereby obtaining two support neighbor point sets C1 and C2, and fitting two corresponding support planes P1 and P2 according to the two support neighbor point sets respectively;
when the characteristic angular point supports the neighborhood, the characteristic vector of the tensor matrix characteristic vector of the characteristic angular point is clusteredThe normal vector direction of the surface of the support area where the characteristic angle is located can be approximately regarded, so the characteristic vector of the tensor matrix of the characteristic angle point of interest is used as the characteristic vectorClustering supports neighbor point sets, enabling feature vectors with smaller angle difference between neighbor vertex normal vectors to be clustered into a class, obtaining three classes of support neighborhood point sets C1, C2 and C3, and fitting two corresponding support planes P1, P2 and P3 according to the two support neighborhood point sets respectively.
Further, when denoising the feature region in step 7, updating the feature point based on the normal vector constraint term of the neighbor triangular surface and the constraint term of the support plane, and calculating the updated vertex coordinates by using a method in the form of equation (12):
wherein:
whereinIs a triangular surface fjThe normal vector of (1) is filtered,for the t-th updated triangular surface, the weight coefficient Is the vertex viIs/are as followsThe medium triangular surface filtering normal vector is an average normal vector calculated according to area weighting,that is, the normal vector of the neighbor triangular surface is obtained by area weighted average calculation, alpha1,α2Defined by the user, satisfies alpha1+α2=1,In order to support a set of planes,number of support planes as feature points, djIndicating the distance of the current edge point to the jth support plane.
The method of the invention has the following remarkable effects:
1. the method solves some problems of the existing three-dimensional model denoising algorithm (for example, the characteristics can not be reserved or recovered from a noise model), improves the fidelity of the existing three-dimensional Mesh model denoising algorithm, and realizes the elimination of the noise of the three-dimensional Mesh model and the reservation and recovery of the sideline characteristics and the angle characteristics.
2. And filtering the normal vector of the triangular surface by using a proper guide normal line based on a combined bilateral filtering algorithm, and effectively classifying the characteristic edge points and the characteristic angular points by using the obtained more accurate normal vector classification characteristic vertexes under the condition that the three-dimensional Mesh model has certain intensity noise.
Drawings
FIG. 1 is a flow chart of a feature-preserving three-dimensional Mesh model denoising method in an embodiment of the present invention;
FIG. 2 is a schematic diagram of a patch of a triangle of interest in an embodiment of the present invention (where the triangle f highlighted in (a)iAs the triangle of interest, the triangle of the neighbor fjAnd all the neighbor triangular surfaces form a patch triangular surface set, the triangular surface fjFor the central triangle of patch, (b) and (l) denote fiOf a neighbor triangle face fjCorresponding patch);
FIG. 3 is a diagram of the effect of classifying feature points of a noise model according to an embodiment of the present invention (where black is a non-feature point and white is a feature point; three graphs in the previous row are classified feature points obtained by calculating a normal vote tensor using an original normal vector of a triangular surface, and three graphs in the next row are classified feature points obtained by calculating a normal vote tensor using a normal vector filtered by a triangular surface);
fig. 4 is a graph of the effect of denoising a twelve model in the embodiment of the present invention, where (a) is an original noise model, and (b) is a denoising result model of the method.
Fig. 5 is a graph of the effect of denoising a bolck model in the embodiment of the present invention, where (a) is an original noise model, (b) is a defined denoising result model, (c) is a denoising result model of the present method, and (b) and (c) the upper and lower images are local enlarged effect graphs of a rectangular frame of an intermediate image.
Fig. 6 is a diagram of the denoising effect of the sharp sphere model in the embodiment of the present invention, where (a) is an original noise model, and (b) is a denoising result model of the method.
Detailed Description
The invention discloses a feature-preserving three-dimensional Mesh model denoising method based on a combined bilateral filtering algorithm and a normal voting tensor method, and the technical process is shown in figure 1. In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail by specific examples and related drawings.
1. Computing a guide normal vector for the triangular face of interest
A bootstrap patch is first selected for all triangle faces of interest. The patch of the interest triangle is a set of triangles formed by itself and a triangle in a ring of neighbor triangles as the center, as shown in fig. 2. Wherein the triangular face highlighted in FIG. 2(a) is the triangular face of interest fiNeighbor triangular surface fjAnd all the neighbor triangular surfaces form a patch triangular surface set, the triangular surface fjCorresponding to the central triangle of patch. And selecting a proper guide patch from the patches, and calculating an average normal vector in a certain mode to be a guide normal vector of the interest triangular surface. And (3) calculating the similarity function values of all the patches to be selected in a formula (1) form, wherein the aim is to select the patch with the most consistent internal triangular surface normal vectors and the smallest difference accumulation between all the internal triangular surface normal vectors of the patch and the interested triangular surface normal vector as far as possible.
WhereinTriangular face f of interestiThe set of triangular faces of the mth patch,is the maximum difference between any two triangular normal vectors in the patch numbered m, which has the form (2):
nj、nkis the normal vector of any two triangular surfaces,is a relative measure of the difference between the normal vectors of the triangular surfaces on both sides of the middle edge of the mth patch, and has the form of (3):
Emrepresenting the set of edges in the patch numbered m,represents an edge ejTwo sides of the triangular surface fj1,fj2The smaller the difference between normal vectors, the closer the normals of two adjacent triangular faces are. Epsilon is a very small term that prevents the denominator from being 0,represents the cumulative difference between the patch internal triangle surface normal numbered m and the triangle surface normal of interest, which has the form (4):
wherein n isiNormal vector of triangular face of interest, njIs a triangular surface f in the current patchjThe normal vector of (a) is,distance weight, σ, representing the centroid of two triangular facescAnd taking a fixed value of 0.5, wherein the closer the triangular surface is to the interested triangular surface, the greater the weight is. In use, the adhesive tape is put into use,when selecting a patch, the accumulated difference between the normal vector of the entire patch and the normal vector of the interest triangle plane is considered, and a patch having the smallest difference and a local structure closer to the interest triangle plane is selected.
And secondly, calculating a guide normal vector of the interest triangular surface. After a certain patch is selected, the weight of a normal vector which is different from the normal vector of the interest triangular surface in the patch by a double weight function in the form of expression (6) is reduced, and the guide normal vector of the interest triangular surface is calculated by taking the area as the weighted average of the weights. The purpose of using the double-weight function is to avoid that the guiding normal vector of the triangular surface at the angular position is estimated by mistake and to reserve the angular characteristic as much as possible when estimating the normal vector of the triangular surface at the angular position. The calculation of the guide normal vector has the form of equation (5)
Wherein A isjIs composed ofMiddle triangle surface fjArea of (C), TijIs a dual weight function having the form (6):
wherein rho is a normal vector included angle threshold value, and when the normal vector of the current triangular surface and the normal vector included angle of the interested triangular surface are within the angle threshold value rho, T isijTake 1, otherwise take 0.1.
The method comprises the following steps that firstly, topological neighbor triangular faces, namely all triangular faces with the interest triangular face and the interest triangular face having a common vertex, are selected, when the topological neighbor triangular faces are n-ring neighbor triangular faces, all triangular face sets with n-1 rings and the interest triangular face having the common vertex are included, when the triangular face in a model is small, the 1-ring topological neighbor often cannot fully express the geometric shape of the triangular face, and sometimes a multi-ring neighbor is needed to fully express the geometric shape; the second is a geometric neighbor triangular surface, namely a triangular surface set with the distance between the centroid of the triangular surface and the centroid of the interest triangular surface within a certain range. For the Mesh model with the non-uniform height sampling, the local triangular surfaces are not uniformly distributed, the situation that the topological neighbors of some triangular surfaces are empty or the topological neighbors are few can occur, and the topological neighbors at the moment can not fully express the geometric shape of the current triangular surface, so that if the number of the triangular surfaces of the geometric neighbors is less than or equal to 6, a 1-ring topological neighbor triangular surface set is selected.
2. Filtering the normal vectors of all triangular surfaces
When the filtering normal vector of the interest triangular surface is calculated, a joint bilateral filtering method is utilized, and the method has the form of formula (7):
whereinIs the triangular face of interest fiFiltered normal vector at time t +1 (t is 0,1,2 … n, n is the number of times of normal vector filtering), gjIs a triangular surface fjA guide normal vector of cjIs a triangular surface fjCenter of mass coordinates of AjIs a triangular surface fjThe area of (a) is,is a triangular surface fiSet of neighbor triangular faces, nj (t)The t-th filtered normal vector of the neighbor triangular surface is obtained, and when t is 0, the t-th filtered normal vector is the original normal vector.Kernel function KsAnd KsHaving the form of formula (8):
3. classifying all vertexes to obtain non-feature points, feature edge points and feature angular points;
the tensor matrix of the interest vertices is first computed. Method for using normal based voting tensorClassifying vertexes, and calculating normal voting tensor by using normal vector after filtering vertex neighbor triangular surface to calculate vertex tensor matrix, and vertex viNormal voting tensor matrix ofHaving the form of formula (9):
whereinRepresenting a vertex viThe set of the neighboring triangular faces of (a),is a triangular surface fjThe normal vector after the filtering is carried out,is a weight coefficient having the form of equation (10):
wherein A (f)j) Is a triangular surface fjThe area of (a) is,is a vertex viMaximum triangle surface area in neighbor triangle surface, cjIs a triangular surface fjM is the number of rings where the neighbor triangle faces are located.Is a triangle fjThe normal voting component of (a).
The vertices are then classified. And classifying according to the magnitude of the eigenvalue of the vertex normal voting tensor matrix to obtain non-characteristic points, characteristic edge points and characteristic corner points. Due to tensor matrixIs a semi-symmetrical positive matrix of 3 x 3 with characteristic values of λi1≥λi2≥λi3Not less than 0, corresponding to feature vector ofTensor matrix eigenvalues of non-characteristic points of flat areas, characteristic edge points of edge lines and characteristic corner points of angular positions on the Mesh model have obvious differences, and vertices can be classified in the following mode:
non-feature set Face (V)f) The conditions are satisfied as follows: lambda [ alpha ]i1≥τ,λi3≤λi2τ, the unit vector representing the principal direction of the vertex is
Feature edge point set Sharp edge (V)e) The conditions are satisfied as follows: lambda [ alpha ]i1≥λi2≥τ,λi3τ or less, and unit vector representing principal direction of vertex
Characteristic Corner set Corner (V)c) The following conditions are satisfied: lambda [ alpha ]i1≥λi2≥λi3τ or more, the unit vector representing the principal direction of the vertex is not determined by a feature vector.
Wherein τ is a characteristic threshold for distinguishing non-characteristic points, characteristic edge points and characteristic corner points, and can be taken as τ e (0,1), and the larger the noise of the model is, the larger the value thereof should be.
4. Reinforcing weak feature points and eliminating false feature points
The weak feature points are enhanced. Eigenvectors due to the tensor matrix of the edge points of the eigenvaluesCan be regarded as the distribution direction of the sideline of the characteristic edge, when a non-characteristic point and two adjacent characteristic edge points formOf two vectors, respectively associated with corresponding feature edge pointsWithin a certain angle, the non-feature point can be regarded as a weak feature edge point, as shown in fig. 4.
And eliminating the false characteristic points. If no other feature points exist in a ring neighborhood vertex of a certain feature point, the feature vertex can be regarded as a pseudo feature vertex and is removed; in addition, in two adjacent characteristic corner points, tensor matrix eigenvalue lambdai3The smaller feature corners are considered as dummy feature corners and should be rejected.
5. Updating the non-characteristic peak to denoise the non-characteristic region
When the non-feature point is updated, based on the normal vector constraint term filtered by the neighbor triangular surface, the updated vertex coordinate is calculated by using a method in the form of (11), and the non-feature area is denoised:
whereinFor the vertex coordinates updated at the t-th time,for the t +1 th updated vertex coordinates,is the vertex viThe set of the neighboring triangular faces of (a),is a vertex viThe total number of the neighboring triangular faces of (c),is a triangular surface fjThe normal vector of (1) is filtered,for the t-th updated triangular surface, the weight coefficient Is the vertex viIs/are as followsThe medium triangular surface filtering normal vector is an average normal vector calculated according to area weighting, the normal vector is obtained by calculating the normal vector after the filtering of the neighbor triangular surface according to the area weighted average. It can be considered as a filtered normal vector for this vertex, with a value of 0.5, keeping as small a structural feature as possible when filtering noise.
And calculating an optimized normal vector of the vertex. Because the noise of the non-feature region is filtered, the region agitation is small and smoother, the computed vertex normal vector has stronger robustness and better noise immunity, and the geometric feature and the structural feature of the local region can be estimated more accurately. Vertex normal vectorI.e. the original normal vector n of the neighbor triangular surfacejAnd calculating according to the area weighted average, wherein the original triangular surface normal vector of the model is updated because the non-characteristic point of the flat area is updated, and the vertex obtains an optimized normal vector.
Clustering the support neighborhood point set of the feature points and fitting the feature point support plane
When clustering the support neighborhood of the feature edge points, two larger eigenvalues lambda of the feature vector of the feature edge point tensor matrixi1、λi2Corresponding feature vectorCan be regarded as the normal vector direction of the surface of the support area at two sides of the characteristic edge, so that the characteristic vector of the tensor matrix according to the interested characteristic edge pointAnd (3) carrying out supporting neighbor point clustering to enable the normal vector of the neighbor vertex and the feature vector with smaller angle difference to be clustered into a class, thereby obtaining two types of supporting neighbor point sets C1 and C2, and fitting two corresponding supporting planes P1 and P2 according to the two supporting neighbor point sets respectively.
When the characteristic angular point supports the neighborhood, the characteristic vector of the tensor matrix characteristic vector of the characteristic angular point is clusteredThe normal vector direction of the surface of the support area where the characteristic angle is located can be approximately regarded, so the characteristic vector of the tensor matrix of the characteristic angle point of interest is used as the characteristic vectorClustering supports neighbor point sets, enabling feature vectors with smaller angle difference between neighbor vertex normal vectors to be clustered into a class, obtaining three classes of support neighborhood point sets C1, C2 and C3, and fitting two corresponding support planes P1, P2 and P3 according to the two support neighborhood point sets respectively.
6. Updating the feature points and denoising the feature region
When denoising the characteristic region, updating the characteristic point based on the normal vector constraint term of the neighbor triangular surface and the constraint term of the support plane, and calculating the updated vertex coordinate by using a method in the form of a formula (12):
wherein:
whereinIs a triangular surface fjThe filtered normal vector of (2) is,for the t-th updated triangular surface, the weight coefficient Is the vertex viIs/are as followsThe medium triangular surface filtering normal vector is an average normal vector calculated according to area weighting,that is, the normal vector of the neighbor triangular surface is obtained by area weighted average calculation, alpha1,α2Defined by the user, satisfies alpha1+α2=1,In order to support a set of planes,number of support planes, d, for feature pointsjIndicating the distance of the current edge point to the jth support plane.
The above description is only for the preferred embodiment of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art should be considered to be within the technical scope of the present invention, and the technical solutions and the inventive concepts thereof according to the present invention should be equivalent or changed within the scope of the present invention.
Claims (8)
1. A feature-preserving three-dimensional Mesh model denoising method is characterized by comprising the following steps:
step 1, firstly, selecting a guide patch for all interest triangular surfaces, and calculating guide normal vectors of the interest triangular surfaces;
when the guide patch is selected for the interest triangular surface in the step 1, calculating similarity function values of all to-be-selected patches to have a formula (1), wherein the purpose is to select the patch with the most consistent internal triangular surface normal vectors and the least difference accumulation between all internal triangular surface normal vectors and the interest triangular surface normal vector as far as possible;
whereinFor a triangular surface of interest fiThe set of triangular faces of the mth patch,is the maximum difference between any two triangular normal vectors in the patch numbered m, which has the form (2):
nj、nkis the normal vector of any two triangular surfaces,is a relative measure of the difference between the normal vectors of the triangular surfaces on both sides of the middle edge of the mth patch, and has the form of (3):
Emrepresenting the set of edges in the patch numbered m,represents an edge ejTwo sides of the triangular surface fj1、fj2The smaller the value of the difference of the normal vectors is, the closer the normals of the two adjacent triangular surfaces are; epsilon is a very small term that prevents the denominator from being 0,represents the cumulative difference between the patch internal triangle surface normal numbered m and the triangle surface normal of interest, which has the form (4):
wherein n isiIs the normal vector of the triangular face of interest, njIs a triangular surface f in the current patchjThe normal vector of (a) is,distance weight, c, representing the centroid of two triangular facesi、cjAre respectively a triangular surface fi、fjCenter of mass, σcThe weight is constant, and the closer the triangular surface is to the interested triangular surface, the larger the weight is; use ofWhen selecting the patch, the accumulated difference between the normal vector of the whole patch and the normal vector of the interest triangular surface is considered, and the patch with the difference as small as possible and the local structure closer to the interest triangular surface is selected;
step 2, filtering normal vectors of all interested triangular surfaces by using a combined bilateral filtering method;
step 3, classifying all vertexes to obtain non-feature points, feature side points and feature angular points;
step 4, reinforcing weak feature points and eliminating false feature points;
step 5, updating the non-characteristic vertex, denoising the non-characteristic region, and obtaining an optimized normal vector of the vertex;
step 6, clustering a support neighborhood point set of the interest feature points, and fitting a support plane corresponding to the clustering point set;
and 7, updating the feature points based on the constraint term of the normal vector of the neighbor triangular surface and the constraint term of the support plane, and denoising the feature region.
2. The method of claim 1, wherein: in the step 1, after a certain patch is selected, reducing the weight of a normal vector which has a larger difference with a normal vector of an interest triangular surface in the patch by using a double-weight function, and calculating a guide normal vector of the interest triangular surface by taking an area as a weight weighted average, wherein the purpose of using the double-weight function is to avoid that the guide normal vector of the triangular surface positioned at an angular position is estimated by mistake when the normal vector of the triangular surface at the angular position is estimated, and to keep the angular characteristics as much as possible; the calculation of the guide normal vector has the form of equation (5)
Wherein A isjIs composed ofMiddle triangle surface fjArea of (d), TijIs a dual weight function having the form (6):
wherein rho is a normal vector included angle threshold value, and when the normal vector of the current triangular surface and the normal vector included angle of the interested triangular surface are within the angle threshold value rho, T isijTake 1, otherwise take 0.1.
3. The method of claim 2, wherein: when the normal vector after triangular surface filtering is calculated in the step 2, a joint bilateral filtering method is utilized, and the joint bilateral filtering method has the form of formula (7):
whereinIs the triangular face of interest fiFiltering normal vector of t +1 th time, t is 0,1,2 … n, n is filtering time of normal vector, gjIs a triangular surface fjA guide normal vector of cjIs a triangular surface fjCenter of mass coordinates of AjIs a triangular surface fjThe area of (a) is,is a triangular surface fiSet of neighbor triangular faces, nj (t)The t-th filtered normal vector of the neighbor triangular surface is obtained, and when t is 0, the t is the original normal vector;kernel function KsAnd KrHaving the form of formula (8):
4. the method of claim 3, wherein: in step 3, firstly, a tensor matrix of the interest vertex is calculated, and the vertex is classified by a normal voting tensor-based method; the method specifically comprises the following steps:
when the normal voting tensor is calculated, the tensor matrix of the vertex is calculated by using the normal vector filtered by the vertex neighbor triangular surface, and the vertex viNormal voting tensor matrix ofHaving the form of formula (9):
whereinRepresenting a vertex viThe set of the neighboring triangular faces of (a),is a triangular surface fjThe normal vector after the filtering is carried out,is a weight coefficient having the form of equation (10):
wherein A (f)j) Is a triangular surface fjThe area of (a) is,is a vertex viMaximum triangle surface area in neighbor triangle surface, cjIs a triangular surface fjThe centroid of k is the number of rings where the neighbor triangle surface is located,is a triangle fjA normal voting component of (a);
the vertices are then classified: classifying according to the magnitude of the eigenvalue of the vertex normal voting tensor matrix to obtain non-feature points, feature edge points and feature angular points; due to tensor matrixIs a semi-symmetrical positive matrix of 3 x 3, the eigenvalues λ of whichi1≥λi2≥λi3The feature vector corresponding to not less than 0 isVertices are classified using the following:
non-feature point set Face (V)f) The following conditions are satisfied: lambda [ alpha ]i1≥τ,λi3≤λi2τ, the unit vector representing the principal direction of the vertex is
Feature edge point set Sharp edge (V)e) The conditions are satisfied as follows: lambda [ alpha ]i1≥λi2≥τ,λi3τ, the unit vector representing the principal direction of the vertex is
Characteristic Corner set Corner (V)c) The conditions are satisfied as follows: lambda [ alpha ]i1≥λi2≥λi3τ, the unit vector representing the principal direction of the vertex is not determined by a feature vector;
wherein tau is a characteristic threshold value for distinguishing a non-characteristic point, a characteristic edge point and a characteristic corner point, and the value is tau belongs to (0, 1).
5. The method of claim 4, wherein: when weak features are enhanced in step 4, the feature vectors of the feature edge point tensor matrixCan be regarded as the distribution direction of the sidelines of the characteristic edge, when two vectors formed by a certain non-characteristic point and two adjacent characteristic edge points of the non-characteristic point are respectively corresponding to the characteristic edge pointsWhen within a certain included angle, the utility model canThe non-feature points are regarded as weak feature edge points;
when the pseudo features are eliminated, if no other feature points exist in a ring of neighborhood vertexes of a certain feature point, the feature vertex can be regarded as a pseudo feature vertex, and the pseudo feature vertex is eliminated; in addition, in two adjacent characteristic corner points, tensor matrix eigenvalue lambdai3And (5) regarding the smaller characteristic angular points as pseudo characteristic angular points, and removing the pseudo characteristic angular points.
6. The method of claim 5, wherein: and 5, when updating the non-feature points, calculating the updated vertex coordinates by using a method in the form of (11) based on the normal vector constraint term filtered by the neighbor triangular surface, and denoising the non-feature areas:
whereinFor the vertex coordinates updated at the t-th time,for the t +1 th updated vertex coordinates,is the vertex viThe set of the neighboring triangular faces of (a),is a vertex viThe total number of the neighboring triangular faces of (c),is a triangular surface fjThe normal vector of (1) is filtered,for the t-th updated triangular surface, the weight coefficient Is the vertex viIs/are as followsThe medium triangular surface filtering normal vector is an average normal vector calculated according to area weighting, the vector is obtained by calculating the normal vector of the neighbor triangular surface according to area weighted average;
7. The method of claim 6, wherein: when clustering the support neighborhood of the feature edge points in step 6, two larger eigenvalues lambda of the feature vector of the feature edge point tensor matrixi1、λi2Corresponding feature vector Can be regarded as the normal vector direction of the surface of the support area at two sides of the characteristic edge, so that the characteristic vector of the tensor matrix according to the interested characteristic edge pointCarrying out support neighbor point clustering to enable the normal vector of a neighbor vertex and the feature vector with smaller angle difference to be clustered into a class, thereby obtaining two support neighbor point sets C1 and C2, and fitting two corresponding support planes P1 and P2 according to the two support neighbor point sets respectively;
when clustering the support neighborhood of the characteristic corner point, the tensor matrix characteristic vector thereofThe normal vector direction of the surface of the support area where the characteristic angle is located can be approximately regarded, so the characteristic vector of the tensor matrix of the characteristic angle point of interest is used as the characteristic vectorClustering supports neighbor point sets, enabling feature vectors with smaller angle difference between neighbor vertex normal vectors to be grouped into a same type, obtaining three types of support neighborhood point sets C1, C2 and C3, and fitting three corresponding support planes P1, P2 and P3 according to the three support neighborhood point sets respectively.
8. The method of claim 7, wherein: when denoising the characteristic region in the step 7, updating the characteristic point based on the normal vector constraint term of the neighbor triangular surface and the constraint term of the support plane, and calculating the updated vertex coordinate by using a method in the form of (12):
wherein:
whereinIs a triangular surface fjThe normal vector of (1) is filtered,for the t-th updated triangular surface, the weight coefficient Is the vertex viIs/are as followsThe medium triangular surface filtering normal vector is an average normal vector calculated according to area weighting,that is, the normal vector of the neighbor triangular surface is obtained by area weighted average calculation, alpha1,α2Defined by the user, satisfies alpha1+α2=1,In order to support a set of planes,number of support planes as feature points, djIndicating the distance of the current edge point to the jth support plane.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011452296.2A CN112529803B (en) | 2020-12-10 | 2020-12-10 | Feature-preserving three-dimensional Mesh model denoising method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011452296.2A CN112529803B (en) | 2020-12-10 | 2020-12-10 | Feature-preserving three-dimensional Mesh model denoising method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112529803A CN112529803A (en) | 2021-03-19 |
CN112529803B true CN112529803B (en) | 2022-05-13 |
Family
ID=74998794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011452296.2A Active CN112529803B (en) | 2020-12-10 | 2020-12-10 | Feature-preserving three-dimensional Mesh model denoising method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112529803B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115409950B (en) * | 2022-10-09 | 2024-02-06 | 卡本(深圳)医疗器械有限公司 | Optimization method for surface drawing triangular mesh |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880700A (en) * | 2012-09-24 | 2013-01-16 | 常州大学 | Three dimensional point model data denoising method |
CN108447038A (en) * | 2018-03-27 | 2018-08-24 | 北京工业大学 | A kind of mesh denoising method based on non local full variation operator |
CN109242972A (en) * | 2018-08-14 | 2019-01-18 | 重庆大学 | A kind of double normal mesh model method for fairing based on apex feature |
CN111145357A (en) * | 2019-12-27 | 2020-05-12 | 苏州影加科技有限公司 | High-fidelity triangular mesh smoothing algorithm |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107341768B (en) * | 2016-04-29 | 2022-03-11 | 微软技术许可有限责任公司 | Grid noise reduction |
-
2020
- 2020-12-10 CN CN202011452296.2A patent/CN112529803B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880700A (en) * | 2012-09-24 | 2013-01-16 | 常州大学 | Three dimensional point model data denoising method |
CN108447038A (en) * | 2018-03-27 | 2018-08-24 | 北京工业大学 | A kind of mesh denoising method based on non local full variation operator |
CN109242972A (en) * | 2018-08-14 | 2019-01-18 | 重庆大学 | A kind of double normal mesh model method for fairing based on apex feature |
CN111145357A (en) * | 2019-12-27 | 2020-05-12 | 苏州影加科技有限公司 | High-fidelity triangular mesh smoothing algorithm |
Non-Patent Citations (1)
Title |
---|
三维网格模型去噪算法的研究;王仁洁;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20180215(第2期);第I138-1945页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112529803A (en) | 2021-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Texture-based segmentation of road images | |
Lozes et al. | Partial difference operators on weighted graphs for image processing on surfaces and point clouds | |
WO2017219391A1 (en) | Face recognition system based on three-dimensional data | |
Lavoué et al. | A new CAD mesh segmentation method, based on curvature tensor analysis | |
JP5545361B2 (en) | Image classification method, apparatus, program product, and storage medium | |
CN108198193B (en) | Method for segmenting infrared ship image by using improved intuitionistic fuzzy clustering algorithm | |
CN109978848B (en) | Method for detecting hard exudation in fundus image based on multi-light-source color constancy model | |
CN110060273B (en) | Remote sensing image landslide mapping method based on deep neural network | |
CN109035196B (en) | Saliency-based image local blur detection method | |
Zhang et al. | A statistical approach for extraction of feature lines from point clouds | |
Guillaume et al. | Curvature tensor based triangle mesh segmentation with boundary rectification | |
CN106874850A (en) | One kind is based on three-dimensional face point cloud characteristic point positioning method | |
WO2022141145A1 (en) | Object-oriented high-resolution remote sensing image multi-scale segmentation method and system | |
CN111832642A (en) | Image identification method based on VGG16 in insect taxonomy | |
CN108550165A (en) | A kind of image matching method based on local invariant feature | |
Sahoo et al. | Design and simulation of various edge detection techniques using Matlab Simulink | |
CN106611158A (en) | Method and equipment for obtaining human body 3D characteristic information | |
CN112529803B (en) | Feature-preserving three-dimensional Mesh model denoising method | |
CN115690086A (en) | Object-based high-resolution remote sensing image change detection method and system | |
Goyal et al. | Fuzzy similarity measure based spectral clustering framework for noisy image segmentation | |
CN109359653B (en) | Cotton leaf adhesion lesion image segmentation method and system | |
CN114332921A (en) | Pedestrian detection method based on improved clustering algorithm for Faster R-CNN network | |
CN113934877A (en) | Wheel hub model retrieval method, storage medium and equipment | |
CN109948422A (en) | A kind of indoor environment adjusting method, device, readable storage medium storing program for executing and terminal device | |
Lin et al. | Edge detection in the feature space |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |