Skip to main content

Калькулятор растра (Инструменты Image Analyst)

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

Выполняет одно выражение алгебры карт, созданное с помощью синтаксиса Python.

Подробнее о том, как работает Калькулятор растра

Иллюстрация

Инструмент Калькулятор растра на панели Геообработка

Инструмент Калькулятор растра на панели геообработки с простым выражением

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

Примечание:

Инструмент Калькулятор растра доступен в приложении только на панели Геообработка или в ModelBuilder. Он не предназначен для использования в скриптах и не доступен в модуле ArcPy Image Analyst.

  • Инструмент Калькулятор растра позволяет создать и выполнить выражение алгебры карт, результатом которого будет создание выходного растра.

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

  • Полные пути к данным или данные, существующие в заданном параметре среды текущей рабочей области можно ввести в кавычках (""). Числа и масштабы можно ввести прямо в выражение.

  • Поддерживаемые операторы перечислены в таблице ниже:

    +

    (Дополнение)

    >

    (Больше)

    &

    (Булев оператор And)

    -

    (Вычитание)

    (Изменить знак)

    <

    (Меньше)

    |

    (Булев оператор Or)

    *

    (Умножение)

    <=

    (Меньше или равно)

    ^

    (Булев оператор XOr)

    /

    (Деление)

    >=

    (Больше или равно)

    ~

    (Булев оператор Not)

    ==

    (Равно)

    !=

    (Не равно)

    Операторы Алгебры карт

  • Многие инструменты и операции геообработки могут быть созданы как выражение алгебры карт с использованием стандартного синтаксиса Python.

    Внимание:

    При вводе имен инструментов убедитесь, что синтаксис имен корректный. Если регистр букв неверен, выражение будет недопустимым, и его не удастся выполнить, так как Python чувствителен к регистру.

    Пример общего формата выражения алгебры карт с использованием инструментов геообработки:

    Con(IsNull("streams"), 0, "streams")

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

    • Вам не нужно включать выходное имя растра или знак равенства (=) в выражение, т.к. выходное имя указывается в параметре Выходной растр.

    • Не нужно оценивать входные данные как объект Raster при использовании операторов.

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

  • Чтобы создать растр с ячейками постоянного значения, укажите в параметрах среды соответствующий экстент и Размер ячейки и введите числовое значение в выражение.

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

  • У булевых операторов (~, &, ^, |) уровень приоритета более высокий, чем у операторов сравнения (&lt;, <=, >, >=, ==, !=). Если булевы операторы используются в выражении вместе с операторами сравнения, булевы операторы будут выполняться первыми. Для изменения порядка выполнения операторов используйте скобки.

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

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

    Только операторы и инструменты, которые обрабатывают по принципу «ячейка за ячейкой», могут воспользоваться этой возможностью. Операторы и инструменты, которые поддерживают отсроченную оценку, сами включены в инструмент калькулятора растра, либо представлены в виде кнопки, либо в списке предоставленных инструментов.

  • Инструмент Калькулятор растра может быть использован в ModelBuilder, но помните следующее/

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

    • Имена слоев будут заключены в двойные кавычки (&quot;&quot;).

      Пример: "inlayer"

    • Типы переменных длинное целое, двойной точности или Булев будут заключены в знаки процента (%%). Они не должны быть в кавычках.

      Пример: %scale_factor%

    • Переменные, представляющие имена или строки набора данных должны быть заключены в двойные кавычки и знаки процента (&quot;%%&quot;).

      Например, inraster в выражении будет выглядеть как "%inraster%".

    В ModelBuilder, следующие типы переменных являются корректными входными данными для выражения:

    • Строка

    • Boolean

    • Числовые (двойной точности и длинное целое)

    • Данные (набор растровых данных, растровый слой, канал растра, файл слоя .lyr)

    Инструмент Калькулятор растра, как правило, придерживается стандартного поведения связности моделей в ModelBuilder, отдельные исключения обусловлены требованиями к формулированию допустимого выражения алгебры карт. К ним относятся:

    • Переменные связаны с инструментом Калькулятор растра, если они выбираются из перечня переменных. Все переменные автоматически перечислены в списке Переменные этого инструмента.

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

    • Если вы удалите связь с переменной, переменная не удалится из выражения.

    • Не следует переименовывать переменную, соединенную с инструментом, т.к. переменная не будет переименована в выражении. Если вы переименуете ее, выражение будет некорректным.

  • Конкретные Параметры среды хранения растра могут применяться к этому инструменту, если форматом выходных растровых данных не является Esri Grid.

    • Для параметров среды Статистика растра поддерживается только отметка Вычислить статистику.

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

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

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

    Если все входные содержат одну переменную, но с разными именами, снимите отметку среды геообработки [Сопоставить многомерную переменную] (../environment-settings/match-multidimensional-variable.yml) (задайте arcpy.env.matchMultidimensionalVariable = False в Python) перед запуском инструмента.

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

Параметры

Подпись Объяснение Тип данных

Выражение Алгебры карт

Выражение Алгебры карт, которое будет выполняться.

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

Список Растры определяет наборы данных, доступные для использования в выражении алгебры карт.

Список Инструменты содержит стандартные инструменты, которые вы можете использовать.

Raster Calculator Expression

Выходной растр

Выходной растр, полученный из выражения алгебры карт.

Raster Dataset

Параметры среды

Автоподтверждение, Размер ячейки, Метод проецирования размера ячейки, Сжатие, Текущая рабочая область, Экстент, Географические преобразования, Маска, Выходное ключевое слово конфигурации, Выходная система координат, Временная рабочая область, Растр привязки, Размер листа

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

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