ArcGIS教程:提取栅格像元几种方式

ArcGIS教程:提取栅格像元几种方式
ArcGIS教程:提取栅格像元几种方式

ArcGIS教程:栅格像元的提取

一、按属性提取

摘要

基于逻辑查询提取栅格像元。

插图

用法

· 如果 Where 子句的求值结果是 True,则将为该像元位置返回初始输入值。如果其求值结果是False,则将为像元位置指定 NoData。

· 对于输出栅格,将舍弃输入栅格中的所有额外项(值和计数除外)。

· 如果在 Where 子句中指定了除输入栅格的值以外的某一项,则将为此像元位置返回初始输入值。

· 当输入为多波段栅格时,将输出一个新的多波段栅格。对输入多波段栅格中的每一单个波段都会进行相应分析。

默认输出格式是 Esri Grid 堆栈。请注意,Esri Grid 堆栈的名称不能以数字开头、不能使用空格,并且长度不能超过 9个字符。

· 如果输入内容为根据多波段栅格(超过三个波段)创建的图层,提取操作将只考虑图层加载(符号化)的波段。因此,输出的多波段栅格只会具有三个波段,分别对应于输入图层显示中使用的多波段栅格。

· 如果输入栅格为整型,那么输出栅格也为整型。如果输入栅格为浮点型,则输出栅格也为浮点型。

语法

ExtractByAttributes (in_raster, where_clause)

返回值

代码实例

按属性提取 (ExtractByAttributes) 示例 1(Python 窗口)

本示例将基于逻辑查询从栅格中提取像元,其中高程大于 1,000 米。

import arcpy

from arcpy import env

from arcpy.sa import *

env.workspace = "C:/sapyexamples/data"

attExtract = ExtractByAttributes("elevation", "VALUE > 1000") attExtract.save("c:/sapyexamples/output/attextract")

按属性提取 (ExtractByAttributes) 示例 2(独立脚本)

本示例将基于逻辑查询从栅格中提取像元,其中高程大于 1,000 米。

# Name: ExtractByAttributes_Ex_02.py

# Description: Extracts the cells of a raster based on a logical query. # Requirements: Spatial Analyst Extension

# Import system modules

import arcpy

from arcpy import env

from arcpy.sa import *

# Set environment settings

env.workspace = "C:/sapyexamples/data"

# Set local variables

inRaster = "elevation"

inSQLClause = "VALUE > 1000"

# Check out the ArcGIS Spatial Analyst extension license

arcpy.CheckOutExtension("Spatial")

# Execute ExtractByAttributes

attExtract = ExtractByAttributes(inRaster, inSQLClause)

# Save the output

attExtract.save("c:/sapyexamples/output/attextract02")

二、按圆形区域提取

摘要

基于圆提取栅格像元。

用法

· 可通过像元的中心来确定该像元是位于圆的内部还是位于圆的外部。如果中心位于圆弧的内部,则即使部分像元落在圆外,也会将此像元视为完全处于圆内。

· 未选择的像元位置被赋予 NoData 值。

· 当输入为多波段栅格时,将输出一个新的多波段栅格。对输入多波段栅格中的每一单个波段都会进行相应分析。

默认输出格式是 Esri Grid 堆栈。请注意,Esri Grid 堆栈的名称不能以数字开头、不能使用空格,并且长度不能超过 9个字符。

· 如果输入内容为根据多波段栅格(超过三个波段)创建的图层,提取操作将只考虑图层加载(符号化)的波段。因此,输出的多波段栅格只会具有三个波段,分别对应于输入图层显示中使用的多波段栅格。

· 如果输入栅格为整型,那么输出栅格也为整型。如果输入栅格为浮点型,则输出栅格也为浮点型。

语法

ExtractByCircle (in_raster, center_point, radius, {extraction_area})

返回值

代码实例

按圆形区域提取 (ExtractByCircle) 示例 1(Python 窗口)

本示例将在某一点位置方圆 500 米的半径范围内提取像元。

import arcpy

from arcpy import env

from arcpy.sa import *

env.workspace = "C:/sapyexamples/data"

outExtCircle = ExtractByCircle("elevation", arcpy.Point(482838.823, 222128.982),

500, "INSIDE")

outExtCircle.save("c:/sapyexamples/output/extcircle")

按圆形区域提取 (ExtractByCircle) 示例 2(独立脚本)

本示例将在某一点位置方圆 1,000 米的半径范围内提取像元。

# Name: ExtractByCircle_Ex_02.py

# Description: Extracts the cells of a raster based on a circle.

# Requirements: Spatial Analyst Extension

# Import system modules

import arcpy

from arcpy import env

from arcpy.sa import *

# Set environment settings

env.workspace = "C:/sapyexamples/data"

# Set local variables

inRaster = ("elevation")

centerPoint = arcpy.Point(482838.823, 222128.982)

circRadius = 1000

extractType = "INSIDE"

# Check out the ArcGIS Spatial Analyst extension license

arcpy.CheckOutExtension("Spatial")

# Execute ExtractByCircle

outExtCircle = ExtractByCircle(inRaster, centerPoint, circRadius,

extractType)

# Save the output

outExtCircle.save("c:/sapyexamples/output/extcircle02")

三、按掩膜提取

摘要

提取所定义掩膜区域内的栅格像元。

插图

用法

· 按掩膜提取工具与设置掩膜环境大体相同,但二者的区别在于输入掩膜只适用于即时实例,而在环境中设置的掩膜可在发生更改或被禁用之前应用于所有工具。

· 当输入为多波段栅格时,将输出一个新的多波段栅格。对输入多波段栅格中的每一单个波段都会进行相应分析。

默认输出格式是 Esri Grid 堆栈。请注意,Esri Grid 堆栈的名称不能以数字开头、不能使用空格,并且长度不能超过 9个字符。

· 如果输入内容为根据多波段栅格(超过三个波段)创建的图层,提取操作将只考虑图层加载(符号化)的波段。因此,输出的多波段栅格只会具有三个波段,分别对应于输入图层显示中使用的多波段栅格。

· 如果输入掩膜是栅格,则会将非 NoData 输入像元位置的值复制到输出栅格。可用来创建掩膜栅格的工具包括条件函数、条件测试,以及提取分析工具集中的其他工具。

· 当为输入栅格掩膜指定多波段栅格时,将只在运算中使用第一个波段。

· 如果输入栅格为整型,那么输出栅格也为整型。如果输入栅格为浮点型,则输出栅格也为浮点型。

语法

ExtractByMask (in_raster, in_mask_data)

返回值

代码实例

按掩膜提取 (ExtractByMask) 示例 1(Python 窗口)

本示例将从栅格内提取由输入面 shapefile 要素类所定义的掩膜内的像元。

import arcpy

from arcpy import env

from arcpy.sa import *

env.workspace = "C:/sapyexamples/data"

outExtractByMask = ExtractByMask("elevation", "mask.shp") outExtractByMask.save("C:/sapyexamples/output/maskextract")

按掩膜提取 (ExtractByMask) 示例 2(独立脚本)

本示例将从栅格内提取由输入面 shapefile 要素类所定义的掩膜内的像元。

# Name: ExtractByMask_Ex_02.py

# Description: Extracts the cells of a raster that correspond with the areas # defined by a mask.

# Requirements: Spatial Analyst Extension

# Import system modules

import arcpy

from arcpy import env

from arcpy.sa import *

# Set environment settings

env.workspace = "C:/sapyexamples/data"

# Set local variables

inRaster = "elevation"

inMaskData = "mask.shp"

# Check out the ArcGIS Spatial Analyst extension license

arcpy.CheckOutExtension("Spatial")

# Execute ExtractByMask

outExtractByMask = ExtractByMask(inRaster, inMaskData)

# Save the output

outExtractByMask.save("C:/sapyexamples/output/extractmask")

四、用点提取

摘要

基于一组坐标点提取栅格像元。

用法

· 未选择的像元位置被赋予 NoData 值。

· 当输入为多波段栅格时,将输出一个新的多波段栅格。对输入多波段栅格中的每一单个波段都会进行相应分析。

默认输出格式是 Esri Grid 堆栈。请注意,Esri Grid 堆栈的名称不能以数字开头、不能使用空格,并且长度不能超过 9个字符。

· 如果输入内容为根据多波段栅格(超过三个波段)创建的图层,提取操作将只考虑图层加载(符号化)的波段。因此,输出的多波段栅格只会具有三个波段,分别对应于输入图层显示中使用的多波段栅格。

· 如果输入栅格为整型,那么输出栅格也为整型。如果输入栅格为浮点型,则输出栅格也为浮点型。

语法

ExtractByPoints (in_raster, points, {extraction_area})

返回值

代码实例

用点提取 (ExtractByPoints) 示例 1(Python 窗口)

本示例将基于指定点坐标提取栅格的像元。

import arcpy

from arcpy import env

from arcpy.sa import *

env.workspace = "C:/sapyexamples/data"

pointList = [arcpy.Point(743050, 4321275), arcpy.Point(743100, 4321200), arcpy.Point(734500,4322000)]

outPointExtract = ExtractByPoints("soil", pointList,"INSIDE") outPointExtract.save("c:/sapyexamples/output/pntextract")

用点提取 (ExtractByPoints) 示例 2(独立脚本)

本示例将基于指定点坐标提取栅格的像元。

# Name: ExtractByPoints_Ex_02.py

# Description: Extracts the cells of a raster based on a set of points. # Requirements: Spatial Analyst Extension

# Import system modules

import arcpy

from arcpy import env

from arcpy.sa import *

# Set environment settings

env.workspace = "C:/sapyexamples/data"

# Set local variables

inRaster = "soil"

pointList = [arcpy.Point(743050, 4321275),

arcpy.Point(743100, 4321200),

arcpy.Point(743500, 4322000),

arcpy.Point(742900, 4321800)]

# Check out the ArcGIS Spatial Analyst extension license

arcpy.CheckOutExtension("Spatial")

# Execute ExtractByPoints

outPointExtract = ExtractByPoints("soil", pointList,"INSIDE")

# Save the output

outPointExtract.save("c:/sapyexamples/output/pntext")

五、多边形提取

摘要

基于多边形提取栅格像元。

用法

· 若要基于要素类中的多边形提取像元,而不是提供一系列 x,y 坐标对,则可以使用按掩膜提取工具。

· 可通过像元的中心来确定该像元是位于多边形的内部还是多边形的外部。如果中心位于多边形弧的内部,则即使部分像元落在多边形之外,也会将此像元视为完全处于多边形之内。

· 多边形最多可以有 1,000 个折点。多边形折点必须按顺时针顺序输入。如果要使用多个多边形,则第一个折点和最后一个折点必须相同,以使多边形闭合。如果最后的点不相同,多边形将自动闭合。多边形的弧之间可以相交,但不建议您使用过于复杂的多边形。

· 未选择的像元位置被赋予 NoData 值。

· 当输入为多波段栅格时,将输出一个新的多波段栅格。对输入多波段栅格中的每一单个波段都会进行相应分析。

默认输出格式是 Esri Grid 堆栈。请注意,Esri Grid 堆栈的名称不能以数字开头、不能使用空格,并且长度不能超过 9个字符。

· 如果输入内容为根据多波段栅格(超过三个波段)创建的图层,提取操作将只考虑图层加载(符号化)的波段。因此,输出的多波段栅格只会具有三个波段,分别对应于输入图层显示中使用的多波段栅格。

· 如果输入栅格为整型,那么输出栅格也为整型。如果输入栅格为浮点型,则输出栅格也为浮点型。

语法

ExtractByPolygon (in_raster, polygon, {extraction_area})

返回值

代码实例

多边形提取 (ExtractByPolygon) 示例 1(Python 窗口)

本示例将基于定义的多边形坐标提取栅格的像元。

import arcpy

from arcpy import env

from arcpy.sa import *

polyPoints = [arcpy.Point(743050, 4321275), arcpy.Point(743100, 4321200), arcpy.Point(743500, 4322000),arcpy.Point(742900, 4321800)] env.workspace = "C:/sapyexamples/data"

extPolygonOut = ExtractByPolygon("soil", polyPoints, "INSIDE") extPolygonOut.save("c:/sapyexamples/output/extpoly")

多边形提取 (ExtractByPolygon) 示例 2(独立脚本)

本示例将基于定义的多边形坐标提取栅格的像元。

# Name: ExtractByPolgyon_Ex_02.py

# Description: Extracts the cells of a raster based on a polygon.

# Requirements: Spatial Analyst Extension

# Import system modules

import arcpy

from arcpy import env

from arcpy.sa import *

# Set environment settings

env.workspace = "C:/sapyexamples/data"

# Set local variables

inRaster = "soil"

polyPoints = [arcpy.Point(743050, 4321275), arcpy.Point(743100, 4321200),

arcpy.Point(743500, 4322000),arcpy.Point(742900, 4321800)]

# Check out the ArcGIS Spatial Analyst extension license

arcpy.CheckOutExtension("Spatial")

# Execute ExtractByPolygon

extPolygonOut = ExtractByPolygon(inRaster, polyPoints, "INSIDE")

# Save the output

extPolygonOut.save("c:/sapyexamples/output/extpoly02")

六、用矩形提取

摘要

基于矩形提取栅格像元。

用法

· 可通过像元的中心来确定该像元是位于矩形的内部还是矩形的外部。如果中心位于矩形轮廓的内部,则即使部分像元落在矩形之外,也会将此像元视为完全处于矩形内部。

· 未选择的像元位置被赋予 NoData 值。

· 当输入为多波段栅格时,将输出一个新的多波段栅格。对输入多波段栅格中的每一单个波段都会进行相应分析。

默认输出格式是 Esri Grid 堆栈。请注意,Esri Grid 堆栈的名称不能以数字开头、不能使用空格,并且长度不能超过 9个字符。

· 如果输入内容为根据多波段栅格(超过三个波段)创建的图层,提取操作将只考虑图层加载(符号化)的波段。因此,输出的多波段栅格只会具有三个波段,分别对应于输入图层显示中使用的多波段栅格。

· 如果输入栅格为整型,那么输出栅格也为整型。如果输入栅格为浮点型,则输出栅格也为浮点型。

语法

ExtractByRectangle (in_raster, rectangle, {extraction_area})

返回值

代码实例

用矩形提取 (ExtractByRectangle) 示例 1(Python 窗口)

本示例会将矩形范围以外的像元提取到新栅格。

import arcpy

from arcpy import env

from arcpy.sa import *

env.workspace = "C:/sapyexamples/data"

rectExtract = ExtractByRectangle("elevation",

Extent(477625, 213900, 486400, 224200),

"OUTSIDE")

rectExtract.save("c:/sapyexamples/output/extrect")

用矩形提取 (ExtractByRectangle) 示例 2(独立脚本)

本示例会将矩形范围以外的像元提取到新栅格。

# Name: ExtractByRectangle_Ex_02.py

# Description:

# Requirements: Spatial Analyst Extension

# Import system modules

import arcpy

from arcpy import env

from arcpy.sa import *

# Set environment settings

env.workspace = "C:/sapyexamples/data"

# Set local variables

inRaster = "elevation"

inRectangle = Extent(477625, 213900, 486400, 224200)

# Check out the ArcGIS Spatial Analyst extension license

arcpy.CheckOutExtension("Spatial")

# Execute ExtractByRectangle

rectExtract = ExtractByRectangle(inRaster, inRectangle, "INSIDE") # Save the output

rectExtract.save("c:/sapyexamples/output/extrect02")

arcgis栅格数据空间分析实验报告

实验五栅格数据的空间分析 一、实验目的 理解空间插值的原理,掌握几种常用的空间差值分析方法。 二、实验内容 根据某月的降水量,分别采用IDW、Spline、Kriging方法进行空间插值,生成中国陆地范围内的降水表面,并比较各种方法所得结果之间的差异,制作降水分布图。 三、实验原理与方法 实验原理:空间插值是利用已知点的数据来估算其他临近未知点的数据的过程,通常用于将离散点数据转换生成连续的栅格表面。常用的空间插值方法有反距离权重插值法(IDW)、 样条插值法(Spline)和克里格插值方法(Kriging)。 实验方法:分别采用IDW、Spline、Kriging方法对全国各气象站点1980年某月的降水量进行空间插值生成连续的降水表面数据,分析其差异,并制作降水分布图。 四、实验步骤 ⑴打开arcmap,加载降水数据,行政区划数据,城市数据,河流数据,并进行符号化, 对行政区划数据中的多边形取消颜色填充 ⑵点击空间分析工具spatial analyst→options,在general标签中将工作空间设置为实验数据所在的文件夹

⑶点击spatial analyst→interpolate to raster→inverse distance weighted,在input points 下拉框中输入rain1980,z字段选择rain,像元大小设置为10000 点击空间分析工具spatial analyst→options,在extent标签中将分析范围设置与行政区划一致,点击spatial analyst→interpolate to raster→inverse distance weighted,在input points下拉框中输入rain1980,z字段选择rain,像元大小设置为10000 点击空间分析工具spatial analyst→options在general标签中选province作为分析掩膜,点击spatial analyst→interpolate to raster→inverse distance weighted,在input points下拉框中输入rain1980,z字段选择rain,像元大小设置为10000

ArcGIS栅格数据矢量化和编辑

实验三 ArcGIS栅格数据矢量化和编辑 一、主要内容 1、掌握ArcMap中地图、数据框架、组图层、数据层等基本概念及相互关系; 2、掌握利用ArcMap进行地图屏幕扫描数字化的主要流程及具体操作; 二、ArcMap基础知识 基本概念 1) 地图—Map (ArcMap document) 在ArcGIS中,一个地图存储了数据源的表达方式(地图,图表, 表格) 以及空间参考。在ArcMap中保存一个地图时,ArcMap将创建与数据的链接,并把这些链接与具体的表达方式保存起来。当打开一个地图时,它会检查数据链接,并且用存储的表达方式显示数据。一个保存的地图并不真正存储显示的空间数据! 2) 数据框架—Data Frame 在“新建地图”操作中,系统自动创建了一个名称为“Layers”的数据框架。在ArcMap中,一个数据框架显示统一地理区域的多层信息。一个地图中可以包含多个数据框架,同时一个数据框架中可以包含多个图层。例如,一个数据框架包含中国的行政区域等信息,另一个数据框架表示中国在世界的位置。但在数据操作时,只能有一个数据框架处于活动状态。在Data View只能显示当前活动的数据框架,而在Layout View可以同时显示多个数据框架,而且它们在版面布局也是可以任意调整的。 3)组图层-- New Group Layer 有时需要把一组数据源组织到一个图层中,把它们看作Contents窗口中的一个实体。例如,有时需要把一个地图中的所有图层放在一起或者把与交通相关的图层(如道路、铁路和站点等)放在一起,以方便管理。 4)数据层 ArcMap可以将多种数据类型作为数据层进行加载,诸如AutoCAD 矢量数据DWG,ArcGIS的矢量数据Coverage、GeoDatabase、TIN 和栅格数据GRID,ArcView的矢量数据ShapeFile,ERDAS的栅格数据ImageFile,USDS的栅格数据DEM等。注意Coverage不能直接编辑,要编辑需要将Coverage转换成ShapeFile。

ArcGIS教程:栅格计算器的工作原理

栅格计算器用于在工具中创建和执行“地图代数”表达式。与其他地理处理工具一样,栅格计算器可以在“模型构建器”中使用,从而可以更轻松地在工作中发挥“地图代数”的功用。 栅格计算器具有如下的独有优势: 1、执行单行代数表达式。 2、使用“模型构建器”时,支持在“地图代数”中使用变量。 3、为一个表达式的三个或更多的输入应用 Spatial Analyst 运算符。 4、在一个表达式中使用多个 Spatial Analyst 工具。 栅格计算器用于通过简单的、类似计算器的工具界面,使用多种工具和运算符来执行单行代数表达式。当在一个表达式中使用多种工具或运算符时,该公式的执行速度一般会比分别执行每个运算符或工具的速度要快。 使用栅格计算器工具 工具对话框中有四个主要区域用于创建“地图代数”表达式: 图层和变量 输入图层和变量列表识别了可以在“地图代数”表达式中使用的输入。单独使用此工具时,该列表将包含内容表中的图层。在“模型构建器”中使用此工具时,该列表将包含内容列表中的图层、模型中创建的输出以及其他模型变量。 计算器和运算符按钮

使用计算器按钮可以在表达式中输入数值。使用运算符按钮可以将数学运算符(加、除等)和逻辑运算符(大于、等于等)输入表达式。通过单击这些按钮,可以将数字或运算符输入到表达式中光标当前所在的位置。注意确保表达式遵循正确的规则地图代数语法规则。 工具 在该工具列表中,可以方便地选择能在“地图代数”表达式中使用的工具。通过单击列表中的工具,该工具的名称以及括号的左右半边 [()] 将被放置在表达式中光标当前所在的位置。然后必须输入该工具所需的其他输入内容。虽然工具可以放置在表达式的任何位置,但是它应放置在可以生成有效的“地图代数”语法的位置。 表达式 “地图代数”将要执行的表达式。此表达式必须使用有效的语法输入。请参阅以下部分,了解有关“地图代数”语法规则的详细信息。 地图代数语言 “地图代数”是一种简单而强大的代数语言,利用它您可以操作所有 Spatial Analyst 工具、运算符及函数以执行各种地理分析。 在栅格计算器中使用的“地图代数”含有语法或规则集,“地图代数”必须遵循这些语法或规则集才能创建有效的表达式。如果不遵循这些规则,创建的表达式可能会无效并且无法执行,或者得不到预期的结果。 “地图代数”不仅可以通过栅格计算器工具来访问,还可以通过使用 Spatial Analyst ArcPy 模块的Python 脚本来访问。在此工具中使用相同的“地图代数”语法,但以下情况除外: · 不必将输出栅格名称或等号 (=) 填入表达式,因为该输出名称已在输出栅格参数中指定。 · 在使用运算符时,不必将输入栅格转换为栅格对象。

arcgis栅格计算器

ARCGIS中的栅格计算 栅格计算是栅格数数据空间分析中数据处理和分析中最为常用的方法,应用非常广泛,能够解决各种类型的问题,尤其重要的是,它是建立复杂的应用数学模型的基本模块。ArcGIS 9 提供了非常友好的图形化栅格计算器,利用栅格计算器,不仅可以方便的完成基于数学运算符的栅格运算,以及基于数学函数的栅格运算,而且它还支持直接调用ArcGIS 自带的栅格数据空间分析函数,并且可以方便的实现多条语句的同时输入和运行。 一数学运算 数学运算主要是针对具有相同输入单元的两个或多个栅格数据逐网格进行计算的。主要包括三组数学运算符:算术运算符,布尔运算符和关系运算符。 1. 算术运算 算术运算主要包括加、减、乘、除四种。可以完成两个或多个栅格数据相对应单元之间直接的加、减、乘、除运算。 例如,以今年与去年的降水量数据为基础,用公式(今年降水量-去年降水量)/去年降水量,可以计算出去年降水量的变化程度,如图8.65。(单位:毫米)

图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。

arcgis实之栅格运算

栅格分析 从DEM上提取山顶点,凹陷点 数据 DEM数据,地理信息:KRASOVSKY-1940-Transverse-Mercator Cellsize 5×5 单位:meter 学校选址 数据 DEM LANDUSE 栅格数据无坐标信息 School rec_sites 矢量数据点类型无坐标信息 设置栅格分析环境 Cellsize设置,输出单元格大小设置 Mask设置,分析范围设置 从Dem上提取山顶点,凹陷点 原理 DEM (数字高程模型)属于场模型(连续的栅格),表达和存储时,使用单元格中间值代替整个栅格的值,可视化时,采用插值(如线性)生成连续的栅格 采用领域的方法,可以用领域中的最高值或最低值代替该单元格的值,当该单元格是山顶点时(相对领域而言),领域计算后的值(取最高值)与原值相同,相反,凹陷点也是如

此 操作 1.加载DEM add date 或直接从catalog 中拖入 使用IDENTIFY工具查看每个单元格时,每个单元格只有一个值,对单元格而言是离散的,但对DEM而言,是连续的 2.环境设置 在10.1中,设置在ARCTOOLS的环境参数设置中完成 常规设置 输出工作空间设置 栅格分析设置 栅格存储设置 关于构建金字塔等,此处默认 领域运算 在10.1中,这个工具是focal Ststistics 在这个工具中,由两部分 NEIGHBERHOOD部分,设置领域类型,大小。类型有:矩形,园,环,楔形,和用户自定义的,大小用户自己定义 Stastistics type 就是领域的功能选择,此处选择max,既将领域最大值赋予单元格 结果预计:计算后的高值和DEM高值相等,低值应该大于等于DEM的低值

ARCGIS中矢量裁剪栅格图像

ARCGIS中矢量裁剪栅格图像 (1) 是否需要裁剪栅格图象区域通过一个面状的shapefile表达出来? 如果可以,那么就很简单了。 在ArcMap中,调用空间分析扩展模块,将你感兴趣区的shapefile多边形图层设置为掩膜,然后在栅格计算器中重新计算一下你的图象,它就会沿掩膜裁出。 设置掩膜:空间分析工具条的下拉菜单>option里面设置 (2) 用任意多边形剪切栅格数据(矢量数据转换为栅格数据) 2.1在ArcCatlog下新建一个要素类(要素类型为:多边形),命名为:ClipPoly.shp 2.2在ArcMap中,加载栅格数据:例如kunming.img、和ClipPoly.shp 2.3打开编辑器工具栏,开始编辑ClipPoly ,根据要剪切的区域,绘制一个任意形状的多边形。打开属性表,修改多边形的字段“ID”的值为1,保存修改,停止编辑。 2.4打开空间分析工具栏 执行命令:<空间分析>-<转换>--<要素到栅格> 指定栅格大小:查询要剪切的栅格图层kunming的栅格大小,这里假设指定为1 指定输出栅格的名称为路径 2.5执行命令: <空间分析>-<栅格计算器> 2.6构造表达式:[kunming]*[polyClip4-polyclip4] ,执行栅格图层:kunming和用以剪切的栅格polyClip4 之间的相乘运算 (3) 1、对矢量数据进行裁减:Arctoolbox中,spatial tool > extract>clip 在InputFeatures中选择被裁剪的图层,在ClipFeatures中选择裁剪形状 2、利用矩形对栅格数据裁剪:Arctoolbox中,data management>raster>clip InputRaster中选择被裁剪的栅格数据,设定好矩形四个顶点即可 3、在Spatial Analyst Tools中提供了多种对栅格数据的提取方法,Arctoolbox中,Spatial Analyst Tools>extraction包括提取值到点,根据属性提取,用圆提取,用多边形提取,用掩模提取,用点提取,用矩形提取等,其中的用掩模提取功能可以让我们通过不规则边界来获取需要的栅格数据。

ArcGIS中修改栅格图的像元值

在处理图象数据时,我们经常会碰到要求修改栅格图象象元值得问题,比如说DEM图得部分数据错误,我们要进行修改;再比如说栅格图象中有些与周围均匀色彩不一致得错误斑块要更正等等,那我们如何来处理这一类问题呢? 现我以一DEM栅格图(名字为eldodem)为例,现在我要修改它得部分象元值,总结出以下三种方法,大家可以参考一下。第一种方法不大实用,但可借鉴,第二三种方法针对得条件不一致,大家可以在具体情况下进行选择。 一、直接运用转换,思路简单,易操作,但实用性 1、栅格——ascii文件——栅格这种方法就是先将栅格图用工具 直接转成ascii文件,然后在ascii文本文件中直接修改需要修改得象元得值,修改好后又用工具 转换成栅格图。这种方法可行,但就是不实用,因为我们要搜索到指定得象元好像不就是那么简单。那么有没有别得比较好得方法呢? 二、在栅格计算器中操作,方法灵活,可操作性强,实用性强 准备工作 先要在option中设置保留得栅格范围,通常情况下默认得为相交后得部分,这里我们要保留整个DEM,所以要改为以下设置:

2、通过点得位置修改点象元值 2.1* 问题一、要就是我想修改图象中得指定得行列得点得象元值(比如说把第100行,200列得点得值修改为0),那该如何操作呢? 这时候我们可以在栅格计算器中输入以下公式: con(($$rowmap == 99 & $$colmap == 199),0,[eldodem、img]) (栅格图得编号就是从0行0列开始得) 2.2* 问题二、那若就是要修改指定行列范围内得栅格得象元值,比如说把第101行,251列到第401行,301列得部分得象元值改为0,又改如何进行呢? con(($$rowmap < 400 & $$rowmap > 100 & $$colmap < 300 & $$colmap > 250),0,[eldodem、img]) 结果如下

ArcGIS中修改栅格图的像元值

在处理图象数据时,我们经常会碰到要求修改栅格图象象元值的问题,比如说DEM图的部分数据错误,我们要进行修改;再比如说栅格图象中有些与周围均匀色彩不一致的错误斑块要更正等等,那我们如何来处理这一类问题呢? 现我以一DEM栅格图(名字为eldodem)为例,现在我要修改它的部分象元值,总结出以下三种方法,大家可以参考一下。第一种方法不大实用,但可借鉴,第二三种方法针对的条件不一致,大家可以在具体情况下进行选择。 一、直接运用转换,思路简单,易操作,但实用性 1、栅格——ascii文件——栅格这种方法是先将栅格图用工具 直接转成ascii文件,然后在ascii文本文件中直接修改需要修改的象元的值,修改好后又用工具 转换成栅格图。这种方法可行,但是不实用,因为我们要搜索到指定的象元好像不是那么简单。那么有没有别的比较好的方法呢? 二、在栅格计算器中操作,方法灵活,可操作性强,实用性强 准备工作 先要在option中设置保留的栅格范围,通常情况下默认的为相交后的部分,这里我们要保留整个DEM,所以要改为以下设置:

2、通过点的位置修改点象元值 2.1* 问题一、要是我想修改图象中的指定的行列的点的象元值(比如说把第100行,200列的点的值修改为0),那该如何操作呢? 这时候我们可以在栅格计算器中输入以下公式: con(($$rowmap == 99 & $$colmap == 199),0,[eldodem.img]) (栅格图的编号是从0行0列开始的) 2.2* 问题二、那若是要修改指定行列范围内的栅格的象元值,比如说把第101行,251列到第401行,301列的部分的象元值改为0,又改如何进行呢? con(($$rowmap < 400 & $$rowmap > 100 & $$colmap < 300 & $$colmap > 250),0,[eldodem.img]) 结果如下

ARCGIS教程 第八章 栅格空间距离计算

第八章栅格空间距离计算 1 生成栅格距离图 打开地图文档\gis_ex09\ex08\ex08.mxd,激活data frame1,可看到有二个图层:点状图层“消防站”和线状图层“道路”,前者则用于产生离开消防站的距离图,后者用于确定分析的范围和背景显示(参见图8-1)。 图8-1 data frame1 的显示 鼠标双击data frame1 名称,调出对话框Data Frame Properties,选择General标签,用下拉式菜单将Map Unites 和Display Units 从Unknown Units 改为Meters(米),完成后按“确定”键关闭。选用菜单Tools / Extensions…,勾选Spatial Analyst,栅格分析加载扩展模块被加载,在View / Toolbars 下勾选Spatial Analyst, 窗口中增加了栅格分析工具条。选用菜单Spatial Analyst / Options…,作栅格分析初始化设置:(1)General 标签 Working:D:\gis_ex09\ex08\temp\ 鼠标展开选择Spatial Analyst 的工作路径 Analysis mask: 不选,本练习暂不考虑 Analysis Coordinate System: ● Analysis output will be saved in the same coordinate system as the input (or first raster input if there are multiple… 点选上侧,产生栅格的坐标系和输入数据相同 (2)Extents 标签 Analysis extent:Same as Layer:“道路”下拉选择图层,限定分析空间范围 (3)Cell size 标签 Analysis cell:As Specified Below 下拉选择 Cell size:50 键盘输入栅格单元的大小 Number of Rows:82 边界和栅格单元大小确定后,自动确定栅格行数 Number of Columns:136 边界和栅格单元大小确定后,自动确定栅格列数 按“确定”键,完成初始化设置。选用菜单Spatial Analyst / Distance / StraightLine…,出现Straight Line 参数设置对话框: Distance to:消防站下拉选择图层名,消防站为距离的参照点 Maximum distance:不限定最大的计算范围,保持空白 Output cell size:50 默认,使用初始化设置 Output raster:distance1 键盘输入栅格数据名称,存放路径为初始化的设置 按OK 键,产生离开消防站的距离栅格图层distance1,读者可以改变它的显示符号,参照高程栅格生成等高

基于ARCGIS ENGINE的栅格数据转换矢量数据

基于ArcGIS Engine的栅格数据转换矢量数据 摘要:ArcGIS提供了栅格数据向矢量数据转换函数,但是有特定的要求。同时,在ArcGIS Engine中提供了操作栅格数据的函数,可以对栅格数据进行编辑,从而可以到达栅格数据转矢量数据的要求。 关键词:ArcGIS Engine ;栅格数据;矢量数据 Abstract: The ArcGIS provides raster data to vector data conversion function, but it has the specific requirements. At the same time, providing the operating raster data function in the ArcGIS Engine, can edit the raster data, to reach the raster data to the vector data requirements. Key words: ArcGIS Engine, raster data, vector data 在日常地理信息数据处理中,会对栅格数据进行各种要求处理,并且最终要求将其转换成矢量数据[1][2][3][4][5]。我们可以采用ArcGIS Engine中提供的操作栅格数据的函数,对栅格数据进行各种编辑,满足对栅格数据的各种操作,同时可以将栅格数据转换成矢量数据。 ArcGIS栅格转矢量工具 在ArcGIS桌面版中打开ArcToolbox找到转换工具->由栅格转出,可以找到具体的栅格转矢量的工具。比较常用的是转点、转线、转面。查看帮助文档可以看到栅格转面矢量的函数是RasterToPolygon_conversion (in_raster, out_polygon_features, {simplify}, {raster_field}),其用法要求为:输入栅格的栅格单元大小可以任意,但必须属于有效的整数型栅格数据集。对栅格数据集要求必须是整数型(指栅格数据中格网像素的数据类型)。然而,在实际数据中大部分栅格数据采用浮点型。在ArcGIS中可以通过查看栅格数据的文件属性来查看栅格数据的像素数据类型,如图1。 由于ArcGIS中栅格转矢量工具的具体要求,所有必须对栅格数据进行像素类型转换;同时,要满足数据转出的其它要求,比如某一个栅格数据中,只要求像素值在某个特定范围的数据转出为矢量数据等各种具体的实际操作要求,有必须对栅格数据进行改写等的操作。在ArcGIS Engine中提供了操作栅格数据的函数,可以对栅格数据进行编辑,所有,有必要运用ArcGIS Engine对栅格数据进行编辑,从而满足栅格转矢量等各种具体要求。

在ArcGIS中栅格大数据矢量化

在ArcGIS中(TIF、JPEG)栅格图像矢量化 一、图像加载。 启动ArcMap,【开始】→【程序】→【ArcGIS】→【ArcMap】,选择A existing map,单击Browse for maps。 跳出文件选择对话框。选择所要打开的地图文件出现如下界面。 二、点状符号矢量化 2.1 新建点状地理要素图层 单击ArcMap工具条上的ArcCatalog按钮打开ArcCatalog程序(ArcGIS 的地理信息资源都这里完成创建、删除、复制等管理工作),出现如下对话框。 在Catalog树下找到地图存储所在位置,鼠标右键菜单中选择New子菜单的Shapefile…新建一个Shape格式的地理要素文件(地理要素可存储为其他格

式)。输入文件名称和符号类型,Name: 城市,Feature Type: Point(点状符号)。 设置地图投影,在Spatial Reference下选择Edit,跳出空间参考属性对话框。 选择Select…,提出地图投影选择对话框Browse for Coordnate Systems。 选择Geographic Coordinate Systems/Asia/Xian 1980.prj,单击Add,并【确定】,则完成了新建一个点状Shape格式的地理要素文件【城市】图层。2.2 添加图层 单击ArcMap工具条上的添加图层工具,找到前面新建【城市】图层所在目录,选择城市.shp文件,单击Add,中地图中添加城市图层。

2.3 设置符号格式 对准ArcMap界面中,左边layers/城市下面的点状符号双击,跳出符号选项对话框,设置点状符号样式。选择符号类型Circle 20,符号设置选 项Options中,Color下拉表中选择白色,Size设置为20,Angle设置为0。 2.4 点状符号定位 在ArcMap工具条上点击Editor下拉菜单,选择Starting Editing,进入 编辑状态。使用“Edit Tool”工具可选择要素,右键菜单中有复制、删除、粘 贴等操作。 选择Editor工具条的Sketch Tool工具,移动鼠标到地图区,按住“Z”键放大地图,按住“X”键缩小地图,按住“C”键移动地图,找到合适位置时单击一下鼠标,一个点要素创建成功。依次把江苏省十三个地级城市用点状符号标出来。并点击Editor下拉菜单,选择Stop Editing。跳出是否保存所做的编辑 对话框。

使用ArcGIS统计栅格大数据面积

很多的时候我们都会遇到统计面积的需求,如果是矢量数据就比较容易统计面积,但数据如果是影像图,又是经纬度坐标(没有经过投影)就需要相应的一系列的处理。我这里拿到的是辽宁省的栅格图,坐标系统Xi'an80,其中分为五类地类,然后分别统计它们的面积。 数据是经纬度的坐标系统,没有进行投影,不能直接用经纬度计算面积,所以首先我们通过高斯投影将影像图的经纬度坐标转成平面直角坐标,在ArcCatalog中新建一个Personal Geodatabase或者File Geodatabase,然后通过Import---》Raster Dataset 将影像数据导入到 File Geodatabase中。右键点击影像图Properties中设置影像图的坐标系统为 Xi'an80(此处根据影像的元数据进行设定影像的坐标系统为西安80坐标系) 然后在ArcMap中打开栅格图,通过ArcToolbox—DataManagement Tools—Projections and Transformations—Raster—Project Raster进行高斯投影

投影之后,就可以进行分类计算了,将投影后的影像图通过栅格分析工具进行重分类,选择Spatial Analyst工具栏下拉菜单的“Reclassify…”项 在重分类后的影像上点击鼠标右键,选择“Open Attribute Table”

其中COUNT字段中的数值时代表每类地物中所包含的像素个数,这样的话我们就可以通过像素个数*每个像素的面积=影像图的面积,如何获得每个像素所代表的面积,在重分类后的影像上点击鼠标右键,选择“properties…”,在弹出的layer properties窗口中择“Source”选项栏,CellSize项的值为单元格大小信息。 最后通过Field Calculator可以计算出面积,可以把计算出来的值存放到另外一个字段里

ArcGIS进阶_栅格计算

栅格分析——栅格计算 问题和数据分析 1. 问题提出 栅格计算是栅格数据空间分析中最为常用的方法,也是进行复杂建模分析的基础,是对单栅格或多栅格数据进行对应栅格格网的算术、逻辑或函数的运算,在ArcGIS中主要利用栅格计算器工具完成。 2. 数据准备 使用的数据存储在e:\data\4.1文件夹下名为41的地理数据库中。一个是名为com的栅格数据,表示研究区域玉米产量分布;另一个是名为wheat的栅格数据,表示研究区域小麦产量分布。 数学运算 ArcGIS对栅格的数学运算包括算术运算、布尔运算和关系运算。算术运算主要包括加、减、乘、除等运算,对一个栅格数据进行逐个栅格格网与常数的算术运算或对两个或两个以上栅格的对应位置的栅格格网进行算术运算。 布尔运算主要包括与(&)、或(|)、异或(^)、和非(~)四种运算。是基于布尔运算来对栅格的每个格网值进行判断的,经判断后,如果操作结果为“真”,则该格网输出结果为1;如果操作结果为“假”,则该格网输出结果为0. 关系运算主要包括等于(==)、大于(>)、小于(<)、不等于(!=)、大于或等于(>=)、小于或等于(<=)六种运算。是基于一定的关系条件对栅格中的每个格网值进行判断,满足判断条件的格网输出结果为1,不满足判断条件的格网输出结果为0. 下面以加运算为例说明栅格计算器的操作方法。例如要计算每个栅格格网区域玉米与小麦的总产量,就要将corn和wheat这两个栅格相加 1. 加载数据 Step1:启动ArcMap; Step2:在ArcMap主菜单上单击添加数据图标将corn和wheat栅格要素集添加到内容列表和地图窗口中 2. 加载Spatial Analyst扩展模块 Step1:单击ArcMap主菜单上的“自定义->扩展模块” Step2:在打开的扩展模块对话框中勾选Spatial Analyst Step3:单击关闭按钮,激活Spatial Analyst模块并关闭扩展块对话框。 3. 打开栅格计算器 Step1:单击ArcMap标准工具条上的ArcToolbox工具图标,打开ArcToolbox工具箱窗口 Step2:在ArcToolbox窗口中单击“Spatial Analyst工具->地图代数”,打开地图代数工具箱 Step3:双击“栅格计算器”工具 4. 计算粮食总产量 Step1:在栅格计算器对话框中双击图层和变量列表中的corn图层 Step2:单击加号按钮;

ArcGIS空间分析工具

A r c G I S空间分析工具(总15 页) -CAL-FENGHAI.-(YICAI)-Company One1 -CAL-本页仅作为文档封面,使用请直接删除

ArcGIS空间分析工具(Spatial Analyst Tools) 1空间分析之常用工具 空间分析扩展模块中提供了很多方便栅格处理的工具。其中提取(Extraction)、综合(Generalization)等工具集中提供的功能是在分析处理数据中经常会用到的。 1.1提取(Extraction) 顾名思义,这组工具就是方便我们将栅格数据按照某种条件来筛选提取。 工具集中提供了如下工具: Extract by Attributes:按属性提取,按照SQL表达式筛选像元值。 Extract by Circle:按圆形提取,定义圆心和半径,按圆形提取栅格。 Extract by Mask:按掩膜提取,按指定的栅格数据或矢量数据的形状提取像元。 Extract by Points:按点提取,按给定坐标值列表进行提取。 Extract by Polygon Extract by Rectangle Extract Values to Points:按照点要素的位置提取对应的(一个/多个)栅格数据的像元值,其中,提取的Value可以使用像元中心值或者选择进行双线性插值提取。 Sample:采样,根据给定的栅格或者矢量数据的位置提取像元值,采样方法可选:最邻近分配法(Nearest)、双线性插值法(Bilinear)、三次卷积插值法(Cubic)。 以上工具用来提取栅格中的有效值、兴趣区域\点等很有用。 1.2综合 这组工具主要用来清理栅格数据,可以大致分为三个方面的功能:更改数据的分辨率、对区域进行概化、对区域边缘进行平滑。 这些工具的输入都要求为整型栅格。 1.更改数据分辨率

arcgis中对矢量和栅格数据进行裁剪切割的方法

arcgis中对矢量和栅格数据进行裁剪切割的方法 [引用 2011-11-07 13:21:46] 字号:大中小 ArcGIS9: ArcToolbox-->Spatail Analyst Tools-->Extraction : 在ArcMap --> Spatial Analyst扩展模块工具条--〉Raster Calculator 或者直接使用Mask 1、对矢量数据进行裁减:Arctoolbox中,spatialtool>extract>clip 在InputFeatures中选择被裁剪的图层,在ClipFeatures中选择裁剪形状 2、利用矩形对栅格数据裁剪:Arctoolbox中,datamanagement>raster>clip InputRaster中选择被裁剪的栅格数据,设定好矩形四个顶点即可 3、在SpatialAnalystTools中提供了多种对栅格数据的提取方法,Arctoolbox 中,SpatialAnalyst Tools>extraction包括提取值到点,根据属性提取,用圆提取,用多边形提取,用掩模提取,用点提取,用矩形提取等,其中的用掩模提取功能可以让我们通过不规则边界来获取需要的栅格数据。 可以先建一个polygon的图层,再用这个图层clip那个raster 加载空间分析模块, option选项中设置mask图层,范围,cell尺寸,

用其栅格计算器计算: 图层名.shape*1, 点击evaluation, ok 如果不要求一定要多变形裁剪的话,建议使用clip data management toolbox---clip 这个工具可以保持原有像元信息,但是这里arcmap只提供了矩形切割。 这个约束应该不会影响一般的应用,否则的话建议使用图像处理软件中的mask 裁剪。 另外上面大家说得mask什么的方法,只能出来灰度图,可能原先是设计成处理grid的数据吧 (2) 用任意多边形剪切栅格数据(矢量数据转换为栅格数据) 在ArcCatlog下新建一个要素类(要素类型为:多边形),命名为:

ARCGIS栅格计算器小知识

栅格计算器小知识集锦 1.栅格计算器中,表达式中的图层名要用[]括起来,运算符前后都要加空格,不然会出错。 2.Con命令 命令使用方法有两种 一是使用栅格计算工具(Spatial Analyst/Raster Calculator),输入栅格表达式后执行栅格计算(Evaluate)(下图)。 表达式输入方法为:con(条件, 条件为真时的值,条件为假时的值) 具体如con(isnull([dem]),0,[dem])或con( [dem] == 0,0,[dem])等。 如果要执行多个条件语句,则在每个con语句结束时用分号(;)隔开。 二是直接调用ArcToolbox下的con工具(Spatial Analyst Tools/Conditional/Con)。与ArcToolbox中的其他工具类似,定义好相

关参数后即可执行该命令。此外,在ArcToolbox中该工具名称上单击右键可以进行批处理(Batch)。 3.Nibbl命令 命令使用方法有两种: 一是使用栅格计算工具(Spatial Analyst/Raster Calculator),输入栅格表达式后执行栅格计算(Evaluate)。 表达式输入方法为:nibble(mask图层, 原始数据) 具体如nibble ([dem_Nodata]),[dem])等。 二是直接调用ArcToolbox下的Nibble工具(Spatial Analyst Tools/Generalization/Nibble)。与ArcToolbox中的其他工具类似,定义好相关参数后即可执行该命令。此外,在ArcToolbox中该工具名称上单击右键可以进行批处理(Batch)。 需要注意的是:通常我们认为输入图层应该为原始图层,mask 图层应为经过处理的图层,但在很多情况下,这种做法得不到我们想

ArcGISArcMap中修改栅格图的像元值

A r c G I S A r c M a p中修改 栅格图的像元值 Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】

在处理图象数据时,我们经常会碰到要求修改栅格图象象元值的问题,比如说DEM图的部分数据错误,我们要进行修改;再比如说栅格图象中有些与周围均匀色彩不一致的错误斑块要更正等等,那我们如何来处理这一类问题呢现我以一DEM栅格图(名字为eldodem)为例,现在我要修改它的部分象元值,总结出以下三种方法,大家可以参考一下。第一种方法不大实用,但可借鉴,第二三种方法针对的条件不一致,大家可以在具体情况下进行选择。 ? 一、直接运用转换,思路简单,易操作,但实用性 1、栅格——ascii文件——栅格这种方法是先将栅格图用工具 直接转成ascii文件,然后在ascii文本文件中直接修改需要修改的象元的值,修改好后又用工具 转换成栅格图。这种方法可行,但是不实用,因为我们要搜索到指定的象元好像不是那么简单。那么有没有别的比较好的方法呢 二、在栅格计算器中操作,方法灵活,可操作性强,实用性强 准备工作 先要在option中设置保留的栅格范围,通常情况下默认的为相交后的部分,这里我们要保留整个DEM,所以要改为以下设置: ? 2、通过点的位置修改点象元值 2.1* 问题一、要是我想修改图象中的指定的行列的点的象元值(比如说把第100行,200列的点的值修改为0),那该如何操作呢 这时候我们可以在栅格计算器中输入以下公式: 1.con(($$rowmap == 99 & $$colmap == 199),0,[]) (栅格图的编号是从0行0列开始的) 2.2* 问题二、那若是要修改指定行列范围内的栅格的象元值,比如说把第101行,251列到第401行,301列的部分的象元值改为0,又改如何进行呢

ArcGis中栅格相关系数的计算

计算多个栅格的相关系数 ※ARCGIS中,如果要计算两个栅格层的相关系数,在arctool box中,spatial analyst tools->multivariate->band collection statistcs也可以实现统计功能,当然了多个栅格图层需要采用Data Management Tools->Raster->composite bands把多个栅格图层复合成一个文件,类似与grid中的MAKESTACK命令。 2000年1km数据与8km数据相关系数 # CORRELATION MATRIX # Layer 1 2 # -------------------------------------------------------------------------- 1 1.00000 0.99383 2 0.9938 3 1.00000 # =================================================================== 如果有安装worstation也可以实现上述功能: 情况一: ARCGIS中,如果要计算两个栅格层的相关系数,可以采用ARC下的CORRELATION命令,其具体的使用方式如下: CORRELATION {grid2} {xoffset} {yoffset} Arguments - an input integer or floating-point grid. {grid2} - an input integer or floating-point grid. If no second input grid is specified, the cross correlation will be performed on the first grid shifted on itself by the specified offset. {xoffset} - the number of cells in the x-axis or direction to offset the second input grid from the first input grid. The default x-offset is zero cells. {yoffset} - the number of cells in the y-axis or direction to offset the second input grid from the first input grid. The default y-offset is zero cells. 情况二: ARCGIS中,如果要计算多于两个栅格层的相关系数,可以采用ATC下的STACKSTATS命令,其具体使用方式如下: STACKSTATS {out_data_file} {BRIEF | DETAIL} Arguments

ArcGIS 栅格数据使用总结

arcengine栅格数据使用总结 1、栅格数据的存储类型 栅格数据一般可以存储为ESRI GRID(由一系列文件组成),TIFF格式(包括一个TIF文件和一个AUX文件),IMAGINE Image格式在AE中一般调用ISaveAs接口来保存栅格数据 2、栅格数据集和栅格编目的区别 一个栅格数据集由一个或者多个波段(RasterBand)的数据组成,一个波段就是一个数据矩阵。对于格网数据(DEM数据)和单波段的影像数据,表现为仅仅只有一个波段数据的栅格数据集,而对于多光谱影像数据则表现为具有多个波段的栅格数据集 栅格编目(RasterCatalog)用于显示某个研究区域内各种相邻的栅格数据,这些相邻的栅格数据没有经过拼接处理合成一副大的影像图 3、IRasterWorkspaceEx与IRasterWorkspace ,IRsterWorkspace2的区别 1).IRasteWorkspaceEx接口主要是用来读取GeoDatabase中的栅格数据集和栅格编目 2) . IRasterWorkspace ,IRsterWorkspace2主要是用来读取以文件格式存储在本地的栅格数据 4、加载栅格数据(以存储在本地的栅格数据文件为例) 1.直接用IRasterLayer接口打开一个栅格文件并加载到地图控件 IRasterLayer rasterLayer = new RasterLayerClass(); rasterLayer.CreateFromFilePath(fileName); // fileName指存本地的栅格文件路径axMapControl1.AddLayer(rasterLayer, 0); 2. 用IRasterDataset接口打开一个栅格数据集 IWorkspaceFactory workspaceFactory = new RasterWorkspaceFactory(); IWorkspace workspace; workspace = workspaceFactory.OpenFromFile(inPath, 0); //inPath栅格数据存储路径 if (workspace == null) { Console.WriteLine("Could not open the workspace."); return; } IRasterWorkspace rastWork = (IRasterWorkspace)workspace; IRasterDataset rastDataset; rastDataset= rastWork.OpenRasterDataset(inName);//inName栅格文件名 if (rastDataset == null) { Console.WriteLine("Could not open the raster dataset."); return; } 5、如何读取栅格数据的属性和遍历栅格数据 栅格数据的属性包括栅格大小,行数,列数,投影信息,栅格范围等等,见下面代码 (假设当前加载的栅格文件栅格值存储方式为:UShort类型) IRasterProps rasterProps = (IRasterProps)clipRaster; int dHeight = rasterProps.Height;//当前栅格数据集的行数 int dWidth = rasterProps.Width; //当前栅格数据集的列数

相关文档
最新文档