ArcGIS栅格计算器

时间:2024-04-05 07:14:52

栅格计算是栅格数数据空间分析中数据处理和分析中最为常用的方法,应用非常广泛,能够解决各种类型的问题,尤其重要的是,它是建立复杂的应用数学模型的基本模块。ArcGIS提供了非常友好的图形化栅格计算器,利用栅格计算器,不仅可以方便的完成基于数学运算符的栅格运算,以及基于数学函数的栅格运算,而且它还支持直接调用ArcGIS自带的栅格数据空间分析函数,并且可以方便的实现多条语句的同时输入和运行。

一数学运算

数学运算主要是针对具有相同输入单元的两个或多个栅格数据逐网格进行计算的。主要包括三组数学运算符:算术运算符,布尔运算符和关系运算符。

1.算术运算

算术运算主要包括加、减、乘、除四种。可以完成两个或多个栅格数据相对应单元之间直接的加、减、乘、除运算。

例如,以今年与去年的降水量数据为基础,用公式(今年降水量-去年降水量)/去年降水量,可以计算出去年降水量的变化程度,如图1。(单位:毫米)

ArcGIS栅格计算器

图1算术运算示意图

2.布尔运算

布尔运算主要包括:和(And)、或(Or)、异或(Xor)、非(Not)。它是基于布尔运算来对栅格数据进行判断的。经判断后,如果为“真”,则输出结果为1,如果为“假”,则输出结果为0。

(1)和(&):比较两个或两个以上栅格数据层,如果对应的栅格值均为非0值,则输出结果为真(赋值为1),否则输出结果为假(赋值为0)。

(2)或(|):比较两个或两个以上栅格数据层,对应的栅格值中只要有一个或一个以上为非0值,则输出结果为真(赋值为1),否则输出结果为假(赋值为0)。

(3)异或(!):比较两个或两个以上栅格数据层,如果对应的栅格值在逻辑真假互不相同(一个为0,一个必为非0值),则输出结果为真(赋值为1),否则输出结果为假(赋值为0)。

(4)非(^):对一个栅格数据层进行逻辑“非”运算。如果栅格值为0,则输出结果为1;如果栅格值非0,则输出结果为0。

例如,以过去及现在的地表类型为基础,说明用“和”来提取从未被沙漠化过的地表的方法,如图2(其中沙漠为0,其它数值代表了不同的地表类型)。

ArcGIS栅格计算器

图2布尔运算示意图

3.关系运算

关系运算以一定的关系条件为基础,符合条件的为真,赋予1值,不符条件的为假,赋予0值。关系运算符包括六种:=,<,>,<>,>=,<=。

例如,需要提取出温度介于20度到30度之间的地区(包括20度和30度),公式为:20<=[温度]<=30。

二函数运算

栅格计算器除了提供给大家简单的数学运算符来进行栅格计算外还提供给大家一些相对复杂的函数运算,包括数学函数运算和栅格数据空间分析函数运算。数学函数主要包括:算术函数、三角函数、对数函数和幂函数。

1.算术函数(Arithmetic)

算术函数主要包括六种:Abs(绝对值函数)、Int(整数函数)、Float(浮点函数)、Ceil(向上舍入函数)、Floor(向下舍入函数)、IsNul(输入数据为空数据者以1输出,有数据者以0输出)。

2.三角函数(Trigonometric)

常用的三角函数包括:Sin(正弦函数)、Cos(余弦函数)、Tan(正切函数)、Asin(反正弦函数)、Acos(反余弦函数)、Atan(反正切函数)。

3.对数函数(Logarithms)
对数函数可对输入的格网数字做对数或指数的运算。指数部份包括:Exp (底数e)、Exp10 (底数10)、Exp2 (底数2)三种;对数部份包括:Log(自然对数)、Log10 (底数10)、log2 (底数2)等三种。

4.幂函数(Powers)
幂函数可对输入的格网数字进行幂函数运算。幂函数包括三种:Sqrt (平方根)、Sqr (平方)、Pow (幂)。

5.栅格数据空间分析函数
栅格计算器也直接支持ArcGis自带的大部分栅格数据分析与处理函数,如栅格表面分析中的slope、hillshade函数等等。它与数学函数不同的是,这些函数并没有出现在栅格计算器图形界面中,而是由计算者自己手动输入。

三栅格计算器

1.启动栅格计算器

点击Spatial Analyst的下拉箭头,选择Raster Calculator。栅格计算器由五部分组成(图3),左上部Layers选择框为当前Arcmap试图中已加载的所有栅格数据层名列表,双击任一个数据层名,该数据层名便可自动添加到左下部的公式编辑器中,中间部位是常用的算术运算符、0~10、小数点、关系和逻辑运算符面板,单击所需按钮,按钮内容便可自动添加到公式编辑器中。右边可伸缩区域为常用的数学运算函数面板,同样单击任一个按钮,按钮内容便可自动添加到公式编辑器中,下面空白区域为计算公式输入面板;再下面就是输出结果的保存路径设置,点击Ok完成整个的栅格图层之间的叠加分析计算。

ArcGIS栅格计算器

图 3 栅格计算器对话框

2.编辑计算公式

(1)简单算术运算

如下图4所示,在公式输入栏中直接输入计算公式即可,输出保存结果路径,点击确定完整整个公式的计算。

ArcGIS栅格计算器

图4栅格计算器的数学算术运算

(2)数学函数运算

数学函数运算需要注意的是它输入时需要先点击函数按钮,然后在函数后面的括号内加入计算对象,如图5所示。

ArcGIS栅格计算器

图5栅格计算器的数学函数运算

(3)栅格数据空间分析函数运算
栅格数据空间分析函数没有直接出现在栅格计算器面板中,因此需要计算者自己手动输入。需要时引用它们时,首先必须查阅有关文档,查清楚它们的函数全名、参数、引用的语法规则等。然后在栅格计算器输入函数全名,并输入一对小括号,再在小括号中输入相关参数或计算对象,如图6所示。

ArcGIS栅格计算器

图6栅格数据空间分析函数运算

(4)多语句的编辑

ArcGIS栅格计算器多表达式同时输入,具体的表达方式如下图7所示;条件一:Dem*10 ;条件二:找出上述结果 >= 2500的像元值,并给予输出;两个条件之间的关系可以通过()以及运算符号来完成。

ArcGIS栅格计算器

图7栅格计算器的多语句编辑