Next Article in Journal
Conditioned Adaptive Control for an Uncertain Bioreactor with Input Saturation and Steep Settling Desired Output
Previous Article in Journal
EBAS: An Efficient Blockchain-Based Authentication Scheme for Secure Communication in Vehicular Ad Hoc Network
Previous Article in Special Issue
Temporally Multi-Modal Semantic Reasoning with Spatial Language Constraints for Video Question Answering
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Mesh Denoising Based on Recurrent Neural Networks

1
School of Mathematics, Hefei University of Technology, Hefei 230009, China
2
School of Medical Information Engineering, Anhui University of Chinese Medicine, Hefei 230012, China
3
School of Computer Science and Information Engineering, Hefei University of Technology, Hefei 230602, China
*
Authors to whom correspondence should be addressed.
Symmetry 2022, 14(6), 1233; https://doi.org/10.3390/sym14061233
Submission received: 2 April 2022 / Revised: 7 June 2022 / Accepted: 10 June 2022 / Published: 14 June 2022
(This article belongs to the Special Issue Symmetry and Applications in Cognitive Robotics)

Abstract

:
Mesh denoising is a classical task in mesh processing. Many state-of-the-art methods are still unable to quickly and robustly denoise multifarious noisy 3D meshes, especially in the case of high noise. Recently, neural network-based models have played a leading role in natural language, audio, image, video, and 3D model processing. Inspired by these works, we propose a data-driven mesh denoising method based on recurrent neural networks, which learns the relationship between the feature descriptors and the ground-truth normals. The recurrent neural network has a feedback loop before entering the output layer. By means of the self-feedback of neurons, the output of a recurrent neural network is related not only to the current input but also to the output of the previous moments. To deal with meshes with various geometric features, we use k-means to cluster the faces of the mesh according to geometric similarity and train neural networks for each category individually in the offline learning stage. Each network model, acting similar to a normal regression function, will map the geometric feature descriptor of each facet extracted from the mesh to the denoised facet normal. Then, the denoised normals are used to calculate the new feature descriptors, which become the input of the next similar regression model. In this system, three normal regression modules are cascaded to generate the last facet normals. Lastly, the model’s vertex positions are updated according to the denoised normals. A large number of visual and numerical results have demonstrated that the proposed model outperforms the state-of-the-art methods in most cases.

1. Introduction

Three-dimensional sensing and scanning technology has been widely used to capture the digital surface of physical objects. However, noise inevitably sneaks into the process of 3D capture and reconstruction, which significantly hinders the subsequent geometry processing tasks. Therefore, restoring high-quality 3D models from noise-damaged meshes has attracted widespread attention in computer graphics. Generally speaking, noise and sharp features are both high frequencies. Therefore, how to maintain sharp features when effectively removing noise is still a challenging problem in mesh denoising. In recent years, researchers have made significant contributions to mesh denoising.
Traditional denoising methods blur some features, more or less. For example, the early work from Taubin [1] and Desbrun et al. [2] focused on mesh fairing and smoothing, which led to feature blurring. With the rapid development of machine learning in all kinds of application areas, we aim at applying machine learning methods to mesh denoising to achieve better results. Based on Wang et al.’s work [3] and some other methods [4,5,6], we propose a data-driven mesh denoising method based on a recurrent neural network. The Recurrent Neural Network (RNN) is a neural network model that achieves a prominent performance on important tasks that include language modeling, speech recognition, and machine translation. In the traditional feedforward neural network, it is assumed that neurons in the same layer are independent of each other. From the input layer to the hidden layer and then to the output layer, the layers are all connected, but the nodes in the same layer are not connected. This kind of common neural network cannot effectively solve the problems with time sequence or nonlinear data. RNN adds a delayer in the hidden layer as a one-step delay operator to achieve the purpose of memory. Therefore, the system has the ability to adapt to the time-varying characteristics and enhances the global stability of the network. It has stronger computational capability than the general feedforward neural network and can also be used to solve the problem of fast optimization. What makes RNN so special is the recurrent nets allow us to operate over sequences of vectors: sequences in the input, in the output, or both, generally. Two very nice papers from DeepMind [7,8] showed that the way of sequence processing still works well in the absence of sequence information. The takeaway is that even if your data is not in the form of sequences, you can still formulate and train a powerful RNN to process them sequentially. We train the RNN to map the feature descriptor to the denoised normal. Although the inputs seem unordered, the experiments show that the trained RNN can effectively denoise the mesh in real time.

2. Related Works

In the past two decades, various smoothing algorithms have been introduced to remove undesirable noise while maintaining sharp features in geometry. Classical Laplacian smoothing [9,10] is a very fast and simple surface smoothing method. However, when Laplacian smoothing is applied to a noisy 3D surface, it will lead to obvious shape distortions and surface shrinkage, in addition to noise removal. To overcome the shrinkage problem, Taubin [1] developed a surface smoothing algorithm, where the discrete Laplacian function of the surface was defined by the weighted averaging neighborhood normals. Desbrun et al. introduced an implicit smoothing algorithm [2], which produced stable results on irregular meshes and avoided volume shrinkage. Later, other isotropic methods were also proposed, including a low-pass/high-pass filter framework, volume-preserving method and differential characteristic-based methods [11,12,13,14,15]. The concept of differential coordinates was introduced by Alexa [11] as a geometric local shape descriptor.
However, early work focused on mesh smoothing and fairing algorithms, which usually resulted in feature blurring. In order to preserve the features, many researchers began to pay attention to anisotropic methods. The early anisotropic methods [16,17,18,19,20] were based on anisotropic geometric diffusion, inspired by image processing [21].
Bilateral filtering denoising techniques originate from image denoising [22]. Fleishman et al. successfully proposed a single-step iterative bilateral mesh denoising method directly applied to vertices [23], which is closely related to the anisotropic filter. In [23], a vertex and its normal define a parameterization plane, over which a bilateral filter is applied to the neighborhood of that vertex, and the vertex will be updated along its normal vector according to the displacement obtained from the filter. However, experiments show that this method does not always accurately maintain the fine features of the mesh. Since mesh normals can represent the surface geometry more directly than vertex positions, lately, many researchers, such as Sun et al. [24], Zheng et al. [4], Wei et al. [25], Zhang et al. [5], and Yadav et al. [15], have used a two-stage framework, first filtering the mesh normals and then updating the vertex positions according to the estimated normals. More recently, in a two-stage mesh denoising fashion, Yadav et al. [15] used Tukey’s bi-weight function as a similarity function in the bilateral normal filtering, which stops the diffusion at sharp edges to retain the features, and introduced an edge-weighted Laplace operator to compute a differential coordinate to produce a high-quality mesh. Bilateral filtering is also the core of many multi-step normal filtering methods [4,5]. Compared with the single-stage method, the two-stage method can usually recover the features more effectively when dealing with high-level noises.
Based on the observation that sharp features may be sparse on the 3D model, several mesh denoising methods based on sparse optimization were proposed. For example, He et al. [6] use the L0 norm, which directly measures sparsity, to preserve sharp features when smoothing the surface. Wang et al. [26] and Wu et al. [27] performed L1 optimization to restore sharp features. Although these global methods are more robust numerically, often, the meshes with local fine details are excessively smoothed. Zhang et al. [28] combined the total variation and piecewise constant function to perform variational mesh denoising. Correct estimations of differential geometric properties are usually essential for these methods.
Lately, the methods based on deep neural networks have made important progress in various fields and achieved impressive results. Li et al. [29] presented a deep normal filtering network, called DNF-Net, for mesh denoising. To capture the local geometry, DNF-Net takes patches of facet normals as inputs and directly outputs the corresponding denoised facet normals of the patches. The network includes a multi-scale feature embedding unit, a residual learning unit, and a joint supervision loss function. However, DNF-Net may produce unsatisfying denoising results when encountering a test mesh whose noise pattern is very different from that in the training set. Shen et al. [30] presented a GCN-Denoiser to perform graph convolutions in the dual spaces of triangular meshes, which utilizes both static and dynamic edge convolutions to learn both the explicit mesh structure and implicit potential relations among non-adjacent neighbors. To obtain a better denoising effect, they also employed multiple GCNs to progressively regress the facet normals in a cascade manner.
As the pioneers of neural network methods for mesh denoising, Wang et al. [3] proposed a cascaded radial basis function (RBF) neural network to denoise 3D meshes. It is a data-driven method, in which a large number of noisy meshes and ground truth meshes are used for learning regression function, and a regression model is established in order to remove mesh noise. However, this regression model [3] adopted a single hidden layer radial basis neural network to carry out the global fitting of the data. The radial basis neural network is a typical feedforward neural network. A feedforward neural network is the simplest neural network, in which neurons are all arranged hierarchically and are only adjacent to the neurons in the previous layer. The neuron in the current layer receives the output of the previous layer as input and transmits its output as the input of the next layer. There is no feedback between the layers.
Due to the lack of feedback between layers, the denoising effects of the RBF neural network are not particularly ideal. In this paper, the recurrent neural network is introduced to denoise 3D meshes. The input/output of our model seems to have no sequential information, but it is important to realize that the positional relationships in the spatial domain can still be processed in a sequential manner using RNN with powerful temporal capabilities. The steps of our method are as follows. Firstly, descriptors representing geometric features are extracted from the mesh. Then, we use the recurrent neural network to train the regression function, which maps the descriptor to the expected face normal. The output of the hidden layer not only relates to the current input but, also, to its output at the previous moments by using neurons with self-feedback. Then, the denoised normals will be used to calculate the new feature descriptors as the next input of the regression model to perform cascaded regression. Finally, the normals obtained from the trained regression model are used to update the vertex coordinates to reconstruct a new mesh.

3. Methods

3.1. RNN

RNN, born in the 1980s, is a typical dynamic recurrent neural network, which is based on the basic structure of the BP network and adds a delayer to the hidden layer as a one-step delay operator. The original intention of RNN is to process sequential data. RNN provides a very elegant way of dealing with (time) sequential data, which makes use of correlations between data points that are close in the sequence. The current output is not only related to the current input but also related to the previous output. Therefore, the system can adapt to time-varying characteristics and enhances the global stability of the network. It has stronger computing power than feedforward neural networks and can also be used to solve the problem of fast optimization. Figure 1 shows a basic RNN architecture with a delay line.
The structure of RNN can be generally divided into four layers: input layer, hidden layer, delayer, and output layer. The connection of the input layer, hidden layer, and output layer is similar to a feedforward network. Usually, the activation function of the hidden layer takes a nonlinear hyperbolic tangent function (tanh). The output of the hidden layer unit is sent to the delayer for storage and then fed into the hidden layer at the next moment, forming the next input of the hidden layer together with the input signal. In this way, the delayer acts as a delay operator with one step delay function. By the storage and delay of the delayer, the network is time-sensitive. This internal feedback mechanism enhances the ability of the network to process dynamic information.
Figure 2 shows an unfolded diagram of the hidden layer in two time steps. t 1 and t represent the time steps, x is the input samples, s t is the memory of the samples at time step t , U and W represent the input weight and the memory weight, respectively, and V is the output weight. At time step t = 0 , s will be initialized as s 0 = 0 , and U , W , and V will be initialized randomly. State s t , the storage state of the time step t , participates in the next prediction. This rule and the final output are formulated as follows:
s t = f ( U x t + W s t 1 ) ,
o T = g ( V s T ) ,
where f and g are the activation functions of the hidden layer and output layer, respectively. f is usually a sigmoid function. g is usually a linear function in regression case and a SoftMax function in a classification case.

3.2. Geometric Feature Descriptors

3.2.1. Bilateral Filtering and Guided Bilateral Filtering

We use M = ( V , F ) to represent a mesh, where V = { v i : i =   1 , , n } represents the set of vertices, and F = { f i : i =   1 , , m } represents the set of faces. Denote the centroid, normal, area, and neighborhood of f i by c i , n i , A i , and N f i . The well-known bilateral normal filter of 3D mesh is defined by
n i = n o r m ( f j N f i A j exp ( c i c j 2 2 σ s 2 ) exp ( n i n j 2 2 σ r 2 ) n j ) ,
where σ s and σ r are the standard deviation of spatial Gaussian filter and signal Gaussian filter, respectively. To deal with a large noise, the guided normal filter is introduced via a more accurately guided signal. Similarly, the guided normal joint filter is defined by
n g , i = n o r m ( f j N f i A j exp ( c i c j 2 2 σ s 2 ) exp ( g ( n i ) g ( n j ) 2 2 σ r 2 ) n j ) .
In the formula, g ( n i ) and g ( n j ) are the guided normal vectors of the face f i and f j , respectively, and the guided normal vector is calculated by
g ( n i ) = n o r m ( f j N f i A j exp ( c i c j 2 2 σ s 2 ) n j ) .

3.2.2. Feature Descriptors

The bilateral normal feature descriptor D i and guided bilateral normal feature descriptor D g , i for each face are defined by binding different parameters to the bilateral normal filter and guided bilateral normal filter.
D i = ( n i ( σ s 1 , σ r 1 ) , n i ( σ s 2 , σ r 2 ) , , n i ( σ s L , σ r L ) ) ,
D g , i = ( n g , i ( σ s 1 , σ r 1 ) , n g , i ( σ s 2 , σ r 2 ) , , n g , i ( σ s L , σ r L ) ) .
D g , i is used in the first cascaded regression and D i in the remaining cascaded regression.

3.3. Regression Model

The dataset P is partitioned into the training set P X , validation set P V , and test set P T . P X consists of a series of training data pairs { D i , n i ¯ } i = 1 N P X . n i ¯ is the ground truth normal of face f i . First, divide the training data into four clusters based on the feature descriptors via the k-means method. The faces in each cluster have strong geometric similarities. For cluster l , we divide the data into the training set P X ( l ) , validation set P V ( l ) , and test set P T ( l ) . A regression function is trained by minimizing the following energy function:
E = { D i , n i ¯ P X ( l ) } n o r m ( R l ( D i ) ) n i ¯ 2 + μ E r e g ,
where E r e g is an L2 regularization term to prevent overfitting, µ is set as 0.05 in our experiments, and the regression function R l ( D ) for cluster l is defined by
R l ( D ) = g ( s T , l V ) = k = 1 N r s T , l ( k ) V l , k
where N r is the number of the hidden nodes, and
s t , l ( k ) = tanh ( U l , k T D t + W l , k T s t 1 , l ( k ) + W l , k T s t 2 , l ( k ) + b l , k ) = 2 1 + exp { 2 * [ U l , k T D t + W l , k T s t 1 , l ( k ) + W l , k T s t 2 , l ( k ) + b l , k ] } 1 .
where U l , k R 3 L , W l , k R N r , b l , k R , V l , k R 3 . In our experiment, N r is set to 10. The regression model is iteratively trained until the approximation error on the validation set increases. Since the k-means clustering is carried out according to the similarity of descriptors, and the models are trained for each cluster separately, the final regression function is
R ( D ) = R l ( D ) ,   i f   k ( D c l D c k ) ,
where c l refers to the center of cluster l . The normal of the final output should be
n i = n o r m ( R ( D ) ) .

4. Vertex Update

After the estimation of the face normals, the vertex positions need to be updated to match the new normals { n i } . We adopt the iterative scheme from [23] for the vertex update. Specifically, the iterative approach is
v i t + 1 = v i t + 1 3 | F v i | f k F v i ( i , j ) f k n k ( n k ( v j t v i t ) ) ,
where F v i is the set of faces that share a common vertex v i , and f k is the set of edges of face f k .

5. Experiments and Analysis

5.1. Visual Comparisons

In this paper, we have proposed a data-driven feature-preserving denoising method for mesh surfaces. The core of our approach lies in using the special structure of recurrent neural network, which has more feedback layers than the feedforward neural network. Our method was tested on many meshes corrupted with either synthetic or raw scanning noise to validate the efficiency and robustness of the proposed method. We compare the results with seven state-of-the-art denoising methods, namely, He et al.’s L0 minimization [6], Zheng et al.’s local bilateral normal filter [4], Zhang et al.’s guided normal filter [5], Wang et al.’s cascaded normal regression method [3], Yadav et al.’s robust and high-fidelity mesh denoising [15], Li et al.’s DNF-Net [29], and Shen et al.’s GCN-Denoiser [30]. Different mesh denoising methods have different sets of parameters. To allow for fair comparisons, we chose the parameters suggested by the authors of [3,29,30] or fine-tuned the parameters to produce visually better results.
First, these approaches are tested on the Nicolo model with low-level noise. Obviously, all the methods can remove this low-level noise (see Figure 3). However, [6] oversmooths and slightly shrinks this mesh, and the results of [4,5] are not as good as ours in maintaining some fine details. Our method is very close to [3,15,29,30] in visual effect but has a smaller mean angular error (See Table 1). Figure 4 shows a Bunny-Hi model with rich textures corrupted by medium low-level noise. One can see that the results by [4,5,6] lost the textures but [3,15,29] and our method maintains them. The GCN [30] seems to retain the most textures. Later, we will give numerical comparisons to distinguish the superior method, especially when visual results are similar. For the Trim-star model with medium high-level noise in Figure 5, Refs. [3,4,5,29] removed most of the noise, but some artifacts remained. Ref. [6] oversmooths the model and sharpens the inner five corners. Ref. [30] and our method have the best denoising results.
In addition to synthetic cases, the regression model based on RNN was verified on the other two datasets of meshes with raw noise. The results generated by the eight methods shared visual similarities when handling the low-level noise. However, in the case of high-level noise, the existing methods could not remove the noise completely. The Boy model with high-level noise in Figure 6 and the Pyramid model with moderate-level noise in Figure 7 were acquired by a Microsoft Kinect V1 camera and Microsoft Kinect V2 camera, respectively. These scanning data from Kinect V1, V2, [3,15,30], and our method can remove noise to the maximum extent, meanwhile protecting the features well.
For meshes with an extremely high level of noise, denoising is an arduous process for traditional methods. However, our method shows its strong power to remove large noise while maintaining appearances. Figure 8 shows the Fandisk model with sharp features, which is contaminated by Gaussian noise of 0.9 times the average edge length. Refs. [4,6] failed in the denoising task. Refs. [3,5,29] could not obtain satisfactory denoising results, but [15,30] and our method obtained acceptable denoising results.

5.2. Quantitative Comparisons

We also make quantitative comparisons to supplement qualitative comparisons. Sometimes, it is easy to judge the performance of different methods through visual comparisons. However, when there exist only small visual differences, one needs numerical metrics to distinguish them. We choose the mean angular error and Hausdorff distance as the quantitative metrics suggested by the previous works [3,24]. The mean angular error (MAE) is to estimate the mean angular difference between the face normals of the denoising mesh and those of the ground truth mesh and is defined as
M A E = E [ ( n d , n ) ] ,
where ( n d , n ) is the angle between the denoising normal and the ground truth, and E is the expectation operator, which is realized by averaging the angles between the predicted normals and the ground truth normals of all facets in the mesh. The small mean angular error indicates that the shape of the denoising surface is close to that of the ground truth surface. We calculated the MAEs on different types of meshes, which have corresponding ground truth normals. The MAE values of experimental results are listed in Table 1, and the best results are shown in bold. The results of GCN [30] and our method are closest to the ground truth models, since the smallest MAE values are either obtained by [30] or by our method. The statistics of the MAE, together with the above visual comparisons, show that our approach is convincing both numerically and visually.
Hausdorff distance is used to measure the positional error between the denoised mesh and the ground truth mesh and is defined as
D H = max [ D h ( M d , M g ) , D h ( M g , M d ) ] ,
where
D h ( M 1 , M 2 ) = max v 1 M 1 min v 2 M 2 v 1 v 2 .
where M d and M g are the denoised mesh and the ground truth mesh, respectively, and v 1 and v 2 are the vertices in the mesh. The Hausdorff distances for the experimental results are listed in Table 2, and the smallest results are shown in bold. Our method generates the denoising result with the smallest Hausdorff distance on meshes Gargoyle, Trim-star, and boy (Kinect V1). GCN [30] has the smallest Hausdorff distance on models Nicolo, Rockerarm, and Bunny-Hi. The other two minimum Hausdorff distances appear in the CNR [3] and BNF [4] methods, respectively. Except for Pyramid captured by the Kinect V2 camera, the Hausdorff distances of the results generated by our method were the minimum or close to the minimum. This indicates that our method can preserve the volume of the 3D model and avoid volume shrinkage. The Hausdorff distance is usually, but not always, consistent with the visual comparisons. This may be because the repositioning of vertices after denoising will result in larger or smaller Hausdorff distances.
To compare the effects of these methods more intuitively, Figure 9 and Figure 10 plot the bar charts of the MAE and Hausdorff distances, respectively. For the convenience of observation, for the three models Nicolo, Rockerarm, and Bunny-Hi in Table 2, the values of Hausdorff distances are multiplied by 100.

5.3. Running Time

We recorded the time cost of each method in the experiments. The denoising time is listed in Table 3. The minimum running time is highlighted in bold. Our method is the fastest of all. Whether the number of facets in a mesh is large or small, the time performance of our method is very good. It can be seen from Table 3 that the networks trained by CNR [3] and our method can be directly used for real-time denoising. Although the method of GCN [30] has achieved better results than our method in many cases, the running time of our method is much faster than that of GCN. As for why their speed is slower than CNR, the authors of [30], we believe that it is because they used complex neural networks. In conclusion, our approach has a good balance between efficacy (effectiveness) and time efficiency.

6. Limitations

Although our method does not need to tune the parameters in denoising, the sizes of training datasets and the intensities and types of noise involved in the datasets will affect the generalization of the final regression model. When encountering large noise, the geometric feature descriptors may be unable to tell noise from features. Searching for better alternate feature descriptors will be one of our future efforts.

7. Conclusions and Future Works

In this paper, a novel RNN-based mesh denoising model is proposed, inspired by cascade normal regression [3]. The feedback property of RNN is utilized, which the RBF neural network does not have. The previous output of the hidden layer can be used as the memory and fed back to the next input, which connects the previous learning results with the current learning and reinforces the training effect. Although our task seems to have nothing to do with sequence processing, it is still possible to use this powerful formalism of RNN to process our data in a sequential manner. Experimental results show that the proposed method is superior to or comparable to the state-of-the-art methods in removing noise and maintaining the features and details of meshes for both synthetic noise and scanning noise. In the future, we can try to design better feature descriptors to characterize the mesh and distinguish noise and features accurately. In addition, we can also try to construct an end-to-end deep learning network to automatically learn mesh features, so that we can obtain better denoising results without calculating feature descriptors in advance.

Author Contributions

Conceptualization, J.T.; methodology, Y.X.; software, Y.H. and Y.X.; validation, P.H.; formal analysis, M.H.; investigation, P.H.; data curation, Y.H.; writing—original draft preparation, Y.X. and Y.H.; writing—review and editing, Y.X. and J.T.; supervision, M.H.; project administration, J.T.; and funding acquisition, J.T. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China under Grant No. 62172135 and No. 62176084 and in part by the Fundamental Research Funds for the Central Universities of China under Grant No. PA2021GDSK0092.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Acknowledgments

The meshes used in the synthetic dataset are courtesy of the Aim@Shape repository and the 3D mesh database of the Inria GAMMA group. We would like to thank Peng-Shuai Wang for providing the data and codes for the mesh denoising. We would like to thank Sunil Kumar Yadav, Xianzhi Li, and Yuefan Shen for sharing the implementation of their methods in [15,29,30], respectively. We also thank the editors and the anonymous reviewers for their hard work.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Taubin, G. A signal processing approach to fair surface design. In Proceedings of the 22nd Annual Conference on Computer Graphics and Interactive Techniques, Los Angeles, CA, USA, 6–11 August 1995; pp. 351–358. [Google Scholar]
  2. Desbrun, M.; Meyer, M.; Schroder, P.; Barr, A. Implicit fairing of irregular meshes using diffusion and curvature flow. In Proceedings of the 26th Annual Conference on Computer Graphics and Interactive Techniques, Los Angeles, CA, USA, 26–30 July 1999; Volume 33, pp. 317–324. [Google Scholar]
  3. Wang, P.S.; Liu, Y.; Tong, X. Mesh denoising via cascaded normal regression. ACM Trans. Graph. 2016, 35, 232. [Google Scholar] [CrossRef]
  4. Zheng, Y.; Fu, H.; Au, O.K.-C.; Tai, C.-L. Bilateral normal filtering for mesh denoising. IEEE Trans. Vis. Comput. Graph. 2011, 17, 1521–1530. [Google Scholar] [CrossRef] [PubMed]
  5. Zhang, W.; Deng, B.; Zhang, J.; Bouaziz, S.; Liu, L. Guided mesh normal filtering. Comput. Graph. Forum. 2015, 34, 23–34. [Google Scholar] [CrossRef]
  6. He, L.; Schaefer, S. Mesh denoising via l0 minimization. ACM Trans. Graph. (TOG) 2013, 32, 1–8. [Google Scholar]
  7. Ba, J.; Mnih, V.; Kavukcuoglu, K. Multiple object recognition with visual attention. arXiv 2014, arXiv:1412.7755. [Google Scholar]
  8. Gregor, K.; Danihelka, I.; Graves, A.; Rezende, D.J.; Wierstra, D. Draw: A recurrent neural network for image generation. Comput. Sci. 2015, 37, 1462–1471. [Google Scholar]
  9. Field, D.A. Laplacian smoothing and delaunay triangulations. Int. J. Numer. Methods Biomed. Eng. 1988, 4, 709–712. [Google Scholar] [CrossRef]
  10. Vollmer, J.; Mencl, R.; Müller, H. Improved Laplacian smoothing of noisy surface meshes. Comput. Graph. Forum. 1999, 18, 131–138. [Google Scholar] [CrossRef]
  11. Alexa, M. Differential coordinates for local mesh morphing and deformation. Vis. Comput. 2003, 19, 105–114. [Google Scholar] [CrossRef]
  12. Nehab, D.; Rusinkiewicz, S.; Davis, J.; Ramamoorthi, R. Efficiently combining positions and normal for precise 3D geometry. ACM Trans. Graph. (TOG) 2005, 24, 536–543. [Google Scholar] [CrossRef]
  13. Nealen, A.; Igarashi, T.; Sorkine, O.; Alexa, M. Laplacian mesh optimization. In Proceedings of the 4th International Conference on Computer Graphics and Interactive Techniques in Australasia and Southeast Asia, Kuala Lumpur, Malaysia, 29 November–2 December 2006; pp. 381–389. [Google Scholar]
  14. Su, Z.X.; Wang, H.; Cao, J.J. Mesh denoising based on differential coordinates. In Proceedings of the 2009 IEEE International Conference on Shape Modeling and Applications, Beijing, China, 26–28 June 2009; pp. 1–6. [Google Scholar]
  15. Yadav, S.K.; Reitebuch, U.; Polthier, K. Robust and high fidelity mesh denoising. IEEE Trans. Vis. Comput. Graph. 2019, 25, 2304–2310. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  16. Bajaj, C.L.; Xu, G. Anisotropic diffusion on surfaces and functions on surfaces. ACM Trans. Graph. (TOG) 2003, 22, 4–32. [Google Scholar] [CrossRef]
  17. Clarenz, U.; Diewald, U.; Rumpf, M. Anisotropic Geometric Diffusion in Surface Processing; IEEE: Piscataway, NY, USA, 2000; pp. 397–405. [Google Scholar]
  18. Ouafdi, A.F.E.; Ziou, D. A global physical method for manifold smoothing. In Proceedings of the 2008 IEEE International Conference on Shape Modeling and Applications, Stony Brook, NY, USA, 4–6 June 2008; pp. 11–17. [Google Scholar]
  19. Desbrun, M.; Meyer, M.; Schroder, P.; Barr, A.H. Anisotropic feature-preserving denoising of height fields and bivariate data. In Proceedings of the Graphics Interface 2000, Montréal, QC, Canada, 15–17 May 2000; pp. 145–152. [Google Scholar]
  20. Tsuchie, S.; Higashi, M. Surface mesh denoising with normal tensor framework. Graph. Models 2012, 74, 130–139. [Google Scholar] [CrossRef]
  21. Perona, P.; Malik, J. Scale-space and edge detection using anisotropic diffusion. IEEE Trans. Pattern Anal. Mach. Intell. 1990, 12, 629–639. [Google Scholar] [CrossRef] [Green Version]
  22. Tomasi, C.; Manduchi, R. Bilateral filtering for gray and color images. In Proceedings of the 6th International Conference on Computer Vision, Bombay, India, 4–7 January 1998; pp. 839–846. [Google Scholar]
  23. Fleishman, S.; Drori, I.; Cohen-Or, D. Bilateral mesh denoising. In ACM SIGGRAPH 2003 Papers; Association for Computing Machinery: New York, NY, USA, 2003; pp. 950–953. [Google Scholar]
  24. Sun, X.; Rosin, P.; Martin, R.; Langbein, F. Fast and effective feature preserving mesh denoising. IEEE Trans. Vis. Comput. Graph. 2007, 13, 925–938. [Google Scholar] [CrossRef]
  25. Wei, M.; Yu, J.; Pang, W.; Wang, J.; Qin, J.; Liu, L.; Heng, P. Bi-normal filtering for mesh denoising. IEEE Trans. Vis. Comput. Graph. 2015, 21, 43–55. [Google Scholar] [CrossRef]
  26. Wang, R.; Yang, Z.; Liu, L.; Deng, J.; Chen, F. Decoupling noise and features via weighted l1-analysis compressed sensing. ACM Trans. Graph. (TOG) 2014, 33, 1–12. [Google Scholar]
  27. Wu, X.; Zheng, J.; Cai, Y.; Fu, C. Mesh denoising using extended rof model with l1 fidelity. Comput. Graph. Forum. 2015, 34, 35–45. [Google Scholar] [CrossRef]
  28. Zhang, H.; Wu, C.; Zhang, J.; Deng, J. Variational mesh denoising using total variation and piecewise constant function space. IEEE Trans. Vis. Comput. Graph. 2015, 21, 873–886. [Google Scholar] [CrossRef]
  29. Li, X.; Li, R.; Zhu, L.; Fu, C.-W.; Heng, P.-A. DNF-Net: A deep normal filtering network for mesh denoising. IEEE Trans. Vis. Comput. Graph. 2020, 27, 4060–4072. [Google Scholar] [CrossRef]
  30. Shen, Y.; Fu, H.; Du, Z.; Chen, X.; Burnaev, E.; Zorin, D.; Zhou, K.; Zheng, Y. GCN-Denoiser: Mesh Denoising with Graph Convolutional Networks. ACM Trans. Graph. (TOG) 2022, 41, 1–14. [Google Scholar] [CrossRef]
Figure 1. The structure of RNN.
Figure 1. The structure of RNN.
Symmetry 14 01233 g001
Figure 2. An unfolded diagram of hidden layer in two time steps.
Figure 2. An unfolded diagram of hidden layer in two time steps.
Symmetry 14 01233 g002
Figure 3. Denoising of the Nicolo model corrupted by Gaussian noise (0.1) in a normal direction. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Figure 3. Denoising of the Nicolo model corrupted by Gaussian noise (0.1) in a normal direction. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Symmetry 14 01233 g003
Figure 4. Denoising of the Bunny-hi model corrupted by Gaussian noise (0.3) in a normal direction. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Figure 4. Denoising of the Bunny-hi model corrupted by Gaussian noise (0.3) in a normal direction. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Symmetry 14 01233 g004
Figure 5. Denoising of the Trim-star model corrupted by Gaussian noise (0.5) in a normal direction. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Figure 5. Denoising of the Trim-star model corrupted by Gaussian noise (0.5) in a normal direction. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Symmetry 14 01233 g005
Figure 6. Denoising of the Boy model corrupted by a Kinect V1 camera. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Figure 6. Denoising of the Boy model corrupted by a Kinect V1 camera. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Symmetry 14 01233 g006
Figure 7. Denoising of the Pyramid model corrupted by a Kinect V2 camera. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Figure 7. Denoising of the Pyramid model corrupted by a Kinect V2 camera. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Symmetry 14 01233 g007
Figure 8. Denoising of the Fandisk model corrupted by Gaussian noise (0.9) in a normal direction. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Figure 8. Denoising of the Fandisk model corrupted by Gaussian noise (0.9) in a normal direction. (a) Original model. (b) Noisy model. (c) BNF [4]. (d) GNF [5]. (e) L0 [6]. (f) CNR [3]. (g) RFD [15]. (h) DNF [29]. (i) GCN [30]. (j) Ours.
Symmetry 14 01233 g008
Figure 9. Comparisons of the MAE.
Figure 9. Comparisons of the MAE.
Symmetry 14 01233 g009
Figure 10. Comparisons of the Hausdorff distances.
Figure 10. Comparisons of the Hausdorff distances.
Symmetry 14 01233 g010
Table 1. The comparison of the MAE.
Table 1. The comparison of the MAE.
ModelsBNFGNFL0CNRRFDDNFGCNOURS
Nicolo
(Gaussian 0.1)
5.3785.7557.9904.0997.7045.4534.3774.077
Fandisk
(Gaussian 0.2)
2.0322.1955.1431.7802.0294.2571.6391.740
Gargoyle
(Gaussian 0.2)
11.21012.48016.2307.5409.3257.9797.2547.500
Trim-star
(Gaussian 0.2)
6.5156.9248.1234.1429.6575.4774.4284.057
Rockerarm
(Gaussian 0.3)
7.6397.73512.1305.3829.1726.2445.0735.318
Bunny-Hi
(Gaussian 0.3)
7.3417.16211.0305.7756.6776.5225.4695.699
Boy
(Kinect V1)
14.66011.80110.5109.7989.87310.0799.5769.754
Pyramid
(Kinect V2)
9.0427.9637.6226.8976.8977.4196.7976.789
Table 2. The comparisons of Hausdorff distances.
Table 2. The comparisons of Hausdorff distances.
ModelsBNFGNFL0CNRRFDDNFGCNOURS
Nicolo
(Gaussian 0.1)
0.02080.02820.04350.01510.02600.02100.01380.0151
Fandisk
(Gaussian 0.2)
0.87070.99790.99970.75120.76160.75740.75570.7601
Gargoyle
(Gaussian 0.2)
2.63900.79961.42130.59280.60450.61150.59890.5840
Trim-star
(Gaussian 0.2)
0.50040.44980.50760.22570.24110.27410.22990.2079
Rockerarm
(Gaussian 0.3)
0.01040.01900.01710.00750.02180.01060.00600.0074
Bunny-Hi
(Gaussian 0.3)
0.00950.01020.01870.00740.00880.00890.00590.0069
Boy
(Kinect V1)
6.11526.13745.87135.97645.99656.00186.01045.8206
Pyramid
(Kinect V2)
6.59176.87977.65507.05567.07236.70527.00187.0093
Table 3. Computational times (s).
Table 3. Computational times (s).
Models#Vertices#Faces#EdgesBNFGNFL0CNRRFDDNFGCNOurs
Nicolo50,41999,994150,41215.56275.241873.953.4718.431280.8740.333.36
Fandisk647512,94619,4191.8833.87131.940.624.07132.235.120.60
Gargoyle85,558171,112256,66828.41584.901948.637.7419.052605.41112.457.17
Trim-star519210,38415,5761.4353.9692.380.563.12102.534.560.54
Rockerarm941318,82628,2392.9069.39232.910.864.90222.427.150.84
Bunny-Hi34,87769,537104,41711.04178.401241.352.7213.22989.3627.132.65
Boy28,18753,22981,54122.34176.21458.981.786.77621.0516.301.75
Pyramid691513,29620,2292.3731.8597.250.613.58132.185.040.57
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Xing, Y.; Tan, J.; Hong, P.; He, Y.; Hu, M. Mesh Denoising Based on Recurrent Neural Networks. Symmetry 2022, 14, 1233. https://doi.org/10.3390/sym14061233

AMA Style

Xing Y, Tan J, Hong P, He Y, Hu M. Mesh Denoising Based on Recurrent Neural Networks. Symmetry. 2022; 14(6):1233. https://doi.org/10.3390/sym14061233

Chicago/Turabian Style

Xing, Yan, Jieqing Tan, Peilin Hong, Yeyuan He, and Min Hu. 2022. "Mesh Denoising Based on Recurrent Neural Networks" Symmetry 14, no. 6: 1233. https://doi.org/10.3390/sym14061233

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop