ArcMap 计算栅格统计值

环境配置

产品:ArcMap 10.2.2

时间:2025年

操作系统:Windows 11

系统配置

  • CPU:Intel(R) Core(TM) i7-10750H
  • RAM:16G
  • GPU:NVIDIA GeForce RTX 2060

1. 查看波段统计值

在栅格数据集数据源中查看波段统计信息,如果已经计算过栅格统计数据,则会显示统计值,未统计的话则显示未计算统计值。

2. 计算栅格统计值

2.1. 使用数据管理工具箱

打开ArcToolbox,点击数据管理工具箱->栅格->栅格属性->栅格统计。

在栅格统计窗口中,选择要计算的栅格数据集,输入列和行(X和Y)方向跳跃因子。其他参数默认,点击确认。(说实话,这跳跃因子具体是什么意思,直接没看明白!!)

2.2. 使用ArcPy脚本

点击工具栏图标,打开Python编辑器窗口,输入统计栅格值脚本,按回车运行脚本,进行栅格统计计算。

CalculateStatistics_management参数

  • in_raster_dataset:栅格数据集或镶嵌数据集路径
  • x_skip_factor(可选):样本之间水平方向像素数量
  • y_skip_factor(可选):样本之间竖直方向像素数量
  • ignore_values(可选):排除在统计值计算之外的像素值
  • skip_existing(可选):指定是在缺少统计数据的位置进行计算,还是重新计算全部统计数据(即使已经存在仍重新计算)
    • OVERWRITE—即使统计数据已经存在仍要重新计算,并且将覆盖现有统计数据(默认)
    • SKIP_EXISTING—只有当统计数据不存在时才会计算统计数据
  • area_of_interest(可选):表示数据集中开始计算统计数据区域的要素类,这样,可避免从整个数据集生成统计数据
import arcpy
arcpy.CalculateStatistics_management(
  "E:/OpenLayers/data/raster/Sentinel/S2A_MSIL2A_20230314T032511_N0509_R018_T48RXQ_20230314T080556/S2A_MSIL2A_20230314T032511_N0509_R018_T48RXQ_20230314T080556.SAFE/GRANULE/L2A_T48RXQ_A040341_20230314T033809/IMG_DATA/R10m/T48RXQ_20230314T032511_TCI_10m.jp2", "5", "5", "0;255", 
  "SKIP_EXISTING", "")

一些脚本提示:

  • F1在当前游标位置显示帮助
  • F2检查当前行的语法,在多行模式中检查代码块
  • ESC取消当前操作
  • Shift或者Control加上Enter进入多行模式,在最后一行回车,可退出多行模式
  • 上下箭头获取历史数据
  • 右键获取更多可选操作

3. 计算完成

当成功计算或脚本成功运行时,可以看到属性统计信息中具有栅格计算值。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部