一、安裝MRT(MODIS Reprojection Tool)
安裝準備:檢查是否安裝java.exe。Java版本至少爲Java 2 Runtime Environment version 1.5或者是Java 2 SDK version 1.5或者更高的版本。在Windows平臺中可以通過開始/搜索並輸入java.exe來檢查自己的電腦是否安裝有java,也可以不檢查直接重新安裝一份。
解壓安裝包MRT_download_<platform>.zip。包含四個文件:mrt_install.bat,MRT_<platform>.zip,reg_set.exe, 以及unzip.exe。
雙擊mrt_install.bat,並按提示完成安裝。
注:下載地址爲https://lpdaac.usgs.gov/tools/modis_reprojection_tool,要先註冊賬號才能下載,註冊的時候最好用國外郵箱,如雅虎什麼的,反正QQ,163郵箱收不到驗證鏈接。
二、使用MRT(MODIS Reprojection Tool)
(一)GUI界面操作
安裝完成後,打開MRT的安裝路徑文件夾,打開bin文件夾,雙擊ModisTool.bat或者ModisTool.jar即可進 入MRT的GUI界面。
輸入MODIS數據,選擇輸出NDVI和EVI,指定輸出路徑輸出文件格式爲GEOTIFF,採樣方式爲最近鄰,投影類型爲Albers Equal Erea,輸出像元大小爲250m,然後直接點擊run就可以了。其中,投影參數設置見下圖(STDPR1第一條標準緯線25,STDPR2第二條標準緯線爲47,CentMer中央經線爲105,datum基準面WGS84):
(二)批處理拼接之一年以內的數據
備註:該操作數據及BAT文件須放在一個文件夾下(文件夾起名請用英文,MRT對中文路徑數據會打不開)。
操作步驟:
1.新建一個DATA文件夾,將HDF數據拷到DATA文件夾下;
2.在DATA文件夾下再新建個Result文件夾(存放拼接後數據);
3.將以下代碼內容粘到一個TXT文件中,更改TXT文件擴展名爲BAT即可,假設你命名該BAT文件名爲MOSAIC.BAT;
4:點擊MOSAIC.BAT,即可進行拼接操作。
注意:第一行代碼裏,把MRTDATADIR替換爲你自己的MRTDATADIR名稱,MRTDATADIR名稱可以在安裝目錄裏,找到ModisTool.bat,然後右鍵選擇編輯中查看;
此外以下代碼未考慮中間天數間斷的情況,比如對MODIS時間分辨率爲16天的數據,在一個應連續的等差數列中間有數據缺失,存在相差32天的情況,可能會報錯,請注意。
set MRTDATADIR=f:\MOD_HDE_SOURCE
set /a DAY=2000049 rem ***開始日期***
set /a DEADLINE=2000353 rem ***結束日期***
:start
if %DAY% leq %DEADLINE% (goto ORDER) else exit
:ORDER
rem **將當天的圖幅數據文件名放在一個TXT文件中**
dir *%DAY%.*.hdf/a/b/s > MOSAICINPUT.TXT
rem **拼接HDF12種數據中的第一種**
d:/software_install/MRT/bin/mrtmosaic.exe -i MOSAICINPUT.TXT -s "1 0 0 0 0 0 0 0 0 0 0 0" -o MOSAIC_TMP_%DAY%.hdf
rem **將拼接後數據複製到已建Result 文件夾中並刪除當天的數據**
copy MOSAIC_TMP_%DAY%.hdf Result & del MOSAIC_TMP_%DAY%.hdf
del *%DAY%.*.hdf
set /a DAY= %DAY% + 16 rem ***拼接下一個時相的數據***
goto start
(三)批處理拼接之多年的數據
以上代碼只能處理一年之內或者每隔一年的數據,如果要一次性處理多年的數據,則參見以下的代碼
set MRT_DATA_DIR=f:\MOD_HDF_SOURCE
set /a DAY=2015337
set /a DAY1=337
set /a DEADLINE=2016353
:start
if %DAY% leq %DEADLINE% (goto ORDER1) else exit
:ORDER1
if %DAY1% leq 353 (goto ORDER)
:ORDER
dir *%DAY%.*.hdf/a/b/s > MOSAICINPUT.TXT
d:/software_install/MRT/bin/mrtmosaic.exe -i MOSAICINPUT.TXT -s "1 0 0 0 0 0 0 0 0 0 0 0" -o MOSAIC_TMP_%DAY%.hdf
copy MOSAIC_TMP_%DAY%.hdf Result & del MOSAIC_TMP_%DAY%.hdf
del *%DAY%.*.hdf
set /a DAY1= %DAY1% + 16
set /a DAY= %DAY% + 16
if %DAY1% GTR 357 (goto ORDER2)
pause
goto start
:ORDER2
set /a DAY=%DAY% + 1000 - 368
set /a DAY1=1
pause
goto start
(四)批處理重投影及格式轉換
新建一個文件夾,假設起名爲DATA,把所有要處理的MODIS HDF文件放到該文件夾下;
在GUI界面中,設定一個HDF文件投影參數後,點擊“Save Parameter File…”保存自己設定的參數文件到DATA文件夾下,假設爲test.prm;
在DATA文件夾裏,新建一個記事本文件,將下面的內容粘貼進去,需更改幾處。更改完畢之後,將記事本文件另存爲“.bat”文件,假設爲“modis.bat”;
set MRT_DATA_DIR=f:\MOD13Q1_REPROJECTION
for %%i in (*.hdf) do resample.exe -p albers_equal_area_orchid.prm -i %%i -o %%iout.tif
pause
其中,
第一行代碼裏,把MRT_DATA_DIR替換爲你自己的MRT_DATA_DIR名稱,MRT_DATA_DIR名稱可以在安裝目錄裏,找到ModisTool.bat,然後右鍵選擇編輯中找到;
第二行代碼裏,把test.prm替換爲自己的投影參數文件,如果運行出錯的話,可以把resample替換爲其完整的路徑,如D:\software_install\MRT\bin\resample.exe;
第三行代碼爲運行完成後保留bat運行窗口,如果出現錯誤,可參見bat窗口的提示,將安裝目錄下的datum.txt和spheroid.txt文件複製到DATA文件夾裏;
雙擊modis.bat,便可看到命令窗口的批出理過程,如發生異常,檢查prm的參數是否設置正確(可在GUI中運行看是否報錯)或見上一段的注意事項。
————————————————
版權聲明:本文爲CSDN博主「suiluochenghu」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/suiluochenghu/article/details/79648980