Доступно с лицензией Spatial Analyst.
Краткая информация
Выполняет неконтролируемую классификацию на ряде каналов входного растра, используя инструменты Изокластер и Классификация по методу максимального подобия.
Более подробно о том, как работает инструмент Интерактивная Контролируемая Классификация
Использование
В этом инструменте скомбинированы функции инструментов Изокластер и Классификация по методу максимального подобия. Выдает классифицированный растр. Дополнительно выдает файл сигнатур.
Полученный в результате работы этого инструмента файл сигнатур может использоваться в качестве входных данных для другого инструмента классификации, например, Классификации по методу максимального подобия, для большего контроля параметров классификации.
Минимальное действительное значение для числа классов равно двум. Максимально возможное число классов не ограничено. В общем случае, определение большего числа кластеров предполагает необходимость выполнения большего числа итераций.
Чтобы предоставить достаточно качественную статистику, необходимую для создания файла сигнатур, который будет использоваться в последующей классификации, каждый кластер должен содержать достаточное для адекватного представления кластера количество ячеек. Значение, вводимое для минимального размера класса, должно быть примерно в 10 раз больше, чем число слоев на входных каналах растра.
Значение, вводимое для интервала выборки, указывает, что в вычислениях кластера используется одна ячейка из каждого блока размером n-на-n.
Вы не должны объединять или удалять классы, либо менять какую-либо статистику, включенную в ASCII-файл сигнатур.
Как правило, чем больше ячеек содержится в экстенте пересечения входных каналов, тем большие значения должны быть заданы для минимального размера класса и интервала образца. Значения, вводимые для интервала выборки, должны быть достаточно малы с тем, чтобы корректно создать кластер для самых небольших участков, соответствующих категориям во входных данных, которые вы хотите отобразить.
Значения идентификаторов классов (ID) в выходном файле сигнатур начинаются с единицы и последовательно увеличиваются до числа входных классов. Номера классам присваиваются случайным образом.
Имя выходного файла сигнатур должно иметь расширение .gsg.
Будут получены лучшие результаты, если все входные каналы будут иметь одинаковые диапазоны данных. Если каналы имеют сильно различающиеся диапазоны данных, эти диапазоны могут быть преобразованы в один и тот же диапазон при помощи Алгебры карт, чтобы уравнять их.
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.
Если входные данные представлены слоем, созданным на основании многоканального растра, содержащего более трёх каналов, операция будет выполняться для всех каналов, связанных с исходным набором данных, а не только для трёх каналов, которые загружены слоем (то есть, отображаются символами).
Существует несколько способов для указания поднабора каналов многоканального растра, которые нужно использовать в качестве входных данных инструмента.
- При использовании диалогового окна инструмента выберите многоканальный растр с помощью кнопки обзора , расположенной рядом с пунктом Каналы входного растра, откройте растр и выберите нужные каналы.
- Если многоканальный растр является слоем в Таблице содержания, можно использовать инструмент Создать растровый слой, чтобы создать новый многоканальный слой, содержащий только нужные каналы.
- Можно также создать новый набор данных, содержащий только нужные каналы, используя для этого инструмент Объединить каналы, входными данными для которого будет являться полученный набор данных.
- В Python нужные каналы можно указать как список напрямую в параметре инструмента.
См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
IsoClusterUnsupervisedClassification (Input_raster_bands, Number_of_classes, {Minimum_class_size}, {Sample_interval}, {Output_signature_file})
Параметр | Объяснение | Тип данных |
Input_raster_bands [in_raster_band,...] | Входные каналы растров. Они могут быть целочисленными или с плавающей точкой. | Raster Layer; Mosaic Layer |
Number_of_classes number_of_classes | Число классов, в которые будут сгруппированы ячейки. | Long |
Minimum_class_size minimum_class_size (Дополнительный) | Минимальное число ячеек в действительном классе. Значение по умолчанию равно 20. | Long |
Sample_interval sample_interval (Дополнительный) | Интервал, который будет использован для выборки. Значение по умолчанию равно 10. | Long |
Output_signature_file out_signature_file (Дополнительный) | Выходной файл сигнатур. Необходимо задать расширение .gsg. | File |
Возвращаемое значение
Название | Объяснение | Тип данных |
Output_classified_raster | Выходной классифицированный растр. | Raster |
Пример кода
IsoClusterUnsupervisedClassification, пример 1 (окно Python)
В этом примере выполняется неконтролируемая классификация, распределяющая входные каналы в 5 классов, и выдается классифицированный растр.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outUnsupervised = IsoClusterUnsupervisedClassification("redlands", 5, 20, 50)
outUnsupervised.save("c:/temp/unsup01")
IsoClusterUnsupervisedClassification, пример 2 (автономный скрипт)
В этом примере выполняется неконтролируемая классификация, распределяющая входные каналы в 5 классов, и выдается классифицированный растр.
# Name: IsoClusterUnsupervisedClassification_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"
classes = 5
minMembers = 50
sampInterval = 15
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute IsoCluster
outUnsupervised = IsoClusterUnsupervisedClassification(inRaster, classes, minMembers, sampInterval)
outUnsupervised.save("c:/temp/outunsup01.tif")
Параметры среды
Информация о лицензиях
- ArcGIS Desktop Basic: Требует Spatial Analyst
- ArcGIS Desktop Standard: Требует Spatial Analyst
- ArcGIS Desktop Advanced: Требует Spatial Analyst