Inspired by the image bilateral filtering algorithm, [Fleishman et al. 2003] and [Jones et al. 2003] respectively proposed the use of bilateral filtering algorithm to the noise mesh smoothing denoising algorithm, two articles are included in the year of SIGGRAPH, so far cited over 500 times. Although it is not very good to look at the noise effect of the two articles from today, the thought of it is worth learning. Image bilateral filtering algorithm can refer to the http://blog.csdn.net/abcjennifer/article/details/7616663, the image bilateral filter is composed of the space domain nucleus and the range nucleus, in the characteristic region of the image, The difference between the pixel value and the surrounding pixel value is large, then the dominant domain nucleus determines the weight coefficient of the surrounding pixel value is greatly reduced, so the bilateral filter can keep the detail characteristic while denoising.
[Fleishman et al. 2003] The proposed mesh denoising algorithm is an iterative method: first define the compute domain of each vertex u, the spatial domain is defined as the distance from the vertex u to the other vertex p in the computed domain, the range is defined as the signed distance of the other vertices p to the vertex u tangent polygon in the field. Then, the double filtering method is used to calculate the moving distance of the vertex u in the normal upward direction, and the iteration is completed after updating all the vertex positions of the grid. The specific formula is as follows:
Where the spatial domain core WC (x) = E-X2/2ΣC2, the domain core ws (x) = E-x2/2σs2,n (u) is satisfied | | u-pi| | The vertex set of the <ρ= 2σc {pi},i (P) is the signed distance of the vertex p to the vertex u tangent polygon, and the last computed I (u) is the distance that the vertex u needs to move upward in its law.
Effect:
[Jones et al. 2003] The proposed mesh denoising algorithm does not need to iterate, the concrete formula is as follows:
where F and g are the space domain nucleus and the range nucleus respectively, the kernel function is Gaussian function, AQ is the area of the Q of the triangle, and CQ is the center of the Q of the triangle, S satisfies | | cq-p| | < 2σf, and finally calculates the position P ' of the new vertex directly.
So how to get ∏q (p), ∏q (p) is the projection point of vertex p on the triangle Q tangent plane, but the projection point is not calculated on the original mesh. This paper proposes to ignore the range kernel function g in the bilateral filter formula, and make ∏q (p) = CQ, that is, using Gaussian filter to obtain a virtual mesh, and ∏q (p) is the projection point on the triangular slice Q tangent plane of vertex p to the virtual mesh.
Effect:
Welcome everyone to discuss computer graphics algorithm problem, email: [Email protected]
This article is original, reprint please indicate source: Http://www.cnblogs.com/shushen.
Reference documents:
[1] Shachar Fleishman, iddo drori, and Daniel cohen-or. 2003. Bilateral mesh denoising. In ACM SIGGRAPH 2003 Papers (SIGGRAPH ' 03). ACM, New York, NY, USA, 950-953.
[2] Thouis R. Jones, Frédo Durand, and Mathieu Desbrun. 2003. Non-iterative, feature-preserving mesh smoothing. In ACM SIGGRAPH 2003 Papers (SIGGRAPH ' 03). ACM, New York, NY, USA, 943-949.
Mesh Denoising Algorithm (bilateral filter)