Доступно с лицензией Spatial Analyst.
Сводка
Использует алгоритм кластеризации изоданных для определения характеристик естественных групп ячеек в многомерном атрибутивном пространстве и хранит результаты в выходном ASCII-файле сигнатур.
Использование
Инструмент Изокластер выполняет кластеризацию многомерных данных, объединенных в списке входных каналов. Результирующий файл сигнатур может быть использован в качестве входных данных для инструмента классификации, например, Классификации по методу максимального подобия, который приводит к созданию классифицированного растра без обучения.
Если многоканальный растр указан как один из входных для параметра Входные каналы растра (in_raster_bands в Python), будут обработаны все каналы.
Чтобы обработать выбранные каналы многоканального растра, сначала создайте новый набор растровых данных, состоящий только из необходимых каналов, с помощью инструмента Объединить каналы, затем укажите полученный набор как Входной растр (in_raster_bands в Python).
Минимальное действительное значение для числа классов равно двум. Максимально возможное число классов не ограничено. В общем случае, определение большего числа кластеров предполагает необходимость выполнения большего числа итераций.
Чтобы предоставить достаточно качественную статистику, необходимую для создания файла сигнатур, который будет использоваться в последующей классификации, каждый кластер должен содержать достаточное для адекватного представления кластера количество ячеек. Значение, вводимое для минимального размера класса, должно быть примерно в 10 раз больше, чем число слоев на входных каналах растра.
Значение, вводимое для интервала выборки, указывает, что в вычислениях кластера используется одна ячейка из каждого блока размером n-на-n.
Вы не должны объединять или удалять классы, либо менять какую-либо статистику, включенную в ASCII-файл сигнатур.
Как правило, чем больше ячеек содержится в экстенте пересечения входных каналов, тем большие значения должны быть заданы для минимального размера класса и интервала образца. Значения, вводимые для интервала выборки, должны быть достаточно малы с тем, чтобы корректно создать кластер для самых небольших участков, соответствующих категориям во входных данных, которые вы хотите отобразить.
Значения идентификаторов классов (ID) в выходном файле сигнатур начинаются с единицы и последовательно увеличиваются до числа входных классов. Номера классам присваиваются случайным образом.
Будут получены лучшие результаты, если все входные каналы будут иметь одинаковые диапазоны данных. Если каналы имеют сильно различающиеся диапазоны данных, эти диапазоны могут быть преобразованы в один и тот же диапазон при помощи Алгебры карт, чтобы уравнять их.
where: Z is the output raster with new data ranges. X is the input raster. oldmin is the minimum value of the input raster. oldmax is the maximum value of the input raster. newmin is the desired minimum value for the output raster. newmax is the desired maximum value for the output raster.
См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
IsoCluster(in_raster_bands, out_signature_file, number_classes, {number_iterations}, {min_class_size}, {sample_interval})
Parameter | Объяснение | Тип данных |
in_raster_bands [in_raster_band,...] | Входные каналы растров. Они могут быть целочисленными или с плавающей точкой. | Raster Layer |
out_signature_file | Выходной файл сигнатур. Необходимо задать расширение .gsg. | File |
number_classes | Число классов, в которые будут сгруппированы ячейки. | Long |
number_iterations (Дополнительный) | Число итераций, выполняемых в процессе кластеризации. Значение по умолчанию равно 20. | Long |
min_class_size (Дополнительный) | Минимальное число ячеек в действительном классе. Значение по умолчанию равно 20. | Long |
sample_interval (Дополнительный) | Интервал, который будет использован для выборки. Значение по умолчанию равно 10. | Long |
Пример кода
В этом примере создается файл сигнатур для классификации входного многоканального растра на классы.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
IsoCluster("redlands", "c:/sapyexamples/output/isosig.gsg", 5, 20, 50, 15)
В этом примере создается файл сигнатур для классификации входного многоканального растра на классы.
# Name: IsoCluster_Ex_02.py
# Description: Uses an isodata clustering algorithm to determine the
# characteristics of the natural groupings of cells in multidimensional
# attribute space and stores the results in an output ASCII signature file.
# 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 = "redlands"
outSig = "redlndiso.gsg"
classes = 5
cycles = 20
minMembers = 50
sampInterval = 15
# Execute IsoCluster
IsoCluster(inRaster, outSig, classes, cycles, minMembers, sampInterval)
Environments
Информация о лицензиях
- Basic: Требуется Spatial Analyst
- Standard: Требуется Spatial Analyst
- Advanced: Требуется Spatial Analyst