Arcpy批量裁剪mask影像tif

Arcpy批量裁剪mask影像tif

废话不多说,先上代码:

import arcpy
from arcpy import env
from arcpy.sa import *
import os
import os.path
import sys
arcpy.env.workspace=r"D:\Desktop\Study\Academic1\study2\vcf" 
rootdir=r"D:\Desktop\Study\Academic1\study2\vcf" 
for dirpath,filename,filenames in os.walk(rootdir):
    for files in filenames:
        if os.path.splitext(files)[1]=='.tif':
            filepath= os.path.join(dirpath,files)
            inRaster = filepath
            arcpy.env.snapRaster = filepath
            outname = files[8:12] 
            outnamepath=r"D:\Desktop\Study\Academic1\study2\VCF_" + outname + 'china.tif'
            inMaskData =r"D:\Desktop\Study\Academic1\study2\mask_tif\cci\mask.shp"
            arcpy.CheckOutExtension("Spatial")
            outExtractByMask = ExtractByMask(inRaster, inMaskData)
            outExtractByMask.save(outnamepath)
            print outname
            print "ok"

下面对语句进行解释

image-20220329103550962

  • 1是需要被裁剪影像的路径。该路径需要存放所有TIF文件

  • 2与1完全相同,如下图

    image-20220329103834258

  • 3是输出名字,改变从第4位到第9位,来区别文件(如下图VCF5KYR_2013001_001_201824210156),输出名字截取从第8位到第12位,来区别文件(如下图VCF5KYR_2013001_001_201824210156.tif ,2013是第8-12位)(PS:python区间从0开始起算,前包括后不包括)

  • 4是输出路径,重新命名为VCF_2013china

  • 5是矢量文件所在位置

  • 6可以改为任意ArcGIS操作,如near,buffer等。

    结果:

    image-20220329104329097

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

地学万事屋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值