天天看點

python 利用arcpy批量裁剪tif檔案,并生成tif檔案

需要準備的資料:

1、需要的栅格資料,放在同一個檔案夾下面

2、矢量邊界資料

3、建立一個存儲裁剪結果的檔案夾

注意事項:

1、工作空間wordspace一般為栅格資料存儲的檔案夾,程式會周遊該檔案夾下的所有tif格式檔案

2、arcpy為arcgis自帶的包,需要在其自帶的python環境下運作

效果圖:

3、代碼中不要出現中文,因為arcgis自帶的python容易報錯,即使增加#encoding utf-8

python 利用arcpy批量裁剪tif檔案,并生成tif檔案
import arcpy

def clip1(workspace1,mask,outpath):
    arcpy.CheckOutExtension("spatial")
    arcpy.gp.overwriteOutput = 1
    arcpy.env.workspace = workspace1
    rasters = arcpy.ListRasters("*", "tif")

    for raster in rasters:
        print(raster)
        out = outpath + "c" + raster[0:10]+".tif"
        arcpy.gp.ExtractByMask_sa(raster, mask, out)
        print("c" + raster[0:10] + "  has done")

    print("All done")

if __name__ == "__main__":
    workspace1 = "F:\\pythonandnc\\shangge1\\rasterndvi"
    mask = "F:\\pythonandnc\\shangge1\\shapehuanghe\\Export_Output.shp"
    outpath = "F:\\pythonandnc\\shangge1\\output2\\"
    clip1(workspace1, mask, outpath)