Доступно с лицензией 3D Analyst.
Инструменты переклассификации позволяют быстро и легко переклассифицировать данные с помощью таблиц перекодировки или переклассификации. Формат этой таблицы позволяет сопоставить отдельные значения, диапазоны значений, строки или значения NoData с другими значениями или значением NoData. Инструменты геообработки, использующие таблицы перекодировки: Переклассификация по ASCII-файлу и Переклассификация по таблице. При использовании инструмента Переклассифицировать можно динамично создавать таблицы переклассификации для анализа и сохранять таблицу, чтобы использовать ее в дальнейшем. В следующих разделах объясняются правила создания этих таблиц перекодировки и даются примеры их использования в инструментах переклассификации.
О таблицах перекодировки
Таблицами перекодировки могут быть файлы ASCII, таблицы базы геоданных или таблицы INFO. Для инструмента Переклассификация по ASCII-файлу требуются файлы ASCII, а для Переклассификация по таблице необходимы табличные форматы. Таблицы перекодировки состоят из двух частей. Первая часть определяет конкретное значение ячейки для переклассификации, а вторая – выходное переклассифицированное значение ячейки.
Таблицы перекодировки ASCII
Таблица ASCII допускает гораздо большую гибкость в определении переклассифицированных значений. Таблицу можно создать с помощью любого текстового редактора, используя правила форматирования, которые обсуждаются в следующих параграфах, для определения параметров переклассификации.
Ниже приводится очень простой пример таблицы перекодировки ASCII с единственным граничным значением для переклассификации растра.
Value Symbol 3 1 5 2 10 3 15 4
- В этом примере:
- Ячейкам, значение которых меньше или равно 3, присваивается символ 1.
- Ячейкам, значение которых больше 3 и меньше или равно 5, присваивается символ 2.
- Ячейкам, значение которых больше 5 и меньше или равно 10, присваивается символ 3.
- Ячейкам, значение которых больше 10 и меньше или равно 15, присваивается символ 4.
- Ячейкам, значение которых больше 15, присваивается символ NoData.
Таблица перекодировки ASCII состоит из дополнительных компонентов, дополнительных ключевых слов и обязательного выражения присвоения. Каждое выражение должно быть на отдельной строчке. Комментарии – это описательный текст, который может использоваться для предоставления дополнительной информации. Комментарии могут появляться в любом месте таблицы перекодировки, но им должен предшествовать знак фунта (#). Ключевые слова устанавливают параметры, в которых работает переклассификация. Выражения присвоения присваивают выходное значение заданному входному значению ячейки или диапазону значений.
Ключевые слова располагаются в начале файла до того, как вводится выражение присвоения. Комментарии, однако, могут быть в любом месте и им могут предшествовать ключевые слова. Есть два ключевых слова, которые могут включать справочную таблицу. Первое – LOWEST-INPUT, оно определяет наименьшее значение ячеек растра, которые будут учитываться для переклассификации. LOWEST-INPUT форматируется следующим образом: lowest-input <value>, где <value> является наименьшим значением ячеек растра, которые будут учитываться при переклассификации. LOWEST-INPUT используется, если вы хотите включить ячейки со значениями меньше заданного значения. Например, в растре со значениями ячеек в диапазоне от 1 до 20, параметр LOWEST-INPUT, равный 5, исключает ячейки со значениями меньше 5. Если он не задан, LOWEST-INPUT по умолчанию будет равняться минимальному значению входного растра.
Второе дополнительное ключевое слово, LOWEST-OUTPUT, определяет наименьшее выходное значение или начальную точку для переклассифицированных значений. Это ключевое слово используется для задания выходных переклассифицированных значений автоматически в случаях, когда выражения присвоения (описано ниже в этом разделе) определяют только входное значение. LOWEST-OUTPUT форматируется как наименьшее выходное значение <value>, где <value> – это наименьшее выходное переклассифицированное значение. Если не задано, LOWEST-OUTPUT по умолчанию равняется 1.
Выражения присвоения следуют за ключевыми словами. Их можно форматировать с помощью нескольких методов. Общая форма выражения присвоения устанавливает отношение между входным значением ячейки и его переклассифицированным значением:
old input cell value : new output reclassified value
Значение входной ячейки может быть целочисленным или действительным числом; однако выходные переклассифицированные значения могут быть только целочисленными.
Чтобы задать входное значение или связанное с ним переклассифицированное значение, может использоваться несколько методов. Эти методы лучше всего представлены на примерах. Дальнейшее рассмотрение таблиц перекодировки ASCII представляет несколько таблиц перекодировки и описывает, как входные значения ячеек переклассифицируются в соответствии с таблицей. Во всех примерах используется набор растровых данных со значениями ячеек от 1 до 20.
Примеры
Определены только входные значения ячеек
В этом примере представлена таблица перекодировки с выражениями присвоения, которые содержат только входное значение ячейки.
# Example 1 # Remap table for cell value reclassification. LOWEST-INPUT 3 LOWEST-OUTPUT 2 5 6 7 15
Входные значения ячеек всегда должны быть отсортированы в возрастающем порядке.
Как в случае с таблицей перекодировки INFO, последовательные выражения присвоения неявно определяют диапазоны значений ячеек для переклассификации. Таким образом, важно, что входные значения ячеек отсортированы в порядке возрастания. Выходное переклассифицированное значение для каждого диапазона вычисляются автоматически из значения, заданного с LOWEST-OUTPUT. Первый диапазон значений ячеек переклассифицируется в значение, заданное для LOWEST-OUTPUT. Следующий диапазон переклассифицируется в LOWEST-OUTPUT плюс один и т. д., пока все выражения присвоения не будут иметь переклассифицированного значения. Значения ячеек вне заданного диапазона переклассифицируются в значения NoData.
В следующей таблице приведена переклассификация:
Входное значение ячейки | Выходное значение переклассификации |
---|---|
Меньше 3 | NoData |
от 3 до 5 | 2 (наименьшее-выходное) |
От 5 до 6 | 3 (наименьшее-выходное + 1) |
От 6 до 7 | 4 (наименьшее-выходное + 2) |
От 7 до 15 | 5 (наименьшее-выходное + 3) |
Больше 15 | NoData |
Если LOWEST-INPUT не задано, все значения ячеек, которые меньше или равны 5, будут переклассифицированы в 2. Переклассифицированное значение по умолчанию будет равняться 1, если LOWEST-OUTPUT 2 не задано.
Конкретные выходные значения
Вы можете задать выходные значения для каждого входного значения или входного диапазона путем добавления дополнительного поля в таблицу преобразования.
За входным значением ячейки или диапазоном значений сначала следует двоеточие (:), затем нужное выходное переклассифицированное значение. Если задано явное выходное переклассифицированное значение, LOWEST-OUTPUT игнорируется, например:
# Example 3 # Remap table for cell value reclassification. LOWEST-INPUT 3 5 : 10 6 : 16 7 : 62 15 : 28
Переклассификация описана в следующей таблице:
Входные значения ячеек | Выходное значение переклассификации |
---|---|
Меньше 3 | NoData |
от 3 до 5 | 10 |
От 5 до 6 | 16 |
От 6 до 7 | 62 |
От 7 до 15 | 28 |
Больше 15 | NoData |
Явные входные диапазоны
Аналогичным образом, выходное значение может быть задано для явных входных диапазонов:
# Example 4 # Remap table for cell value reclassification. 3 5 : 9 5 9 : 8 13 15 : 59
Переклассификация описана ниже:
Входное значение ячейки | Выходное значение переклассификации |
---|---|
Меньше 3 | NoData |
от 3 до 5 | 9 |
От 5 до 9 | 8 |
От 9 до 13 | NoData |
От 13 до 15 | 59 |
Больше 15 | NoData |
Некорректный пример – смешение одинарных входных значений и диапазонов
Все примеры выше – это корректные таблицы перекодировки ASCII, которые могут использоваться для переклассификации значений ячеек. Каждый из четырех методов показывает допустимый синтаксис для таблицы перекодировки ASCII. Синтаксис нельзя смешивать между четырьмя типами. Например, некорректным является определение выражения присвоения, которое содержит одинарное входное значение, за которым следует другое выражение присвоения, которое содержит входной диапазон.
Ниже приведена некорректная таблица перекодировки. Одинарные входные значения ячеек и входные диапазоны нельзя задать в одной и той же таблице перекодировки.
# Invalid remap table for cell value reclassification LOWEST-INPUT 3 LOWEST-OUTPUT 2 5 6 9 11 15
Некорректный пример – смешение заданных выходных значений
Также неверно задавать выходное переклассифицированное значение только в некоторых выражениях присвоения в таблице перекодировки. Если вы зададите выходное значение, его необходимо задать в выражениях присвоения.
Ниже приведена некорректная таблица перекодировки (все выражения присвоения должны иметь заданное выходное значение):
# Invalid remap table for cell value reclassification LOWEST-INPUT 3 5 : 10 6 7 : 62 15