MRT(MODIS Reprojection Tool)安装、影像批量拼接、重投影和格式转换

时间:2017-07-20 12:09:18   收藏:0   阅读:12153

一、安装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,并按提示完成安装。

二、使用MRT(MODIS Reprojection Tool)

(一)GUI界面操作   

  安装完成后,打开MRT的安装路径文件夹,打开bin文件夹,双击ModisTool.bat或者ModisTool.jar即可进 入MRT的GUI界面。

技术分享

  输入MODIS数据,选择输出NDVI和EV,指定输出路径输出文件格式为GEOTIFF,采样方式为最近邻,投影类型为Albers Equal Erea,输出像元大小为250m,然后直接点击run就可以了。其中,投影参数设置见下图(STDPR1第一条标准纬线27,STDPR2第二条标准纬线为45,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天的情况,可能会报错,请注意。

 1 set MRTDATADIR=f:\MOD_HDE_SOURCE 2 
 3 set /a DAY=2000049        rem ***开始日期***
 4 
 5 set /a DEADLINE=2000353  rem ***结束日期***
 6 
 7 :start
 8 
 9 if %DAY% leq %DEADLINE% (goto ORDER) else exit
10 
11 :ORDER
12 
13 rem **将当天的图幅数据文件名放在一个TXT文件中**
14 
15 dir *%DAY%.*.hdf/a/b/s > MOSAICINPUT.TXT
16 
17 rem **拼接HDF12种数据中的第一种**
18 
19 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 
20 
21 rem **将拼接后数据复制到已建Result 文件夹中并删除当天的数据**
22 
23 copy MOSAIC_TMP_%DAY%.hdf  Result & del MOSAIC_TMP_%DAY%.hdf
24 
25 del *%DAY%.*.hdf
26 
27 set /a DAY= %DAY% + 16   rem ***拼接下一个时相的数据***
28 
29 goto start

(三)批处理拼接之多年的数据

  以上代码只能处理一年之内或者每隔一年的数据,如果要一次性处理多年的数据,则参见以下的代码

 1 set MRT_DATA_DIR=f:\MOD_HDF_SOURCE
 2 
 3 set /a DAY=2015337
 4 
 5 set /a DAY1=337    
 6 
 7 set /a DEADLINE=2016353  
 8 
 9 :start
10 
11 if %DAY% leq %DEADLINE% (goto ORDER1) else exit
12 
13 :ORDER1 
14 
15 if %DAY1% leq 353 (goto ORDER)
16 
17 :ORDER
18 
19 dir *%DAY%.*.hdf/a/b/s > MOSAICINPUT.TXT
20 
21 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 
22 
23 copy MOSAIC_TMP_%DAY%.hdf  Result & del MOSAIC_TMP_%DAY%.hdf
24 
25 del *%DAY%.*.hdf
26 
27 set /a DAY1= %DAY1% + 16
28 
29 set /a DAY= %DAY% + 16  
30 
31 if %DAY1% GTR 357 (goto ORDER2)
32 
35 goto start
36 
38 :ORDER2
39 
41 set /a DAY=%DAY% + 1000 - 368
42 
43 set /a DAY1=1
44 
45 pause
46 
47 goto start 

(四)批处理重投影及格式转换

  新建一个文件夹,假设起名为DATA,把所有要处理的MODIS HDF文件放到该文件夹下;    

  在GUI界面中,设定一个HDF文件投影参数后,点击“Save Parameter File…”保存自己设定的参数文件到DATA文件夹下,假设为test.prm;

  在DATA文件夹里,新建一个记事本文件,将下面的内容粘贴进去,需更改几处。更改完毕之后,将记事本文件另存为“.bat”文件,假设为“modis.bat”;

1 set MRT_DATA_DIR=f:\MOD13Q1_REPROJECTION
2 
3 for %%i in (*.hdf) do resample.exe -p test.prm -i %%i -o %%iout.tif
4 
5 pause

  其中,

  第一行代码里,把MRTDATADIR替换为你自己的MRTDATADIR名称,MRTDATADIR名称可以在安装目录里,找到ModisTool.bat,然后右键选择编辑中找到;

  第二行代码里,把test.prm替换为自己的投影参数文件,如果运行出错的话,可以把resample替换为其完整的路径,如D:\software_install\MRT\bin\resample.exe; 

  第三行代码为运行完成后保留bat运行窗口,如果出现错误,可参见bat窗口的提示,将安装目录下的datum.txt和spheroid.txt文件复制到DATA文件夹里;

  

  双击modis.bat,便可看到命令窗口的批出理过程,如发生异常,检查prm的参数是否设置正确(可在GUI中运行看是否报错)或见上一段的注意事项。

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!