I need to sum on band dimesion from [ns,nl,nb] to [ns,nl].
code:
function sum
compile_opt idl2
e=envi(/headless)
file='F:\HY1BL1AH5'+'ROIbinLayers.img'
raster=e.openraster(file)
mapinfo=raster.SPATIALREF
nl=raster.NROWS
ns=raster.NCOLUMNS
data_type=raster.DATA_TYPE
newFile=file_dirname(file)+'/ROIVAILD.IMG'
rasterNew = ENVIRaster(URI=newFile ,SPATIALREF=mapinfo,NROWS=nl,NCOLUMNS=ns,NBANDS=1,DATA_TYPE=data_type)
tiles=raster.CreateTileIterator(mode='spectral')
foreach tile,tiles do begin
print,'a'
data=total(tile,2,/nan)
rasterNew.SetTile, Data, Tiles
endforeach
rasterNew.Save
rasterNew.close
raster.close
e.close
close,/all
end
error:
Iterator dimensions are not equal to the raster dimensions.
I need to sum on band dimesion from [ns,nl,nb] to [ns,nl].
code:
function sum
compile_opt idl2
e=envi(/headless)
file='F:\HY1BL1AH5'+'ROIbinLayers.img'
raster=e.openraster(file)
mapinfo=raster.SPATIALREF
nl=raster.NROWS
ns=raster.NCOLUMNS
data_type=raster.DATA_TYPE
newFile=file_dirname(file)+'/ROIVAILD.IMG'
rasterNew = ENVIRaster(URI=newFile ,SPATIALREF=mapinfo,NROWS=nl,NCOLUMNS=ns,NBANDS=1,DATA_TYPE=data_type)
tiles=raster.CreateTileIterator(mode='spectral')
foreach tile,tiles do begin
print,'a'
data=total(tile,2,/nan)
rasterNew.SetTile, Data, Tiles
endforeach
rasterNew.Save
rasterNew.close
raster.close
e.close
close,/all
end
error:
Iterator dimensions are not equal to the raster dimensions.