Processing Terrain Point Cloud Data

Ronald DeVore, Guergana Petrova, Matthew Hielsberg, Luke Owens, Billy Clack, Alok Sood



    author = {DeVore, R. and Petrova, G. and Hielsberg, M. and Owens, L. and Clack, B. and Sood, A.},
    title = {Processing Terrain Point Cloud Data},
    journal = {SIAM Journal on Imaging Sciences},
    volume = {6},
    number = {1},
    pages = {1-31},
    year = {2013},
    doi = {10.1137/110856009},

    URL = {},
    eprint = {}


Terrain point cloud data are typically acquired through some form of LiDAR sensing. They form a rich resource that is important in a variety of applications including navigation, line of sight, and terrain visualization. Processing terrain data has not received the attention of other forms of surface reconstruction or of image processing. The goal of terrain data processing is to convert the point cloud into a succinct representation system that is amenable to the various application demands. The present paper presents a platform for terrain processing built on the following principles: (i) distortion is measured in the Hausdorff metric, which we argue is a good match for the application demands, (ii) a multiscale representation based on tree approximation using local polynomial fitting. The basic elements held in the nodes of the tree can be efficiently encoded, transmitted, visualized, and utilized for the various target applications. Several challenges emerge because of the variable resolution of the data, missing data, occlusions, and noise. Techniques to identify and handle these challenges are developed.



Maple Building Light Pole MOUT Eglin 1 Eglin 2

More MOUT data can be found here. The AFRL/MNG VEAA Data Set #1 can be requested from the AFRL/MNGI Computational Vision Team.

We are interested in the creation of a canoncial set of data that can be freely shared. If you are interested in submitting publically available data to be included on this site, or linked from this site, please contact devorelab<at>


Data Format:

The above files use a simple ASCII format with one point per line, x y z. Each line contains a forth value. For the simulated data this value is simply zero and can be ignored. For the Eglin data sets this value is an intensity returned by the sensor, however it is not used by our algorithm.


Code & Tutorial:

All code, documentation and tutorials will be made available via svn. The current version of the code was built under OSX, but does not have any mac-specific dependencies. A Makefile is included and is trivial enough that it can easily be modified for most systems. Use the following command to checkout the latest version of the source and documentation:

svn co