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

Краткая информация

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

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

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

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

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

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

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

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

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

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

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

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

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

    Чтобы использовать меньшее число ядер, настройте параметр среды Коэффициент параллельной обработки.

Параметры

ПодписьОписаниеТип данных
Входной растр

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

Raster Layer
Поле переклассификации

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

Field
Переклассификация

Таблица переклассификации, которая определяет, как переклассифицируются значения. Ниже приведены порядок работы с таблицей и ее параметры.

  • Значения входного растра можно классифицировать по диапазонам значений, либо используя отдельные значения. Таблица будет отображаться с использованием значений Начала и Конца диапазонов либо с уникальными значениями, соответственно. Если входным является слой в таблице Содержание, он будет импортировать уникальные значения или границы классов символов.
  • Укажите Новое значение, которое будет присвоено выходному растру. Допустимы только целочисленные значения.
  • Используйте опции Классифицировать или Уникальные значения (Unique) для создания таблицы переклассификации на основе значений входного растра. Опция Классифицировать – открывает диалоговое окно, в котором можно указать один из Методов классификации данных и число классов. Опция Уникально заполняет таблицу перекодировки, используя уникальные значения из входного набора данных.
  • Опция Обратный порядок новых значений выполняет пересортировку списка новых значений (например, список 1,2,3 становится 3,2,1).
  • Чтобы изменить таблицу, можно добавлять новые записи путем заполнения пустых ячеек таблицы и последующего нажатия клавиши Enter. Будет проверена новая запись, и создана еще одна пустая строка для следующего элемента. Можно удалять строки, выбрав одну или несколько строк и нажав клавишу Delete.
  • Используйте опции загрузки и сохранения переклассификации для ее последующего использования и применения к другим входным данным или для быстрого повторения анализа.
Remap
Выходной растр

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

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

Raster Dataset
Заменить отсутствующие значения на NoData
(Дополнительный)

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

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

Возвращаемое значение

ПодписьОписаниеТип данных
Выходной растр

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

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

Raster

arcpy.ddd.Reclassify(in_raster, reclass_field, remap, out_raster, {missing_values})
ИмяОписаниеТип данных
in_raster

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

Raster Layer
reclass_field

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

Field
remap

Список переклассификации, который определяет, как переклассифицируются значения.

Список переклассификации состоит из трех компонентов: значений От, До и Новое. Строки в списке переклассификации разделены точкой с запятой, а три эти компонента разделены пробелами. Например:

"0 5 1;5.01 7.5 2;7.5 10 3"

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

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

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

  • RemapRange (remapTable)
  • RemapValue (remapTable)
Remap
out_raster

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

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

Raster Dataset
missing_values
(Дополнительный)

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

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

Возвращаемое значение

ИмяОписаниеТип данных
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")
Reclassify, пример 1 (окно Python)

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

import arcpy
from arcpy import env  
env.workspace = "C:/sapyexamples/data"
arcpy.Reclassify_3d("C:/data/landuse", "VALUE", 
                    "1 9;2 8;3 1;4 6;5 3;6 2;7 1",
                    "C:/output/outremap","DATA")
Reclassify, пример 2 (автономный скрипт)

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

# Name: Reclassify_3d_Ex_02.py
# Description: Reclassifies the values in a raster.
# Requirements: 3D Analyst Extension

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Set local variables
inRaster = "landuse"
field = "VALUE"
remapString = "1 9;2 8;3 1;4 6;5 3;6 2;7 1"
outRaster = "C:/output/reclass3d"

# Execute Reclassify
arcpy.ddd.Reclassify(inRaster, field, remapString, outRaster, "DATA")

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