Доступно с лицензией Spatial Analyst.
Краткая информация
Создаёт многоканальный растр каналов вероятности, при котором один канал создаётся для каждого класса, представленного в входном файле сигнатур.
Более подробно о том, как работает инструмент Вероятность классов
Использование
Любой файл сигнатур, созданный с помощью инструментов Создать сигнатуры (Create Signature), Редактировать сигнатуры (Edit Signature) или Изокластер (Iso Cluster), является действительным для использования в качестве входного файла сигнатур. Такой файл будет иметь расширение .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. Действительным максимальным выходным значением может быть любое целое значение, которое больше нуля. Только использование для аргумента максимального выходного значения числа 'единица' приведет к созданию каналов, состоящих из значений с плавающей точкой.
Если входные данные представлены слоем, созданным на основании многоканального растра, содержащего более трёх каналов, операция будет выполняться для всех каналов, связанных с исходным набором данных, а не только для трёх каналов, которые загружены слоем (то есть, отображаются символами).
Существует несколько способов для указания поднабора каналов многоканального растра, которые нужно использовать в качестве входных данных инструмента.
- При использовании диалогового окна инструмента перейдите к многоканальному растру с помощью кнопки обзора , расположенной рядом с пунктом Входные растровые каналы (Input raster bands), откройте растр и выберите нужные каналы.
- Если многоканальный растр является слоем в Таблице содержания, можно использовать инструмент Создать растровый слой, чтобы создать новый многоканальный слой, содержащий только нужные каналы.
- Можно также создать новый набор данных, содержащий только нужные каналы, используя для этого инструмент Объединить каналы, входными данными для которого будет являться полученный набор данных.
- В 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 (дополнительно) | Текстовой файл, содержащий априорные вероятности для входных классов сигнатур. Входные данные для файла априорных вероятностей требуются, только если используется параметр ФАЙЛ (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")
Параметры среды
- Автоподтверждение (Auto Commit)
- Размер ячейки (Cell size)
- Сжатие (Compression)
- Текущая рабочая область (Current Workspace)
- Экстент (Extent)
- Географические преобразования (Geographic Transformations)
- Маска (Mask)
- Выходное ключевое слово CONFIG (Output CONFIG Keyword)
- Выходная система координат (Output Coordinate System)
- Статистика растра (Raster Statistics)
- Временная рабочая область (Scratch Workspace)
- Растр привязки (Snap Raster)
- Размер листа (Tile Size)