Переклассификация (Spatial Analyst)

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

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

Сводка

Переклассифицирует (или изменяет) значения ячеек входного растра.

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

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

    Если задано два диапазона, например, от 1 до 5 переклассифицируется как 100, а от 5 до 10 – как 200, значениям меньшим или равным 5 присваивается значение 100, а большим 5, например, 5,01 – значение 200.

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

  • Рекомендуется загружать только таблицы, ранее сохраненные инструментом Переклассификация. Формат таблицы специфичный и должен содержать поля FROM, TO, OUT и MAPPING

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

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

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

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

    • Если входные данные для инструмента Переклассификации ― это производные данные от выполнения инструмента, который еще не был запущен, параметр таблицы переклассификации в инструменте Переклассификация будет отсутствовать до запуска предшествующего инструмента и проверки модели. Чтобы избежать этого, всегда запускайте предшествующие инструменты до присоединения их выходных данных в качестве входного параметра для инструмента Переклассификация. Или же, вы можете создать пользовательскую таблицу переклассификации через добавление классов.
    • Если таблица переклассификации используется как параметр модели, поле переклассификации должно быть указано как переменная; однако его можно не задавать как параметр модели. Если поле не отображается в качестве переменной, в диалоговом окне инструмента в модели кнопки классификации и уникальных значений будут не доступны.
  • По умолчанию, этот инструмент использует преимущества многоядерных процессоров. Максимальное число ядер, которое может быть использовано,– четыре.

    Чтобы инструмент использовал меньшее число ядер, измените параметр среды parallelProcessingFactor.

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

Синтаксис

Reclassify(in_raster, reclass_field, remap, {missing_values})
ParameterОбъяснениеТип данных
in_raster

Входной переклассифицируемый растр.

Raster Layer
reclass_field

Поле, в котором хранятся переклассифицируемые значения.

Field
remap

Объект Таблица переклассификации (Remap) используется для определения того, как переклассифицировать значения входного растра.

Есть два способа определить, как значения будут переклассифицированы в выходном растре: RemapRange и RemapValue. Диапазонам входных значений можно присвоить новое выходное значение или индивидуальным значениям можно присвоить новое выходное значение.

Ниже приведены формы объектов

  • RemapRange (remapTable)
  • RemapValue (remapTable)
Remap
missing_values
(Дополнительный)

Устанавливает, сохранят ли пропущенные в файле переклассификации значения свои исходные значения или же они будут переклассифицированы в значение NoData.

  • DATAОпределяет, что если какая-либо ячейка на входном растре содержит значение, не представленное или не переклассифицированное в таблице переклассификации, значение должно оставаться неизменным и должно быть сохранено для данного местоположения на выходном растре. Используется по умолчанию.
  • NODATAОпределяет, что если какая-либо ячейка на входном растре содержит значение, не представленное или не переклассифицированное в таблице переклассификации, значение для этого местоположения на выходном растре будет переклассифицировано в значение NoData.
Boolean

Значение отраженного сигнала

NameОбъяснениеТип данных
out_raster

Выходной переклассифицированный растр.

Выходные данные всегда будут целочисленными.

Raster

Пример кода

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

В следующих примерах показаны несколько способов переклассификации растра.

import arcpy
from arcpy import env  
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"

outReclass1 = Reclassify("landuse", "Value", 
                         RemapValue([[1,9],[2,8],[3,1],[4,6],[5,3],[6,3],[7,1]]))
outReclass1.save("C:/sapyexamples/output/landuse_rcls")

outReclass2 = Reclassify("slope_grd", "Value", 
                         RemapRange([[0,10,"NODATA"],[10,20,1],[20,30,2],
                                     [30,40,3],[40,50,4],[50,60,5],[60,75,6]]))
outReclass2.save("C:/sapyexamples/output/slope_rcls")

outReclass3 = Reclassify("pop_density", "Value", 
                         RemapRange([[10,10,1],[10,20,2],[20,25,3],
                                     [25,50,4],[50,]]), "NODATA")
outReclass3.save("C:/sapyexamples/output/popden_rcls")
Reclassify, пример 2 (автономный скрипт)

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

# Name: reclassify_example02.py
# Description: Reclassifies the values in a raster.
# 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 = "landuse"
reclassField = "LANDUSE"
remap = RemapValue([["Brush/transitional", 0], ["Water", 1],["Barren land", 2]])

# Execute Reclassify
outReclassify = Reclassify(inRaster, reclassField, remap, "NODATA")

# Save the output 
outReclassify.save("C:/sapyexamples/output/outreclass02")

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

  • Basic: Требуется Spatial Analyst или 3D Analyst
  • Standard: Требуется Spatial Analyst или 3D Analyst
  • Advanced: Требуется Spatial Analyst или 3D Analyst

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