Редактировать сигнатуры (Spatial Analyst)

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

Сводка

Редактирует и обновляет файл сигнатур путем объединения, перенумерации и удаления сигнатур классов.

Более подробно о том, как работает инструмент Редактировать сигнатуры

Использование

  • Инструмент Редактировать сигнатуры позволяет менять существующий файл сигнатур путем выполнения всех или любой из следующих операций:

    • Объединения сигнатур набора классов
    • Перенумерации идентификаторов (ID) сигнатур классов
    • Удаления нежелательных сигнатур
  • Если многоканальный растр указан как один из входных для параметра Входные каналы растра (in_raster_bands в Python), будут обработаны все каналы.

    Чтобы обработать выбранные каналы многоканального растра, сначала создайте новый набор растровых данных, состоящий только из необходимых каналов, с помощью инструмента Объединить каналы, затем укажите полученный набор как Входной растр (in_raster_bands в Python).

  • Входной файл сигнатур должен быть файлом сигнатур ASCII. Этот файл может быть выходным файлом одного из инструментов Многомерность, которые создают файл, содержащий необходимую статистическую информацию, например, Изокластер и Создать сигнатуры. Файл должен содержать, по меньшей мере, два класса. Такой файл можно распознать по расширению .gsg.

  • Входной файл перекодировок сигнатур – это ASCII-файл, состоящий из двух столбцов co значениями на строку, разделенными двоеточием. В первом столбце указано значение идентификатора ID исходного класса. Второй столбец содержит идентификаторы ID новых классов, которые используются для обновления файла сигнатур. Все записи в файле должны быть сохранены по возрастанию и в соответствии с первым столбцом.

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

    Чтобы объединить набор классов, задайте новый одинаковый ID равным второму значению для каждого ID класса из набора. В файл перекодировок сигнатур должны быть помещены только те классы, которые нуждаются в редактировании. Все классы, не присутствующие в файле перекодировки останутся неизменными. Чтобы удалить сигнатуру класса, установите значение -9999 во вторую колонку этого класса. Идентификатор класса (ID) также должен быть изменен на значение, не существующее во входном файле сигнатур.

    Ниже приведен пример входного файла перекодировок сигнатур:

    2 : 3
    4 : 11
    5 : -9999
    9 : 3

    Этот пример объединит классы 2 и 9 с классом 3, объединит класс 4 с 11, и удалит класс 5.

  • Если входной файл сигнатур содержит названия сигнатур классов, и если сигнатуры во входном файле перекодировок сигнатур должны быть объединены, имя, связанное с объединяемым значением, будет перенесено в выходной файл сигнатур.

  • См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.

Синтаксис

EditSignatures(in_raster_bands, in_signature_file, in_signature_remap_file, out_signature_file, {sample_interval})
ParameterОбъяснениеТип данных
in_raster_bands
[in_raster_band,...]

Каналы входного растра, для которых должны редактироваться сигнатуры.

Они могут быть целочисленными или с плавающей точкой.

Raster Layer
in_signature_file

Входной файл сигнатур, сигнатуры которого должны редактироваться.

Требуется расширение .gsg.

File
in_signature_remap_file

Входная ASCII-таблица перекодировок, содержащая идентификаторы объединяемых, удаляемых классов, или классов с изменениями номеров.

Таким расширением может быть .rmp, .asc или .txt. Значение по умолчанию равно .rmp.

File
out_signature_file

Выходной файл сигнатур.

Необходимо задать расширение .gsg.

File
sample_interval
(Дополнительный)

Интервал, который будет использован для выборки.

Значение по умолчанию равно 10.

Long

Пример кода

EditSignatures, пример 1 (окно Python)

В этом примере будет редактироваться файл сигнатур на основе входной таблицы перекодировки.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
EditSignatures("redl123", "c:/sapyexamples/data/zsamp12.gsg", 
               "c:/sapyexamples/data/zsamp7.rmp", 
               "c:/sapyexamples/output/redlremap.gsg", "")
EditSignatures, пример 2 (автономный скрипт)

В этом примере будет редактироваться файл сигнатур на основе входной таблицы перекодировки.

# Name: EditSignatures_Ex_02.py
# Description: Edits and updates a signature file by merging, renumbering, 
#    and deleting class signatures.
# 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"
oldSig = "c:/sapyexamples/data/zsamp12.gsg"
sigRemap = "c:/sapyexamples/data/zsamp7.rmp"
outNewSig = "c:/sapyexamples/output/redlsig.gsg"
interval = ""

# Execute EditSignatures
EditSignatures(inRaster, oldSig, sigRemap, outNewSig, interval)

Информация о лицензиях

  • Basic: Требуется Spatial Analyst
  • Standard: Требуется Spatial Analyst
  • Advanced: Требуется Spatial Analyst

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