ENVI標準格式文件轉換爲.tif文件——基於ENVI庫函數
1.目的
(1)瞭解ENVI標準格式文件
(2)學習利用ENVI庫函數將ENVI標準格式文件轉換爲.tif文件的方法
2.開始時間:2017年04月10日 完成時間:2017年4月11日
3.ENVI標準格式(自己理解,並不一定準確)
ENVI標準格式文件通常包括頭文件(後綴名.hdr)和與之對應的影像文件(通常爲.img格式),頭文件中包含數據的基本信息。
4.IDL代碼
;******************************************************;
;程序目的:利用ENVI庫函數將ENVI標準格式數據轉換爲.tif文件示例
;2017年04月12日
;******************************************************;
PRO Img2Tif_Example
ENVI_File = 'F:\1_Data\乾旱_2003_SouthChina.2001'
Print,ENVI_File
;設置運行環境
COMPILE_OPT IDL2
ENVI,/RESTORE_BASE_SAVE_FILES ; /RESTORE_BASE_SAVE_FILES關鍵字控制是否顯示ENVI經典界面
ENVI_BATCH_INIT ;不要丟掉
;獲取文件標識
ENVI_OPEN_FILE,ENVI_File,R_FID = FID
Print,FID
;查詢頭文件基本信息
ENVI_File_Query,FID,Ns=ns,NL=nl,NB=nb,Data_Type=data_type,Dims=dims,INTERLEAVE=interleave
Print,'列數=',ns,String(13B),'行數=',nl,string(13B),'波段數=',nb
;格式轉換
Tif_File = 'F:\1_Data\ChinaSouthAlbedo2001001.tif' ;輸出的文件名
ENVI_OUTPUT_TO_EXTERNAL_FORMAT,FID=FID,Dims=dims,POS=nb[0],Out_Name=Tif_File,/TIFF ;POS關鍵字控制輸出的波段數
Print,'finished'
END
5.函數說明 將ENVI標準格式轉換爲.tif格式的ENVI_IDL的聯合編程中用到的主要函數包括ENVI運行環境的初始化函數(COMPILE_OPT IDL2,ENVI,ENVI_BATCH_INIT);ENVI格式文件基本操作函數(ENVI_OPEN_FILE(打開文件,獲取文件的FID),ENVI_FILE_QUERY(獲取文件的基本信息));格式轉換函數(ENVI_OUTPUT_TO_EXTERNAL_FORMAT)等6個主要函數。
5.1 ENVI_OUTPUT_TO_EXTERNAL_FORMAT
ENVI_OUTPUT_TO_EXTERNAL_FORMAT [, /ARCVIEW] [, /ASCII]
[,
BLOCK_HEIGHT=long integer] [, BLOCK_WIDTH=long integer],
DIMS=array [, /ENVI] [, /ERDAS]
[, /ERMAPPER],
FID=file ID [,
FIELD=array] [, /IMAGINE] [, /JP2]
[, /NITF] [,
OUT_BNAME=string array],
OUT_NAME=string [, /PCI],
POS=array [, /TIFF]
6.參考資料
1.https://www.harrisgeospatial.com/docs/ENVI_OUTPUT_TO_EXTERNAL_FORMAT.html