Доступно с лицензией Spatial Analyst.
Краткая информация
Создаёт многоканальный растр каналов вероятности, при котором один канал создаётся для каждого класса, представленного в входном файле сигнатур.
Более подробно о том, как работает инструмент Вероятность классов
Использование
Любой файл сигнатур, созданный с помощью инструментов Создать сигнатуры, Редактировать сигнатуры или Изокластер, является действительным для использования в качестве входного файла сигнатур. Такой файл будет иметь расширение .gsg.
Данный инструмент производит расчет вероятностей классов по принципу байесовой статистики. Байесова статистика подразумевает подбор предварительной информации о данных с последующим обновлением этой информации после того, как информация собрана. Предварительная информация о значениях данных высчитывается с априорной вероятностью, затем информация корректируется функцией правдоподобия для получения апостериорной вероятности (обновленная информация). Функция правдоподобия определяется значениями данных для каждого класса/кластера.
Входной файл априорных вероятностей должен представлять собой ASCII-файл, состоящий из двух столбцов. Значения в левом столбце представляют идентификаторы классов (ID). Значения в правом столбце представляют априорные вероятности для соответствующих классов. Действительные значения априорных вероятностей для классов должны быть больше или равны нулю. Если для вероятности задано значение 0, то для классов в выходном многоканальном растре не будет создан связанный канал вероятности. Сумма заданных априорных вероятностей должна быть меньше или равна единице. Пример формата файла:
1 .3 2 .1 4 .0 5 .15 7 .05 8 .2
Классы, пропущенные в файле, получат среднюю априорную вероятность той части, которая останется от единицы. В примере выше, все классы с 1 по 8 представлены в файле сигнатур. Априорные вероятности классов 3 и 6 отсутствуют во входном файле априорной вероятности. Так как сумма всех вероятностей, определенных в файле выше, равна 0,8, остаток (0,2) делится на число не определенных классов (2). Следовательно, классам 3 и 6 будет присвоена вероятность, равная 0,1, каждому.
Расширения для входного файла априорной вероятности могут быть .txt или .asc.
Значение, вводимое для максимального выходного значения, задает верхний диапазон значений на выходных каналах вероятностей. Значение по умолчанию, равное 100, создает многоканальный растр, в каждом канале которого содержатся целочисленные значения в диапазоне от 0 до 100. Любое целочисленное значение, большее нуля, может быть максимальным выходным значением. Только использование для аргумента максимального выходного значения числа 'единица' приведет к созданию каналов, состоящих из значений с плавающей точкой.
Если входные данные представлены слоем, созданным на основании многоканального растра, содержащего более трёх каналов, операция будет выполняться для всех каналов, связанных с исходным набором данных, а не только для трёх каналов, которые загружены слоем (то есть, отображаются символами).
Существует несколько способов для указания поднабора каналов многоканального растра, которые нужно использовать в качестве входных данных инструмента.
- При использовании диалогового окна инструмента выберите многоканальный растр с помощью кнопки обзора , расположенной рядом с пунктом Каналы входного растра, откройте растр и выберите нужные каналы.
- Если многоканальный растр является слоем в Таблице содержания, можно использовать инструмент Создать растровый слой, чтобы создать новый многоканальный слой, содержащий только нужные каналы.
- Можно также создать новый набор данных, содержащий только нужные каналы, используя для этого инструмент Объединить каналы, входными данными для которого будет являться полученный набор данных.
- В Python нужные каналы можно указать как список напрямую в параметре инструмента.
См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
ClassProbability (in_raster_bands, in_signature_file, {maximum_output_value}, {a_priori_probabilities}, {in_a_priori_file})
Параметр | Объяснение | Тип данных |
in_raster_bands [in_raster_band,...] | Входные каналы растров. Они могут быть целочисленными или с плавающей точкой. | Raster Layer |
in_signature_file | Входной файл сигнатур, сигнатуры классов которого используются для создания каналов априорных вероятностей. Требуется расширение .gsg. | File |
maximum_output_value (Дополнительный) | Коэффициент, устанавливающий диапазон значений на выходных каналах вероятностей. По умолчанию, значения находятся в диапазоне от 0 до 100. | Long |
a_priori_probabilities (Дополнительный) | Задает, как будут определяться априорные вероятности.
| String |
in_a_priori_file (Дополнительный) | Текстовой файл, содержащий априорные вероятности для входных классов сигнатур. Входные данные для файла априорных вероятностей требуются, только если используется параметр ФАЙЛ. Расширением файла априорных вероятностей может быть расширение .txt или .asc. | File |
Возвращаемое значение
Название | Объяснение | Тип данных |
out_multiband_raster | Выходной многоканальный набор растровых данных. Он будет целочисленного типа. Если выходные данные – Esri Grid, имя файла не может иметь больше 9 символов. | Raster |
Пример кода
ClassProbability, пример 1 (окно Python)
В этом примере создается многоканальный растр каналов вероятностей для каждого класса файла сигнатур.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outClassProbability = ClassProbability("redlands","C:/sapyexamples/data/wedit5.gsg",
100,"EQUAL","")
outClassProbability.save("c:/sapyexamples/output/classprob")
ClassProbability, пример 2 (автономный скрипт)
В этом примере создается многоканальный растр каналов вероятностей для каждого класса файла сигнатур.
# Name: ClassProbability_Ex_02.py
# Description: Creates probability layers for each class in a 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 = "redl123"
inSigFile = "c:/sapyexamples/data/wedit5.gsg"
maxValue = 100
aPrioriWeight = "EQUAL"
aPrioriFile = ""
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ClassProbability
outClassProbability = ClassProbability(inRaster,inSigFile,
maxValue, aPrioriWeight, aPrioriFile)
# Save the output
outClassProbability.save("c:/sapyexamples/output/classprob01")
Параметры среды
Информация о лицензиях
- ArcGIS Desktop Basic: Требует Spatial Analyst
- ArcGIS Desktop Standard: Требует Spatial Analyst
- ArcGIS Desktop Advanced: Требует Spatial Analyst