镶嵌 (数据管理)

摘要

将多个现有栅格数据集或镶嵌数据集合并到一个现有栅格数据集中。

插图

镶嵌工具图示

使用情况

  • 目标栅格必须是一个现有的栅格数据集。该数据集可以是空栅格数据集,也可以是已包含数据的栅格数据集。

  • 镶嵌操作在两个或多个相邻栅格数据集需要合并为一个实体时非常有用。 某些镶嵌方法有助于减小叠置栅格边界上的突变。 如果目标栅格为 CRF 格式栅格,则将更新范围。

  • 镶嵌的叠置区域可采用多种方式处理;例如,您可以对该工具进行设置,以仅保留第一个栅格数据集的数据,也可以混合叠置像元值。 另外,如果栅格数据集使用色彩映射表,还有多个用于处理此表的选项供您选择。 例如,可以保留用于镶嵌的最新栅格数据集的色彩映射表。

  • 目标栅格参数值被视为输入栅格列表中的第一个栅格。

  • 对于镶嵌离散数据,镶嵌运算符中的第一个值最小值最大值会提供最有意义的结果。 而混合平均值选项则最适合连续数据。

  • 尽可能使用镶嵌运算符参数中的最后一个选项将栅格数据集镶嵌到地理数据库中的现有栅格数据集内;这是最有效的镶嵌方式。

  • 对于基于文件的栅格,要忽略背景值,必须将其设置为与 NoData 相同的值。 地理数据库栅格无需经过此额外步骤即可忽略背景值。

  • 如果使用包含色彩映射表的栅格数据集进行镶嵌,应特别注意要镶嵌的各栅格数据集的色彩映射表之间的差异。 即使栅格数据集具有不同的色彩映射表,您也可使用镶嵌工具;但必须选择正确的色彩映射模式。 如果选择了错误的色彩映射模式,则可能会返回意外的输出结果。

  • 色彩匹配方法参数可用于选择镶嵌数据集的色彩匹配算法。

  • 对于不同分辨率的浮点输入栅格数据集或像元未对齐时,建议在运行镶嵌工具之前使用双线性插值法或三次卷积插值法对所有数据进行重新采样。 但是,镶嵌将使用最邻近重采样对栅格数据集进行自动重采样,这不适用于连续数据类型。

  • 镶嵌工具不使用输出范围环境设置,因为该工具往往用于创建超大型栅格数据集,而输出范围设置可能会裁剪您的数据。 如果的确需要调整输出范围,则处理后可使用裁剪工具来裁剪目标栅格参数值。

  • 当目标栅格是多维 CRF 时,将仅更新同一变量在相同维度上匹配的切片。

  • 镶嵌工具支持可扩展的 CRF 数据。 如果 CRF 是使用创建栅格数据集工具创建的,您可以使用新数据更新镶嵌数据集,范围将自动调整。

  • 目标栅格和输入栅格必须具有相同数量的波段。

参数

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

要合并的栅格数据集。

Mosaic Dataset; Raster Dataset; Raster Layer
目标栅格

输入栅格将被添加到的栅格。 此栅格数据集必须已经存在。 默认情况下,目标栅格被视为输入栅格数据集列表中的第一个栅格。 使用创建栅格数据集工具可创建空栅格。

Raster Dataset
镶嵌运算符
(可选)

指定将用于镶嵌重叠区域的方法。

有关各镶嵌运算符的详细信息,请参阅“镶嵌运算符”帮助主题。

  • 第一个叠置区域的输出像元值为镶嵌到该位置的第一个栅格数据集中的值。
  • 最后一个叠置区域的输出像元值为镶嵌到该位置的最后一个栅格数据集中的值。 这是默认设置。
  • 混合叠置区域的输出像元值为叠置区域中各像元值的水平加权计算结果。
  • 平均值重叠区域的输出像元值为叠置像元的平均值。
  • 最小值重叠区域的输出像元值为叠置像元的最小值。
  • 最大值重叠区域的输出像元值为叠置像元的最大值。
  • 总和重叠区域的输出像元值为叠置像元的总和。
String
镶嵌色彩映射表模式
(可选)

指定对输入栅格中应用于镶嵌输出的色彩映射表进行选择的方法。

有关各色彩映射表模式的详细信息,请参阅“镶嵌色彩映射表模式”帮助主题。

  • 第一个列表中第一个栅格数据集中的色彩映射表将应用于输出栅格镶嵌。 这是默认设置。
  • 最后一个列表中最后一个栅格数据集中的色彩映射表将应用于输出栅格镶嵌。
  • 匹配镶嵌时将考虑所有色彩映射表。 如果已经使用了所有可能的值(对于位深度),则该工具将与具有最接近的可用色彩的值进行匹配。
  • 拒绝仅镶嵌不具有关联色彩映射表的栅格数据集。
String
忽略背景值
(可选)

使用此选项移除在栅格数据周围创建的不需要的值。 指定的值与栅格数据集中的其他有用数据不同。 例如,栅格边界上为零的值不同于栅格数据集内的零值。

指定的像素值在输出栅格数据集中将被设置为 NoData。

对于基于文件的栅格和地理数据库栅格,要忽略背景值,必须将其设置为与 NoData 相同的值。 企业级地理数据库栅格无需经过此额外步骤即可忽略背景值。

Double
NoData 值
(可选)

具有指定值的所有像素将在输出栅格数据集中被设置为 NoData

Double
将 1 位数据转换为 8 位
(可选)

指定否将输入 1 位栅格数据集转换为 8 位栅格数据集。 使用这种转换方法时,输入栅格数据集中的值 1 将在输出栅格数据集中更改为 255。 这在将 1 位栅格数据集导入地理数据库时十分有用。 1 位栅格数据集存储在文件系统中时包含 8 位金字塔图层,但在地理数据库中,1 位栅格数据集只能包含 1 位金字塔图层,这将降低显示质量。 通过在地理数据库中将数据转换为 8 位,可将金字塔图层构建为 8 位而非 1 位,从而在显示画面中生成适合的栅格数据集。

  • 未选中 - 不发生任何转换。 这是默认设置。
  • 选中 - 将转换输入栅格。
Boolean
镶嵌容差
(可选)

发生镶嵌时,目标及源像素并不总是准确地排成直线。 如果像素未对齐,则需要确定是重新采样还是平移数据。 镶嵌容差可控制是否对像素执行重采样,或者是否平移像素。

如果(传入的数据集与目标数据集之间的)像素偏差大于该容差,则执行重采样。 如果(传入的数据集与目标数据集之间的)像素偏差小于该容差,则不执行重采样,而是执行平移。

容差的单位为像素,有效值范围为 0 到 0.5。 容差为 0.5 会保证发生平移。 存在像素偏差时,容差为零会保证执行重采样。

例如,源像素和目标像素的偏差值为 0.25。 如果将镶嵌容差设置为 0.2,由于像素偏差大于该容差,因此将执行重采样。 如果将镶嵌容差设置为 0.3,则会平移像素。

Double
色彩匹配方法
(可选)

指定将应用于栅格的色彩匹配方法。

  • 当镶嵌栅格数据集时将不使用颜色匹配方法。
  • 匹配统计来自重叠区域的描述性统计数据将被匹配;然后,变换将应用于整个目标数据集。
  • 匹配直方图参考重叠区域中的直方图将与源重叠区域匹配;然后将变换应用于整个目标数据集。
  • 线性相关重叠的像素将被匹配,而源数据集的其余部分将被插值;没有一对一关系的像素将使用加权平均值。
String

派生输出

标注说明数据类型
更新的目标栅格

已更新的栅格数据集。

Raster Dataset

arcpy.management.Mosaic(inputs, target, {mosaic_type}, {colormap}, {background_value}, {nodata_value}, {onebit_to_eightbit}, {mosaicking_tolerance}, {MatchingMethod})
名称说明数据类型
inputs
[input,...]

要合并的栅格数据集。

Mosaic Dataset; Raster Dataset; Raster Layer
target

输入栅格将被添加到的栅格。 此栅格数据集必须已经存在。 默认情况下,目标栅格被视为输入栅格数据集列表中的第一个栅格。 使用创建栅格数据集工具可创建空栅格。

Raster Dataset
mosaic_type
(可选)

指定将用于镶嵌重叠区域的方法。

  • FIRST叠置区域的输出像元值为镶嵌到该位置的第一个栅格数据集中的值。
  • LAST叠置区域的输出像元值为镶嵌到该位置的最后一个栅格数据集中的值。 这是默认设置。
  • BLEND叠置区域的输出像元值为叠置区域中各像元值的水平加权计算结果。
  • MEAN重叠区域的输出像元值为叠置像元的平均值。
  • MINIMUM重叠区域的输出像元值为叠置像元的最小值。
  • MAXIMUM重叠区域的输出像元值为叠置像元的最大值。
  • SUM重叠区域的输出像元值为叠置像元的总和。
String
colormap
(可选)

指定对输入栅格中应用于镶嵌输出的色彩映射表进行选择的方法。

  • FIRST列表中第一个栅格数据集中的色彩映射表将应用于输出栅格镶嵌。 这是默认设置。
  • LAST列表中最后一个栅格数据集中的色彩映射表将应用于输出栅格镶嵌。
  • MATCH镶嵌时将考虑所有色彩映射表。 如果已经使用了所有可能的值(对于位深度),则该工具将与具有最接近的可用色彩的值进行匹配。
  • REJECT仅镶嵌不具有关联色彩映射表的栅格数据集。
String
background_value
(可选)

使用此选项移除在栅格数据周围创建的不需要的值。 指定的值与栅格数据集中的其他有用数据不同。 例如,栅格边界上为零的值不同于栅格数据集内的零值。

指定的像素值在输出栅格数据集中将被设置为 NoData。

对于基于文件的栅格和地理数据库栅格,要忽略背景值,必须将其设置为与 NoData 相同的值。 企业级地理数据库栅格无需经过此额外步骤即可忽略背景值。

Double
nodata_value
(可选)

具有指定值的所有像素将在输出栅格数据集中被设置为 NoData

Double
onebit_to_eightbit
(可选)

指定否将输入 1 位栅格数据集转换为 8 位栅格数据集。 使用这种转换方法时,输入栅格数据集中的值 1 将在输出栅格数据集中更改为 255。 这在将 1 位栅格数据集导入地理数据库时十分有用。 1 位栅格数据集存储在文件系统中时包含 8 位金字塔图层,但在地理数据库中,1 位栅格数据集只能包含 1 位金字塔图层,这将降低显示质量。 通过在地理数据库中将数据转换为 8 位,可将金字塔图层构建为 8 位而非 1 位,从而在显示画面中生成适合的栅格数据集。

  • NONE不发生任何转换。 这是默认设置。
  • OneBitTo8Bit将转换输入栅格。
Boolean
mosaicking_tolerance
(可选)

发生镶嵌时,目标及源像素并不总是准确地排成直线。 如果像素未对齐,则需要确定是重新采样还是平移数据。 镶嵌容差可控制是否对像素执行重采样,或者是否平移像素。

如果(传入的数据集与目标数据集之间的)像素偏差大于该容差,则执行重采样。 如果(传入的数据集与目标数据集之间的)像素偏差小于该容差,则不执行重采样,而是执行平移。

容差的单位为像素,有效值范围为 0 到 0.5。 容差为 0.5 会保证发生平移。 存在像素偏差时,容差为零会保证执行重采样。

例如,源像素和目标像素的偏差值为 0.25。 如果将镶嵌容差设置为 0.2,由于像素偏差大于该容差,因此将执行重采样。 如果将镶嵌容差设置为 0.3,则会平移像素。

Double
MatchingMethod
(可选)

指定将应用于栅格的色彩匹配方法。

  • NONE当镶嵌栅格数据集时将不使用颜色匹配方法。
  • STATISTIC_MATCHING来自重叠区域的描述性统计数据将被匹配;然后,变换将应用于整个目标数据集。
  • HISTOGRAM_MATCHING参考重叠区域中的直方图将与源重叠区域匹配;然后将变换应用于整个目标数据集。
  • LINEARCORRELATION_MATCHING重叠的像素将被匹配,而源数据集的其余部分将被插值;没有一对一关系的像素将使用加权平均值。
String

派生输出

名称说明数据类型
output

已更新的栅格数据集。

Raster Dataset

代码示例

Mosaic 示例 1(Python 窗口)

这是 Mosaic 函数的 Python 示例。

import arcpy
from arcpy import env
env.workspace = "c:/data"
arcpy.Mosaic_management("land2.tif;land3.tif","land1.tif","LAST","FIRST",
                        "0", "9", "", "", "")
Mosaic 示例 2(独立脚本)

这是 Mosaic 函数的 Python 脚本。

##==================================
##Mosaic
##Usage: Mosaic_management inputs;inputs... target {LAST | FIRST | BLEND | MEAN | MINIMUM | MAXIMUM} {FIRST | REJECT | LAST | MATCH} 
##                         {background_value} {nodata_value} {NONE | OneBitTo8Bit} {mosaicking_tolerance}  
##                         {NONE | STATISTIC_MATCHING | HISTOGRAM_MATCHING 
##                         | LINEARCORRELATION_MATCHING}

import arcpy
arcpy.env.workspace = r"\\workspace\PrjWorkspace\RasGP"

##Mosaic two TIFF images to a single TIFF image
##Background value: 0
##Nodata value: 9
arcpy.Mosaic_management("landsatb4a.tif;landsatb4b.tif","Mosaic\\landsat.tif","LAST","FIRST","0", "9", "", "", "")

##Mosaic several 3-band TIFF images to FGDB Raster Dataset with Color Correction
##Set Mosaic Tolerance to 0.3. Mismatch larget than 0.3 will be resampled
arcpy.Mosaic_management("rgb1.tif;rgb2.tif;rgb3.tif", "Mosaic.gdb\\rgb","LAST","FIRST","", "", "", "0.3", "HISTOGRAM_MATCHING")

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题