Classify Bathymetric High Features

This tool classifies each bathymetric high feature into one of these 10 morphology feature types:

  • Seamount

  • Knoll

  • Hill

  • Cone

  • Mound

  • Plateau

  • Bank

  • Pinnacle

  • Ridge

  • Hummock

Based on the attibutes calculated using AddAttributes Toolset.

The classification scheme is based on this publication [Dove et al., 2020].

The classification rules largely follow the [Dove et al., 2020] scheme, with some modifications. They are as follows:

 1if LengthWidthRatio >= ridge_lwRationT:
 2    feature_type = "Ridge"
 3elif depthRange >= 1000:  # metres
 4    feature_type = "Seamount"
 5elif depthRange >= meanWidth:
 6    feature_type = "Pinnacle"
 7elif (profileShape == "Triangle") and ((profileSideSlope == "Moderate") or (profileSideSlope == "Steep")) and (polygonCircularity >= cone_circularityT):
 8    feature_type = "Cone"
 9elif (profileSlope == "Flat") and (minDepth <= bank_minDepth) and (polygonArea >= bank_areaT):
10    feature_type = "Bank"
11elif (profileSlope == "Flat") and (polygonArea > plateau_areaT) and ((one_profileSideSlope == "Moderate") or (one_profileSideSlope == "Steep")):
12    feature_type = "Plateau"
13elif depthRange >= 500:  # metres
14    if profileShape == "Regular":
15        feature_type = "Knoll"
16    else:
17       feature_type = "Hill"
18elif (depthRange <= hummock_depthRangeT) and (polygonArea <= hummock_areaT):
19    feature_type = "Hummock"
20else:
21    feature_type = "Mound"

Where:

  • LengthWidthRatio is the LengthWidthRatio attribute

  • depthRange is the depthRange attribute

  • meanWidth is the mean_width attribute

  • profileSlope is evaluated either from the profile_top_SlopeClass attribute when the profileShape is not Triangle or from the profile_side_SlopeClass attribute when the profileShape is Triangle or from the combination of both attributes

  • profileSideSlope is the profile_side_SlopeClass attribute

  • minDepth is the minDepth attribute

  • profileShape is the profileShape attribute

  • polygonCircularity is the Cirularity attribute

  • polygonArea is the Shape_Area attribute.

Note that a range of default values have been set for those threshold values.

_images/highs.png
 1from arcpy import env
 2from arcpy.sa import *
 3arcpy.CheckOutExtension("Spatial")
 4
 5# import the python toolbox
 6arcpy.ImportToolbox("C:/semi_automation_tools/User_Guide/Tools/ClassificationFeature.pyt")
 7
 8env.workspace = 'C:/semi_automation_tools/testSampleCode/Gifford.gdb'
 9env.overwriteOutput = True
10
11# specify input and output parameters of the tool
12inFeat = 'test_BH'
13ridge_LWR = 5.0
14bank_MD = 200.0 # in meters
15bank_areaT = 1.0 # in km2
16plateau_areaT = 100.0 # in km2
17hummock_DR = 10.0 # in meters
18hummock_areaT = 1000.0 # in m2
19cone_C = 0.75
20
21### execute the tool with default parameters
22##arcpy.ClassifyFeatures.Classify_Bathymetric_High_Features_Tool(inFeat)
23# execute the tool with user-defined parameters
24arcpy.ClassifyFeatures.Classify_Bathymetric_High_Features_Tool(inFeat,ridge_LWR,bank_MD,bank_areaT,plateau_areaT,hummock_DR,hummock_areaT,cone_C)