定义镶嵌数据集 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)