FuzzyMSSmall

Доступно с лицензией Spatial Analyst.

Сводка

Задает нечеткое множество с помощью функции, основанной на среднем и стандартном отклонении, причем чем меньшее значение имеет элемент множества, тем ближе его номер к 1.

Описание

Инструмент, использующий объект FuzzyMSSmall object: Fuzzy Membership (Нечеткое множество).

Есть два уравнения для функции MS Small, в зависимости от значения произведения a * m.

  • Если x > a * m:

    u(x) = (b * s) / (x - (a * m) + (b * s))

    • , где:

      m = среднее

      s = стандартное отклонение

      a = множитель среднего

      b = множитель стандартного отклонения

      Данные a and b множители являются входными параметрами.

  • Если x <= a * m:

    u(x) = 0

Функция MSSmal полезна, когда меньшие входные значения имеют больший номер элемента множества.

Входные значения могут быть положительными целочисленными значениями или положительными значениями с плавающей точкой.

Результат может быть похож на функцию нечеткого множества Маленький (Small), в зависимости от варианта определения множителей среднего и стандартного отклонения.

Синтаксис

 FuzzyMSSmall (meanMultiplier, STDMultiplier)
ParameterОбъяснениеТип данных
meanMultiplier

Множитель для среднего значения входных значений в уравнении функции MSLarge.

(Значение по умолчанию — 1)

Double
STDMultiplier

Множитель для стандартного отклонения входных значений в уравнении функции MSLarge.

(Значение по умолчанию — 1)

Double

Свойства

ВладениеОбъяснениеТип данных
meanMultiplier
(чтение и запись)

Множитель для среднего значения входных значений в уравнении функции принадлежности.

Double
STDMultiplier
(чтение и запись)

Множитель для стандартного отклонения входных значений в уравнении функции принадлежности.

Double

Пример кода

FuzzyMSSmall. Пример 1 (окно Python)

Иллюстрирует создание класса FuzzyMSSmall и его применение в инструменте FuzzyMembership (Нечеткое множество) в окне Python.

import arcpy
from arcpy.sa import *
from arcpy import env
env.workspace = "c:/sapyexamples/data"
outFzyMember = FuzzyMembership("as_std", FuzzyMSSmall(1.2, 3.2))
outFzyMember.save("c:/sapyexamples/fzymssml")
FuzzyMSSmall. Пример 2 (автономный скрипт)

Выполняет FuzzyMembership с использованием класса FuzzyMSSmall.

# Name: FuzzyMSSmall_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 = "as_std"

# Create the FuzzyMSSmall algorithm object
meanMultiply = 1.5
stdMultiply = 1
myFuzzyAlgorithm = FuzzyMSSmall(meanMultiply, stdMultiply)

# Execute FuzzyMembership
outFuzzyMember = FuzzyMembership(inRaster, myFuzzyAlgorithm)

# Save the output
outFuzzyMember.save("c:/sapyexamples/fzymssml2")

Связанные разделы