利用MRT批处理MOD13A3数据
在网上搜了好多关于MRT批处理的内容,基本是处理16d数据的,作为编程小白,捣鼓了两天才能顺利进行批处理,以此记录自己的处理过程。
感谢https://www.cnblogs.com/orchidLan/p/7210448.html博主的文章,解救了我
1.批量拼接
将所有要拼接的数据放到一个文件夹下,新建一个TXT文件,将下面这段代码复制粘贴进去,改名为modis.bat,参数修改后点击保存后双击modis.bat运行,在该文件夹下再新建一个result文件夹,结果将保存到result中。需注意的是MRT安装路径里不要有空格,绿色的地方是需要修改,MRTDATADIR改为自己的安装路径,如果不知道的查看环境变量中的MRTDATADIR,时间添加改为1是因为每个月的生成天数间间隔不一致,如果为30或者31都容易漏掉。
set MRTDATADIR=D:\Tools\MRT\bin set /a DAY=2006001 set /a DEADLINE=2006336 :start if %DAY% leq %DEADLINE% (goto ORDER) else exit :ORDER dir *%DAY%.*.hdf/a/b/s > MOSAICINPUT.TXT d:/Tools/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 set /a DAY= %DAY% + 1 goto start
2.批量转投影及格式
在上述reult文件夹中,新建一个记事本文件,将下面的内容粘贴进去,需更改几处。更改完毕之后,将记事本文件另存为“.bat”文件,假设为“modis.bat”;
在GUI界面中,设定一个HDF文件投影参数后,点击“Save Parameter File…”保存自己设定的参数文件到result文件夹下,假设为head.prm;可先用GUI界面测试一个,点击run运行后查看是否正确。
set MRT_DATA_DIR=d:\Tools\MRT\bin
for %%i in (*.hdf) do D:\Tools\MRT\bin\resample.exe -p head.prm -i %%i -o %%iout.tif pause
pause
第一行代码里,把MRTDATADIR替换为你自己的MRTDATADIR名称,MRTDATADIR名称可以在环境变量中找到;
第二行代码里,把head.prm替换为自己的投影参数文件;
第三行代码为运行完成后保留bat运行窗口,如果出现错误,将安装目录下的datum.txt和spheroid.txt文件复制到DATA文件夹里;
双击modis.bat,便可看到命令窗口的批出理过程。