合并 (空间分析)

需要 Spatial Analyst 许可。

摘要

合并多个栅格,以便为每个唯一的输入值组合分配唯一的输出值。

插图

“合并”图示
OutRas = Combine([InRas1, InRas2])

使用情况

  • 合并工具可用于处理整数值及其关联属性表。 如果输入上的值为浮点型,则将自动对其进行截断,并测试与其他输入的唯一性,然后将其发送到输出属性表。

  • 合并工具与组合或工具类似。 它们都可为输入值的各种唯一组合指定新数值。 但是,在组合工具中,您可以指定栅格列表,而在组合或工具中,您只能指定两个输入,它们可以是栅格或常量值。

  • 将多波段栅格指定为输入栅格参数值(Python 中的 in_rasters)之一时,将使用所有波段。

    要处理一系列来自多波段栅格的波段,请首先使用波段合成工具创建由这些特定波段组成的栅格数据集;然后在输入栅格参数(Python 中的 in_rasters)中使用列表中的结果。

  • 输出栅格始终为整型。

  • 每个栅格输入由输出栅格属性表 (RAT) 中的一个字段表示,其中输出中字段的顺序与输入栅格的顺序相匹配。

    如果存在多波段输入,则输出会将每个波段标识为单独的栅格,并将创建相应数量的字段。

    如果多次使用同一栅格,则将其视为单独的输入;但是,将会返回警告。

  • 输出 RAT 中的字段名称基于栅格数据集名称。 如果字段名称太长,则会被截断以满足字段名长度限制。 栅格名称中不受数据库支持的任何特殊字符都将由下划线替换。

    在多波段输入的情况下,字段名称由两部分构成,并用下划线分隔。 第一部分从栅格名称派生,其次是波段索引,从 1 开始。

    对于重复字段名称,通过使用从 1 开始的索引修改栅格名称,可使每个后续字段名唯一。

  • 有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst

参数

标注说明数据类型
输入栅格

要合并的输入栅格列表。

Raster Layer

返回值

标注说明数据类型
输出栅格

输出已合并栅格。

将为输入值的每个唯一组合分配唯一整数值。

Raster

Combine(in_rasters)
名称说明数据类型
in_rasters
[in_raster,...]

要合并的输入栅格列表。

Raster Layer

返回值

名称说明数据类型
out_raster

输出已合并栅格。

将为输入值的每个唯一组合分配唯一整数值。

Raster

代码示例

Combine 示例 1(Python 窗口)

本例将接收多个不同格式(Grid、IMG 和 TIFF)的输入栅格并将唯一组合值输出为 Grid 栅格。

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(独立脚本)

本例将接收多个不同格式(Grid、IMG 和 TIFF)的输入栅格并将唯一组合值输出为 Grid 栅格。

# 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")