块统计的工作原理
块统计工具所执行的邻域运算可为一组固定的非重叠窗口或邻域中的输入像元计算统计数据。包括每个邻域内的所有输入像元的统计数据(如最大值、最小值、平均值或总和)。为单个邻域或块生成的值会分配给包含在指定邻域的最小外接矩形中的所有像元。
由于各邻域间不重叠,所以只会将一个块的任何特定像元包括在计算中。
邻域的形状可以是环形(圆环)、圆形、矩形或楔形。邻域内可以计算的统计量有均值、众数、最大值、中值、最小值、少数、范围、标准差、总和以及变异度。
从概念上讲,块统计工具的工作原理如下:
- 在分析窗口的左上角创建第一个指定的邻域,例如圆形邻域。
- 计算最小外接矩形以确定输出块的大小。
- 将栅格的其余区域分成多个已定义的块。块之间不能出现重叠。
- 在每个块中识别块计算将要使用的像元位置。像元位置由适合外接矩形的特定邻域(如圆形邻域)确定。
- 为每个块的各个邻域计算输出值。将结果值分配给对应输出块中的各个像元。
邻域类型
邻域可以是环形(圆环)、圆形、矩形或楔形。通过使用核文件,也可自定义邻域形状,以及在计算统计数据之前将不同的权重分配给邻域中的各个特定像元。
以下是不同邻域形状的介绍及其定义方法:
- 环形
- 环形由两个圆组成,一个圆位于另一个圆的内侧,从而构成圆环。中心落在小圆半径范围以外,但落在大圆半径范围以内的像元将包含在邻域处理范围内。因此,处于两个圆形之间的区域构成环形邻域。
- 半径用像元单位或地图单位标识并且沿着垂直于 x 轴或 y 轴的方向进行测量。采用地图单位指定半径时,会将其转换为以像元为单位的半径。所得的以像元为单位的半径会生成一个区域,该区域能够近似地表示出以原始的地图单位为半径时计算的区域。中心位于环形内的所有像元都将包括在邻域的处理范围内。
- 默认环形邻域具有一个像元的内半径以及三个像元的外半径。
- 以下为环形邻域的示例图:
- 圆形
- 圆形邻域通过指定半径值进行创建。
- 半径用像元单位或地图单位标识并且沿着垂直于 x 轴或 y 轴的方向进行测量。采用地图单位指定半径时,会采用附加逻辑条件来确定在处理邻域时要包含的像元。首先,根据指定的半径值计算出准确的圆面积。然后,再计算出另外两个圆面积值,一个是指定半径值向下舍入后的圆面积,另一个是指定半径值向上舍入后的圆面积。这两个面积分别与用指定半径计算出的准确面积值进行比较,二者中更为接近准确值的一个将被用于运算过程中。
- 默认圆形邻域的半径为三个像元。
- 以下为圆形邻域的示例图:
- 矩形
- 矩形邻域是通过提供以像元或地图单位定义的宽度和高度进行指定的。
- 仅将中心处于定义对象内的像元作为矩形邻域的一部分进行处理。
- 默认矩形邻域是高度和宽度均为三个像元的正方形。
- 以下为矩形邻域的示例图:
- 楔形
- 楔形是由半径、起始角度和终止角度指定的饼形邻域。
- 楔形按逆时针方向从起始角延伸到终止角。角度指定为 0 度到 360 度之间的算数度,其中 0 度位于 x 轴正方向(3 点钟方向);角度可为整型或浮点型。可使用负角度。
- 半径用像元单位或地图单位标识并且沿着垂直于 x 轴或 y 轴的方向进行测量。采用地图单位指定半径时,会将其转换为以像元为单位的半径。所得的以像元为单位的半径会生成一个区域,该区域能够近似地表示出使用原始的地图单位为半径时计算的区域。中心位于楔形内的所有像元都将包括在邻域的处理范围内。
- 默认楔形邻域起始角度为 0 度,终止角度为 90 度,半径为三个像元。
- 以下为楔形邻域的示例图:
- 不规则形状
- 用于指定形状不规则的邻域。
- 通过不规则形状核文件可指定应包含在邻域范围内的像元位置。
- 对于不规则邻域的核文件:
- 不规则形状核文件属于 ASCII 文本文件,可定义不规则邻域的值和形状。可以使用任何文本编辑器来创建此文件。
- 第一行指定了邻域的宽度和高度(表示为由空格分开的 x 轴方向上的像元数和 y 轴方向上的像元数)。
- 随后几行则指定了邻域中各个位置的值。按照与各像元在所在邻域中相同的配置输入这些像元值。各个值之间需要由空格分隔。
- 核文件中的值非 0(零)即 1(一)。任何不等于 0 的值均将视为 1。
- 某像元位置的值为 0(非空)表示该像元不属于该邻域从而无法用于邻域处理。而值为 1 则表示该值对应的像元(和像元值)属于该邻域。
- 以下示例为 ASCII 不规则形状核文件及其所代表的邻域:
- 权重
- 与不规则邻域类型相似,权重邻域用于定义不规则形状邻域,此外还可以指定各输入值的权重。
- 权重核文件可指定应包含在邻域范围内的各像元位置及其权重。
- 权重邻域仅适用于平均值、标准差 (STD) 和总和统计类型。
- 对于加权邻域的核文件:
- 权重核文件属于 ASCII 文本文件,可定义权重邻域的值和形状。可以使用任何文本编辑器来创建此文件。
- 第一行指定了邻域的宽度和高度(表示为由空格分开的 x 轴方向上的像元数和 y 轴方向上的像元数)。
- 随后几行则指定了邻域中各个位置的权重值。按照与各像元在所在邻域中相同的配置输入这些像元值。正值、负值和小数值均可用作权重。各个值之间需要由空格分隔。
- 对于邻域中不用于计算的位置,核文件中的相应位置将用值 0 表示。
- 以下示例为 ASCII 加权核文件及其所代表的邻域:
统计类型
可用的统计数据包括众数、最大值、平均值、中值、最小值、少数、范围、标准差和总和。默认统计类型为平均值。
- 众数
- 只有整型栅格数据可以作为输入。
- 当邻域范围内存在多个众数值时,该块内所有像元的输出值将为 NoData。
- 最大值
- 如果输入栅格值为整型,则输出栅格中的值也将为整型;如果输入栅格值为浮点型,则输出栅格中的值也将为浮点型。
- 平均值
- 输出栅格将始终为浮点型。
- 平均值统计数据适用于权重邻域类型。
- 中值
- 只有整型栅格数据可以作为输入。
- 如果邻域中有效像元值数量为奇数,则将排列这些值然后选择位于中间的值作为中值。如果邻域中值的数量为偶数,则将对这些值进行排列,然后取中间两个值的平均值。
- 最小值
- 如果输入栅格值为整型,则输出栅格中的值也将为整型;如果输入栅格值为浮点型,则输出栅格中的值也将为浮点型。
- 少数
- 只有整型栅格数据可以作为输入。
- 当邻域范围内存在多个少数值时,该块中所有像元的输出值将为 NoData。
- 范围
- 如果输入栅格值为整型,则输出栅格中的值也将为整型;如果输入栅格值为浮点型,则输出栅格中的值也将为浮点型。
- 通过应用以下简单公式可逐个像元地确定输出栅格中各个像元值:块范围 = 块最大值 – 块最小值。
- STD
- 输出栅格将始终为浮点型。
- STD 统计数据适用于权重邻域类型。
- 总和
- 如果输入栅格值为整型,则输出栅格中的值也将为整型;如果输入栅格值为浮点型,则输出栅格中的值也将为浮点型。
- 变异度
- 只有整型栅格数据可以作为输入。
待处理的 NoData 像元
在计算中忽略 NoData 选项可控制邻域窗口内 NoData 像元的处理方式。选中此选项时(DATA 选项),输出像元值的计算将会忽略邻域中的所有 NoData 像元。取消选中此选项时(NODATA 选项),如果邻域中存在任何 NoData 像元,则输出像元将为 NoData。
块统计的用途
块统计工具可用于替代重采样工具将栅格从精细分辨率重采样到粗糙分辨率。但是,其不使用最邻近、双线性或三次卷积等重采样方法,而是为粗糙分辨率的栅格像元分配原精细分辨率下各像元的最大值、最小值或平均值。要完成此操作,应选用适当的统计数据,例如平均值或最大值。
“制图综合”工具集中的聚合工具在以下方面与块统计类似:它允许根据空间窗口内各像元的总和值、平均值、中值、最小值或最大值(由所需输出分辨率确定)实现聚合。但这两种方法也存在两个主要区别:
- 聚合工具生成的输出栅格会被重采样到所需分辨率。
- 聚合工具中不存在指定邻域这一概念。邻域与输出块完全相同,始终为矩形,且包含相同的像元位置。在聚合工具中,块的大小由达到期望分辨率所需的像元数来确定。
相关主题
5/10/2014