NDVI是归一化植被指数,常用于检测植被生长状态、植被覆盖度和消除部分辐射误差等,范围为-1到1,负值表示地面覆盖为云、水、雪等;0表示有岩石或裸土等;正值,表示有植被覆盖,且随覆盖度增大而增大;
此次所用NDVI数据来源于NASA官网的MOD13A3产品,前期用MRT对所下载的数据进行了几何校正、拼接、投影和格式转换,所得NDVI数据为tif格式。GDAL也能用于处理栅格数据,但是自己正好看到arcpy所以使用该包进行尝试,效果很不错。
自己电脑正常使用的是python3,但是arcgis支持的是python2,因此本文使用安装arcgis时自带的python2进行计算,首先对C:\Python27\ArcGIS10.6中的python.exe和pythonw.exe重命名为python2.7.exe和pythonw2.7.exe,并配置环境变量,完成后在cmd中测试,输入python2.7,显示python版本,则证明python2可用。如下图。
有了可用的python2环境后,编写代码:
#-*- coding: utf-8 -*-
importosimportarcpyfrom arcpy importenvfrom arcpy.sa import *arcpy.env.workspace= "e:/MODISNDVI/BYNDVI"rasters= arcpy.ListRasters("*","tif")
out_path= "e:/MODISNDVI/BYNDVI_cl/"
for