以下文字转自李旭科学网博客,文件和代码请在原网址查看http://blog.sciencenet.cn/blog-1148346-841353.html
MODIS数据通常是HDF-EOS(H4)文件,文件包含有多个数据集,如图1。已知
MOD13A3.hdf,提取其中的NDVI数据集,并以GeoTiff格式存储。参考GDAL方法,但没有找到Python+GDAL代码实例,所以网上介绍的方法没有测试成功,此外还有国外的专家制作的PyHDF软件,可以尝试。
我的代码有一个缺陷,不能自HDF文件获取其中地理参考。不过,我想到一个替代方法,MODIS产品附有行列信息(h**v**),将某一行列的文件在ENVI中另存为GeoTiff文件(
GEOREF.tif),IDL读取这个文件地理参考再存储在输出的NDVI数据集中。
这算是一个折中的办法,代码中对应GeoRef参数是为包含地理参考。
-------------------------------------------------------------------------
我写的程序是处理mod10,有需要的可直接修改文件路径,非常感谢李旭提供的geo参考思路,不然hdf直接存tif没有地理参考,无法做laystack等操作,批量裁剪和投影的话推荐大家使用envi
laystack操作将文件合并成一个,单个文件做裁剪和投影即可,非常方便无需写程序了。无法提交程序,只好贴上。pro
readhdfdata 和文件名一定要一