Awesome
MDenoise: Feature-Preserving Mesh Denoising
mdenoise is a simple and fast mesh denoising method, which can remove noise effectively while preserving mesh features such as sharp edges and corners. It can be applied to all kinds of point clouds, including topographic data.
For further information see the Cardiff University Mesh Filtering Group website.
Usage
mdenoise -i input_file [options]
-e Common Edge Type of Face Neighbourhood (Default: Common Vertex)
-t float Threshold (0,1), Default value: 0.4
-n int Number of Iterations for Normal updating, Default value: 20
-v int Number of Iterations for Vertex updating, Default value: 50
-o char[] Output file
-a Adds edges and vertices to generate high-quality triangle mesh.
Only functions when the input is .xyz file.
-z Only z-direction position is updated.
Examples:
Mdenoise -i cylinderN02.ply2
Mdenoise -i cylinderN02.ply2 -n 5 -o cylinderDN
Mdenoise -i cylinderN02.ply2 -t 0.8 -e -v 20 -o cylinderDN.obj
Mdenoise -i FandiskNI02-05 -o FandiskDN.ply
Mdenoise -i Terrain.xyz -o TerrainP -z -n 1
Mdenoise -i my_dem_utm.asc -o my_dem_utmP -n 4
About the file formats
Many standard CAD and geometrical processing file formats are supported. The .xyz and .asc (ESRI ASCII Grid) files are primarily designed for dealing with geographic data.
Supported input types: .gts, .obj, .off, .ply, .ply2, .smf, .stl, .wrl, .xyz, and .asc Supported output types: .obj, .off, .ply, .ply2, .xyz, and .asc Default file extension: .off
Notes:
- .xyz files contain comma separated values, with x, y, z in the first three columns. Optional comment lines (starting with #) at the beginning of the file and data in other columns are ignored.
- The -z flag is always used for gridded topographic data (.asc files). If an associated .prj file exists, a copy is provided for output file.
Using mdenoise with topographic data
mdenoise denoises topographic data, particularly Shuttle Radar Topography Mission (SRTM) data, with minimal changes to the data themselves. It has been implemented as a plugin in the GRASS and SAGA open source GIS packages. See the Using Sun's denoising algorithm on topographic data webpage for further information.
References
The mdenoise code and its application to topographic data are described in the following publications:
- Sun X, Rosin PL, Martin RR, Langbein FC (2007) Fast and Effective Feature-Preserving Mesh Denoising. IEEE Transactions on Visualization and Computer Graphics, 13:925–938. doi: 10.1109/TVCG.2007.1065
- Stevenson JA, Sun X, Mitchell NC (2010) Despeckling SRTM and other topographic data with a denoising algorithm. Geomorphology 114:238–252. doi: 10.1016/j.geomorph.2009.07.006
Compilation instructions
To compile on unix platforms:
g++ -o mdenoise mdenoise.cpp triangle.c
Windows binaries are available from the Cardiff University Mesh Filtering Group website.
Copyright (C) 2007 Cardiff University, UK
Author: Xianfang Sun
Version: 1.0
Note: The copyright of triangle.h and triangle.c belong to Jonathan Richard Shewchuk. See the TRIANGLE website and files themselves for further information.