MODIS MRT安裝、影像批處理投影及拼接


 注:本文是作者上學期間科研工作需要所總結,原文發表在QQ個人空間,因工作若干年后還有同學需要做類似工作,公開至此處,便於更多人檢索到。

 

 作者:Sinsonglew 出處:http://www.cnblogs.com/sinsonglew 歡迎轉載,也請保留這段聲明。thanks :)

 

1  MRT工具的安裝

檢查自己的電腦上是否已安裝java.exe(搜索java.exe即可,當然也可不檢查,重新安裝一份),在WINDOWS平台下,JAVA.虛擬機的安裝路徑及MRT的安裝路徑不宜包含空格。

WINDOWS平台下的安裝過程中,輸入路徑名注意斜杠“\”應改為“/”,比如 c:\Modis must be entered as c:/Modis.

安裝MRT之前需要先安裝JAVA虛擬機,因為安裝MRT的過程中會提示輸入java.exe的路徑。

 

2  MRT工具的使用及批處理操作

2.1 界面操作

安裝完畢之后,打開MRT的安裝路徑文件夾,打開bin文件夾,找到ModisTool.bat,創建該文件的快捷方式到桌面,雙擊快捷方式便進入MRTGUI界面(見Fig.1)。

Fig.1中,對MODIS  MYD13Q1數據,選擇輸出EVI NDVI兩個數據,指定輸出路徑輸出文件格式為GEOTIFF,采樣方式為最近鄰,投影類型為UTM,輸出像元大小為250m,然后直接點擊run就可以了。

  

                         Fig.1  MRT GUI界面 

 

2.2 批處理投影

Fig.1中紅色橢圓圈定部分,設定一個HDF文件投影變換的參數后,點擊“Save Parameter File…”保存自己設定的參數文件,假設為head.prm

新建一個記事本文件,將下面的內容粘貼進去,需更改幾處。更改完畢之后,將記事本文件另存為“.bat”文件,假設為“modis.bat”。

 

rem Set the MRTDATADIR environmental var to the MRT data directory.

 

rem **********************************************************

rem

rem   replace "c:\Modis\data" to your own MRTDATADIR setuped"

rem   please refer to "ModisTool.bat",right key and choose "Edit" and you'll get "MRTDATADIR"

rem ***********************************************************

 

set MRTDATADIR=c:\Modis\data

 

rem **********************************************************

rem

rem   change head.prm to your own .prm file, then it's ok!

rem   if somethings wrong, change resample to full path. i.e.

rem   " for %%i in (*.hdf) do resample -p head.prm -i %%i  -o  %%iout.tif "

rem   to "for %%i in (*.hdf) do C:\Modis\bin\resample.exe -p head.prm -i %%i  -o  %%iout.tif"

rem

rem ***********************************************************

 

for %%i in (*.hdf) do resample -p head.prm -i %%i  -o  %%iout.tif

 

以上內容可粘貼到自己的記事本文件中,注意紅色字體部分為需要改動部分。藍色字體部分為注意內容。REM為注釋的意思,其后所注內容可刪去。

新建一個文件夾,假設起名為DATA,,將head.prmmodis.bat, 所有MODIS HDF數據放在該文件夾下,雙擊modis.bat,便可看到命令窗口的批出理過程,如發生異常,參見該節中藍色內容

 

2.3 批處理拼接

 

  備注:該操作數據及BAT文件須放在一個文件夾(文件夾起名請用英文,MRT對中文路徑數據會打不開)下。

 

  操作步驟:

  1:新建一個DATA文件夾,將HDF數據拷到DATA文件夾下;

  2:在DATA文件夾下再新建個Result文件夾(存放拼接后數據);

  3:將以下代碼內容粘到一個TXT文件中(下文代碼綠色字體內容為代碼注釋內容,請刪去),更改TXT文件擴展名為BAT即可,假設你命名該BAT文件名為MOSAIC.BAT;

  4:點擊MOSAIC.BAT,即可進行拼接操作,如有問題,請參見"2.2 批處理投影"中提示的注意內容。

  PS: 以下代碼未考慮中間天數間斷的情況,比如對MODIS時間分辨率為16天的數據,在一個應連續的等差數列中間有數據缺失,存在相差32天的情況,可能會報錯,請注意。

set MRTDATADIR=c:\Modis\data

set /a DAY=2009257        rem ***開始日期***

set /a DEADLINE=2009273  rem ***結束日期***

:start

if %DAY% leq %DEADLINE% (goto ORDER) else exit

:ORDER

rem **將當天的圖幅數據文件名放在一個TXT文件中**

dir *%DAY%.*.hdf/a/b/s > MOSAICINPUT.TXT

rem **拼接HDF12種數據中的第一種**

c:/Modis/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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM