An efficient approach for feature-preserving mesh denoising
Introduction
Mesh denoising, which aims at achieving clean and quality results from input noisy meshes, has recently attracted increasing interests in graphics and engineering community. With the growing availability of various optical and laser scanners, it is easy to capture different kinds of shapes. However, the captured data are always accompanied with noise. Even using high-fidelity laser scanners, the scanned models are inevitably polluted with noise, to certain extent. As a routine step, 3D scanned models need to be processed by mesh denoising before they are further applied to various applications, including computer-aided industrial design, reverse engineering, animation, rendering, prototyping and so on.
Promising mesh denoising results have been demonstrated recently [1], [2], [3], [4], [5]. However, these methods mainly focus on preserving geometric features, without taking the computational efficiency into consideration. Specifically, in terms of the computational efficiency, the scheme in [1] is probably the most efficient among all the methods, since it only includes bilateral filtering and vertex update, both of which are iterative and fast. The L0-minimization method [2] is complex, thus leading to a slow speed. The method [3] is quite slow due to the involved large matrix manipulation. The method proposed by Wei et al. [4], which introduces additional steps, is a variant of [1]. On the one hand, the neighboring faces clustering is inefficient since it is applied to all classified feature vertices. Moreover, the clustering would sometimes be inaccurate, especially when the noise level is high. On the other hand, the face normal filter and vertex update are formulated as least-squares problems. Furthermore, the least-squares problem of vertex update needs to be solved multiple times. The scheme in [5] consists of three stages, among which the initial estimation stage accounts for considerable computation due to the iterative least-squares optimization. Hence, it is less efficient from the computational perspective.
To address the above efficiency issue, we propose a highly efficient approach for mesh denoising while preserving geometric features. Specifically, our method consists of three steps: initial vertex filtering, normal estimation, and vertex update. An example for demonstrating our mesh denoising approach is shown in Fig. 2. Fig. 1 shows that our method outperforms the selected state of the art methods in terms of preserving eyelids (refer to zoomed regions).
Initial vertex filtering: Since positional and normal information are noisy and cluttered in the noisy input, we present an initial vertex filter to generate a sound initialized mesh for the follow-up steps. The proposed initial vertex filter is local, iterative and fast.
Normal estimation: As reported in the work [4], considering only face normals would overlook some geometric information, we thus take both face and vertex normal information into account. We introduce an unstandardized bilateral filter (Section 4.1) to efficiently smooth face normals of the initialized mesh obtained above. We can adjust the employed parameters to achieve a desired face normal field. Then we present an efficient and effective algorithm for vertex normal estimation (Section 4.2). Specifically, vertices are first classified into two types: corners and non-corners. Then, we estimate vertex normals according to the corresponding vertex types.
Vertex update: By taking advantage of both the filtered face normals and estimated vertex normals from the above step, we propose a novel iterative vertex update algorithm to efficiently update vertex positions (Section 5).
The specific contributions of this work include:
- •
Initial vertex filtering: Previous preprocessing [5] is time-consuming due to the global optimization. Thus we formulate this problem in a local sense and derive a fast initial vertex filter, which has similar performance to [5].
- •
Normal estimation: Bilateral filtering is fast [1]; however, the division computation consumes a large portion of the total computation. Therefore, we introduce an unstandardized bilateral filter to generate similar smoothed normals to the original version, with a higher efficiency. Previously, the vertex normals are estimated using an area-weighted average of neighboring face normals for non-feature vertices, and the average of representative normals of clustered face groups for feature vertices [4]. In this work, we present a much more efficient and accurate algorithm for vertex normal estimation.
- •
Vertex update: The vertex update in the work of [4] is time-consuming because of multiple executions of the least-squares optimization. Therefore, we present a fast iterative vertex update method by utilizing both the filtered face normals and estimated vertex normals in a local sense.
Section snippets
Related work
The early methods for mesh smoothing are isotropic, which may wipe away high-frequency features as the filters applied to these methods are independent of surface geometry. A typical surface smoothing method is Laplacian smoothing [6], but it shrinks the surface and cannot preserve features. Taubin [7] proposed a two-step smoothing method which prevents features from shrinkage by expanding the meshes after smoothing. Desbrun et al. [8] used a fairing method based on curvature flow to extend
Initial vertex filtering
As suggested by latest mesh denoising work [5], the original noisy input should be preprocessed, to generate a sound initialized mesh by removing folded faces, degenerate triangles and so on. Inspired by the preprocessing notion, we also present a preprocessing method—initial vertex filtering. Due to the inefficiency of the preprocessing step in [5], we attempt to achieve a locally fast algorithm for initial vertex filtering.
Problem formulation: Different from the global formulation [5], we
Normal estimation
In this section, we start with the face normal filtering since vertex normals are less accurate and more difficult to deal with. Then we estimate vertex normals with the filtered face normals.
Vertex update
Inspired by Wei et al. [4], we define the vertex update problem by taking advantage of both the filtered face normals and estimated vertex normals, as follows.where VNF(i) denotes the neighboring faces of the i-th vertex, and ck is the centroid of a face in VNF(i). (unknown) and pi (known) are the positions of the i-th vertex, respectively. describes the projection from to nkF. The first term encodes the sum of squared
Results and discussion
We tested our approach on a variety of mesh models corrupted with either synthetic or raw noise. Synthetic noise is generated by a zero-mean Gaussian function with standard deviation σ proportional to the mean edge length ℓ of the input mesh. Meanwhile, we also tested state-of-the-art methods on the same mesh models as comparisons. For implementation, we used the source code provided by Zheng et al. [1], and implemented the other methods [2], [4] by strictly following their algorithms. Besides,
Conclusion
In this paper, we present a highly efficient approach for feature-preserving mesh denoising. Given a noisy mesh input, our method initially filters vertices with a fast local filter, then efficiently filters face normals with the introduced unstandardized bilateral filter, and estimates vertex normals using an efficient algorithm, and finally updates vertex positions by utilizing both the filtered face normals and estimated vertex normals. Through the experiments on various test models
Acknowledgements
The authors would like to thank Mingqiang Wei for the constructive discussion. This work was supported by NSF Career award IIS 1148976.
References (38)
- et al.
A novel volume constrained smoothing method for meshes
Graph Models
(2002) - et al.
Surface mesh denoising with normal tensor framework
Graph Models
(2012) - et al.
Mesh regularization and adaptive smoothing
Comput-Aided Des
(2001) - et al.
Random walks for feature-preserving mesh denoising
Comput Aided Geom Des
(2008) - et al.
Feature-preserving mesh denoising based on vertices classification
Comput-Aided Geom Des
(2011) - et al.
A cascaded approach for feature-preserving surface mesh denoising
Comput-Aided Des
(2012) - et al.
Feature detection of triangular meshes based on tensor voting theory
Comput-Aided Des
(2009) - et al.
Bilateral normal filtering for mesh denoising
IEEE Trans Vis Comput Graph
(2011) - et al.
Mesh denoising via l0 minimization
ACM Trans Graph
(2013) - et al.
Decoupling noise and features via weighted L1-analysis compressed sensing
ACM Trans Graph
(2014)
Bi-normal filtering for mesh denoising
IEEE Trans Vis Comput Graph
A robust scheme for feature-preserving mesh denoising
IEEE Trans Vis Comput Graph
Improved laplacian smoothing of noisy surface meshes
Comput Graph Forum
Geofiltergeometric selection of mesh filter parameters
Comput Graph Forum
Efficiently combining positions and normals for precise 3d geometry
ACM Trans Graph
Cited by (27)
Point cloud optimization of multi-view images in digital image correlation system
2024, Optics and Lasers in EngineeringAutomated Lofting-Based Reconstruction of CAD Models from 3D Topology Optimization Results
2022, CAD Computer Aided DesignHLO: Half-kernel Laplacian operator for surface smoothing
2020, CAD Computer Aided DesignCitation Excerpt :Bilateral filtering is initially used in image denoising [50], and it is successfully extended to mesh denoising. Regarding the feature-preserving techniques, the utilization of filtered normals has seen noticeable progress in recent years [14,15,35,37,38,40–43,43–49,51,52]. Some recent methods have focused on vertex and face classification before mesh denoising [9–13,53,54].
An image processing approach to feature-preserving B-spline surface fairing
2018, CAD Computer Aided DesignCitation Excerpt :While B-spline surface fitting is quite an old topic, reconstructing fair B-spline surfaces with good feature preservation is still nontrivial, and there is little progress on this problem during the last two decades. By contrast, the research of reconstructing feature preserving 3D meshes is very active in recent years [4–7]. In particular, filtering the normal field to smooth mesh models seems to have great success [8–10,7,11], since the normal vectors are an important descriptor of the surface shape.
Learning-based 3D surface optimization from medical image reconstruction
2018, Optics and Lasers in EngineeringCitation Excerpt :Traditional smoothing algorithms that are geometry-independent (e.g., Laplacian filter) can achieve smooth results, when enforced on medical surfaces, however, they would result in additional artifacts, such as volume shrinkage, shape distortion, and significant features (e.g., fractured bones, vascular tumors) blurring. Recently, some feature-sensitive smoothing approaches [8,10,11] have been proposed which can effectively preserve surface features while removing noise. However, their direct application to medical surfaces probably produces unsatisfactory results, since staircase artifacts would be implicitly perceived as features and be indiscriminately maintained.
Investigation on Taubin smoothing performance of additively manufactured structures: case study of the MBB beam using laser powder bed fusion
2024, International Journal on Interactive Design and Manufacturing