计算统计数据 (Data Management)
摘要
计算栅格数据集或镶嵌数据集的统计数据。
需要对栅格和镶嵌数据集进行统计方可执行诸如应用对比度拉伸或分类数据等任务。
用法
-
通过计算统计值,ArcGIS 应用程序能适当地对显示的栅格数据进行拉伸和符号化操作。
-
在计算统计值时使用的那部分栅格数据集由跳跃因子控制。特定输入值可指示水平或垂直跳跃因子,值为 1 时使用每个像素,值为 2 时则每隔一个像素使用一个。此跳跃因子的取值范围只能从 1 至栅格数据集中列/行中的数量。
-
对于储存在文件地理数据库或 ArcSDE 地理数据库中的栅格数据集,它们的跳跃因子则大为不同。首先,如果 x 和 y 跳跃因子不同,则使用两者中较小的一个来作为 x 和 y 共同的跳跃因子。其次,跳跃因子同与其最接近的金字塔等级相关联。如果跳跃因子的值不等于金字塔中像素的数量(例如,如果跳跃因子为 5,且最接近的金字塔等级为 4 x 4 像素,即等级 2),则软件将向下舍入到下一个金字塔等级(在此示例中为 2)并使用该值作为跳跃因子。
-
并不是所有栅格格式都可使用跳跃因子。计算统计值时可利用跳跃因子的栅格格式包括:TIFF、IMG、NITF、DTED、RAW、ADRG、CIB、CADRG、DIGEST、GIS、LAN、CIT、COT、ERMapper、ENVI DAT、BIL、BIP、BSQ 和地理数据库。
使用此工具计算镶嵌数据集的统计数据时,仅计算顶层镶嵌图像的统计数据,而不计算嵌数据集中所包含的各个栅格的统计数据。
强烈建议为镶嵌数据集指定跳跃因子,因为这些数据集通常都非常大。
-
“忽略值”选项可用于从统计值计算中排除特定值。如果某值为 NoData 或会影响计算,则最好忽略该值。
-
以 GRID 和 RADARSAT2 格式计算统计值时始终将跳跃因子设为 1。
语法
参数 | 说明 | 数据类型 |
in_raster_dataset |
输入栅格数据集或镶嵌数据集。 | Mosaic Dataset; Mosaic Layer; Raster Dataset |
x_skip_factor (可选) |
样本之间水平像素的数量。 此值必须大于零,并且小于等于栅格数据集中的列数。默认值为 1 或者为上次使用的跳跃因子。 对于储存在文件地理数据库或 ArcSDE 地理数据库中的栅格数据集,它们的跳跃因子并不相同。首先,如果 x 和 y 跳跃因子不同,则使用两者中较小的一个来作为 x 和 y 共同的跳跃因子。其次,跳跃因子同与其最接近的金字塔等级相关联。如果跳跃因子不等于金字塔图层中像素的数量,则该数量向下舍入至下一个金字塔等级,并使用那些统计值。 | Long |
y_skip_factor (可选) |
样本之间垂直像素的数量。 此值必须大于零并小于等于栅格中的行数。默认值为 1 或者为上次使用的 y 跳跃因子。 对于储存在文件地理数据库或 ArcSDE 地理数据库中的栅格数据集,它们的跳跃因子并不相同。首先,如果 x 和 y 跳跃因子不同,则使用两者中较小的一个来作为 x 和 y 共同的跳跃因子。其次,跳跃因子同与其最接近的金字塔等级相关联。如果跳跃因子不等于金字塔图层中像素的数量,则该数量向下舍入至下一个金字塔等级,并使用那些统计值。 | Long |
ignore_values [ignore_value,...] (可选) |
排除在统计值计算之外的像素值。 默认情况下没有值,或者是上次使用的忽略值。 | Long |
skip_existing (可选) | 指定在缺少统计数据的位置进行计算,还是重新计算全部统计数据(即使已经存在仍重新计算)。
| Boolean |
area_of_interest (可选) |
指定表示数据集中开始计算统计数据区域的要素类,这样,可避免从整个数据集生成统计数据。 | Feature Set |
代码实例
这是 CalculateStatistics 的 Python 示例。
import arcpy
arcpy.CalculateStatistics_management(
"C:/data/image.tif", "5", "5", "0;255",
"SKIP_EXISTING", "c:/data/aoi.shp")
这是 CalculateStatistics 的 Python 脚本示例。
# Calculate Statistics for single raster dataset
import arcpy
arcpy.env.workspace = "C:/Workspace"
arcpy.CalculateStatistics_management("image.tif", "4", "6", "0;255;21")