Mesh Denoising via Adaptive Consistent Neighborhood

In this paper, we propose a novel guided normal filtering followed by vertex updating for mesh denoising. We introduce a two-stage scheme to construct adaptive consistent neighborhoods for guided normal filtering. In the first stage, we newly design a consistency measurement to select a coarse consistent neighborhood for each face in a patch-shift manner. In this step, the selected consistent neighborhoods may still contain some features. Then, a graph-cut based scheme is iteratively performed for constructing different adaptive neighborhoods to match the corresponding local shapes of the mesh. The constructed local neighborhoods in this step, known as the adaptive consistent neighborhoods, can avoid containing any geometric features. By using the constructed adaptive consistent neighborhoods, we compute a more accurate guide normal field to match the underlying surface, which will improve the results of the guide normal filtering. With the help of the adaptive consistent neighborhoods, our guided normal filtering can preserve geometric features well, and is robust against complex shapes of surfaces. Intensive experiments on various meshes show the superiority of our method visually and quantitatively.


Introduction
A triangulated mesh is one of the typical data types for representing 3D models. Commonly, triangulated meshes can be generated by using the original 3D coordinate datas that collected by 3D model scanning equipments, such as Kinect, laser scanner, CT, etc. However, there are many noises in the original 3D coordinate datas, and the noises also are generated in the 3D models reconstruction process [1,2]. These noises will bring challenges to 3D models visualization, splitting, spatial analysis, object extraction and 3D printing etc. [3][4][5]. Therefore, it is very significant to eliminate noises in triangulated meshes. The key issue is how to retain the original geometric structures and fine details when eliminate the noises. This problem becomes more challenging for the surfaces including complex shapes (e.g., narrow structures, multi-scale features, and fine details).
Over recent decades, the filtering methods have been widely used in mesh denoising, and can be roughly divided into isotropic and anisotropic filtering methods. The classical isotropic methods [6,7] mainly focus on removing the surface noise, but they neglect to preserve geometric features during the filtering process. Thus, these isotropic methods tend to produce denoised results with significant shape distortion. To address this issue, many anisotropic filtering methods [8][9][10][11][12][13][14][15][16][17][18][19][20] have been proposed. Bilateral filtering is a representative method in these anisotropic methods, which has been successfully applied in image processing for its ability of preserving features. Due to the success of bilateral filtering in image processing, it has been extended to geometry processing. Fleishman et al. [12] proposed a bilateral mesh denoising, which can directly remove noise via smoothing vertex positions. Zheng et al. [15] proposed a bilateral normal filtering (BNLF) by using normal filtering followed by vertex updating. Although the bilateral normal filtering proposed in [15] can preserve geometric features to some extent, it cannot effectively preserve sharp features, multi-scale features, and fine details in the case of high noise. The reason may be as follows. The bilateral normal filtering lacks a reliable guidance normal field to facilitate the filtering process. Thus, Zhang et al. [21] presented a patch-shift method to compute the guidance normal field for facilitating the bilateral normal filtering. Their method can preserve sharp features well, but may blur small-scale features and fine details because of their consistent neighborhoods constructing strategy. More specifically, when the surface contains complex shapes (e.g., narrow structures, multi-scale features, fine details), the uniformly constructed neighborhoods by their method inevitably contain geometric features in them, which further causes these contained features to be blurred in the normal filtering process. Thus, it is still an open problem to find an effective strategy to construct local neighborhoods that avoid including any geometric features. With the help of the well constructed local neighborhoods (without any geometric features contained), we can compute a guide normal field that strictly matches the underlying shape of the surface, which will greatly improve the results of the guided normal filtering.
In recent years, optimization-based methods are another kind of technique for mesh and image denoising. In order to preserve sharp features, the sparse optimization methods have been widely applied [3,5,[22][23][24][25][26][27][28]. He and Schaefer [22] extended L 0 minimization to triangulated meshes for recovering piecewise constant surfaces. Zhang et al. [23] and Wu et al. [24] applied TV (total variation) regularization to mesh denoising for its edge-preserving property. Although the above L 0 and L 1 minimization methods achieve impressive results for preserving sharp features, they inevitably suffer from the undesire staircase artifacts in smoothly curved regions. In particular, this drawback is more severe for L 0 minimization [22,29], which may flatten some weak features and produce false edges in smoothly curved regions. Liu et al. [25] and Zhong et al. [26,30] proposed high-order based methods to overcome the above limitations of works [22][23][24]29]. Their methods can preserve sharp features and simultaneously recover smoothly curved regions well. However, in the presence of high noise, these high-order based methods may smooth sharp features and blur fine details. Many low-rank optimization methods [31][32][33][34] were introduced in mesh denoising to recover pattern similarity patches of the underlying surface. Unfortunately, these low-rank based methods cannot preserve sharp features well. In addition, because of the multi-patch collaborative mechanism, these low-rank based methods may be computationally intensive sometimes.
More recently, learning-based methods [35][36][37][38] have been gaining widespread attention, which have an advantage of parameters adjustment-free. Wang et al. [35] proposed a cascade normal regression (CNLR) method. The relation between the filtered results and the ground-truth was learned by CNLR. The advantage of this novel method is that there was no need to adjust parameters manually to eliminate noises. Generally, the performance of this method is well for small-scale noises, but it is not capable to dispose large-scale noises. In order to retain the geometrical structure features and fine details of the textures, Wang et al. [36] put forward a two-stage leaning method. Firstly, the face normal relation between the models with noises and the ground-truth was learned and the noises were eliminated by machine leaning. Secondly, the geometrical structure features and fine details of the textures were recovered by machine learning, so as to solve the object blurring issue generated in the first stage. Although these learning-based methods are free of parameter-tuning, and preserve geometric features well, they are highly dependent on the completeness of the training data set.
As we have seen, it is still quite challenging to preserve geometric features while removing noise, especially when the noisy mesh containing complex shapes (e.g., narrow structures, multi-scale features, and fine details). In view of these issues, we propose a guided normal filtering based on adaptive consistent neighborhoods for mesh denoising. The adaptive consistent neighborhoods are constructed by a proposed two-stage scheme. In the first stage, we design a consistency measurement to select the local neighborhood of each face (called the coarse consistent neighborhood) with the most consistent normal orientations. Then, a graph-cut based approach is iteratively performed to construct the final consistent neighborhood without any features contained. By using the constructed adaptive consistency neighborhoods, we can easily get the guidance normal field of the surface for restoring the noisy normal field. Following the guided normal filtering, we reconstruct vertex positions to match the filtered normal field. Taking a noisy mesh as input, our mesh denoising can recover complex shapes of the surface well while removing noise. Specifically, the main contributions of this paper are listed as follows: • A reliable consistency measurement is designed to explicitly select the coarse consistent neighborhood containing the fewest features, thus providing a favorable neighborhood for each mesh face toward features-preserving effect. Then, a graph-cut based scheme is proposed, which can adaptively construct the more accurate neighborhood that does not contain any features. We can use the constructed consistent neighborhoods to compute a more accurate guide normal field. • A guided normal filtering method via the adaptive consistent neighborhoods is proposed to restore the noisy normal field. We show the performance of our method on synthetic data including CAD and non-CAD meshes and a variety of scanned data acquired by the laser scanners and Kinect sensors. Experiments demonstrate that our method outperforms the existing state-of-the-art mesh denoising methods qualitatively and quantitatively.
The rest of the paper is organized as follows. In Section 2, we detail our guided normal filtering method based on constructing adaptive consistent neighborhoods. Then, our visual and numerical results are given in Section 3, and we discuss our mesh denoising method in various aspects in Section 4. Finally, we conclude the paper and give some comments for future work in Section 5.

Methodology
In this section, we first give a brief review of the guided normal filtering, and explain motivations of our mesh denoising method. Then, we introduce our two-stage scheme to construct adaptive consistent neighborhoods for computing a reliable guide normal field. Finally, we articulate the whole framework of our mesh denoising method.

Background of Guided Normal Filtering
Guided normal filtering [21] followed by vertex updating is a well developed featurepreserving mesh denoising framework. The key of guided normal filtering is that it provides a robust guidance normal for each face of the mesh. For each face, the guidance normal is obtained by averaging the face normals in a patch that contains the current face. Then, the joint bilateral filtering based on the computed guidance normal field is performed to get the filtered normal n i of face f i as follows: where A j , c j , n j are the area, centroid, and face normal of the face f j in the 1-ring neighborhood P i of the face f i , respectively. g i , g j are the guidance 2σ 2 s ) are the Gaussian functions, where σ r , σ s are variance parameters. c i is the centroid of the face f i , and · 2 is the Euclidean norm. According to the Equation (1), the filtered face normals of the surface can be obtained, then we reconstruct vertex positions to match these filtered normals.
Due to a robust estimation provided by the guidance for the true normals of the noisy mesh, guided normal filtering shows the superiority of sharp features preserving and robustness for noise. However, when the mesh contains complex shapes (e.g., narrow structures, multi-scale features, and fine details), they cannot get a proper guidance due to the unreasonable patch selected by the consistency measure H(P ij ). As we can see the Figure 1, according to the smallest value of the consistency measure H(P ij ), the most consistent neighborhood of the face (in purple) is selected, while the neighborhood contains sharp features more so that the guidance of the face (in purple) is not proper. Thus, the filtered results will blur sharp features in these regions. To obtain more faithful results in these regions, we propose a two-stage scheme to construct adaptive consistent neighborhoods for guided normal filtering. The construction pipeline is demonstrated in Figure 2. In the first stage, inspired by [21,39], we newly define a consistency measure to select a coarse consistent neighborhood for each face in a patch-shift manner. Then, a graph-cut based scheme is iteratively performed to adaptively construct different neighborhoods to match the corresponding local shapes of the mesh.  Figure 2. The pipeline of the proposed two-stage method for constructing adaptive consistent neighborhood. In the first stage, for a face (in purple), we compute a coarse consistent neighborhood by using patch-shift method with the proposed consistency measure. In the second stage, we propose a graph-cut based scheme for iteratively refining the obtained coarse consistent neighborhoods in a shape-aware manner.

Coarse Consistent Neighborhood Selection
The consistent neighborhood is the key of recovering geometrical features and fine details in the denoised results from noisy mesh in the guided normal filtering (GNLF) framework. However, in the regions of narrow structures, multi-scale features, and fine details, a reliable consistent neighborhood can not be obtained in the GNLF framework so that the denoised results blur geometrical features and details. To solve this problem, we propose a two-stage method to obtain the adaptive consistent neighborhood for guided normal filtering. Our first-stage method aims to select a coarse consistent neighborhood for each face f i from all 1-ring neighborhoods that contain f i . If all the faces in the neighborhood of f i have similar normal directions, then using this neighborhood to compute the guidance normal at f i will gets more faithful denoising results. However, it is hard to obtain this consistent neighborhood of f i , especially in the regions of the complex shapes (e.g., narrow structures, multi-scale features, and fine details). As we can see the Figure 1, the consistent neighborhood that has the similar normal directions of the purple face can not be searched in all 1-ring neighborhoods that contain f i by using a consistency measure. For example, by using the consistency measure H(P ij ), the GNLF method gets worse neighborhoods in which the faces normals directions are disordered. Thus, to solve this problem, a new consistency measure is proposed to search a coarse consistent neighborhood for each face in a patch-shift manner, in which the normal directions of the faces are as similar as possible. In the second-stage, a graph-cut based scheme is iteratively performed in the coarse consistent neighborhood, which adaptively constructs different neighborhoods to match the corresponding local shapes of the mesh.
To evaluate the consistency of the neighborhood of f i , the new consistency measure is as follows: where P ij is a 1-ring neighborhood of the face f j that contains the face f i . F(P ij ) is used to measure the flatness of P ij .
where |P ij | is the face number of the neighborhood P ij , and A j n j is the average value of the normals of each face in the neighborhood P ij . The smaller of F(P ij ) means that the candidate neighborhood P ij is smoother. S(P ij , f i ) is used to measure the similarity of the normal directions between the face f i and the neighborhoods P ij , and the smaller value means more similar.
Thus, the product C(P ij , f i ) can measures the consistency of the neighborhood of the face f i well, and the coarse consistent neighborhood P c i for f i in a patch-shift manner [21] can be searched by using C(P ij , f i ). As seen in Figure 1, a neighborhood of the face (in purple) is searched by using C(P ij , f i ), in which the normal directions of the faces are as similar as possible. Due to the narrow structures, the neighborhood also contains some geometric features. Thus, we perform a graph-cut based scheme in the neighborhood, which adaptively splits some faces in the different neighborhoods to match the corresponding local shapes of the mesh.

Adaptive Consistent Neighborhood Construction
When the mesh includes complex shapes (e.g., narrow structures, multi-scale features, and fine details), the coarse consistent neighborhood obtained by the first stage may still contain geometric features. In this case, if the coarse consistent neighborhood is used to calculate the guidance normal, which will blur sharp features. So, the second-stage strategy based on the graph cut scheme is proposed to iteratively split some faces from the first-stage consistent neighborhood, which can obtain an adaptive consistent neighborhood that has the more similar orientations with the current face. In each iteration, we firstly build a weighted graph based on the given neighborhood to obtain the indicator vector. Then, we use the indicator vector to bipartition the given neighborhood. Finally, a measure is introduced to judge the rationality of the segmented neighborhood for avoiding over-segmentation. The iterative graph cut scheme for obtaining the adaptive consistent neighborhood is sketched in Algorithm 1, and the main steps are as follows: (1) Construct Laplacian matrix. As graph construction has a crucial effect on the efficiency of the graph cut scheme, we firstly construct graphs over the given patch for our iterative graph cut scheme. We consider an undirected weighted graph G p = {T, E, W} composed of a node set T = {τ i : i = 1, 2, . . . , m}, an edge set E connecting nodes, and a similarity matrix W, where m is the number of the node set. W is a real symmetric m × m matrix, whose element w i,j in i-th row and j-th column is the weight assigned to the weighted edge connecting nodes τ i and τ j . Our constructed graph G p is used to spilt some faces in the given patch based on the graph cut scheme, so T in the graph G p is the face set of the given patch.
In the graph cut scheme, the weight edge that is crossed the segmentation line of G p should have a relatively low-value. To this aim, if the faces correspond to τ i and τ j which not share a common edge, we set w i,j equal to 0; otherwise, w i,j is set as follows: where n τ i , n τ j are the face normals of the given patch that correspond to nodes τ i and τ j . σ p is a scaling parameter, which controls the decreasing speed of w ij . Empirically, we set σ p equal to 0.8 in our experiments. α is defined as: where θ is a user-specified angle threshold for identifying the geometry feature, which will be discussed in Section 4. Then, we build the corresponding Laplacian matrix L ∈ R m×m of the graph G p , which can be written as: where D = diag(D 1 , ..., D m ), and D i = m ∑ i=0 w ij is the sum of the i-th row elements in the similarity matrix W.
(2) Obtain segmented result. According to the generalized eigensystem [40] of the Laplacian matrix L, the eigenvector χ = {χ 1 , χ 2 , ..., χ m } corresponding to the second smallest eigenvalue of the eigensystem is obtained. Each element in the eigenvector χ corresponds to a node in the graph G p , and the value of the elements represents the geometric distribution of the nodes in the graph G p . We sort the elements of the vector χ in increasing order, and then we get the sorted vectorχ. ϕ(·) is a index mapping from the vector χ to the sorted vectorχ, e.g., χ i =χ ϕ(i) and χ ϕ −1 (i) =χ i . The jump point in the sorted vectorχ means there is a splitting point in the graph G p . In order to find the jump point effectively, we first build the first-order difference vector ∇χ = {χ 2 −χ 1 , ...,χ |p| −χ m−1 } ∈ R m−1 . Then, we search the largest value of the vector ∇χ and record the corresponding index in the ∇χ as λ. The index mapping ϕ(·) can be used to obtain the original order in the eigenvector χ, and we can use the splitting index φ −1 (λ) to divide the nodes in graph G p into two sets: Finally, the set containing the current face is selected as the intermediate result of the adaptive consistent neighborhood.
(3) Compute stopping criteria. To avoid over-segmentation, a measure δ(P k , P k+1 , f i ) is proposed as follows: where ε is a small positive number to avoid zero division, and P k i , P k+1 i are the neighborhood of the face f i of the last iteration and the segmented neighborhood of the face f i , respectively. C(·, ·) is our proposed consistency measure, which is defined in (2). δ(P k i , P k+1 i , f i ) measures the consistency change between P k i and P k+1 i . A threshold β is introduced to manually tune the segmented degree through (9). If δ(P k i , P k+1 i , f i ) < β, our iterative graph cut scheme continues with the previous segmented result as the input patch; otherwise, the iterative scheme is stopped and the final segmented neighborhood P * i = P k i is outputted.

) Construct Laplacian matrix
For given P k i of each face f i , construct the Laplacian matrix L of P k i according to (7);

(2) Obtain segmented result
For given the Laplacian matrix of P k i , obtain the segmented result P k+1 i according to (8);

(3) Compute stopping criteria
For given the P k i and P k+1 i , compute δ(P k i , P k+1 i , f i ) according to (9).

Guided Normal Filtering with Adaptive Consistent Neighborhood
Through our two-stage scheme, the adaptive consistent neighborhoods that contain geometric features as few as possible are constructed to provide a robust estimation of the guidance normals for the noisy mesh. Then, the filtered face normals are obtained by the joint bilateral filtering with the guidance. Finally, the vertex positions are reconstructed to match the filtered face normals. The whole iterative framework is listed in Algorithm 2, and the main steps are as follows. The corresponding pipeline of our method can be seen in Figure 2.
(1) Compute face normals of the input mesh. A mesh of arbitrary topology without any degenerate triangle is repesented as M ∈ R 3 , and the corresponding faces set and vertices set are denoted as { f i : i = 1, 2, . . . , F} and {v i : i = 1, 2, . . . , V}, respectively. Here, F and V are the number of faces and vertices in the M, respectively. For a face f i , its outward unit normal can be calculated as: where R(·) = · · 2 , and v i 1 , v i 2 , v i 3 are the positions of the three vertices of the f i in a fixed orientation, respectively.
(2) Compute guidance normals. Through our two-stage scheme, the adaptive consistent neighborhood is obtained for each face f i of the input noisy mesh. Then, we can use the neighborhoods to compute the guidance normal g i at each face f i .
where A j , n j are the area, the face normal of the face f j in the neighborhood P * i . P * i is the adaptive consistent neighborhood of the face f i .
(3) Compute filtered normals. The robust estimation of the guidance for the true normals of the noisy mesh is obtained by our adaptive consistent neighborhood, we can use Equation (1) to compute filtered normals.
(4) Reconstruct vertex positions of the mesh. After obtaining the filtered face normal field, we should update vertex positions of the mesh to match the filtered face normal field. To this end, we use a classical vertex updating scheme presented by Sun et al. [14]. Specifically, we reposition vertex positions V by solving the following minimization problem: where n k is the filtered face normal of f k . By using gradient descent to solve the problem (12), we reconstruct vertex positions by the following iterative formula: where v i is the updated vertex of v i . Γ(i) is the set of mesh faces that share a common mesh vertex v i , and |Γ(i)| is the number of faces contained in Γ(i). c t is the centroid of f t . More details can refer to the work [14].

Experiment Results
The new method is implemented with C++ language. CGAL, Eigen and OpenGL library are used to develop the software on Microsoft Visual Studio 2010. A group of CAD, non-CAD and original models scanned by 3D scanning equipments are used to conduct a set of experiments. All of the experiments are run on the same server with an Intel i7 1.8 GHz CPU and 16GB RAM. In order to analyze the performance of our new method, five typical methods are chosen to conduct a group of comparisons, such as BNLF [15], L0M [22], ROFI [17], CNLR [35], and GNLF [21].
For all our experiments, ε, β, K, L are the same. Specifically, ε is a small positive number to avoid zero division, which is empirically fixed as 10 −7 . β is a threshold for tuning the segmented degree, which is empirically set as 0.6. K = 3 and L = 10 are the maximum iteration numbers of segmentation and the face normal filtering method, respectively.

Qualitative Comparisons
Firstly, we conduct a group of experiments by using a Table model, which includes narrow and smooth geometrical structures. As shown in Figure 3, Figure 3a is the noisy mesh with 0.2 Gaussian noise. It obviously indicates that these five methods both perform well for eliminating the noise. However, most of these methods blur sharp features in varying degrees, except methods L0M and ours. Specifically, both methods BNLF and ROFI cannot preserve sharp features, due to that these two methods are based on the bilateral filter, which cannot distinguish sharp features from noise clearly; see Figure 3b,d. Since its performance depends on the completeness of the training dataset, the learning-based method CNLR blurs sharp features; see Figure 3e. Because it is short of the robustness to mesh topology, method GNLF is failed to keep narrow structures; see Figure 3f. Although method L0M can recover sharp features well, it produces staircase effects in smoothly curved regions due to its high requirements of sparsity; see Figure 3c. On the contrary, our method can preserve sharp features on narrow structures and recover smoothly curved regions well; see Figure 3g.   Figure 4 demonstrates the denoising results of Part and Block, which contain sharp features on highly irregular sampled regions. The two models shown in Figure 4a are the noisy meshes with 0.2 Gaussian noise. Although both methods BNLF and CNLR can recover smooth features well, they inevitably blur sharp features; see Figure 4b,e. On the contrary, although methods L0M and ROFI can preserve sharp features, they cannot recover smoothly curved regions well. Specifically, both two methods usually produce staircase effects in these regions; see Figure 4c,d. Method GNLF can recover smooth regions while keeping most of sharp features well. However, it sometimes blurs corners because it often lacks robustness to mesh topology nearing corner features; see Figure 4f. Compared to these state-of-the-arts, our method can recover sharp features on highly irregular sampled regions; see Figure 4g. Figure 5 demonstrates denoising results of Girl, which is a non-CAD mesh with multi-scale features. As we can see, Figure 5a is the noisy mesh with 0.2 Gaussian noise. Method BNLF over-smooths small-scale features in the zoomed-in view areas; see Figure 5b. Methods L0M and ROFI flatten those small-scale features while producing false edges on smooth regions; see Figure 5c,d. Methods CNLR and GNLF can recover large-scale features, but they also blur those small-scale features; see Figure 5e,f. Compared to these methods, our method can remove noise effectively while keeping multi-scale features; see Figure 5g.    Figure 6 gives comparisons on Bunny containing fine details. As can be seen, Figure 6a is the noisy mesh with 0.2 Gaussian noise. Methods BNLF, CNLR, and GNLF over-smooth geometric details in varying degrees; see Figure 6b,e,f. Both methods L0M and ROFI suffer the over-sharpened effects. Besides, method L0M also produces false edges in smooth regions while method ROFI blurs the small-scale features; see Figure 6c,d. Compared to the above methods, our method produces the visually best result with the most details preserved; see Figure 6g.  Figure 7 demonstrates the comparison on a laser-scanned mesh with rich geometric details. As can be seen, all the methods can remove noise effectively. Moreover, method BNLF over-smooths the details; see Figure 7b. Although methods L0M, ROFI, CNLR, and GNLF can recover those relatively large-scale geometric details, all of them blur the small-scale details; see in Figure 7c-f. Specifically, methods L0M, ROFI, and GNLF also cause over-sharpened effects. Compared to the above state-of-the-art methods, our method can not only keep those relatively large-scale details well, but also preserves the most small-scale details; see Figure 7g. These results demonstrate that our method outperforms the compared methods in handling laser-scanned meshes. Recently, a lot of triangulated meshes are obtained using consumer-grade depth cameras, e.g., Microsoft Kinect. In Figure 8, we show the denoising results of David, which is scanned by Kinect. As can be seen, all the methods can effectively remove noise while preserving the geometric features well. Similarly, method L0M produces many false edges in smoothly curved regions for its highest sparsity requirements; see Figure 8c. However, according to the quantitative comparison results (MSAE) in the next subsection, we can see that the errors of our method are the lowest when compared to the above state-of-the-art methods. Thus, our method outperforms other compared methods in handling meshes acquired by Kinect. In addition, we give more denoising results on the raw data scanned by Kinect in Figure 9. As we can see, our method can consistently produce satisfactory results.

Quantitative Comparisons
In Section 3.1, the effectiveness of our new method has been verified by rendering these 3D models, see  In this section, MSAE and E v,2 are exploited to analyze the deviation between the denoised meshes and ground-truth [15,21], see Table 1, Figures 10 and 11. Computing time is also collected to analyze the computational intensity [41][42][43] of different methods, see Figure 12.
As shown in Table 1 and Figure 10, the MSAE of our method is the minimum one, which means that the deviation between the face normals of denoised meshes and groundtruth is minimal. It indicates that the adaptive consistent neighborhood exploited by our method can effectively generate more accurate face normal field. In addition, the E v,2 of our method is lower than most of the others, see Figure 11. The E v,2 of ROFI is bigger than ours, but sharp edges may be generated in some small-scale smooth regions, see Figure 8d.
The complexity of an algorithm directly impacts the computing time of the method. The new method is developed based on GNLF. In our method, adaptive consistent neighborhood is exploited to compute guided face normal field. This procedure is computational intensive. It increases the complexity of the method, so the computing time of our method is longer than GNLF. However, the computing time of our method is not the longest one when compared with other methods, see Figure 12.

Parameter Setting
Similar to existing methods, our method needs to tune several parameters to produce satisfactory results. The parameter θ is used to recognize sharp features from noise. Figure 10 shows the results of different θ with fixed other parameters. As can be seen that, Figure 10a is the noisy mesh with 0.35 Gaussian noise. When the value of θ is too small or too large, our method can blur sharp features; see Figure 10b,e. The reason is that our method can recognize all the edges as features or non-features if the value of θ is too small or too large. Besides, there is a range of θ values can be used to generate satisfactory results with sharp features well preserved; see Figure 10c,d. In our experiments, we empirically set θ in the range of [0.1π, 0.3π].

Robustness Test
In this subsection, we discuss the robustness of our method against different levels of noise. As can be seen in Figure 11, Figure 11a-d are the noisy meshes with 0.2, 0.4, 0.6, and 0.8 Gaussian noise, respectively. When the mesh corrupted by small-scale noise (standard deviation less than 0.4 mean edge length), our method can effectively remove noise while preserving sharp features well; see Figure 11a,b. However, when the level of noise increases, our method cannot preserve the original shape of the surface; see Figure 11c,d.
We also perform two robustness tests on MSAE and E v,2 for different mesh resolutions in Figure 12. As can be seen, when the mesh resolution keeps decreasing, the values of MSAE and E v,2 do not change significantly. Therefore, our method is robust and reliable.

Conclusions
The main novelty and findings of this paper are as follows. Firstly, we design a new consistency measurement to explicitly select the coarse consistent neighborhood containing the fewest geometric features. Then, we further present an improved technique based on graph-cut to adaptively construct the more accurate neighborhood that does not contain any geometric features. By using the constructed consistent neighborhoods, we can calculate an accurate guided normal field. The adaptive consistent neighborhood of each face is built by the proposed two-stage approach, which is the key part of this paper. By constructing the adaptive consistent neighborhood of each face, we can neglect the influence from features in the local neighborhood of the face. Based on the constructed adaptive consistent neighborhoods, we apply the guided normal filtering method to restore the noisy normal vector field. Then, vertex positions are reconstructed to match the filtered normal vector field. Our mesh denoising method preserves geometric features well, and is robust against complex topologies (e.g., narrow structures). We have compared our mesh denoising method with the state-of-the-art methods visually and numerically, and discussed our methods from various aspects.
Although our mesh denoising method performs better than the compared stateof-the-art methods, the CPU cost of our method is intensive. Because our graph cut algorithm is performed sequentially for each mesh face, it can potentially be parallelized by using OpenMP or CUDA in future work. Moreover, we plan to extend our consistency measurement and adaptive guided normal filtering method to point clouds.