
GDAL
文章平均质量分 65
GIS开发者
辽宁工程技术大学硕士研究生毕业,长期从事WebGIS、移动GIS开发工作,全栈 (前端、后端、Android、小程序、H5),现任某地理信息公司研发部经理,叩叩965894265
展开
-
Java实现基于GDAL将单波段影像转为三波段影像-唯一值渲染
在处理遥感影像的渲染时,经常需要处理单波段影像。单波段影像没有任何颜色,只有一个波段的值。渲染时只能采用色带拉伸、离散颜色、唯一值渲染这几种方式。直接将单波段影像转成三波段的影像,并将三个波段转为颜色对应的rgb值,这样可以加速渲染、切片的过程。这里我有一张单波段影像,需要按照唯一值的方式,进行渲染,这里记录一下实现过程。原创 2024-01-09 17:49:56 · 748 阅读 · 0 评论 -
GDAL+Java实现获取对应栅格影像经纬度对应的像素值
从前面的GDAL系列博文中,可以指导GDAL可以将栅格影像文件读出为对应的多维数组,可以读出每一个像素格对应的像素值。但如何根据经纬度直接读取像素值呢?博主从查阅了网上的相关文档,发现有个人写的计算公式是错误的,用代码跑出来的结果都是错误的。于是自己查阅了相关文档,自己实现了一遍,跟大家分享一下。原创 2023-09-14 16:05:16 · 980 阅读 · 1 评论 -
GDAL与PostGIS使用的PROJ库版本冲突问题解决方案
安装PostGIS后,在进行GDAL开发时,出现Proj库冲突问题,从错误里可以看出,GDAL在调用PROJ时,遇到了版本冲突的问题。原创 2023-05-16 20:30:00 · 2023 阅读 · 0 评论 -
Android 使用GDAL读写shp文件
GDAL库十分强大,不仅可以做栅格数据的分析处理,还可以操作矢量shp数据。之前的使用Python、Java分别调用过GDAL,但是从来没有在Android项目上使用过GDAL。最近遇到了相关问题,查阅了相关资料,发现GDAL在Android上同样可以使用,只要将GDAL的源代码进行编译就可以了。以后可以实现在Android手机上处理遥感影像了,但是编译的过程相对复杂,这里我就使用了网上编译好的资源,做了相关的验证。原创 2023-04-18 20:02:43 · 1631 阅读 · 16 评论 -
Python+GDAL实现矢量shape数据的分类统计
之前在网上看到,并且也实践过,Python+GDAL可以实现对,主要是基于和。但是不知道如何实现分类统计的功能,查阅了很多资料都没有找到相关的API和案例。最后经过探索和实验,发现了基于,可以实现分类统计的功能,这里和大家分享一下。原创 2022-12-29 18:30:00 · 726 阅读 · 0 评论 -
Python+GDAL实现面矢量数据叠加
需要使用python和GDAL实现矢量数据的相交叠加计算,空间上的叠加分析,本来是一个非常简单的功能。但是在网上却只能找到c++版的相关代码。Python的代码几乎找不到,找一个发现是把两个shape文件中的图形逐个取出来相交,效率十分低下。最后根据C++的代码,实现了Python版本的调用GDAL实现两个矢量shape文件叠加分析。原创 2022-12-28 18:50:58 · 2270 阅读 · 3 评论 -
Python+GDAL面数据中心点提取为单独shape文件,并复制属性数据
最近需要使用GDAL实现shape面数据批量将中心点提取为点shape文件,并复制所有的属性信息。整体的逻辑不是非常复杂,但是在网上现成的代码也找不到。原创 2022-12-27 18:17:37 · 705 阅读 · 0 评论 -
利用GDAL对GRIB2数据进行矢栅叠加,并输出统计数据
遇到一个这样的需求。有一个包含多个天的GRIB2气象降雨数据,和一个河南省市级区划shp文件,需要统计每个市对每一天的最大降水值,并写入到Excel中,数据情况如下图所示:突然遇到这个问题,短时间内觉得还是比较麻烦的。原创 2022-10-11 19:28:47 · 1263 阅读 · 0 评论 -
Java开发环境中,使用GDAL进行矢量叠加,并计算面积
GDAL与Springboot的集成可参考Java开发环境下,GDAL的相关学习和使用的案例还是非常少的,并且部分函数的使用方式和Python、C环境下有很大的区别。已最近做的一个功能为案例,给大家分享一下Java环境下GDAL的用法。原创 2022-08-19 18:28:12 · 2283 阅读 · 1 评论 -
Springboot 集成GDAL开发环境配置
是一个用途十分广泛的GIS空间数据处理库。它既可以处理矢量数据,也可以处理栅格数据和矢栅叠加等操作。在Python开发环境里,它的配置十分方便,可以直接使用的命令。但是在Java环境的开发中,就稍微有点麻烦了。Springboot来开发后端服务又非常火爆,在Springboot中集成GDAL也是我们经常需要用到的。本来配置方法,是没有必要再写一篇博文的,但是我在网上找了一遍,发现关于这块的介绍乱七八糟,怎么写的都有,而且很多都无效。因此我介绍一下最简单的配置方法,没有多余操作。...原创 2022-08-19 08:43:04 · 2510 阅读 · 0 评论 -
使用Python和GDAL读取grib2数据,并转换为栅格数据
一直以来,都是使用来读取格式数据,接触的气象数据都是格式,网上百度一下,发现都是使用来解析和转换这种数据。一个偶然的机会,发现ArcGIS可以直接打开文件。就设想如何将气象用的数据转换为GIS中常用的栅格数据,可以更方便的对其进行空间上的渲染和展示。本来计划是使用和结合,结果惊奇地发现GDAL居然也可以对其进行直接解析。...原创 2022-07-15 18:44:35 · 2328 阅读 · 1 评论 -
python 开发GDAL报Cannot find proj.db错误
问题今天在用python调用GDAL进行裁剪时,出现如下问题:ERROR 1: PROJ: proj_create_from_database: Cannot find proj.dbERROR 1: Failed to process SRS definition: EPSG:4326有时出现:ERROR 1: PROJ: proj_create_from_database: \postgis-3.1\proj\proj.db lacks DATABASE.LAYOUT.VERSION.MAJ原创 2021-08-13 18:17:30 · 5420 阅读 · 3 评论 -
python 使用GDAL实现栅格tif转矢量shp
前言目前有一张tif格式的栅格影像,需要在web地图上进行展示,使用动态切片WMS的方式,渲染速度比较慢,而且大的时候会出现模糊的问题。并且后面需要做多期影像的切换,渲染与加载效率也值得关注。计划是使用栅格转矢量的方式,将栅格数据转为矢量shp文件,然后进行矢量切片,使用Mapbox进行前端动态渲染。在网上查询了很多资料,有人说使用d3-contour在node.js中生成或者使用rasterio在python中进行转换,整体过程都比较麻烦,很不易实现。最终选定了使用GDAL进行栅格转矢量的方法,代原创 2021-08-06 12:23:40 · 7336 阅读 · 3 评论 -
python调用gdal2tiles实现栅格影像TMS切片
前言一直以来,作为一个GIS开发者,都想自己去实现栅格切片和矢量切片。前面的博文中,已经介绍了如何实现矢量切片,刚刚进入GIS行业的人一般都是用GeoServer进行栅格切片,速度效率很低。这里介绍一下如何使用代码高效地进行栅格切片,主要是依赖gdal2tiles这个python库。安装我的电脑环境是python3.9.5GDAL3.3.0执行下面的安装命令 安装gdal2tilespip install gdal2tiles切片代码常用参数参数名示意示例默认原创 2021-06-19 19:54:13 · 8167 阅读 · 18 评论 -
基于python和GDAL实现遥感影像重采样(改变分辨率)
很多时候都需要改变已经影像的分辨率,这里自己动手研究了一下相关原理,并进行了实现,以后可以很方便地改变影像的分辨率。影像重采样核心重采样的核心是影像的坐标范围不变,改变影像像元的大小,来实现像元个数的增减,即分辨率的改变。像元的面积*像元个数=固定值像元大小变为原来的1/2时,影像的像元数量变为原来的四倍。代码实现from osgeo import gdal, gdalconstimport osimport numpy as npdef resampli..原创 2020-05-23 18:26:08 · 14491 阅读 · 8 评论 -
基于python实现遥感影像预览图生成
目的遥感影像通常无法直接查看,还需要经过专业软件打开,才能看到其具体内容。最近,需要开发对遥感影像直接生成预览图,就使用GDAL提取波段信息,通过opencv写入图片环境python3.5 gdal2.4.1 opencv-python代码from osgeo import gdalimport cv2import numpy as npnp.seterr(d...原创 2020-04-09 19:51:49 · 2492 阅读 · 0 评论 -
基于Python和GDAL实现遥感影像无损压缩
背景一些做遥感数据的公司,随着数据越来越多,所占的空间也越来越大。对遥感影像进行无损压缩可以有效的节省空间,同时在操作影像时也可以节省内存。在网上搜索了遥感影像压缩的相关代码,发现都是基于C++写的,没有python的,GDAL的python API文档里也没有这块的详细描述,这里我就记录一下如何使用python和GDAL实现遥感影像的无损压缩。代码主要是使用GDAL的CreateCo...原创 2020-04-09 11:24:06 · 4729 阅读 · 19 评论 -
基于python和GDAL实现对shape文件要素进行查询
前言最近使用GDAL对shape文件进行查询,走了很多弯路,查看网上的代码,发现很多代码都是错误的,或者不详细,浪费了很多时间。这里简单记录一下使用GDAL查询和读取要素的代码。python版本3.5 GDAL版本2.1.0代码实现读取shape代码from osgeo import ogr# 注册所有的驱动ogr.RegisterAll()ds = ogr.Ope...原创 2020-04-02 10:22:20 · 2765 阅读 · 2 评论 -
python实现基于GDAL的哨兵2影像NDVI值计算
NDVI是什么NDVI(归一化植被指数)是近红外波段的反射值与红光波段的反射值之差比上两者之和。即(NIR-R)/(NIR+R),NIR为近红外波段的反射值,R为红光波段的反射值。归一化植被指数是反映农作物长势和营养信息的重要参数之一。根据该参数,可以知道不同季节的农作物对氮的需求量, 对合理施用氮肥具有重要的指导作用。NDVI的应用:检测植被生长状态、植被覆盖度和消除部分辐射误差等; ...原创 2019-12-25 20:08:47 · 5647 阅读 · 5 评论 -
shp文件自相交处理
今天基于GDAL使用shp文件对栅格影像进行裁剪时出现了下面的问题,提示多边形自相交了Warning 1: Ring Self-intersection at or near point 112.48666420300003 34.830899357000078ERROR 1: Cutline polygon is invalid.很多人的第一反应是使用ArcGIS进行**拓扑检查*...原创 2019-11-28 14:44:31 · 9036 阅读 · 2 评论 -
python实现使用GDAL实现矢量转栅格
需求现在有一个shp文件和栅格数据,需要将shp转换成和栅格数据空间位置一致且像元大小一致的栅格数据。ArcGIS速度比较慢,使用GDAL将shp文件转为和目标栅格同样大小的栅格转换前目标影像代码from osgeo import gdal, gdalconstfrom osgeo import ogrrasterFile = 'F:/**0416.dat' ...原创 2019-11-28 19:36:49 · 5945 阅读 · 3 评论