python-GDAL之空间数据处理-自带工具集

GDAL自带了很多实用方便的工具,方便大家直接使用。

如果想了解更多关于python-GDAL的可以去看视频教程(python与GDAL-空间数据处理入门教程): Python与GDAL---空间数据数据处理入门教程-1-课程简介-郑新杰的在线视频教程

它把这些功能封装了一些基本的空间数据处理功能,包括栅格处理、矢量处理、地理网络处理。有的封装成exe文件,有的以py文件的形式展现给大家,大家不仅可以拿来使用,还可以学习它的源代码。这些工具放在安装目录下\Lib\site-packages\osgeo下。

具体每一个功能的具体文档可以在GDAL的文档中找到。所有的工具主要分为4类,二维栅格处理、多维栅格处理、矢量处理、地理网络处理。

这里我对这些工具做了核实和整理(我的版本GDAL3.0)

(1)栅格处理工具

EXE工具

gdalinfo: 输出栅格影像的描述信息

gdal_translate: 栅格影像数据格式转换

gdaladdo: 创建栅格影像金字塔

gdalwarp: 栅格影像数据重投影和几何校正、镶嵌

gdaltindex: 根据栅格的四至生成矢量范围

gdalbuildvrt: 创建虚拟数据集

gdal_contour: 从DEM数据中提取等高线矢量文件。

gdaldem:对DEM数据进行分析和处理,例如生成山体阴影,生成坡度图、坡向图、生成彩色渲染图、地表耐用指数图、粗糙度图、地形位置指数图。

gdal_rasterize: 矢量转栅格

gdaltransform: 用于坐标转换

nearblack: 将黑色、白色、自定义颜色的像元值修改成黑色,工具目前只支持8位影像数据。

gdal_grid: 将离散的矢量数据插值成规则的栅格数据

gdallocationinfo: 查询栅格影像指定位置的像元值。

gdalsrsinfo:将空间参考按照不同的格式输出,例如WKT、proj4、esri等等。

gdal-config:查看GDAL的安装信息

gdalmanage:管理栅格数据的一些操作,例如查看数据格式、删除数据、重命名、复制数据等。

gdal_viewshed: 根据DEM生成可见栅格数据,参考文献 Wang, Jianjun, Robinson, Gary J., and White, Kevin. Photogrammetric Engineering and Remote Sensing(版本3.1才有此功具)

gdal_create: 不需要数据集而创建新栅格数据(版本3.2才有此工具)

gdalenhance

gdalserver

PY文件

rgb2pct.py : 将3通道彩色影像转换成单通道的索引影像

pct2rgb.py : 将索引影像转化成3通道彩色影像

gdalattachpct.py :将一幅影像的颜色表转移给另一幅影像(我的版本下没有,可能在更高版本里有这个脚本)

gdal_merge.py:对图像进行镶嵌,输入影像必须有空间参考,如果有重叠,后面的影像会覆盖前面的影像。

gdal2tiles.py :按照OSGEO切片服务规则生成切片数据、元数据、地图浏览网页。还可以按照WGS84投影创建Google Earth的元数据文件KML。

gdal2xyz.py : 将GDAL的栅格影像转换成xyz的点格式。

gdal_retile.py: 生成瓦片和金字塔,功能与gdal2tiles类似。

gdal_proximity.py: 求原始像素中心到目标像素中心的距离,生成一个距离影像(我没用过)

gdal_polygonize.py: 栅格矢量化

gdal_sieve.py:去除栅格影像的小碎图斑,可用于分类后处理。

gdal_fillnodata.py: 用NoData填充影像中像元值

gdalmove.py : 进行栅格影像的空间参考转换

gdal_edit.py: 更改GDAL支持的影像信息,只读的影像不能更改

gdal_calc.py: 利用Numpy对影像进行逻辑运算,前提两幅影像大小尺寸要相同。

gdal_pansharpen.py: 对影像执行平移-锐化增强操作(2.1以后版本才有此工具)

gdalcompare.py : 对两幅影像进行差异检测,包括像素和元数据的检查。

gdalimport.py :将GDAL的影像文件生成GEOTIFF的切片并生成金字塔。

gdalident.py :识别文件的格式

mkgraticule.py :生成网格数据集

gdalchksum.py :对影像文件进行检查

gdal_auth.py:用于Google Web服务认证

epsg_tr.py:为EPSG GCS/PCS编码创建WKT和PROJ4字典。

esri2wkt.py :将ESRI的.prj文件转化成WKT格式

gcps2vec.py :控制点数据转换成点要素矢量数据

gcps2wld.py :根据控制点生成坐标转换参数

(2)多维影像

gdalmdiminfo.exe: 将GDAL支持的多维栅格影像数据集的各种信息列为JSON输出(在GDAL3.1版本才有)

gdalmdimtranslate.exe: 不同多维栅格影像格式转换(在GDAL3.1版本才有)

(3)矢量

EXE文件

ogrinfo: 输出矢量数据的信息

ogr2ogr: 对矢量数据进行格式转换,在转换过程中可以进行空间或属性选择,设置坐标系、重投影等操作。

ogrtindex: 按照矢量数据的四至范围,生成矩形矢量范围。

ogrlineref: 创建一个线性参考包含特殊长度单位(例如1km)的文件,并从该文件中获取坐标、线性参考距离或子线(子路径),不需要几何图形中的M或Z值。结果可以以OGR支持的任何格式存储。

PY文件

ogrmerge.py : 多个矢量数据融合成一个矢量数据

(4)地理网络

gnmmanage.exe: 以在GDAL中的地理网络上执行各种管理操作。除了创建和删除网络外,还包括管理网络功能、拓扑和规则的功能。

gnmanalyse: 提供GDAL中地理网络的分析能力,结果以OGRLayer格式返回。

注意:

使用自带的这些工具时,有时会遇到如下这样的问题,提示找不到ogr_FileGDB.dll文件,如下图所示:

解决办法:在osgeo问价夹下存在一个gdalplugins文件夹,把gdalplugins文件夹下的ogr_FileGDB.dill剪切到osgeo文件夹下。剪切!剪切!剪切!重要的事情说三遍。


我建了一个python小白交流群,我会给大家分享我收集整理的各种学习资料,组织大家一起做项目练习,帮助大家匹配一位学习伙伴互相监督学习,欢迎加入

作者: 能量鸣新

链接: python-GDAL之空间数据处理-自带工具集_zhengxinjie2的博客-CSDN博客

来源:csdn

发布于 2021-12-16 09:57