MODIS系列之NDVI(MOD13Q1)四:MRT單次及批次處理資料
前言:
本篇文章的出發點是因為之前接觸過相關研究,困囧於該系列資料匱乏,想做一個系列。個人道行太淺,不足之處還請見諒。願與諸君共勉。
資料準備:
MODIS資料產品MOD13Q1—以2010年河南省3、4、5三個月為例:
一、MRT單次資料操作
(1).進入GUI介面操作
1.將所需處理的一個.hdf原始資料載入進來
2.通過左右選項選擇所需波段(MOD13Q1已將NDVI提供,只需保留選擇就行)
(若用的資料比如MOD12Q1計算NDVI,則Modis演算法如公式:NDVI=(Band2-Band1)/(Band2+Band1)。那麼就需要將Band2和Band1波段提取出來)
3.Spatial Subset(空間子集):選擇Input Lat/Long (輸入緯度/經度)
input line/sample (輸入行/樣本)
output projection (X/Y輸出投影X / Y)
4和5在一起
4.選擇檔案儲存路徑:
5.輸出資料型別: 如我儲存的路徑(必須同原始資料也就是.hdf在同一資料夾下)就是F:\MODIS\.tif (注意,直接在MODIS資料夾後加\.tif就行。生成的.tif檔名直接等同於在同一個資料夾下.hdf檔案同名(建議相同操作,通常資料多,命名易辨且重要))
6.輸出檔案型別:GEOTIFF(我們要的就是.tif資料檔案)
7.Resampling(重取樣型別):選擇Nearest Neighbor(最近領域)
8.Output Projection type(輸出投影型別):選擇原則是下載的MODIS資料(.hdf)是什麼投影就選什麼投影(百度)
本文選用MOD13Q1,應當採用Sinusoidal投影方式。但大部分研究選用的都是Albers Equal Area。終究道行太淺,本文也不能免俗。
9.Edit Projection Parameters(編輯主動引數):
上圖的一些引數STDPR1和2不太清楚,參考同是研究區為河南省的研究輸入的
centmer為中央經線(研究區中央經線)
大方框裡的可以什麼都不輸入,預設就行。但WGS84一定要選,點選ok
10.Output Pixel Size(輸出畫素大小):畫素範圍越小,精度越高。但輸出的.tif檔案就越大,會達到1-2個G。選擇建議:看自己選擇的MODIS產品是什麼畫素範圍。
11.點選Run即可
二、MRT多批次資料操作(重點)
注意:無論你有多少期資料。在進行多批量處理時。用到MRT檔案時只輸如一個.hdr檔案。不用擔心,之所以輸入一個.hdr檔案,是因為在進行多批量處理時,用到MRT工具只是通過一個.hdr檔案來建立一個.prm檔案作為模板。用CMD來批處理
(1).MRT戰場
1-10同上文一致(只輸入一個.hdr檔案)
11.點選SaveParameter File
在資料夾內將會出現.prm檔案。那麼接下來咱們轉移戰場。將MAT給Exit關掉
(2)CMD戰場
以下所提及的功能都可以在MRT批量進行,通過基於Dos系統的批處理指令碼(字尾.bat)來實現。將待處理的MODIS資料(.hdf)、MRT引數設定檔案(.prm)、批處理指令碼(.bat)放置在一個資料夾中。執行.bat後,系統就會根據指令碼的命令批量執行MRT中的各個功能,從而實現將.hdf檔案按設定轉換為.tif檔案
1.F:\MODIS\.tif 檔案路徑下就生成了.prm檔案
2.用Notepad++開啟或記事本開啟MOD13Q1NDVI.prm
INPUT_FILENAME = F:\MODIS\MOD13Q1.A2010049.h26v05.006.2015200022349.hdf SPECTRAL_SUBSET = ( 1 0 0 0 0 0 0 0 0 0 0 0 ) //該MODIS資料產品有12個波段1代表選,0代表不選該波段 SPATIAL_SUBSET_TYPE = INPUT_LAT_LONG SPATIAL_SUBSET_UL_CORNER = ( 39.999999996 104.432583132 ) SPATIAL_SUBSET_LR_CORNER = ( 29.999999997 103.923048442 ) OUTPUT_FILENAME = F:\MODIS\.tif //輸出路徑(F:\MODIS\.tif) 以及輸出的資料型別(. tif) RESAMPLING_TYPE = NEAREST_NEIGHBOR //重取樣型別選擇最鄰近法 OUTPUT_PROJECTION_TYPE = AEA //輸出投影型別選擇墨卡託(AEA) OUTPUT_PROJECTION_PARAMETERS = ( 0.0 0.0 25.0 47.0 105.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 ) //輸出投影引數建議為預設 DATUM = WGS84 //基準面為WCG84. UTM_ZONE = 49 //平面投影為49N OUTPUT_PIXEL_SIZE = 250 //像元大小為500*500
生成好後的.prm可以通過Notepad++或記事本檢視,不動
3.通過Notepad++或記事本另存為一個modis.bat檔案(.hdr .tif .bat .prm檔案都是在同一個資料夾下)
modis.bat檔案程式碼如下
set MRT_DATA_DIR=C:\MRT\data for %%i in (*.hdf) do resample -p MOD13Q1NDVI.prm -i %%i -o %%iout.tif pause
第1行:MODIS批量重投影指令碼程式碼參考上圖,使用時需要設定MRT的安裝路徑(C:/MRT/data)。安裝路徑請檢視自己電腦高階設定裡的環境變數。
第3行:檔案.prm檔名替換自己的.prm檔名,如果執行出錯的話,可以把resample替換為其完整的路徑,如D:\software_install\MRT\bin\resample.exe;
4.另存為一個modis.bat檔案放在同一個資料夾下。如果出現錯誤,可參見bat視窗的提示,將安裝目錄下的datum.txt和spheroid.txt檔案複製到DATA資料夾裡;
5.雙擊modis.bat檔案。執行完即可。如果執行錯誤,因為雙擊modis.bat檔案資訊一閃而逝,不能看到錯誤資訊。建議開啟該目錄資料夾下將modis.bat輸入
批處理執行過程如下:
執行後關閉即