构建金字塔和统计数据 (数据管理)

描述

遍历文件夹结构,从而为其所包含的所有栅格数据集构建金字塔并计算统计数据。还可以为镶嵌数据集中的所有项构建金字塔并计算统计数据。

使用方法

  • 构建金字塔可以改善栅格数据集的显示性能

  • 通过计算统计数据,ArcGIS 应用程序能够适当地拉伸和符号化栅格数据以便于显示。

  • 将处理所有支持的栅格格式。

  • 如果工作空间包含镶嵌数据集,则将仅包含与镶嵌数据集相关联的统计数据。不包含与镶嵌数据集中的各项相关联的统计数据。

  • 小波压缩栅格数据集(如 ECW 和 MrSID)无需构建金字塔。这些格式具有编码时创建的内部金字塔。

语法

arcpy.management.BuildPyramidsandStatistics(in_workspace, {include_subdirectories}, {build_pyramids}, {calculate_statistics}, {BUILD_ON_SOURCE}, {block_field}, {estimate_statistics}, {x_skip_factor}, {y_skip_factor}, {ignore_values}, {pyramid_level}, {SKIP_FIRST}, {resample_technique}, {compression_type}, {compression_quality}, {skip_existing}, {where_clause}, {sips_mode})
参数说明数据类型
in_workspace

包含要处理的所有栅格数据集或镶嵌数据集的工作空间。

如果工作空间包含镶嵌数据集,则将仅包含与镶嵌数据集相关联的统计数据。不包含与镶嵌数据集中的各项相关联的统计数据。

Text File; Workspace; Raster Layer; Mosaic Layer
include_subdirectories
(可选)

指定是否包含子目录。

  • NONE不包括子目录。
  • INCLUDE_SUBDIRECTORIES加载时包括子目录中的所有栅格数据集。这是默认设置。

如果工作空间包含镶嵌数据集,则将仅包含与镶嵌数据集相关联的统计数据。不包含与镶嵌数据集中的各项相关联的统计数据。

Boolean
build_pyramids
(可选)

指定是否构建金字塔。

  • NONE不构建金字塔。
  • BUILD_PYRAMIDS构建金字塔。这是默认设置。
Boolean
calculate_statistics
(可选)

指定是否计算统计数据。

  • NONE不计算统计数据。
  • CALCULATE_STATISTICS计算统计数据。这是默认设置。
Boolean
BUILD_ON_SOURCE
(可选)

指定是为源栅格数据集构建金字塔并计算统计数据还是为镶嵌数据集中的栅格条目构建金字塔并计算统计数据。此选项仅适用于镶嵌数据集。

  • NONE为镶嵌数据集中的每个栅格条目(对应于属性表中的每一行)计算统计数据。在生成统计数据前,将应用为栅格条目添加的所有函数。这是默认设置。
  • BUILD_ON_SOURCE为镶嵌数据集的源数据构建金字塔并计算统计数据。
Boolean
block_field
(可选)

镶嵌数据集属性表中的字段名称,用于标识在执行某些计算和操作时应被视为单一项目的多个项目。

String
estimate_statistics
(可选)

指定是否计算镶嵌数据集(不是其中的栅格)的统计数据。这些统计数据派生自为镶嵌数据集中的每个栅格计算出的现有统计数据。

  • NONE不计算镶嵌数据集的统计数据。这是默认设置。
  • ESTIMATE_STATISTICS计算镶嵌数据集的统计数据。
Boolean
x_skip_factor
(可选)

样本之间水平像素的数量。

在计算统计值时使用的那部分栅格由跳跃因子控制。特定输入值可指示水平或垂直跳跃因子,值为 1 时使用每个像素,值为 2 时则每隔一个像素使用一个。此跳跃因子的取值范围只能从 1 至栅格中列/行的数量。

在计算统计值时使用的那部分栅格由跳跃因子控制。特定输入值可指示水平或垂直跳跃因子,值为 1 时使用每个像素,值为 2 时则每隔一个像素使用一个。此跳跃因子的取值范围只能从 1 至栅格中列/行的数量。

此值必须大于零并小于等于栅格中的列数。默认值为 1 或者为上次使用的跳跃因子。

Long
y_skip_factor
(可选)

样本之间垂直像素的数量。

在计算统计值时使用的那部分栅格由跳跃因子控制。特定输入值可指示水平或垂直跳跃因子,值为 1 时使用每个像素,值为 2 时则每隔一个像素使用一个。此跳跃因子的取值范围只能从 1 至栅格中列/行的数量。

在计算统计值时使用的那部分栅格由跳跃因子控制。特定输入值可指示水平或垂直跳跃因子,值为 1 时使用每个像素,值为 2 时则每隔一个像素使用一个。此跳跃因子的取值范围只能从 1 至栅格中列/行的数量。

此值必须大于零并小于等于栅格中的行数。默认值为 1 或者为上次使用的 y 跳跃因子。

Long
ignore_values
[ignore_value,...]
(可选)

排除在统计值计算之外的像素值。

默认情况下没有值。

Long
pyramid_level
(可选)

选择将构建的递减分辨率数据集图层的数量。默认值为 -1,将构建完整的金字塔。值为 0 时,将不会获得金字塔等级。

可以指定的最大金字塔等级数为 29。任何等于或大于 30 的值都将创建一组完整的金字塔。

Long
SKIP_FIRST
(可选)

选择是否跳过第一个金字塔等级。跳过第一个等级将略微降低占用的磁盘空间大小,但将降低这些比例的性能。

  • NONE将构建第一个金字塔等级。这是默认设置。
  • SKIP_FIRST不构建第一个金字塔等级。
Boolean
resample_technique
(可选)

用于构建金字塔的重采样技术。

  • NEAREST重采样时,该方法使用最邻近像元的值为输出像元分配值。这是默认设置。
  • BILINEAR该方法根据四个最邻近输入像元中心的加权平均距离确定像元的新值。
  • CUBIC该方法通过拟合穿过 16 个最邻近输入像元中心的平滑曲线确定像元的新值。
String
compression_type
(可选)

构建栅格金字塔时使用的压缩类型。

  • DEFAULT如果使用小波压缩方法对源数据进行压缩,则将使用 JPEG 压缩类型构建金字塔;否则,将使用 LZ77。这是默认压缩方法。
  • LZ77将使用 LZ77 压缩算法来构建金字塔。LZ77 可用于任意数据类型。
  • JPEG用于构建金字塔的 JPEG 压缩算法。只有符合 JPEG 压缩规范的数据才能使用此压缩类型。如果选择 JPEG,则可以设置压缩质量
  • JPEG_YCBCR有损压缩使用亮度 (Y) 和色度(Cb 和 Cr)颜色空间组件。
  • NONE构建金字塔时不使用任何压缩方法。
String
compression_quality
(可选)

使用 JPEG 压缩方法构建金字塔时使用的压缩质量。该值必须介于 0 到 100 之间 值越接近 100,图像质量越高,但压缩比越低。

Long
skip_existing
(可选)

指定在缺少统计数据的位置进行计算,还是重新计算全部统计数据(即使已经存在仍重新计算)。

  • SKIP_EXISTING只有当统计数据不存在时才会计算统计数据。这是默认设置。
  • OVERWRITE即使统计数据已经存在仍要重新计算;现有统计数据将被覆盖。
Boolean
where_clause
(可选)

用于选择要处理的栅格数据集的 SQL 表达式。

SQL Expression
sips_mode
(可选)

指定是否使用软拷贝图像处理标准 (SIPS) NGA.STND.0014 中定义的关键流程和算法来启用金字塔文件的构建。

  • NONE将使用标准的子采样方法来构建金字塔。这是默认设置。
  • SIPS_MODE将使用 SIPS 处理来构建金字塔。
Boolean

派生输出

名称说明数据类型
out_workspace

更新的输出工作空间。

文本文件;工作空间;栅格图层;镶嵌图层

代码示例

BuildPyramidsAndStatistics 示例 1(Python 窗口)

这是 BuildPyramidsAndStatistics 工具的 Python 示例。

import arcpy
arcpy.BuildPyramidsAndStatistics_management(
     "C:/Workspace", "INCLUDE_SUBDIRECTORIES", "BUILD_PYRAMIDS",
     "CALCULATE_STATISTICS","BUILD_ON_SOURCE", "BlockField", 
     "ESTIMATE_STATISTICS", "10", "10", "0;255", "-1", "NONE",
     "BILINEAR", "JPEG", "50", "OVERWRITE")
BuildPyramidsAndStatistics 示例 2(独立脚本)

这是 BuildPyramidsAndStatistics 工具的 Python 脚本示例。

#Build pyramids and calculate statistics for all raster in a folder

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

inws = "folder"
includedir = "INCLUDE_SUBDIRECTORIES"
buildpy = "BUILD_PYRAMIDS"
calcstats = "CALCULATE_STATISTICS"
buildsource = "NONE"
blockfield = "#"
estimatemd = "#"
skipx = "4"
skipy = "6"
ignoreval = "0;255"
pylevel = "3"
skipfirst = "NONE"
resample = "BILINEAR"
compress = "JPEG"
quality = "80"
skipexist = "SKIP_EXISTING"

arcpy.BuildPyramidsAndStatistics_management(
     inws, includedir, buildpy, calcstats, buildsource, blockfield,
     estimatemd, skipx, skipy, ignoreval, pylevel, skipfirst,
     resample, compress, quality, skipexist)

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题