Taubin Mesh Smoothing changes the positions of vertices already present in a mesh. One pass moves each vertex toward a weighted position of its neighbors. A second pass uses the updated geometry and a negative step factor. The combined update can reduce short-range roughness while avoiding much of the size loss that accumulates under repeated positive passes.
A triangular mesh supplies both vertex coordinates and a list of faces that connect them. Taubin's paper describes a first-order neighborhood based on the mesh connectivity. A vertex and the endpoints of edges meeting it supply the local positions used in the basic form. A point nearby in space may belong to a different surface and lie outside this neighborhood.
For one vertex, form the difference between its position and the position of each neighbor, taking the displacement from the vertex toward the neighbor. Multiply each displacement by its weight and add the results. With positive weights that sum to one, the result is the displacement from the vertex to the weighted neighbor position. This is the discrete Laplacian in the convention used here.

Figure one shows four neighbors and their equal-weight center in a plane. The vector from the central vertex to that point is a local update direction. Three-dimensional coordinates can be updated in the same way. The choice of weights matters because it sets how strongly each neighboring point contributes.
Multiplying the displacement by a positive number less than one takes the vertex part of the way toward the weighted position. A sharp outward bump often has a displacement pointing toward the nearby surface. The positive update then reduces that bump. The pass applies this rule to the mesh using the positions from the start of that pass.
Even a smoothly sampled convex shape can have a weighted neighbor position slightly inward at its vertices. Repeating the positive step can make that shape smaller despite making the surface look smoother. The Open3D mesh tutorial compares smoothing operations and points out this shrinkage in simple averaging and Laplacian filters.
Taubin's two-pass construction follows the positive step with another Laplacian step using a negative scale. A negative factor moves against the local displacement. The displacement for this second step is evaluated on the positions available after the first step. Copying and reversing the original arrows would skip the change in geometry that occurred in between.
The first operation acts on the original mesh, and the second operation acts on the first output. The coordinates are different at each stage. The list of connected faces can remain identical throughout. As a result, a smaller feature can be represented by the same faces after filtering, even though their positions and shapes have changed.
Taubin expresses the action as a product for a mode with value k. With positive factor lambda and negative factor mu, the product is (1 - lambda*k)(1 - mu*k). Each factor is the effect of one pass on that mode, and the product gives the effect of applying both. Different modes receive different gains.
As a numerical example, choose factors 0.50 and −0.53. At k = 0.1 the positive pass alone has gain 0.95, while the two-pass gain is about 1.00035. At k = 1.8 the two-pass gain is 0.1954. These are illustrative factors. The contrast shows how some slowly varying geometry can be retained while more rapidly varying components are attenuated.

The filter moves positions on an existing set of faces. A sharp edge can still become rounded if it is treated as ordinary neighborhood variation. The paper separately discusses constraints for vertices, normals and discontinuities. Preserving a particular edge or mounting feature therefore requires attention to the filtering choices for that feature, even when broad shape shrinkage is small.
The example gains apply to an individual mode under the fixed neighborhood operator. A surface generally contains many modes at once, so the gain at a single value of k cannot describe every displacement in a processed mesh. Repeating the same two-pass operator compounds the gain for each mode and can affect which details remain visible.
For a scan mesh used in robot planning or visualization, a useful processing record distinguishes the reconstructed surface from the filtered version. It can preserve which vertices or features matter for fit, whether any constraints were applied, and the smoothing settings. Read Taubin's original surface fairing paper for the neighborhood, passes and response, and the Open3D mesh filtering tutorial for the Laplacian and Taubin filters in a software example. Browse robot learning references and the technical article library.