Line Simplification
Editor's Note: This file was selected as MATLAB Central Pick of the Week
dpsimplify uses the recursive Douglas-Peucker line simplification algorithm to reduce the number of vertices in a polyline according to a specified tolerance. The algorithm is also know as Iterative Endpoint Fit algorithm. dpsimplify can handle polylines and polygones in 2d and higher dimensions.
The submission now contains another m-file (dpsimplify_octave.m) that has been slightly modified to run with GNU Octave.
Syntax:
[ps,ix] = dpsimplify(p,tol)
where p is a nxm matrix that contains n vertices in m dimensions.
For additional information on the algorithm follow this link
http://en.wikipedia.org/wiki/Ramer-Douglas-Peucker_algorithm
Cite As
Wolfgang Schwanghart (2024). Line Simplification (https://www.mathworks.com/matlabcentral/fileexchange/21132-line-simplification), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Acknowledgements
Inspired: Im2mesh (2D image to triangular meshes), Region Growing (2D/3D grayscale), grid2tri - Gridded Surface to Irregular Triangulation
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.4.0.0 | added m-file that runs with GNU Octave |
||
1.3.0.0 | Added some information in the description. |
||
1.2.0.0 | Removed a bug in calculating the second output argument. Improved handling of lines with only one segment. |
||
1.1.0.0 | only minor changes: added some comments and changed the link to more information since it was dead. |
||
1.0.0.0 | First, the algorithm can now handle nans in the vertex array. It assumes that nans in the array serve as separator of single polylines and treats each polyline/polygon separately. |