定义镶嵌数据集 NoData (Data Management)
摘要
用于为镶嵌数据集指定一个或多个 NoData 值。
用法
- 
可以使用 NoData 定义图像周围的像素值;但是,如果通过重新计算轮廓线移除这些边界区域,可更有效地创建镶嵌数据集。要重新计算轮廓线,可通过手动方式或使用“构建轮廓线”工具来编辑它们。
 可为 NoData 值的波段参数指定多个 NoData 值。在要定义为 NoData 的各值之间使用空格分隔符。
此工具会为镶嵌数据集内的每个栅格项插入函数链中的“掩膜”函数。
使用此工具插入的“掩膜”函数将被插入到函数链中“波段合成”函数的前面。因此,如果镶嵌数据集内每个栅格的函数链都包含“波段合成”函数,或者如果添加的栅格数据的栅格类型会向每个栅格的函数链添加“波段合成”函数,则所有指定的值都将应用于所有波段。
语法
| 参数 | 说明 | 数据类型 | 
in_mosaic_dataset  | 
 镶嵌数据集的路径和名称。  | 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 值为范围之外的那些值。例如,对于 8 位图像,如果指定 band1=10–200,则值 0–9 和 201–255 将被指定为 NoData。 使用此工具插入的“掩膜”函数将被插入到函数链中“波段合成”函数的前面。因此,如果镶嵌数据集内每个栅格的函数链都包含“波段合成”函数,或者如果添加的栅格数据的栅格类型会向每个栅格的函数链添加“波段合成”函数,则所有指定的值都将应用于所有波段。  | Value Table | 
where_clause (可选)  | 
 可以使用 SQL 定义查询,或者使用查询构建器构建查询。  | SQL Expression | 
Composite_nodata_value (可选)  | 选择所有波段是否必须为 NoData,才能将像素标记为 NoData。 
  | Boolean | 
代码实例
这是 DefineMosaicDatasetNoData 的 Python 示例。
import arcpy
arcpy.DefineMosaicDatasetNodata_management(
     "c:/workspace/Nodata.gdb/md", "3",  "ALL_BANDS '0 9'", "#", 
     "OBJECTID=2",  "COMPOSITE_NODATA")
这是 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)