Summary
Converts an input raster to a range of 0 to 1 values to indicate its degree of membership to a collection, based on the specified fuzzing algorithm.
A value of 1 means that it is fully subordinate to the fuzzy set, and the duty drop is 0 o'clock, which means that it is not a member of the fuzzy set.
Usage
· The tool is unable to measure categorical data. To use categorical data for fuzzy overlay analysis, you need to perform preprocessing operations. You can create a model or run the following geoprocessing tools. First, use the reclassify tool to get a new range of domains (for example, 1 to 100). The reclassified result is then divided by a factor (for example, 100) so that the output value is normalized to a value between 0.0 and 1.0.
· Divergence (Spread) determines the speed at which the fuzzy membership decreases from 1 to 0. The larger the value, the steeper the blurring around the midpoint. In other words, as the divergence (spread) decreases, the speed at which the fuzzy membership is close to 0 decreases. Choosing the appropriate divergence (spread) value is a subjective process that depends on the value range of the definite value. For Gaussian functions and near functions, using the default value of 0.1 is a good starting point. In general, values change within the range of [0.01–1] or [0.001-1], respectively. For the small value (Small) function and the large value (Large) function, using the default value of 5 is a good starting point, and generally, the value varies between 1 and 10.
· You may sometimes encounter situations where no one input value guarantees that 100% belongs to the specified collection. In other words, there is no one input value of the fuzzy membership of 1. In this case, you may need to readjust the size of the fuzzy membership to reflect the new scope. For example, if the maximum membership degree of an input value is 0.75, you can obtain a new range by multiplying each fuzzy membership by 0.75来.
· The hedges implemented are Very and somewhat. Very, also known as concentration, is defined as the square of the fuzzy membership function. Somewhat, also known as bloat or more or less, is the square root of a fuzzy membership function. Very and somewhat hedges can reduce and enlarge fuzzy membership function respectively.
· The small value (Small) and the large value (Large) Membership function do not accept negative values.
· For a linear (Linear) membership function, the input raster must be serialized data. The minimum value can be less than the maximum value to create a positive slope function, or it can be greater than the maximum value to create a negative slope function to accommodate this transformation.
If the minimum value is less than the maximum value, a positive slope function is used for the transformation, and a negative slope function is used if the minimum value is greater than the maximum value.
Grammar
Fuzzymembership (In_raster, {fuzzy_function}, {hedge})
Code instance
Fuzzy Membership (Fuzzymembership) Example 1 (Python window)
The example creates a fuzzy membership raster with a Gaussian function, where the value of the elevation value closer to the midpoint (1,200 ft) is greater than the degree of membership.
Import arcpy
From ARCPY.SA Import *
From arcpy Import env
Env.workspace = "C:/sapyexamples/data"
Outfzymember = fuzzymembership ("Elevation", Fuzzygaussian (1200, 0.06))
Outfzymember.save ("C:/sapyexamples/fzymemb")
Fuzzy Membership (Fuzzymembership) Example 2 (stand-alone script)
The example creates a fuzzy membership raster with a Gaussian function and a divergence of 0.4, where elevation values closer to the midpoint ($ ft) are more subordinate.
# Name:FuzzyMembership_Ex_02.py
# Description:scales input raster data into values ranging from zero to one
# indicating the strength of a membership in a set.
# requirements:spatial Analyst Extension
# Import System Modules
Import arcpy
From arcpy Import env
From ARCPY.SA Import *
# Set Environment settings
Env.workspace = "C:/sapyexamples/data"
# Set Local Variables
Inraster = "Elevation"
# Create the Fuzzygaussian algorithm object
Midpoint = 1000
Spread = 0.4
Myfuzzyalgorithm = Fuzzygaussian (midpoint, spread)
# Check out the ArcGIS Spatial Analyst extension License
arcpy. Checkoutextension ("Spatial")
# Execute Fuzzymembership
Outfuzzymember = Fuzzymembership (Inraster, Myfuzzyalgorithm)
# Save the output
Outfuzzymember.save ("C:/SAPYEXAMPLES/FZYMEMB2")
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
ArcGIS Tutorial: Fuzzy Membership