In this guide
Processing Algorithms
Last Updated: January 5, 2024
PGC uses open-source libraries such as SETSM and ASP to generate stereo-derived elevation models.
Overview
The PGC primarily uses two open-source software packages for creating stereo-derived elevation models, SETSM and ASP.
More information is below on each of the software packages and algorithm details.
SETSM
The Surface Extraction with TIN-based Search Space Minimization (SETSM) algorithm was written by Myoung-Jong Noh and Ian Howat at The Ohio State University.
It uses a hierarchical image matching strategy that begins by matching one image to the other at a coarse resolution. Each iteration of the algorithm uses the results of the previous level to refine and limit the image search space.
Unlike other elevation extraction algorithms, SETSM employs a vertical line locus search strategy, which inverts the normal method by varying the assumed elevation of a given point, instead of the horizontal coordinate values, to find the best match.
This object-space matching approach allows SETSM to produce output at the full image resolution if desired. SETSM also iteratively refines the platform sensor model, reducing the bias introduced by satellite model uncertainty.
Refer to the SETSM homepage for more information and source code.
Both ArcticDEM and REMA are processed using SETSM
Publications
Myoung-Jong Noh, Ian M. Howat, The Surface Extraction from TIN based Search-space Minimization (SETSM) algorithm, ISPRS Journal of Photogrammetry and Remote Sensing, Volume 129, July 2017, Pages 55-76, ISSN 0924-2716, https://doi.org/10.1016/j.isprsjprs.2017.04.019.
Ames Stereo Pipeline (ASP)
The Ames Stereo Pipeline (ASP) was initially developed for Mars Global Surveyor satellite and built on technology for the Mars rovers.
A team at NASA Ames Research Center extended the toolkit to handle earth-orbiting satellites and they continue to support the open source project.
ASP uses an area-based image matching algorithm that searches for matching points on the two source images by comparing pixel patterns using a moving window within a search space constrained by the sensor collection geometry.
The ASP matching algorithm calculates a higher density of matched points than SETSM does for a given output resolution and requires downsampling in order ensure the statistical independence of the elevation values.
As a result, ASP output tends to have a smoother, more realistic look that SETSM, but is limited to three to five times the original imagery resolution.
The software development team for ASP is extremely helpful and responsive. The toolkit is well-developed and mature.
More information can be found on the ASP website.
For details on the accuracy and uses of ASP-derived elevation models, see:
Shean, D. E., O. Alexandrov, Z. Moratto, B. E. Smith, I. R. Joughin, C. C. Porter, Morin, P. J. 2016. An automated, open-source pipeline for mass production of digital elevation models (DEMs) from very high-resolution commercial stereo satellite imagery. ISPRS Journal of Photogrammetry and Remote Sensing. 116. View.\
Creating DEMs Using ASP
The PGC has designed a workflow for creating Digital Elevation Models using ASP with DigitalGlobe commercial imagery. You can download the workflow below.
Other Software
ASP and SETSM are open-source, Linux-based software packages that lend themselves to high performance and high throughput computing.
Many off-the-shelf commercial image analysis packages also offer DEM extraction modules. These packages tend to achieve high quality output using a graphical interface.
They are often easier to use and customize than the open-source packages, but can not be easily used to automate terrain extraction over a large set of input imagery.
These packages work extremely well for projects with limited geographic extent when the user is less familiar with the command line interface or does not have access to machines running the Linux OS.
Summary
In this Guide, we’ve covered:
- SETSM algorithm
- Ames Stereo Pipeline (ASP) algorithm
- Commercial DEM extraction software