arcgis批量计算Modis数据NDVI的python代码
时间: 2023-12-04 12:02:12 浏览: 176
数据驱动批量导出切割tif栅格影像代码
以下是使用ArcPy模块批量计算Modis数据NDVI的Python代码示例:
```python
import arcpy
import os
# 设置工作空间
arcpy.env.workspace = r"C:\Modis数据文件夹路径"
# 获取所有的.tif文件
rasters = arcpy.ListRasters("*", "TIF")
# 设置输出文件夹
out_folder = r"C:\NDVI输出文件夹路径"
# 循环处理每个.tif文件
for raster in rasters:
# 获取文件名和路径
filename = os.path.splitext(os.path.basename(raster))[0]
output_raster = os.path.join(out_folder, filename + "_NDVI.tif")
# 计算NDVI
arcpy.gp.SingleOutputMapAlgebra_sa(
"(Float(\"%s\" - \"%s\") / Float(\"%s\" + \"%s\"))" % (
raster, arcpy.GetParameterAsText(0), raster, arcpy.GetParameterAsText(0)),
output_raster
)
print("已完成 %s 的 NDVI 计算。" % filename)
print("所有文件的 NDVI 计算已完成。")
```
需要注意的是,代码中的`"C:\Modis数据文件夹路径"`和`"C:\NDVI输出文件夹路径"`需要根据实际情况进行修改。此外,代码中使用了ArcPy模块中的`ListRasters`函数获取所有的.tif文件,如果数据文件夹中还有其他格式的文件,需要对代码进行调整。
阅读全文