ARCGIS10栅格计算PYTHON代码_第1页
ARCGIS10栅格计算PYTHON代码_第2页
ARCGIS10栅格计算PYTHON代码_第3页
ARCGIS10栅格计算PYTHON代码_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、使用python语言进行栅格计算1重采样通过更改像元大小和重采样方法来更改栅格数据集用法:1)可更改像元大小,但栅格数据集的范围将保持不变。2)本工具仅能输出方形像元大小。3)可将输出保存为 BIL、BIP、BMP、BSQ、DAT、GIF、GRID、IMG、JPEG、JPEG 2000、 PNG、TIFF格式或任意地理数据库栅格数据集。4)有四个用于重采样技术参数的选项:“最邻近”选项,用于执行最邻近分配法,是速度最快的插值方法。此选项主要 用于离散数据(如土地使用分类),因为它不会更改像元的值。最大空间误差将 是像元大小的一半。“众数”选项,用于执行众数算法,可根据过滤器窗口内的最常用值确定

2、像元的 新值。与最邻近法一样,此选项主要用于离散数据;但与“最邻近”选项相比,“众数”选项通常可生成更平滑的结果。“双线性”选项,用于执行双线性插值法,可根据四个最邻近输入像元中心的加 权平均距离确定像元的新值。此选项用于连续数据,并会生成平滑的数据。“三次”选项,用于执行三次卷积插值法,可通过拟合穿过16个最邻近输入像 元中心的平滑曲线确定像元的新值。此选项适用于连续数据,尽管所生成的输出 栅格可能会包含输入栅格范围以外的值。与通过运行最邻近重采样算法获得的栅 格相比,输出栅格的几何变形程度较小。“三次”选项的缺点是需要更多的处理 时间。在某些情况下,此选项会使输出像元值位于输入像元值范围之

3、外。如果无 法接受此结果,请转而使用“双线性”选项。“双线性”或“三次”选项不得用于分类数据,因为像元值可能被更改。5)输出栅格数据集的左下角与输入栅格数据集的左下犯具有相同的地图空间坐 标位置。语法:Resample_management (in_raster, out_raster, cell_size,resampling type)实例:ttResampletry:import arcpyarcpy. env. workspace = rD:/work”#Resample TIFF image to a higher resolutionarcpy.Resample_managemen

4、tCaa.tif, resample3. tif”, 4. 0e-006, “CUBIC)# NEAREST 最邻近 | BILINEAR 双线性 | CUBIC 三次 | MAJORITY 众数except:print Resample example failed.print arcpy. GetMessages()2加逐个像元地将两个栅格的值相加(求和)或与一定的数值相加。语法:Pl us 3d (in raster or constant!, in raster or constant2, out raster)实例:Name: jia. pyDescription: Adds the

5、 values of two rasters on a cell-by-cell basis.Requirements: 3D Analyst ExtensionAuthor: ESRIImport system modulesimport arcpyfrom arcpy import envSet environment settings env. workspace = D:/workSet local variables inRaster = bb.tif” inConstant = 100Check out the ArcGI 3D Analyst extension license

6、arcpy. CheckOutExtension(,Z3D,/)Execute Plusarcpy. Plus 3d (inRaster, inConstant, D:/work/output3. tif)结果:将栅格数据bb中每个像元的值加上100得到新的栅格数据3减逐个像元地从第一个输入栅格的值中减去第二个输入栅格的值或减去一个确定 的数值。语法:Minus_3d (in_raster_or_constant1, in_raster_or_constant2, out_raster)实例:Name: jian. pyDescription: Adds the values of two r

7、asters on a cell-by-cell basis.Requirements: 3D Analyst ExtensionAuthor: ESRIImport system modules import arcpy from arcpy import envSet environment settings env. workspace = D:/workSet local variables inRasterl = output. tif inRaster2 = output4. tif”Check out the ArcGI 3D Analyst extension licensea

8、rcpy.CheckOutExtension(3D)Execute Plusarcpy. Minus_3d(inRasterl, inRaster2, Di/work/outputG. tif)结果:对栅格数据output, tif进行与output4. tif逐个像元值的减法运算得出新 的栅格数据。4乘将两个栅格的值逐个像元地相乘或乘以一个定值。语法:Times_3d (in_raster_or_constantl, in_raster_or_constant2, out_raster)实例:Name: cheng. pyDescription: Multiplies the values

9、of two rasters on a cell-by-cell basis.Requirements: 3D Analyst ExtensionAuthor: ESRIImport system modules import arcpy from arcpy import envSet environment settings env. workspace = D:/workSet local variables inRaster = output. tif inConstant = 2Check out the ArcGIS 3D Analyst extension license arc

10、py. CheckOutExtension(Spatial)Execute Timesarcpy. Times 3d(inRaster, inConstant, D:/work/timesout2. tif)结果:逐个将每个像元值乘以2输出新的栅格。5除将两个栅格的值逐个像元地相除或除以一个定值。当一个数除以零时,输出结果为NoData。输入的数据类型将决定输出的数据类型:如果两个输入均为整数,那么将执行整数除法,并且输出结果为整数。例如,如果 3除以2,那么输出为k如果两个输入中的任何一个为浮点型,那么将执行浮点型除法,并且输出结果也为 浮点型值。例如,如果3除以2.0,那么输出为1.5。语

11、法:Dividc_3d (inrasterorconstantl, in_raster_or_constant2, out_raster) 实例:Name: chu.pyDescription: Divides the values of two rasters on a cel 1-by-cel 1 basisRequirements: 3D Analyst ExtensionAuthor: ESRIImport system modules import arcpyfrom arcpy import envSet environment settings env. workspace =

12、D:/workSet local variablesinRasterl = z,timesout2. tifinRaster2 = output. tifCheck out the ArcGIS 3D Analyst extension license arcpy. CheckOutExtens ionExecute Dividearcpy. Divide_3d(inRasterl, inRaster2, DVwork/outdivide. tif)结果:将timesout2. tif逐个像元的与output. tif的像元值相除输出新栅格。6转为整型通过截断将栅格的每个单元值转换为整型。1输

13、入值可为正数,也可为负数。2如果相比于截断更希望采用舍入方式,那么请在执行操作之前添加0.5个输入 栅格。3整型栅格值的最大支持范围是从-2, 147, 483, 648(由2的31次确定的最小值) 到2, 147,483, 647 (由2的31次减去1确定的最大值)。如果将转为整型用在 浮点型栅格上,且该浮点型栅格具有所含值超出该范围的像元,那么这些像元在输 出栅格中的值将为NoDatao4将分类(离散)数据作为整型栅格存储所占用的磁盘空间要明显少于将同样的 信息作为浮点型栅格存储所占用的磁盘空间。如有可能,建议使用该工具将浮点 型栅格转换为整型。语法:Int_3d (in_raster_o

14、r_constant, out_raster)实例:Name: int. pyDescription: Converts each cell value of a raster to an integer by truncationRequirements: 3D Analyst ExtensionAuthor: ESRTImport system modules import arcpy from arcpy import envSet environment settings env. workspace =,D:/work,/Set local variables inRaster =

15、timesoutl.tif”Check out the ArcGIS 3D Analyst extension licensearcpy. CheckOutExtension(3D)Execute Intarcpy. Tnt 3d(inRaster, D:/work/outint. tif)7转为浮点型将每个栅格像元的值转换为浮点型表达形式。1输入值可为正数,也可为负数。2如果对已经是浮点型的输入执行转为浮点型操作,那么输出值将与输入值相同。语法:Float_3d (in raster_or_constant, out_raster)实例:Name: float, pyDescription: Converts each cell value of a raster into a floating-point representationRequirements: Spatial Analyst ExtensionAuthor: ESRIImport system modules import arcpyfrom arcpy import env from arcpy. sa import *Set environment settings

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论