ArcPy批量掩膜裁剪栅格/图像
我在测绘院实习的时候,根据某些实际的工作需求,从批量裁剪矢量图层想到也想搞一个栅格/影像批量裁剪,在ArcGIS中掩膜裁剪栅格/图像是非常好用的,掩膜裁剪工具很好用,既能矢量裁剪,也能栅格/图像裁剪。实际工作中,可能会面临大批量数据处理,ArcGIS现有的工具箱不能满足要求的情况下,不得不想想构建模型迭代器,或者Python脚本用以处理批量处理的问题了。
假如是栅格/影像标准图幅分幅,通过searchcursor获取每行一个几何属性,name作为图幅名称作为分割的栅格/影像的名称,依次掩膜裁剪并放到一个FileGDB下,每一个图幅名称也是FileGDB的名称。以下是编成脚本工具的代码,是类似于ArcToolbox里的工具,在这下其实有不少自带的脚本工具。
try:
import arcpy
arcpy.env.workspace=arcpy.GetParameterAsText(0) #gdb_path
Rasters=arcpy.GetParameterAsText(1) #image
in_features=arcpy.GetParameterAsText(2) #split_featureclass
myRaster=arcpy.Raster(Rasters)
env=arcpy.env.workspace
for i in arcpy.da.seachcursor(in_features,"SHAPE@,name"):
a=arcpy.CreateFileGDB_management(env,i[1])
arcpy.RasterToGeodatabase_conversion(arcpy.sa.ExtractByMask(myRaster,i),a)
arcpy.AddMessages("Run Successful!")
except:
arcpy.AddMessages("Run failed!")
转载自:https://blog.csdn.net/qq_14906811/article/details/74779813