使用arcgis按掩膜批量处理MODIS.tif数据提取研究区.shp边界的python代码

在输入代码之前,需要先用arcgis把需要处理的数据导入,再把研究区shp导入,然后定义投影,先掩膜处理一个数据,再进行下一步输入代码批量处理数据的步骤。如果

不先定义投影,可能会出现输入代码不执行的情况。 

import arcpy
import glob
import os

arcpy.CheckOutExtension('Spatial')

# 指定先前拼接后的遥感影像所在目录
inws = r"D:\NDVI\MOD13A3RIPE\2016MOD13A3RIPE"

# 指定裁剪后的影响存放目录
outws = r"D:\NDVI\test"

# 指定shp范围边界文件,即目标区域的边界
mask = r"D:\NDVI\gisyanjiuqu\yangdianyanjiuqu\ydxz.shp"

# 利用glob包,将inws下的所有tif文件读存放到rasters中
rasters = glob.glob(os.path.join(inws, "*.tif"))

# 循环rasters中的所有影像,进行按掩模提取操作
for ras in rasters:
    outname = os.path.join(outws, os.path.basename(ras).split(".")[0] + "_clp.tif")  # 指定输出文件的命名方式(以被裁剪文件名+_clip.tif命名)
    out_extract = arcpy.sa.ExtractByMask(ras, mask)  # 执行按掩模提取操作
    out_extract.save(outname)  # 保存数据

效果如图

 

 

 

 

 

 

posted @ 2020-06-14 16:39  秋刀鱼CCC  Views(3462)  Comments(0Edit  收藏  举报