Elsevier

Computer-Aided Design

Volume 43, Issue 12, December 2011, Pages 1561-1566
Computer-Aided Design

Curvature estimation for meshes based on vertex normal triangles

https://doi.org/10.1016/j.cad.2011.06.006Get rights and content

Abstract

The estimation of surface curvature is essential for a variety of applications in computer graphics because of its invariance with respect to rigid transformations. In this article, we describe a curvature estimation method for meshes by converting each planar triangular facet into a curved patch using the vertex positions and the normals of three vertices of each triangle. Our method interpolates three end points and the corresponding normal vectors of each triangle to construct a curved patch. Then, we compute the per triangle curvature of the neighboring triangles of a mesh point of interest. Similar to estimating per vertex normal from the adjacent per triangle normal, we compute the per vertex curvature by taking a weighted average of per triangle curvature. Through some examples, we demonstrate that our method is efficient and its accuracy is comparable to that of the existing methods.

Highlights

► We interpolate three end points and corresponding normal vectors of each triangle to construct a curved patch. ► With the curved patches, we estimate the curvatures based on the shape operator. ► We demonstrate that our method is efficient in both space and time by the synthetic models and the discrete meshes.

Introduction

The development of 3D scanning techniques enables us to convert large and highly complex objects with arbitrary accuracy into a polygonal mesh. This development enables acquisition of richly detailed features of objects from a mesh model, which are helpful in shape modeling, shape analysis, and shape understanding. Some elementary differential geometry properties such as normals and curvatures are as important as surface positions for the perception and understanding of shapes. In recent studies, curvature as a fundamental descriptor for shape analysis was an important parameter for solving a variety of basic tasks in computer graphics, including surface segmentation [1], [2], surface classification [3], surface smoothing [4], matching [5], reconstruction [6], re-meshing [7], [8], symmetry detection [9], non-photorealistic rendering [10], [11], and feature line extraction [12], [13].

The ability to compute curvature from meshes is complicated by the lack of an analytical definition of surface shape. Curvature estimation methods generally fall into one of the two main categories. The first category, surface fitting, involves finding a parametric surface patch fitted to the neighborhood of each data point. This method is a popular technique for curvature estimation. The accuracy of this method always depends on the parametric model, which is usually computed using the least squares approach. The second category, the discrete method, involves developing discrete approximation formulas based on the definition of curvature to operate on the triangulated data directly; it avoids solving a least squares problem. There is no consensus on the most appropriate approach to curvature estimation on discrete meshes. From the results of some analysis test cases, we find that the fitting method has better overall performance than the discrete method, but the discrete method is appealing because of its speed.

The motivation for undertaking this study was to develop a fitting method based on vertex normal triangles to robustly estimate curvatures. Generally speaking, vertex normal triangles, VN triangles in short, are defined by the three vertices and three corresponding vertex normals and used for a local fitting. Our method interpolates three end points and corresponding normal vectors of each triangle to construct a curved patch. With the curved patches, we can estimate the per triangle curvature distribution as well as the curvature at the vertices. Similar to the estimation of per vertex normal from the adjacent per triangle normal, we compute the per vertex curvature by taking a weighted average of per triangle curvature. We believe that our method is the only one to estimate curvature by interpolating VN triangles. As we will show in the next sections, the specific contributions of this study are the following.

  • Avoid solving a least squares problem, so our algorithm runs faster than other similar fitting methods do.

  • Handle arbitrary triangulations. The method is typically free of degeneracy, and it has no under-constrained problem.

  • Compute curvature per face. With the introduction of programmable geometry shaders, this per face computation can be performed directly on graphics hardware.

This paper is organized as follows. In Section 2, we review related works. In Section 3, we first employ a triangular cubic Bézier scheme to create a curved patch, and then, we estimate the curvature based on the patch. We also present formulas necessary for curvature estimation in this section. In Section 4, we evaluate various curvature estimation methods using our suite of test cases with a number of different mesh schemes. We conclude our paper in Section 5.

Section snippets

Related works

Reliable curvature computation has become a basic step in several computer graphics algorithms. The curvature estimation techniques for triangle meshes are usually classified in two categories: the surface fitting method and the discrete method.

Surface fitting method. This method yields the best approximation of the underlying surface that was the source of the triangulation. It has been one of the more popular and stable techniques for curvature estimation. Hamann [14] proved that a surface

Curvature estimation based on vertex normal triangles

All the fitting approaches mentioned in Section 2 have one feature in common that they locally approximate the surface by a least squares technique. In this section, we propose an alternative approach to estimate the curvature: instead of computing the curvature per point, we do the computation per triangle. We consider each neighboring triangle (VN triangle) of a mesh point and interpolate the VN triangle by a triangular cubic Bézier patch; then, we estimate the curvature by Eqs. (3.7), (3.8),

Experimental results

A comparison of the state-of-the-art curvature estimation methods [17], [22], [23] reveals that Goldfeather and Interrante’s method [17] employs the cubic-order polynomial function and normal vectors and is perhaps the best in recent years. Taubin’s approach [21] is a representative of the discrete methods; it is not the best, but it runs fast. In order to investigate the performance of the proposed algorithm in Section 3, we compare our method with the two above-mentioned methods in the case

Conclusions

A curvature estimation technique based on vertex normal triangles has been presented. This technique constructs a triangular cubic Bézier patch that interpolates three end points and corresponding normal vectors of each triangle. With the curved patches, we estimate the per triangle curvature. Similar to the estimation of per vertex normal from the adjacent per triangle normal, we compute the per vertex curvature by taking a weighted average of the curvatures of triangles touching a mesh point.

Acknowledgments

This work was supported in part by the Basic Science Research Program through the National Research Foundation of Korea funded by the Ministry of Education, Science and Technology (2010-0001645); in part by the Doctoral Fund of Ministry of Education of China for new teachers (20100171120045); in part by the International Academic Program of The Korea Foundation for Advanced Studies 2010–2011; in part by the National Natural Science Foundation of China (61003108).

References (31)

  • P. Alliez et al.

    Anisotropic polygonal remeshing

    ACM Trans Graph

    (2003)
  • N.J. Mitra et al.

    Partial and approximate symmetry detection for 3D geometry

    ACM Trans Graph

    (2006)
  • F. Cole et al.

    How well do line drawings depict shape?

    ACM Trans Graph

    (2009)
  • T. Judd et al.

    Apparent ridges for line drawing

    ACM Trans Graph

    (2007)
  • Merigot Q, Ovsjanikov M, Guibas L. Robust Voronoi-based curvature and feature estimation. In: Conf. geometric and...
  • Cited by (25)

    • A new spatial data structure for triangular mesh with toroidal patches

      2024, Journal of King Saud University - Computer and Information Sciences
    • On the 'most normal' normal - Part 2

      2015, Finite Elements in Analysis and Design
      Citation Excerpt :

      Each triangle carries unambiguously a face normal, but some ambiguity may arise when defining a normal at the vertices or at the edges of the triangulation. Point normals are usually required in visualization [2], rendering [3], medical applications, boundary conditions in finite volume and finite elements solvers [4], free surface problems [5], coupled fluid-structure problems [6], tangent plane computations, curvature estimations [7,8], surface to surface interpolation [9], and so forth. One strategy to tackle the point normal computation is to consider the triangles as a discretization of a smooth surface.

    • Application of the level-set method to the analysis of an evolving microstructure

      2014, Computational Materials Science
      Citation Excerpt :

      On the other hand, voxel-based methods compute curvatures using the values of a function at voxels that are close to the interfaces, which are typically defined as regions where the values of the function at the voxels are between the two bulk phase values. Most triangulated-mesh-based methods can be further categorized as either a “surface fitting” method or a “discrete” method [35]. A surface fitting method determines the curvature at each vertex by obtaining a quadratic (or cubic for higher accuracy) equation for a parameterized surface that best fits the interface [36–38].

    • Curvature tensor computation by piecewise surface interpolation

      2013, CAD Computer Aided Design
      Citation Excerpt :

      Many methods have been developed for estimating curvatures or curvature tensors on triangular meshes accurately or robustly. See for example Refs. [11,12,9,13,14] and references therein. When both principal curvatures and principal directions are estimated, the known techniques can roughly be classified into three categories.

    View all citing articles on Scopus
    View full text