Python (ArcGIS)实现Landsat数据波段合成批处理

利用Python语句,调用ArcGIS波段合成工具,实现Landsat5-8数据波段合成批处理。针对2017年5月1日改版后的Landsat数据。

# -*- coding: utf-8 -*- 
import os
import arcpy
import time
import datetime


path = 'E:/LANDSATLAKE/1'
#arcpy.env.workspace = path


f_list = os.listdir(path)


for f in f_list:
    #TM、ETM+数据(Landst5、7)
    if f[1:2] == 'T' or f[1:2] == 'E' :
        arcpy.env.workspace = path+'/'+f
        a=f+'_B5.TIF'
        b=f+'_B4.TIF'
        c=f+'_B3.TIF'
        result=f[10:25]+'_L'+f[3:4]+'_543.tif'
        output = path+'/'+result
        in_raster=[a,b,c]
        arcpy.CompositeBands_management(in_raster,output)
    #OLI数据(Landst8)
     elif f[1:2] == 'C':
        arcpy.env.workspace = path+'/'+f
        a=f+'_B7.TIF'
        b=f+'_B5.TIF'
        c=f+'_B4.TIF'
        result=f[10:25]+'_L'+f[3:4]+'_754.tif'
        output = path+'/'+result
        in_raster=[a,b,c]
        arcpy.CompositeBands_management(in_raster,output)

你可能感兴趣的:(遥感)