Комбинировать (Spatial Analyst)

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

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

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

Иллюстрация

Иллюстрация Комбинировать
OutRas = Combine([InRas1, InRas2])

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

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

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

  • Если многоканальный растр указан как один из входных для параметра Входные растры (in_rasters в Python), будут обработаны все каналы.

    Чтобы обработать выбранные каналы многоканального растра, сначала создайте набор растровых данных, состоящий только из необходимых каналов, с помощью инструмента Объединить каналы; затем используйте результат в списке в параметре Входной растр (in_rasters в Python).

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

  • Каждый входной растр представлен полем в таблице атрибутов выходного растра (RAT), в котором порядок полей соответствует порядку входных растров.

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

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

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

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

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

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

Параметры

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

Входные растры, которые будут скомбинированы.

Raster Layer

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

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

Выходной комбинированный растр.

Каждому уникальному сочетанию входных значений было присвоено уникальное целочисленное значение.

Raster

Combine(in_rasters)
ИмяОписаниеТип данных
in_rasters
[in_raster,...]

Входные растры, которые будут скомбинированы.

Raster Layer

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

ИмяОписаниеТип данных
out_raster

Выходной комбинированный растр.

Каждому уникальному сочетанию входных значений было присвоено уникальное целочисленное значение.

Raster

Пример кода

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

В этом примере инструмент берет входные растры различных форматов (грид, IMG и TIFF) и выдает значения уникальной комбинации в виде растра грида.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outCombine = Combine(["filter", "zone", "source.img", "dec.tif"])
outCombine.save("C:/sapyexamples/output/outcombine2")
Combine, пример 2 (автономный скрипт)

В этом примере инструмент берет входные растры различных форматов (грид, IMG и TIFF) и выдает значения уникальной комбинации в виде растра грида.

# Name: Combine_Ex_02.py
# Description: Combines multiple rasters such that a unique value is
#              assigned to each unique combination of input values
# 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
inRaster01 = "filter"
inRaster02 = "zone"
inRaster03 = "source.img"
inRaster04 = "dec.tif"

# Execute Combine
outCombine = Combine([inRaster01,inRaster02,inRaster03,inRaster04])

# Save the output 
outCombine.save("C:/sapyexamples/output/outcombine")