资讯专栏INFORMATION COLUMN

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

DataPipeline / 3411人阅读

摘要:自带了很多实用方便的工具,方便大家直接使用。按照切片服务规则生成切片数据元数据地图浏览网页。还可以按照投影创建的元数据文件。对影像执行平移锐化增强操作以后版本才有此工具对两幅影像进行差异检测,包括像素和元数据的检查。

GDAL自带了很多实用方便的工具,方便大家直接使用。
如果想了解更多关于python-GDAL的可以去看视频教程(python与GDAL-空间数据处理入门教程):https://edu.csdn.net/course/detail/27662
它把这些功能封装了一些基本的空间数据处理功能,包括栅格处理、矢量处理、地理网络处理。有的封装成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文件夹下。剪切!剪切!剪切!重要的事情说三遍。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/123675.html

相关文章

  • JS面向对象二 【原型链】(对象和对象间的关系)

    摘要:面向对象之二原型链对象和对象之间的关系注意这个系列文章要经常站在之父的视角去思考。思考问题我们都知道都属于那么既然他们都是对象一定有某些相同之处吧对象和对象之间有什么关联呢如果说你没有思考过这个问题那么可以换一个更具体的问题。 JS面向对象之二 【原型链】(对象和对象之间的关系) 注意这个系列文章,要经常站在JS之父的视角去思考。 牢记我们的需求,我要在JS没有class的情况下,那么...

    Jochen 评论0 收藏0
  • Python入门-环境搭建

    摘要:统一码,万国码编码此时应运而生,年由统一码联盟首次发布标准。英文占个字节欧洲语系占个东亚占个,其它及特殊字符占个使用个字节表示所有字符优先使用个字节,否则使用个字节表示。退出交互式环境,使用。 < 返回索引页 计算机编程基础知识 编程入门准备知识 计算机基本组成 计算机中的编码 一门语言的基本组成 环境搭建 Python下载和安装(window/mac/linux...

    xzavier 评论0 收藏0
  • js内功修炼九阳神功--原型链

    摘要:写在前面如果说是一本武学典籍,那么原型链就是九阳神功。那么,如何修炼好中的九阳神功呢真正的功法大成的技术是从底层上去理解,那种工程师和码农的区别就在于对底层的理解,当你写完一行代码,或者你遇见一个解决的速度取决于你对底层的理解。 写在前面 如果说JavaScript是一本武学典籍,那么原型链就是九阳神功。在金庸的武侠小说里面,对九阳神功是这样描述的:练成「九阳神功」后,会易筋洗髓;生出...

    苏丹 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<