Metadata元数据,其中描述了数据的属性。用法:
e=envi(/headless)
;文件路径
file=envi_pickfile()
;打开文件
raster=e.openraster(file,data_ignore_value=0)
;获取多光谱波段
multiraster=raster[0]
;当然可以直接通过下面办法直接得到一些简单属性
multiraster.nbands
;获取元数据(比上面要高级一些的属性,主要是一些遥感信息)
md=multiraster.metadata
;通过这种奇怪的方式得到数据值
md['wavelength']
;
e.close
我打开了一张landsat8的影像,元数据显示如下。这些数据都可以通过上述的奇怪方式指定性的得到。
ACQUISITION TIME = '2018-05-03T02:47:17.0813130Z'
BAND NAMES = 'Coastal Aerosol', 'Blue', 'Green', 'Red', 'Near Infrared (NIR)', 'SWIR 1', ...
CLOUD COVER = 0.050000000
DATA GAIN VALUES = 0.012358000, 0.012655000, 0.011662000, 0.0098336000, 0.0060177000, 0.0014965000, ...
DATA IGNORE VALUE = 0
DATA OFFSET VALUES = -61.791480, -63.275220, -58.307580, -49.168230, -30.088510, -7.4827400, ...
DATA REFLECTANCE GAIN VAL = 2.2680288e-005, 2.2680288e-005, 2.2680288e-005, 2.2680288e-005, 2.2680288e-005, 2.2680288e-005, ...
DATA REFLECTANCE OFFSET V = -0.11340144, -0.11340144, -0.11340144, -0.11340144, -0.11340144, -0.11340144, ...
DEFAULT BANDS = 4, 3, 2
EARTH SUN DISTANCE = 1.0079573
FWHM = 0.0160000, 0.0601000, 0.0574000, 0.0375000, 0.0282000, 0.0847000, ...
IMAGE QUALITY = '9'
SENSOR TYPE = 'Landsat OLI'
SUN AZIMUTH = 135.54706
SUN ELEVATION = 61.863056
WAVELENGTH = 0.44300000, 0.48260000, 0.56130000, 0.65460000, 0.86460000, 1.6090000, ...
WAVELENGTH UNITS = 'Micrometers'
班主任江涛教授的话,激励全班同学奋勇向前。对于江涛老师的图像处理课,我还是优点期待。不过由于要用C语言进行图像处理,感觉得学一波C了。