载入多波段图像:
方法1:
pro testEnviImg,path
; compile_opt idl2
; envi,/restore_base_save_files
; envi_batch_init
path = ENVI_PICKFILE(title='pick file')
envi_open_file, path, r_fid=fid
if (fid eq -1) then return
;ENVI_SELECT, fid=fid ,pos=pos
envi_file_query, fid, dims=dims, nb=nb
pos = lindgen(nb)
num_cols = dims[2]-dims[1]+1
num_rows = dims[4]-dims[3]+1
image = fltarr(nb,num_cols,num_rows)
for i=0,nb-1 do image[i,*,*]=$
envi_get_data(fid=fid,dims=dims,pos=pos[i])
tv,image,/true
end
pro csvtest
COMPILE_OPT IDL2,hidden
e=envi(/headless)
image_fname='E:\data\gltfy.tif';文件路径
ENVI_OPEN_DATA_FILE,image_fname,r_fid=fid
;envi_file_query,fid,ns=ns,nl=nl,nb=nb
;print,nb
;print,"ok"
dims=[-1, 5.0, 5.0, 0.0, 0.0]
x=envi_get_data(fid=fid,dims=dims,pos=0)
print,x
print,"ok"
end
IDL提取失败一直什么结构体错误
猜测是gltfy.tif多波段原因,然后提取出来一个波段还是这个错
换别的tif文件就没错,,,