无法在python中剪辑栅格(ETrF.etrf.tif)?

时间:2019-06-15 21:24:53

标签: python-2.7 arcgis arcpy

我有保存为LC81520412017282LGN00_ETrF.etrf.tif的50个栅格,以及保存为.shp的多边形shapefile。

尝试在arcgis中使用Clip(Data Management)裁剪此图像,它可以正常工作。但是要批量处理所有图像,我编写了以下脚本

import os
import arcpy
arcpy.env.workspace = "E:/Project"
for root, dirs, files in os.walk('E:/Project/a/r'):
    for file in files:
        if os.path.splitext(file)[1] == '.tif':
           print (file)
           arcpy.Clip_management(file,"#",
           "E:/Project/be/test.gdb/%file%"
           ,"be/canal.shp","#","Clipping 
           Geometry", "NO_MAINTAIN_EXTENT")

上面的脚本抛出“不支持的文件或文件不存在”的错误。

1 个答案:

答案 0 :(得分:0)

剪辑管理只是使用您必须使用的shapefile将shapefile剪辑为“剪切”光栅文件

ExtractByMask (in_raster, in_mask_data)

这是一个例子

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")