GDAL(Geospatial Data Abstraction Library)是一個在X/MIT 許可協議下的開源柵格空間數據轉換庫。該項目由 Frank Warmerdam教授于1998年發起。它利用抽象數據模型來 表達所支持的各種文件格式。它還有一系列命令行工具來進行 數據轉換和處理。OGR(OpenGIS Simple Features Reference Implementation)是GDAL項目的一個子項目,提供對矢量數據的 支持。一般把這兩個庫合稱為GDAL/OGR,或者簡稱為GDAL。 由于MIT協議的開放性,任何人都可以基于GDAL庫來編寫自己的 軟件而不需要原作者的授權,所以有很多著名的GIS軟件都使 用了GDAL/OGR庫,包括商業公司ESRI的ArgGIS 9.2,Google的 Google Earth和開源的GRASS GIS系統。
GDAL/OGR支持多種操作系統,可以同時對Linux和windows下的 地理空間數據管理系統提供百余種矢量和柵格文件類型的支持。GDAL/OGR使用面向對象的C++語言編寫,這令該庫在支持百余種 格式的同時,還具有很高的執行效率。GDAL/OGR同時還提供多種 主流編程語言的綁定,除了C和C++語言之外,用戶還可以在Perl、python、VB6、Ruby、Java、C#等語言中調用GDAL,這令GDAL的 應用變得非常廣泛。
下面簡要介紹GDAL/OGR的體系結構。
1. GDAL
GDAL提供對多種柵格數據的支持,包括Arc/Info ASCII Grid(asc),GeoTiff (tiff),Erdas Imagine Images(img),ASCII DEM(dem) 等格式。 GDAL使用抽象數據模型(abstract datamodel)來解析它 所支持的數據格式,抽象數據模型包括數據集(dataset),坐標 系統,仿射地理坐標轉換(Affine Geo Transform),大地控制點,元數據(Metadata),柵格波段(Raster Band),顏色表(Color Table),子數據集域(Subdatasets Domain),圖像結構域(Image _ Structure Domain),XML域(XML:Domains)。 GDAL包括如下幾個部分:
添加微信好友, 獲取更多信息
復制微信號
- GDALMajorObject類:帶有元數據的對象。
- GDALDdataset類:通常是從一個柵格文件中提取的相關聯的柵格 波段 *** 和這些波段的元數據;GDALDdataset也負責所有柵格波 段的地理坐標轉換(georeferencing transform)和坐標系定義。
- GDALDriver類:文件格式驅動類,GDAL會為每一個所支持的文件 格式創建一個該類的實體,來管理該文件格式。
- GDALDriverManager類:文件格式驅動管理類,用來管理GDALDriver類。
2. OGR
OGR提供對矢量數據格式的讀寫支持,它所支持的文件格式包括: ESRI Shapefiles, S-57, SDTS, PostGIS,Oracle Spatial,Mapinfo mid/mif , Mapinfo TAB。 OGR包括如下幾部分:
- Geometry:類Geometry (包括OGRGeometry等類)封裝了 OpenGIS的矢量數據模型,并提供了一些幾何操作,WKB (Well Knows Binary)和WKT(Well Known Text)格式之間的 相互轉換,以及空間參考系統(投影)。
- Spatial Reference:類OGRSpatialReference封裝了投影和 基準面的定義。
- Feature:類OGRFeature封裝了一個完整feature的定義,一個 完整的feature包括一個geometry和geometry的一系列屬性。
- Feature Definition:類OGRFeatureDefn里面封裝了feature的 屬性,類型、名稱及其默認的空間參考系統等。一個OGRFeatureDefn 對象通常與一個層(layer)對應。
- Layer:類OGRLayer是一個抽象基類,表示數據源類 OGRDataSource里面的一層要素(feature)。
- Data Source:類OGRDataSource是一個抽象基類,表示含有 OGRLayer對象的一個文件或一個數據庫。
- Drivers:類OGRSFDriver對應于每一個所支持的矢量文件格式。 類OGRSFDriver由類OGRSFDriverRegistrar來注冊和管理。
來源:開源地理空間基金會中文分會
來源鏈接:https://www.osgeo.cn/post/7143g
本站聲明:網站內容來源于 *** ,如有侵權,請聯系我們,我們將及時處理。