I got some ETM data from www.
I write some IDL programs to process the ETM data. the data structure of ETM data is
L7*******_B10.TIF
L7*******_B20.TIF
L7*******_B80.TIF, with a MTL.txt file.
I use ENVI to open MTL.txt file, it shows me 3 different files, the first one is with 1 band(pan),
the second is the thermal infrared band with 2 bands, the last is composed with 6 bands.
I use ENVI_OPEN_FILE to open MTL.txt file, the r_fid returned a array of fid. 3 elements
while I use this function in the For *** Endfor
sometimes the r_fid returned is only one fid,I am not sure why this happened.
someone tell me to use ENVI_OPEN_DATA_FILE to open this Landsat data, while I find the fid returned is the fid of the pan band (resolution is 15m), I hope to read the file with 6 bands.
I am not sure how to read the Landsat data rightly with ENVI function.
The another question is also very interesting , I use tmcal_doit in this way:
envi_doit, 'tmcal_doit', $
fid=fid_gapfilled,pos = pos, dims=dims,$
bands_present=band_present, sat=sat,
cal_type=1, date=date,sun_angle=sun_elevation,$
out_name=gapfilled_out_name,
r_fid=r_fid2, gain=gainarr,bias=biasarr
ENVI prompt me "Error, Expression must be a scalar or 1 element array in this context"
while I write in this way
envi_doit, 'tmcal_doit', $
fid=fid_gapfilled,pos = pos, dims=dims,$
bands_present=band_present, sat=sat,
cal_type=0, date=date,sun_angle=sun_elevation,$
out_name=gapfilled_out_name,
r_fid=r_fid2, gain=gainarr,bias=biasarr
is no problem, the only change is cal_type=0 or 1.
I am really pullzed.
Thank you in advance.
|