LearningENVI&IDL分享 http://blog.sciencenet.cn/u/dongyanqing Learning ENVI&IDL

博文

ENVI二次开发模式下的Landsat数据读取

已有 6180 次阅读 2011-12-13 22:41 |个人分类:ENVI|系统分类:科研笔记| IDL, Landsat, ENVI二次开发, mtl

从usgs网站或者马里兰大学下载TM或Landsat原始数据,数据可能包括9个tif数据,两个txt文件和一个gtf文件。示例结构如下:

ENVI下可以直接打开*_MTL.txt文件打开,打开后波段列表如下:

IDL程序用envi_open_data_file打开后只能获取到一个fid,此时需要用ENVI_GET_FIDS函数。示例代码如下:


;+

; Source: From Exelis

;

;  dongyq

; 日期:2011-12-13

; 修改历史:

;-

 

PRO SAMPLE_IMPORT_LANDSAT_META

  COMPILE_OPT idl2

 

  ENVI, /RESTORE_BASE_SAVE_FILES

  ENVI_BATCH_INIT

 

  file=DIALOG_PICKFILE(FILTER='*_mtl.txt')

  ;

  ; 打开文件

  ;

  ENVI_OPEN_DATA_FILE, file, /LANDSAT_METADATA, R_FID=fid

  IF (fid EQ -1) THEN RETURN

  ; 这个是关键!

  fids=ENVI_GET_FILE_IDS()

  HELP, fids

  ;

  ;依次对fid进行判断

  ;

  FOR i=0, N_ELEMENTS(fids) -1 DO BEGIN

    ENVI_FILE_QUERY, fids[i], NB=nb, SNAME=sname

    IF nb EQ 6 THEN mb_fid = fids[i]

  ENDFOR

  ;

 

  ENVI_BATCH_EXIT

 

END




https://blog.sciencenet.cn/blog-344887-518192.html

上一篇:IDL编写程序启动界面
下一篇:IDL与C#混合编程技术

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2022-5-26 04:19

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部