GDAL源码剖析与开发指南作 者: 李民录 著版时间: 2014 内容简介 GDAL(Geospatial Data Abstraction Library)是一个在X/MIT许可协议下的开源栅格空间数据转换库。由于GDAL库支持很多的数据格式,目前几乎所有的GIS和RS软件底层都使用GDAL来读写空间数据。《GDAL源码剖析与开发指南》是基于GDAL源码剖析的编程开发指南,共9章,分为三部分。第一部分是前5章,介绍了GDAL的基本功能,包括GDAL简介、ORG库、GDAL库以及GDAL的数据格式和配置项等;第二部分是第6章到第8章,是GDAL的高级使用说明,包括GDAL格式扩展、GDAL算法和CPL库;第三部分是第9章,介绍GDAL工具的使用。《GDAL源码剖析与开发指南》适合地理信息系统和遥感等相关专业应用的开发人员阅读参考。本书中大部分的示例代码都是使用C/C++语言编写,有一定C/C++语言基础的读者能够快速上手开发相关应用。目 录第1章 GDAL简介 11.1 什么是GDAL 11.2 GDAL特点 11.3 GDAL支持的数据格式 21.4 GDAL源码下载 131.5 GDAL源码目录 141.5.1 文件夹说明 151.5.2 文件说明 171.6 GDAL编译 181.6.1 常规编译 181.6.2 自定义编译 201.6.3 编译其他方面 241.7 SWIG编译 261.7.1 SWIG简介 261.7.2 编译C#版本GDAL 261.7.3 编译Python版本GDAL 271.7.4 编译Java版本GDAL 281.8 GDAL帮助文档生成 291.8.1 Doxygen简介 291.8.2 生成GDAL开发帮助文档 301.9 简单的调用 311.9.1 C++使用GDAL 311.9.2 C#使用GDAL 341.9.3 Python使用GDAL 371.9.4 Java使用GDAL 391.9.5 调试GDAL源代码 41第2章 OGR空间参考 422.1 空间参考简介 422.1.1 大地水准面 432.1.2 地球椭球体 432.1.3 基准面 442.1.4 地图投影 452.2 OGR空间参考 462.2.1 OGR空间参考简介 462.2.2 OGR空间参考说明 472.3 OGR空间参考坐标转换 522.4 OGR空间参考类说明 532.4.1 OGRSpatialReference类 542.4.2 OGRCoordinateTransformation类 662.5 OGR空间参考使用示例 692.5.1 C++使用 692.5.2 C#使用 712.5.3 Python使用 732.5.4 Java使用 75第3章 OGR库说明 783.1 OGR体系结构 783.1.1 Geometry(几何对象) 793.1.2 Spatial Reference(空间参考) 793.1.3 Feature/Feature Definition(要素/要素定义) 803.1.4 Layer(图层) 803.1.5 Data Source(数据源) 813.1.6 Drivers(格式驱动) 813.2 OGR常用类说明 823.2.1 OGRSFDriver类说明 823.2.2 OGRSFDriverRegistrar类说明 853.2.3 OGRDataSource类说明 893.2.4 OGRLayer类说明 973.2.5 OGRGeometry相关类说明 1213.2.6 OGRFieldDefn类说明 1583.2.7 OGRFeatureDefn类说明 1633.2.8 OGRFeature类说明 1683.2.9 其他说明 1803.3 SQL说明 1823.3.1 SELECT子句 1833.3.2 WHERE子句 1863.3.3 ORDER BY子句 1883.3.4 JOIN子句 1883.3.5 UNION ALL子句 1903.3.6 特殊字段 1903.3.7 索引与表 1913.3.8 ExecuteSQL() 1933.3.9 Non-OGR SQL 1933.4 OGR使用示例 1933.4.1 C++使用 1953.4.2 C#使用 2023.4.3 Python使用 2093.4.4 Java使用 214第4章 GDAL库说明 2214.1 GDAL数据集总体概况 2214.1.1 数据集(Dataset) 2214.1.2 坐标系统(Coordinate System) 2214.1.3 元数据(Metadata) 2234.1.4 子数据集域(Subdatasets Domain) 2254.1.5 图像结构域(Image_Structure Domain) 2254.1.6 RPC域(RPC Domain) 2264.1.7 XML域(XML:Domains) 2284.1.8 栅格波段(Raster Band) 2284.1.9 颜色表(Color Table) 2304.1.10 快视图(Overviews) 2304.2 GDAL常用类说明 2314.2.1 GDALDriverManager类说明 2314.2.2 GDALDriver类说明 2344.2.3 GDALDataset类说明 2374.2.4 GDALRasterBand类说明 2434.3 GDAL元数据说明 2584.4 RasterIO使用说明 2604.5 图像金字塔 2694.6 颜色表说明 2734.7 图像统计信息说明 2764.7.1 直方图统计 2774.7.2 极值计算 2784.7.3 均值标准差计算 2794.8 GDAL库使用示例 2804.8.1 C++使用 2824.8.2 C#使用 2864.8.3 Python使用 2894.8.4 Java使用 293第5章 GDAL数据格式及配置项说明 2985.1 常用图像格式使用说明 2985.1.1 GeoTIFF格式 2985.1.2 Erdas Imagine格式 2995.1.3 PCI的PIX格式 3025.1.4 ENVI的HDR格式 3025.1.5 JPEG,PNG图像使用说明 3035.1.6 MEM文件使用说明 3045.2 GDAL对于HDF、NetCDF数据集读取 3055.2.1 HDF格式使用说明 3055.2.2 NetCDF格式使用说明 3105.3 VRT文件格式说明 3155.3.1 VRT格式说明 3165.3.2 VRTRasterBand 3175.3.3 VRT使用说明 3225.3.4 编程创建VRT文件 3245.4 网络WMS数据使用说明 3275.5 GDAL配置选项说明 3335.5.1 设置配置选项 3345.5.2 通用选项 3355.5.3 GDAL库选项 3375.5.4 GeoTiff格式选项 3405.5.5 GDAL/OGR网络选项 3415.5.6 OGR库选项 342第6章 GDAL格式扩展说明 3476.1 栅格格式扩展 3476.1.1 从Dataset继承 3486.1.2 从RasterBand继承 3526.1.3 栅格驱动(Driver) 3556.1.4 添加驱动到GDAL库 3566.1.5 添加地理参考信息 3576.1.6 金字塔(快视图) 3586.1.7 创建文件 3596.1.8 RawDataset和RawRasterBand类 3666.1.9 元数据和其他外部扩展 3666.2 矢量格式扩展 3676.2.1 实现OGRSFDriver类 3686.2.2 从数据源中读取数据 3696.2.3 读取图层 3726.3 裸数据格式扩展 375第7章 GDAL算法使用说明 3797.1 GDAL算法处理基础 3817.1.1 GDAL大图像处理策略 3817.1.2 GDAL中进度信息说明 3857.2 GDALWarp说明 3967.2.1 GDALWarpOptions 3977.2.2 GDALWarpOperation 4037.2.3 GDALWarpAPI使用说明 4067.3 图像重采样 4127.3.1 使用RasterIO重采样 4137.3.2 使用GDALWarp重采样 4157.4 图像裁切 4187.4.1 使用RasterIO裁切 4187.4.2 使用GDALWarp裁切 4217.5 图像镶嵌 4247.6 GDALWarp坐标转换 4337.6.1 GDALWarp坐标转换相关函数说明 4337.6.2 GDALWarp坐标转换流程 4357.7 图像重投影 4397.8 图像校正 4457.8.1 几何多项式校正(1~3次) 4477.8.2 TPS校正 4537.8.3 RPC校正 4587.8.4 GeoLoc校正 4647.9 图像坐标转换通用接口 4697.10 3*3空间卷积运算 4737.11 DEM地形分析 4837.11.1 坡度坡向分析 4837.11.2 地形指数 4887.11.3 山体阴影 4907.11.4 彩色渲染 4957.11.5 立体彩色渲染 5127.12 格网插值 5137.12.1 计算数据指标 5167.12.2 离散点数据插值 5177.12.3 离散点数据插值示例 5197.13 小碎斑去除 5237.14 矢量栅格化 5277.15 栅格矢量化 5327.16 生成等高线 536第8章 CPL库介绍 5418.1 cpl_port.h 5418.1.1 数据类型定义 5418.1.2 常量和函数定义 5428.1.3 LSB和MSB相互转换 5438.2 cpl_error.h 5448.2.1 常用的错误代码 5448.2.2 错误处理函数 5458.3 cpl_conv.h 5488.3.1 GDAL库配置项读写 5488.3.2 内存管理相关 5498.3.3 文本文件读取相关 5508.3.4 字符串与其他数据类型相关转换 5518.3.5 应用程序与动态库相关 5548.3.6 文件系统以及路径相关 5558.3.7 度、分、秒与十进制度转换 5588.3.8 ZIP压缩文件读写 5598.4 cpl_http.h 5618.5 cpl_minixml.h 565第9章 GDAL工具使用说明 5759.1 GDAL工具通用参数说明 5759.1.1 通用命令行选项 5759.1.2 创建文件通用选项 5789.2 Exe工具使用说明 5809.2.1 gdalinfo 5819.2.2 gdal_translate 5829.2.3 gdaladdo 5849.2.4 gdalwarp 5859.2.5 gdaltindex 5879.2.6 gdalbuildvrt 5889.2.7 gdal_contour 5899.2.8 gdaldem 5909.2.9 gdal_rasterize 5939.2.10 gdaltransform 5949.2.11 nearblack 5959.2.12 gdal_grid 5969.2.13 gdallocationinfo 5999.2.14 gdalsrsinfo 6009.2.15 gdal-config 6029.2.16 gdalmanage 6029.2.17 ogrinfo 6049.2.18 ogr2ogr 6069.2.19 ogrtindex 6089.3 Python脚本工具使用说明 6099.3.1 rgb2pct.py 6109.3.2 pct2rgb.py 6119.3.3 gdal_merge.py 6119.3.4 gdal2tiles.py 6139.3.5 gdal_retile.py 6159.3.6 gdal_proximity.py 6169.3.7 gdal_polygonize.py 6189.3.8 gdal_sieve.py 6199.3.9 gdal_fillnodata.py 6209.3.10 gdalmove.py 6219.3.11 gdal_edit.py 621附录 623 上一篇: After Effects移动UI交互动效设计与制作:全彩慕课版 2021年版 陈力 著 下一篇: Python智能优化算法:从原理到代码实现与应用 2022年版 范旭 等著