How Multiscale Surface Difference works

Available with Spatial Analyst license.

The Multiscale Surface Difference tool calculates the maximum difference from the mean elevation across a range of spatial scales (neighborhoods ranging in size). The outputs of this tool identify this maximum difference for a cell and the scale at which it was found.

The outputs can be used to interpret features on the input surface raster and their associated spatial scales. The example below shows the results of two different scales for the same surface. The first image (left) used a scale of 29 cells by 29 cells while the second image (right) used a scale of 49 cells by 49 cells. Here the smaller scale is more sensitive to local variation in the landscape and captures smaller surface features. On the other hand, the larger scale shows less detail by only capturing larger surface features.

Example difference output at two different scales
Maximum difference from the mean elevation at the same extent is shown for two different scales, a small scale (second graphic) and a larger scale (third graphic).

How the maximum difference value is calculated

The following steps provide an overview of the internal processes used by the tool:

  1. The scales for analysis are defined using the Minimum Neighborhood Distance, Maximum Neighborhood Distance, and Distance Increment parameters. The units of these parameters are controlled by the Distance Units parameter.
  2. For each cell, the mean elevation is calculated at each identified scale. The value of the center cell in the neighborhood is then compared to the mean to identify the maximum difference from the mean.
  3. The calculated maximum differences are compared across scales.

Each of these steps are explained in more detail in the sections below.

How the scales to analyze are identified

The scales for analysis are determined using the optional parameters in the Multiscale Surface Difference tool. The Minimum Neighborhood Distance and Maximum Neighborhood Distance parameters set the minimum and maximum scales for analysis. The Distance Increment parameter controls the increase in neighborhood distance between the minimum and maximum.

Each scale is represented as a neighborhood distance value. Analysis is performed for multiple neighborhood distances depending on the input parameter settings.

For a given target cell, the neighborhood distance is measured from the target cell center outward, creating a square of cells around the target cell. For example, a neighborhood distance of 30 meters for an input surface raster with a 10 meter cell size results in a neighborhood that is 7 cells by 7 cells, as shown in the figure below. This value, 30 meters, would be one of the scales for which the maximum difference from the mean is calculated.

Relationship between neighborhood distance and the number in pixels of the moving window
The relationship between neighborhood distance (orange line) and the number in pixels of the moving window is shown. For a cell size of 10 meters, a neighborhood distance of 10 meters will use a 3 by 3 cell window (this is the default), a neighborhood distance of 20 meters will use a 5 by 5 cell window, and a neighborhood distance of 30 meters will use a 7 by 7 cell window.

The smallest allowed neighborhood distance is equal to the cell size of the input raster. This is a value of 1 cell, and creates a 3 by 3 neighborhood of cells. In the example above, this minimum is a neighborhood distance of 5 meters.

The neighborhood distance cannot be larger than the input surface raster.

If a neighborhood distance that does not result in an interval of the cell size is specified, the tool will round the distance up to the next interval of the cell size. For example, in the illustration above, if a neighborhood distance of 25 meters is specified, it will round up to the next interval of the cell size, which is 30 meters.

All neighborhood distance values are identified first. Calculations start with the Minimum Neighborhood Distance parameter value and then each subsequent neighborhood distance is calculated by adding the Distance Increment parameter value to the current neighborhood distance.

Every new neighborhood distance identified is checked to determine if it is less than or equal to the Maximum Neighborhood Distance value. If the new distance value is less than or equal to the maximum, neighborhood distance calculations continue. If the new value is greater than the maximum, all neighborhood distances have been identified and difference calculations begin.

How maximum difference is calculated

For each neighborhood distance identified for calculation and each cell in the input surface raster, the Multiscale Surface Difference tool calculates the mean of each neighborhood. An integral image approach is utilized for efficient computation of the mean values (Lindsay et al., 2015). Then the difference between the center cell's value and the neighborhood's mean is found. The largest difference values are identified and recorded in the Output Difference Raster parameter value. The scales at which those differences were found are recorded as the cell values in the Output Scale Raster parameter value.

Use of a GPU

This tool can deliver increased performance if you have certain GPU hardware installed on your system. See GPU Processing with Spatial Analyst for details on how this capability is supported, how to configure it, and how to enable it.

References

Lindsay, John B., Jaclyn M. H. Cockburn, Hanzen A. J. Russell. 2015. "An integral image approach to performing multi-scale topographic position analysis." Geomorphology Volume 245, pp. 51–61. https://doi.org/10.1016/j.geomorph.2015.05.025

Newman, Daniel R., John B. Lindsay, and Jaclyn Mary Helen Cockburn. 2018. "Evaluating metrics of local topographic position for multiscale geomorphometric analysis." Geomorphology 312, 40–50. https://doi.org/10.1016/j.geomorph.2018.04.003

Related topics