Quadratic Error Metric Mesh Simplification Algorithm Based on Discrete Curvature

Complex and highly detailed polygon meshes have been adopted for model representation in many areas of computer graphics. Existing works mainly focused on the quadric error metric based complex models approximation, which has not taken the retention of important model details into account. This may lead to visual degeneration. In this paper, we improve Garland and Heckberts’ quadric error metric based algorithm by using the discrete curvature to reserve more features for mesh simplification. Our experiments on various models show that the geometry and topology structure as well as the features of the original models are precisely retained by employing discrete curvature.


Introduction
There are lots of 3D models with complex polygon meshes in computer graphics application, such as virtual reality, computer aided design technology, and geographic information system.These models contain finely detailed, arbitrary topology surfaces with millions and mostly billions [1] of vertexes.In this regard, large amounts of storage, memory, computation, and bandwidth are required for transmitting and rendering these complex models.Under some constraint circumstances, the highly detailed models are not necessary; namely, we can use relatively simplified models to replace the original models.Retaining the key features by keeping less the vertexes and faces of the model is the essence of the surface simplification algorithm.In recent years, several geometric approaches have been proposed [2,3].However, highly detailed meshes usually associate with lots of features while few simplification methods are developed for them [4][5][6][7][8][9].In this paper, we combine the quadric error metrics [2] with the discrete curvature to simplify highly detailed meshes while retaining the key features.
The organization of the paper is as follows.We review existing approaches on mesh simplification in Section 2. We present our method to enhance the quadric error metric algorithm in Section 3 and describe the whole mesh simplification algorithm in Section 4. Experiments have been implemented to compare the performance of our method with the others [10,11].

Related Work
Most mesh simplification algorithms coarsen a mesh through edge transformation.Hoppe et al. [3] use an energy function to optimize the errors for edge collapse.However, this is a time-consuming approach that requires complicated mesh transformations: edge collapse, edge split, and edge swap.In order to reduce the time complexity, Garland and Heckbert [2] improve the edge collapse step by introducing the quadric error metric.However, their algorithm may not be adaptable under certain circumstances due to the features deficiency of the models.Then, Liu et al. [9] propose to maintain local features by introducing the concept of sharp degree to the error metrics to change the order of edge collapses in the simplification.However, this approach needs to set two different empirical selection parameters for each model while only a limited number of geometric features are maintained after multiple simplifications.
A lot of algorithms related to discrete curvature are published in recent years.Kim et al. [12] define a new error metric based on the discrete curvature, so that LOD (Level of Detail) can be generated precisely and controlled efficiently.But the algorithm needs an accurate approximation of the folding faces and the saddle faces.Kim et al. [13] define a simplification criterion by a triplet of discrete curvature norm, distance metric, and smaller geometric error.However, the method needs to find the optimal position of a new vertex from an edge collapse with respect to discrete curvatures.Though curvature can well express characteristics of polyhedral surfaces, it is difficult to be used as a simplification criterion or adapted to other applications since it is not easy to be estimated accurately on polygonal surfaces.Kim et al. [14] propose an algorithm to implement the mesh simplification in a way that discrete curvature based error metric is used.The error metric is derived from the definition of discrete curvatures of triangle meshes.
In this paper, we introduce the discrete curvature to the quadric error metrics [2] to retain detailed features in model simplification.Experiment shows that our approach reserves more features than existing algorithms without sacrificing effectiveness.

Fundamental Algorithm
The nature of the simplification algorithm is to minimize the number of vertexes and triangles of the original model while the original features of the model are still retained.The base operation of Garland and Heckberts' simplification algorithm is edge collapse.Figure 1 describes how edge collapse works.A vertex, two faces, and one side will be removed by an edge collapse iteratively until the desired result is reached.

Quadric Error Metrics
Garland and Heckberts' simplification algorithm is based on the iterative contraction of vertex pairs, which can be written as (V  , V  ) → V.The order of edge collapse depends on the error which quantifies the distance of point to the faces.
Let V be a vertex in three-dimensional space which is [V  , V  , V  , 1]  .And  represents a plane in three-dimensional space, whose equation is with  2 +  2 +  2 = 1, and we denote  = [, , , ]  .The distance from vertex V to the plane  is where   represents a 4 × 4 matrix as defined in the following formula:   Garland and Heckbert [2] associate a set of planes with each vertex.The error of each vertex is defined as the sum of squared distances to all planes.This vertex belongs to where planes (V) represents all the triangles that meet at that vertex.

New Vertex Position
Selecting the new vertex's location is crucial for maintaining the original model's topology.The new vertex Δ(V)'s position needs to be determined for each pair contraction.
Since the error function Δ(V) is quadratic as (4) shown, we can find V by solving a quadratic equation: This is equivalent to solving the following equation:   On one hand, if matrix  is invertible, the optimal position of V is V =  −1 .On the other hand, if matrix  is not invertible, we can approximately set V to V  , V  , or (V  + V  )/2.

Discrete Curvature
Garland and Heckberts' algorithm [2] can quickly produce high quality approximations of polygonal surface models.Meanwhile, it is one of the fastest algorithms available for producing high quality approximations.But it cannot maintain the important features.
Curvature indicates the degree of bending, namely, the features and the details of the curve.The magnitude of changes in a grid can be depicted by approximation discrete curvature, which reflects the surface characteristics of the grid.The curvature values of flat regions are small while the curvature values of edges, corners, and uneven regions are   large.As the edges in 3D models do not have curvature, we can use the dot product of the faces' normal vector to represent it: where  V  and  V  are the set of triangles that contain V  and V  , respectively.And  V  V  is the set of triangles that contain both V  and V  .⃗  and ⃗  represent the normal vector of the triangles that contains V  and edge (V  , V  ), respectively.Now we add the curvature to the quadric error metrics as The order of edge collapses is according to the quadric error metrics.The larger the curvature is, the later the edge collapses will be.Equation ( 8) has the advantage that both geometric and detailed features of the models are taken into account.

Algorithm Summary
Distance or volume based error metric is not fit for simplification of irregular models because certain characteristic shapes may lose.Our simplification algorithm, however, classifies the folded edges to ensure that the areas with large curvature will not be simplified.Thus the shape characteristics of the original mesh could be well retained.Our simplification algorithm steps are as follows: Step 1. Input the original model.
Step 2. Compute cost(V  , V  ) for all edges.
Step 3. Compute the Δ(V) for all the vertices.
Step 4. Compute the optimal position of V or each edge (V  , V  ) and its cost collapse.
Step 5. Remove the edge of least cost from the heap and collapse it.
Step 6. Update the cost of all relative edges.
Step 7. If simplification reaches desired level, go to Step 8, else, go back to Step 5.

Experiments and Analysis
In order to verify the performance of the algorithm, we compare our algorithm with Garland and Heckberts' [2] and Maximo et al. 's [11] methods. Figure 2 is the original model of Bones.The model is simplified to 2,972 faces, 1,560 faces, and 786 faces.As shown in Figure 3, the first row is the result of our algorithm, the second row is the result of Garland and Heckberts' algorithm, and the third row is the result of Maximo et al. 's algorithm [11].The comparison demonstrates that our algorithm has a better result when increasing the amplitude of simplification.
Garland and Heckberts' results are so homogenized that the feature details are lost and the bones are fractured and deformed.With the increasing amplitude of simplification, the fracture and deformation are becoming more serious.
Maximo et al. 's algorithm has a better result for retaining model feature details. Figure 4 shows the details of toes bones after simplification by these three algorithms.Maximo et al. 's result has fewer triangles in toes bones so that important features are lost.
Figure 5 is the original Cow model.Figure 6 shows the comparison between our algorithm and Garland and Heckberts' algorithm in Cow model.Figure 6 demonstrates  the detailed comparison in 1,482 faces.Notice that features such as horns and hooves are still recognizable after our simplification.
Figure 7 shows the original Person model.Figure 8 provides the results after simplification to different number of faces.The advantage of our algorithm is obvious.Figure 9 shows the details of hand.Our result retains more features than the other two.
The time complexity of Garland and Heckberts' algorithm is O(nlogn).Our algorithm is based on Garland and Heckberts' method which computes the curvature cost for each edge during the initialization procedure.Our algorithm recomputes the cost of the relative edges and the quadric error metric during the pair contraction.So the time complexity of our algorithm is also O(nlogn).
Finally, we compare the error on the Bones model by the metric Cignoni et al. [15] proposed.Specifically, the max error between the original model and simplified model is ( 1 ,  2 ) = max ∈ 1 (,  2 ).And the mean error is ( 1 ,  2 ) = (1/| 1 |) ∫  1 (,  2 ), where (,  2 ) represents the distance of the point  and the model .Table 1 shows that both the max and mean error of proposed method are better than Garland and Heckberts' and Maximo et al.s' algorithm.

Conclusion
We propose a surface simplification algorithm which is based on quadric error metrics and discrete curvature.Our algorithm takes both the geometry and the features into account to overcome the defect that the grids are too welldistributed in Garland and Heckberts' simplified models.We achieve good performance in experiments.
However, only a few initial methods [10,16] so far are proposed to simplify highly detailed meshes that usually associate with attributes, such as colors and normal and texture information.In the further works, we will devote ourselves to studying the simplification of meshes with attributes.

Contract 1 2 Figure 1 :
Figure 1: Edge contraction: the highlighted edge is contracted into a single point.The shaded triangles will degenerate and be removed during the contraction.
(a) The original model with line (b) The original model without line

Figure 8 :
Figure 8: Results of simplified Person model.