01 前言
我们原本是打算对Landsat9文件进行辐射定标,但是辐射定标的参数在MTL文件中,从文件中查看参数直接复制到IDL中固然可行,但是当我们对Landsat9文件进行批量辐射定标时,这种方法就将失效了。因此我们需要自动从MTL文件中读取相关参数,这里的相关参数实际上只包含两个参数(对于一个波段),一个是比例系数,一个是偏置量。
对于Landsat9,给出三种MTL形式:
这里我们只讨论txt文本文件和XML文件的解析和提取。
02 通过XML文件获取定标参数
需要使用到IDL的IDLffXMLDOMDocument
类,以及类的方法getelementsbytagname
,getfirstchild
,GetNodeValue
。
getelementsbytagname
方法通过指定标签名得到满足要求的所有标签(类似列表形式返回:IDLffXMLDOMNodeList);
getfirstchild