在ArcGIS目录下打开IDLE(Python GUI)
新建file,将代码粘贴在脚本框保存
批量栅格投影的代码如下
# -*- coding: UTF-8 -*-
#需要自行更改的如下:
#inws:输入路径
#outws:输出路径
#Coordinate_System:目标投影坐标系
import glob
import os
import arcpy
# 输入路径 应该注意,中文路径,会导致读不出文件
inws = r"F:\\RLAI\\2020LAI"
# 参考文件路径
Coordinate_System="PROJCS['WGS_1984_UTM_Zone_50N',GEOGCS['GCS_WGS_1984',DATUM['D_WGS_1984',SPHEROID['WGS_1984',6378137.0,298.257223563]],PRIMEM['Greenwich',0.0],UNIT['Degree',0.0174532925199433]],PROJECTION['Transverse_Mercator'],PARAMETER['False_Easting',500000.0],PARAMETER['False_Northing',0.0],PARAMETER['Central_Meridian',117.0],PARAMETER['Scale_Factor',0.9996],PARAMETER['Latitude_Of_Origin',0.0],UNIT['Meter',1.0]]"
# 输出路径
outws = r"F:\\RLAI\\2020LAI_act"
# 利用glob包,将inws下的所有tif文件读存放到rasters中
rasters = glob.glob(os.path.join(inws, "*.tif"))
# 循环rasters中的所有影像,进行投影
for raster in rasters:
print str(raster)
nameT = "prolai"+os.path.basename(raster).split(".")[0][15:19] + ".tif" #split(".")[0]分割“."[0]第一个.前面的名字 [15:19]再选择15到19个字符
outname = os.path.join(outws, nameT) # 合并输出文件名+输出路径
arcpy.ProjectRaster_management(raster, outname, Coordinate_System, "NEAREST")
print("Done!")
Run module(F5)运行脚本
Tips
nameT = “prolai”+os.path.basename(raster).split(“.”)[0][15:19] + “.tif” #split(“.”)[0]分割“."[0]第一个.前面的名字 [15:19]再选择15到19个字符
示例:原始栅格名称为MCD15A2H_Lai_20200101.tif
重命名后栅格名称为prolai2001.tif
参考博文
https://blog.csdn.net/jnbvcyn/article/details/125592802
https://blog.csdn.net/qq_41828818/article/details/120977814?spm=1001.2014.3001.5506