Skip to main content

栅格数据集中的 NoData

像元值可正可负,可以是整型也可以是浮点型。 像元也可以使用 NoData 值来表示数据缺失。 栅格数据集中有时包含您不想显示的同质区域。 这些区域包括边框、背景或者被认为没有有效值的其他数据。 这些值有时表示为 NoData 值,虽然其他时候可能具有实际值。

当显示包含 NoData 值的栅格时,所有渲染器均可将 NoData 值设置为某个颜色或无颜色,而“拉伸”渲染器则可以识别特定的背景值并显示颜色或无颜色。

背景的两种显示方法

左侧图片使用黑色背景显示 NoData 区域,右侧图片则使用无色背景显示同一区域。

计算栅格数据集的统计数据时,可以选择忽略任何包含 NoData 的像元。

在对包含 NoData 值的栅格数据执行操作时,每个像元通常有三种 NoData 处理方式:

  • 无论如何,都可以为位置返回 NoData

  • NoData 被忽略,使用任意可用值计算值

  • 必须估计一个值,且不可返回 NoData

存储 NoData

NoData作为栅格数据集的一部分存储在遮罩中,或者使用数据集中未作为有效值使用的像素值。 例如,值 -9999 常用于存储 NoData。

在地理数据库中,如果原始栅格数据包含 NoData 像元,加载栅格时会生成一个位掩码,并将其存储在数据库中。 将读取该位掩码,并在检索时提取 NoData 区域。

当向已占满位范围(例如,0 到 255 之间的所有值均已由至少一个像元表示)的基于文件的栅格添加 NoData 时,该栅格将升级至下一个更高的位深。 例如,一个像元值为 0 到 255 的山体阴影栅格,在添加 NoData 后,将表示为 16 位无符号整型,以便存储一个不用于表示有效值的值(例如 256)。 下表列出了数据类型升级规则:

基于文件的原始栅格数据类型

加载到地理数据库后的数据类型

1 位无符号整数

4 位无符号整数

4 位无符号整数

8 位无符号整数

8 位无符号整数

16 位无符号整数

8 位有符号整数

16 位有符号整数

16 位无符号整数

32 位无符号整数

16 位有符号整数

32 位有符号整数

32 位无符号整数

32 位浮点型

32 位有符号整数

32 位浮点型

数据类型升级规则

定义 NoData

有两种方法可以将栅格数据集中的像元值设置为 NoData - 使用设置空值工具或通过栅格数据集的“属性”对话框。 也可以通过栅格数据集的“属性”对话框从 NoData 中移除值。

还可以通过定义镶嵌数据集 NoData 工具为镶嵌数据集指定 NoData 值。 此工具允许指定多个 NoData 值。

编辑栅格数据集的 NoData 值

  1. 目录窗格中,右键单击栅格数据集,然后选择属性

  2. 常规选项卡中的栅格信息下为 NoData 值。 单击 按钮。

    NoData 编辑器对话框随即打开。

  3. 点击波段名称旁边的列编辑 NoData 值

    • 必须输入数据集中包含的值。

    • 只能为每个波段输入一个值。

    • 可以为每个波段指定不同值。

    • 也可以清除输入的值以移除 NoData 值。

    注意:

    请务必注意,不要指定数据集中同时作为有效值存在的值。 例如,0 可能被用作无有效值像元的默认值,但 0 也可能用于定义栅格数据集中的有效值。 如果出现这种情况,可能需要定义掩膜。 有关详细信息,请参阅掩膜环境设置掩膜函数

  4. 如果不知道要输入的值,可以单击计算按钮,应用程序将自动选择合适的值。

  5. 单击确定关闭对话框。