定义镶嵌数据集 NoData (数据管理)

摘要

指定要表示为 NoData 的一个或多个值。

使用情况

  • 可以使用 NoData 定义图像周围的像素值;但是,如果通过重新计算轮廓线移除这些边界区域,可更有效地创建镶嵌数据集。要重新计算轮廓线,可通过手动方式或使用构建轮廓线工具来编辑它们。

  • 可为 NoData 值的波段参数指定多个 NoData 值。在要定义为 NoData 的各值之间使用空格分隔符。

  • 此工具会为镶嵌数据集内的各个栅格项插入函数链中的掩膜函数

参数

标注说明数据类型
镶嵌数据集

希望更新 NoData 值的镶嵌数据集。

Mosaic Layer
波段数

镶嵌数据集内的波段数。

Long
NoData 值的波段
(可选)

为每个波段指定 NoData 值。每个波段都可定义唯一的 NoData 值,也可为所有波段指定相同的值。从下拉列表中选择波段,然后输入一个值或多个值。如果选择多个 NoData 值,则用空格分隔各值。

如果镶嵌数据集内每个栅格的函数链都包含“波段合成”函数,或者如果添加的栅格数据的栅格类型会向每个栅格的函数链添加“波段合成”函数,则所有指定的值都将应用于所有波段。

Value Table
有效数据范围的波段
(可选)

指定为每个波段显示的值范围。会将此范围外的值划分为 NoData。处理波段合成时,该范围将应用到所有波段。

Value Table
查询定义
(可选)

用来在镶嵌数据集中选择特定栅格的 SQL 语句。只有所选栅格的 NoData 值会更改。

SQL Expression
从每个波段合成 NoData 值
(可选)

选择是否所有波段必须为 NoData,才能将像素划分为 NoData。

  • 未选中 - 如果任一波段具有 NoData 像素,则将像素划分为 NoData。  这是默认设置。
  • 选中 - 所有波段必须具有 NoData 像素,才能将像素划分为 NoData。
Boolean

派生输出

标注说明数据类型
更新的镶嵌数据集

已更新的镶嵌数据集。

镶嵌图层

arcpy.management.DefineMosaicDatasetNoData(in_mosaic_dataset, num_bands, {bands_for_nodata_value}, {bands_for_valid_data_range}, {where_clause}, {Composite_nodata_value})
名称说明数据类型
in_mosaic_dataset

希望更新 NoData 值的镶嵌数据集。

Mosaic Layer
num_bands

镶嵌数据集内的波段数。

Long
bands_for_nodata_value
[band {NoData value},...]
(可选)

为每个波段或所有波段定义值。每个波段都可定义唯一的 NoData 值,也可为所有波段指定相同的值。如果要为选择的各波段定义多个 NoData 值,则在 bands_for_nodata_value 参数的各 NoData 值之间使用空格分隔符。

使用此工具插入的“掩膜”函数将被插入到函数链中“波段合成”函数的前面。因此,如果镶嵌数据集内每个栅格的函数链都包含“波段合成”函数,或者如果添加的栅格数据的栅格类型会向每个栅格的函数链添加“波段合成”函数,则所有指定的值都将应用于所有波段。

Value Table
bands_for_valid_data_range
[band {minimum value} {maximum value},...]
(可选)

指定为每个波段显示的值范围。会将此范围外的值划分为 NoData。处理波段合成时,该范围将应用到所有波段。

Value Table
where_clause
(可选)

用来在镶嵌数据集中选择特定栅格的 SQL 语句。只有所选栅格的 NoData 值会更改。

SQL Expression
Composite_nodata_value
(可选)

选择是否所有波段必须为 NoData,才能将像素划分为 NoData。

  • NO_COMPOSITE_NODATA如果任一波段具有 NoData 像素,则将像素划分为 NoData。这是默认设置。
  • COMPOSITE_NODATA所有波段必须具有 NoData 像素,才能将像素划分为 NoData。
Boolean

派生输出

名称说明数据类型
out_mosaic_dataset

已更新的镶嵌数据集。

镶嵌图层

代码示例

DefineMosaicDatasetNoData 示例 1(Python 窗口)

这是 DefineMosaicDatasetNoData 的 Python 示例。

import arcpy
arcpy.DefineMosaicDatasetNodata_management(
     "c:/workspace/Nodata.gdb/md", "3",  "ALL_BANDS '0 9'", "#", 
     "OBJECTID=2",  "COMPOSITE_NODATA")
DefineMosaicDatasetNoData 示例 2(独立脚本)

这是 DefineMosaicDatasetNoData 的 Python 脚本示例。

#Specify multiple Nodata values for all bands in one Catalog item

import arcpy
arcpy.env.workspace = "C:/Workspace"

mdname = "Nodata.gdb/md"
noofbands = "3"
nodataval = "ALL_BANDS '0 9'"
nodatarange = "#"
query = "OBJECTID=2"
mode = "#"

arcpy.DefineMosaicDatasetNoData_management(mdname, noofbands, nodataval, 
                                           nodatarange, query, mode)

环境