MODIS系列之NDVI(MOD13Q1)五:NDVI处理流程
前言:(个人建议)
1.进行数据处理工作,由于通常数据量比较大。所以在个人电脑中,要将基础数据、不断增长的过程数据、结果数据等分门别类,使得简单易找。
2.将重要数据备份,因为在数据处理过程中,由于出错使重要数据损失,勿让重要数据成绝版。所以生成或保存压缩文件是很好的选择。
3.当数据量大,需要进行批量处理时。模板文档或代码要杜绝出现细节错误。容易一锅端,费时间且低效率。
处理工具:ArcMap
处理数据:MOD13Q1的NDVI成品(.tif)文件
研究区矢量文件(以河南省省界为例)
处理流程:
1.导入研究区矢量文件(做空心处理)
2.将.tif文件导入ArcMap中(可以多导,以电脑承受能力为主)。
是否构建金字塔:是
3.批量定义投影(MRT进行批处理时已做过,但双保险且该步简单)(ArcMap有很多单次或多批次投影方法,本文只介绍一种)
双击图层
点击坐标系
点击投影坐标系
点击UTM
点击WGS1984
北半球选北
本文采用WGS 1984 UTM ZONE 49N。
点击应用,再点击确定。(如果有常用的坐标,右击点击坐标选择收藏到文件夹)
4.按掩膜提取(裁剪也行,但建议用按掩膜提取)(该步骤只能一个一个处理,Python批处理暂未更新)
单击ArcToolbox,唤出ArcToolbox,如下图找到按掩膜提取,双击按掩膜提取
点击确定
为了方便,可以将原始.tif文件移除。结果如下:
该步骤需要代码的,代码法如下:
同一掩膜文件,批量裁切:
import arcpy from arcpy import env from arcpy.sa import * #设置环境 arcpy.env.workspace=r"E: FAN InterpolationlKrigO" rasters=arcpy . ListRasters ("*", "GRID")#获取文件列表 #输出路径 outRasterPath="E: EANInterpolationKrigO_ extractlKrigO_ ." for ras in rasters: print outRasterPathtras # Check out any necessary licenses arcpy. CheckOutExtension ("Spatial") # Local variables inRaster ras inMaskData="E : FUJIANModelBoundary.shp" #掩膜文件 outRaster-outRasterPath-ras+".tif" # Process: Extract by Mask arcpy.gp. ExtractByMask_ sa (inRaster, inMaskData, outRaster) print ("OK")
5.排除值(排除栅格中-3000至0的值)
双击.tif文件或右击.tif文件,再点击属性
点击符号系统
点击已分类
点击分类
点击排除
输入-3000-0
点击应用,再点击确定(可以看到值已更改)。直到退出
结果如下:
6.值域处理
在下图中找到 “乘” 并双击
(由于MOD13数据集中NDVI的比例系数为0.0001)
结果如下:(NDVI 结果被限定在[-1,1]之间,避免了数据过大或过小给使用带来的不便)
7.视觉处理
单击图标
选择色带(可自由选择,以合适为主)
点击反向
点击确定
结果如下:
重点介绍(细节):
该系列步骤截止到现在,所求出的NDVI是地表值NDVI。详细解释为:该步骤所求出的NDVI包含地表的耕地、森林、草地、灌木地、湿地、水体等各种土地类型的NDVI(类似于“大锅烩”)。对不同地类的提取则须做出相对应的土地分类NDV提取和分析(单一地类NDVI提取请详见该系列后续步骤)。