Arcpy专题:批量裁剪影像

这是一个使用Python和arcpy库批量裁剪遥感影像的脚本。脚本根据指定的shapefile文件,对指定文件夹下的影像数据进行裁剪,并将结果保存到输出文件夹中。主要涉及的空间分析操作是Extract By Mask。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# -*- coding: utf-8 -*-
# @Time : 2020/12/10 19:16
# @Author : ZhangMin
import arcpy
import glob
import os

'''
批量裁剪:
    对输入文件夹下的数据,根据shp文件,进行批量裁剪,结果存放于输出文件夹
    
    需要修改:
       

'''
arcpy.CheckOutExtension('Spatial')

# 输出文件夹
outfile = r"H:\大论文\福建省\2008-2012Landsat5&7\30m分辨率修正版、\按潮区裁剪的影像".decode('utf-8')
# shp文件夹
shpmask = r"H:\大论文\福建省\1998-2002Landsat4&5\30m修正版\新潮区划分".decode('utf-8')
# 影像路径
rasters = r'H:\大论文\福建省\2008-2012Landsat5&7\30m分辨率修正版、\潮滩频率\20082012潮滩范围频率.tif'.decode('utf-8')

files = []

for shp in os.listdir(shpmask):
    if os.path.splitext(shp)[1] == '.shp':
        sourcefile = os.path.join(shpmask, shp)
        files.append(sourcefile)
        # print(sourcefile)

        # 截断文件名
        (filepath, tempfilename) = os.path.split(sourcefile)
        (filename, extension) = os.path.splitext(tempfilename)
        print(filename)
        # 输出路径+文件名
        outname = os.path.join(outfile, filename + ".tif")
        print(outname)

        # 裁剪
        out_extract = arcpy.sa.ExtractByMask(rasters, sourcefile)
        out_extract.save(outname)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值