Openness Tool Bathymetric High¶
This tool maps bathymetric high features from a bathymetric data using an openness based method [Yokoyama and Pike, 2002].
Smaller negative openness (NO) usually indicates bathymetric high location.
The followings are the key steps of this tool:
Calculate NO from the input bathymetry raster using the Openness Circle Radius parameter
Identify the possible tops of the bathymetric high features from the bathymetry raster based on ArcGIS’s Sink function
Calculate the NO threshold by using equation: (1), where c is the NO STD Scale Large parameter or the NO STD Scale Small parameter, mean_NO and STD_NO are the mean and standard deviation statistics of the NO raster
(1)¶\[NO\_threshold = mean\_NO - c * STD\_NO\]Select the first set of areas that have NO values smaller than the NO STD Scale Large threshold
Select the second set of areas that have NO values smaller than the NO STD Scale Small threshold
Further select from the two sets of areas only those areas that contain tops
These two new sets of areas are used together to identify individual bathymetric high features, through GIS overlay and selection analyses
If any polygons in the second set contain more than one polygon in the first set, the multiple polygons from the first set are selected as the first subset
If any polygons in the second set contain only one polygon in the first set, the polygons from the second set are selected as the second subset
Merge the above two subsets of polygons together to form a set of bathymetric high features
Remove the feature polygons with areas smaller than the Area Threshold parameter to obtain the final set of bathymetric high features as output
The openness radius should be large enough to capture the largest bathymetric high features in the dataset. For example, for a 5m resolution bathymetry raster, a radius of 50 cells should be used to capture any bathymetric high features that is smaller than 500m in length. Users should also experiment the NO STD Scale Large, the NO STD Scale Small and the Area Threshold parameters to obtain an optimal output solution.
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/BathymetricHigh.pyt")
7
8env.workspace = 'C:/semi_automation_tools/testSampleCode/Gifford.gdb'
9env.overwriteOutput = True
10
11# specify input and output parameters of the tool
12inBathy = 'gifford_bathy'
13outNO = 'gifford_no10'
14outFeat = 'no10_1std_300000m2_BH'
15areaT = '300000 SquareMeters'
16noRadius = 10
17noSTDLarge = 2.0
18noSTDSmall = 1.0
19tempWorkspace = 'C:/Users/u56061/Documents/ArcGIS/Projects/UserGuide/UserGuide.gdb'
20
21# execute the tool
22arcpy.BathymetricHigh.Openness_High_Tool(inBathy,outNO,outFeat,areaT,noRadius,noSTDLarge,noSTDSmall,tempWorkspace)