赞
踩
近期在做内蒙古自治区生态效益监测评估相关工作,由于所有数据均落在小班(林业区划最小单元)中计算,因此涉及到将一部分栅格数据中的值汇总到小班中。
有些小伙伴可能会选择先将要素转换为点,再由ArcGIS中Spatial Analyst工具箱里的值提取至点工具来获取栅格的值。
这种方法在精度上会造成一定的损失,尤其在栅格分辨率较高的情况下,提取的值并不能完全表示该小班的值。
这里介绍另一种方法来为整块小班提取栅格的像素平均值。
先从ArcGIS Pro中抄些原理下来。
以表格显示分区统计:汇总另一个数据集区域内的栅格数据值并以表的形式显示结果。
工作原理:分区统计操作是一种用于计算由另一个数据集定义的区域内的栅格(值栅格)的像元值的统计操作。有两种工具可以按区域、分区统计和以表格显示分区统计计算统计数据。
分区统计工具一次仅计算一个统计数据,并创建一个栅格输出。该值变为与该区域相对应的像元的栅格输出的像元值。如果区域要素包含重叠区域,则仅针对一个区域计算统计数据,因为输出栅格中的像元只能表示一个值。
以表格显示分区统计工具使用预定义子集或所有统计数据来计算一个或多个统计数据,并创建表输出。与分区统计相同,得到的统计数据是每个区域的单个值。输出表中每个区域都有一条记录,并且统计值是在预定义字段中进行报告。如果区域输入是要素,并且包含重叠区域,则将计算所有区域的统计数据,并在每个区域的单独记录中报告输出。
为了计算统计数据,该工具首先从每个区域内的所有像元的值栅格中提取像元值。区域内值栅格中的像元识别是通过叠加值栅格上的区域来完成的。当区域和值输入都是相同像元大小的栅格并且像元已对齐时,将提取叠加该区域的像元的值栅格的像元值,并计算统计数据。
当区域栅格的像元大小或对齐方式与值栅格的像元大小或对齐方式不同时,区域栅格和值栅格之间的像元将无法彼此完美地叠加。然后,该工具将在内部调整一个或两个栅格,以实现像元的完美叠加。此调整可遵循一些简单规则来进行。如果区域栅格的像元大小与值栅格的像元大小不同,则输出像元大小的值将为输入的最大值,且值栅格将在内部用作捕捉栅格。如果像元大小相同,但像元不对齐,则值栅格将在内部用作捕捉栅格。在执行区域操作之前,上述任一情况都会触发内部重采样。
在本质上,分区操作是对两个栅格进行的栅格分析,其中一个是区域,另一个是值。如果区域是由要素定义,则将发生内部要素到栅格的转换。面区域的内部转换将在面转栅格工具使用像元中心法来通过像元大小和值栅格的捕捉栅格栅格化输入。当栅格化网格的像元中心都不位于要素区域内时,这可能导致输出中缺失区域的意外结果。这可能会在小于内部区域栅格像元区域的区域以及较大的区域中发生。
在下面的示例中,图 (1) 表示输入要素区域、输入值栅格及其像元中心。输入要素具有三个区域(黄色形状),以下表述均为真:
zone1 大于单个像元。
zone2 和 zone3 小于一个像元。
像元中心位于 zone2 之外,但在 zone3 之内。
在图 (2) 的区域栅格化过程中,因为没有像元中心位于 zone1 和 zone2,只有 zone3 被栅格化,并且其他两个区域基本消失。
为避免区域从输出中消失,请确保每个区域都包含来自值栅格的一个或多个像元中心。这样做的方法之一是通过在环境中指定较小的像元大小来创建更多像元中心。默认情况下,分析像元大小为值栅格的大小。但是,如果您在分析环境中指定的像元大小小于值栅格的像元大小,您将启用更多要被捕获的区域,如上面的图 (3) 所示。切记指定像元大小越小,生成的输出栅格越大。较高的分辨率输出并不一定像看起来那样高质量,因为其他详细信息实际上没有存在于输入值栅格中。
原理看过后,我们进行实际的值提取。
运行后,输出表将添加到内容窗格的底部。将其打开,可以看到原始OBJECTID值和一个名为 MEAN 的包含平均像元值的列。通过OBJECTID可以用属性连接的方式将值连接回小班。这样该小班就得到了精度较高的像元值。
由于值栅格精度不高(1000米),上图可见数据有99551条,而输入的要素类其实有1313436条,这就说有1213885条实际是由于栅格化网格的像元中心都不位于要素区域内时而消失了。
很尴尬,通过分区统计看一下丢了确实挺多的。
那这些丢掉的怎么赋值呢?
以上都是为了提高数据的精度和结果的质量,当我们拥有更高精度的值栅格时,自然丢掉的小班就相应的减少了。
如果有小伙伴有更好的方法,还请多多指教一起交流进步。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。