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.
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  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–9]. In this paper, we combine the quadric error metrics  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].
2. Related Work
Most mesh simplification algorithms coarsen a mesh through edge transformation. Hoppe et al.  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  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.  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.  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.  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.  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  to retain detailed features in model simplification. Experiment shows that our approach reserves more features than existing algorithms without sacrificing effectiveness.
3. 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.
4. Quadric Error Metrics
Garland and Heckberts’ simplification algorithm is based on the iterative contraction of vertex pairs, which can be written as . The order of edge collapse depends on the error which quantifies the distance of point to the faces.
Let be a vertex in three-dimensional space which is . And represents a plane in three-dimensional space, whose equation iswith , and we denote .
The distance from vertex to the plane iswhere represents a matrix as defined in the following formula:
Garland and Heckbert  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 towhere planes represents all the triangles that meet at that vertex.
When an edge is contracted, the resulting quadric error is , where is the error for new vertex .
5. New Vertex Position
Selecting the new vertex’s location is crucial for maintaining the original model’s topology. The new vertex ’s position needs to be determined for each pair contraction.
Since the error function is quadratic as (4) shown, we can find by solving a quadratic equation:
This is equivalent to solving the following equation:
On one hand, if matrix is invertible, the optimal position of is . On the other hand, if matrix is not invertible, we can approximately set to , , or .
6. Discrete Curvature
Garland and Heckberts’ algorithm  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 and are the set of triangles that contain and , respectively. And is the set of triangles that contain both and . and represent the normal vector of the triangles that contains and edge , 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.
7. 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 for all edges.
Step 3. Compute the for all the vertices.
Step 4. Compute the optimal position of or each edge 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 8. Simplification ends.
8. Experiments and Analysis
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 . 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.
(a) Our method
(b) Garland and Heckberts’ method
(c) Maximo et al.’s method
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.
(a) Proposed method
(b) Garland and Heckberts’
(c) Proposed method
(d) Garland and Heckberts’
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.
(a) The original model with line
(b) The original model without line
(a) Proposed method
(b) Garland and Heckberts’ method
(c) Maximo et al.’s method
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.  proposed. Specifically, the max error between the original model and simplified model is . And the mean error is , where 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.
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 well-distributed 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.
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
This work was supported by National High-tech R&D Program of China (863 Program) (Grant no. 2015AA015904), the Open Project Program of the State Key Lab of CAD&CG (Grant no. A1429), Zhejiang University, and the National Natural Science Foundation of China (Grant no. 61273300).
M. Levoy, “The digital Michelangelo project,” in Proceedings of the 2nd International Conference on 3D Digital Imaging and Modeling, 1999.View at: Google Scholar
M. Garland and P. S. Heckbert, “Surface simplification using quadric error metrics,” in Proceedings of the Conference on Computer Graphics (SIGGRAPH '97), pp. 209–216, August 1997.View at: Google Scholar
H. Hoppe, T. DeRose, T. Duchamp, J. McDonald, and W. Stuetzle, “Mesh optimization,” in Proceedings of the ACM Conference on Computer Graphics and Interactive Techniques (SIGGRAPH '93), pp. 19–26, August 1993.View at: Google Scholar
F.-X. Li, D. Zhao, and Z.-J. Li, “Mesh simplification for 3D models with exterior maintaining,” Journal of System Simulation, vol. 24, no. 1, pp. 62–66, 2012.View at: Google Scholar
W. Chen, L. Xu, J. Liu, and J. Wang, “Quadric error metrics for mesh simplification based on feature matrix,” Journal of Beijing University of Aeronautics and Astronautics, vol. 35, no. 5, pp. 572–595, 2009.View at: Google Scholar
X.-L. Liu, Z.-Y. Liu, P.-D. Gao, and X. Peng, “Edge collapse simplification based on sharp degree,” Journal of Software, vol. 16, no. 5, pp. 669–675, 2005.View at: Google Scholar
M. Garland and S. Heckbert P, “Simplifying surface with color and texture using quadric error metrics,” in Proceedings of the Conference on Visualization (VIS '98), pp. 263–269, IEEE, Research Triangle Park, NC, USA, 1998.View at: Google Scholar
S. J. Kim, W. K. Jeong, and C. H. Kim, “LOD generation with discrete curvature error metric,” in Proceedings of 2nd Korea Israel Bi-National Conference on Geometrical Modeling and Computer Graphics in the WWW Era, pp. 97–104, 1999.View at: Google Scholar
S. J. Kim, S. W. Hong, and C. H. Kim, “Mesh simplification with discrete curvature error metric,” in Proceedings of the Korean Information Science Society Conference, pp. 499–504, 2001.View at: Google Scholar
H. Hoppe, “New quadric metric for simplifying meshes with appearance attributes,” in Proceedings of the 10th IEEE Visualization Conference, pp. 59–666, 1999.View at: Google Scholar