Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I am working with MODIS Terra (and simultaneous ASTER) Level 1B swath data using ENVI and am having one of these "this should be easy" questions about the most direct way to get to geo-referenced datasets of radiances (and reflectances). There are two ways I'm familiar in reading in this data:

  1. If I download the HDF L1B swath datasets they come as files named MOD021KM.Ayyyyddd.[whatever].hdf containing scaled integers, with the scaling factors in the header. The geolocation information is in separate files MOD03.Ayyyydd.[whatever].hdf, which I have as well. ENVI is able to convert the scaled integers into radiances, but not to apply the geolocation (to effectively turn this into a Lat/Long projecton). So I'm currently stumped with this approach.
  2. Alternatively, I can download my swaths band-by-band as GeoTIFF from the NASA LAADSWEB site, which combines the relevant MOD021KM and MOD03 files. I read them into ENVI and stack the bands I need. But then I still need to convert the data into radiances/reflectances, which requires me to download the HDF file as well and search around in the header for the correct coefficients.

Right now I'm doing 2. But is there a way of going down the path of 1? ENVI's "Geolocate MODIS" function stumps me -- it seems there's something for L3 data and L1A data, but nothing for L1B.

share|improve this question

2 Answers 2

I think you are looking for the MODIS Reprojection Tool - Swath (MRTSwath):

MRTSwath provides the capability to transform MODIS level-2 land products from HDF-EOS swath format to a uniformly gridded image that is geographically referenced according to user-specified projection and resampling parameters. Functionality includes spectral subsetting, spatial subsetting, map projection, resampling, and format conversion. MRTSwath does not currently support mosaicking or datum conversions. The tool is executed through a command line or graphical user interface (GUI).

MRTSwath was designed specifically to accommodate projection of LP DAAC MODIS swath products. Its success on other data types (such as level-1B radiance data and certain atmospheric products) is somewhat coincidental and in no way guaranteed. All projections require the additional input of the corresponding MODIS level-1B Geolocation file.

(emphasis mine)

If possible, I would avoid using the L1B data. MODIS has so many levels of calibration and QA that it is difficult for the average user to deal with everything. If you are looking for reflectance data, just use the premade reflectance data products (MOD09).

share|improve this answer
Thanks for your thoughts, and maybe there's no good answer to my question along the lines I'm looking for. Some of the lower-level minutiae are of interest to me, and in any event, for my study area, which is in the sub-arctic, vertical tile number 2, the sinusoidal MODIS tile grid is terrible. I'm fine with the lat/long projection of the swath. I'm familiar with the MRTSwath application, but didn't mention it as in my experience its output is identical to the GeoTIFFs provided by the data service at LAADSWEB (pt. 2 above), but with more opportunities to make a mistake in my procesing :). –  chryss Apr 22 '12 at 4:10
This might be too late, but there is an interesting MODIS tutorial in scientiaplusconscientia.wordpress.com/2014/08/06/… –  Cinco Sauces Nov 20 at 9:59

Regarding (1), ENVI has a "Build GLT" routine that takes the Lat/Lon and creates a Geometric Lookup Table (GLT). I'm not sure if this is along the lines you're looking for, but once you have a GLT you can use it to "Georeference from GLT" into any projection. Let me know if you think this method is of interest as I've used it frequently for HDF georeferencing.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.