Landforms I: Hammond

Hammond-type macro landform mapping is accomplished using a DEM and the Spatial Analyst extension. Hammond’s method was created for region-scale landform delineation. The steps below were reworked from Morgan et al. (2005). You should have this paper handy. I have retained Morgan’s workflow, but modified the size and shape of their focal statistics neighborhood operator (changed from a 20×20 pixel radius to a 50×50 pixel rectangle), clarified reclassification routines, and updated language to match that used by ArcGIS Desktop. Input and output filenames are in quotes. We’ll do the Hammond/Dikau landform model here. Look for the MORAP landform model in its own lesson. Instructions revised May 2016.

LANDFORM = SLOPE + RELIEF + PROFILE

Tools You Will Use:
Focal Statistics: Spatial Analyst tools > Neighborhood > Focal Statistics
Reclassify: Spatial Analyst tools > Reclass > Reclassify
Slope: Spatial Analyst tools > Surface > Slope
Raster Calculator: Spatial Analyst tools > Map Algebra > Raster Calculator
Project Raster: Data Mgmnt tools > Projects and Transf > Raster > Project Raster
Clip: Data Management tools > Raster > Raster Processing > Clip


SET UP

1.) Acquire a 30m DEM from EarthExplorer (earthexplorer.usgs.gov) or see DEM Data Sources.

2.) Project DEM = “NED”. For example: GCS_NAD83 to NAD83_UTM_Zone12.

3.) Change Viewframe display coordinate system to NAD83_UTM_Zone12 (View > Data Frame Properties > Coordinate System tab > Select…)


SLOPE INPUT PARAMETER

4.) Create Slope raster, percent rise. Output raster name = “slope_p”.

5.) Reclassify Slope raster to delineate areas with slopes less than 8% from areas with slopes greater than 8%. Use the slope raster as the input. Use the Reclassify tool to create 2 classes (lump Old Values into 2 groups, 0% – 8% and 8% – maximum%) to create New Values. Set the class Break values at 8% and the maximum slope value in the distribution (usually the default value). Break values always represent the upper value for the range of values to be classified. Set the New Values of 0 for pixels with slopes less than 8%. Set a New Value of 1 for slopes less than 8%. Name the output raster “slope_reclass”.
This is raster reclassification. Reclassification involves chopping up the histogram and assigning new values (grouping pixels into classes, each of which will get a new value). The goal of this step is to identify flat areas at the resolution of the DEM – a preliminary step in the landform delineation process. You start with the histogram of pixel values in your raster. Determine the number of classes needed (in this case 2). Determine what the range of pixel values will be included in each (identify break value). The break value here is 8. Now assign all the pixels in the first class the value of 0 and the second a value of 1. The original slope values go away and you are left only with values of 0 (nearly level pixels) and 1 (steeper pixels).

6.) Save .mxd.

7.) “Map6” = Focal Stats, input = slope_reclass, 50×50 cell, rectangle, sum.
This step smooths the slope raster using a 50 pixel neighborhood, which produces a more coherent, less noisy map.

8.) “Map7” = Open attribute table for slope_reclass raster. Calculate percentage of class 0 pixels. Write this down. This is the percentage of “nearly level land” in your project area.
This step should probably go before the Save Your Work step (Step #6), since the input is slope_reclass. Anyway, the goal here is to simply determine how many pixels constitute each class (0=nearly level land, 1=steeper areas). In the example…

Example:
Nearly Level Land = Class 0 = 89,635 pixels = 14% of total pixel count
Steeper = Class 1 = 549,990 pixels = 86% of total pixel count
Total pixel count for the raster = 639,625 pixels

So, for this example dataset, you would write down 89,635 pixels (14%) for Nearly Level Land.

9.) “Map8” = Reclassify, input = Map6, 4 classes, toggle to show break values where the default maximum is 100. If you do not toggle to get correct values (the little button with % on it), you will regret it. Use Break Values = 20, 50, 80, 100 corresponding to the New Values = 400, 300, 200, 100 (<– these 4 New Values may be listed in reverse order; I’m checking original source papers by Hammond and Morgan et al.. Thanks for the heads up, Mateus!).
This step reclassifies the smoothed slope raster into 4 classes, where smoothed slope pixels (old values) get assigned new values based on the 4 break values…

(old values) 0 to 20 –> 400 (new value)
(
old values) 20 to 50 –> 300 (new value)
(
old values) 50 to 80 –> 200 (new value)
(
old values) 80 to 100 –> 100 (new value)


RELIEF INPUT PARAMETER

10.) “Map9” = Focal Stats, input = projected DEM, 50×50 cell, rectangle, max.

11.) “Map10” = Focal Stats, input = projected DEM, 50×50 cell, rectangle, min.

12.) “Map11” = Raster Calculator equation –>     “Map9”-“Map10”

13.) “Map12” = Reclassify, input = Map11, 6 classes, BVs = 30, 90, 150, 300, 900, max value, New Values = 10, 20, 30, 40, 50 60.


PROFILE INPUT PARAMETER

14.) “Map13” = Raster Calculator     “Map11″/2.

15.) “Map14” = Raster Calculator equation –>    “Map10″+”Map13”

16.) “Map15” = Raster Calculator equation –>     “Map14”-“NED”

17.) “Map16” = Reclassify, input = Map15, 2 classes, BVs = 0,  max value, New Values = 1, 2.
Note: When setting Break Values, toggle the “%” button to find the correct value range to classify (there are two choices). Otherwise, your break values won’t make sense. The correct one has a minimum value that is a negative number. Values greater than zero are “lowlands”. Values less than zero are “uplands”.

18.) “Map17” = Reclassify, input = Map16, BVs = 1, max, New Values = 1, 0.

19.) “Map18” = Raster Calculator equation –>     “Map17″*”slope_reclass”

20.) “Map19” = Focal Stats, input = Map18, 50×50 cell, rectangle, sum.

21.) “Map20” = Raster Calculator equation –>     Float(“Map6”)

22.) “Map21” = Raster Calculator equation –>     “Map19″/”Map20”

23.) “Map22” = Raster Calculator equation –>     “Map17″*”Map21”

24.) “Map23” = Reclassify, input = Map22, 3 classes, BVs = 0, 75, 100, New Values = 0, 2, 1.
25.) “Map24” = Reclassify, input = Map16, Bvs = 1, max value, New Values = 0, 1.

26.) “Map25” = Raster Calculator equation –>     “slope_reclass”*”Map24”

27.) “Map26” = Focal Stats, input = Map25, 50×50 cell, rectangle, sum.

28.) “Map27” = Raster Calculator equation –>     “Map26″/”Map20”

29.) “Map28” = Raster Calculator equation –>     “Map24″*”Map27”

30.) “Map29” = Reclass, input = Map28, 3 classes, BVs = 50, 75, 100, New Values = 0, 3, 4.

31.) “Map30” = Raster Calculator equation –>     “Map23″+”Map29”

32.) “Map31” = Reclass, input = Map30, 2 classes, BVs = 0, maximum, New Values = 0, 1.

33.) “Map32” = Raster Calculator equation –>     “Map8″+”Map12”
Note: This is the Hammond Landform raster.


LANDFORM MODEL

34.) “Map33” = Raster Calculator equation –>     “Map32″+”Map31”

35.) Reclassify landform map according to Dikau’s landform codes. New Values and BVs are below:
11   411-414
12   421-424
13   311-321
14   321-324
21   433-434, 333-334
22   443-444, 343-344
23   453-454, 353-354
24   463-464, 363-364
31   431-432, 331-332
32   441-442, 341-342
33   451-452, 351-352
34   461-462, 361-362
41   211-214
43   231-234
44   241-244
45   251-254
46   261-264
51   111-114
52   121-124
53   131-134
54   141-144
55   151-154
56   161-164

37.) “Map35” = Focal Stats, input = Map34, 5×5 cell, rectangle, majority.
Note: Majority filter removes small contrasting areas (noise). I’ve changed this from an 8×8 to a 5×5 neighborhood – Thanks Frank!

38.) Create a rectangle to use as a clipping boundary (or use an existing shapefile).

39.) “FinalMap” = Clip, input = Map35, output extent = clipping box shapefile, check the box “Use Input Features…”.

40.) Add a labels field to the attribute table for FinalMap to and type in labels:
11-Flat or nearly flat plains
12-Smooth plains with some local relief
13-Irregular plains with low relief
14-Irregular plains with moderate relief
21-Tablelands with moderate relief
22-Tablelands with considerable relief
23-Tablelands with high relief
24-Tablelands with very high relief
31-Planis with hills
32-Plains with high hills
33-Plains with low mountains
34-Plains with high mountains
41-Open very low hills
42-Open low hills
43-Open moderal hills
44-Open high hills
45-Open low mountains
46-Open high mountains
51-Very low hills
52-Low hills
53-Moderate hills
54-High hills
55-Low mountains
56-High mountains

40.) “FinalPolys” = Convert FinalMap to vector (polygons) with ArcToolbox > Conversion Tools > Raster to Polygon.

41.) Change symbology/color scheme.

42.) Create a hillshade raster, drag it to top of stack, change transparency to ~60%.

Refs:
Hammond (1964a,b)
Morgan et al., (2005) Developing Landform Maps Using ESRI’s ModelBuilder, ESRI User Conf. Proc, 11 pgs. PDF

Comments are closed.