Introduction‎ > ‎

Readme for GCD 5.X

GNU License

Developer can be contacted at or Joe Wheaton, Department of Watershed Sciences, Utah State University, 5210 Old Main Hill, Logan, UT 84322-5210, USA. Source code can be acquired from developer by request.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.  

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see (GLP v2 license).

If you do choose to modify the source code and redistribute it, please cite the Wheaton et al. (2010b) paper accordingly.

What does it do?

The GCD 5 software was developed primarily for morphological sediment budgeting in rivers (i.e. geomorphic change detection). The volumetric change in storage is calculated from the difference in surface elevations from digital elevation models (DEMs) derived from repeat topographic surveys. As each DEM has an uncertain surface representation (which might vary in space and time), GCD 5 provides a suite of tools for quantifying those uncertainties and propagating them through to the DEM of difference (DoD). The program also provides ways for segregating the best estimates of change spatially using different types of masks. The overall suite of tools is more generically applicable to many different spatial change detection problems.


Thank you for downloading our GCD 5 Software. This version of the software is only available as an ArcGIS 10 plugin (toolbar).


User Requirements:

  • Some understanding of DEM differencing and geomorphic change detection (tutorials and workshops available)
  • Familiarity with ArcGIS. If its been a while since you've used ArcGIS and you want a refresher, you may find these 'Getting Organized and Oriented' pages helpful, or you may find Task 1 of this Intro to GIS Lab Exercise  helpful (don't bother with the making a website portion; Task 2 and 3).

System Requirements:

  • DotNet 3.5 or later installed (Automatic if you have Windows 7; how to check if you have DotNet for XP Pro users)
  • Access to a User Account with Administrative Privileges is mandatory. You cannot install ArcGIS, or the GCD Software plugin without it.
  • Wireless network access
  • For ArcGIS to run efficiently in Windows 7, 4 GB or more of RAM is recommended (2 GB RAM minimum for either Windows 7 or XP)
See this page to see what we cover in checking our workshop participants machines.

Input Data Requirements:

Everything you need to run this software can be derived from a raw x-y-z point cloud of your topographic survey data. From this you can build a TIN or terrain surface and derive a raster DEM. You can also derive a point density grid and slope analysis (the only two required inputs for the default fuzzy inference system). The basic requirements are:

  • Input data are on colinear rasters of equal extent and resolution (how do I do that?)
  • Input elevation data are assumed to be:
    • In linear horizontal units and on the same vertical datum between surveys
    • Pre-processed to remove systematic errors and obvious busts (see pages 9-15 of this tutorial for help)
  • Inputs to Fuzzy Inference system:
    • If you use slope input rasters, slope should be calculated as a percent slope
    • If you use point density rasters, point density should be calculated in points per square meter (I tend to use a 5 m square moving window to do this calculation)
    • If you use roughness input rasters, roughness heights should be reported in the same spatial units as the elevation data.
    • If you use 3D GPS Point quality input rasters, quality should be reported in the same spatial units as the elevation data.
    • If you use water depth input rasters, depth should be reported in the same spatial units as the elevation data.
  • Inputs to Geomorphic Interpretation / Masking
    • A polygon feature class mask with at least one text field describing the different geomorphic units.

Installation Procedure

Make sure that ArcGIS is not running and that any previous versions of GCD 5 are uninstalled (note GCD 4 installations can be installed concurrently). Locate the downloaded installation file (*.msi) and run it.

Confirm the installation by clicking next on the Next button. After you’ve completed the installation hit finish.

To use the software, you will need to start ArcGIS ArcMap. Right click on the toolbar area and make sure that the ‘Geomorphic Change Detection (GCD)’ toolbar is checked on. Once you’ve turned it on, the toolbar will appear:

You can dock the toolbar if you wish by dragging it onto the toolbar space.


Open your Control Panel, and go to uninstall or change program. It is important that if you wish to uninstall ArcGIS, that you first uninstall the Geomorphic Change Detection by ESSA Technologies. It will not be able to uninstalled if ArcGIS has already been uninstalled.

Source Code & Other Versions

GCD 5 was made to extend the functionality of GCD 4 and as an alternative to the Matlab Code in earlier versions, which required users to have a Matlab License, the Matlab Fuzzy Logic Toolbox installed, and a limited knowledge of Matlab. That version was made available to accompany a paper published in Earth Surface Processes and Landforms (Wheaton et al., 2010b),  the Wheaton (2008) thesis, and the Wheaton et al. (2010a) RRA paper.  That code was provided as supplemental information with the ESPL paper so that readers could test or extend the code as they see fit for their purpose. The main library for this version is available upon request for educational, research and non commercial purposes. However, as it is a C++ library and Visual Studio.NET. The GCD 5.0 plugin to ArcGIS is freeware, coded in VisualBasic.Net. We are not currently providing this source code as it leverages ArcObjects and is not easy to adapt without breaking. It is not anticipated that many/any users will be wanting to get under the bonnet. If you really do, call us.

Future Releases & Updates

The GCD software is under ongoing active development by Joe Wheaton, North Arrow Resarch, ESSA Technologies and GCMRC of the USGS. Pending avaialble funding, future releases will be posted to this website.


No formal support is available with this free software. We encourage you to see if a solution exists in these help pages first and use the GCD Discussion Board to post questions.

Good luck.


The original Matlab versions were coded by  Joe Wheaton (Utah State University Department of Watershed Sciences)  and James Brasington (University of Canterbury) with financial support from the University of Southampton School of Geography, Aberystwyth University Institute for Geography and Earth Sciences. This  version of the GCD is currently under development by ESSA Technologies.  The underlying C++ library that boasts most of the core functionality was coded by Chris Garrard (Utah State University RSGIS Lab), under the direction of Joe Wheaton and with generous financial support from ICRRR as part of GCD 4.


  • Wheaton JM. 2008. Uncertainty in Morphological Sediment Budgeting of Rivers. Unpublished PhD, University of Southampton, Southampton, 412 pp. Available at:
  • Wheaton JM, Brasington J, Darby SE, Merz JE, Pasternack GB, Sear DA and Vericat D. 2010a. Linking Geomorphic Changes to Salmonid Habitat at a Scale Relevant to Fish. River Research and Applications. 26: 469-486. DOI: 10.1002/rra.1305.
  • Wheaton JM, Brasington J, Darby SE and Sear D. 2010b. Accounting for uncertainty in DEMs from repeat topographic surveys: Improved sediment budgets Earth Surface Processes and Landforms. 35(2): 136-156. DOI: 10.1002/esp.1886.