使用“设为空函数”将值设置为 NoData

需要 Spatial Analyst 许可。

获得 Image Analyst 许可后可用。

设为空函数工具可以根据指定条件将所识别的像元设置为 NoData。

如果某个输入条件栅格数据的求值结果为 True,则该工具会为输出像元返回 NoData;否则,将返回由 False 输入确定的值,该值可以是栅格数据,也可以是常数值。

在地理处理中,有两种方法可以确定像元位置求值结果是 True 还是 False:根据输入条件栅格数据自身的值,或根据应用了可选表达式的输入条件栅格数据的结果值。如果只使用输入栅格数据自身的值来确定,则将输入栅格中的非零值视为 True,而将所有零值都视为 False。求值结果为 True 的像元将接收 NoData 作为输出。以 NoData 为输入的像元并不等同于 False,其仍会将 NoData 作为输出分配给该像元。

许多 Spatial Analyst 工具都可以用来确定哪些像元位置的求值结果为 True,哪些结果为 False。特别是可以使用“数学”工具箱中的逻辑工具,其中的条件测试工具非常有帮助。

同样,设为空函数也经常用于将符合指定条件的所有值更改为 NoData。可以使用它处理剩余的选定像元、创建掩膜或去除模型内的某些像元以供进一步使用。

示例

使用表达式

要将值大于 5 的像元设置为 NoData,同时保留其他像元的原始值,请在工具对话框中使用以下参数:

  • 输入条件栅格数据InRas1

    表达式“Value > 5”

    输入条件为假时所取的栅格数据或常数值InRas1

    输出栅格setnull_1

以下是在“地图代数”中实现相同功能的表达式:

 OutRas = SetNull(InRas1 > 5, InRas1)

不使用表达式

下图将输入栅格 (InRas1) 作为条件栅格。如果 InRas1 中的某个像元值为 True,(非 0 NoData),则将 NoData 分配给该像元位置;否则,将写入 InRas2 中的值作为输出值。

SetNull 示例
OutRas = SetNull (InRas1, InRas2)

相关主题


在本主题中
  1. 示例