Переклассификация (Reclassify) (3D Analyst)
Резюме
Переклассифицирует (или меняет) значения растра.
Использование
-
Входной растр должен иметь действительную статистику. Если статистика отсутствует, ее можно вычислить с помощью инструмента Расчет статистики (Calculate Statistics) в наборе инструментов Управление данными (Data Management).
Если переклассифицируется диапазон значений, диапазоны не должны перекрываться, за исключением значений на границе двух диапазонов. Если происходит перекрытие, верхняя часть диапазона меньших входных значений включается, а нижняя часть диапазона более высоких входных значений исключается из переклассификации.
Если задано два диапазона, например, от 1 до 5 переклассифицируется как 100, а от 5 до 10 – как 200, значениям меньшим или равным 5 присваивается значение 100, а большим 5, например, 5,01 – значение 200.
-
При использовании диалогового окна инструмента, таблица переклассификации может быть сохранена для последующего использования с помощью кнопки Сохранить (Save). Воспользуйтесь кнопкой Загрузить (Load), чтобы открыть таблицы переклассификации, созданные ранее с помощью кнопки Сохранить (Save).
-
Рекомендуется загружать только таблицы, ранее сохраненные инструментом Переклассификация (Reclassify). Формат таблицы специфичный и должен содержать поля FROM, TO, OUT и MAPPING.
-
По умолчанию, для таблицы переклассификации значения входного растра будут классифицированы на девять классов.
-
Если входной растр представлен слоем, старые значения переклассификации будут получены из шкалы, использованной для визуализации растра. Если способ отображения – растяжка, по умолчанию для переклассификации будет использовано 255 классов.
-
После изменения таблицы перекодировки переклассификации, значения не будут обновлены, если выбран входной растр, параметры переклассификации будут сохранены. Если переклассификация не подходит, переклассификация может быть перезапущена через выполнение одной из следующих операций:
- Измените поле переклассификации
- Перезапуск инструмента
-
Этот инструмент позволяет контролировать точность через определение количества десятичных знаков.
-
При использовании инструмента Переклассификация (Reclassify) в модели:
- Если входные данные для инструмента Переклассификации ― это производные данные от выполнения инструмента, который еще не был запущен, параметр таблицы переклассификации в инструменте Переклассификация (Reclassify) будет отсутствовать до запуска предшествующего инструмента и проверки модели. Чтобы избежать этого, всегда запускайте предшествующие инструменты до присоединения их выходных данных в качестве входного параметра для инструмента Переклассификация (Reclassify). Или же, вы можете создать пользовательскую таблицу переклассификации через добавление классов.
- Если вы хотите отобразить таблицу переклассификации в качестве параметра модели, в качестве переменной должно быть показано поле переклассификации. Тем не менее, нет необходимости устанавливать эту опцию как параметр модели. Если поле не отображается в качестве переменной, в диалоговом окне инструмента в модели кнопки классификации и уникальных значений будут не доступны.
Синтаксис
Параметр | Объяснение | Тип данных |
in_raster |
Входной переклассифицируемый растр. | Raster Layer |
reclass_field |
Поле, в котором хранятся переклассифицируемые значения. | Field |
remap |
Список переклассификации, который определяет, как переклассифицируются значения. Список переклассификации состоит из трех компонентов: значений От (From), До (To) и Новое (New). Строки в списке переклассификации разделены точкой с запятой, а три эти компонента разделены пробелами. Например: "0 5 1;5.01 7.5 2;7.5 10 3" | Remap |
out_raster |
Выходной переклассифицированный растр. Выходные данные всегда будут целочисленными. | Raster Dataset |
missing_values (дополнительно) |
Устанавливает, сохранят ли пропущенные в файле переклассификации значения свои исходные значения или же они будут переклассифицированы в значение NoData.
| Boolean |
Пример кода
В следующем примере показано, как выполняется переклассификация растра в семь классов.
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")
В этом примере переклассифицируется входной растр на основе значений строкового поля.
# 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"
# Check out the ArcGIS 3D Analyst extension license
arcpy.CheckOutExtension("3D")
# Execute Reclassify
arcpy.Reclassify_3d(inRaster, field, remapString, outRaster, "DATA")