arcgis批量计算TIF数据1和2波段NDVI的python代码
时间: 2024-03-27 13:35:52 浏览: 62
批量提取tif数据
以下是可以用于在ArcGIS中批量计算TIF数据中1和2波段的NDVI的Python代码:
```python
import arcpy
# 设置工作空间
arcpy.env.workspace = r"C:\data\NDVI"
# 获取所有TIF文件
rasters = arcpy.ListRasters("*", "TIF")
# 循环处理每个TIF文件
for raster in rasters:
# 定义输出文件名
out_ndvi = raster[:-4] + "_NDVI.tif"
# 定义NDVI计算公式
ndvi_formula = "(Float(\"{0}\\{1}\\{2}\") - Float(\"{0}\\{1}\\{3}\")) / (Float(\"{0}\\{1}\\{2}\") + Float(\"{0}\\{1}\\{3}\"))".format(arcpy.env.workspace, raster, "Band_2", "Band_1")
# 执行计算
arcpy.gp.SingleOutputMapAlgebra_sa(ndvi_formula, out_ndvi)
print("NDVI计算完成")
```
该代码假设TIF文件中的第1波段为红色和第2波段为近红外色,并使用NDVI公式计算每个像元的NDVI值。计算结果将保存在与原始文件相同的位置,文件名为“原始文件名_NDVI.tif”。
阅读全文