新浪博客

二、MODIS 1B数据介绍

2010-10-05 11:09阅读:
主要参考网站:http://www.nfiieos.cn/index.asp .
1 MODIS 1B数据的分类
根据MODIS数据特点,国家对地观测系统MODIS共享平台MODIS 1B数据类型的划分主要依据数据的类型和特点,分别划分为以下8种类型:
TERRA卫星MODIS的250米空间分辨率数据(包括第1和第2波段)
TERRA卫星MODIS的500米空间分辨率数据(包括第3~7波段)
TERRA卫星MODIS的1公里空间分辨率数据(包括第8~36波段)
TERRA卫星MODIS的星上校正OBC参考数据;
AQUA卫星MODIS的250米空间分辨率数据(包括第1和第2波段)
AQUA卫星MODIS的500米空间分辨率数据(包括第3~7波段)
AQUA卫星MODIS的1公里空间分辨率数据(包括第8~36波段)
AQUA卫星MODIS的星上校正OBC参考数据。
2 术语
MODIS 1B数据
对于 L1B的标准数据格式可以产生四种产品文件,分别为MOD02QKM、MOD02HKM、MOD021KM和MOD02OBC
MODIS的250米
空间分辨率数据
包括第 1和第2波段。
MODIS的500米
空间分辨率数据
包括第 3~7波段。
MODIS的1公里
空间分辨率数据
包括第 8~36波段。
HDF数据格式
HDF数据格式是英文Hierarchical Data Format 的缩略形式,是美国国家高级计算应用中心设计开发的一种对地观测特用的数据格式。
HDF-EOS数据格式
EOS是Earth Observatory System的简称,可以认为是HDF的扩展。
BOWTIE(向外重叠)现象
1B数据压缩的一种表现形式。
固定长度数据( Vdata)
可以被认为是一个表,该表由固定长度字段值构成的记录组成。
数据字段
包括科学(对地观测)数据。
地理位置字段
列绑定到地球表面的点上。
维数
定义数据轴和地理位置字段。
维图
定义了数据字段和地理位置字段之间的关系。当地理位置的维数与数据维数的大小不同时,就用偏移量和增量定义它们之间的关系。这些图被描述为 “将列粘到一起的胶水”。
HDF
是一种分等级的数据格式,表现形式是一种多目标的文件格式,目的是为了在分布式环境中共享科学数据。
SD API
在多个文件中存储、管理和检索多维的字符和数字序列,以及它们的维数和属性。
VS API
存储、管理和检索作为表中记录存储的多元数据。
V API
生成所有主要的 HDF数据结构的组。
GR API
在多个文件中存储、管理和检索栅格数据,它们的维数和调色板。它也可以操作多个文件中不相连的调色板。
AN API
存储、管理和检索文本,该文本用于描述一个文件或者包含在文件中的数据结构。
DFR8 API
存储、管理和检索 8比特栅格图像,在同一个文件中包括维数和调色板。
DF24 API
存储、管理和检索 24比特图像和该图像的维数。
DFP API
存储和检索 8比特调色板。
DFAN API
存储、管理和检索文本串,该文本串用于描述文件或数据结构。这个接口一次只能操作一个文件。
DFSD API
存储、管理和检索多维的整数或者浮点数据,包括维数和属性。
数据目标
由数据描述符和数据元素构成。数据描述符中包含关于数据元素的类型、位置和尺寸。数据元素中包含着实际数据。
标记符
标记符是数据描述符字段,用于识别存储的数据元素的数据类型。一个标记符是 1到65,535之间的一个不带符号的16比特的整数,并与一个助记名相联,提高了易用性和用户程序的可读性。
参考号
对于 HDF文件中的每一个标记符,在数据描述符中给标记符安排了唯一的参考号。参考号是一个16比特的无符号整数,并且在参考号所指的数据目标的生命周期里不能变化。

3 1B数据的格式
MODIS 1B 数据可以采用HDF和HDF-EOS二种数据格式,目前采用HDF数据格式。
HDF数据格式
HDF是美国国家高级计算机应用中心(National Center for Supercomputer Application)为了满足各种领域研究需要而开发出的一种能高效存储和分发科学数据的新型数据格式。一个HDF文件中可以包含多种类型的数据,如栅格图像数据,科学数据集,信息说明数据等,这种数据结构,方便了我们对于信息的提取。例如,当我们打开一个HDF图像文件时,除了可以读取图像信息以外,还可以很容易的查取其地理定位,轨道参数,图像噪声等各种信息参数。HDF的数据格式是一种分层式数据管理结构,是一个能够自我描述、多目标、用于科学数据存储和分发的数据格式。他针对存储和分发科学数据的各种要求提供解决方法。HDF数据格式设计特点为:
自我描述性(Self-Description):一个HDF文件可以包含关于该数据的全面信息。
多样性(Diversity):一个HDF文件中可以包含多种类型的数据。例如,可以通过利用适当的HDF 文件结构,获取HDF 文件中存储符号,数据和图形数据。
灵活性(Flexibility):可以让用户把相关数据目标集中一个HDF 文件的某个分层结构中,并对其加以描述,同时可以给数据目标记上标记,方便查取。用户也可以把科学数据存储到多个HDF文件中。
可扩展性(Extensity):在HDF文件中可以加入新数据模式,增强了它与其他标准格式的兼容性。
独立性(Independibility):HDF是一种同平台无关的格式。HDF文件在不同平台间传递而不用转换格式。
HDF文件物理存储结构
一个HDF文件应包括一个文件头(File Header),一个或多个描述块(Data Descriptor Block),若干个数据对象(Data Object)。
文件头:位于HDF文件的头四个字节,其内容为四个控制字符的ASCII码值,四个控制字符为^N,^C,^S,^A,可用于判断一个文件是否为HDF文件格式。
数据对象:数据对象是HDF文件最基本的存储元素。包括一个描述符和一个对应的数据元素。
描述符:其长度为12个字节,主要用来描述这个数据元素的某些信息。
头两个字节称为标识符(Tag),其内容为16位的无符号整数,其作用为确定数据元素区的数据类型,每一种数据类型都对应一个默认无符号整数。紧跟其后的是两个字节的参照数(Reference Number),它也是16位的无符号整数,它是为了区别同一标识符下的不同数据对象,因此标识符和参照数二者合在一起唯一确定一个数据对象。后面的四个字节组成的32位无符号整数表示的是数据元素在HDF文件中的偏移量,也就是从文件开始位置到数据元素的起始位置所包含的字节数。最后的四个字节用来表示本描述符所对应的数据元素区所占用的字节数,也是32位无符号整数。
数据元素:它是数据对象中的裸数据部分,也就是数据本身。可以是字符、整数、浮点数、数组等。
在实际的HDF文件中,描述符并不是和它对应的数据元素连在一起,而是把相关的许多描述符放在一起,构成一个数据描述符的块(Data Descriptor Block),在这个块的后面顺序存储了各个描述符所对应的数据元素。打个比方,这里的描述符相当于一本书的目录,而数据元素相当于目录中各个章节所对应的实际内容。这种数据描述符块的前面有对应的块头(Block Header)。块头的内容分为两部分,第一个部分为16位无符号整数,表示在这个数据描述符块中数据描述符的个数,第二部分为32位无符号整数,表示了下一个数据描述符块相对于文件起始位置的偏移量。因此,最后一个数据符块的块头的第二部分的内容为零。总的说来,HDF文件中的物理分布格式如下:
文件头(File Header)
第一个描述符块(First Descriptor Block)
数据元素(Data Element)
更多的描述符块以及更多的数据元素等等
关于数据描述符块和数据元素在HDF文件中分布的唯一规则就是第一个数据描述符块必须紧跟在文件头后。在此之后的数据描述块的块头中的偏移量把数据描述符块连接起来,而每个数据描述符中的偏移量又把数据描述符和数据元素连接起来。
HDF数据类型
在这里首先明确两个概念,数据集(Data Sets)和组(Groups)。HDF文件通常包含几个密切相关的数据对象,把这些数据对象放在一起形成一个数据集,以满足特殊用户的要求。HDF主要有6种主要数据集:栅格图像(Raster Images Sets)、调色板(Palette Sets)、科学数据库(Scientific Data Sets)、注释(Annotation)、Vsets和Vgroup,例如,五个或者六个数据对象可以用来描述一个栅格图像;八个或者更多的数据对象可以用来描述一次科学实验的结果,由于要把不同的数据对象结合起来构成集,就需要一种方法将数据对象有机的结合起来,这样就产生了组的概念,HDF的组用来明确和控制数据集。一个组也是一个数据对象,但是它的数据元素是由一系列的标识符(Tags)和参照数(Reference number)组成,这些标识符和参照数所对应的数据对象就可以构成实际的数据集。例如,构成一个栅格图像的五个或者六个数据对象,它们构成一个集,而它们的标识符和参照数应该放在一个组所对应的数据元素区中,以将它们联系起来。
以下是几种常用的数据集格式:
栅格图像:数据模式提供一种灵活方法存储。描述栅格图像数据,包括8bit栅格图像和24bit栅格图像。栅格图像集(Raster Image Sets)提供用来存储图像和任意数量的可供选择的图像描述符的框架,通常包含图像数据布局的描述和图像数据,它还可能包含调色板和颜色校正信息和任何其他相关的用来显示图像的数据。将所有这些信息联系起来的就是栅格图像组(Raster Image Groups),它包含了所有这些数据对象的标识符和参照数。这些数据对象的数量不是固定的,可以通过选择来确定需要的信息。
调色板:提供图像的色谱。调色板是给一幅图像加入颜色的方法,它相当于一个表格,这个表格可能由不同的大小,但HDF文件只支持256色的显示。对于栅格图像中的每一个数据,在表格中都有其对应的RGB数值,用来显示颜色。
科学数据集:用来存储和描述多维科学数据陈列。科学数据集提供了一个用来存储多维数组数据以及其相关信息的框架。数组的数据类型可以是整数或者是浮点数。它的组织方式与栅格图像相同。科学数据集必须包含的组件有数组、名称、数据类型和数组的维数。数组是一种多维的数据结构,它是科学数据集的主要组成部分,存储着所需要的核心数据,比如某一次科学实验结果的数据。科学数据集的名称在其刚产生的时候就赋予了它,在以后的应用中不能再被改变,它的名称在HDF文件中可以不是唯一的,但是唯一的名字将使得在同一文件中区别不同的科学数据集更加容易。
数据类型指的是存储在数组中数据的类型。数据维数确定了数组的形式和大小。数组维数的数目被称为数组的阶数,每一维都有一个指针和一个标识符,还包含大小和名称。指针是用来描述某一维在数组中的位置。而标识符将它与其他维区别开来。每一维的大小是一个正整数,但是如果其值为零,表示这一维是无限维。另外,科学数据集还提供了三种类型的可供选择的组件:预定义的属性,用户定义的属性和维数规模。预定义的属性有保留的名称,在某些情况下还有预定义的数据类型和数据项目的个数,应用程序可以用预定义的属性来对数据进行操作。用户自定义属性包含了关于文件、数组或者维数的辅助信息。
Vdata:是一个类似于框架,用于存储和描述数据的表格。Vdata 是verdex data的缩写,这种数据格式起初是用来存储多边形顶点和边的信息,但现在它的应用范围已经被大大扩展了。Vdata相当于一个表格,是很多记录(Records)的集合,每个记录的值存储在固定长度的域(Fields)中,所有的记录的数据结构都是相同的,每个域中的值都有相同的数据类型。一个Vdata都由一个名称,一个类和一系列单独的域的名称所唯一确定。
Vdata的名称主要是用来描述Vdata的内容,它通常被用来在文件中搜寻Vdata的位置,一个Vdata的类更进一步的确定了它的数据的用途和目的。最后,Vdata的域的名称是用来分配给Vdata域的标签。每一个记录是由一个或更多的固定长度的域所组成。Vdata的记录和域由指针来标识。这个指针是从零开始依次递增的。每一个域中的数据都有唯一的类型。同时在一个域总可以有几个组件,组件的个数称为域的序(Order)。
注释(Annotation):文本格式,用来描述HDF文件自身的属性或者HDF数据目标。我们通常需要把一个关于HDF文件信息的文本文件的注释联系起来,或者直接存储在HDF文件中。HDF提供了两种实现这一目的方法:注释数据对象和属性的分配。需要注意的是注释本身也是一种数据对象,因此它也有自己的描述符,并指向了包含有注释信息的数据元素。这个数据元素有以下的信息:被注释对象的标识符和参照数以及注释本身。
Vgroup:用来将数据对象联系起来。一个Vgroup中可以包含其他的Vgroup或者HDF数据对象,因此这种结构类似于Unix文件结构。属于同一个Vgroup的数据对象通常被称为Vgroup的成员,Vgroup必须有一个名称以及一个可供选择的与其相联系的Vgroup类,此二者被用来描述属于同一个Vgroup的数据对象并将其分类。Vgroup的名称是字符串,在HDF文件中不同的Vgroup可以有相同的名字,但是不同的名字可以使得区分Vgroup更加容易,Vgroup类也是一个数据字符串,能够用来根据数据对象的使用目的来分类。同时需要注意的是,Vgroup可以包含任意数目的Vgroups和数据对象,包括其他Vgroup的成员。
HDF函数库及其应用接口(API)
HDF文件可以被看作几个接口层。在它的最底层,HDF是用来存储科学数据的物理文件格式。在它的最高层,HDF是用来操作、显示和分析存储在HDF文件中数据的应用程序集合。在这些接口层之间,HDF是用来提供高层和底层编程接口的软件库,它也包括一些支持软件,可以使存储、检索、显示和分析以及操作存储在HDF文件中的数据更加容易。
最基本的接口层是为软件开发者保留的。它被用来直接进行文件的数据流的输入输出、错误处理、内存管理和物理存储。它是对有经验的HDF程序员用来开发而比现有所用的软件更加完善的高层应用程序接口的软件工具,而这种底层的编程只能用C语言来完成。
再上的一层,是HDF应用程序接口,包括几个相互独立的函数组,每一组都使专门用来简化存取某一种数据类型的过程。虽然每一个接口都需要编程,但是所有的底层的详细过程可以忽略。大多数情况下,程序员所需要做的事情就是在恰当的时候调用恰当的函数,接口会完成剩下的任务,程序员不必考虑。这一层也只能在C语言的环境中所使用。
最高层是通用应用程序,它包括现有的一些比较完善的高级应用程序,可以对HDF文件操作和读取。
HDF函数库的源代码可以在NCSA的匿名FTP服务器ftp.ncsa.uiuc.edu上获得。但要使得这些函数库可用却是一件很麻烦的事情。这一过程可以分为编译、连接、安装、载入VC等几大量过程。我们从相关网站上下载了过程的介绍并在计算机上实现。但实际操作中遇到了很多意想不到的问题,耽误了相当多的时间,但最终都得到了解决。
高层HDF应用程序接口,可以分作两部分,多文件接口和单文件接口。多文件接口是指在一个应用程序中能够同时存取几个HDF文件的接口,而单文件接口则不具备这种功能。HDF输入输出函数库是由存取数据对象和相关信息的C和FORTRAN-77函数所构成。一般来说,尽管在不同的数据对象类型中有一些函数功能是重叠的,但一般来说,一种应用程序接口只能够操作一种类型的数据对象。当每调用一种数据类型的专用接口时,其他的数据类型对用户来说都是不可见的,相当于在HDF文件中只有这一种数据类型的数据结构存在。新的多文件程序接口包括以下几种。
SD API:用来存储、管理和检索多维数组数据,包括它们的维数和属性等信息。这个API中的函数可以在C程序中调用,获得科学数据集的所有信息。具体的函数调用格式在《HDF User's Guide》中有详细的介绍。
VS API:存储、管理和检索以目录(Records)形式存储在表格中的数据。利用这个接口可以获得Vdata的任何信息,也就是前述表格中的各种数据。
V API:产生任何主要的HDF数据结构的组(Groups)。通过这个接口可以获得Vgroup的任何信息。
GR API:存储、管理和检索栅格图像数据,包括它们的维数和调色板等信息。栅格图像数据的所有信息可以通过这个接口获得。
AN API:存储、管理和检索用来描述文件或者文件中任何一种数据结构的文档。所有的注释信息可以由此获得。
由于单文件接口现在已经很少使用,在这里就不再详细介绍了。
HDF-EOS数据格式
EOS是Earth Observatory System的简称。可以认为HDF-EOS是HDF的扩展,用以满足更多的需要。在HDF-EOS中,有前面提到的栅格图像和多维数组,然而也有一些EOS类型的数据并不与HDF类型直接匹配,特别是地理标识数据类型(Geolocation Datatype)。为了将EOS数据产品的需要同HDF联系起来,在HDF中又定义了三种新型的数据类型:点型(Point)、带型(Swath)、网格型(Grid)。每一种数据都与HDF标准类型组织起来,并由特殊的应用程序接口所支持,这有助于开发者的工作。
这些新的应用程序接口组成了HDF-EOS函数库。点型数据的接口是用来支持与地理标识有关的信息,但并没有由明确的空间和时间信息所组织起来。带型数据接口是专门用于时序性很强的数据,例如卫星扫描带的数据类型。网格型数据类型接口是用来支持固定投影的数组数据。下面对这三种数据结构作一个简单的介绍。
点型(Point):是由一系列的在不同时间间隔内和在分散的地理位置所记录的数据。点型数据是由HDF-EOS所支持的最松散的地理标识数据的组织形式。它的形式很简单,每一个数据记录都由一系列的一个或多个数值所组成,这些数值在某种意义上表示了某一点的时间或空间的状态。它的组织形式同HDF的其他数据结构一样,也是通过Vgroup将数据对象组织起来。在此就不作详细的介绍了。当存取一个点型数据集时,它由在创建时所分配给的名称所标识。该名称用来得到一个点型数据标识符,在以后的操作中都由这个标识符来唯一确定。关于点型数据集的信息的获取在《HDF-EOS Use's Guide》中有详细的介绍。
带型(Swath):HDF-EOS中的带型数据的概念是基于典型的卫星扫描带的形式建立起来的。卫星的扫描仪器在垂直于卫星运动轨迹的方向上进行扫描,形成了这样的扫描带。而另一种与带型数据相类似的数据格式,来源于对垂直于前述扫描平面的侧面上的信息进行扫描的仪器。事实上可以将两个实际扫描方向上的扫描数据结合起来构成一个三维的数组,每一维代表空间上的一个方向。带型数据的目的是将这样的一个三维科学数据于地球上具体的点对应起来。标准的带型数据由四个主要部分所组成:
数据域(Data Fields):包括地球观测的科学数据。通常为二维数据,但也可以有从一维到八维的变化。
地理标识域(Geolocation Fields):将扫描的数据带与地球表面的点联系起来。
维数(Dimension):定义了数据和地理标识域的三个轴。
维匹配(Dimension Maps):定义了数据域和地理标识域之间的关系。当地理标识维与数据维的大小不一样时,在它们之间就存在一个偏移和增量的关系。这些匹配关系可以被称作带型数据的黏合剂。
带型数据的这四个组件的定义通常是作为全局属性。例如,一个单独的包含有用来阐述地理标识的MODIS带型数据的信息的文档块,就具有这样的属性。这种全局属性的组织结构完全是模仿Vgroup的组织形式,也就是相关的HDF数据对象的集合。带型数据结构的全局属性被HDF-EOS函数库用来将标准数据组织成带型数据结构,这种属性不能被用户直接读取。HDF-EOS的工具和函数库通过读取这种属性来阐述科学数据和地理标识信息之间的关系。开发人员可以用HDF-EOS函数库来处理带型数据。关于这些函数的详细用法可以在《HDF-EOS Use's Guide》中查到。
网格型(Grid):这种数据格式与带型数据格式相类似,都包含有二维或多维的数据域。它们的主要区别在于它们的地理标识信息的特征不同。带型数据主要是存储了一系列单个点的地理标识信息,而网格数据则以简洁的形式包含了一系列的推算公式和相关的参数。通过对这些信息的处理可以得到网格数据中每一点的地理标识信息,如经、纬度等。每一个数据域都能够通过给定的标准推算公式来构成一幅地图。尽管同一个HDF-EOS文件中可以有很多的网格型数据,但对于每个网格数据域的推算公式都是唯一的。在网格数据集中有三个主要的部分:
数据域(Data Fields):是网格数据中最重要的部分,包含了二维或多维数组。
维数(Dimension):用来将数据域地理标识信息联系起来。每个数据域都必须使用两个预定义的维:X和Y。尽管网格数据域的维数并没有实际的限制,但通常情况下维数都不超过三个:X、Y和另一个高度或者深度维。
推算公式(Projection):是网格数据的核心,推算公式作为一系列数学公式,为地理标识的解码提供了一条便捷的途径,将地理坐标(经度和纬度)转换成写于纸上的X-Y坐标。
4 MODIS Level 1B产品
L1B软件系统的目的是为了给许多MODIS地球科学领域中的应用程序提供一个标准的MODIS数据。L1B产品并不直接包含图像,它们是给其他的软件应用程序提供标准的数据来建立图像。
对于L1B的标准数据格式可以产生四种产品文件。它们是:MOD02QKM、MOD02HKM、MOD021KM和MOD02OBC。前三种是地球观测产品,是在250M、500M和1KM三种空间尺度提供校正数据。第四种文件包含了一些例如黑体、光谱测量仪校正以及太阳辐射等的附加工程数据。这些文件的格式就是广泛应用的HDF格式,而它们的结构则用了HDF-EOS的存储结构。L1B使用了HDF所支持的以下数据对象来存储科学和校正数据,以及相关的描述数据,有科学数据集(Scientific Data)、Vdata和文件属性(全局)(File Attributes)。而对于扩展的HDF-EOS所支持的数据格式,L1B主要采用了带型数据类型。
4.1 L1B产品的数据结构:
如上所介绍的,L1B软件所产生的三种地球观测产品文件包含以下类型的数据:
基于象素的科学数据(Science data on a pixel-by-pixel basis):这些数值可以转变为辐射值或反射值,转变的方法详见《MODIS Level 1B Use's Guide》。这些数据都是以HDF的SDS(科学数据集)数据对象格式存储。
当Terra和AQUA卫星沿着轨迹方向运动时,旋转镜面沿着垂直于轨迹的方向进行扫描。每个数据集中有203到204个扫描。每个给定波段的探测器都是沿着卫星运动的方向放置的。这样,图像中的每一条扫描线代表每一次扫描中一个探测器的探测结果。1KM的波段中包含有10个探测器,500m的波段中包含有20个探测器,250m的波段中有40个探测器。对于1KM波段的扫描来说,探测器各自扫描线之间的距离为1KM,500m波段的为500m,250m波段的为250m。在沿着扫描线的方向,基本的结构单元是1KM范围。MODIS测量装置的采样速率对于1KM波段来说是每单元采样一次,500m波段来说是每个单元采两次,250m是每个单元采四次,因此MODIS测量装置所记录的科学数据应该以“波段、扫描线、探测器、结构单元、采样”的数组来描述。然而为了在一个波段中将数据表示成二维图像,所以,自然应该将数据定义为三维:波段、轨迹方向、扫描方向。轨迹
方向是前述扫描维和探测器维的结合。扫描方向是前述结构单元维和采样维的结合。
对于轨迹方向,1KM分辨率中,由于有10个探测器,每个探测器进行203次扫描,所以在这一维中有2030个扫描线。而对于扫描线的方向,扫描距离为1354公里,而每公里采样一次,所以这一维中有1354个数据。同理,对于500m而言,轨迹方向扫描线为4060个,扫描线方向维有2708个数据;250m中,轨迹方向扫描线为8120个,扫描方向维有5416个数据。
由于不同的分辨率有不同的测量数,因此用一个科学数据块存储所有波段的数据将非常低效。这样L1B产品就使用了基于不同空间分辨率和波段光谱特性的波段组。这些波段组在《MODIS Level 1B User's Guide》中有详细的罗列,这里就不介绍了。
白天模式数据集和黑夜模式数据集以及它们对于产品的影响
MODIS测量装置可以以两种标准模式进行工作。在白天模式中,所有的36个波段的数据都被传送到了地面,在黑夜模式中,只有20~36波段的数据被传送。黑夜模式通常是用来当卫星处于相对于空间飞行器的黑夜时进行工作的模式。白天模式则是卫星处于相对于空间飞行器的白天时工作的模式。在一个轨道周期中,两种模式之间的转变规定在扫描开始时进行。因此有一些混合数据集同时包含白天模式和黑夜模式的扫描数据。通常来说,在每一个轨道周期中,有九个白天模式数据集,九个黑夜模式数据集和两个混合模式数据集。
两种模式的存在对于产品的大小和科学数据集的组织有极大的影响。要理解这些影响,首先要理解HDF怎样产生和写入科学数据集。当HDF函数库产生一个数据集时,其中的数组被认为是空的,如果此时读取科学数据集,HDF会认识到这些科学数据集是空的,将会给每个元素返回填充值,这样,科学数据集对于用户来说,似乎就是包含了所有的填充值。尽管科学数据集从物理存储意义上来说是空的,但对于L1B来说,不管这种标准的工作模式如何,所有的科学数据集都是要产生的,这样当数据以黑夜模式传送时,反射太阳波段(Reflective Solar Band)数据集就是空的,但是却包含着填充值65535。HDF的这个特性使得黑夜模式的数据集比白天模式的数据集要小许多。
基于象素的不确定性数据(Uncertainty data on a pixel-by-pixel basis):这些数据中的每个值可以转变为对应科学数据不可靠程度的百分比。转变的算法也可以在《MODIS Level 1B Use's Guide》中查到。
象素的地理标识数据(Geolocation data for the pixels):这些数据包括对应于每一个象素子块的经度和纬度,也是以科学数据集的形式存储。
每个L1B产品都包含有经度和纬度数据的子数据集,在1KM文件中,还包含有附加的六个科学数据集,包括高度、范围和太阳相对于MODIS的位置。科学数据和相对应的地理标识数据的映射在HDF-EOS带型数据结构的属性中有所反映。这些工作由HDF-EOS软件来完成,对于用户来说是不可见的。
描述数据(Metadata):这些数据包括广泛的辅助以及质量保证信息,能够有助于描述每个文件。虽然这些数据对于形成地理标识并不是必要的,但是这些数据对于用户却可以用来查找自己感兴趣的信息。这些数据以HDF文件属性Vdata 和SDS数据对象的形式存储。
对于MODIS L1B产品中的上述内容的详细介绍在《L1B v2.4.0 ev 1km(500m,250m) File Specification》中可以查到。无论是Vgroup形式的数据,还是科学数据集形式的数据,其名称等详细信息在其中都有详细的介绍,其内容可以通过调用HDF-EOS函数库,包括HDF函数库,进行操作。这些函数的具体调用方法就不再在这里介绍了。

我的更多文章

下载客户端阅读体验更佳

APP专享