遥感影像数据的管理(一)
针对遥感影像数据(Remote Sensing Image Data)的高效存储、组织、管理与发布的问题,国内外已经做了大量的相关研究工作,并取得了卓越的成果。今天我想谈一谈其中一类重要的方法是:依托传统关系型数据库构建的海量遥感影像数据存储管理系统。这类方法在实现上主要包括两条技术路线:
1、对关系型数据库管理系统(Relational DataBase Management System, RDBMS)进行空间扩展使其具有管理栅格类型RSID的能力,这条路线主要由各大数据库厂商的推动研发,并产生了Oracle Spatial GeoRaster、IBM DB2 Spatial Extender、以及MySQL中以OpenGIS几何模型为基础的Spatial Extension,但这些软件对于RSID的管理能力相对较弱。
2、通过在RDBMS之上添加空间数据引擎中间件,以实现对RSID的管理,这条路线主要由各大GIS厂商推动实现,代表性的产品有ESRI的ArcSDE,MapInfo的SpatialWare等。
这篇文章主要介绍一下第一条技术路线的代表作——Oracle Spatial GeoRaster
Oracle是目前市场上典型的对象——关系型数据库管理系统,在7.3.3版本中就可以使用Spatial Cartridge管理空间矢量数据,Oracle 8i升级为Oracle Spatial,并在Oracle 10g提供了存储与管理栅格数据的功能.
GeoRaster是Oracle Spatial in Oracle Database 10g的新增技术,它允许用户对那些诸如遥感影像、机载影像、测绘影像等栅格数据进行储存、索引、查询、分析以及转移等操作。GeoRaster作为Oracle Spatial中的一个新的数据类型,为实现企业级的栅格数据管理提供了强有力的支持。下面,简要介绍GeoRaster技术。
Raster Data又称Gridded Data,在图像处理中也经常叫作images。
GeoRaster data是通过诸如遥感、机载测量、绘图学、全球定位系统等等这些多种多样的地理信息技术所收集和使用的,GeoRaster data常常用于数字图像处理、计算机图形应用和计算机视觉技术的分析。
Raster data 通常包含全部或部分以下元素:
Ø 像素单元
Ø 空域
Ø 空间、时间和波段的参考信息
Ø 单位属性
Ø 元数据
Ø 地图支持数据
GeoRaster使用的是一种基于组件式的、逻辑分层的、多维的数据模型。
在GeoRaster数据模型中,除了单位像素矩阵,其他所有的数据都称为元数据。
元数据进一步被分成更个组件,不同组件包含了以下不同种类的信息:
Ø 对象信息
Ø 栅格信息
Ø 空间参考系统信息
Ø 时、空参考系统信息
Ø 波段参考系统信息
Ø 每一层的层信息
基于这种数据模型,GeoRaster对象可以由它的XML格式的元数据所描述。
在这种数据模型中,需要考虑两个不同类型的坐标系:栅格矩阵中的像素坐标系和实际空间中的大地坐标系。因而它们分别被定义为:单位坐标系和模型坐标系。
基于上述数据模型,Oracle提供了两类对象形式:针对栅格数据和有关元数据的SDO_GEORASTER和针对栅格数据分块的SDO_RASTER。
SDO_GEORASTER对象包含了空间几何范围以及相关元数据,包含该类对象的表被称为GeoRaster table。
SDO_RASTER对象包含了SDO_GEORASTER对象的分块信息,并使用BLOB形式逐块储存栅格数据。每一个SDO_GEORASTER对象都对应着唯一的一对属性(rasterDataTable, rasterID),从而实现了对象的储存。