Performing raster analysis using algebraic expressions

Complexity: Advanced Data Requirement: Use your own data

This workflow will describe how the Local Function can be used to perform complex algebra with one or more images to produce a visual result. This example will perform a calculation of the avalanche susceptibility of an area. The inputs for this analysis will be a digital elevation model (DEM) of the area, and derived layers from this elevation. Once all those layers are in place, the avalanche susceptibility index can be calculated by summing up the following factors:

NoteNote:

The values used in this workflow are for example purposes. If you are going to perform an actual avalanche susceptibility model, you should do more research to find values that are relevant for your particular study area.

The following workflow takes you through the steps to create a raster that represents avalanche susceptibility through its pixel values. A higher pixel value represents a higher susceptibility to avalanches. The requirements for this workflow are three rasters: a DEM with pixel values in feet, a plan curvature calculation from the pixel values of the DEM, and a profile curvature calculation. We will also be calculating the slope and aspect of the DEM values, which will be performed on the fly.

LicenseLicense:

The Spatial Analyst license needs to be enabled in order to use the Local Function and the Curvature tool.

Set up the DEM

First, you need to set up the DEM so that you can insert the Local Function.

Steps:
  1. Add the DEM into ArcMap.
  2. In the Image Analysis window, select the DEM.
    Choose the DEM from the Image Analysis window
  3. Click the Add Function button Add Function.

    This brings up the Raster Function Editor window.

Set up summation of the five factors

When using a Local Function, sometimes you need to set up the result before you actually perform each algebraic operation. The section is setting up the architecture of the susceptibility index.

Steps:
  1. Right-click Dem_ft.tif, point to Insert, and choose Local Function.
    Insert the Local Function into the function chain

    The Spatial Analyst license needs to be enabled in order to use the Local Function.

  2. Set the operation to Sum, which is under the Cell Statistics section.
    Choose the Sum operator
  3. Select the input raster in the list of Input Rasters.
  4. Click the Add Item button Add Item and select Add reference to selected input.
    Add reference to selected input
  5. Repeat step 4 one more time so that there are two Dem_ft.tif entries.
  6. Click the Add Item button Add Item again and click Add raster from disk.
    Add raster from disk
  7. Browse to your plan curvature raster dataset and add it.
  8. Repeat steps 6 and 7 for your profile curvature raster dataset.
    Add profile curvature
  9. Rename the Local Function on the top of the chain to Sum.
    Change the name of the branch to Sum
  10. You have now set up the five factors for the susceptibility index. Refer to each of these factors as a branch in the following sections.
    The five factors of the Sum function have been set up

Finding pixels above 4,000 feet

On the first branch within the Local Function, select pixels greater than 4,000 feet.

Steps:
  1. Insert a Local Function on the first branch.
    Insert a Local Function on the first branch
  2. Set the operator to Greater Than, which is under the Logical section.
  3. Click the Add Item button Add Item and click Add scalar.
    Add scalar
  4. Enter a value of 4000 and click OK.
    Enter a value of 4000
  5. On the General tab, set the function name to Greater Than 4000 and click OK.
    Rename the function branch to Greater Than 4000

Finding pixels within our slope tolerance

On the second branch within the Local Function, select pixels that have a slope range between 25 degrees and 45 degrees.

Steps:
  1. Add a slope function on top of the second branch. Add a Slope Function
  2. Add a local function on top of the Slope Function.
    Add a Local Function on top of the Slope Function
  3. Select the first input raster in the Input Rasters section.
  4. Click the Add Item button Add Item and select Add copy of selected input. Click OK.
    Add copy of selected input
  5. Select the operator Boolean And and name the function Boolean And on the general tab. Click OK.
    Rename the second branch to Boolean And
  6. Add a local function on top of the first slope branch. Select operator greater than and add a scalar of 25.
    Greater Than 25
  7. Add a local function on top of the second slope branch. Select operator less than and add a scalar of 45.
    Less Than 45
  8. Minimize the chains on the first two branches to make it easier to see.
    Current status of the Function Chain

Finding pixels within our aspect tolerance

On the third branch, select pixels that have an aspect between 135 degrees and 225 degrees.

Steps:
  1. Add an Aspect Function on top of the second branch. Add Aspect Function
  2. Add a local function on top of the Aspect Function.
  3. Select the first input raster in the Input Rasters section.
  4. Click the Add Item button Add Item, select Add copy of selected input, and click OK.
  5. Select the operator Boolean And and name the function Boolean And on the general tab. Click OK.
    Select Boolean And
  6. Add a local function on top of the first aspect branch. Select operator Greater Than and add a scalar of 135.
    Greater Than 135
  7. Add a local function on top of the second aspect branch. Select operator Less Than and add a scalar of 225.
    Less Than 225

Setting the plan curvature and profile curvature tolerance

On the fourth and fifth branches of the Local Function, set the plan curvature and profile curvature thresholds. On the plan curvature branch select pixels that are greater than 0. On the profile curvature branch, select pixels less than 0.

Steps:
  1. On the plan curvature branch, add a Local Function, select operator Greater Than, and add a scalar of 0.
    Plan curvature greater than 0
  2. On the profile curvature branch, add a local function, select operator Less Than, and add a scalar of 0.
    Profile curvature less than 0

    The final Local Function chain should look like the following.

    Final function chain

The result of this Local Function will be a raster dataset with values ranging from zero to five. A value of zero and one (green) will have a low susceptibility for an avalanche and a value of four and five (orange and red) will have a high susceptibility.

Final susceptibility map

Related Topics

9/10/2014