欢迎来到天天文库
浏览记录
ID:57684631
大小:284.80 KB
页数:4页
时间:2020-08-31
《批量给MODIS拼接和重投影.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、A.先进行拼接处理1.先新建一个DATA文件夹,并将HDF数据拷贝到该文件夹下2.在DATA文件夹下再新建一个Result文件夹(用于存放拼接后的数据)3.将以下代码内容粘贴到一个txt文件中,更改txt文件扩展名为bat即可,假设你命名该bat文件名为MODISmosaic.bat;程序导读:rem表示开始的为注释;MOSAICINPUT.TXT这是程序运行时自动生成的,不用管;MRTDATADIR为你的MRT安装文件中data的路径,“c:/MRT/bin/mrtmosaic.exe”改成你的mrtmosaic.exe的安装路径。"set/aDAY=%DAY%+16"则是因为输入数
2、据是16天间隔的,根据你的数据进行相应修改。remSettheMRTDATADIRenvironmentalvartotheMRTdatadirectory.setMRTDATADIR=C:MRTdataset/aDAY=2011097rem**batchdatastarttime**set/aDEADLINE=2011273rem**batchdataendtime**:startif%DAY%leq%DEADLINE%(gotoORDER)elseexit:ORDERrem**savethefilenameintoanotepad**dir*%DAY%.*.hdf/a/b/s>
3、MOSAICINPUT.TXTrem**executemosaic**remSetthemrtmosaic.exedirectory.c:/MRT/bin/mrtmosaic.exe-iMOSAICINPUT.TXT-s"100000000000"-oMOSAIC_TMP_%DAY%.hdfrem**copytheresulttoafileanddeletetheinputdata**copyMOSAIC_TMP_%DAY%.hdfResult&delMOSAIC_TMP_%DAY%.hdfdel*%DAY%.*.hdfset/aDAY=%DAY%+16gotostart4.点击MOD
4、ISmosiac.bat,即可进行拼接操作注意:该操作数据及BAT文件须放在一个文件夹(文件夹起名请用英文,MRT对中文路径数据会打不开)下。代码未考虑中间天数间断的情况,比如对MODIS时间分辨率为16天的数据,在一个应连续的等差数列中间有数据缺失,存在相差32天的情况,可能会报错,请注意。同时,需要备份好你的输入数据,因为程序运行中会自动删除拼接好的数据。进行到此处则得到了初步的拼接数据,下面进行第二步A.再进行重投影,改格式,缩小范围1.新建记事本,在记事本中输入下面代码,改txt后缀为bat,定义modis.bat文件。remSettheMRTDATADIRenvironmen
5、talvartotheMRTdatadirectory.setMRTDATADIR=C:MRTdatafor%%iin(*.hdf)doC:MRTbinresample-pmy.prm-i%%i-o%%iout.tif其中,MRTDATADIR为你的MRT安装文件中data的路径2.利用MRT的图形界面工具定义投影文件选择一期刚刚拼接好的影像,在ULCorner和LRCorner可以输入经纬度来缩小你需要的区域,设置你的保存路径以及命名(最好以日期命名,到时候程序会自动按照你的规则全部按日期命名),选择tif格式,选择你要的投影类型,点击SaveParameterFile将投
6、影文件保存。记住:这两个文件必须和刚刚拼接后的数据放在一个文件夹中1.双击modis.bat执行批处理即可!操作如图:总的来说,就是先进行拼接得到一个hdf的临时文件,然后在进行重投影,转格式,缩范围的操作。整个过程你只需要安装MRT即可进行,不需要再安装Cygwin模拟lunix环境,安装Cygwin很麻烦。另外网上有小熊工具箱挺好,但是他编写的只能对同一个tile进行长时序列的批量处理,所以遇到需要多景影像的时候可以采用此法。PS:番茄甜土豆就是我,我为他俩代言!
此文档下载收益归作者所有